How IBAN validation works

Blog · 2026-10-02 · 1 min read

Free tool: Check an IBAN now – runs in your browser, files are not uploaded.

An IBAN (International Bank Account Number) is a country code, two check digits and a national account number (the BBAN). For example the German IBAN DE89 3704 0044 0532 0130 00 is DE + check digits 89 + BBAN 370400440532013000.

The three checks

  1. Country and length – every country has a fixed length (Germany 22, France 27, UAE 23, Saudi Arabia 24). The lengths come from the SWIFT IBAN Registry. See the IBAN format for each country.
  2. Structure – which positions are digits or letters, and where the bank code sits.
  3. Check digits (mod 97) – catches almost all single typing errors and swapped digits.

The mod-97 check, step by step

  1. Remove spaces: DE89370400440532013000
  2. Move the first four characters to the end: 370400440532013000DE89
  3. Replace letters with numbers (A = 10, B = 11 … Z = 35), so D = 13 and E = 14: 370400440532013000131489
  4. Divide by 97. If the remainder is 1, the check digits are valid. Here 370400440532013000131489 mod 97 = 1 ✓

Computing the check digits for a new IBAN works the same way with 00 in place of the check digits: the remainder is 9, and 98 − 9 = 89.

The number is too big for a normal spreadsheet cell, so calculators process it in chunks of 9 digits, carrying the remainder forward.

What validation cannot tell you

So a valid IBAN means "no typing mistake", not "safe to pay". Fraudsters use valid IBANs too.

Free tool: Check an IBAN now – runs in your browser, files are not uploaded.

Sources

Related guides

Published 2026-10-02 by Karuna Labs. Our tools check file structure and checksums; always review outputs (and payment files in your bank's preview) before relying on them. This is general information, not financial, tax or legal advice.