Search

e-invoicing in Italy

Italy

Regional spotlight

Formats? Mandates?
We've got you covered!

  • Overview of B2G, B2B and B2C e-invoicing in Italy.
  • Key formats, networks and channels you may need to support.
  • High-level regulatory and compliance considerations.

Read the Regional spotlight

Italy has one of Europe’s most advanced e-invoicing systems. B2G e-invoicing has been mandatory since 2015, B2B/B2C e-invoicing became mandatory for all VAT-registered businesses in January 2019, and flat-rate taxpayers were brought in from 2024. Italy’s EU authorisation for mandatory e-invoicing through SDI runs until 31 December 2027. All domestic invoices must flow through the SDI (Sistema di Interscambio), Italy’s centralised clearance platform managed by the Revenue Agency (Agenzia delle Entrate), and since July 2022 cross-border invoices must also be reported to it.

Italy requires setup on both sides before any Italian company can send or receive invoices through Maventa. Contact Maventa support to configure your vendor key for sending to SDI, and ensure the Italian company has registered Maventa as their e-invoicing operator in their SDI account.

Italy company account registration

When registering a new Italian company via the API, the fiscal code or VAT number (Partita IVA / P.IVA) must be used as the company identifier. At the moment, company registration requires the vendor to have KYC approval from Maventa. Contact Maventa support to get started.

Identifier Description Format Validation
Codice Fiscale Italian fiscal code XXXXXXXXXXXXXXXX Structural validation
Partita IVA Italian VAT identifier IT12345678901 Structural validation via VIES

Sending in Italy

SDI reporting and delivery

To start using Maventa as the e-invoicing operator through SDI, the Italian company must register Maventa’s Codice Destinatario (operator code) in the SDI portal:

61M0PS7

All invoices sent through Maventa for Italian companies are reported to SDI in the FatturaPA format — the official XML format mandatory for all transactions through SDI. Send Italian invoices to Maventa in FatturaPA (see Formats you need to support). When SDI accepts the invoice, Maventa marks it as SENT immediately. However, SDI validates invoices in the background, so an invoice can still fail after it has been marked as SENT.

Domestic invoices are routed to SDI by Maventa — the sender does not need to take any additional steps. SDI acts as the clearance and delivery platform, validating the invoice and handling forwarding to the recipient. No other delivery channel is used for domestic B2B traffic.

B2G and B2C invoices are not currently supported. Invoices to Italian public administrations must carry a qualified electronic signature (CAdES or XAdES) before they are sent to SDI, and Maventa does not currently sign invoices. Invoices to consumers are not yet supported either. Contact Maventa if you need either flow.

Cross-border invoices are first reported to SDI (mandatory since July 2022). Once SDI confirms the invoice has passed validation — which can take hours or even a few days — Maventa sends the invoice to the recipient through standard routing. This means the invoice is delivered via the best available channel — internal Maventa network or Peppol — based on the recipient’s capabilities. Email and print delivery are also available if these fallback routes are enabled on the sender account.

Addressing the recipient

SDI routes every invoice by the recipient code (CodiceDestinatario) in the FatturaPA header. Set the recipient code and the transmission format (FormatoTrasmissione) in the FatturaPA you send to Maventa according to the recipient:

Recipient CodiceDestinatario FormatoTrasmissione Identifier scheme
Italian company (B2B) The recipient’s 7-character Codice Destinatario FPR12 0205
Italian company without a recipient code 0000000; add the buyer’s PEC address in PECDestinatario if it has one FPR12 —
Foreign (non-Italian) recipient XXXXXXX FPR12 —

For a foreign (non-Italian) recipient, XXXXXXX (the letter X seven times) is the standard SDI convention for recipients that have no Italian destination code. It tells Maventa to report the invoice to SDI and then deliver it cross-border through the best available channel (internal network or Peppol).

Never put a Peppol identifier (such as 0211:IT12345678901) in CodiceDestinatario. SDI accepts only a 7-character recipient code, 0000000, or XXXXXXX, and rejects the invoice otherwise.

SDI outcomes

SDI validates invoices in the background, and responses can take hours or even a few days to arrive. SDI returns one of three outcomes:

Outcome Meaning
Delivered SDI delivered the invoice to the recipient.
Rejected (scarto) The invoice failed SDI’s checks and is not issued. Correct it and send it again within 5 days of the rejection.
Not delivered (mancata consegna) SDI could not reach the recipient’s channel, but the invoice is legally issued. The buyer can find it in their reserved area of the Revenue Agency’s portal.

Maventa currently reports both rejection and non-delivery by setting the invoice status to error and notifying the sender via webhooks. Check the error message before resending: resending an invoice that was not delivered issues it twice.

Email and print delivery

Email and postal delivery (printing) are available as fallback delivery channels for cross-border invoices when enabled on the sender account. For domestic traffic, SDI handles all delivery — email and print are not used.

Receiving in Italy

Receiving in Italy is handled via SDI.

Receiving addresses for Italian companies

Address Type Description Example address Activation Requirement
Codice Destinatario 7-character recipient code for B2B routing through SDI 1234567 Provided by recipient; used as SDI routing code

Peppol registration is not currently available for Italian companies. An Italian company cannot be registered as a Peppol receiver through Maventa, so it cannot receive invoices from foreign suppliers over Peppol. Contact Maventa if you need it.

For step-by-step instructions on enabling receiving, see the invoice receiving integration guide.

When an Italian company receives an invoice from a foreign supplier, it must report the purchase to SDI with a TD17, TD18, or TD19 document by the 15th of the following month. Maventa does not create these documents; the buyer handles the reporting.

Archiving is the customer’s responsibility. Italian e-invoices must be kept in compliant electronic preservation (conservazione) for 10 years. Storage in SDI does not count. The Revenue Agency offers taxpayers a free preservation service.

Formats you need to support

An Italian invoice carries data that a standard Peppol BIS invoice cannot fully represent, such as the SDI recipient code, the transmission format, and Italian tax and payment details.

To serve Italian customers, your integration must support FatturaPA. Peppol BIS Billing 3.0 alone is not enough: send invoices from Italian companies to Maventa in FatturaPA, and download invoices received through SDI in FatturaPA to get all the invoice data.

Format API format code Notes
FatturaPA 1.2 FATTURAPA12 Italian national standard. Mandatory XML format for all transactions through SDI. Use it for sending and receiving.
Peppol BIS Billing 3.0 PEPPOLBIS30 EN16931. Used for sending cross-border over Peppol.

Use the format code as the return_format parameter when downloading a received invoice with GET /v1/invoices/{id}.

Italy also has a national Peppol BIS variant defined by AgID (CIUS-IT). Maventa does not currently support it for Italian invoices. Contact Maventa if you need it.

Back to top