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

williamhatch/NZ-Bank-Account-Validator

 
 

Repository files navigation

NZ Bank Account Validator

Important: latest changes please refer to: RWT and NRWT Certificates / 2020 / Version 1.0

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

It is based on the documentation provided by the Inland Revenue Department. This library is not however affiliated with or endorsed by the IRD.

Getting Started

Using npm:

$ npm i --save nz-bank-account-validator

Using yarn:

$ yarn add nz-bank-account-validator

Installation

In a browser: (See examples/browser.html for code example)

<script type="text/javascript" src="NZ-Bank-Account-Validator.min.js"></script>
<script type="text/javascript">
  var bankAccountValidator = window['NZ-Bank-Account-Validator'];

  bankAccountValidator.validate('01-902-0068389-00');
</script>

In Node.js (require):

const bankValidator = require('nz-bank-account-validator/lib/NZ-Bank-Account-Validator');

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

ES6 Modules:

import bankValidator from 'nz-bank-account-validator/lib/NZ-Bank-Account-Validator';

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

Usage

const bankValidator = require('nz-bank-account-validator/lib/NZ-Bank-Account-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
npm run testCoverage
# check coverage

Authors

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

Packages

No packages published

Languages

  • JavaScript 100.0%