Spain IBAN validator

How the IBAN format works

Format
ES + 2 check digits + 20-digit bank/branch/check/account number (24 chars)
Example
ES9121000418450200051332

Things to watch for

  • 24 characters total, all numeric
Regex for IBAN
^ES[0-9]{2}[0-9]{20}$

A Spanish IBAN is 24 characters, entirely numeric after the country code: “ES”, two check digits, a 4-digit bank code (entidad), a 4-digit branch code (oficina), 2 domestic control digits, and a 10-digit account number (cuenta), all concatenated with no spaces in the machine-readable form. Those 2 control digits are a holdover from Spain’s pre-IBAN CCC (código cuenta cliente) format, which had its own internal check value long before IBAN existed — meaning a Spanish account number effectively carries two layers of error detection, one domestic and one from the IBAN’s own mod-97 checksum. Anyone paying a Spanish supplier, landlord, or freelancer, or filling in a payment form that asks for an IBAN instead of the older CCC format, needs all 24 digits correct and in the right segment.

How this validator works

This tool checks the “ES” prefix, confirms the entidad block is 4 digits, the oficina block is 4 digits, the control-digit block is 2 digits, and the account block is 10 digits, then runs the real mod-97 checksum (ISO 7064) Spanish banks use to generate a valid IBAN — entirely client-side in your browser, no signup, nothing sent to a server.

What a pass doesn’t tell you

A pass confirms the 24 digits are correctly formed and internally consistent — not that the account is open, active, or belongs to the person you expect. This tool doesn’t resolve the entidad code to a bank name and never contacts Banco de España, a commercial bank, or any clearing system. If a Spanish IBAN converted from an old CCC number fails, check first that the entidad, oficina, control, and cuenta segments weren’t merged or reordered during the conversion — that boundary is the most common source of error.

Scope: Spanish IBAN structure and mod-97 checksum validation only — not payment processing, entidad-to-bank-name lookup, or confirming an account is active, none of which a client-side check can establish. Use this validator to catch a typo before a transfer fails; use your bank to confirm the account itself.

Content last reviewed 2026-07-07.

IBAN FAQ

What do the 20 digits after the check digits mean in a Spanish IBAN?

They break into four Spanish-specific segments: a 4-digit bank code (entidad), a 4-digit branch code (oficina), 2 domestic control digits (dígitos de control), and a 10-digit account number (número de cuenta) — 24 characters total, all numeric, for example ES9121000418450200051332.

Are the 2 'control digits' the same as the IBAN's own check digits near the start?

No, they're separate. The 2 control digits sit deep inside the account number segment and are Spain's own domestic check value from the pre-IBAN CCC (código cuenta cliente) system, layered underneath the mod-97 check digits that immediately follow 'ES' at the start of the IBAN — so a Spanish account effectively has two independent check mechanisms.

Does this tool independently re-verify Spain's internal control digits?

This tool runs the IBAN-level mod-97 (ISO 7064) checksum. It does not separately recompute Spain's internal CCC control-digit algorithm as a distinct step, and it doesn't confirm the account is open or belongs to anyone — that requires your bank or Banco de España.

← More IBAN validators