IBAN validator

Validate an IBAN from any country, break down a Spanish account (bank, branch and check digits), turn a CCC into an IBAN and generate test IBANs.

One per line, up to 1000. Account numbers are not stored anywhere.

Waiting for input

Type an IBAN from any country or a 20-digit Spanish CCC.

How it works

How an IBAN is validated

An IBAN starts with a country code and two check digits, followed by the national account number (the BBAN). To check it, the first four characters are moved to the end, each letter becomes two digits (A = 10, B = 11… Z = 35) and the resulting number divided by 97 must leave a remainder of 1. The validator does that digit by digit, so it handles IBANs of up to 34 characters without losing precision, and before that it checks that the country uses IBAN and that the length is right for it: 24 in Spain, 27 in France, 22 in Germany.

Spanish accounts: the CCC

In Spain the BBAN is the old CCC: bank (4 digits), branch (4), two check digits and account number (10). Those two digits have their own formula, with weights 1, 2, 4, 8, 5, 10, 9, 7, 3 and 6, and the validator checks it too: an IBAN can be consistent on the outside and still carry a wrong account. Paste a 20-digit CCC and you get its IBAN.

The Generate tab creates Spanish IBANs with real bank codes and random accounts, with every check digit right, to fill test forms. Neither what you type nor what you generate is stored in the browser: an account number is financial data.

FAQ

What is the difference between IBAN and CCC?

The CCC is the 20-digit Spanish account code: bank, branch, two check digits and account number. The IBAN puts the country (ES) and two international check digits in front, and it is the format used since SEPA.

Does a valid IBAN mean the account exists?

No. The check digits only catch typing mistakes. Whether the account exists, and whose it is, can only be confirmed by the bank.

↑ ↓ to move, Enter to open, Esc to close

Keyboard shortcuts

Ctrl K/
Search tools
c
Copy the main result
1 … 9
Switch tab
?
Show this help