IBANTools is TypeScript/JavaScript library for validation, creation and extraction of IBAN, BBAN and BIC/SWIFT numbers.
For more information about IBAN/BBAN see wikipedia page and IBAN registry.
For more information about BIC/SWIFT see this wikipedia page.
$ npm install ibantools
$ bower install ibantools
See full documentation with examples on Github pages.
const ibantools = require('ibantools');
const iban = electronicFormatIBAN('NL91 ABNA 0417 1643 00'); // 'NL91ABNA0517164300'
ibantools.isValidIBAN(iban);
// If you want to know reason why IBAN is invalid
ibantools.validateIBAN('NL91ABNA0517164300');
// Returns { valid: false, errorCodes: [iban.ValidationErrorsIBAN.WrongIBANChecksum] }
// Validate BIC
ibantools.isValidBIC('ABNANL2A');
require(["ibantools"], function(ibantools) {
console.log(ibantools.isValidIBAN('NL91 ABNA 0417 1643 00'));
console.log(ibantools.isValidBIC('ABNANL2A'));
});
Use browserify or webpack.
Use node, not bower module.
If you are using tools that support jsnext
, like a rollup or JSPM, they will automatically select right module from the package.
Install library/module using npm. Package bundles type definitions and if you are on TypeScript 2.0 or above tsc
will access those automatically. If not, check your tsconfig.json
file.
Country specifications can be extended with national BBAN validations by calling setCountryBBANValidation
.
For example, to fully syntactically check German IBAN, you can install IBANTools-Germany and add this with
const ibantools = require('ibantools');
const ibantoolsGermany = require("ibantools-germany");
ibantools.setCountryBBANValidation("DE", ibantoolsGermany.isValidBBAN);
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code.
For contribution details, please read this document.
This work is dual-licensed under MIT and MPL-2.0. You can choose between one of them if you use this work.
SPDX-License-Identifier: MIT OR MPL-2.0