IBAN Validator — Check International Bank Account Numbers
Validate IBAN numbers (International Bank Account Number) format and checksum for 75+ countries. Identify country, bank code, account.
About IBAN Validator
An IBAN validator checks an International Bank Account Number for proper format and a valid mod-97 checksum — catching typos before money is sent to a wrong account. IBAN is the standard for cross-border bank transfers in Europe and 75+ countries; format is country-specific (German IBAN is 22 chars, UK is 22, Italy 27). The ZTools IBAN Validator checks: country code prefix, length per country, character set, and the mathematical mod-97 check digit calculation. Identifies the country, BBAN (basic bank account number), bank code, and branch. Pure client-side; no IBAN sent to any server.
Use cases
- Pre-transfer typo check. About to wire money internationally? Validate the IBAN before submitting to your bank — catches typos that could send money to a stranger.
- Vendor / supplier onboarding. New international supplier provided an IBAN. Validate before adding to AP system; bad IBANs cause delayed/lost payments.
- E-commerce checkout. Real-time validation during checkout for SEPA direct debit / bank transfer. Catches typos before they cost the customer time.
- Migrating data. Importing customer / supplier records — bulk-validate IBANs to find dirty data.
How it works
- Enter IBAN. With or without spaces. Tool normalises (removes spaces, uppercase).
- Format check. Country code (first 2 chars) → expected length and pattern lookup. Length must match exactly.
- Checksum. Mod-97 algorithm: rearrange chars, convert letters to numbers, compute mod 97. Result must be 1.
- Parse fields. Country, check digits, bank code, branch code, account number — each country has different layout.
- Result. Pass / fail + parsed components shown. Failed IBANs may indicate typo or wrong country.
Examples
Input: `DE89 3704 0044 0532 0130 00` (Germany sample)
Output: Valid — Germany, Bank: Commerzbank Cologne, Account: 0532013000.
Input: `GB82 WEST 1234 5698 7654 32` (UK sample)
Output: Valid — UK, Bank: NatWest sort code 12-34-56, Account: 98765432.
Input: `DE89 3704 0044 0532 0130 01` (typo last digit)
Output: INVALID — checksum fails. Likely typo in last digit.
Frequently asked questions
What's an IBAN?
International Bank Account Number — standardised account ID for international transfers. ISO 13616. Includes country code + check digits + country-specific bank/account portion.
Why does the checksum matter?
Mod-97 algorithm catches single-digit typos (the most common error). Without checksum, a 1-character typo silently sends money to a different real account.
Is "valid" the same as "this account exists"?
No — checksum validation only confirms the format is mathematically correct. The account may not exist or may be closed. Only the destination bank can confirm.
Which countries use IBAN?
All EU + EEA, Switzerland, UK, Norway, Iceland, plus 50+ others (Israel, Saudi Arabia, UAE, Tunisia, Turkey, Pakistan, etc.). Notably NOT used in US, Canada, Australia, India.
How do US accounts work?
US uses ACH (domestic) or SWIFT/BIC + account number (international). No IBAN.
Is IBAN sufficient for an international wire?
In SEPA region (EU): IBAN alone often enough. Outside SEPA: need IBAN + BIC/SWIFT code of the destination bank. Always confirm with the recipient.
Pro tips
- Always validate IBAN before initiating a wire transfer — catches the cheapest-to-fix errors at the cheapest moment.
- For UI input, normalise (strip spaces, uppercase) on blur — improves UX.
- Display the formatted IBAN (with spaces every 4 chars) on output — easier for humans to verify.
- For SEPA, IBAN + recipient name is enough; for non-SEPA, also collect BIC/SWIFT.
- Bulk-validate vendor IBANs annually — bank mergers cause IBAN changes.
Reviewed by Ahsan Mahmood · Last updated 2026-05-06 · Part of ZTools.
For the full,
formatted version of this page, please enable JavaScript and reload
https://ztools.zaions.com/iban-validator.