Skip to content
IBANforge
IBAN by country

Spain IBAN

24 characters: the country code, two check digits, then the BBAN cut as below.

Anatomy of the official example

ES9121000418450200051332

  • Country code
  • Check digits
  • Bank code
  • Branch code
  • Account number

The example comes from the ISO 13616 registry; it belongs to nobody. Positions count from the first character of the IBAN.

The facts about the Spain IBAN
ISO codeES
Length24 characters
Check digitspositions 3 to 4, ISO 7064 mod 97-10
Bank codepositions 5 to 8 · 4!n
Branch codepositions 9 to 12 · 4!n
Account numberpositions 13 to 24 · 12!n
Official exampleES91 2100 0418 4502 0005 1332
SEPA areamember · SCT, SDD, SCT Inst
Verification of Payeemandatory for the country's providers
Bank-code registerIBANforge composite map, assembled from BIC directories (not a national register)

SWIFT notation: n = digits, a = upper-case letters, c = alphanumeric characters; the exclamation mark fixes the exact length.

What the API checks on a Spain IBAN

  • The length, the charset of every field and the mod-97 check digits.
  • The bank code against our composite map assembled from BIC directories: a BIC and a bank name when they are listed, without the weight of a national register.
  • The country's SEPA reachability and the open schemes (SCT, SDD, SCT Inst).
  • The Verification of Payee duty that does, or does not, bind the country's providers.

What the API answers for this code

The block below is the route's own answer, produced by the same code that serves api.ibanforge.com, on the register as of the date shown. Nothing is edited.

{
  "valid": true,
  "country": {
    "code": "ES",
    "name": "Spain"
  },
  "bic": {
    "code": "CAIXESBB",
    "bic8": "CAIXESBB",
    "bank_name": "CAIXABANK SA",
    "city": "Valencia",
    "source": "IBANforge curated bank-code map",
    "as_of": "2026-09",
    "basis": "curated_map",
    "authoritative": false,
    "lei": "7CUNS533WID6K7DGFI87"
  },
  "bank_code_check": {
    "value": "2100",
    "status": "verified",
    "match": "register",
    "register": "IBANforge composite bank-code map (assembled from BIC directories, not a national bank-code register)",
    "authoritative": false,
    "as_of": "2026-09"
  },
  "sepa": {
    "member": true,
    "schemes": [
      "SCT",
      "SDD",
      "SCT_INST"
    ],
    "vop_required": true,
    "vop_participant": true,
    "basis": "epc_register"
  },
  "issuer": {
    "type": "bank",
    "name": "CAIXABANK SA",
    "classification": "default"
  },
  "risk_indicators": {
    "country_risk": "standard",
    "sepa_reachable": true,
    "vop_coverage": true,
    "test_bic": false
  }
}
Test a Spain IBAN for freeAudit a whole creditor fileThe POST /v1/iban/validate routeAll countries

Source: ISO 13616 registry for the length, layout and example; API answer captured on 2026-09-23.