Free IBAN Validator & Formatter
Validate international bank account numbers using the official MOD-97 checksum. Supports 70+ countries including UK, UAE, Germany, France, Spain, Saudi Arabia.
Spaces, hyphens, and case are ignored. Validates automatically as you type.
Try an example
Supported countries (70)
Catch IBAN Errors Before You Wire
One typo can route an international payment to the wrong bank or have it rejected entirely. Validate before you send.
70+ Countries
Includes every country in the official IBAN registry โ UK, UAE, Saudi Arabia, all EU member states, plus Switzerland, Norway, Iceland, Brazil, and more. Country and expected length are detected automatically.
Real MOD-97 Checksum
Implements the official ISO 13616 validation: country code check, length check, and MOD-97 modulo-97 verification of the entire IBAN as a giant integer. The same algorithm used by SWIFT and SEPA.
Auto-formatting
Strips spaces, hyphens, and mixed case automatically. Valid IBANs are returned in the canonical 4-character grouping (e.g. GB29ย NWBKย 6016ย 1331ย 9268ย 19) โ copy-ready for forms and emails.
Detailed Breakdown
For valid IBANs, we show the country, check digits, BBAN (the national account portion), and full length โ so you can verify the components match your records.
Clear Error Reasons
When validation fails, we tell you why โ wrong length for the country, invalid country code, MOD-97 checksum mismatch, illegal characters. Fix the typo, don't guess at it.
100% Private
Everything runs in your browser. We don't send IBANs to a server, log them, or analyze them. Safe for use with real customer or supplier banking details.
Who Needs to Validate IBANs?
Anyone moving money internationally โ or receiving it.
Freelancers
Getting paid by a UK or EU client? Validate the IBAN they sent you, and validate yours before putting it on an invoice.
Exporters & Importers
Wire transfers with bad IBANs are rejected, returned, or worse โ paid to the wrong account. Validate every supplier IBAN before the first payment.
Developers
Adding IBAN fields to a checkout or onboarding form? Spot-check your client-side validation against this tool to confirm it's correct.
Accountants
Validate IBANs on supplier invoices, customer remittance advice, and bank reconciliations. Catch errors before they hit the payment run.
Frequently Asked Questions
What is an IBAN?
IBAN (International Bank Account Number) is an internationally standardised format for identifying a bank account across borders. It packages the country, bank, branch, and account number into a single string with built-in checksum digits โ so a typo can be detected before money is sent. Adopted in 1997 (ISO 13616), it's now used by 80+ countries.
What is the MOD-97 algorithm?
MOD-97 is how IBANs verify themselves. To check: move the first 4 characters to the end of the string, replace each letter with a number (A=10, B=11, โฆ, Z=35), and treat the result as a single large integer. Divide by 97. If the remainder is exactly 1, the IBAN is valid. This catches single-digit typos with very high probability and most transposition errors.
Does a valid IBAN mean the account exists?
No. Validating an IBAN confirms the format is correct and the checksum passes โ that's structural validity. It does not confirm the account actually exists or is open. For real-time existence verification you need a SWIFT IBAN+ lookup or a payment service like Wise / SWIFT GPI. For a manual sanity check, the IBAN+ registry (maintained by SWIFT) is the authoritative source.
What if my country doesn't use IBAN?
The US, Canada, Australia, New Zealand, Singapore, Hong Kong, and most of Asia don't use IBAN. They use national account number formats plus SWIFT/BIC codes for international payments. If you're paying into a US account, you need the routing number (ABA) and account number, not an IBAN.
Why does UK IBAN length differ from German IBAN length?
The IBAN length is determined by each country's domestic account format and is fixed by the central bank when they joined the IBAN scheme. UK IBANs are 22 characters, German 22, French 27, Norwegian 15, Maltese 31. The country code at the start always tells you the expected length โ which is why this validator can spot โUK IBAN is too shortโ even before doing the checksum math.
What is the BBAN portion?
The BBAN (Basic Bank Account Number) is the national-format account number โ everything in the IBAN after the country code and check digits. It contains the bank identifier (sort code in the UK, Bankleitzahl in Germany) and the actual account number. When working within a country, banks still use BBANs internally; the IBAN is the international wrapper.
Do I need a SWIFT/BIC code as well as an IBAN?
Usually yes โ for cross-border SWIFT payments, the receiving bank's BIC (Business Identifier Code, 8 or 11 characters) is also required. For intra-SEPA payments within the eurozone, the IBAN alone is sufficient. Always check with the receiving party which they need before initiating the transfer.
How accurate is this validator?
For structural validity, it's 100% accurate โ it implements the same algorithm SWIFT and SEPA use. It will catch every typo, transposition, missing digit, and made-up IBAN. The only thing it can't catch is an IBAN whose checksum happens to pass but whose underlying account doesn't exist โ for that, you need a real account-existence lookup.
A Practical Guide to IBAN
Before IBAN, sending money across borders was a minefield of country-specific account formats, ambiguous routing instructions, and frequent typos. A simple wrong digit could route a payment to the wrong bank entirely โ and reversing it was slow and expensive. IBAN was created to fix this: one format, with self-validating check digits, that any bank in any country could parse.
How IBAN Is Structured
An IBAN always begins with the same four components: two letters for the country code (ISO 3166-1), two digits for the IBAN-level check digits, then a variable-length BBAN (Basic Bank Account Number) that encodes bank, branch, and account in the country's national format. The total length is fixed per country โ UK 22, Germany 22, Saudi Arabia 24, Malta 31, and so on.
For example, the UK IBAN GB29 NWBK 6016 1331 9268 19 breaks down as: GB (United Kingdom), 29 (check digits), NWBK (NatWest Bank's identifier), 601613 (sort code), 31926819 (account number).
The MOD-97 Check
The check digits are calculated so the entire IBAN, when treated as a base-36 to base-10 conversion and divided by 97, leaves a remainder of exactly 1. The two-step process: (1) move the country code and check digits to the end of the IBAN, (2) replace each letter with its position-based number (A=10, B=11, โฆ, Z=35), (3) compute the result modulo 97. If the remainder is 1, the IBAN is valid.
This catches most common errors: single-digit typos, two-digit transpositions, and the vast majority of random sequences. The probability that a fabricated IBAN passes the check at random is about 1 in 97 โ and most IBAN errors are not random, they're typos or transpositions, which the algorithm is specifically designed to catch.
SEPA vs SWIFT
If you're paying within SEPA (the Single Euro Payments Area โ 36 European countries plus a few overseas territories), the IBAN alone is enough to route a payment. Payments are usually free or low-cost and settle the same day. If you're paying outside SEPA โ say from the UK to the UAE, or from Germany to Brazil โ you need both the IBAN and a SWIFT/BIC code, and the transfer goes through the SWIFT messaging network with currency conversion and intermediary bank fees along the way.
Common IBAN Mistakes
Dropping a digit while typing. The most common error. The length-per-country check catches this immediately โ โUK IBAN must be 22 characters, got 21.โ
Transposing two adjacent digits. The MOD-97 checksum was specifically designed to catch single-digit transpositions. So GB29 ...29 68 19 instead of GB29 ...26 89 19 will fail validation.
Treating the BIC as the IBAN. Some users paste their bank's BIC into an IBAN field. The BIC is 8 or 11 characters; an IBAN is 15+ characters and starts with a country code followed by 2 digits โ the country code check catches this immediately.
Trying to use an IBAN for a US account. The US doesn't use IBAN. If someone gives you an โIBANโ for a US account, it's either a custom format your bank invented or a misunderstanding. For US accounts, you need the routing number and account number (or a SWIFT BIC for international transfers).
When to Use This Validator
Before initiating a wire transfer. Single most useful moment. A few seconds of validation prevents a much longer recovery process if the wire goes wrong.
When onboarding a supplier. Validate the IBAN in their banking details document before adding it to your accounts payable system. Errors caught here never become recurring problems.
When updating your own banking details. Before sending a new IBAN to clients on your invoice template, run it through a validator. Save customers from chasing failed payments.
When building software that accepts IBANs. Use a validator at form input time. Even a basic length-and-country check stops 80% of bad entries before they hit your database.