Omocodia: cos'è e perché alcuni codici hanno lettere al posto dei numeri
Se nel tuo codice fiscale trovi lettere dove ti aspetti delle cifre, non c'è nulla di sbagliato: si chiama omocodia ed è il modo in cui l'Agenzia delle Entrate distingue due persone con gli stessi dati.
Un codice fiscale omocodico è un codice in cui alcune cifre sono state sostituite da lettere, perché quello calcolato con le regole esisteva già. La guida spiega perché succede, come lo si riconosce e cosa conviene fare, mentre per vedere la sequenza delle sostituzioni di un codice qualsiasi c’è lo strumento sull’calcolo delle omocodie.
In parole semplici: quando due persone hanno lo stesso codice
L’omocodia nasce perché il codice usa pochi dati e ne riduce molti a poche lettere. Tre lettere del cognome e tre del nome non bastano a distinguere tutte le persone: due cognomi diversi possono avere le stesse tre consonanti iniziali, e lo stesso vale per i nomi. Se anche la data di nascita e il comune coincidono, il codice calcolato è identico.
Un esempio inventato lo mostra. Mario Rossi e Mario Rossetti, entrambi nati a Roma il 1° gennaio 1980, hanno cognomi diversi ma con le stesse consonanti iniziali, R, S, S. Applicando le regole, il codice di Mario Rossi è RSSMRA80A01H501U e quello di Mario Rossetti è RSSMRA80A01H501U: lo stesso codice, per due persone diverse.
L’Agenzia delle Entrate non può attribuire lo stesso codice a due persone. A quella che arriva dopo dà una variante con l’ultima cifra sostituita da una lettera e la lettera finale ricalcolata. Nell’esempio il secondo codice diventa RSSMRA80A01H50MM. Il primo resta quello base.
Come funziona la sostituzione
La sostituzione parte dalla cifra più a destra e prosegue verso sinistra. Le cifre sono sostituite con le lettere dalla L alla V, nell’ordine in cui compaiono: lo zero diventa L, l’uno M, il due N, il tre P, e così via fino al nove, che diventa V; la O non è usata. Le posizioni che possono cambiare sono sette: 7, 8, 10, 11, 13, 14 e 15, cioè tutte e sole quelle che contengono cifre. La lettera del mese, in nona posizione, non viene mai toccata: la sua tabella è nella guida sulle lettere dei mesi nel codice fiscale.
Ogni volta che una cifra viene sostituita, cambia il valore del carattere e cambia di conseguenza l’ultima lettera, che va ricalcolata. È per questo che un codice omocodico ha spesso, rispetto al codice base, anche la lettera finale diversa. Il calcolo è quello descritto nella pagina sul calcolo del carattere di controllo.
In teoria le combinazioni di sostituzioni possibili sono 128, perché ognuna delle sette cifre può essere sostituita o no. La sequenza prevista parte dall’ultima cifra e ne aggiunge una a sinistra a ogni nuova omocodia.
Come si riconosce un codice omocodico
Un codice è omocodico quando in una delle sette posizioni delle cifre c’è una lettera tra L, M, N, P, Q, R, S, T, U e V. Si riconosce a colpo d’occhio guardando la data e il comune: se dove ti aspetti un numero, come l’anno o il giorno di nascita, vedi una lettera, il codice ha subito una sostituzione.
La tabella mostra tre codici dello stesso gruppo: il codice base di Mario Rossetti e le sue prime due varianti.
| Passo | Codice | Cosa cambia |
|---|---|---|
| 0 | RSSMRA80A01H501U | Nessuna sostituzione: codice base |
| 1 | RSSMRA80A01H50MM | La cifra in posizione 15 diventa una lettera |
| 2 | RSSMRA80A01H5LMX | La cifra in posizione 14 diventa una lettera |
La lettera O non rientra tra quelle di omocodia: una O al posto di uno zero è un errore di battitura, non una variante, e il codice viene rifiutato.
Perché l’omocodia non è un difetto del sistema
Chi scopre per la prima volta l’omocodia tende a pensare a un difetto. In realtà è il prezzo di un codice breve, che si ricostruisce dai propri dati e non richiede un registro per essere interpretato. Un codice più lungo, o assegnato in ordine di iscrizione, non avrebbe collisioni, ma perderebbe la proprietà di poter essere calcolato da chiunque. L’omocodia ne è la conseguenza, e i suoi effetti pratici, nei casi normali, sono modesti.
La sequenza completa, passo per passo
La sequenza delle sostituzioni ha sette passi, uno per ogni cifra che può cambiare, più il codice base. Nella tabella, per il codice di Mario Rossetti, ogni riga aggiunge una sostituzione a quelle precedenti.
| Passo | Cifra sostituita | Codice |
|---|---|---|
| 0 | Nessuna | RSSMRA80A01H501U |
| 1 | Posizione 15 | RSSMRA80A01H50MM |
| 2 | Posizione 14 | RSSMRA80A01H5LMX |
| 3 | Posizione 13 | RSSMRA80A01HRLMS |
| 4 | Posizione 11 | RSSMRA80A0MHRLMK |
| 5 | Posizione 10 | RSSMRA80ALMHRLMV |
| 6 | Posizione 8 | RSSMRA8LALMHRLMG |
| 7 | Posizione 7 | RSSMRAULALMHRLMD |
L’ordine delle posizioni è 15, 14, 13, 11, 10, 8, 7: da destra verso sinistra, e comprende tutte e sole le posizioni che contengono cifre. Al settimo passo il codice ha lettere in tutte le posizioni che prima contenevano cifre.
Come verificare un codice omocodico con carta e penna
Per controllare a mano un codice omocodico si procede in tre passaggi: si riportano le lettere alle cifre, si legge il codice base come un codice normale e si ricalcola l’ultima lettera sul codice completo, con le lettere al loro posto. La corrispondenza tra cifre e lettere è questa.
| Cifra | Lettera |
|---|---|
| 0 | L |
| 1 | M |
| 2 | N |
| 3 | P |
| 4 | Q |
| 5 | R |
| 6 | S |
| 7 | T |
| 8 | U |
| 9 | V |
L’ultima lettera si ricalcola sul codice così com’è scritto, con le lettere nelle posizioni delle cifre: chi la ricalcola sul codice base ottiene la lettera del codice base, non quella del codice omocodico.
Se i documenti riportano due codici diversi
Può capitare di trovare, in documenti diversi, due codici che sembrano riferirsi alla stessa persona: uno con lettere e uno con sole cifre. Le cause possibili sono due. Una è la copia sbagliata, per cui la persona ha sempre avuto il codice omocodico e qualcuno ha scritto il codice base calcolandolo da sé. L’altra è un’attribuzione successiva, che richiede un chiarimento con l’Agenzia delle Entrate.
In entrambi i casi il riferimento è il certificato di attribuzione o la tessera sanitaria più recente. Per evitare problemi, conviene copiare il codice solo da quei documenti, e non ricalcolarlo.
Come spiegarlo a chi compila il modulo
Chi ha un codice omocodico si trova a volte a spiegarlo a un impiegato che non lo conosce. Basta dire che le lettere al posto delle cifre sono una procedura prevista dall’Agenzia delle Entrate, e che il codice va inserito così com’è, con la lettera finale che compare sulla tessera. Se il programma rifiuta il codice, si può chiedere di segnalare il problema a chi gestisce il sistema.
Per chi sviluppa software: gli errori più frequenti
I programmi che gestiscono il codice fiscale commettono quasi sempre gli stessi errori con l’omocodia. I più diffusi sono quattro.
- Accettare solo cifre nelle posizioni della data. Un’espressione regolare che usa soltanto cifre rifiuta i codici omocodici, e quindi rifiuta persone reali.
- Calcolare la lettera finale sul codice base. La lettera va ricalcolata sul codice come è scritto.
- Considerare uguali il codice omocodico e il suo codice base. I due codici appartengono a persone diverse: il codice base è di chi è arrivato prima, quello omocodico di chi è arrivato dopo. Per riconoscere la stessa persona, il codice va conservato così com’è.
- Usare la lettera O al posto della L. La O non è una lettera di omocodia; lo zero diventa la L.
Per provare un programma con codici omocodici serve un insieme di dati di prova, e il generatore di codici fiscali li produce in percentuale scelta.
Cosa cambia nella pratica
Nella vita di tutti i giorni un codice omocodico non cambia nulla: è il codice della persona, e va scritto così com’è sui moduli, sui contratti e nelle dichiarazioni. Chi lo ha sulla tessera sanitaria deve usare quello, e non quello che si ottiene calcolandolo con i propri dati.
La differenza si nota quando si usa un calcolatore. Chi ha un codice omocodico e lo calcola con un programma ottiene il codice base, diverso da quello ufficiale. Non è un errore del programma: il calcolo non può sapere che il codice base risultava già assegnato a un’altra persona.
Qualche problema in più si incontra con i moduli online progettati male, che accettano soltanto cifre nelle posizioni della data. In quel caso conviene scrivere all’assistenza, indicando che il codice è omocodico: è una forma regolare e il modulo va corretto.
Perché una persona può accorgersene tardi
Molte persone scoprono di avere un codice omocodico soltanto quando un servizio lo rifiuta o quando confrontano il codice con quello calcolato da un sito. Succede perché, di solito, il codice si legge dalla tessera e si copia senza fare altro. Se il codice viene sempre copiato dalla tessera, l’omocodia non crea alcun disagio.
Per leggere i dati contenuti in un codice omocodico, data di nascita compresa, si può usare lo strumento di leggere i dati contenuti nel codice: riporta le lettere alle cifre e mostra in quali posizioni c’erano. Per controllare la correttezza formale c’è la validare il codice fiscale.
Le regole generali che producono il codice base si trovano nella guida su come si calcola il codice fiscale, e i casi di chi è nato all’estero, dove l’omocodia segue le stesse regole, in quella sul codice fiscale per stranieri.
Domande frequenti
Cosa vuol dire omocodia?
Il termine richiama l'idea di «stesso codice»: due persone che, applicando le regole, otterrebbero lo stesso codice fiscale. Per distinguerle, a una delle due viene attribuito un codice con alcune cifre sostituite da lettere.
Chi riceve il codice omocodico, il più giovane?
Chi viene iscritto dopo, quando il codice base risulta già assegnato. Non dipende dall'età né da altre caratteristiche della persona.
L'omocodia è un errore?
No. È una procedura prevista dalle regole, e il codice omocodico è il codice ufficiale della persona, valido in ogni circostanza.
Posso evitare o cambiare il codice omocodico?
No: il codice viene attribuito dall'Agenzia delle Entrate e non si può scegliere. Quello che si può fare è conoscerlo e usarlo esattamente come è scritto.
Come si calcola il codice base di un codice omocodico?
Si sostituiscono le lettere con le cifre corrispondenti e si ricalcola l'ultima lettera. Lo strumento sull'omocodia lo fa in un passaggio e mostra tutte le varianti.