IBAN validate & format
ClientInternational Bank Account Numbers use a country prefix, two check digits, and a Basic Bank Account Number. This page recomputes the ISO MOD-97-10 checksum and checks total length for countries in a built-in registry—then offers a standard four-character grouping for display.
What is checked
After removing spaces and hyphens, the value must match the usual ISO pattern. When we know the expected length for the country code, a mismatch fails fast. Finally the IBAN is rearranged (country and check digits move to the end), letters expand to numeric codes (A=10 … Z=35), and the big integer formed by those digits must be congruent to 1 mod 97.
Related tools
For digit-only checksums (cards, some identifiers), use Luhn mod 10. For bank identifiers (BIC/SWIFT structure), use BIC / SWIFT validate. For other string patterns, try Regex generator or the validators hub.
?
Spaces and hyphens are removed. We verify ISO layout (2-letter country + 2 check digits + BBAN), optional country length from an embedded registry, then MOD-97-10 on the rearranged digit string.
Result
Passes checksum and country length.
Compact: DE89370400440532013000
Grouped: DE89 3704 0044 0532 0130 00
Nearby workflows on Toolcore
- BIC / SWIFT format — when wire instructions list both IBAN and an eight- or eleven-character BIC.
- ABA routing number — for US ACH rows that sit beside European IBAN columns in the same file.
- ISIN validate — when securities onboarding packs mix ISO 6166 ISIN with bank account ids.
Common use cases
- Sanity-check an IBAN from a wire form before sending it to your own validation library.
- Normalize spacing when a PDF used odd groups and you need a single-line value for an API.
- Compare MOD-97 failures against a known-good test IBAN from your QA checklist.
- Pair with the Luhn tool when you are validating mixed payment identifiers in support tickets.
Common mistakes to avoid
Treating a passing checksum as proof the account exists
Checksum only catches many typos. It does not confirm the account is open or belongs to the named party.
Expecting every world country in the length table
Rare or newer codes may pass checksum but show a length note—double-check against your issuer or SWIFT registry.
Including non-breaking spaces or odd separators
The tool strips non-alphanumeric characters; if your source mixes unicode spaces, cleanup still lands on the same compact IBAN.
FAQ
Is my IBAN sent to Toolcore servers?
No. Parsing and MOD-97 run entirely in your tab; nothing is uploaded for validation.
Do you call a bank or SWIFT directory?
No. There is no live directory lookup—only format, embedded length rules for listed countries, and checksum math.
What if my country is not in the length list?
If the checksum still passes, you will see a note that length was not double-checked against the embedded table.
Is this the same as SEPA mandate verification?
No. Mandates and direct-debit rights need your bank’s process; this page is a developer-friendly format check only.
Common search terms
Phrases people search for that match this tool. See the full long-tail keyword index.
- iban validator online mod 97
- check iban checksum in browser
- iban format and validate free
- sepa iban structure checker local
More tools
Related utilities you can open in another tab—mostly client-side.
BIC / SWIFT validate
ClientISO 9362 layout (8 or 11 characters)—bank, country, location, branch segments; no directory lookup; browser-only.
ISIN validate
ClientISO 6166 securities ID—12 characters, letter expansion + Luhn check digit; no issuer lookup; browser-only.
LEI checksum
ClientTwenty-character Legal Entity Identifier—ISO 17442 MOD-97-10 check digits; no GLEIF lookup; browser-only.
ABA routing number checker
ClientPaste MICR routing (digits)—Fed-assignment checksum pass/fail, coarse Fed Reserve hint—ACH wires checks vary by institution.