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

Spaces, dots and dashes are ignored. The IBAN is checked, not stored.

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

ResultWhat it meansWhat to do
Well-formed IBANRight 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 failOne 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 structureThe 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 countryThe 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 key

Sources