Important note.

All BankVal web services are available on both the main and backup servers at our primary data centre. This configuration is mirrored at our secondary data centre. The two data centres are geographically independent. Using this configuration, the BankVal web service has been available continuously since launch in 2003.

In general:

  • Call the service at the primary data centre at
  • In the unlikely event of a failure, call the service at the secondary data centre at

BatchBankValidate method

BatchBankValidate functionality:

BankVal UK's batchbankvalidate method accepts up to 250 UK sort code and account number pairs in domestic format and validates them using the same functionality as bankvalidate. This provides a useful performance increase when validating large volumes of data.

Parameter Format for BatchBankValidate

ReturnMessage = batchbankvalidate(QueryString)


QueryString = userID|PIN|sort code1,account1|sort code2,account2|...

ReturnMessage will be in the format:


Where ‘Result’ can be:

VALID - The relevant sort code and account number are valid.

INVALID - Modulus Check Failed - the relevant sort code and/or account number failed the validation check specified by the holding bank.

ERROR - Invalid User ID/PIN - The User ID or PIN has not been recognised.

ERROR - UserID Expired - Trial user ID has expired.

ERROR - Insecure connection - An attempt was made to access BankVal’s batchbankvalidate method using the insecure HTTP protocol instead of HTTPS.

Example ReturnMessage (not genuine bank details) :-

‘601551,12345678,VALID|20594L,87654321,INVALID - Sortcode|601551,23456789,INVALID - Modulus Check Failed|... ’

WSDL files

The WSDL file on the primary data centre is at

The WSDL file on the backup data centre is at

<< Back to Top >>