This SDK allows you to validate sort code and account number combinations pass the modulus checking.
The sdk is hosted on maven central so you can include it as a dependency in your projects as follows:
compile 'com.9ls:bank-account:1.6.8'
<dependency>
<groupId>com.9ls</groupId>
<artifactId>bank-account</artifactId>
<version>1.6.8</version>
</dependency>
<dependency org="com.9ls" name="bank-account" rev="1.6.8" />
To check a bank account:
BankAccountValidator validator = new BankAccountValidator();
boolean valid = validator.valid('08-60-90', '06774744');
You can use the SortCode entity to represent a sort code:
SortCode sc = new SortCode("12-34-56");
sc.toString().equals("12-34-56");
sc.toString("").equals("123456");
sc.toString(" ").equals("12 34 56");
You don't need to have the hyphens:
SortCode sc = new SortCode("123456");
sc.toString().equals("12-34-56");
Or you can construct it with an integer
SortCode sc = new SortCode(123456);
sc.toString().equals("12-34-56");
You can use the BankAccount entity to represent a sort code and account number tuple:
BankAccount account = new BankAccount('08-60-90', '06774744');
account.getSortCode().toString().equals('08-60-90');
account.getAccountNumber().toString().equals('06774744');
The SDK uses the latest valacdos.txt and scsubtab.txt from Vocalink. If you need to use alternate file you can initialise the BankAccountValidator with different files.
BankAccountValidator validator = new BankAccountValidator(
ModulusTable.load(new FileInputStream("/home/my-valacdos.txt")),
SubstitutionTable.load(new FileInputStream("/home/my-scsubtab.txt")),
ModulusValidationHandlerProvider.getInstance());
Name | File | Version | SDK Version |
---|---|---|---|
Sorting Code Substitution Data | scsubtab.txt | Valid from 13 June 2005 | 1.0.0+ |
Modulus Weight Table Data | valacdos.txt | Valid from 27 May 2019 | 1.0.0+ |
Modulus Weight Table Data | valacdos.txt | Valid from 29 September 2019 | 1.0.3 |
Modulus Weight Table Data | valacdos.txt | Valid from 6 April 2020 | 1.0.4 |
Modulus Weight Table Data | valacdos.txt | Valid from 7 April 2020 | 1.6.1 |
Modulus Weight Table Data | valacdos.txt | Valid from 14 September 2020 | 1.6.4 |
Modulus Weight Table Data | valacdos.txt | Valid from 20 September 2021 | 1.6.7 |
Modulus Weight Table Data | valacdos.txt | Valid from 13 June 2022 | 1.6.8 |
Once you have checked out the project you can build and test the project with the following command:
gradlew check jar