
Bacs Transmission Software
Direct Debit Management Software
Bacs Bureau Transmission Software
Sortcode & Bank Account Validation Software
Address Lookup Software
Bank File Generation Software
Contact Us
Support
Glossary
This guide is to assist in the integration of the sorting code and bank account validator into a website or application.
Using our BankCheck service, we recommend you perform a GetBank in order to get the bank details, name address etc. If you are performing bank account validation for direct debits, then you can check if a sortcode will allow direct debits by checking the flag 'PermitDebits'. It is also useful to allow the user to check their bank details. If you do not need or want to display the bank account details then performing a ModulusCheck on its own is sufficient. It performs a ValidateSortcode check on the fly as a modulus check is meaningless without knowing the sortcode is valid.
The following table displays details of the methods in BankCheck.
Method Name | Description | Parameters | Example | Return Value | Authentication Required |
---|---|---|---|---|---|
GetBank | Gets the bank details from the ISCD. Requires a sortcode as a parameter. | Sortcode | 111111 | BankResult | Yes |
HelloWorld | Starting point for developers. | string | No | ||
IsBankHoliday | Returns a BooleanResult, true if is bank holiday. | Date | 25/12/2019 | BooleanResult | Yes |
ModulusCheck | Performs a modulus check on a sortcode and bank account number. Requires a sortcode and account number as parameters. | Sortcode, Account Number | 111111, 00000007 | BooleanResult | Yes |
ModulusCheckBatch | Performs a modulus check on an array of sortcodes and bank account numbers. The same array is returned, but with the error element set to true or false depending on whether the bank account validation was successful or failed respectively. | Sortcode, Account Number | 111111, 00000007 | BooleanResult | Yes |
ValidateSortcode | Checks the sortcode exists in the ISCD. Requires a sortcode as a parameter. | Sortcode | 111111 | BooleanResult | Yes |
The BankCheck Service can be found here, and a full service description is available here.
BankCheck can return SOAP, JSON or XML. Some reference guide samples can be found below.
SOAP C# Sample
BankCheck has been developed in .Net for easy interfacing for Visual Basic and Visual C# developers.
Once you have created your project, in the Solution Explorer select "Add Service Reference". This will present you with the following dialog box to enter the URL. Once the URL has been entered the BankCheck interface will be displayed. https://services.mosaicsoftware.co.uk/bankcheck/v2.0/bankcheck.svc
Code sample:
Authentication auth = new Authentication();
auth.CustomerId = "YOURCUSTOMERID";
auth.LicenceKey = "YOURLICENCEKEY";
BankcheckClient client = new BankcheckClient();
BankResult result = client.GetBank(auth, "SORTCODE");
Bank bank = result.Bank;
BooleanResult booleanResult = client.ModulusCheck(auth, "SORTCODE", "ACCOUNTNUMBER", null);
bool modulusCheck = booleanResult.Valid;
REST
BankCheck is also available as a REST service speaking XML or JSON. REST services can be consumed in almost any language by POSTing to a given URL.
All BankCheck methods require an auth object which contains your CustomerId and LicenceKey. The returned data type can be controlled with the Accept header. If no accept header is provided the service will return JSON.
A sample request and response is shown below.
Sample Request:
Request URL: https://services.mosaicsoftware.co.uk/bankcheck/v2.0/bankcheck.svc/ValidateSortcode
Request Method: POST
Accept: text/json
Data: {"auth":{"CustomerId":"YOURID","LicenceKey":"YOURLICENCEKEY"},"sortcode":"SORTCODE"}
Sample Response:
Content-Length: 48
Content-Type: application/json; charset=utf-8
Data: {"ResultCode":0,"ResultMessage":"","Valid":true}