Home / IBAN Validator
🏦 IBAN Validator — Check Digits & Account Structure Online
MOD-97 checksum plus official country-length check. Instant, private, free.
🔒 100% Client-Side Privacy: IBAN validation and check-digit math execute purely in your local browser. Your account numbers, bank routing details, and entries are never transmitted to external databases or recorded in server logs.
IBAN Structure by Country (EU/EEA)
An IBAN is at most 34 characters: a two-letter country code, two check digits, then the Basic Bank Account Number (BBAN) whose length and format each country defines. The check digits are computed with the ISO 13616 mod-97 algorithm — the whole IBAN is rearranged (BBAN first), letters converted to numbers, and the remainder modulo 97 must equal 1. That single check catches typos, transposed digits and most formatting mistakes, but it cannot prove an account exists: only your bank or the recipient can confirm that.
| Country | Length | BBAN layout |
|---|---|---|
| Germany (DE) | 22 | 8-digit BLZ + 10-digit account |
| France (FR) | 27 | 5-digit bank + 5-digit branch + 11-digit account + 2-key |
| Netherlands (NL) | 18 | 4-digit bank code + 10-digit account |
| Belgium (BE) | 16 | 3-digit bank + 7-digit account + 2 check |
| Austria (AT) | 20 | 5-digit bank code + 11-digit account |
| Italy (IT) | 27 | check digit + 5-digit ABI + 5-digit CAB + 12-digit account |
| Spain (ES) | 24 | 4-digit bank + 4-digit branch + 2 check + 10-digit account |
| Portugal (PT) | 25 | 4-digit bank + 4-digit branch + 2 check + 11-digit account |
| Ireland (IE) | 22 | 6-digit bank + 8-digit account + 2 check |
| Finland (FI) | 18 | 6-digit bank + 7-digit account + 1 check |
| Poland (PL) | 28 | 2-digit bank + 16-digit account + 2 check |
| Czechia (CZ) | 24 | 6-digit account prefix + 10-digit number + 2 check |
The validator above shows your IBAN's country, check digits, BBAN and expected length the moment the checksum passes, and the example buttons load official test IBANs (the values published in the ISO 20022 registry) so you can confirm the tool works before trusting it with a real payment. The test IBAN generator builds a random number that satisfies the country's length and mod-97 checksum — useful for populating staging systems and demos. Generated values are structurally valid only: no bank issued them, and payments to them will fail.
IBAN validation FAQ
Can a valid IBAN still be the wrong account? Yes. The checksum only proves the number follows the country's format — a made-up number with the correct length and check digits passes too. Confirm new bank details with the payee through a channel you trust before transferring, and never change payment details on the strength of an unexpected email.
Why do some countries have no IBAN? The scheme covers Europe, the Middle East and parts of the Caribbean. The United States and Canada use domestic routing numbers instead; when a payment reaches a non-IBAN country the SWIFT/BIC code identifies the bank and the local account format identifies the account.
Does a valid IBAN mean the account accepts SEPA payments? Not necessarily. The account must also be enabled for SEPA Credit Transfer or Direct Debit by its bank. For SEPA Direct Debit, the creditor reference and mandate — not just the IBAN — make a collection valid.
Do I strip the spaces? Banks and payment systems exchange IBANs without spaces or hyphens; spaces are purely for reading. The validator above ignores both, so you can paste the number exactly as printed on an invoice.
How to Validate an IBAN Online
Entering a wrong account number for international wires (SEPA or SWIFT transfers) can mean failed transfers, rejection penalties from intermediary banks, and multi-week delays. Checking the IBAN first catches the most common cause of rejection, so you can fix it before the transfer is sent:
- Enter the full IBAN: type or paste the complete string — spaces and dashes are stripped automatically.
- Country code & length check: the tool verifies the total length matches the official ISO standard for the issuing nation.
- MOD-97 checksum: the algorithm verifies mathematical integrity, catching transposed or mistyped digits.
- Read the verdict: a green result means structure and checksum pass — for live account existence, always confirm with your bank. Useful before adding details to an invoice.
Anatomy of an International Bank Account Number (ISO 13616)
An IBAN holds up to 34 alphanumeric characters in mandatory segments that route international payments accurately:
| Segment Name | Position Range | Example Value | Description & Function |
|---|---|---|---|
| Country code | Characters 1–2 | DE (Germany) | Two-letter ISO code indicating the account location country. |
| Check digits | Characters 3–4 | 89 | Two checksum digits from the MOD-97 algorithm. |
| Bank identifier | Varies by country | 37040044 | National bank routing code (BLZ, sort code, or CAB). |
| Account number (BBAN) | Remaining characters | 0532013000 | The customer account number assigned by the local bank. |
Why does my IBAN fail MOD-97 even though my bank gave it to me?
The most common causes are spaces or dashes pasted in a way the form did not strip, lowercase letters, a truncated string missing the last digits, the wrong country length (for example 20 characters with a DE prefix, which must be 22), or two transposed digits. Re-copy the IBAN directly from your bank statement and check the country length first — MOD-97 catches the most common typing errors, including transposed adjacent digits, but it is not guaranteed to catch every possible mistake - some wrong IBANs still pass. Treat a green result as structurally valid, never as confirmed correct.
Can I use this validator for SEPA Direct Debit mandates?
Yes. SEPA Direct Debit mandates require a valid debtor IBAN, and a failed MOD-97 check is the most common reason mandates are rejected. Validate the IBAN here first, then confirm the account holder name and BIC with your bank before submitting the mandate to avoid rejection fees.
What should I check besides the IBAN before sending an international transfer?
Confirm the BIC/SWIFT code matches the receiving bank, the account holder name exactly as registered, and any reference your recipient requires. For business payments, add the validated IBAN to a compliant invoice with the invoice generator so the details travel with the payment request.
Last verified: 25 September 2026. Sources: EU Commission VAT rates, ECB euro reference rates and national tax authorities. Confirm with your local authority before filing.
Official sources: European Payments Council · ECB payments
Official IBAN Lengths Across Key Global Markets
Each IBAN country enforces a strict fixed length. The checker above validates all supported countries; the most-searched markets are below:
| Country Name | ISO Code | Total IBAN Length | National BBAN Structure |
|---|---|---|---|
| Germany | DE | 22 characters | Bank code (8) + account number (10) |
| France | FR | 27 characters | Bank (5) + branch (5) + account (11) + key (2) |
| United Kingdom | GB | 22 characters | Bank code (4) + sort code (6) + account (8) |
| Spain | ES | 24 characters | Bank (4) + branch (4) + control (2) + account (10) |
| Italy | IT | 27 characters | Check letter (1) + bank (5) + branch (5) + account (12) |
| Netherlands | NL | 18 characters | Bank identifier (4) + account number (10) |
| Belgium | BE | 16 characters | Check (2) + bank (3) + account (7) |
| Austria | AT | 20 characters | Bank code (5) + account (11) |
| Poland | PL | 28 characters | Bank (8) + account (16) + check (2) |
| Portugal | PT | 25 characters | Bank (4) + branch (4) + account (11) + check (2) |
| Ireland | IE | 22 characters | Bank (4) + sort code (6) + account (8) |
| Greece | GR | 27 characters | Bank (3) + check (1) + account (16) |
| Czech Republic | CZ | 24 characters | Bank (4) + account (16) |
| Denmark | DK | 18 characters | Bank (4) + account (10) |
| Finland | FI | 18 characters | Bank (6) + account (8) |
| Hungary | HU | 28 characters | Bank (3) + account (16) + check (1) |
| Romania | RO | 24 characters | Bank (4) + account (16) |
| Sweden | SE | 24 characters | Bank (3) + account (16) + check (2) |
| Switzerland | CH | 21 characters | Clearing number (5) + account number (12) |
| United Arab Emirates | AE | 23 characters | Bank code (3) + account number (16) |
How the MOD-97 Check Digit Calculation Works
The integrity of every IBAN rests on MOD-97 (ISO 7064). It catches every single-character error and every adjacent transposition, such as transposed adjacent digits or single-character typos:
Step-by-step mathematical algorithm
- Move the first 4 characters (country code + check digits) to the end of the string.
- Convert each letter to a two-digit number (A = 10, B = 11, C = 12 … Z = 35).
- Treat the resulting numeric sequence as one large integer.
- Compute the remainder when divided by 97.
- If the remainder equals 1, the IBAN is mathematically valid.
Worked Example: How MOD-97 Validates a Real IBAN
Take the German IBAN DE89 3704 0044 0532 0130 00. Here is the exact MOD-97 arithmetic, so you can verify any IBAN by hand:
- Strip spaces:
DE89370400440532013000(22 characters — correct for Germany). - Move the first four characters to the end:
370400440532013000DE89. - Convert letters to two-digit numbers (A=10 … Z=35):
D=13, E=14, giving370400440532013000131489. - Divide by 97:
370400440532013000131489 ÷ 97 = 3818561242598072166303 remainder 1. - Remainder = 1, so the IBAN is mathematically valid.
If a single digit were mistyped — say the final 00 became 01 — the remainder would not be 1, and the tool would reject it. This is why MOD-97 catches every single-character error and every adjacent transposition: no other 97-remainder combination is produced by these common mistakes.
Frequently Asked Questions (FAQs)
What is an International Bank Account Number (IBAN)?
An IBAN (International Bank Account Number) is an internationally agreed ISO 13616 standard used to uniquely identify individual bank accounts across global financial institutions to reduce transfer processing errors.
How does the MOD-97 check digit algorithm validate an IBAN?
The MOD-97 algorithm converts letters into numbers, moves the country code and check digits to the end of the string, and computes a modulo 97 division. A valid IBAN always produces a remainder of 1.
Is my banking information safe when using this validator?
Yes. Validation runs entirely within client-side JavaScript memory in your web browser. No bank details, account numbers, or IBAN entries are transmitted, stored, or logged on remote servers.
Does validating an IBAN guarantee the bank account is active?
No. IBAN validation checks structural correctness, country character length, and mathematical check-digit integrity. It verifies proper ISO formatting, but it cannot confirm whether the underlying account is currently open, active, or funded.
Does the United States use IBAN numbers?
The United States does use IBANs — US banks recognise and process them for international transfers, and any US account can be paid via its IBAN. However, the US does not issue IBANs for domestic use: US domestic payments rely on ABA 9-digit routing transit numbers and local account numbers, with SWIFT/BIC codes identifying the bank. There is no US IBAN format; a US account has no IBAN, only an ABA routing number and account number.
What is the difference between an IBAN and a SWIFT/BIC code?
An IBAN identifies a specific individual bank account in a particular country, whereas a SWIFT/BIC code (Business Identifier Code) identifies the overall banking institution itself on the global financial messaging network.
Can an IBAN contain lower-case letters or spaces?
On paper, IBANs print in blocks of 4 characters separated by spaces for readability (e.g. DE89 3704 0044 0532 0130 00). Electronically, spaces are removed and letters case-insensitive — this tool normalizes both automatically.
Structural validation only — not a live account lookup and not financial advice. Confirm account details with your bank before transferring.
How MOD-97 IBAN Validation Works
The International Bank Account Number (IBAN) is an internationally agreed system for identifying bank accounts across national borders. Validating an IBAN before initiating SEPA wire transfers reduces payments that fail because of typing errors, and avoids the return fees that follow them. It cannot prevent a payment that fails for another reason: a closed or frozen account, the wrong currency, an incorrect BIC or SWIFT code, or a name mismatch.
Validation Steps
- Country Length Check: Verifies that the IBAN string matches the exact character length required by the destination nation (e.g., DE = 22 chars, FR = 27 chars).
- Format Verification: Confirms the characters are letters and digits in the positions and lengths the issuing country requires. This is a format check only - the tool does not look the bank code up against any registry, so it cannot confirm the account is real, open, or held at the bank the code appears to name.
- MOD-97 Checksum (ISO 7064): Moves the first 4 characters to the end, converts letters to numbers, and calculates if
string MOD 97 === 1.
Frequently Asked Questions
Does this tool check if an account exists?
No. This tool validates the legal mathematical checksum, format, and structure of the IBAN. Only the bank can verify account balance and ownership.