---
title: IBAN Checker — Validate IBAN Number and MOD-97 Checksum Online
description: Check an IBAN number in your browser: ISO 7064 MOD-97-10 checksum, country length, BBAN structure, and bank or branch codes. Free, instant, and the value never leaves your device.
canonical: https://stanzaapi.com/tools/iban-validator/checker
---

[Home](/)/[API Directory](/tools/)/[Global IBAN, BIC/SWIFT & Bank Routing Validator API](/tools/iban-validator/)/IBAN Checker: Validate IBAN Numbers and MOD-97 Checksum

 Client-side checkNo sign-upNo data uploadIBAN Checker

# IBAN Checker: Validate IBAN Numbers and MOD-97 Checksum

An IBAN checker validates an International Bank Account Number against the length and structure rules for its country and the ISO 7064 MOD-97-10 checksum, then breaks the number into its country, check-digit, bank, branch, and account parts.

Validate an IBAN and break it into country, check digit, bank code, branch code, and account parts.

[Global IBAN, BIC/SWIFT & Bank Routing Validator API API →](/tools/iban-validator/)[View Pricing →](/pricing)

## Check an IBAN

IBANCheck IBANTest data:Valid sampleInvalid sample

Enter a value and run the check. Everything runs locally in this page.

AUTOMATE IN PRODUCTION<5ms edge latency

Automating this in your stack?

Run up to 10,000 validations/mo at <5ms edge latency with zero data retention and 99.9% availability.

```
curl -X POST https://api.stanzaapi.com/iban-validator/api/v1/iban/validate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"iban": "DE89370400440532013000"}'
```

[Get Pro API Key — $19/mo (Instant Setup) →](/checkout/iban-validator/pro)[API Documentation →](/tools/iban-validator/)

Runs entirely in your browser. The value you type is never sent to a server.

## How to check an IBAN number

- **Paste the IBAN** — Enter the IBAN with or without spaces. The checker uppercases it and removes separators before validation.
- **Run the MOD-97 checksum** — The checker rotates the first four characters to the end, converts letters to numbers (A=10 to Z=35), and verifies that the remainder modulo 97 equals 1.
- **Read the structure result** — The result shows the country, expected and actual length, BBAN structure, bank code, branch code, and the print format.

## What the check verifies

The check verifies three things: the ISO 7064 MOD-97-10 checksum, the country-specific IBAN length, and the national BBAN character pattern. A number can pass the checksum and still be invalid if its length or BBAN structure does not match the country rule.

The checker normalizes the value, computes the ISO 7064 MOD-97-10 checksum, and compares the number against the registered length and BBAN pattern for its country. When the structure is valid it also extracts the national bank and branch identifiers from their registered BBAN offsets.

IBAN validation is a format and checksum test, not a registry lookup. A number that passes can still belong to a closed account or contain a valid but unassigned bank code, so confirm payment details with the account holder.

## IBAN length and structure by country

| Country code | Country | IBAN length | SEPA |
| --- | --- | --- | --- |
| AD | [Andorra](/tools/iban-validator/country/andorra-ad) | 24 | Yes |
| AE | [United Arab Emirates](/tools/iban-validator/country/united-arab-emirates-ae) | 23 | No |
| AL | [Albania](/tools/iban-validator/country/albania-al) | 28 | No |
| AT | [Austria](/tools/iban-validator/country/austria-at) | 20 | Yes |
| AZ | [Azerbaijan](/tools/iban-validator/country/azerbaijan-az) | 28 | No |
| BA | [Bosnia and Herzegovina](/tools/iban-validator/country/bosnia-and-herzegovina-ba) | 20 | No |
| BE | [Belgium](/tools/iban-validator/country/belgium-be) | 16 | Yes |
| BG | [Bulgaria](/tools/iban-validator/country/bulgaria-bg) | 22 | Yes |
| BH | [Bahrain](/tools/iban-validator/country/bahrain-bh) | 22 | No |
| BI | [Burundi](/tools/iban-validator/country/burundi-bi) | 27 | No |
| BR | [Brazil](/tools/iban-validator/country/brazil-br) | 29 | No |
| BY | [Belarus](/tools/iban-validator/country/belarus-by) | 28 | No |
| CH | [Switzerland](/tools/iban-validator/country/switzerland-ch) | 21 | Yes |
| CR | [Costa Rica](/tools/iban-validator/country/costa-rica-cr) | 22 | No |
| CY | [Cyprus](/tools/iban-validator/country/cyprus-cy) | 28 | Yes |
| CZ | [Czechia](/tools/iban-validator/country/czechia-cz) | 24 | Yes |
| DE | [Germany](/tools/iban-validator/country/germany-de) | 22 | Yes |
| DJ | [Djibouti](/tools/iban-validator/country/djibouti-dj) | 27 | No |
| DK | [Denmark](/tools/iban-validator/country/denmark-dk) | 18 | Yes |
| DO | [Dominican Republic](/tools/iban-validator/country/dominican-republic-do) | 28 | No |
| EE | [Estonia](/tools/iban-validator/country/estonia-ee) | 20 | Yes |
| EG | [Egypt](/tools/iban-validator/country/egypt-eg) | 29 | No |
| ES | [Spain](/tools/iban-validator/country/spain-es) | 24 | Yes |
| FI | [Finland](/tools/iban-validator/country/finland-fi) | 18 | Yes |
| FK | [Falkland Islands](/tools/iban-validator/country/falkland-islands-fk) | 18 | No |
| FO | [Faroe Islands](/tools/iban-validator/country/faroe-islands-fo) | 18 | No |
| FR | [France](/tools/iban-validator/country/france-fr) | 27 | Yes |
| GB | [United Kingdom](/tools/iban-validator/country/united-kingdom-gb) | 22 | Yes |
| GE | [Georgia](/tools/iban-validator/country/georgia-ge) | 22 | No |
| GI | [Gibraltar](/tools/iban-validator/country/gibraltar-gi) | 23 | Yes |
| GL | [Greenland](/tools/iban-validator/country/greenland-gl) | 18 | No |
| GR | [Greece](/tools/iban-validator/country/greece-gr) | 27 | Yes |
| GT | [Guatemala](/tools/iban-validator/country/guatemala-gt) | 28 | No |
| HR | [Croatia](/tools/iban-validator/country/croatia-hr) | 21 | Yes |
| HU | [Hungary](/tools/iban-validator/country/hungary-hu) | 28 | Yes |
| IE | [Ireland](/tools/iban-validator/country/ireland-ie) | 22 | Yes |
| IL | [Israel](/tools/iban-validator/country/israel-il) | 23 | No |
| IQ | [Iraq](/tools/iban-validator/country/iraq-iq) | 23 | No |
| IS | [Iceland](/tools/iban-validator/country/iceland-is) | 26 | Yes |
| IT | [Italy](/tools/iban-validator/country/italy-it) | 27 | Yes |
| JO | [Jordan](/tools/iban-validator/country/jordan-jo) | 30 | No |
| KW | [Kuwait](/tools/iban-validator/country/kuwait-kw) | 30 | No |
| KZ | [Kazakhstan](/tools/iban-validator/country/kazakhstan-kz) | 20 | No |
| LB | [Lebanon](/tools/iban-validator/country/lebanon-lb) | 28 | No |
| LC | [Saint Lucia](/tools/iban-validator/country/saint-lucia-lc) | 32 | No |
| LI | [Liechtenstein](/tools/iban-validator/country/liechtenstein-li) | 21 | Yes |
| LT | [Lithuania](/tools/iban-validator/country/lithuania-lt) | 20 | Yes |
| LU | [Luxembourg](/tools/iban-validator/country/luxembourg-lu) | 20 | Yes |
| LV | [Latvia](/tools/iban-validator/country/latvia-lv) | 21 | Yes |
| LY | [Libya](/tools/iban-validator/country/libya-ly) | 25 | No |
| MC | [Monaco](/tools/iban-validator/country/monaco-mc) | 27 | Yes |
| MD | [Moldova](/tools/iban-validator/country/moldova-md) | 24 | No |
| ME | [Montenegro](/tools/iban-validator/country/montenegro-me) | 22 | No |
| MK | [North Macedonia](/tools/iban-validator/country/north-macedonia-mk) | 19 | No |
| MN | [Mongolia](/tools/iban-validator/country/mongolia-mn) | 20 | No |
| MR | [Mauritania](/tools/iban-validator/country/mauritania-mr) | 27 | No |
| MT | [Malta](/tools/iban-validator/country/malta-mt) | 31 | Yes |
| MU | [Mauritius](/tools/iban-validator/country/mauritius-mu) | 30 | No |
| NI | [Nicaragua](/tools/iban-validator/country/nicaragua-ni) | 28 | No |
| NL | [Netherlands](/tools/iban-validator/country/netherlands-nl) | 18 | Yes |
| NO | [Norway](/tools/iban-validator/country/norway-no) | 15 | Yes |
| OM | [Oman](/tools/iban-validator/country/oman-om) | 23 | No |
| PK | [Pakistan](/tools/iban-validator/country/pakistan-pk) | 24 | No |
| PL | [Poland](/tools/iban-validator/country/poland-pl) | 28 | Yes |
| PS | [Palestine](/tools/iban-validator/country/palestine-ps) | 29 | No |
| PT | [Portugal](/tools/iban-validator/country/portugal-pt) | 25 | Yes |
| QA | [Qatar](/tools/iban-validator/country/qatar-qa) | 29 | No |
| RO | [Romania](/tools/iban-validator/country/romania-ro) | 24 | Yes |
| RS | [Serbia](/tools/iban-validator/country/serbia-rs) | 22 | No |
| RU | [Russia](/tools/iban-validator/country/russia-ru) | 33 | No |
| SA | [Saudi Arabia](/tools/iban-validator/country/saudi-arabia-sa) | 24 | No |
| SC | [Seychelles](/tools/iban-validator/country/seychelles-sc) | 31 | No |
| SD | [Sudan](/tools/iban-validator/country/sudan-sd) | 18 | No |
| SE | [Sweden](/tools/iban-validator/country/sweden-se) | 24 | Yes |
| SI | [Slovenia](/tools/iban-validator/country/slovenia-si) | 19 | Yes |
| SK | [Slovakia](/tools/iban-validator/country/slovakia-sk) | 24 | Yes |
| SM | [San Marino](/tools/iban-validator/country/san-marino-sm) | 27 | Yes |
| SO | Somalia | 23 | No |
| ST | São Tomé and Príncipe | 25 | No |
| SV | [El Salvador](/tools/iban-validator/country/el-salvador-sv) | 28 | No |
| TL | [Timor-Leste](/tools/iban-validator/country/timor-leste-tl) | 23 | No |
| TN | [Tunisia](/tools/iban-validator/country/tunisia-tn) | 24 | No |
| TR | Türkiye | 26 | No |
| UA | [Ukraine](/tools/iban-validator/country/ukraine-ua) | 29 | No |
| VA | Vatican City State | 22 | Yes |
| VG | [British Virgin Islands](/tools/iban-validator/country/british-virgin-islands-vg) | 24 | No |
| XK | [Kosovo](/tools/iban-validator/country/kosovo-xk) | 20 | No |

## Frequently Asked Questions

What is an IBAN check digit?

The third and fourth characters of an IBAN are the check digits. They are computed with ISO 7064 MOD-97-10 so that the remainder of the rearranged number modulo 97 equals 1.

Why is my IBAN invalid when the bank gave it to me?

A bank-issued IBAN can fail if a character was mistyped, if hidden characters were copied with it, or if its length does not match the country rule. Compare the value with the source document and remove spaces or punctuation before checking again.

How many characters is an IBAN?

An IBAN is between 15 and 34 characters. The exact length is fixed per country: a Norwegian IBAN is 15 characters, a German IBAN is 22, and a Russian IBAN is 33.

Does the checker send my IBAN anywhere?

No. The validation runs as JavaScript in your browser and the IBAN you type is not transmitted to Stanza or any third party.

Can I validate many IBANs at once?

The free checker validates one IBAN at a time. The Stanza IBAN Validator API accepts batch requests and returns the same checksum, structure, and bank-code fields for every number.

## Free browser tool vs Stanza API

| Capability | Free browser tool | Stanza API |
| --- | --- | --- |
| Where it runs | Your browser | Cloudflare edge |
| Authentication | None | Bearer API key |
| Rate limit | None | Published per-tier limits |
| Data handling | Never leaves your device | In-memory, zero retention |
| Batch validation and BIC/SWIFT validation through the IBAN Validator API | No | Yes |
| Typed JSON envelope with latency metadata for server-side integrations | No | Yes |

## Sources & standards

- [SWIFT IBAN Registry](https://www.swift.com/standards/data-standards/iban)

**Related specifications:**[UAE IBAN Number (AE) Validator, Format & Bank Codes](/tools/iban-validator/country/united-arab-emirates-ae)

**Related free tools:**[IBAN Generator: Create Valid Test IBANs for Any Country](/tools/iban-validator/generator)

Useful?

Bookmark it for the next check, or pass it to someone who works with these numbers.

Bookmark this pageCopy link[Share on X](https://twitter.com/intent/tweet?text=IBAN%20Checker&url=https%3A%2F%2Fstanzaapi.com%2Ftools%2Fiban-validator%2Fchecker)[Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fstanzaapi.com%2Ftools%2Fiban-validator%2Fchecker)[Email](mailto:?subject=IBAN%20Checker&body=https%3A%2F%2Fstanzaapi.com%2Ftools%2Fiban-validator%2Fchecker)

Press Ctrl+D to bookmark this page. Installed as an app, the tools also work offline.
