Skip to content

A small, zero dependency NZ bank account validation library that runs everywhere.

License

Notifications You must be signed in to change notification settings

rmcdgl/NZ-Bank-Validator

 
 

Repository files navigation

NZ Bank Validator

A small, zero dependency Javascript NZ bank account validation library that runs everywhere.

It is based on the 2020 documentation and the PaymentsNZ Bank Branch Register which includes a number of branches not included in the IRD's specs. These have no validation applied other than the checking the branch number is within the published range.

Forked from Josh Hollinshead's nz-bank-account-validator. The project was converted to Typescript and updated to the 2020 spec from the 2016 spec without any changes to the API.

Getting Started

Using npm:

$ npm i --save nz-bank-validator

Using yarn:

$ yarn add nz-bank-validator

Installation

In Node.js (require):

const bankValidator = require("nz-bank-validator");

bankValidator.validate("01-902-0068389-00");
// => true

ES6 Modules:

import bankValidator from "nz-bank-validator";

bankValidator.validate("01-902-0068389-00");
// => true

Usage

const bankValidator = require("nz-bank-validator");

bankValidator.getId("01-902-0068389-00"); // '01'
bankValidator.getBranch("01-902-0068389-00"); // '02'
bankValidator.getBase("01-902-0068389-00"); // '0068389'
bankValidator.getSuffix("01-902-0068389-00"); // '00'

bankValidator.getPartsObject("01-902-0068389-00"); // { id: '01', branch: '902', base: '0068389', suffix: '00' }

bankValidator.validate("01-902-0068389-00"); // true
bankValidator.validate({
  id: "01",
  branch: "902",
  base: "0068389",
  suffix: "00",
}); // true

bankValidator.validate("01-902-XXXXX-00"); // false
bankValidator.validate("01-902--00"); // false
bankValidator.validate("01-902-123456-00"); // false

Running the tests

To run the tests locally:

npm i
npm run tests

License

This project is licensed under the MIT License - see the LICENSE.md file for details

References

About

A small, zero dependency NZ bank account validation library that runs everywhere.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 91.9%
  • JavaScript 8.1%