| BankVal Technical Details
The BankVal Web service comprises of the following services:-
BankVal UK ™
| BankValPlus |
Validates UK bank sort code / account numbers. Returns transposed sort code and account number plus ISCD (Industry Sorting Code Directory) data. |
| BankValFull |
Validates UK bank sort code / account numbers. Returns ISCD (Industry Sorting Code Directory) data. |
| BankValidate |
Validates UK bank sort code and account numbers. Returns validation results. |
| GetBranchDetails |
Look up UK bank branch information using latest ISCD data. |
| Transpose |
Transposes non-standard sort codes and account numbers into standard BACS format. |
| CardValidate |
Credit and debit card number validation. |
BankVal International ™
| GetBankDetails |
Full validation of SWIFT BIC codes using the latest SWIFT BIC directory. Returns bank name and address. |
| SwiftValidate |
Full validation of SWIFT BIC codes using the latest SWIFT BIC directory. Returns validation results. |
| IBANValidate |
Full IBAN number validation in accordance with ECBS standards |
| abaValidate |
Full Routing number validation using the latest Routing Numbers Database. |
| getABAdetails |
Full Routing number validation using the latest Routing Numbers Database. If valid, returns banks name and address. |
Using the Backup Servers
All BankVal UK and BankVal International services are available on both the primary and backup servers. The servers are geographically independent, ensuring that there is no single point of failure. We strongly recommend that access to the backup server is incorporated in your software.
In general -
- Call the service on the primary server at www.unifiedsoftware.co.uk
- In the unlikely event of a failure, call the service on the backup server at www.unifiedservices.co.uk
<< back to top >>
<< back to top >> BankValPlus service
Verifies that a UK bank sort code and account number are valid and if so, returns detailed bank branch information for the supplied sort code.
Transposes non-standard account number before performing validation
Returns transposed sort code and account number.
Parameter Format for BankValPlus
ReturnMessage = bankvalplus(QueryString)
where
QueryString is a " | " delimited string of the format "userID|PIN|sort code|account number"
ReturnMessage is a " | " delimited string as shown in the table below
| ReturnMessage |
Meaning |
| Transposed sort code | Transposed Account Number | Branch Information |
The sort code and account number are valid. The bank branch information is returned as a " | " delimited character string with a " | " terminating character. See the ISCD file specification for a detailed record layout of the returned branch information. |
| INVALID - Sortcode |
The supplied sort code does not exist in the VOCA Industry Sorting Code Directory (ISCD). |
| INVALID - Account |
The supplied account number is not in any of the recognisable formats, i.e. 7 - 10 numeric characters in length. |
| INVALID - Modulus Check Failed |
The sort code/ account number combination did not pass the modulus checks specified by the owning 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 bankvalplus method using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> BankValFull service
Verifies that a UK bank sort code and account number are valid and if so, returns detailed bank branch information for the supplied sort code.
Transposes non-standard account number before performing validation
Parameter Format for BankValFull
ReturnMessage = bankvalfull(QueryString)
where :
QueryString is a " | " delimited string of the format - "userid|PIN|sort code|account number"
ReturnMessage is a " | " delimited string as shown in the table.
| ReturnMessage |
Meaning |
| Branch information |
The sort code and account number are valid. The bank branch information is returned as a " | " delimited character string with a " | " terminating character. See the ISCD file specification for a detailed record layout of the returned branch information. |
| INVALID - Sortcode |
The supplied sort code does not exist in the VOCA Industry Sorting Code Directory (ISCD). |
| INVALID - Account |
The supplied account number is not in any of the recognisable formats, i.e. 7 - 10 numeric characters in length. |
| INVALID - Modulus Check Failed |
The sort code/ account number combination did not pass the modulus checks specified by the owning 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 bankvalfull method using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> BankValidate service
The bankvalidate method verifies that a UK bank sort code and account number are valid.
Parameter Format for BankValidate
ReturnMessage = bankvalidate(QueryString)
where :
QueryString is a " | " delimited string of the format - "userid|PIN|sort code|account number"
ReturnMessage is a " | " delimited string as shown in the table.
| ReturnMessage |
Meaning |
| VALID |
All checks on sort code and account number passed successfully. |
| INVALID - Sortcode |
The supplied sort code does not exist in the VOCA Industry Sorting Code Directory (ISCD). |
| INVALID - Account |
The supplied account number is not in any of the recognisable formats, i.e. 7 - 10 numeric characters in length. |
| INVALID - Modulus Check Failed |
The sort code/ account number combination did not pass the modulus checks specified by the owning 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 bankvalidate method using the insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> GetBranchDetails service
The getbranchdetails method retrieves detailed bank branch information for a given sort code.
Parameter Format for GetBranchDetails
ReturnMessage = getbranchdetails(QueryString)
where :
QueryString is a " | " delimited string of the format - "userid|PIN|sort code"
ReturnMessage is a " | " delimited string or an error message, as shown in the table.
| ReturnMessage |
Meaning |
| Branch information |
This is returned as a " | " delimited character string with a " | " terminating character. See the ISCD file specification for a detailed record layout of the returned branch information. |
| INVALID - Sortcode |
The supplied sort code does not exist in the VOCA Industry Sorting Code Directory (ISCD). |
| 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 getbranchdetails method using the insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> CardValidate service
BankVal Uk's cardvalidate method may be used to validate credit and debit card numbers. Please note that cardvalidate does NOT check that the card actually exists, that there are sufficient funds available, that the card has been reported as stolen, etc.
Parameter Format for CardValidate
ReturnMessage = cardvalidate(QueryString)
where :
QueryString is a " | " delimited string of the format "userID|PIN|card number"
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| VALID |
The card number passed the modulus check. |
| INVALID - Modulus Check Failed |
The card number failed the modulus check. |
| 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 cardvalidate method using the insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> Transpose service
The transpose method transposes non-standard sort codes and account numbers into standard BACS format. If your software detects that an account number is not 8 digits in length, transpose should be called. This can be performed before or after calling the bankvalidate or bankvalfull methods. For optimum performance you should only call transpose when required. There is no charge for the use of this method
Parameter Format for Transpose
ReturnMessage = transpose(QueryString)
where :-
QueryString = userID|PIN|sort code|account
ReturnMessage = transposed_sort_code|transposed_account.
| ReturnMessage |
Meaning |
| Transposed string |
The transposed sort code and account number are returned as a " | " delimited character string. |
| ERROR - Invalid User ID/PIN |
The User ID or PIN has not been recognised. |
| ERROR - Unable to transpose |
The sort code or account number are incorrect format. (e.g. non numeric) |
| ERROR - Insecure connection |
An attempt was made to access BankVal's transpose method using the insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at www.unifiedsoftware.co.uk/BankValukall.wsdl
The WSDL file on the backup data centre is at www.unifiedservices.co.uk/BankValukall.wsdl
<< back to top >>
<< back to top >> GetBankDetails service
Getbankdetails validates any SWIFT 8 character Bank Identifier Code (BIC). It returns the BIC code, the bank name and the head office address from that BIC.
Parameter Format for GetBankDetails
ReturnMessage = getbankdetails(QueryString)
where:
QueryString is a " | " delimited string of the format "userID|PIN|SWIFTBIC"
ReturnMessage is a 10 field string that is delimited by " | " characters.
ReturnMessage contains the BIC followed by the bank name and head office address if available.
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| 10 field string containing BIC, bank name and head office address. |
This is returned as a " | " delimited character string. |
| INVALID |
The supplied SWIFT BIC does not exist. |
| 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 International's getbankdetails service using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at http://www.unifiedsoftware.co.uk/BankValinternationalall.wsdl
The WSDL file on the backup data centre is at http://www.unifiedservices.co.uk/BankValinternationalall.wsdl
<< back to top >>
<< back to top >> SWIFTValidate service
The swiftvalidate method of BankVal International validates any SWIFT 8 character Bank Identifier Code (BIC).
Parameter Format for SWIFTValidate
ReturnMessage = swiftvalidate(QueryString)
where:
QueryString is a " | " delimited string of the format "userID|PIN|SWIFTBIC"
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| VALID |
SWIFT BIC exists. |
| INVALID |
The supplied SWIFT BIC does not exist. |
| 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
International's swiftvalidate
service using the insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at http://www.unifiedsoftware.co.uk/BankValinternationalall.wsdl
The WSDL file on the backup data centre is at http://www.unifiedservices.co.uk/BankValinternationalall.wsdl
<< back to top >>
<< back to top >> IBANValidate service
The ibanvalidate method of BankVal International validates any International Bank Account Number.
Parameter Format for IBANValidate
ReturnMessage = ibanvalidate(QueryString)
where
QueryString is a " | " delimited string of the format "userID|PIN|IBAN"
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| VALID |
IBAN is valid |
| INVALID - Country Code |
The Country Code within the supplied IBAN is not valid |
| INVALID - Modulus Check Failed |
The IBAN failed the modulus check |
| INVALID - Format |
The supplied IBAN is not in a valid format |
| 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
International's ibanvalidate service using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at http://www.unifiedsoftware.co.uk/BankValinternationalall.wsdl
The WSDL file on the backup data centre is at http://www.unifiedservices.co.uk/BankValinternationalall.wsdl
<< back to top >>
<< back to top >> ABAValidate service
The abavalidate method of BankVal International validates any US ABA Routing Number.
Parameter Format for ABAValidate
ReturnMessage = abavalidate(QueryString)
where
QueryString is a " | " delimited string of the format "userID|PIN|ABA Routing Number"
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| VALID |
ABA Routing Number is valid |
| INVALID |
ABA Routing Number is not valid |
| 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
International's abavalidate service using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at http://www.unifiedsoftware.co.uk/BankValinternationalall.wsdl
The WSDL file on the backup data centre is at http://www.unifiedservices.co.uk/BankValinternationalall.wsdl
<< back to top >>
<< back to top >> GetABADetails service
GetABAdetails validates any US ABA Routing Number and returns contact information for the bank branch.
Parameter Format for GetABADetails
ReturnMessage = getabadetails(QueryString)
where
QueryString is a " | " delimited string of the format "userID|PIN|ABA Routing Number"
ReturnMessage is either the string "INVALID" OR "ERROR - ..." OR
a 17 field string that is delimited by " | " characters in the format :-
VALID | Routing Number |
Bank Name | Bank Address | City | State | ZIP Code | Phone Number | Area Code | FIPS | Time Zone | DST |
Latitude | Longitude | MSA | PMSA | County
All possible ReturnMessage values are shown in the table below
| ReturnMessage |
Meaning |
| 17 field string as described above. |
This is returned as a " | " delimited character string. |
| INVALID |
The supplied ABA Routing Number in not valid. |
| 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 International's getabadetails service using insecure HTTP protocol instead of HTTPS. |
WSDL files
The WSDL file on the primary data centre is at http://www.unifiedsoftware.co.uk/BankValinternationalall.wsdl
The WSDL file on the backup data centre is at http://www.unifiedservices.co.uk/BankValinternationalall.wsdl
<< back to top >>
|