Guide pratiche

Validazione P.IVA in Tempo Reale: VIES, Inserimento, Errori Evitati

Inseriscono P.IVA "01234567890" (10 cifre, errata). Te ne accorgi solo quando SDI rifiuta la fattura. Vediamo come validare P.IVA al momento dell'inserimento.

Team Ingenia 09 May 2026
Validazione P.IVA in Tempo Reale: VIES, Inserimento, Errori Evitati

Operatore inserisce nuovo cliente, scrive P.IVA: "01234567890". 10 cifre. Salva. Settimane dopo, fattura emessa, SDI la rifiuta: "P.IVA non valida". Cliente non riceve fattura, contestazione, ritardo pagamento. Tutto evitabile con validazione real-time al momento dell'inserimento.

I 3 livelli di validazione P.IVA

1. Formato

P.IVA italiana: 11 cifre esatte.

Validation: regex semplice /^\d{11}$/. Blocca subito errori grossolani.

2. Check digit (ISO 7064)

L'undicesima cifra è calcolata dalle prime 10 con algoritmo specifico:

  • Somma cifre dispari posizione (1-3-5-7-9).
  • Doppio cifre pari posizione (2-4-6-8-10), somma cifre risultanti.
  • Somma totale modulo 10 → cifra di controllo.

"01234567890" fallisce questo check (cifra 11 non corrisponde). Sistema rifiuta immediatamente.

3. Esistenza reale (VIES)

VIES (VAT Information Exchange System): servizio UE per verificare P.IVA.

API gratuita: invii P.IVA italiana o europea, ricevi:

  • P.IVA esiste? Sì/No.
  • Ragione sociale registrata.
  • Indirizzo registrato.
  • Stato (attiva/cessata).

Validation più rigorosa: blocca P.IVA formalmente corrette ma cessate o mai esistite.

Validation italian + UE

Per clienti UE non italiani:

  • Prefisso paese (DE, FR, ES, ecc.) + numero variabile.
  • VIES verifica anche queste.
  • Importante per fatturazione intracomunitaria (reverse charge).

Cosa succede senza validazione

ErroreConseguenza
P.IVA 10 cifre invece di 11SDI rifiuta fattura
Check digit erratoSDI rifiuta fattura
P.IVA cessataSDI rifiuta + sanzione fiscale potenziale
P.IVA fittiziaFrode involontaria

Costo medio fattura rifiutata: 50-200 € in tempo + ritardo incasso.

UX validation real-time

Best practice in modulo Anagrafiche:

Durante digitazione

  • Counter cifre: "10/11".
  • Colore campo: rosso se non valido, verde se valido.

Al blur del campo (uscita)

  • Validation check digit.
  • Eventuale chiamata VIES (con loader).
  • Toast con risultato: "P.IVA verificata su VIES" o "Cessata, controlla".

Auto-completamento

Se VIES restituisce ragione sociale + indirizzo, suggerisci di auto-completare i campi anagrafica.

Casi limite

P.IVA pubblica amministrazione

Pubblica amministrazione ha P.IVA + Codice IPA. Validation entrambi.

Privati senza P.IVA

Solo Codice Fiscale. Validation algoritmo CF (16 caratteri).

Aziende estere extra-UE

VIES non copre. Validation solo formato e manuale.

Nuove aziende

P.IVA appena registrata può non essere ancora in VIES. Caching VIES per evitare false negative.

Configurazione strict vs warning

Modalità strict

P.IVA invalida: blocca salvataggio. Operatore deve correggere.

Adatto a aziende con disciplina forte.

Modalità warning

P.IVA invalida: avvertimento, ma permette salvataggio. Flag "anagrafica da verificare".

Adatto a aziende con casistica complessa (es. dati arrivati incompleti, da completare dopo).

I moduli Gestya correlati

Scopri Gestya con validation P.IVA real-time.

Pronto a trasformare il tuo business?

Raccontaci il tuo progetto. Ti risponderemo entro 24 ore.