Validate FatturaPA invoices for Italy

FatturaPA is required in Italy. Italy was the first EU country to mandate B2B e-invoicing and runs the most mature clearance model in Europe.

Check a FatturaPA invoiceChecking is free. The tool detects the profile itself.

At a glance

FormatFatturaPA
MandateB2B mandatory
PeppolConnected

What we validate

FatturaPA v1.2 XML schema (XSD) compliance
FormatoTrasmissione value (FPA12 or FPR12)
Codice Destinatario format and registry lookup
IdFiscaleIVA (VAT number) structure validation
CodiceFiscale (tax code) format and consistency
Natura IVA codes for zero-rate lines (N1–N7)
Tax calculation accuracy (imponibile × aliquota)
Duplicate invoice detection (same number, year, type)
Bollo virtuale and cassa previdenziale rules
PEC or Codice Destinatario recipient routing

Common FatturaPA rejections

00200XML not conforming to FatturaPA schema
00305Invalid buyer VAT number (IdFiscaleIVA)
00311Invalid Codice Destinatario
00400Zero VAT rate without Natura code
00404Duplicate invoice already transmitted
00301Invalid seller VAT number (IdFiscaleIVA)
00306Invalid buyer tax code (CodiceFiscale)

Italy e-invoicing requirements

PhaseStatusScope
B2GLive (Jun 2014)All public administration suppliers
B2BLive (Jan 2019)All domestic transactions
B2CLive (Jan 2019)All domestic transactions
Flat-rate taxpayersLive (Jul 2022)Extended to forfettari regime
Validation engineSDI (Sistema di Interscambio)
Required CIUSFatturaPA 1.2.2
Routing identifierCodice Destinatario (7-char) or PEC address
PeppolYes — Peppol used for cross-border, SDI for domestic

Italy's SDI clearance model is the reference implementation for EU CTC systems, but it has integration patterns that differ from post-audit models.

FatturaPA FAQ

What is FatturaPA?
FatturaPA is Italy's electronic invoice format. Invoices between Italian-established parties — B2B, B2C and to public administration — are transmitted as FatturaPA XML through the SDI (Sistema di Interscambio), the tax authority's exchange system.
What is the Codice Destinatario?
The recipient routing code. For public administration it is the 6-character IPA office code. For private recipients it is a 7-character SDI channel code, "0000000" when the invoice goes to a PEC address or the channel is unknown, and "XXXXXXX" for foreign customers.
What does SDI error 00400 mean?
A line has a zero VAT rate but no Natura code. Italian rules require a Natura code (N1–N7, with sub-codes such as N2.2 or N4) to state why no VAT is charged.
Do I need to sign my FatturaPA?
For invoices to public administration, a qualified digital signature (CAdES or XAdES) is mandatory. For B2B and B2C invoices it is optional.
Is checking free?
Checking is free. The first verified download every 30 days is free. After that €1.90 per invoice, or €9 a month for all of them. Checking needs no account. You only pay when a file has passed the check and you download it.
Do you fix my invoice automatically?
No. We never change amounts, line items or taxes. Where mandatory details are missing, you supply them, we enter them and check the file again. If the export from your invoicing system is structurally broken, you get the error report for your software support, free of charge.
Where is my file checked, and is it stored?
On our servers, not in your browser. Your file is used only to check and fix your invoice and to deliver your result. Results are kept so you can download a verified file again for 90 days; validation logs are deleted after 90 days. You can request deletion at any time.

Read on

About FatturaPA →Italy e-invoicing guide →All validators →
Related