97
countries covered20K
bank codes, in 20 of the 97 countries2.1K
page and data requestssince 2026-08-2717
countries whose national check digit we verify0
account details leave your browser
Four things that make the answer trustworthy.
Both tools run on your device
The account details you type are read, checked and discarded in the tab.
All 97, not a subset
Every country that issues an IBAN, each with its own length and structure rules.
Two checksums, not one
The ISO 7064 check digits, plus the national check digit where a country defines one.
You can check our work
The validation code is open source and the network tab is the proof.
Do not take our word for it.
Open your developer tools, select the Network tab, and type an IBAN into the checker. Every request the page makes is listed there, and none of them carries your account details.
Also from ZENOM
Would your buyer find all the answers about your business?
See what ZENOM is doing about it.
About ZENOMOr bring a specific problem of your own.
Contact ZENOMWhat happens when you validate an IBAN
An IBAN (International Bank Account Number, ISO 13616) packs a country code, two check digits and a country-specific domestic account number into a single string of up to 34 characters. This checker first confirms the country code is a real IBAN country and the length matches that country's registered format. It then recomputes the mod-97 check digits, which catch virtually all single typos and most transposed characters. Finally, for countries whose domestic format carries its own internal check digit - such as France, Spain, Belgium, Poland, Norway, Portugal or Hungary - it verifies that national checksum too, a layer many online checkers skip.
Each result explains itself: if the IBAN fails, you see which layer failed and where to look for the typo, with the number broken into colour-coded segments (country, check digits, bank code, branch, account). If it passes, you still get the honest caveat: a formally valid IBAN is not proof that the account exists or belongs to the person you intend to pay. That confirmation is what your bank's Verification of Payee service is for.
Built for privacy by design
An IBAN identifies a bank account, so it deserves the same care as any personal data. This site takes the simplest possible approach: the validation logic (the open-source ibantools library and the country specifications it ships) is bundled into the page itself. There is no backend and no analytics script, and no request ever carries your account details. The one request the tools make fetches a static bank-name list for the country you are checking; all it reveals is that country's two-letter code. The guides explain how the algorithms work if you want to audit the maths.
Frequently asked questions
Is it safe to type my IBAN here?
Yes. Validation runs entirely in your browser using open-source code; the IBAN is never transmitted, logged or stored. Verify it yourself: watch the DevTools Network tab while you type. So you are not surprised by what appears there: for some countries the checker fetches a static bank-name list, at most once per country, and for most countries it fetches nothing at all. Any request you do see carries a two-letter country code and nothing else of what you typed.
What does this checker actually verify?
Three layers: the country-specific length and character format, the international mod-97 check digits (positions 3-4), and, for countries that have one, the domestic bank check digit inside the account number (France, Spain, Poland, Hungary and others).
If my IBAN is valid, does the account exist?
No. A valid IBAN only means the number is structurally correct. It says nothing about whether the account is open or who owns it. Before sending money, rely on your bank’s Verification of Payee check, which EU banks must offer for euro transfers.
Can I check many IBANs at once?
Yes, use the Batch check tab: paste one IBAN per line and the whole list is validated locally in your browser. There is no upload and no server involved.