A lightweight library to determine the bank information ( BIC/SWIFT, Bank Name) of an IBAN or BIC. Supports IBANs/BICs from Austria, Belgium, Germany, Luxembourg, Netherlands, Spain, France, Switzerland and Czech Republic.
Forked Library from sigalor/iban-to-bic with Added Features: Retrieve Bank Name from IBAN and Retrieve Bank Name from BIC
Using NPM or Yarn:
npm i banking-tools
yarn add banking-tools
const { ibanToBic } = require('banking-tools');
const bic = ibanToBic('DE51500105179975341634');
// Returns BIC: "INGDDEFFXXX"
The ibanToBic function returns undefined if the IBAN is invalid (validated internally using ibantools) or if no corresponding BIC was found.
import { isValidIBAN } from 'banking-tools';
const isValid = isValidIBAN('DE51500105179975341634');
// Returns true
Note: This function using ibantools to validate the IBAN, so it will return false if the IBAN is not valid.
import { ibanToBankName } from 'banking-tools';
const bankInfo = ibanToBankName('DE51500105179975341634');
// Returns :
// NOTE: With German Bank Names, Many Banks has multiple branches names, so now by default if there is not a name or short name for the bank, it will return the FIRST branch name and short name.
// {
// "code": '68492200',
// "bic": 'GENODE61WT1',
// "branches": [
// { "name": 'Volksbank Hochrhein', "shortName": 'Volksbank Hochrhein' }, // INDEX 0
// {
// "name": 'Volksbank Hochrhein (Gf P2)',
// "shortName": 'VB Hochrhein Waldshut-Tieng'
// } // INDEX 1
// ],
// // name and shortName are from index 0 of branches array
// "name": 'Volksbank Hochrhein',
// "shortName": 'Volksbank Hochrhein'
// }
// NOTE: With Belgium Bank Names, The Banks has multiple names for different languages, So you should be aware that it return an Object with the names for each language.
// {
// "code": "096",
// "bic": "GKCCBEBB",
// "name": {
// "nl": "BELFIUS BANK",
// "fr": "BELFIUS BANQUE"
// }
// }
import { bicToBankName } from 'banking-tools';
const bankInfo = bicToBankName('GENODE61WT1');
// Returns :
// {
// "code": "68492200",
// "bic": "GENODE61WT1",
// "branches": [
// {
// "name": "Volksbank Hochrhein",
// "shortName": "Volksbank Hochrhein"
// },
// {
// "name": "Volksbank Hochrhein (Gf P2)",
// "shortName": "VB Hochrhein Waldshut-Tieng"
// }
// ],
// "name": "Volksbank Hochrhein",
// "shortName": "Volksbank Hochrhein"
// }
This library is written in TypeScript and comes with its own type definitions.
The following will fetch the newest data from the respective national bank authorities (e.g. Bundesbank in Germany or OeNB in Austria) and regenerate the files in the datasets
and the datasets-extended
directory:
npm run generate
For Spain and France, data directly from the European Central Bank is used, see here.
MIT