IBAN checker
Paste an IBAN (spaces allowed) and this page checks it the way a bank’s payment system does: the characters, the country, the length the ISO 13616 registry sets for that country, the two check digits (ISO 7064 mod 97-10), and the national BBAN structure. It then shows the bank identifier and, where the registry defines one, the branch identifier, and whether the country is in the SEPA schemes, explains what the result means and links to the country’s IBAN format page; a result can be shared by link (?iban=). 88 countries from the SWIFT IBAN Registry, 41 of them in SEPA. Auf Deutsch: IBAN prüfen.
Check an IBAN
- Five checks, each reported separately: characters, country, length, check digits, BBAN pattern. A failed check names the rule, so a typo is told apart from an unknown country.
- A passed check means the IBAN is well formed and the check digits agree with it; it does not prove that the account exists or belongs to the person who gave it to you. Nothing public can prove that: that is the bank’s job at payment time.
- The bank identifier is read from the position the registry defines for the country (the first four digits in France, the first eight in Germany). The bank’s name and BIC are not returned: the BIC directory is licensed data.
- The IBAN you paste is validated and not stored: the check is deterministic and needs no database.
How the check digits work
Move the country code and the two check digits to the end, replace every letter by two digits (A = 10 … Z = 35), and take the remainder of the whole number modulo 97: a valid IBAN leaves 1. One mistyped character changes the remainder, which is why a wrong IBAN is almost always caught by this single rule; two swapped digits are caught too, except in rare positions, which is why the length and the national pattern are checked as well.
What each result means
| Result | What it means | What to do |
|---|---|---|
| Well-formed IBAN | Right length for the country, check digits that agree with the rest, national structure respected. It does not prove that the account exists or belongs to your payee. | Pay; the bank verifies existence at payment time (and the payee’s name, in SEPA, since October 2025). |
| Check digits fail | One or more characters are wrong; the mod-97 rule catches almost every single typo. | Ask for the IBAN as printed on a bank document and compare character by character. |
| Wrong length / national structure | The number of characters, or the pattern of the national part, is not what the registry sets for that country. | Open the country’s format page from the result and check the groups. |
| Unknown country | The first two letters are not a country of the IBAN registry. | A domestic account number (US routing + account, UK sort code + account) is not an IBAN: ask for the IBAN, or use the bank’s own format. |
SEPA or not
The SEPA flag follows the European Payments Council’s list of SEPA scheme countries (the 2025 additions, effective 5 October 2025, included). A SEPA IBAN can receive a euro credit transfer at domestic cost; a non-SEPA IBAN means a correspondent-bank transfer with fees and delays, which a payout system should warn about before paying.
For developers: the same answer in your code
This page calls GET https://veriport.io/api/v1/iban/validate from your browser with no key. The response is the one shown on the product page, field by field, with an offline helper in the SDK for the mod-97 part when you do not want a network call.
Questions
- Can this tell me who owns the account?
- No, and no public tool can. The IBAN encodes the country, the bank and the account number; the holder is known to the bank only. Payee verification (checking the name against the account) is a bank-to-bank service launched for SEPA in October 2025, not a public lookup.
- Why is a valid IBAN rejected by my bank?
- A well-formed IBAN may belong to a closed account, a bank that has merged, or an account that cannot receive the kind of payment you send (a savings account refusing direct debits, for instance). This check answers only the questions that can be answered offline.
- Which countries are covered?
- 88 countries and territories listed in the SWIFT IBAN Registry; each has its own page with the length and the BBAN structure. A country outside the registry answers
country_unknown. - How many checks are free?
- 20 a day per address without a key, 100 a month with a free key, then prepaid packs; the mod-97 check in the open-source SDK is free without limit because it runs on your machine.
Validate IBANs before every payout from your own code: 100 calls a month, no card.
Get a free API keySources
- IBAN Registry (ISO 13616) — country lengths, BBAN structures, SEPA membership — SWIFT, ISO 13616 registration authority, consulted 2026-10-24. Transcribed from the public registry; the release number in force on the day checkout opens must be written on the IBAN docs page (owner step).
- ISO 13616-1:2020 — Financial services — International bank account number (IBAN): structure and mod 97-10 check (ISO/IEC 7064) — ISO, consulted 2026-10-24
- EPC list of SEPA scheme countries (geographical scope of the SEPA schemes) — European Payments Council, consulted 2026-10-24. The 2025 additions (Albania, Moldova, Montenegro, North Macedonia, effective 5 October 2025) are flagged `sepaSince` on the row.