Build a country checklist
See whether the receiver corridor typically needs IBAN, BIC or a domestic routing code.
A StrongMocha Publication · N°962 · SM/BSC
Check the registered country length and the full MOD-97 checksum. All 89 national formats from SWIFT Registry Release 102 are covered locally.
Registry release 102 · June 2026
Published test vectors: · ·
| Country | DE | Selects Germany’s fixed 22-character format | |
| Check | 89 | International MOD-97 check digits | |
| Bankleitzahl | 37040044 | German bank routing code | |
| Account | 0532013000 | German account component |
Valid format is not account confirmation. The algorithm rearranges the IBAN, converts letters to A=10 through Z=35 and computes the remainder digit by digit. Remainder 1 passes; ownership and account status remain unverified.
| Country or territory | Code | Length |
|---|---|---|
| Albania | AL | 28 |
| Andorra | AD | 24 |
| Austria | AT | 20 |
| Azerbaijan | AZ | 28 |
| Bahrain | BH | 22 |
| Belarus | BY | 28 |
| Belgium | BE | 16 |
| Bosnia & Herzegovina | BA | 20 |
| Brazil | BR | 29 |
| British Virgin Islands | VG | 24 |
| Bulgaria | BG | 22 |
| Burundi | BI | 16 |
| Costa Rica | CR | 22 |
| Croatia | HR | 21 |
| Cyprus | CY | 28 |
| Czechia | CZ | 24 |
| Denmark | DK | 18 |
| Djibouti | DJ | 27 |
| Dominican Republic | DO | 28 |
| Egypt | EG | 29 |
| El Salvador | SV | 28 |
| Estonia | EE | 20 |
| Falkland Islands | FK | 18 |
| Faroe Islands | FO | 18 |
| Finland | FI | 18 |
| France | FR | 27 |
| Georgia | GE | 22 |
| Germany | DE | 22 |
| Gibraltar | GI | 23 |
| Greece | GR | 27 |
| Greenland | GL | 18 |
| Guatemala | GT | 28 |
| Honduras | HN | 28 |
| Hungary | HU | 28 |
| Iceland | IS | 26 |
| Iraq | IQ | 23 |
| Ireland | IE | 22 |
| Israel | IL | 23 |
| Italy | IT | 27 |
| Jordan | JO | 30 |
| Kazakhstan | KZ | 20 |
| Kosovo | XK | 20 |
| Kuwait | KW | 30 |
| Latvia | LV | 21 |
| Lebanon | LB | 28 |
| Libya | LY | 25 |
| Liechtenstein | LI | 21 |
| Lithuania | LT | 20 |
| Luxembourg | LU | 20 |
| Malta | MT | 31 |
| Mauritania | MR | 27 |
| Mauritius | MU | 30 |
| Moldova | MD | 24 |
| Monaco | MC | 27 |
| Mongolia | MN | 20 |
| Montenegro | ME | 22 |
| Netherlands | NL | 18 |
| Nicaragua | NI | 28 |
| North Macedonia | MK | 19 |
| Norway | NO | 15 |
| Oman | OM | 23 |
| Pakistan | PK | 24 |
| Palestinian Territories | PS | 29 |
| Poland | PL | 28 |
| Portugal | PT | 25 |
| Qatar | QA | 29 |
| Romania | RO | 24 |
| Russia | RU | 33 |
| San Marino | SM | 27 |
| Saudi Arabia | SA | 24 |
| Serbia | RS | 22 |
| Seychelles | SC | 31 |
| Slovakia | SK | 24 |
| Slovenia | SI | 19 |
| Somalia | SO | 23 |
| Spain | ES | 24 |
| St. Lucia | LC | 32 |
| Sudan | SD | 18 |
| Sweden | SE | 24 |
| Switzerland | CH | 21 |
| São Tomé & Príncipe | ST | 25 |
| Timor-Leste | TL | 23 |
| Tunisia | TN | 24 |
| Türkiye | TR | 26 |
| Ukraine | UA | 29 |
| United Arab Emirates | AE | 23 |
| United Kingdom | GB | 22 |
| Vatican City | VA | 22 |
| Yemen | YE | 30 |
A passed MOD-97 checksum shows mathematical consistency with the standard. It does not prove that the account exists, is open, belongs to the intended payee or can receive a particular payment.
Spaces are used in printed IBANs for readability. The electronic value is continuous; this validator removes whitespace before applying country length and checksum rules.
The BBAN is country-specific. National banking systems define different bank, branch, account and domestic check components, so every registered country has its own fixed total length.