Explanatory diagram

An IBAN (International Bank Account Number) is the global standard for identifying bank accounts in cross-border payments. Developed in the 1990s and now used in 89 countries, it lets banks route transfers automatically and catch typos before money moves.

The three parts

PartLengthExample (DE89 3704 0044 0532 0130 00)
Country code2 lettersDE = Germany
Check digits2 digits89: mod-97 checksum
BBANup to 30 chars37040044 0532013000: bank + account

Why the check digits matter

The two check digits are computed with the mod-97 algorithm (ISO 13616). They catch virtually every common error: single wrong digits, swapped neighbors, missing characters. That is why banks ask you to double-check the IBAN rather than the account number: the IBAN checks itself.

IBAN lengths vary a lot

There is no single IBAN length: Norway uses 15 characters, Belgium 16, Germany and the UK 22, France and Italy 27, Malta 31, and Saint Lucia 32. Always use the exact length for the destination country: our validator checks this automatically.

IBAN vs account number

Your domestic account number works inside one country’s system. The IBAN wraps it in an international envelope (country + checksum) so any bank worldwide can parse and verify it. The underlying account is the same.

Try it

Generate a test IBAN to see the structure live, or validate one you received.

Read a complete example

The German documentation example DE89 3704 0044 0532 0130 00 contains 22 characters when spaces are removed. DE is the country prefix, 89 contains the international check digits, and the rest is the national account structure, or BBAN. In Germany that national part contains an eight-digit bank code followed by a ten-digit account component.

Spaces make the printed number easier to read. The electronic representation is DE89370400440532013000. The example illustrates structure and must not be used as a payment destination.

Different countries use different layouts

A UK IBAN has 22 characters and includes bank letters, a sort code and an account component. A French IBAN has 27 characters and includes bank and branch fields, an alphanumeric account field and a national RIB key. A Norwegian IBAN has 15 characters. Do not validate all countries using one fixed length or a digits-only national pattern.

What happens when you validate one?

A basic local validator recognizes the prefix, checks the exact country length, checks the national character pattern and evaluates MOD-97. These rules are useful for catching entry errors. They do not confirm that the bank code is current, the account is open, or the beneficiary name matches.

Additional checks may be available from your bank or payment service. Their coverage varies, so read what a “verified” or “valid” result actually means. Our browser tool provides structural checks and does not perform account-owner verification.

Where your own IBAN comes from

Your account-servicing bank provides or confirms the IBAN for your account. Look in that account’s details screen or bank statement, and contact the bank if it is unclear. A card number is a different identifier. Randomly generated samples are useful for software tests but cannot create an account or replace receiving instructions.

How developers should store it

Use a text field, retain leading zeroes, and normalize presentation spaces consistently. Keep validation failures separate from payment failures. A value accepted by a form can still be rejected later by bank-directory checks, a provider’s supported-country rules or recipient verification.

Sources and scope

Swift: national IBAN formats and registration authority.

Examples and test matrices are explanatory fixtures, not receiving instructions. This page covers format checks and software testing. It does not verify account ownership or provide a guarantee that a payment will succeed.

Technical notes updated 8 October 2026. Read the editorial policy. Send a correction.