ibankit

A library for generation and validation of International Bank Account Numbers
(IBAN, ISO 13616) and Business
Identifier Codes (BIC, ISO_9362).
Key Features
- Drop-in replaceable with iban-js
- Currently conformant with Version 95 (July 2023) of the IBAN registry
- Decodes bank, branch and account numbers from IBAN
- Supports random BBAN / IBAN generation for testing
- Has BIC validation as a bonus
- Supports validation of National Check Digits if part of BBAN format
- Full TypesScript support
- No external dependencies
SWIFT IBAN Registry
This release should be compatible with the SWIFT IBAN Registry
Version 95. There may be a limited number
of value differences, some countries in the Registry doesn't describe bank/branch information
but may expose it as 3!n4!n
but leave the branch description as a blank.
IBAN quick examples
const ibanStr = new IBANBuilder()
.countryCode(CountryCode.AT)
.bankCode("19043")
.accountNumber("00234573201")
.build()
.toString();
const iban = new IBAN("DE89370400440532013000");
const iban = new IBAN("DE89 3704 0044 0532 0130 00");
const iban = IBAN.random(CountryCode.AT);
const iban = IBAN.random();
const iban = new IBANBuilder().countryCode(CountryCode.AT).bankCode("19043").build();
IBAN.isValid("AT611904300234573201");
IBAN.isValid("DE89 3704 0044 0532 0130 00");
IBAN.isValid("hello world");
BIC quick examples
const bic = BIC("DEUTDEFF");
BIC.isValid("DEUTDEFF500");
TODO
References
Credits
License
Copyright 2018-2023 David Koblas
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0