Unified Software
DEVELOPERS

Overview
How BankVal Works
Technical Details

Cookbook

Service Information
F.A.Q.s

 

Free Trial Register now for a free 30 day (or 300 hits) trial of BankVal.
<< Click Here >>

<< Why register? >>
 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 >>

©2003 - 2007 UNIFIED SOFTWARE LIMITED - ALL RIGHTS RESERVED
The BIC information is published with permission of SWIFT SCRL. Database Rights Reserved. 2007.
Unified Software Limited is a VOCA Authorised ISCD Distributor.