Italy adopted a 27-character IBAN that begins, unusually, with a letter immediately after the check digits. The BBAN pattern is ^[A-Z]{1}[0-9]{10}[A-Z0-9]{12}$: one letter, ten digits, then twelve alphanumeric characters.
Reading an Italian IBAN
The official registry example is IT60 X054 2811 1010 0000 0123 456 - a SWIFT registry test value, not anyone’s real account:
IT60- country code and IBAN check digitsX- the CIN, Italy’s single-letter domestic check character05428- the ABI code identifying the bank11101- the CAB code identifying the branch000000123456- the 12-character account number, zero-padded and possibly containing letters
The CIN: a check character with history
Italy’s domestic coordinate system (CIN + ABI + CAB + conto) predates SEPA, and the CIN is its integrity mechanism. It is calculated over the 22 characters that follow it, using different weight tables for odd and even positions, and the result maps to a letter A-Z. A validator that implements the Italian rules can verify the CIN independently of the IBAN MOD-97 checksum, giving Italian IBANs two layers of error detection. San Marino (SM) borrows this exact BBAN structure, which is why SM IBANs look like Italian ones with a different prefix and two extra characters of length difference handled by the same fields.
Domestic usage and SEPA
Italian invoices and utility forms still commonly print the coordinate fields separately, but since SEPA migration the IBAN is the only identifier banks accept for credit transfers. Italy is a full SEPA member, so IT IBANs work across the euro area for both transfers and direct debits.
Account numbers at Italian banks vary in length and are padded to 12 characters inside the IBAN; some legacy accounts genuinely contain letters, which is legal in this field. Remember that passing both the CIN check and the MOD-97 check still only proves the string is well formed. It does not prove the account exists, is open, or belongs to the person you think it does - that assurance comes from Verification of Payee name matching, now standard for euro payments.