Skip to content

Latest commit

 

History

History
executable file
·
84 lines (56 loc) · 2.56 KB

README.md

File metadata and controls

executable file
·
84 lines (56 loc) · 2.56 KB

NZ Bank Validator

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

It is up to date with the IRD 2025 guidance and the PaymentsNZ Bank Branch Register which includes a number of branches not included in the IRD 2020 documentation.

Forked from Josh Hollinshead's nz-bank-account-validator. The project was converted to Typescript and updated 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