IBAN by Country – Format, Length and Example

Official reference directory of all 97 IBAN countries per the SWIFT IBAN Registry: total character lengths, country codes, SEPA flags, and format specifications.

SEPA Countries and IBAN Formats

The Single Euro Payments Area (SEPA) covers all 27 European Union member states along with the UK, Switzerland, Norway, Iceland, Liechtenstein, Monaco, San Marino, Andorra, and Vatican City. Each country defines a fixed total length and internal BBAN structure:

Country NameCodeTotal LengthSEPABBAN Regex Structure
AndorraAD24 charsSEPA^[0-9]{8}[A-Z0-9]{12}$
AustriaAT20 charsSEPA^[0-9]{16}$
BelgiumBE16 charsSEPA^[0-9]{12}$
BulgariaBG22 charsSEPA^[A-Z]{4}[0-9]{6}[A-Z0-9]{8}$
CroatiaHR21 charsSEPA^[0-9]{17}$
CyprusCY28 charsSEPA^[0-9]{8}[A-Z0-9]{16}$
Czech RepublicCZ24 charsSEPA^[0-9]{20}$
DenmarkDK18 charsSEPA^[0-9]{14}$
EstoniaEE20 charsSEPA^[0-9]{16}$
FinlandFI18 charsSEPA^[0-9]{14}$
FranceFR27 charsSEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
GermanyDE22 charsSEPA^[0-9]{18}$
GibraltarGI23 charsSEPA^[A-Z]{4}[A-Z0-9]{15}$
GreeceGR27 charsSEPA^[0-9]{7}[A-Z0-9]{16}$
HungaryHU28 charsSEPA^[0-9]{24}$
IcelandIS26 charsSEPA^[0-9]{22}$
IrelandIE22 charsSEPA^[A-Z0-9]{4}[0-9]{14}$
ItalyIT27 charsSEPA^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$
LatviaLV21 charsSEPA^[A-Z]{4}[A-Z0-9]{13}$
LiechtensteinLI21 charsSEPA^[0-9]{5}[A-Z0-9]{12}$
LithuaniaLT20 charsSEPA^[0-9]{16}$
LuxembourgLU20 charsSEPA^[0-9]{3}[A-Z0-9]{13}$
MaltaMT31 charsSEPA^[A-Z]{4}[0-9]{5}[A-Z0-9]{18}$
MonacoMC27 charsSEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
NetherlandsNL18 charsSEPA^[A-Z]{4}[0-9]{10}$
NorwayNO15 charsSEPA^[0-9]{11}$
PolandPL28 charsSEPA^[0-9]{24}$
PortugalPT25 charsSEPA^[0-9]{21}$
RomaniaRO24 charsSEPA^[A-Z]{4}[A-Z0-9]{16}$
San MarinoSM27 charsSEPA^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$
SlovakiaSK24 charsSEPA^[0-9]{20}$
SloveniaSI19 charsSEPA^[0-9]{15}$
SpainES24 charsSEPA^[0-9]{20}$
SwedenSE24 charsSEPA^[0-9]{20}$
SwitzerlandCH21 charsSEPA^[0-9]{5}[A-Z0-9]{12}$
United KingdomGB22 charsSEPA^[A-Z]{4}[0-9]{14}$
Vatican CityVA22 charsSEPA^[0-9]{18}

Complete International SWIFT IBAN Registry

Beyond Europe, dozens of jurisdictions across the Middle East, North Africa, Central Asia, and the Americas have adopted the IBAN format to streamline automated payment routing. If you have an account number to convert or test, calculate your format on our IBAN calculator, check validity on our IBAN checker, or generate mock accounts with our IBAN generator.

Country NameCodeTotal LengthSEPABBAN Regex Structure
AlbaniaAL28 charsNon-SEPA^[0-9]{8}[A-Z0-9]{16}$
AXAX18 charsNon-SEPA^[0-9]{14}$
AzerbaijanAZ28 charsNon-SEPA^[A-Z]{4}[A-Z0-9]{20}$
BahrainBH22 charsNon-SEPA^[A-Z]{4}[A-Z0-9]{14}$
BelarusBY28 charsNon-SEPA^[A-Z]{4}[0-9]{4}[A-Z0-9]{16}$
Bosnia and HerzegovinaBA20 charsNon-SEPA^[0-9]{16}$
BrazilBR29 charsNon-SEPA^[0-9]{23}[A-Z]{1}[A-Z0-9]{1}$
Costa RicaCR22 charsNon-SEPA^[0-9]{18}$
Dominican RepublicDO28 charsNon-SEPA^[A-Z]{4}[0-9]{20}$
EGEG29 charsNon-SEPA^[0-9]{25}
Faroe IslandsFO18 charsNon-SEPA^[0-9]{14}$
GeorgiaGE22 charsNon-SEPA^[A-Z0-9]{2}[0-9]{16}$
GFGF27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
GPGP27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
GreenlandGL18 charsNon-SEPA^[0-9]{14}$
GuatemalaGT28 charsNon-SEPA^[A-Z0-9]{24}$
IQIQ23 charsNon-SEPA^[A-Z]{4}[0-9]{15}$
IsraelIL23 charsNon-SEPA^[0-9]{19}$
JordanJO30 charsNon-SEPA^[A-Z]{4}[0-9]{4}[A-Z0-9]{18}$
KazakhstanKZ20 charsNon-SEPA^[0-9]{3}[A-Z0-9]{13}$
KosovoXK20 charsNon-SEPA^[0-9]{16}$
KuwaitKW30 charsNon-SEPA^[A-Z]{4}[A-Z0-9]{22}$
LCLC32 charsNon-SEPA^[A-Z]{4}[A-Z0-9]{24}$
LebanonLB28 charsNon-SEPA^[0-9]{4}[A-Z0-9]{20}$
LYLY25 charsNon-SEPA^[0-9]{21}$
MauritiusMU30 charsNon-SEPA^[A-Z]{4}[0-9]{19}[A-Z]{3}$
MFMF27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
MNMN20 charsNon-SEPA^[0-9]{16}$
MoldovaMD24 charsNon-SEPA^[A-Z0-9]{2}[A-Z0-9]{18}$
MontenegroME22 charsNon-SEPA^[0-9]{18}$
MQMQ27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
MRMR27 charsNon-SEPA^[0-9]{23}$
NCNC27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
NINI28 charsNon-SEPA^[A-Z]{4}[0-9]{20}$
North MacedoniaMK19 charsNon-SEPA^[0-9]{3}[A-Z0-9]{10}[0-9]{2}$
OMOM23 charsNon-SEPA^[0-9]{3}[A-Z0-9]{16}$
PakistanPK24 charsNon-SEPA^[A-Z0-9]{4}[0-9]{16}$
PFPF27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
PMPM27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
PSPS29 charsNon-SEPA^[A-Z0-9]{4}[0-9]{21}$
QatarQA29 charsNon-SEPA^[A-Z]{4}[A-Z0-9]{21}$
RERE27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
RURU33 charsNon-SEPA^[0-9]{14}[A-Z0-9]{15}$
Saudi ArabiaSA24 charsNon-SEPA^[0-9]{2}[A-Z0-9]{18}$
SCSC31 charsNon-SEPA^[A-Z]{4}[0-9]{20}[A-Z]{3}$
SDSD18 charsNon-SEPA^[0-9]{14}$
SerbiaRS22 charsNon-SEPA^[0-9]{18}$
SOSO23 charsNon-SEPA^[0-9]{19}$
STST25 charsNon-SEPA^[0-9]{21}$
SVSV28 charsNon-SEPA^[A-Z]{4}[0-9]{20}$
TFTF27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
TLTL23 charsNon-SEPA^[0-9]{19}$
TunisiaTN24 charsNon-SEPA^[0-9]{20}$
TurkeyTR26 charsNon-SEPA^[0-9]{5}[A-Z0-9]{17}$
UkraineUA29 charsNon-SEPA^[0-9]{6}[A-Z0-9]{19}$
United Arab EmiratesAE23 charsNon-SEPA^[0-9]{3}[0-9]{16}$
VGVG24 charsNon-SEPA^[A-Z0-9]{4}[0-9]{16}$
WFWF27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$
YEYE30 charsNon-SEPA[A-Z]{4}[0-9]{4}[0-9A-Z]{18}
YTYT27 charsNon-SEPA^[0-9]{10}[A-Z0-9]{11}[0-9]{2}$