IBAN Validator

MOD-97 checksum validation, country identification, and bank/account decomposition.

Example: The IBAN "GB29 NWBK 6016 1331 9268 19" passes the MOD-97 checksum, identifies as a UK account, and decomposes into sort code 601613 and account number 31926819 — while changing a single digit anywhere in the number fails the checksum 100% of the time.

Validates using the ISO 13616 IBAN standard and MOD-97 checksum algorithm defined in ISO 7064.

How IBAN validation works

Every IBAN is self-checking by design. The validator rearranges the country code and check digits to the end of the string, converts any letters to numbers (A=10 through Z=35), and confirms the resulting large number leaves a remainder of exactly 1 when divided by 97 — the MOD-97 checksum defined in ISO 7064. This single check catches the overwhelming majority of typos, transpositions, and copy-paste errors without needing to contact any bank.

A valid checksum confirms the IBAN is correctly formatted and internally consistent — it does not confirm the account is open, active, or belongs to a particular person. That distinction matters for payment processing: a passed checksum means it's safe to attempt a transfer, not that the transfer is guaranteed to succeed.

Frequently asked questions

What is the MOD-97 checksum?
The ISO 7064 checksum algorithm every IBAN uses: rearrange the country code and check digits to the end, convert letters to numbers (A=10 ... Z=35), and the resulting number must leave a remainder of exactly 1 when divided by 97. It catches almost every single-character typo or transposition.
Why are bank code and account number sometimes null?
Their position within the IBAN varies by country and isn't standardised the way the checksum is. Decomposition is only implemented for a documented subset of countries — the full BBAN (Basic Bank Account Number) is always returned either way, so no information is lost.
Does a valid checksum guarantee the account exists?
No — it confirms the IBAN is well-formed and internally consistent, not that it corresponds to a real, open bank account. Only the issuing bank can confirm that.
What is an IBAN?
An International Bank Account Number (IBAN) is a standardised account identifier used to make cross-border payments unambiguous — it combines a country code, check digits, and a country-specific Basic Bank Account Number (BBAN) into a single string that uniquely identifies an account internationally.
Which countries use IBAN?
IBAN is mandatory for payments within the EU/EEA (SEPA) and is used by most European countries plus many others worldwide — but notably not the US, Canada, Australia, or China, which use different domestic account numbering systems for their banking infrastructure.
What is a SWIFT/BIC code and how does it relate to IBAN?
A SWIFT/BIC code identifies a specific bank (and often branch), while an IBAN identifies a specific account at that bank. International wire transfers typically require both: the SWIFT/BIC to route the payment to the correct bank, and the IBAN to credit the correct account once it arrives.
What is the difference between IBAN and account number?
A domestic account number on its own is often ambiguous outside its home country — the same digits could theoretically exist at different banks in different countries. The IBAN wraps that account number (as part of the BBAN) together with a country code and checksum, making it globally unambiguous and self-validating.

Related calculators