What the IBAN checker verifies
An IBAN can be checked in four ways without contacting a bank. The checker runs all of them and shows which one fails:
- Country code. The first two letters must be a country in the IBAN registry. The checker knows 90 countries and territories, from Albania to Yemen.
- Length. Every country has one fixed length: 22 characters for Germany and the UK, 27 for France and Italy, 24 for Pakistan and Saudi Arabia, 15 for Norway. One missing or extra character makes the IBAN invalid.
- BBAN structure. The domestic part must match the country’s pattern of digits and letters. A UK IBAN, for example, needs four letters followed by fourteen digits.
- Check digits. The two digits after the country code must match the mod-97 checksum of the whole IBAN. This catches almost every typing mistake.
For 21 countries the checker also tests the national check digits inside the account number (for example the French RIB key, the Spanish control digits or the Italian CIN). This result is shown separately, because a few banks use exceptions to the national rules.
How the mod-97 check works
The IBAN check digits are calculated with ISO 7064 MOD 97-10. Here it is step by step for the example IBAN DE89 3704 0044 0532 0130 00:
- Remove spaces and move the first four characters to the end:
370400440532013000DE89 - Replace every letter with two digits, where A = 10, B = 11 … Z = 35. D becomes 13 and E becomes 14:
370400440532013000131489 - Treat the result as one large number and divide it by 97. The remainder is 1.
- A valid IBAN always leaves a remainder of 1. Any other remainder means at least one character is wrong.
To create check digits, the same steps are run with 00 in place of the check digits, and the remainder is subtracted from 98. Because the number has up to 70 digits, programs process it in chunks (keep the running remainder and append the next digits) instead of using a big integer. The IBAN generator uses this method.
Why an IBAN is invalid
- A typo in a digit — the most common cause. The check digits no longer match and the remainder is not 1. The checker shows which check digits the rest of the IBAN would need, but the mistake may be anywhere.
- Wrong length — usually a missing digit or a domestic account number pasted without the bank code.
- Letter O instead of zero, or letter I instead of 1. IBANs are case-insensitive but O and 0 are different characters.
- Wrong country code — for example GB used for an Irish account (IE).
Spaces, dashes and lower-case letters don’t matter: the checker removes them before validating, and banks do the same. The printed format groups the IBAN in blocks of four; the electronic format has no spaces.
What a valid result does not tell you
A passing IBAN is well-formed. It does not prove that the account exists, that it is open, or that it belongs to the person you expect. Only the bank holding the account knows that. In the EU, banks now compare the payee name with the account holder before a transfer (“verification of payee”) to stop misdirected payments and fraud. If you are about to send money, rely on that check and on information from the payee — not on an online validator.
IBAN, BBAN, BIC: what’s the difference?
| Term | Example | Identifies |
|---|---|---|
| IBAN | DE89 3704 0044 0532 0130 00 | An account, internationally |
| BBAN | 370400440532013000 | The same account in the domestic format |
| Bank code | 37040044 | The bank (and sometimes the branch) inside the BBAN |
| BIC / SWIFT code | COBADEFFXXX | A bank, for international routing (8 or 11 characters) |
Frequently asked questions
Does a valid IBAN mean the account exists?
No. The checker confirms that the IBAN is well-formed and that its check digits match. Only the bank can confirm that the account exists, is open and belongs to the person you expect. In the EU, banks now run a “verification of payee” name check before a transfer for that reason.
What does the mod-97 check catch?
All single-character mistakes and almost every swap of two characters, plus most other typing errors. The chance that a random typo still passes is about 1 in 97.
Is the IBAN the same as the account number?
No. The IBAN contains the domestic account number (the BBAN) plus a country code and two check digits. In many countries the BBAN also contains the bank and branch code.
What is the difference between IBAN and BIC (SWIFT code)?
The IBAN identifies an account. The BIC (8 or 11 characters, e.g. DEUTDEFF) identifies a bank. SEPA transfers only need the IBAN; some international transfers need both.
Is it safe to paste my IBAN here?
The check runs in your browser and nothing is sent or stored. An IBAN on its own is not secret — it is printed on invoices — but you should still only share it with people you want to pay you.