Skip to main content

IBAN Validator: mod-97 Checksum + Country Length Check

Check any IBAN with the ISO 7064 mod-97 checksum and a 60-country length table, formatted output, one-click copy, browser-only

  • Runs locally
  • Category Developer & DevOps
  • Best for Formatting, validating, shrinking, or inspecting code-adjacent text.
Note: This is a format and checksum check only. A "valid" IBAN is well-formed, but that does NOT prove the account exists, is open, or is funded. Only the bank can confirm that on transfer.

Avoid pasting a real account number. Everything runs in your browser, but a share link would carry the digits in the URL.

Enter an IBAN above to see the result.

What this tool does

Free IBAN validator and checker that runs entirely in your browser. Paste an International Bank Account Number (IBAN) and it does the two checks a real bank does first: it looks up the country prefix in a length table of more than 60 countries (Germany 22, United Kingdom 22, France 27, Spain 24, Italy 27, Netherlands 18, Switzerland 21 and many more), then runs the ISO 7064 mod-97 checksum. The mod-97 step moves the first four characters to the end, maps every letter A to Z onto 10 to 35, reads the whole string as one big integer and confirms the remainder is exactly 1. You get a clear verdict, the resolved country, expected versus actual length, a nicely grouped (every four characters) output and one-click copy. A valid result means the IBAN is well formed and free of single-digit typos, not that the account is open or funded. Everything stays on the page, nothing is uploaded, and there is no logging.

Tool details

Input
Text
The page exposes text boxes, numeric controls, file pickers, or structured inputs depending on the tool.
Output
Live result + Copy
The result area focuses on usable output, with copy, download, or preview actions when supported.
Privacy
Browser-side processing
The main tool logic does not call an external API, so inputs normally stay in the current tab.
Save / share
Shareable URL state
Key settings are encoded in the URL so another person can reopen the same setup.
Performance budget
Initial JS <= 9 KB
No WASM budget is declared, keeping the tool quick to open on mobile.
Best fit
Developer & DevOps · Developer
Category and role tags drive related tools, internal links, and quick fit checks.

How to use

  1. 1. Input

    Paste or drop your content into the tool panel.

  2. 2. Process

    Click the button. All processing is local in your browser.

  3. 3. Copy / Download

    Copy the result or download to disk in one click.

How IBAN Validator fits into your work

Use it in the small gaps between coding, reviewing, debugging, and shipping.

Developer jobs

  • Formatting, validating, shrinking, or inspecting code-adjacent text.
  • Preparing snippets for documentation, tickets, commits, or handoff.
  • Checking a small payload quickly without switching tools.

Developer checks

  • Run irreversible transforms like minify or obfuscate on a copy.
  • Keep secrets out of pasted snippets unless the tool explicitly stays local.
  • Use your normal tests or linter before shipping transformed code.

Good next steps

These links move the current task into a more complete workflow.

  1. 1 Unit Converter Convert between length, weight, temperature, area, volume, speed, time — instant, browser-only Open
  2. 2 Base64 Encoder & Decoder Encode or decode Base64 — text, files, and Data URLs. Runs entirely in your browser. Open
  3. 3 Luhn Validator Check any number against the Luhn (mod 10) algorithm, see the doubling math step by step, or compute the missing check digit, all in your browser Open

Real-world use cases

  • Verify a supplier IBAN before sending an invoice payment

    A vendor emails new bank details and asks you to update your records. Before the finance team wires four or five figures, paste the IBAN here. If the country prefix, length and mod-97 checksum all pass, you know the number is at least well formed and free of a typo introduced by copy-paste. Then confirm the name and bank with the vendor over a known channel, because format validity alone never proves the account is theirs.

  • Catch data-entry errors in a payments or payroll system

    You are building or testing a system that stores customer or employee IBANs. Run a sample through this tool to see exactly why a record fails: wrong length for the country, a character that is not A to Z or 0 to 9, an unknown country prefix, or a mod-97 mismatch from a single mistyped digit. The exported pure functions mirror what a server-side validator should do, so you can reproduce the verdict in your own code.

  • Sanity-check an IBAN you typed from a paper statement

    Bank statements print the IBAN in groups of four, and it is easy to drop or swap a digit while typing it into a transfer form. Paste your version here, let the tool regroup it cleanly, and check the verdict. A green result means no single-digit typo slipped through; a red one tells you which check failed so you know where to look on the original statement.

  • Teach or learn how the IBAN checksum works

    The mod-97 scheme is a clean, real-world example of a check-digit algorithm built on modular arithmetic. Students and developers can enter a known-good IBAN, flip one digit, and watch the verdict turn from valid to a checksum failure. The expected-length table for more than 60 countries doubles as a quick reference for how IBAN structures differ around the world.

Common pitfalls

  • Treating a valid checksum as proof the account exists. The mod-97 check only confirms the IBAN is well formed and typo-free, for example that nobody dropped a digit. It cannot tell you the account is open or belongs to your recipient. A randomly built string can pass mod-97 by luck, so always confirm the name and bank separately.

  • Expecting US, CA or CN account numbers to validate. The United States, Canada and China do not use IBAN, so their prefixes are reported as an unknown country. Domestic US transfers use routing numbers, China uses CNAPS codes, and cross-border transfers rely on SWIFT/BIC plus the account number, not an IBAN.

  • Forgetting that each country has its own fixed length. A German IBAN is 22 characters and a French one is 27, so copying a German length onto a French number guarantees a length failure even if every character looks plausible. Check the expected-length field, not just the checksum.

Privacy

Every step runs as plain JavaScript inside your browser tab: stripping spaces, the country length lookup, the mod-97 arithmetic and the formatted output. No IBAN is ever uploaded, and nothing you type is logged. One caveat: the input is encoded into the page URL so a share link reproduces the same check, which means pasting that link into chat would record the IBAN in the recipient server access log. For a real account number, prefer not to share the URL, and avoid pasting live banking details anywhere you do not control.

FAQ

Tool combos

Folks in your role tend to reach for these alongside this tool.

Made by Toolora · 100% client-side · Updated 2026-06-13