your javascriipt code does no do anything with the ErrorText variable.
you initially set it to:
ErrorText= "";
but do not change it when a validation fails.
By the time it gets down to the if statement to submit the form:
if (ErrorText= "") { form.submit() }
}
ErrorText will always equal "".
try changing your validation if statements to change the ErrorText variable:
if ( form.merchant.value == "") { ErrorText= "1";alert ( "Merchant Name is a required field" ); return false; }
Our CSS Form builder tool includes Client Side and Server Side validation behaviors. you may want to try using those.