IBAN Validator

Share:

Validate IBANs with mod-97 checksum, see country, bank code, account number — and learn why ASEAN uses PayNow/DuitNow instead.

RT-FIN-052 · Finance & Money

IBAN Validator Tool

Note for ASEAN users: Singapore, Malaysia, Indonesia, Thailand, the Philippines, and Vietnam do not use the IBAN standard. Cross-border payments from those countries route via SWIFT/BIC + local account formats. For instant domestic transfers, Singapore uses PayNow (mobile number or NRIC), Malaysia uses DuitNow, Thailand uses PromptPay, and the Philippines uses InstaPay/PESONet. There is no IBAN to validate for ASEAN bank accounts — the closest equivalent is the SWIFT BIC plus a bank-issued account number.
Advertisement
After results · AD-W1 Responsive · Post-tool — peak engagement

How to use the IBAN validator

Paste the IBAN

Drop the IBAN into the input box. Spaces, dashes, mixed-case — all are tolerated. The tool normalises everything to uppercase and strips whitespace before validating.

Read the status banner

Green tick means the mod-97 checksum passes and the length matches that country's IBAN format. Red cross means one of those failed; the banner explains which.

Review the breakdown

The dark result card shows country, country code, the two check digits, the BBAN (the country-specific account portion), formatted form (4-character groups), total length, and SEPA-member status.

Try the country presets

The pills under the input cover canonical examples from Germany, UK, France, Spain, Netherlands, Switzerland, and UAE — useful for testing without leaking real account data.

Advertisement
After how-to · AD-W2 Responsive

IBAN — what it is, and why ASEAN doesn't use it

The International Bank Account Number (IBAN) is a standardised format for identifying bank accounts internationally. Defined by ISO 13616 and maintained by SWIFT, it consists of up to 34 alphanumeric characters: a two-letter country code, a two-digit check number, and a country-specific Basic Bank Account Number (BBAN) of up to 30 characters. Germany's IBANs are 22 characters; Norway's are 15; Malta's are 31. The point of the standard is to make cross-border payment routing unambiguous — given any valid IBAN, a SWIFT-aware bank anywhere can determine the destination country and account without manual lookup.

The mod-97 check — how validation works

The two-digit check number isn't decorative. To validate an IBAN, you move the first four characters (country + check digits) to the end of the string, replace every letter with its position-based number (A=10, B=11, …, Z=35), and compute the result mod 97. A valid IBAN always produces a remainder of exactly 1. This is the entire mathematical guarantee of IBAN integrity — it catches every single-digit typo, every transposition of two adjacent digits, and around 99% of all multi-character errors. It is not a cryptographic checksum, so a determined fraudster can construct a valid-looking IBAN, but accidental data-entry errors are caught with extremely high probability.

SEPA — the European payment area

SEPA (Single Euro Payments Area) is a payment integration initiative covering 36 countries, all of which use IBAN. For SEPA Credit Transfers and SEPA Direct Debit, you only need the recipient's IBAN — no BIC required since 2016. SEPA Instant Credit Transfer (SCT Inst) settles in under 10 seconds and is available 24/7. Bank-level interoperability across SEPA is the reason a European business can issue invoices payable by any other European customer without per-country bank-account configuration. The same scheme has no equivalent in ASEAN — each ASEAN country runs its own domestic instant payment scheme.

Why ASEAN uses something different

Singapore, Malaysia, Indonesia, Thailand, Vietnam, and the Philippines never adopted IBAN. Each country's central bank built a parallel system for instant retail payments around 2017–2019. Singapore launched PayNow (transfer by mobile number, NRIC, or business UEN — settled instantly via FAST), Malaysia launched DuitNow (mobile number, IC, or business ID), Thailand launched PromptPay (mobile or national ID), the Philippines launched InstaPay/PESONet, Indonesia launched BI-FAST, and Vietnam runs through NAPAS 247. Cross-border, an ASEAN payment goes via SWIFT MT103 or — increasingly — via PayNow-PromptPay-style bilateral linkages (Singapore-Thailand launched 2021, Singapore-India launched 2023). There is no single ASEAN IBAN equivalent because each country deliberately built its own scheme to avoid foreign infrastructure dependency.

Virtual IBANs and modern fintech

One twist worth knowing: virtual IBANs. Modern fintechs like Wise (formerly TransferWise), Revolut, and N26 issue customers IBANs in countries the customer doesn't bank in — a UK Wise user can be issued a EUR-denominated IBAN starting with BE (Belgium) for receiving European payments. These are technically valid IBANs that pass mod-97, route to the fintech's clearing account, and then settle internally to the end-customer's wallet. For users sending the payment, it looks indistinguishable from a regular bank IBAN. The tool above will validate these as mathematically correct — confirming whether the account actually exists requires the recipient bank to respond.

10 IBAN and ASEAN-payment facts

01

IBAN was specified in ISO 13616 in 1997 and revised in 2007 to allow non-European countries to join. Saudi Arabia, UAE, Israel, and Brazil all use IBAN today.

02

The IBAN mod-97 check catches every single-digit typo and every adjacent transposition — about 99% of all data-entry errors are caught before payment routing.

03

Germany has the world's longest-running IBAN system at 22 characters. Malta's IBAN is the longest at 31 characters; Norway's is the shortest at 15.

04

SEPA covers 36 countries and 524 million people. Since 2016, you don't need a BIC for SEPA transfers — the IBAN alone is sufficient.

05

Singapore's PayNow launched July 2017 and crossed 5 million users in its first 18 months. It runs over MAS's FAST payment rails.

06

Malaysia's DuitNow QR is interoperable across all participating banks since 2019 — one QR works at any bank's mobile app, the same way as Indonesia's QRIS.

07

Singapore-Thailand PayNow-PromptPay linkage launched April 2021 — the world's first real-time mobile-number-to-mobile-number cross-border payment link.

08

Wise (formerly TransferWise) issues virtual IBANs in 9 countries despite being headquartered in London — your "Belgian" Wise IBAN actually settles via Wise's clearing accounts.

09

The UK left SEPA in 2021 after Brexit but retained access to the SEPA scheme — UK IBANs still work for European payments via the UK's SEPA participation as a non-EU member.

10

The longest theoretically valid IBAN under ISO 13616 is 34 characters. No country currently uses the maximum — the longest in use is Malta's 31-character format.

Frequently asked questions

No. Singapore is not an IBAN country. Local Singapore bank accounts use a domestic format (bank code + branch code + account number). For cross-border payments to Singapore, the sender uses SWIFT/BIC + the local account number. For domestic instant transfers, use PayNow with the recipient's mobile number or NRIC.
IBAN identifies an account; BIC (Business Identifier Code, also called SWIFT code) identifies a bank. Many SEPA transfers no longer require BIC because the IBAN already encodes the destination bank. For non-SEPA international transfers, both are typically required.
The mod-97 check confirms the IBAN is mathematically well-formed and the country/length match the standard. It does NOT confirm the account exists, has funds, or accepts the currency. Only the recipient bank can confirm those — usually by returning the payment if it fails.
Only via SWIFT bridging. ASEAN central banks have linked to each other (Singapore-Thailand, Singapore-Malaysia, Singapore-India) for instant retail payments, but none of these schemes use IBAN. Sending money from a Singapore PayNow account to a European IBAN goes through SWIFT MT103 with a bank as intermediary.
Move the first four characters to the end of the IBAN, replace every letter with its position-based number (A=10, B=11, ..., Z=35), parse the result as a decimal integer, and compute mod 97. A valid IBAN always returns 1. To generate the check digits, set them to 00, compute the same way, and the check is 98 minus that result.
A virtual IBAN is one that a fintech (Wise, Revolut, N26) issues to a customer in a country the customer doesn't bank in. It validates mathematically as a real IBAN, accepts inbound transfers normally, and the fintech then routes funds to the customer's internal account. From the sender's perspective it looks like any other IBAN.
No. All validation runs in your browser via vanilla JavaScript. The IBAN never leaves the page; no requests are made to any server. You can confirm this by opening your browser's network tab.
Per ISO 13616 the maximum is 34 characters. Each country fixes its own length within that limit: Malta is 31, Norway is 15, Germany is 22, UK is 22. The tool validates against a built-in country-length table.
Spaces are stripped before validation — you can paste with or without them. If you still get a failure, check for lookalike characters (capital-O versus zero, capital-I versus 1, capital-S versus 5) which are common bank-form OCR errors.
Not a single scheme. ASEAN central banks have built bilateral instant-payment links (PayNow-PromptPay Singapore-Thailand, etc.) and ASEAN Payment Connectivity is the umbrella framework, but there is no single "ASEAN IBAN." Each link uses the participating country's domestic identifier (mobile number, national ID).

Related News

You may be interested in these recent stories from our newsroom.

View all news →
Advertisement
Pre-footer · AD-W3 728 × 90

75 more free tools

Calculators, converters, security tools — no signup.