IBAN checker and validator: structure, length and checksum
Enter an IBAN and see at once whether length, characters and checksum are right. The check runs in your browser and your input is not sent anywhere. The result says nothing about whether the account exists.
Validate an IBAN
Spaces and lower-case letters are fine. The check runs only in your browser; your input is not sent anywhere.
The result appears as soon as you enter an IBAN.
What the check establishes
The validator runs its checks in this order. First spaces are removed and lower-case letters are converted to capitals. Then it checks that only letters and digits occur and that the country code is known. Next it compares the length with the length defined for the country. Finally it calculates the checksum with the modulo 97 method: country code and check digits are moved to the end, letters are converted to numbers (A = 10 to Z = 35), and the resulting number must leave the remainder 1 when divided by 97.
What the check does not establish
A passed checksum only means that the IBAN is internally consistent. It does not say that a bank has issued it, that the account is open or that it belongs to the expected recipient.
Structure of a German IBAN
The 22 characters of a German IBAN, using the sample IBAN that appears in many bank and payment documentations. It passes format and checksum, but it is a documentation example and not meant for payments.
DE89 3704 0044 0532 0130 00
- Country code DE
- DE for Germany (ISO 3166)
- Check digits 89
- two digits, calculated with modulo 97
- Bank code (Bankleitzahl) 37040044
- 8 digits; in a real IBAN the code of the bank
- Account number 0532013000
- 10 digits, padded with zeros if the account number is shorter
Common error messages
- Wrong length: a character is missing or doubled. A German IBAN always has 22 characters.
- Invalid characters: usually the letter O instead of the digit 0, or a special character picked up when copying from a PDF.
- Checksum does not match: often two swapped digits or one digit copied wrongly.
- Unknown country: the country code is not in the list below.
IBAN length by country
| Country | Country code | Characters |
|---|---|---|
| Austria | AT | 20 |
| Belgium | BE | 16 |
| Switzerland | CH | 21 |
| Czechia | CZ | 24 |
| Germany | DE | 22 |
| Denmark | DK | 18 |
| Spain | ES | 24 |
| Finland | FI | 18 |
| France | FR | 27 |
| United Kingdom | GB | 22 |
| Ireland | IE | 22 |
| Italy | IT | 27 |
| Liechtenstein | LI | 21 |
| Luxembourg | LU | 20 |
| Netherlands | NL | 18 |
| Norway | NO | 15 |
| Poland | PL | 28 |
| Portugal | PT | 25 |
| Sweden | SE | 24 |
| Türkiye | TR | 26 |
Testing without a real IBAN
Forms and software need IBANs that are guaranteed not to belong to any account. The test IBAN generator creates such values with a valid checksum. Wondering whether you also need a BIC? See SWIFT code vs BIC.
Frequently asked questions
Can I check here whether an IBAN exists?
Is it safe to enter my IBAN here?
Do I have to remove spaces?
My bank rejects the IBAN but the validator says “fine”. Why?
Which countries does the validator support?
Related tools
- Test IBAN Generator: Fake IBANs with a Valid ChecksumTest IBANs with a valid checksum and a placeholder bank code instead of a real bank. For forms, demos and software tests.Banking & Steuern · Generator
- German VAT Number (USt-IdNr.) Example and Check Digit ValidatorStructure of the German VAT ID, the check digit worked out step by step, and examples with a deliberately wrong check digit.Banking & Steuern · Validator
Sources and status
Content last reviewed: October 2026. Not legal or tax advice; the statements of the competent authorities prevail.