— data —
How to check if an IBAN is valid
4 min read
You check an IBAN by going through three things: does the number have the right length for its country, does it contain only allowed characters, and does the built-in check-digit calculation (MOD-97) add up? If any of those fails, the number is invalid and a payment will bounce. That maths can run entirely in your browser — without sending the account number anywhere.
Someone hands you an account number: a new client, a supplier, a donor. Before you transfer money or queue up a direct debit, you want to know it's correct. Below is what makes an IBAN valid, how to check a single one, and how to check a whole list at once.
What makes an IBAN valid?
An IBAN (International Bank Account Number) has a fixed structure defined in the ISO 13616 standard:
- Country code — two letters, for example
NLfor the Netherlands orBEfor Belgium. - Two check digits — two digits mathematically tied to the rest of the number.
- BBAN — the domestic part: the bank code and the account number.
A Dutch IBAN is always 18 characters, for example NL91 ABNA 0417 1643 00. The length
differs per country: a Belgian IBAN is 16 characters, a German one 22.
The real check is the MOD-97 checksum (ISO 7064). The two check digits are used to test whether the rest of the number is internally consistent. For a valid IBAN that calculation always comes out to a remainder of 1. One wrong or swapped digit and the remainder no longer matches — which is how most typos get caught.
Checking a single IBAN
For one number you can eyeball the structure: is the country code right, is the length right, are there any stray characters? But you don't compute the checksum in your head. Paste the number into the IBAN bulk check tool — it works for a single IBAN too — and you'll see straight away whether it's valid, plus, for Dutch numbers, which bank it belongs to.
Checking a whole list
If you have not one but hundreds or thousands of numbers — a list of debtors, a direct debit file, a membership roster — you don't want to go through them one by one. Paste the whole list or upload a CSV into IBAN bulk check and you get a result per line, with a reason for each invalid number. We wrote a separate guide about it: validate IBANs in bulk.
What an IBAN check does and does not tell you
Important to be clear about: a validity check is maths, not a bank check. It tells you the structure and the checksum are correct — that it's a well-formed number. What a check does not do is confirm that the account actually exists, is active, or belongs to a particular name. For that name-to-account check you need a paid service from a bank (such as an IBAN-name check). For spotting typos and invalid numbers, the validity check is exactly right.
Why you want to do this in your browser
An account number is sensitive data — especially a whole list of them. You don't want to paste those into some random online checker that logs them or sends them to a server. With IBAN bulk check all validation happens on your device. Paste your numbers, close the tab, and nothing stays behind. No upload, no account, no log.
Frequently asked questions
What does it mean if an IBAN is invalid? That the structure or the MOD-97 checksum doesn't add up. Almost always that's a typo: a swapped or missing digit, a wrong country code, or one space too many. Correct the number and check again.
Can I check whether an IBAN belongs to a particular name? Not with a validity check. Whether a name and account match can only be confirmed by a bank through a paid IBAN-name check. Locally you can validate the number itself.
Does the check work for foreign IBANs? Yes. All SEPA countries and other countries with official IBANs are checked on length, characters and checksum. The bank-name lookup is for Dutch numbers only.
How many IBANs can I check at once? There's no artificial limit. The table shows the first 200 for speed; the full list is always in the CSV download.
Is my IBAN stored anywhere? No. Everything runs in your browser, with no server call and no log. Close the tab and it's all gone.
Checking one number or a whole list? Check an IBAN. In your browser, and your data stays yours.