Download Codice Fiscale

Tutto sul Codice Fiscale e la Partita IVA


Le informazioni presenti in questa pagina derivano da costruttive discussioni e contributi nati dal newsgroup it.comp.lang.visual-basic

Tutto il materiale qui presente è FREE, lo si può utilizzare e distribuire liberamente, nel rispetto dei termini imposti dai vari autori. Eventuali malfunzionamenti trovati o modifiche apportate a questo materiale dovrebbero essere segnalate all'autore o sul newsgroup.

CodFisc2.zip 198Kb Un progetto di esempio per il calcolo del Codice Fiscale, completo di database dei comuni (aggiornato al 1998).
Comuni_dbf.zip
Comuni_mdb.zip
75Kb
114Kb
Database in formato DBF e MDB (Access 2) di tutti i comuni d'italia aggiornato al 98. Molto utile per la costruzione del codice fiscale.
Stati.zip 13Kb Database in formato MDB (MS Access 7) di tutti gli stati esteri (aggiornamento sconosciuto)
(fornitore: Alessandro Scardova)
Codici_dbf.zip 192Kb Database in formato DBF di tutti i comuni d'Italia (aggiornamento sconosciuto) con anche il CAP (Codice di Avviamento Postale)


Algoritmo di calcolo del Codice Fiscale

  CCC NNN AA M GG L VVV K
  ||| ||| || | || | ||| |
  \|/ \|/ |/ | |/ \ \|/ |
   |   |  |  | |   \ |  |
   |   |  |  | |    \|  \- 1 lettera Calcolo algebrico dei 15 precedenti
   |   |  |  | |     \---- 4 Cifre ASSEGNATE al luogo di Nascita   
   |   |  |  | \---------- 2 cifre del Giorno della Data di Nascita  
   |   |  |  \------------ 1 lettera Mese della Data di Nascita
   |   |  \--------------- 2 ultime cifre dell'Anno della Data di Nascita
   |   \------------------ 3 lettere del Nome (prevalentemente consonanti)
   \---------------------- 3 lettere del Cognome (prevalentemente consonanti)
                          ----
                           16

Il significato dettagliato delle singole componenti e' il seguente:


CCC NNN AA M GG L VVV K
^^^
Tre caratteri alfabetici maiuscoli della prima, seconda e terza (1',2',3') consonante del Cognome.
Se le consonanti per il Cognome fossero meno di tre, aggiungere le vocali nello stesso ordine in cui si presentano.
Se l'intero Cognome fosse piu' corto di tre caratteri, aggiungere una X per ogni carattere mancante.
Per le donne coniugate considerare solo il Cognome da nubile.
Nei Cognomi composti da piu' parti, gli spazi intermedi non vanno considerati
( es. De Rossi D'Aquino sara' DEROSSIDAQUINO ).


CCC NNN AA M GG L VVV K
    ^^^
Tre caratteri alfabetici maiuscoli della prima, terza e quarta (1',3',4') consonante del Nome.
Se le consonanti per il Nome fossero solo tre, le si prendono nell'ordine in cui si presentano.
Se le consonanti fossero meno di tre, aggiungere le vocali nello stesso ordine in cui si presentano.
Se l'intero Nome fosse piu' corto di tre caratteri, aggiungere una X per ogni carattere mancante.
Nei Nomi composti da piu' parti, gli spazi intermedi non vanno considerati
( es. Antonia Maria Luisa sara' ANTONIAMARIALUISA )


CCC NNN AA M GG L VVV K
        ^^
Due caratteri numerici per l'anno di nascita, solo le unita' e le decine (le ultime due cifre)
(es. 1968 diventa 68)


CCC NNN AA M GG L VVV K
           ^
Un carattere alfabetico indicante il Mese della Data di Nascita Considerando questa tabella:
    A= Gennaio;   B= Febbraio; C= Marzo;    D= Aprile;
    E= Maggio;    H= Giugno;   L= Luglio;   M= Agosto;
    P= Settembre; R= Ottobre;  S= Novembre; T= Dicembre


CCC NNN AA M GG L VVV K
             ^^
Due caratteri numerici per il giorno di nascita. Per le donne, occore sommare al giorno di nascita 40.
es. uomo nati il 7/8/1968 = 07
    donna nata il 7/8/1968 = 47


CCC NNN AA M GG L VVV K
                ^ ^^^
Quattro caratteri alfanumerici.
Codice del Comune di nascita rilevato dai volumi dei Codici dei comuni di Italia e degli Stati esteri, redatti dalla Direzione generale del Catasto.
Esistono database che contencono la relazione Comune <-> Codice Catasto.


CCC NNN AA M GG L VVV K
                      ^
Un carattere alfabetico Carattere di controllo ottenuto convertemdo i singoli caratteri in posizione pari secondo i valori della Tabella [A], ed i caratteri in posizione dispari secondo i valori della Tabella [B].
Si sommano i valori ottenuti dalla conversione ed il totale lo si divide per 26.
Il resto della divisione lo si converte secondo la Tabella [C].


Quando l'espressione alfanumerica relativa ai primi quindici caratteri del codice risulta comune a due o piu' soggetti, si provvede a differenziarla per ciascuno dei soggetti successivi al primo codificato. A tal fine, si effettuano nell'ambito dei sette caratteri numerici contenuti nel codice sistematiche sostituzioni di una o piu' cifre a partire da quella di destra, con corrispondenti caratteri alfabetici secondo la seguente tabella [D].
(Non implementato nei files di esempio)


TABELLA [ A ] (caratteri in posizione pari)
 0=0  1=1  2=2  3=3  4=4  5=5  6=6  7=7  8=8  9=9
 A=0  B=1  C=2  D=3  E=4  F=5  G=6  H=7  I=8  J=9
 K=10 L=11 M=12 N=13 O=14 P=15 Q=16 R=17 S=18 T=19
 U=20 V=21 W=22 X=23 Y=24 Z=25

TABELLA [ B ] (caratteri in posizione dispari)
 0=1  1=0  2=5  3=7  4=9  5=13 6=15 7=17 8=19 9=21
 A=1  B=0  C=5  D=7  E=9  F=13 G=15 H=17 I=19 J=21
 K=2  L=4  M=18 N=20 O=11 P=3  Q=6  R=8  S=12 T=14
 U=16 V=10 W=22 X=25 Y=24 Z=23

TABELLA [ C ] (conversione del carattere di controllo)
 0=A  1=B  2=C  3=D  4=E  5=F  6=G  7=H  8=I  9=J
 10=K 11=L 12=M 13=N 14=O 15=P 16=Q 17=R 18=S 19=T
 20=U 21=V 22=W 23=X 24=Y 25=Z

TABELLA [ D ] (sostituzioni in caso di codice fiscale doppio)
 0=L  1=M  2=N  3=P  4=Q
 5=R  6=S  7=T  8=U  9=V


La Partiva IVA

E' costituito da undici cifre. Le prime sette sono il numero progressivo attribuito dall'ufficio IVA, le cifre dall'ottava alla decima sono il codice della provincia dove ha sedel'ufficio IVA competente, l'undicesima cifra è un carattere di controllo.
Prime sette cifre: sono attribuite dall'ufficio IVA e sono progressive. 8, 9 e 10a cifra: codice provinciale: necessario database contente i codici per tutte le provincie italiane.
Carattere di controllo: si prendono le cinque cifre di posizione dispari e si sommano. Poi si raddoppia ogni singola cifra di posizione pari, e se il risultato è superiore o uguale a 10 si riduce sommando la cifra delle decine a quella delle unità. Si sommano tutti questi risultati. Poi si determina il totale delle due somme di cui sopra (cifre di posizione pari e cifre di posizione dispari). Si prende la cifra delle unità di questo totale e la si sottrae da 10.
La cifra delle unità di questo risultato è il codice di controllo.

Esempio:
Ditta di Torino.
L'ufficio IVA assegna il numero progressivo 0123581.
Il codice di Torino è 001.
Fin qui : 0123581001

Calcolo cifra di controllo:
Cifre di posizione dispari: 0+2+5+1+0=8
Cifre di posizione pari: 1+3+8+0+1, che si raddoppiano diventando 2+6+16+2. 16 diventa 1+6=7 In definitiva, cifre di posizione pari: 2+6+7+2=17
Gruppo pari + gruppo dispari (8+17)=25 La cifra delle unità è 5, 10-5=5.
Dunque il numero di controllo è 5, e la partita IVA è: 01235810015.


Inizio