Skip to content

Validate a UK bank account number against a sort code using the VocaLink modulus check.

License

Notifications You must be signed in to change notification settings

Commazero/modulus-check

 
 

Repository files navigation

NOT MAINTAINED

This repository is not maintained anymore. Please consider using the original uphold/uk-modulus-checking repo and update the src/data files.

modulus-check

Modulus checking allows payment originators to confirm that customer codes and account numbers are compatible before submitting a Bacs Direct Credit of Direct Debit.

Status

npm version

Installation

Install the package via yarn:

yarn add modulus-check

or npm:

npm install modulus-check

Usage

new ModulusCheck({ accountNumber, sortCode }).isValid()

This method validates if the given accountNumber and sortCode represent a valid Faster Payment Account.

Arguments

  1. accountNumber (string): The account number to validate.
  2. sortCode (string): The sort code to validate.

Returns

(boolean): Returns true if the account is valid.

Example

new ModulusCheck({ accountNumber: '15764273', sortCode: '938063' }).isValid();
// => false

new ModulusCheck({ accountNumber: '66374958', sortCode: '089999' }).isValid();
// => true

new ModulusCheck({ accountNumber: '66374958', sortCode: '08-99-99' }).isValid();
// => true

new ModulusCheck({ accountNumber: '66374958', sortCode: '08-9999' }).isValid();
// => true

Tests

npm test

Release

Run the below command and commit to master branch

npm version [<newversion> | major | minor | patch] -m "Release %s"

Head to circelci and trigger a new pipeline with parameter release: true

License

MIT

Credits

Many thanks to bazerk/uk-modulus-checking for the original inspiration and uphold/uk-modulus-checking for the initial development.

About

Validate a UK bank account number against a sort code using the VocaLink modulus check.

Topics

Resources

License

Stars

Watchers

Forks

Languages

  • JavaScript 97.3%
  • Makefile 2.2%
  • Dockerfile 0.5%