Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ibantools

Package Overview
Dependencies
Maintainers
1
Versions
48
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ibantools - npm Package Compare versions

Comparing version 2.2.0 to 3.0.0

13

build/ibantools.d.ts

@@ -57,3 +57,2 @@ /*!

countryCode?: string;
countryName?: string;
valid: boolean;

@@ -64,7 +63,7 @@ }

* @example
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", countryName: "Netherlands", valid: true}
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", valid: true}
* ibantools.extractIBAN("NL91 ABNA 0417 1643 00");
* @alias module:ibantools.extractIBAN
* @param {string} IBAN IBAN
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, countryName: string, valid: boolean}
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, valid: boolean}
*/

@@ -121,3 +120,3 @@ export declare function extractIBAN(iban: string): ExtractIBANResult;

* @alias module:ibantools.getCountrySpecifications
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, name: string, IBANRegistry: boolean}
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, IBANRegistry: boolean}
*/

@@ -150,3 +149,2 @@ export declare function getCountrySpecifications(): CountryMap;

countryCode?: string;
countryName?: string;
locationCode?: string;

@@ -160,7 +158,7 @@ branchCode?: string;

* @example
* // returns {bankCode: "ABNA", countryCode: "NL", countryName: "Netherlands", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* // returns {bankCode: "ABNA", countryCode: "NL", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* ibantools.extractBIC("ABNANL2A");
* @alias module:ibantools.extractBIC
* @param {string} BIC BIC
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, countryName: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
*/

@@ -173,3 +171,2 @@ export declare function extractBIC(inputBic: string): ExtractBICResult;

chars: number;
name: string;
bban_regexp: string;

@@ -176,0 +173,0 @@ IBANRegistry: boolean;

@@ -11,3 +11,3 @@ /*!

* @see module:ibantools
* @version 2.2.0
* @version 3.0.0
* @license MPL-2.0

@@ -34,3 +34,2 @@ */

if (spec !== undefined &&
spec.IBANRegistry &&
spec.chars === iban.length &&

@@ -60,3 +59,6 @@ reg.test(iban.slice(2, 4)) &&

function isValidBBAN(bban, countryCode) {
if (bban !== undefined && bban !== null && countryCode !== undefined && countryCode !== null) {
if (bban !== undefined &&
bban !== null &&
countryCode !== undefined &&
countryCode !== null) {
var spec = countrySpecs[countryCode];

@@ -86,3 +88,3 @@ if (spec !== undefined &&

spec !== undefined &&
spec.chars === (bban.length + 4) &&
spec.chars === bban.length + 4 &&
checkFormatBBAN(bban, spec.bban_regexp)) {

@@ -98,7 +100,7 @@ var checksom = mod9710(params.countryCode + "00" + bban);

* @example
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", countryName: "Netherlands", valid: true}
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", valid: true}
* ibantools.extractIBAN("NL91 ABNA 0417 1643 00");
* @alias module:ibantools.extractIBAN
* @param {string} IBAN IBAN
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, countryName: string, valid: boolean}
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, valid: boolean}
*/

@@ -111,4 +113,2 @@ function extractIBAN(iban) {

result.countryCode = iban.slice(0, 2);
var spec = countrySpecs[result.countryCode];
result.countryName = spec.name;
result.valid = true;

@@ -182,3 +182,3 @@ }

var providedChecksum = parseInt(iban.slice(2, 4), 10);
var temp = iban.slice(3) + iban.slice(0, 2) + '00';
var temp = iban.slice(3) + iban.slice(0, 2) + "00";
var validationString = "";

@@ -196,6 +196,8 @@ for (var n = 1; n < temp.length; n++) {

var part = validationString.slice(0, 6);
validationString = (parseInt(part, 10) % 97).toString() + validationString.slice(part.length);
validationString =
(parseInt(part, 10) % 97).toString() +
validationString.slice(part.length);
}
var rest = parseInt(validationString, 10) % 97;
return (98 - rest) === providedChecksum;
return 98 - rest === providedChecksum;
}

@@ -221,3 +223,5 @@ /**

var part = validationString.slice(0, 6);
validationString = (parseInt(part, 10) % 97).toString() + validationString.slice(part.length);
validationString =
(parseInt(part, 10) % 97).toString() +
validationString.slice(part.length);
}

@@ -247,3 +251,3 @@ return parseInt(validationString, 10) % 97;

* @alias module:ibantools.getCountrySpecifications
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, name: string, IBANRegistry: boolean}
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, IBANRegistry: boolean}
*/

@@ -281,7 +285,7 @@ function getCountrySpecifications() {

* @example
* // returns {bankCode: "ABNA", countryCode: "NL", countryName: "Netherlands", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* // returns {bankCode: "ABNA", countryCode: "NL", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* ibantools.extractBIC("ABNANL2A");
* @alias module:ibantools.extractBIC
* @param {string} BIC BIC
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, countryName: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
*/

@@ -294,7 +298,5 @@ function extractBIC(inputBic) {

result.countryCode = bic.slice(4, 6);
var spec = countrySpecs[result.countryCode];
result.countryName = spec.name;
result.locationCode = bic.slice(6, 8);
result.testBIC = (result.locationCode[1] === "0" ? true : false);
result.branchCode = (bic.length > 8 ? bic.slice(8) : "619");
result.testBIC = result.locationCode[1] === "0" ? true : false;
result.branchCode = bic.length > 8 ? bic.slice(8) : "619";
result.valid = true;

@@ -310,252 +312,352 @@ }

var countrySpecs = {
AD: { chars: 24, bban_regexp: "^[0-9]{8}[A-Z0-9]{12}$", name: "Andorra", IBANRegistry: true },
AE: { chars: 23, bban_regexp: "^[0-9]{3}[0-9]{16}$", name: "United Arab Emirates", IBANRegistry: true },
AF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Afganistan" },
AG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Antigua and Bermuda" },
AI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Anguilla" },
AL: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", name: "Albania", IBANRegistry: true },
AM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Armenia" },
AO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Angola" },
AQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Antartica" },
AR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Argentina" },
AS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "American Samoa" },
AT: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Austria", IBANRegistry: true },
AU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Australia" },
AW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Aruba" },
AX: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Åland Islands", IBANRegistry: true },
AZ: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "Republic of Azerbaijan", IBANRegistry: true },
BA: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Bosnia and Herzegovina", IBANRegistry: true },
BB: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Barbados" },
BD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bangladesh" },
BE: { chars: 16, bban_regexp: "^[0-9]{12}$", name: "Belgium", IBANRegistry: true },
BF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Burkina Faso" },
BG: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{6}[A-Z0-9]{8}$", name: "Bulgaria", IBANRegistry: true },
BH: { chars: 22, bban_regexp: "^[A-Z]{4}[A-Z0-9]{14}$", name: "Bahrain", IBANRegistry: true },
BI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Burundi" },
BJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Benin" },
BL: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Barthelemy", IBANRegistry: true },
BM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bermuda" },
BN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Brunei Darusslam" },
BO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bolivia, Plurinational State of" },
BQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bonaire, Sint Eustatius and Saba" },
BR: { chars: 29, bban_regexp: "^[0-9]{23}[A-Z]{1}[A-Z0-9]{1}$", name: "Brazil", IBANRegistry: true },
BS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bahamas" },
BT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bhutan" },
BV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bouvet Island" },
BW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Botswana" },
BY: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{16}$", name: "Republic of Belarus", IBANRegistry: true },
BZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Belize" },
CA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Canada" },
CC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cocos (Keeling) Islands" },
CD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Congo, the Democratic Republic of the" },
CF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Central African Republic" },
CG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Congo" },
CH: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", name: "Switzerland", IBANRegistry: true },
CI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Côte d'Ivoire" },
CK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cook Islands" },
CL: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Chile" },
CM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cameroon" },
CN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "China" },
CO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Columbia" },
CR: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Costa Rica", IBANRegistry: true },
CU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cuba" },
CV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cabo Verde" },
CW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Curaçao" },
CX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Christmas Island" },
CY: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", name: "Cyprus", IBANRegistry: true },
CZ: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Czech Republic", IBANRegistry: true },
DE: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Germany", IBANRegistry: true },
DJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Djibouti" },
DK: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Denmark", IBANRegistry: true },
DM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Dominica" },
DO: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "Dominican Republic", IBANRegistry: true },
DZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Algeria" },
EC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ecuador" },
EE: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Estonia", IBANRegistry: true },
EG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Egypt" },
EH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Western Sahara" },
ER: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Eritrea" },
ES: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Spain", IBANRegistry: true },
ET: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ethiopia" },
FI: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Finland", IBANRegistry: true },
FJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Fiji" },
FK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Falkland Islands (Malvinas)" },
FM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Micronesia, Federated States of" },
FO: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Faroe Islands (Denmark)", IBANRegistry: true },
FR: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "France", IBANRegistry: true },
GA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Gabon" },
GB: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{14}$", name: "United Kingdom", IBANRegistry: true },
GD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Grenada" },
GE: { chars: 22, bban_regexp: "^[A-Z0-9]{2}[0-9]{16}$", name: "Georgia", IBANRegistry: true },
GF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Guyana", IBANRegistry: true },
GG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guernsey" },
GH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ghana" },
GI: { chars: 23, bban_regexp: "^[A-Z]{4}[A-Z0-9]{15}$", name: "Gibraltar", IBANRegistry: true },
GL: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Greenland", IBANRegistry: true },
GM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Gambia" },
GN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guinea" },
GP: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Guadeloupe", IBANRegistry: true },
GQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Equatorial Guinea" },
GR: { chars: 27, bban_regexp: "^[0-9]{7}[A-Z0-9]{16}$", name: "Greece", IBANRegistry: true },
GS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Georgia and the South Sandwitch Islands" },
GT: { chars: 28, bban_regexp: "^[A-Z0-9]{24}$", name: "Guatemala", IBANRegistry: true },
GU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guam" },
GW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guinea-Bissau" },
GY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guyana" },
HK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Hong Kong" },
HM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Heard Island and McDonald Islands" },
HN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Honduras" },
HR: { chars: 21, bban_regexp: "^[0-9]{17}$", name: "Croatia", IBANRegistry: true },
HT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Haiti" },
HU: { chars: 28, bban_regexp: "^[0-9]{24}$", name: "Hungary", IBANRegistry: true },
ID: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Indonesia" },
IE: { chars: 22, bban_regexp: "^[A-Z0-9]{4}[0-9]{14}$", name: "Republic of Ireland", IBANRegistry: true },
IL: { chars: 23, bban_regexp: "^[0-9]{19}$", name: "Israel", IBANRegistry: true },
IM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Isle of Man" },
IN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "India" },
IO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "British Indian Ocean Territory" },
IQ: { chars: 23, bban_regexp: "^[A-Z]{4}[0-9]{15}$", name: "Iraq", IBANRegistry: true },
IR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Iran, Islamic Republic of" },
IS: { chars: 26, bban_regexp: "^[0-9]{22}$", name: "Iceland", IBANRegistry: true },
IT: { chars: 27, bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$", name: "Italy", IBANRegistry: true },
JE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Jersey" },
JM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Jamaica" },
JO: { chars: 30, bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{18}$", name: "Jordan", IBANRegistry: true },
JP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Japan" },
KE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kenya" },
KG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kyrgyzstan" },
KH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cambodia" },
KI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kiribati" },
KM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Comoros" },
KN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Kitts and Nevis" },
KP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Korea, Domocratic People's Republic of" },
KR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Korea, Republic of" },
KW: { chars: 30, bban_regexp: "^[A-Z]{4}[A-Z0-9]{22}$", name: "Kuwait", IBANRegistry: true },
KY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cayman Islands" },
KZ: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", name: "Kazakhstan", IBANRegistry: true },
LA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Lao People's Democratic Republic" },
LB: { chars: 28, bban_regexp: "^[0-9]{4}[A-Z0-9]{20}$", name: "Lebanon", IBANRegistry: true },
LC: { chars: 32, bban_regexp: "^[A-Z]{4}[A-Z0-9]{24}$", name: "Saint Lucia", IBANRegistry: true },
LI: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", name: "Liechtenstein", IBANRegistry: true },
LK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sri Lanka" },
LR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Liberia" },
LS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Lesotho" },
LT: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Lithuania", IBANRegistry: true },
LU: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", name: "Luxembourg", IBANRegistry: true },
LV: { chars: 21, bban_regexp: "^[A-Z]{4}[A-Z0-9]{13}$", name: "Latvia", IBANRegistry: true },
LY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Libya" },
MA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Marocco" },
MC: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Monaco", IBANRegistry: true },
MD: { chars: 24, bban_regexp: "^[A-Z0-9]{2}[A-Z0-9]{18}$", name: "Moldova", IBANRegistry: true },
ME: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Montenegro", IBANRegistry: true },
MF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Martin", IBANRegistry: true },
MG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Madagascar" },
MH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Marshall Islands" },
MK: { chars: 19, bban_regexp: "^[0-9]{3}[A-Z0-9]{10}[0-9]{2}$", name: "Macedonia, the former Yugoslav Republic of", IBANRegistry: true },
ML: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mali" },
MM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Myanman" },
MN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mongolia" },
MO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Macao" },
MP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Northern mariana Islands" },
MQ: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Martinique", IBANRegistry: true },
MR: { chars: 27, bban_regexp: "^[0-9]{23}$", name: "Mauritania", IBANRegistry: true },
MS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Montserrat" },
MT: { chars: 31, bban_regexp: "^[A-Z]{4}[0-9]{5}[A-Z0-9]{18}$", name: "Malta", IBANRegistry: true },
MU: { chars: 30, bban_regexp: "^[A-Z]{4}[0-9]{19}[A-Z]{3}$", name: "Mauritius", IBANRegistry: true },
MV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Maldives" },
MW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Malawi" },
MX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mexico" },
MY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Malaysia" },
MZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mozambique" },
NA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Namibia" },
NC: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "New Caledonia", IBANRegistry: true },
NE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Niger" },
NF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Norfolk Island" },
NG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nigeria" },
NI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nicaraqua" },
NL: { chars: 18, bban_regexp: "^[A-Z]{4}[0-9]{10}$", name: "Netherlands", IBANRegistry: true },
NO: { chars: 15, bban_regexp: "^[0-9]{11}$", name: "Norway", IBANRegistry: true },
NP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nepal" },
NR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nauru" },
NU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Niue" },
NZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "New Zealand" },
OM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Oman" },
PA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Panama" },
PE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Peru" },
PF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Polynesia", IBANRegistry: true },
PG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Papua New Guinea" },
PH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Philippines" },
PK: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", name: "Pakistan", IBANRegistry: true },
PL: { chars: 28, bban_regexp: "^[0-9]{24}$", name: "Poland", IBANRegistry: true },
PM: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Pierre et Miquelon", IBANRegistry: true },
PN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Pitcairn" },
PR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Puerto Rico" },
PS: { chars: 29, bban_regexp: "^[A-Z0-9]{4}[0-9]{21}$", name: "Palestine, State of", IBANRegistry: true },
PT: { chars: 25, bban_regexp: "^[0-9]{21}$", name: "Portugal", IBANRegistry: true },
PW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Palau" },
PY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Paraguay" },
QA: { chars: 29, bban_regexp: "^[A-Z]{4}[A-Z0-9]{21}$", name: "Qatar", IBANRegistry: true },
RE: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Reunion", IBANRegistry: true },
RO: { chars: 24, bban_regexp: "^[A-Z]{4}[A-Z0-9]{16}$", name: "Romania", IBANRegistry: true },
RS: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Serbia", IBANRegistry: true },
RU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Russian Federation" },
RW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Rwanda" },
SA: { chars: 24, bban_regexp: "^[0-9]{2}[A-Z0-9]{18}$", name: "Saudi Arabia", IBANRegistry: true },
SB: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Solomon Islands" },
SC: { chars: 31, bban_regexp: "^[[A-Z]{4}[]0-9]{20}[A-Z]{3}$", name: "Seychelles", IBANRegistry: true },
SD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sudan" },
SE: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Sweden", IBANRegistry: true },
SG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Singapore" },
SH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Helena, Ascension and Tristan da Cunha" },
SI: { chars: 19, bban_regexp: "^[0-9]{15}$", name: "Slovenia", IBANRegistry: true },
SJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Svalbard and Jan Mayen" },
SK: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Slovak Republic", IBANRegistry: true },
SL: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Siera Leone" },
SM: { chars: 27, bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$", name: "San Marino", IBANRegistry: true },
SN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Senegal" },
SO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Somalia" },
SR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Suriname" },
SS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Sudan" },
ST: { chars: 25, bban_regexp: "^[0-9]{21}$", name: "Sao Tome And Principe", IBANRegistry: true },
SV: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "El Salvador", IBANRegistry: true },
SX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sint Maarten (Dutch part)" },
SY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Syrian Arab Republic" },
SZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Swaziland" },
TC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Turks and Caicos Islands" },
TD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Chad" },
TF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Southern Territories", IBANRegistry: true },
TG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Togo" },
TH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Thailand" },
TJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tajikistan" },
TK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tokelau" },
TL: { chars: 23, bban_regexp: "^[0-9]{19}$", name: "Timor-Leste", IBANRegistry: true },
TM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Turkmenistan" },
TN: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Tunisia", IBANRegistry: true },
TO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tonga" },
TR: { chars: 26, bban_regexp: "^[0-9]{5}[A-Z0-9]{17}$", name: "Turkey", IBANRegistry: true },
TT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Trinidad and Tobago" },
TV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tuvalu" },
TW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Taiwan, Province of China" },
TZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tanzania, United republic of" },
UA: { chars: 29, bban_regexp: "^[0-9]{6}[A-Z0-9]{19}$", name: "Ukraine", IBANRegistry: true },
UG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uganda" },
UM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "United States Minor Outlying Islands" },
US: { chars: null, bban_regexp: null, IBANRegistry: false, name: "United States of America" },
UY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uruguay" },
UZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uzbekistan" },
VA: { chars: 22, bban_regexp: "^[0-9]{18}", IBANRegistry: true, name: "Vatican City State" },
VC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Vincent and the Granadines" },
VE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Venezuela, Bolivian Republic of" },
VG: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", name: "Virgin Islands, British", IBANRegistry: true },
VI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Virgin Islands, U.S." },
VN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Viet Nam" },
VU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Vanautu" },
WF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Wallis and Futuna", IBANRegistry: true },
WS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Samoa" },
XK: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Kosovo", IBANRegistry: true },
YE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Yemen" },
YT: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Mayotte", IBANRegistry: true },
ZA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Africa" },
ZM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Zambia" },
ZW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Zimbabwe" },
AD: { chars: 24, bban_regexp: "^[0-9]{8}[A-Z0-9]{12}$", IBANRegistry: true },
AE: { chars: 23, bban_regexp: "^[0-9]{3}[0-9]{16}$", IBANRegistry: true },
AF: { chars: null, bban_regexp: null, IBANRegistry: false },
AG: { chars: null, bban_regexp: null, IBANRegistry: false },
AI: { chars: null, bban_regexp: null, IBANRegistry: false },
AL: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", IBANRegistry: true },
AM: { chars: null, bban_regexp: null, IBANRegistry: false },
AO: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: false },
AQ: { chars: null, bban_regexp: null, IBANRegistry: false },
AR: { chars: null, bban_regexp: null, IBANRegistry: false },
AS: { chars: null, bban_regexp: null, IBANRegistry: false },
AT: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
AU: { chars: null, bban_regexp: null, IBANRegistry: false },
AW: { chars: null, bban_regexp: null, IBANRegistry: false },
AX: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
AZ: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
BA: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
BB: { chars: null, bban_regexp: null, IBANRegistry: false },
BD: { chars: null, bban_regexp: null, IBANRegistry: false },
BE: { chars: 16, bban_regexp: "^[0-9]{12}$", IBANRegistry: true },
BF: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
BG: {
chars: 22,
bban_regexp: "^[A-Z]{4}[0-9]{6}[A-Z0-9]{8}$",
IBANRegistry: true
},
BH: { chars: 22, bban_regexp: "^[A-Z]{4}[A-Z0-9]{14}$", IBANRegistry: true },
BI: { chars: 16, bban_regexp: "^[0-9]{12}$", IBANRegistry: false },
BJ: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
BL: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
BM: { chars: null, bban_regexp: null, IBANRegistry: false },
BN: { chars: null, bban_regexp: null, IBANRegistry: false },
BO: { chars: null, bban_regexp: null, IBANRegistry: false },
BQ: { chars: null, bban_regexp: null, IBANRegistry: false },
BR: {
chars: 29,
bban_regexp: "^[0-9]{23}[A-Z]{1}[A-Z0-9]{1}$",
IBANRegistry: true
},
BS: { chars: null, bban_regexp: null, IBANRegistry: false },
BT: { chars: null, bban_regexp: null, IBANRegistry: false },
BV: { chars: null, bban_regexp: null, IBANRegistry: false },
BW: { chars: null, bban_regexp: null, IBANRegistry: false },
BY: {
chars: 28,
bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{16}$",
IBANRegistry: true
},
BZ: { chars: null, bban_regexp: null, IBANRegistry: false },
CA: { chars: null, bban_regexp: null, IBANRegistry: false },
CC: { chars: null, bban_regexp: null, IBANRegistry: false },
CD: { chars: null, bban_regexp: null, IBANRegistry: false },
CF: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CG: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CH: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", IBANRegistry: true },
CI: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
CK: { chars: null, bban_regexp: null, IBANRegistry: false },
CL: { chars: null, bban_regexp: null, IBANRegistry: false },
CM: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CN: { chars: null, bban_regexp: null, IBANRegistry: false },
CO: { chars: null, bban_regexp: null, IBANRegistry: false },
CR: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
CU: { chars: null, bban_regexp: null, IBANRegistry: false },
CV: { chars: null, bban_regexp: null, IBANRegistry: false },
CW: { chars: null, bban_regexp: null, IBANRegistry: false },
CX: { chars: null, bban_regexp: null, IBANRegistry: false },
CY: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", IBANRegistry: true },
CZ: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
DE: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
DJ: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
DK: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
DM: { chars: null, bban_regexp: null, IBANRegistry: false },
DO: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
DZ: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: false },
EC: { chars: null, bban_regexp: null, IBANRegistry: false },
EE: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
EG: { chars: 29, bban_regexp: "^[0-9]{25}", IBANRegistry: true },
EH: { chars: null, bban_regexp: null, IBANRegistry: false },
ER: { chars: null, bban_regexp: null, IBANRegistry: false },
ES: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
ET: { chars: null, bban_regexp: null, IBANRegistry: false },
FI: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
FJ: { chars: null, bban_regexp: null, IBANRegistry: false },
FK: { chars: null, bban_regexp: null, IBANRegistry: false },
FM: { chars: null, bban_regexp: null, IBANRegistry: false },
FO: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
FR: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GA: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
GB: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{14}$", IBANRegistry: true },
GD: { chars: null, bban_regexp: null, IBANRegistry: false },
GE: { chars: 22, bban_regexp: "^[A-Z0-9]{2}[0-9]{16}$", IBANRegistry: true },
GF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GG: { chars: null, bban_regexp: null, IBANRegistry: false },
GH: { chars: null, bban_regexp: null, IBANRegistry: false },
GI: { chars: 23, bban_regexp: "^[A-Z]{4}[A-Z0-9]{15}$", IBANRegistry: true },
GL: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
GM: { chars: null, bban_regexp: null, IBANRegistry: false },
GN: { chars: null, bban_regexp: null, IBANRegistry: false },
GP: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GQ: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
GR: { chars: 27, bban_regexp: "^[0-9]{7}[A-Z0-9]{16}$", IBANRegistry: true },
GS: { chars: null, bban_regexp: null, IBANRegistry: false },
GT: { chars: 28, bban_regexp: "^[A-Z0-9]{24}$", IBANRegistry: true },
GU: { chars: null, bban_regexp: null, IBANRegistry: false },
GW: { chars: 25, bban_regexp: "^[A-Z]{2}[0-9]{19}$", IBANRegistry: false },
GY: { chars: null, bban_regexp: null, IBANRegistry: false },
HK: { chars: null, bban_regexp: null, IBANRegistry: false },
HM: { chars: null, bban_regexp: null, IBANRegistry: false },
HN: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: false },
HR: { chars: 21, bban_regexp: "^[0-9]{17}$", IBANRegistry: true },
HT: { chars: null, bban_regexp: null, IBANRegistry: false },
HU: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: true },
ID: { chars: null, bban_regexp: null, IBANRegistry: false },
IE: { chars: 22, bban_regexp: "^[A-Z0-9]{4}[0-9]{14}$", IBANRegistry: true },
IL: { chars: 23, bban_regexp: "^[0-9]{19}$", IBANRegistry: true },
IM: { chars: null, bban_regexp: null, IBANRegistry: false },
IN: { chars: null, bban_regexp: null, IBANRegistry: false },
IO: { chars: null, bban_regexp: null, IBANRegistry: false },
IQ: { chars: 23, bban_regexp: "^[A-Z]{4}[0-9]{15}$", IBANRegistry: true },
IR: { chars: 26, bban_regexp: "^[0-9]{22}$", IBANRegistry: false },
IS: { chars: 26, bban_regexp: "^[0-9]{22}$", IBANRegistry: true },
IT: {
chars: 27,
bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$",
IBANRegistry: true
},
JE: { chars: null, bban_regexp: null, IBANRegistry: false },
JM: { chars: null, bban_regexp: null, IBANRegistry: false },
JO: {
chars: 30,
bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{18}$",
IBANRegistry: true
},
JP: { chars: null, bban_regexp: null, IBANRegistry: false },
KE: { chars: null, bban_regexp: null, IBANRegistry: false },
KG: { chars: null, bban_regexp: null, IBANRegistry: false },
KH: { chars: null, bban_regexp: null, IBANRegistry: false },
KI: { chars: null, bban_regexp: null, IBANRegistry: false },
KM: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
KN: { chars: null, bban_regexp: null, IBANRegistry: false },
KP: { chars: null, bban_regexp: null, IBANRegistry: false },
KR: { chars: null, bban_regexp: null, IBANRegistry: false },
KW: { chars: 30, bban_regexp: "^[A-Z]{4}[A-Z0-9]{22}$", IBANRegistry: true },
KY: { chars: null, bban_regexp: null, IBANRegistry: false },
KZ: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", IBANRegistry: true },
LA: { chars: null, bban_regexp: null, IBANRegistry: false },
LB: { chars: 28, bban_regexp: "^[0-9]{4}[A-Z0-9]{20}$", IBANRegistry: true },
LC: { chars: 32, bban_regexp: "^[A-Z]{4}[A-Z0-9]{24}$", IBANRegistry: true },
LI: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", IBANRegistry: true },
LK: { chars: null, bban_regexp: null, IBANRegistry: false },
LR: { chars: null, bban_regexp: null, IBANRegistry: false },
LS: { chars: null, bban_regexp: null, IBANRegistry: false },
LT: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
LU: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", IBANRegistry: true },
LV: { chars: 21, bban_regexp: "^[A-Z]{4}[A-Z0-9]{13}$", IBANRegistry: true },
LY: { chars: null, bban_regexp: null, IBANRegistry: false },
MA: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: false },
MC: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MD: {
chars: 24,
bban_regexp: "^[A-Z0-9]{2}[A-Z0-9]{18}$",
IBANRegistry: true
},
ME: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
MF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MG: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
MH: { chars: null, bban_regexp: null, IBANRegistry: false },
MK: {
chars: 19,
bban_regexp: "^[0-9]{3}[A-Z0-9]{10}[0-9]{2}$",
IBANRegistry: true
},
ML: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
MM: { chars: null, bban_regexp: null, IBANRegistry: false },
MN: { chars: null, bban_regexp: null, IBANRegistry: false },
MO: { chars: null, bban_regexp: null, IBANRegistry: false },
MP: { chars: null, bban_regexp: null, IBANRegistry: false },
MQ: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MR: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: true },
MS: { chars: null, bban_regexp: null, IBANRegistry: false },
MT: {
chars: 31,
bban_regexp: "^[A-Z]{4}[0-9]{5}[A-Z0-9]{18}$",
IBANRegistry: true
},
MU: {
chars: 30,
bban_regexp: "^[A-Z]{4}[0-9]{19}[A-Z]{3}$",
IBANRegistry: true
},
MV: { chars: null, bban_regexp: null, IBANRegistry: false },
MW: { chars: null, bban_regexp: null, IBANRegistry: false },
MX: { chars: null, bban_regexp: null, IBANRegistry: false },
MY: { chars: null, bban_regexp: null, IBANRegistry: false },
MZ: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: false },
NA: { chars: null, bban_regexp: null, IBANRegistry: false },
NC: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
NE: { chars: 28, bban_regexp: "^[A-Z]{2}[0-9]{22}$", IBANRegistry: false },
NF: { chars: null, bban_regexp: null, IBANRegistry: false },
NG: { chars: null, bban_regexp: null, IBANRegistry: false },
NI: { chars: 32, bban_regexp: "^[A-Z]{4}[0-9]{24}$", IBANRegistry: false },
NL: { chars: 18, bban_regexp: "^[A-Z]{4}[0-9]{10}$", IBANRegistry: true },
NO: { chars: 15, bban_regexp: "^[0-9]{11}$", IBANRegistry: true },
NP: { chars: null, bban_regexp: null, IBANRegistry: false },
NR: { chars: null, bban_regexp: null, IBANRegistry: false },
NU: { chars: null, bban_regexp: null, IBANRegistry: false },
NZ: { chars: null, bban_regexp: null, IBANRegistry: false },
OM: { chars: null, bban_regexp: null, IBANRegistry: false },
PA: { chars: null, bban_regexp: null, IBANRegistry: false },
PE: { chars: null, bban_regexp: null, IBANRegistry: false },
PF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
PG: { chars: null, bban_regexp: null, IBANRegistry: false },
PH: { chars: null, bban_regexp: null, IBANRegistry: false },
PK: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", IBANRegistry: true },
PL: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: true },
PM: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
PN: { chars: null, bban_regexp: null, IBANRegistry: false },
PR: { chars: null, bban_regexp: null, IBANRegistry: false },
PS: { chars: 29, bban_regexp: "^[A-Z0-9]{4}[0-9]{21}$", IBANRegistry: true },
PT: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: true },
PW: { chars: null, bban_regexp: null, IBANRegistry: false },
PY: { chars: null, bban_regexp: null, IBANRegistry: false },
QA: { chars: 29, bban_regexp: "^[A-Z]{4}[A-Z0-9]{21}$", IBANRegistry: true },
RE: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
RO: { chars: 24, bban_regexp: "^[A-Z]{4}[A-Z0-9]{16}$", IBANRegistry: true },
RS: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
RU: { chars: null, bban_regexp: null, IBANRegistry: false },
RW: { chars: null, bban_regexp: null, IBANRegistry: false },
SA: { chars: 24, bban_regexp: "^[0-9]{2}[A-Z0-9]{18}$", IBANRegistry: true },
SB: { chars: null, bban_regexp: null, IBANRegistry: false },
SC: {
chars: 31,
bban_regexp: "^[[A-Z]{4}[]0-9]{20}[A-Z]{3}$",
IBANRegistry: true
},
SD: { chars: null, bban_regexp: null, IBANRegistry: false },
SE: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
SG: { chars: null, bban_regexp: null, IBANRegistry: false },
SH: { chars: null, bban_regexp: null, IBANRegistry: false },
SI: { chars: 19, bban_regexp: "^[0-9]{15}$", IBANRegistry: true },
SJ: { chars: null, bban_regexp: null, IBANRegistry: false },
SK: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
SL: { chars: null, bban_regexp: null, IBANRegistry: false },
SM: {
chars: 27,
bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$",
IBANRegistry: true
},
SN: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
SO: { chars: null, bban_regexp: null, IBANRegistry: false },
SR: { chars: null, bban_regexp: null, IBANRegistry: false },
SS: { chars: null, bban_regexp: null, IBANRegistry: false },
ST: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: true },
SV: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
SX: { chars: null, bban_regexp: null, IBANRegistry: false },
SY: { chars: null, bban_regexp: null, IBANRegistry: false },
SZ: { chars: null, bban_regexp: null, IBANRegistry: false },
TC: { chars: null, bban_regexp: null, IBANRegistry: false },
TD: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
TF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
TG: { chars: 28, bban_regexp: "^[A-Z]{2}[0-9]{22}$", IBANRegistry: false },
TH: { chars: null, bban_regexp: null, IBANRegistry: false },
TJ: { chars: null, bban_regexp: null, IBANRegistry: false },
TK: { chars: null, bban_regexp: null, IBANRegistry: false },
TL: { chars: 23, bban_regexp: "^[0-9]{19}$", IBANRegistry: true },
TM: { chars: null, bban_regexp: null, IBANRegistry: false },
TN: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
TO: { chars: null, bban_regexp: null, IBANRegistry: false },
TR: { chars: 26, bban_regexp: "^[0-9]{5}[A-Z0-9]{17}$", IBANRegistry: true },
TT: { chars: null, bban_regexp: null, IBANRegistry: false },
TV: { chars: null, bban_regexp: null, IBANRegistry: false },
TW: { chars: null, bban_regexp: null, IBANRegistry: false },
TZ: { chars: null, bban_regexp: null, IBANRegistry: false },
UA: { chars: 29, bban_regexp: "^[0-9]{6}[A-Z0-9]{19}$", IBANRegistry: true },
UG: { chars: null, bban_regexp: null, IBANRegistry: false },
UM: { chars: null, bban_regexp: null, IBANRegistry: false },
US: { chars: null, bban_regexp: null, IBANRegistry: false },
UY: { chars: null, bban_regexp: null, IBANRegistry: false },
UZ: { chars: null, bban_regexp: null, IBANRegistry: false },
VA: { chars: 22, bban_regexp: "^[0-9]{18}", IBANRegistry: true },
VC: { chars: null, bban_regexp: null, IBANRegistry: false },
VE: { chars: null, bban_regexp: null, IBANRegistry: false },
VG: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", IBANRegistry: true },
VI: { chars: null, bban_regexp: null, IBANRegistry: false },
VN: { chars: null, bban_regexp: null, IBANRegistry: false },
VU: { chars: null, bban_regexp: null, IBANRegistry: false },
WF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
WS: { chars: null, bban_regexp: null, IBANRegistry: false },
XK: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
YE: { chars: null, bban_regexp: null, IBANRegistry: false },
YT: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
ZA: { chars: null, bban_regexp: null, IBANRegistry: false },
ZM: { chars: null, bban_regexp: null, IBANRegistry: false },
ZW: { chars: null, bban_regexp: null, IBANRegistry: false }
};

@@ -11,3 +11,3 @@ /*!

* @see module:ibantools
* @version 2.2.0
* @version 3.0.0
* @license MPL-2.0

@@ -33,3 +33,2 @@ */

if (spec !== undefined &&
spec.IBANRegistry &&
spec.chars === iban.length &&

@@ -58,3 +57,6 @@ reg.test(iban.slice(2, 4)) &&

export function isValidBBAN(bban, countryCode) {
if (bban !== undefined && bban !== null && countryCode !== undefined && countryCode !== null) {
if (bban !== undefined &&
bban !== null &&
countryCode !== undefined &&
countryCode !== null) {
var spec = countrySpecs[countryCode];

@@ -83,3 +85,3 @@ if (spec !== undefined &&

spec !== undefined &&
spec.chars === (bban.length + 4) &&
spec.chars === bban.length + 4 &&
checkFormatBBAN(bban, spec.bban_regexp)) {

@@ -94,7 +96,7 @@ var checksom = mod9710(params.countryCode + "00" + bban);

* @example
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", countryName: "Netherlands", valid: true}
* // returns {iban: "NL91ABNA0417164300", bban: "ABNA0417164300", countryCode: "NL", valid: true}
* ibantools.extractIBAN("NL91 ABNA 0417 1643 00");
* @alias module:ibantools.extractIBAN
* @param {string} IBAN IBAN
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, countryName: string, valid: boolean}
* @return {ExtractIBANResult} Object {iban: string, bban: string, countryCode: string, valid: boolean}
*/

@@ -107,4 +109,2 @@ export function extractIBAN(iban) {

result.countryCode = iban.slice(0, 2);
var spec = countrySpecs[result.countryCode];
result.countryName = spec.name;
result.valid = true;

@@ -175,3 +175,3 @@ }

var providedChecksum = parseInt(iban.slice(2, 4), 10);
var temp = iban.slice(3) + iban.slice(0, 2) + '00';
var temp = iban.slice(3) + iban.slice(0, 2) + "00";
var validationString = "";

@@ -189,6 +189,8 @@ for (var n = 1; n < temp.length; n++) {

var part = validationString.slice(0, 6);
validationString = (parseInt(part, 10) % 97).toString() + validationString.slice(part.length);
validationString =
(parseInt(part, 10) % 97).toString() +
validationString.slice(part.length);
}
var rest = parseInt(validationString, 10) % 97;
return (98 - rest) === providedChecksum;
return 98 - rest === providedChecksum;
}

@@ -214,3 +216,5 @@ /**

var part = validationString.slice(0, 6);
validationString = (parseInt(part, 10) % 97).toString() + validationString.slice(part.length);
validationString =
(parseInt(part, 10) % 97).toString() +
validationString.slice(part.length);
}

@@ -240,3 +244,3 @@ return parseInt(validationString, 10) % 97;

* @alias module:ibantools.getCountrySpecifications
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, name: string, IBANRegistry: boolean}
* @return {CountryMap} Object [countryCode: string]CountrySpec -> {chars: :number, bban_regexp: string, IBANRegistry: boolean}
*/

@@ -272,7 +276,7 @@ export function getCountrySpecifications() {

* @example
* // returns {bankCode: "ABNA", countryCode: "NL", countryName: "Netherlands", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* // returns {bankCode: "ABNA", countryCode: "NL", locationCode: "2A", branchCode: null, testBIC: flase, valid: true}
* ibantools.extractBIC("ABNANL2A");
* @alias module:ibantools.extractBIC
* @param {string} BIC BIC
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, countryName: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
* @return {ExtractBICResult} Object {bancCode: string, countryCode: string, locationCode: string, branchCode: string, testBIC: boolean, valid: boolean}
*/

@@ -285,7 +289,5 @@ export function extractBIC(inputBic) {

result.countryCode = bic.slice(4, 6);
var spec = countrySpecs[result.countryCode];
result.countryName = spec.name;
result.locationCode = bic.slice(6, 8);
result.testBIC = (result.locationCode[1] === "0" ? true : false);
result.branchCode = (bic.length > 8 ? bic.slice(8) : "619");
result.testBIC = result.locationCode[1] === "0" ? true : false;
result.branchCode = bic.length > 8 ? bic.slice(8) : "619";
result.valid = true;

@@ -300,252 +302,352 @@ }

var countrySpecs = {
AD: { chars: 24, bban_regexp: "^[0-9]{8}[A-Z0-9]{12}$", name: "Andorra", IBANRegistry: true },
AE: { chars: 23, bban_regexp: "^[0-9]{3}[0-9]{16}$", name: "United Arab Emirates", IBANRegistry: true },
AF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Afganistan" },
AG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Antigua and Bermuda" },
AI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Anguilla" },
AL: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", name: "Albania", IBANRegistry: true },
AM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Armenia" },
AO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Angola" },
AQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Antartica" },
AR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Argentina" },
AS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "American Samoa" },
AT: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Austria", IBANRegistry: true },
AU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Australia" },
AW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Aruba" },
AX: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Åland Islands", IBANRegistry: true },
AZ: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "Republic of Azerbaijan", IBANRegistry: true },
BA: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Bosnia and Herzegovina", IBANRegistry: true },
BB: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Barbados" },
BD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bangladesh" },
BE: { chars: 16, bban_regexp: "^[0-9]{12}$", name: "Belgium", IBANRegistry: true },
BF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Burkina Faso" },
BG: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{6}[A-Z0-9]{8}$", name: "Bulgaria", IBANRegistry: true },
BH: { chars: 22, bban_regexp: "^[A-Z]{4}[A-Z0-9]{14}$", name: "Bahrain", IBANRegistry: true },
BI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Burundi" },
BJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Benin" },
BL: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Barthelemy", IBANRegistry: true },
BM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bermuda" },
BN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Brunei Darusslam" },
BO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bolivia, Plurinational State of" },
BQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bonaire, Sint Eustatius and Saba" },
BR: { chars: 29, bban_regexp: "^[0-9]{23}[A-Z]{1}[A-Z0-9]{1}$", name: "Brazil", IBANRegistry: true },
BS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bahamas" },
BT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bhutan" },
BV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Bouvet Island" },
BW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Botswana" },
BY: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{16}$", name: "Republic of Belarus", IBANRegistry: true },
BZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Belize" },
CA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Canada" },
CC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cocos (Keeling) Islands" },
CD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Congo, the Democratic Republic of the" },
CF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Central African Republic" },
CG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Congo" },
CH: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", name: "Switzerland", IBANRegistry: true },
CI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Côte d'Ivoire" },
CK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cook Islands" },
CL: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Chile" },
CM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cameroon" },
CN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "China" },
CO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Columbia" },
CR: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Costa Rica", IBANRegistry: true },
CU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cuba" },
CV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cabo Verde" },
CW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Curaçao" },
CX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Christmas Island" },
CY: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", name: "Cyprus", IBANRegistry: true },
CZ: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Czech Republic", IBANRegistry: true },
DE: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Germany", IBANRegistry: true },
DJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Djibouti" },
DK: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Denmark", IBANRegistry: true },
DM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Dominica" },
DO: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "Dominican Republic", IBANRegistry: true },
DZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Algeria" },
EC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ecuador" },
EE: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Estonia", IBANRegistry: true },
EG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Egypt" },
EH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Western Sahara" },
ER: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Eritrea" },
ES: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Spain", IBANRegistry: true },
ET: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ethiopia" },
FI: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Finland", IBANRegistry: true },
FJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Fiji" },
FK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Falkland Islands (Malvinas)" },
FM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Micronesia, Federated States of" },
FO: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Faroe Islands (Denmark)", IBANRegistry: true },
FR: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "France", IBANRegistry: true },
GA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Gabon" },
GB: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{14}$", name: "United Kingdom", IBANRegistry: true },
GD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Grenada" },
GE: { chars: 22, bban_regexp: "^[A-Z0-9]{2}[0-9]{16}$", name: "Georgia", IBANRegistry: true },
GF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Guyana", IBANRegistry: true },
GG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guernsey" },
GH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Ghana" },
GI: { chars: 23, bban_regexp: "^[A-Z]{4}[A-Z0-9]{15}$", name: "Gibraltar", IBANRegistry: true },
GL: { chars: 18, bban_regexp: "^[0-9]{14}$", name: "Greenland", IBANRegistry: true },
GM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Gambia" },
GN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guinea" },
GP: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Guadeloupe", IBANRegistry: true },
GQ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Equatorial Guinea" },
GR: { chars: 27, bban_regexp: "^[0-9]{7}[A-Z0-9]{16}$", name: "Greece", IBANRegistry: true },
GS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Georgia and the South Sandwitch Islands" },
GT: { chars: 28, bban_regexp: "^[A-Z0-9]{24}$", name: "Guatemala", IBANRegistry: true },
GU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guam" },
GW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guinea-Bissau" },
GY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Guyana" },
HK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Hong Kong" },
HM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Heard Island and McDonald Islands" },
HN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Honduras" },
HR: { chars: 21, bban_regexp: "^[0-9]{17}$", name: "Croatia", IBANRegistry: true },
HT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Haiti" },
HU: { chars: 28, bban_regexp: "^[0-9]{24}$", name: "Hungary", IBANRegistry: true },
ID: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Indonesia" },
IE: { chars: 22, bban_regexp: "^[A-Z0-9]{4}[0-9]{14}$", name: "Republic of Ireland", IBANRegistry: true },
IL: { chars: 23, bban_regexp: "^[0-9]{19}$", name: "Israel", IBANRegistry: true },
IM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Isle of Man" },
IN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "India" },
IO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "British Indian Ocean Territory" },
IQ: { chars: 23, bban_regexp: "^[A-Z]{4}[0-9]{15}$", name: "Iraq", IBANRegistry: true },
IR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Iran, Islamic Republic of" },
IS: { chars: 26, bban_regexp: "^[0-9]{22}$", name: "Iceland", IBANRegistry: true },
IT: { chars: 27, bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$", name: "Italy", IBANRegistry: true },
JE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Jersey" },
JM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Jamaica" },
JO: { chars: 30, bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{18}$", name: "Jordan", IBANRegistry: true },
JP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Japan" },
KE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kenya" },
KG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kyrgyzstan" },
KH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cambodia" },
KI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Kiribati" },
KM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Comoros" },
KN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Kitts and Nevis" },
KP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Korea, Domocratic People's Republic of" },
KR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Korea, Republic of" },
KW: { chars: 30, bban_regexp: "^[A-Z]{4}[A-Z0-9]{22}$", name: "Kuwait", IBANRegistry: true },
KY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Cayman Islands" },
KZ: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", name: "Kazakhstan", IBANRegistry: true },
LA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Lao People's Democratic Republic" },
LB: { chars: 28, bban_regexp: "^[0-9]{4}[A-Z0-9]{20}$", name: "Lebanon", IBANRegistry: true },
LC: { chars: 32, bban_regexp: "^[A-Z]{4}[A-Z0-9]{24}$", name: "Saint Lucia", IBANRegistry: true },
LI: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", name: "Liechtenstein", IBANRegistry: true },
LK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sri Lanka" },
LR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Liberia" },
LS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Lesotho" },
LT: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Lithuania", IBANRegistry: true },
LU: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", name: "Luxembourg", IBANRegistry: true },
LV: { chars: 21, bban_regexp: "^[A-Z]{4}[A-Z0-9]{13}$", name: "Latvia", IBANRegistry: true },
LY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Libya" },
MA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Marocco" },
MC: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Monaco", IBANRegistry: true },
MD: { chars: 24, bban_regexp: "^[A-Z0-9]{2}[A-Z0-9]{18}$", name: "Moldova", IBANRegistry: true },
ME: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Montenegro", IBANRegistry: true },
MF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Martin", IBANRegistry: true },
MG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Madagascar" },
MH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Marshall Islands" },
MK: { chars: 19, bban_regexp: "^[0-9]{3}[A-Z0-9]{10}[0-9]{2}$", name: "Macedonia, the former Yugoslav Republic of", IBANRegistry: true },
ML: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mali" },
MM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Myanman" },
MN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mongolia" },
MO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Macao" },
MP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Northern mariana Islands" },
MQ: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Martinique", IBANRegistry: true },
MR: { chars: 27, bban_regexp: "^[0-9]{23}$", name: "Mauritania", IBANRegistry: true },
MS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Montserrat" },
MT: { chars: 31, bban_regexp: "^[A-Z]{4}[0-9]{5}[A-Z0-9]{18}$", name: "Malta", IBANRegistry: true },
MU: { chars: 30, bban_regexp: "^[A-Z]{4}[0-9]{19}[A-Z]{3}$", name: "Mauritius", IBANRegistry: true },
MV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Maldives" },
MW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Malawi" },
MX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mexico" },
MY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Malaysia" },
MZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Mozambique" },
NA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Namibia" },
NC: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "New Caledonia", IBANRegistry: true },
NE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Niger" },
NF: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Norfolk Island" },
NG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nigeria" },
NI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nicaraqua" },
NL: { chars: 18, bban_regexp: "^[A-Z]{4}[0-9]{10}$", name: "Netherlands", IBANRegistry: true },
NO: { chars: 15, bban_regexp: "^[0-9]{11}$", name: "Norway", IBANRegistry: true },
NP: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nepal" },
NR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Nauru" },
NU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Niue" },
NZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "New Zealand" },
OM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Oman" },
PA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Panama" },
PE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Peru" },
PF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Polynesia", IBANRegistry: true },
PG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Papua New Guinea" },
PH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Philippines" },
PK: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", name: "Pakistan", IBANRegistry: true },
PL: { chars: 28, bban_regexp: "^[0-9]{24}$", name: "Poland", IBANRegistry: true },
PM: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Saint Pierre et Miquelon", IBANRegistry: true },
PN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Pitcairn" },
PR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Puerto Rico" },
PS: { chars: 29, bban_regexp: "^[A-Z0-9]{4}[0-9]{21}$", name: "Palestine, State of", IBANRegistry: true },
PT: { chars: 25, bban_regexp: "^[0-9]{21}$", name: "Portugal", IBANRegistry: true },
PW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Palau" },
PY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Paraguay" },
QA: { chars: 29, bban_regexp: "^[A-Z]{4}[A-Z0-9]{21}$", name: "Qatar", IBANRegistry: true },
RE: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Reunion", IBANRegistry: true },
RO: { chars: 24, bban_regexp: "^[A-Z]{4}[A-Z0-9]{16}$", name: "Romania", IBANRegistry: true },
RS: { chars: 22, bban_regexp: "^[0-9]{18}$", name: "Serbia", IBANRegistry: true },
RU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Russian Federation" },
RW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Rwanda" },
SA: { chars: 24, bban_regexp: "^[0-9]{2}[A-Z0-9]{18}$", name: "Saudi Arabia", IBANRegistry: true },
SB: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Solomon Islands" },
SC: { chars: 31, bban_regexp: "^[[A-Z]{4}[]0-9]{20}[A-Z]{3}$", name: "Seychelles", IBANRegistry: true },
SD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sudan" },
SE: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Sweden", IBANRegistry: true },
SG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Singapore" },
SH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Helena, Ascension and Tristan da Cunha" },
SI: { chars: 19, bban_regexp: "^[0-9]{15}$", name: "Slovenia", IBANRegistry: true },
SJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Svalbard and Jan Mayen" },
SK: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Slovak Republic", IBANRegistry: true },
SL: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Siera Leone" },
SM: { chars: 27, bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$", name: "San Marino", IBANRegistry: true },
SN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Senegal" },
SO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Somalia" },
SR: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Suriname" },
SS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Sudan" },
ST: { chars: 25, bban_regexp: "^[0-9]{21}$", name: "Sao Tome And Principe", IBANRegistry: true },
SV: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", name: "El Salvador", IBANRegistry: true },
SX: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Sint Maarten (Dutch part)" },
SY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Syrian Arab Republic" },
SZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Swaziland" },
TC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Turks and Caicos Islands" },
TD: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Chad" },
TF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "French Southern Territories", IBANRegistry: true },
TG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Togo" },
TH: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Thailand" },
TJ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tajikistan" },
TK: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tokelau" },
TL: { chars: 23, bban_regexp: "^[0-9]{19}$", name: "Timor-Leste", IBANRegistry: true },
TM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Turkmenistan" },
TN: { chars: 24, bban_regexp: "^[0-9]{20}$", name: "Tunisia", IBANRegistry: true },
TO: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tonga" },
TR: { chars: 26, bban_regexp: "^[0-9]{5}[A-Z0-9]{17}$", name: "Turkey", IBANRegistry: true },
TT: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Trinidad and Tobago" },
TV: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tuvalu" },
TW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Taiwan, Province of China" },
TZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Tanzania, United republic of" },
UA: { chars: 29, bban_regexp: "^[0-9]{6}[A-Z0-9]{19}$", name: "Ukraine", IBANRegistry: true },
UG: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uganda" },
UM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "United States Minor Outlying Islands" },
US: { chars: null, bban_regexp: null, IBANRegistry: false, name: "United States of America" },
UY: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uruguay" },
UZ: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Uzbekistan" },
VA: { chars: 22, bban_regexp: "^[0-9]{18}", IBANRegistry: true, name: "Vatican City State" },
VC: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Saint Vincent and the Granadines" },
VE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Venezuela, Bolivian Republic of" },
VG: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", name: "Virgin Islands, British", IBANRegistry: true },
VI: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Virgin Islands, U.S." },
VN: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Viet Nam" },
VU: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Vanautu" },
WF: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Wallis and Futuna", IBANRegistry: true },
WS: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Samoa" },
XK: { chars: 20, bban_regexp: "^[0-9]{16}$", name: "Kosovo", IBANRegistry: true },
YE: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Yemen" },
YT: { chars: 27, bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$", name: "Mayotte", IBANRegistry: true },
ZA: { chars: null, bban_regexp: null, IBANRegistry: false, name: "South Africa" },
ZM: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Zambia" },
ZW: { chars: null, bban_regexp: null, IBANRegistry: false, name: "Zimbabwe" },
AD: { chars: 24, bban_regexp: "^[0-9]{8}[A-Z0-9]{12}$", IBANRegistry: true },
AE: { chars: 23, bban_regexp: "^[0-9]{3}[0-9]{16}$", IBANRegistry: true },
AF: { chars: null, bban_regexp: null, IBANRegistry: false },
AG: { chars: null, bban_regexp: null, IBANRegistry: false },
AI: { chars: null, bban_regexp: null, IBANRegistry: false },
AL: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", IBANRegistry: true },
AM: { chars: null, bban_regexp: null, IBANRegistry: false },
AO: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: false },
AQ: { chars: null, bban_regexp: null, IBANRegistry: false },
AR: { chars: null, bban_regexp: null, IBANRegistry: false },
AS: { chars: null, bban_regexp: null, IBANRegistry: false },
AT: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
AU: { chars: null, bban_regexp: null, IBANRegistry: false },
AW: { chars: null, bban_regexp: null, IBANRegistry: false },
AX: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
AZ: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
BA: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
BB: { chars: null, bban_regexp: null, IBANRegistry: false },
BD: { chars: null, bban_regexp: null, IBANRegistry: false },
BE: { chars: 16, bban_regexp: "^[0-9]{12}$", IBANRegistry: true },
BF: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
BG: {
chars: 22,
bban_regexp: "^[A-Z]{4}[0-9]{6}[A-Z0-9]{8}$",
IBANRegistry: true
},
BH: { chars: 22, bban_regexp: "^[A-Z]{4}[A-Z0-9]{14}$", IBANRegistry: true },
BI: { chars: 16, bban_regexp: "^[0-9]{12}$", IBANRegistry: false },
BJ: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
BL: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
BM: { chars: null, bban_regexp: null, IBANRegistry: false },
BN: { chars: null, bban_regexp: null, IBANRegistry: false },
BO: { chars: null, bban_regexp: null, IBANRegistry: false },
BQ: { chars: null, bban_regexp: null, IBANRegistry: false },
BR: {
chars: 29,
bban_regexp: "^[0-9]{23}[A-Z]{1}[A-Z0-9]{1}$",
IBANRegistry: true
},
BS: { chars: null, bban_regexp: null, IBANRegistry: false },
BT: { chars: null, bban_regexp: null, IBANRegistry: false },
BV: { chars: null, bban_regexp: null, IBANRegistry: false },
BW: { chars: null, bban_regexp: null, IBANRegistry: false },
BY: {
chars: 28,
bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{16}$",
IBANRegistry: true
},
BZ: { chars: null, bban_regexp: null, IBANRegistry: false },
CA: { chars: null, bban_regexp: null, IBANRegistry: false },
CC: { chars: null, bban_regexp: null, IBANRegistry: false },
CD: { chars: null, bban_regexp: null, IBANRegistry: false },
CF: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CG: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CH: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", IBANRegistry: true },
CI: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
CK: { chars: null, bban_regexp: null, IBANRegistry: false },
CL: { chars: null, bban_regexp: null, IBANRegistry: false },
CM: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
CN: { chars: null, bban_regexp: null, IBANRegistry: false },
CO: { chars: null, bban_regexp: null, IBANRegistry: false },
CR: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
CU: { chars: null, bban_regexp: null, IBANRegistry: false },
CV: { chars: null, bban_regexp: null, IBANRegistry: false },
CW: { chars: null, bban_regexp: null, IBANRegistry: false },
CX: { chars: null, bban_regexp: null, IBANRegistry: false },
CY: { chars: 28, bban_regexp: "^[0-9]{8}[A-Z0-9]{16}$", IBANRegistry: true },
CZ: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
DE: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
DJ: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
DK: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
DM: { chars: null, bban_regexp: null, IBANRegistry: false },
DO: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
DZ: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: false },
EC: { chars: null, bban_regexp: null, IBANRegistry: false },
EE: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
EG: { chars: 29, bban_regexp: "^[0-9]{25}", IBANRegistry: true },
EH: { chars: null, bban_regexp: null, IBANRegistry: false },
ER: { chars: null, bban_regexp: null, IBANRegistry: false },
ES: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
ET: { chars: null, bban_regexp: null, IBANRegistry: false },
FI: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
FJ: { chars: null, bban_regexp: null, IBANRegistry: false },
FK: { chars: null, bban_regexp: null, IBANRegistry: false },
FM: { chars: null, bban_regexp: null, IBANRegistry: false },
FO: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
FR: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GA: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
GB: { chars: 22, bban_regexp: "^[A-Z]{4}[0-9]{14}$", IBANRegistry: true },
GD: { chars: null, bban_regexp: null, IBANRegistry: false },
GE: { chars: 22, bban_regexp: "^[A-Z0-9]{2}[0-9]{16}$", IBANRegistry: true },
GF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GG: { chars: null, bban_regexp: null, IBANRegistry: false },
GH: { chars: null, bban_regexp: null, IBANRegistry: false },
GI: { chars: 23, bban_regexp: "^[A-Z]{4}[A-Z0-9]{15}$", IBANRegistry: true },
GL: { chars: 18, bban_regexp: "^[0-9]{14}$", IBANRegistry: true },
GM: { chars: null, bban_regexp: null, IBANRegistry: false },
GN: { chars: null, bban_regexp: null, IBANRegistry: false },
GP: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
GQ: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
GR: { chars: 27, bban_regexp: "^[0-9]{7}[A-Z0-9]{16}$", IBANRegistry: true },
GS: { chars: null, bban_regexp: null, IBANRegistry: false },
GT: { chars: 28, bban_regexp: "^[A-Z0-9]{24}$", IBANRegistry: true },
GU: { chars: null, bban_regexp: null, IBANRegistry: false },
GW: { chars: 25, bban_regexp: "^[A-Z]{2}[0-9]{19}$", IBANRegistry: false },
GY: { chars: null, bban_regexp: null, IBANRegistry: false },
HK: { chars: null, bban_regexp: null, IBANRegistry: false },
HM: { chars: null, bban_regexp: null, IBANRegistry: false },
HN: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: false },
HR: { chars: 21, bban_regexp: "^[0-9]{17}$", IBANRegistry: true },
HT: { chars: null, bban_regexp: null, IBANRegistry: false },
HU: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: true },
ID: { chars: null, bban_regexp: null, IBANRegistry: false },
IE: { chars: 22, bban_regexp: "^[A-Z0-9]{4}[0-9]{14}$", IBANRegistry: true },
IL: { chars: 23, bban_regexp: "^[0-9]{19}$", IBANRegistry: true },
IM: { chars: null, bban_regexp: null, IBANRegistry: false },
IN: { chars: null, bban_regexp: null, IBANRegistry: false },
IO: { chars: null, bban_regexp: null, IBANRegistry: false },
IQ: { chars: 23, bban_regexp: "^[A-Z]{4}[0-9]{15}$", IBANRegistry: true },
IR: { chars: 26, bban_regexp: "^[0-9]{22}$", IBANRegistry: false },
IS: { chars: 26, bban_regexp: "^[0-9]{22}$", IBANRegistry: true },
IT: {
chars: 27,
bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$",
IBANRegistry: true
},
JE: { chars: null, bban_regexp: null, IBANRegistry: false },
JM: { chars: null, bban_regexp: null, IBANRegistry: false },
JO: {
chars: 30,
bban_regexp: "^[A-Z]{4}[0-9]{4}[A-Z0-9]{18}$",
IBANRegistry: true
},
JP: { chars: null, bban_regexp: null, IBANRegistry: false },
KE: { chars: null, bban_regexp: null, IBANRegistry: false },
KG: { chars: null, bban_regexp: null, IBANRegistry: false },
KH: { chars: null, bban_regexp: null, IBANRegistry: false },
KI: { chars: null, bban_regexp: null, IBANRegistry: false },
KM: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
KN: { chars: null, bban_regexp: null, IBANRegistry: false },
KP: { chars: null, bban_regexp: null, IBANRegistry: false },
KR: { chars: null, bban_regexp: null, IBANRegistry: false },
KW: { chars: 30, bban_regexp: "^[A-Z]{4}[A-Z0-9]{22}$", IBANRegistry: true },
KY: { chars: null, bban_regexp: null, IBANRegistry: false },
KZ: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", IBANRegistry: true },
LA: { chars: null, bban_regexp: null, IBANRegistry: false },
LB: { chars: 28, bban_regexp: "^[0-9]{4}[A-Z0-9]{20}$", IBANRegistry: true },
LC: { chars: 32, bban_regexp: "^[A-Z]{4}[A-Z0-9]{24}$", IBANRegistry: true },
LI: { chars: 21, bban_regexp: "^[0-9]{5}[A-Z0-9]{12}$", IBANRegistry: true },
LK: { chars: null, bban_regexp: null, IBANRegistry: false },
LR: { chars: null, bban_regexp: null, IBANRegistry: false },
LS: { chars: null, bban_regexp: null, IBANRegistry: false },
LT: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
LU: { chars: 20, bban_regexp: "^[0-9]{3}[A-Z0-9]{13}$", IBANRegistry: true },
LV: { chars: 21, bban_regexp: "^[A-Z]{4}[A-Z0-9]{13}$", IBANRegistry: true },
LY: { chars: null, bban_regexp: null, IBANRegistry: false },
MA: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: false },
MC: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MD: {
chars: 24,
bban_regexp: "^[A-Z0-9]{2}[A-Z0-9]{18}$",
IBANRegistry: true
},
ME: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
MF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MG: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
MH: { chars: null, bban_regexp: null, IBANRegistry: false },
MK: {
chars: 19,
bban_regexp: "^[0-9]{3}[A-Z0-9]{10}[0-9]{2}$",
IBANRegistry: true
},
ML: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
MM: { chars: null, bban_regexp: null, IBANRegistry: false },
MN: { chars: null, bban_regexp: null, IBANRegistry: false },
MO: { chars: null, bban_regexp: null, IBANRegistry: false },
MP: { chars: null, bban_regexp: null, IBANRegistry: false },
MQ: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
MR: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: true },
MS: { chars: null, bban_regexp: null, IBANRegistry: false },
MT: {
chars: 31,
bban_regexp: "^[A-Z]{4}[0-9]{5}[A-Z0-9]{18}$",
IBANRegistry: true
},
MU: {
chars: 30,
bban_regexp: "^[A-Z]{4}[0-9]{19}[A-Z]{3}$",
IBANRegistry: true
},
MV: { chars: null, bban_regexp: null, IBANRegistry: false },
MW: { chars: null, bban_regexp: null, IBANRegistry: false },
MX: { chars: null, bban_regexp: null, IBANRegistry: false },
MY: { chars: null, bban_regexp: null, IBANRegistry: false },
MZ: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: false },
NA: { chars: null, bban_regexp: null, IBANRegistry: false },
NC: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
NE: { chars: 28, bban_regexp: "^[A-Z]{2}[0-9]{22}$", IBANRegistry: false },
NF: { chars: null, bban_regexp: null, IBANRegistry: false },
NG: { chars: null, bban_regexp: null, IBANRegistry: false },
NI: { chars: 32, bban_regexp: "^[A-Z]{4}[0-9]{24}$", IBANRegistry: false },
NL: { chars: 18, bban_regexp: "^[A-Z]{4}[0-9]{10}$", IBANRegistry: true },
NO: { chars: 15, bban_regexp: "^[0-9]{11}$", IBANRegistry: true },
NP: { chars: null, bban_regexp: null, IBANRegistry: false },
NR: { chars: null, bban_regexp: null, IBANRegistry: false },
NU: { chars: null, bban_regexp: null, IBANRegistry: false },
NZ: { chars: null, bban_regexp: null, IBANRegistry: false },
OM: { chars: null, bban_regexp: null, IBANRegistry: false },
PA: { chars: null, bban_regexp: null, IBANRegistry: false },
PE: { chars: null, bban_regexp: null, IBANRegistry: false },
PF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
PG: { chars: null, bban_regexp: null, IBANRegistry: false },
PH: { chars: null, bban_regexp: null, IBANRegistry: false },
PK: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", IBANRegistry: true },
PL: { chars: 28, bban_regexp: "^[0-9]{24}$", IBANRegistry: true },
PM: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
PN: { chars: null, bban_regexp: null, IBANRegistry: false },
PR: { chars: null, bban_regexp: null, IBANRegistry: false },
PS: { chars: 29, bban_regexp: "^[A-Z0-9]{4}[0-9]{21}$", IBANRegistry: true },
PT: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: true },
PW: { chars: null, bban_regexp: null, IBANRegistry: false },
PY: { chars: null, bban_regexp: null, IBANRegistry: false },
QA: { chars: 29, bban_regexp: "^[A-Z]{4}[A-Z0-9]{21}$", IBANRegistry: true },
RE: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
RO: { chars: 24, bban_regexp: "^[A-Z]{4}[A-Z0-9]{16}$", IBANRegistry: true },
RS: { chars: 22, bban_regexp: "^[0-9]{18}$", IBANRegistry: true },
RU: { chars: null, bban_regexp: null, IBANRegistry: false },
RW: { chars: null, bban_regexp: null, IBANRegistry: false },
SA: { chars: 24, bban_regexp: "^[0-9]{2}[A-Z0-9]{18}$", IBANRegistry: true },
SB: { chars: null, bban_regexp: null, IBANRegistry: false },
SC: {
chars: 31,
bban_regexp: "^[[A-Z]{4}[]0-9]{20}[A-Z]{3}$",
IBANRegistry: true
},
SD: { chars: null, bban_regexp: null, IBANRegistry: false },
SE: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
SG: { chars: null, bban_regexp: null, IBANRegistry: false },
SH: { chars: null, bban_regexp: null, IBANRegistry: false },
SI: { chars: 19, bban_regexp: "^[0-9]{15}$", IBANRegistry: true },
SJ: { chars: null, bban_regexp: null, IBANRegistry: false },
SK: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
SL: { chars: null, bban_regexp: null, IBANRegistry: false },
SM: {
chars: 27,
bban_regexp: "^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$",
IBANRegistry: true
},
SN: { chars: 28, bban_regexp: "^[A-Z]{1}[0-9]{23}$", IBANRegistry: false },
SO: { chars: null, bban_regexp: null, IBANRegistry: false },
SR: { chars: null, bban_regexp: null, IBANRegistry: false },
SS: { chars: null, bban_regexp: null, IBANRegistry: false },
ST: { chars: 25, bban_regexp: "^[0-9]{21}$", IBANRegistry: true },
SV: { chars: 28, bban_regexp: "^[A-Z]{4}[0-9]{20}$", IBANRegistry: true },
SX: { chars: null, bban_regexp: null, IBANRegistry: false },
SY: { chars: null, bban_regexp: null, IBANRegistry: false },
SZ: { chars: null, bban_regexp: null, IBANRegistry: false },
TC: { chars: null, bban_regexp: null, IBANRegistry: false },
TD: { chars: 27, bban_regexp: "^[0-9]{23}$", IBANRegistry: false },
TF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
TG: { chars: 28, bban_regexp: "^[A-Z]{2}[0-9]{22}$", IBANRegistry: false },
TH: { chars: null, bban_regexp: null, IBANRegistry: false },
TJ: { chars: null, bban_regexp: null, IBANRegistry: false },
TK: { chars: null, bban_regexp: null, IBANRegistry: false },
TL: { chars: 23, bban_regexp: "^[0-9]{19}$", IBANRegistry: true },
TM: { chars: null, bban_regexp: null, IBANRegistry: false },
TN: { chars: 24, bban_regexp: "^[0-9]{20}$", IBANRegistry: true },
TO: { chars: null, bban_regexp: null, IBANRegistry: false },
TR: { chars: 26, bban_regexp: "^[0-9]{5}[A-Z0-9]{17}$", IBANRegistry: true },
TT: { chars: null, bban_regexp: null, IBANRegistry: false },
TV: { chars: null, bban_regexp: null, IBANRegistry: false },
TW: { chars: null, bban_regexp: null, IBANRegistry: false },
TZ: { chars: null, bban_regexp: null, IBANRegistry: false },
UA: { chars: 29, bban_regexp: "^[0-9]{6}[A-Z0-9]{19}$", IBANRegistry: true },
UG: { chars: null, bban_regexp: null, IBANRegistry: false },
UM: { chars: null, bban_regexp: null, IBANRegistry: false },
US: { chars: null, bban_regexp: null, IBANRegistry: false },
UY: { chars: null, bban_regexp: null, IBANRegistry: false },
UZ: { chars: null, bban_regexp: null, IBANRegistry: false },
VA: { chars: 22, bban_regexp: "^[0-9]{18}", IBANRegistry: true },
VC: { chars: null, bban_regexp: null, IBANRegistry: false },
VE: { chars: null, bban_regexp: null, IBANRegistry: false },
VG: { chars: 24, bban_regexp: "^[A-Z0-9]{4}[0-9]{16}$", IBANRegistry: true },
VI: { chars: null, bban_regexp: null, IBANRegistry: false },
VN: { chars: null, bban_regexp: null, IBANRegistry: false },
VU: { chars: null, bban_regexp: null, IBANRegistry: false },
WF: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
WS: { chars: null, bban_regexp: null, IBANRegistry: false },
XK: { chars: 20, bban_regexp: "^[0-9]{16}$", IBANRegistry: true },
YE: { chars: null, bban_regexp: null, IBANRegistry: false },
YT: {
chars: 27,
bban_regexp: "^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$",
IBANRegistry: true
},
ZA: { chars: null, bban_regexp: null, IBANRegistry: false },
ZM: { chars: null, bban_regexp: null, IBANRegistry: false },
ZW: { chars: null, bban_regexp: null, IBANRegistry: false }
};
{
"name": "ibantools",
"version": "2.2.0",
"version": "3.0.0",
"description": "Validation, extraction and creation of IBAN, BBAN, BIC/SWIFT numbers plus some other helpful stuff like ISO 3136-1 alpha 2 country list",

@@ -50,5 +50,5 @@ "keywords": [

"devDependencies": {
"@types/chai": "^4.1.2",
"@types/mocha": "^5.2",
"chai": "^4.1.2",
"@types/chai": "^4.1",
"@types/mocha": "^7.0",
"chai": "^4.1",
"cheerio": "^0.22",

@@ -58,26 +58,21 @@ "coveralls": "^3.0.3",

"gulp": "^4.0.1",
"gulp-mocha": "^6.0",
"gulp-rename": "^1.2",
"gulp-shell": "^0.7.0",
"gulp-mocha": "^7.0",
"gulp-rename": "^2.0",
"gulp-shell": "^0.8.0",
"gulp-typescript": "^5.0",
"istanbul": "^0.4",
"jasmine-core": "^3.1",
"jsdoc": "^3.6.0",
"karma": "^4.1.0",
"karma-chrome-launcher": "^2.2",
"karma-jasmine": "^2.0",
"jsdoc": "^3.6.3",
"karma": "^4.4.1",
"karma-chrome-launcher": "^3.1",
"karma-jasmine": "^3.1",
"karma-requirejs": "^1.1",
"merge2": "^1.2.1",
"mocha": "^6.1",
"mocha": "^7.0",
"mocha-lcov-reporter": "^1.2.0",
"prettier": "^2.0.2",
"requirejs": "^2.3",
"tslint": "^5.9.1",
"typescript": "^3.4",
"extend": ">=3.0.2",
"sshpk": ">=1.13.2"
},
"//": {
"extend": "deep dependency of karma - security issue",
"sshpk": "deep dependency of coverals - security issue"
"tslint": "^6.1",
"typescript": "^3.8"
}
}

@@ -13,3 +13,2 @@ # IBANTools

[![Dependency Status](https://david-dm.org/simplify/ibantools.svg)](https://david-dm.org/simplify/ibantools)
[![Dependency Status](https://dependencyci.com/github/Simplify/ibantools/badge)](https://dependencyci.com/github/Simplify/ibantools)

@@ -16,0 +15,0 @@ IBANTools is TypeScript/JavaScript library for validation, creation and extraction of IBAN, BBAN and BIC/SWIFT numbers.

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc