Il carattere di controllo del codice fiscale: come si calcola

L’ultima lettera del codice fiscale è un checksum: tabelle dei valori pari e dispari, somma, modulo 26 ed esempio di calcolo completo.

La sedicesima e ultima lettera del codice fiscale non contiene informazioni anagrafiche: è un carattere di controllo (checksum) calcolato sugli altri 15. Serve a intercettare errori di battitura o trascrizione: cambia un solo carattere e, quasi sempre, il controllo non torna più. È lo stesso meccanismo usato dallo strumento di verifica.

Il procedimento in tre mosse

La tabella dei valori

Per le posizioni pari la regola è semplice: le cifre valgono se stesse (0→0 … 9→9) e le lettere valgono la loro posizione nell’alfabeto partendo da zero (A→0, B→1, … Z→25). Per le posizioni dispari i valori seguono invece una tabella “irregolare” fissata dal decreto: A e 0 valgono 1, B e 1 valgono 0, C e 2 valgono 5, e così via. La tabella completa dei valori dispari è riportata nella pagina di verifica.

Esempio: RSSMRA80A01H501 → U

Prendiamo i 15 caratteri RSSMRA80A01H501. Le posizioni dispari sono R, S, R, 8, A, 1, 5, 1; quelle pari S, M, A, 0, 0, H, 0. Applicando le due tabelle, la somma dei valori dà un totale il cui resto diviso 26 è 20: la ventunesima lettera dell’alfabeto (contando A come 0) è la U. Il codice completo è quindi RSSMRA80A01H501U.

Cosa NON garantisce il carattere di controllo

Un checksum corretto dice solo che il codice è formalmente coerente: non garantisce che appartenga a una persona reale, né che sia il codice ufficialmente attribuito (potrebbe esistere una variante per omocodia). Inoltre alcuni errori doppi possono, per pura coincidenza, produrre ancora un checksum valido. Per l’esistenza reale del codice fa fede solo l’Agenzia delle Entrate.

Importante: il codice fiscale ufficiale è attribuito esclusivamente dall’Agenzia delle Entrate. Il calcolo qui proposto applica l’algoritmo ministeriale (D.M. 23/12/1976) ed è corretto nella quasi totalità dei casi, ma in presenza di omocodia l’Agenzia assegna un codice modificato. Per usi ufficiali verifica sempre il codice sulla tessera sanitaria o presso l’Agenzia delle Entrate.

Domande frequenti

Perché le posizioni dispari hanno valori così strani?

La tabella è stata definita nel D.M. del 1976 proprio per rendere il controllo più sensibile agli errori tipici di trascrizione: valori “mescolati” intercettano più scambi e sostituzioni rispetto a una numerazione lineare.

Nei codici con omocodia il controllo si calcola sulla forma modificata?

Sì: dopo la sostituzione delle cifre con le lettere omocodiche, il carattere di controllo viene ricalcolato sui nuovi 15 caratteri.

Due codici diversi possono avere lo stesso carattere di controllo?

Certo: le lettere finali possibili sono solo 26, quindi codici diversi condividono spesso lo stesso checksum. Il controllo serve a validare un singolo codice, non a distinguerli.

Altre guide