Beyond the IBAN structure

Bank account checksum validation

We validate the IBAN structure for every country in the directory. For 30 of them, we go a step further: the account number encoded inside the IBAN carries its own check digit, and we verify it too.

30 countries covered
How it works

One request, four layers of validation

Every call to the validate endpoint runs a stack of checks. Account checksum validation is the most granular of them, and it's applied automatically whenever the destination country supports it, no extra parameter required.

1. Length
Is the IBAN the right length for its country?
2. Checksum
Do the IBAN's own check digits pass mod-97?
3. Structure
Does it match the country's published BBAN pattern?
4. Account
Does the embedded account number pass its own checksum?
Coverage

Countries with account-level checksum support

Open a country to see its full IBAN format and browse its banks.

Country IBAN length Account length Currency
BE BelgiumView country details IBAN length16 characters Account length7 characters CurrencyEUR BA Bosnia and HerzegovinaView country details IBAN length20 characters Account length8 characters CurrencyBAM CF Central African RepublicView country details IBAN length27 characters Account length11 characters CurrencyXAF TD ChadView country details IBAN length27 characters Account length11 characters CurrencyXAF KM ComorosView country details IBAN length27 characters Account length11 characters CurrencyKMF CZ Czech RepublicView country details IBAN length24 characters Account length16 characters CurrencyCZK DJ DjiboutiView country details IBAN length27 characters Account length11 characters CurrencyDJF TL East TimorView country details IBAN length23 characters Account length14 characters CurrencyUSD GQ Equatorial GuineaView country details IBAN length27 characters Account length11 characters CurrencyXAF EE EstoniaView country details IBAN length20 characters Account length11 characters CurrencyEUR FR FranceView country details IBAN length27 characters Account length11 characters CurrencyEUR FP French PolynesiaView country details IBAN length27 characters Account length11 characters CurrencyXPF GA GabonView country details IBAN length27 characters Account length11 characters CurrencyXAF DE GermanyView country details IBAN length22 characters Account length10 characters CurrencyEUR HU HungaryView country details IBAN length28 characters Account length15 characters CurrencyHUF IS IcelandView country details IBAN length26 characters Account length16 characters CurrencyISK IT ItalyView country details IBAN length27 characters Account length12 characters CurrencyEUR MK MacedoniaView country details IBAN length19 characters Account length10 characters CurrencyMKD MC MonacoView country details IBAN length27 characters Account length11 characters CurrencyEUR ME MontenegroView country details IBAN length22 characters Account length13 characters CurrencyEUR NO NorwayView country details IBAN length15 characters Account length6 characters CurrencyNOK PT PortugalView country details IBAN length25 characters Account length11 characters CurrencyEUR CG Republic of the CongoView country details IBAN length27 characters Account length11 characters CurrencyXAF SM San MarinoView country details IBAN length27 characters Account length12 characters CurrencyEUR RS SerbiaView country details IBAN length22 characters Account length13 characters CurrencyRSD SK SlovakiaView country details IBAN length24 characters Account length10 characters CurrencyEUR SI SloveniaView country details IBAN length19 characters Account length8 characters CurrencyEUR ES SpainView country details IBAN length24 characters Account length10 characters CurrencyEUR CH SwitzerlandView country details IBAN length21 characters Account length12 characters CurrencyCHF GB United Kingdom of Great Britain and Northern IrelandView country details IBAN length22 characters Account length8 characters CurrencyGBP
FAQ

Common questions about account validation

What is bank account checksum validation?

Some countries embed a check digit or checksum inside the account number portion of the IBAN. Validating it confirms the account number itself is well-formed, not just the IBAN as a whole.

Do I need to call a separate endpoint for this?

No. When the IBAN belongs to a supported country, the account checksum result is included automatically in the validate endpoint response, alongside the length, checksum and structure checks.

What happens for countries not on this list?

The IBAN is still validated in full, structure, length and checksum, we just don't perform an additional account-number-level check, since that country doesn't publish a verifiable account checksum rule.

Does a valid checksum guarantee the account exists?

No. A checksum pass means the account number is mathematically well-formed. It doesn't confirm the account is open, active or held by a specific person, only the bank can confirm that.