Italy’s SdI / FatturaPA e-invoicing mandate, explained
Since 1 January 2019, Italy has required structured electronic invoices for domestic B2B and B2C transactions between Italian VAT-registered parties — the first country in the EU to make broad e-invoicing mandatory. A PDF emailed to the buyer is not enough: the invoice has to be a machine-readable XML document in the FatturaPA format and passed through the government’s Sistema di Interscambio (SdI), operated by the tax authority Agenzia delle Entrate. Italy uses a clearance model: every invoice is routed, validated, and delivered by a central government system rather than sent directly between trading partners.
What the mandate requires
For in-scope transactions, the supplier must issue the invoice in the FatturaPA XML schema and transmit it to the SdI. The SdI checks the file against technical and formal rules, and — if it passes — delivers it to the recipient and returns a delivery (or non-delivery) receipt to the sender; an invoice that the SdI rejects is treated as not issued. “Structured” means the invoice data lives in the defined XML model, not pixels in a PDF and not a flat image. Late or non-compliant issuance is subject to penalties set by Italian law — confirm the current amounts and grace conditions with the authority, as they depend on the breach and on how quickly it is corrected.
Who is in scope
The mandate covers Italian VAT-registered businesses invoicing domestically, for both B2B and B2C. B2G e-invoicing through the SdI came first, back in 2014. The big 2024 change removed the last size-based carve-out: from 1 January 2024, small flat-rate taxpayers under the regime forfettario (and other formerly exempt micro-entities) are fully in scope. Because the boundaries — non-established suppliers, exempt flows, and edge cases — are defined in law and updated by the Agenzia delle Entrate, treat the summary above as orientation, not a determination: check your specific situation with the authority or your accountant.
Cross-border transactions
Since 1 July 2022, cross-border sales and purchases are also reported through the SdI in the FatturaPA format using dedicated transaction-type codes (the esterometro separate report was abolished). So a business trading with foreign counterparties still produces FatturaPA files and routes the reporting data through the same government platform, even when the foreign party itself is outside the Italian system. The EU has authorised Italy to keep mandating the SdI through 31 December 2027.
FatturaPA vs EN 16931 — the honest gap
This is the part that trips up tooling. FatturaPA is Italy’s own national XML schema, and it predates the European standard. It carries broadly the same commercial content and is semantically aligned with EN 16931, but it is not the same syntax: a FatturaPA file is not a UBL or CII document, and an EN 16931 UBL/CII invoice is not, by itself, a valid FatturaPA file for the SdI. Producing a correct EN 16931 core invoice and producing a FatturaPA file the SdI will accept are two different jobs. See what EN 16931 is for the core model and the UBL vs CII syntaxes.
Where Slipstack fits — and where it does not
Be clear-eyed about Italy specifically: Slipstack is on the EN 16931 side of the line, and Italy’s domestic mandate runs on FatturaPA + the SdI. From one JSON call Slipstack can:
- Generate an EN 16931 core invoice in UBL or CII syntax, or a Factur-X / ZUGFeRD PDF with the XML embedded — useful for EN 16931 / Peppol flows and for the rest of your invoicing, not for FatturaPA itself.
- Validate the EN 16931 core business rules for free with the EN 16931 / XRechnung core validator.
What Slipstack does not do: it does not produce FatturaPA, it is not connected to the SdI or the Agenzia delle Entrate, and it does not clear, submit, or register invoices for the Italian mandate. For domestic Italian compliance you need a FatturaPA-native provider or accounting software wired into the SdI; Slipstack is the right tool when you also need clean EN 16931 invoices or want to validate the core rules first. For what a mandated routing platform is, see what is a PDP.
Related: France mandate · Germany mandate · Romania mandate · Belgium mandate · EN 16931 explained · What is a PDP.
Generate EN 16931 core invoices from one JSON call
Emit compliant UBL / CII XML or a Factur-X PDF, and validate the core rules for free first. For Italy’s domestic mandate, bring a FatturaPA / SdI provider for clearance.