Install the following modules to get all the features of the Italian localization:


Technical name


Italy - Accounting


Default fiscal localization package

Italy - E-invoicing


e-invoice implementation

Italy - E-invoicing (SdiCoop)


Web service e-invoice implementation

Italy - Accounting Reports


Country-specific reports

Italy - Stock DDT


Transport documents - Documento di Trasporto (DDT)


Once the l10_it_edi_sdicoop module is installed, sending invoices via PEC mails is no longer possible.

Italian localization modules

Company information

Configuring the company’s information ensures your Accounting database is properly set up. To add information, go to Settings ‣ General Settings, and in the Companies section, click Update info. From here, fill out the fields:

  • Address: the address of the company;

  • VAT: VAT of the company;

  • Codice Fiscale: the fiscal code of the company;

  • Tax System: the tax system under which the company falls;

  • PEC address email: the certified email address of the company.

Company information to provide

PEC mail

The PEC email is a specific type of certified email providing a legal equivalent to the traditional registered mail. The PEC email of the main company must be the same as the one registered by the Agenzia delle Entrate authorities.


The SdI is the electronic invoicing system used in Italy. It enables to send and receive electronic invoices to and from customers. The documents must be in XML format and formally validated by the system before being delivered.

To be able to receive invoices and notifications, the SdI service must be notified that the user’s files are to be sent to Odoo and processed on their behalf. To so, you must set up Odoo’s Codice Destinatario on the Agenzia Delle Entrate portal.

  1. Go to and authenticate;

  2. Go to section Fatture e Corrispettivi;

  3. Set the user as Legal Party for the VAT number you wish to configure the electronic address;

  4. In Servizi Disponibili ‣ Fatturazione Elettronica ‣ Registrazione dell’indirizzo telematico dove ricevere tutte le fatture elettroniche, insert Odoo’s Codice Destinatario K95IV18, and confirm.

Electronic Data Interchange (EDI)

Odoo uses the FatturaPA EDI format for the Italian localization and is enabled on the default journals when installed. When the file processing authorization has been set, all invoices and bills are automatically sent.

You can check the current status of an invoice by the Electronic invoicing field. The XML file can be found in the chatter of the invoice.

Electronic invoicing status (waiting for confirmation)

File processing authorization (Odoo)

Since the files are transmitted through Odoo’s server before being sent to the SdI or received by your database, you need to authorize Odoo to process your files from your database. To do so, go to Accounting ‣ Configuration ‣ Settings ‣ Electronic Document Invoicing.

There are three modes available:


This mode simulates an environment in which invoices are sent to the government. In this mode, invoices need to be manually downloaded as XML files and uploaded to the Agenzia delle Entrate’s website.

Test (experimental)

This mode sends invoices to a non-production (i.e., test) service made available by the Agenzia delle Entrate. Saving this change directs all companies on the database to use this configuration.


This is a production mode that sends your invoices directly to the Agenzia delle Entrate.

Once a mode is selected, you need to accept the terms and conditions by ticking Allow Odoo to process invoices, and then Save. You can now record your transactions in Odoo Accounting.


Selecting either Test (experimental) or Official is irreversible. Once in Official mode, it is not possible to select Test (experimental) or Demo, and same for Test (experimental). We recommend creating a separate database for testing purposes only.


When in Test (Experimental) mode, all invoices sent must have a partner using one of the following fake Codice Destinatario given by the Agenzia Delle Entrate: 0803HR0 - N8MIMM9 - X9XX79Z. Any real production Codice Destinario of your customers will not be recognized as valid by the test service.

Italy's electronic document invoicing options

Taxes configuration

Many of the e-invoicing features are implemented using Odoo’s tax system. As such, it is very important that taxes are properly configured in order to generate invoices correctly and handle other billing use cases. For example, specific configurations are required for the reverse charge type of taxes. In case of a reverse charge tax, the seller does not charge the customer for the VAT but, instead, the customer pays the VAT themselves to their government. There are two main types:

External reverse charge


To make an export invoice, make sure that the invoice lines all use a tax configured for reverse charge. The Italian localization contains an example of a reverse charge tax for export in the EU to be used as reference (0% EU, invoice label 00eu), which can be found under Accounting ‣ Configuration ‣ Taxes. Exports are exempt from VAT, and therefore reverse charge taxes require the Has exoneration of tax (Italy) option ticked, with both the Exoneration kind and Law Reference filled in.

External reverse charge settings


If you need to use a different kind of Exoneration, click Action ‣ Duplicate within the tax menu to create a copy of an existing similar tax. Then, select another Exoneration, and Save. Repeat this process as many times as you need different kind of Exoneration taxes.


Rename your taxes in the Name field according to their Exoneration to differentiate them easily.

On your invoice, select the corresponding tax you need in the Taxes field. You can find the following additional info by opening the XML file of the issued invoice:

  • SdI address (Codice Destinatario): must be filled for both EU or non-EU;

  • Country Id: must contain the country of the foreign seller in the two-letter ISO (Alpha-2) code (ex., IT for ‘Italy’);

  • CAP: must be filled with 00000;

  • Partita Iva (VAT number): must contain the VAT number for EU businesses and OO99999999999 (double ‘O’ letter, not ‘zero’) for non-EU businesses. In case of private customers without VAT number, use 0000000;

  • Fiscal Code: for foreign entities without an actual Codice Fiscale, any recognizable identifier is valid.


Odoo does not support sending user-modified XML files.

For invoices, multiple configurations are technically identified by a Tipo Documento code:

  • TD02 - Down payments;

  • TDO7 - Simplified invoice;

  • TD08 - Simplified credit note;

  • TD09 - Simplified debit note;

  • TD24 - Deferred invoice.

Down payments.

Down payment invoices are imported/exported with a different Tipo Documento code TDO2 than regular invoices. Upon import of the invoice, it creates a regular vendor bill.

Odoo exports moves as TD02 if the following conditions are met:

  • Is an invoice;

  • All invoice lines are related to sales order lines that have the flag is_downpayment set as True.

Vendor bills

Italian companies buying goods or services from EU countries (or services from non-EU countries) must send the information contained within the bill received to the Agenzia delle Entrate. This allows you to complete tax-related information on your bill, and to send it. The seller must be set as Cedente/Prestatore, and the buyer as Cessionario/Committente. Contained within the XML document for the vendor bill, the vendor’s credentials show as Cedente/Prestatore, and your company’s credentials as Cessionario/Committente.


Self-billing invoices or VAT invoice integrations must be issued and sent to the tax agency.

When inputting taxes in a vendor bill, it is possible to select reverse charge taxes. These are automatically activated in the Italian fiscal position. By going to Accounting ‣ Configuration ‣ Taxes, the 10% and 22% Goods and Services tax scopes are activated and preconfigured with the correct tax grids. These are set up automatically to ensure the correct booking of accounting entries and display of the tax report.

For vendor bills, three types of configurations are technically identified by a code called Tipo Documento:

  • TD17 - Buying services from EU and non-EU countries;

  • TD18 - Buying goods from EU;

  • TD19 - Buying goods from a foreign vendor, but the goods are already in Italy in a VAT deposit.

Buying services from EU and non-EU countries:

The foreign seller invoices a service with a VAT-excluded price, as it is not taxable in Italy. The VAT is paid by the buyer in Italy;

  • Within EU: the buyer integrates the invoice received with the VAT information due in Italy (i.e., vendor bill tax integration);

  • Non-EU: the buyer sends themselves an invoice (i.e., self-billing).

Odoo exports a transaction as TD17 if the following conditions are met:

  • Is a vendor bill;

  • At least one tax on the invoice lines targets the tax grids VJ;

  • All invoice lines either have Services as products, or a tax with the Services as tax scope.


Odoo does not offer the Conservazione Sostitutiva requirements. Other providers and Agenzia delle Entrate supply free and certified storage to meet the requested conditions.

Internal reverse charge


Odoo currently does not support domestic internal reverse charge processes.

‘Reverse Charge’ tax grids

The Italian localization has a specific tax grid section for reverse charge taxes. These tax grids are identifiable by the VJ tag, and can be found under Accounting ‣ Reporting ‣ Audit Reports: Tax Report.

Italian reverse charge tax grids

San Marino


San Marino and Italy have special agreements on e-invoicing operations. As such, invoices follow the regular reverse charge rules. Additional requirements are not enforced by Odoo, however, the user is requested by the State to:

  • Select a tax with the option Has exoneration of tax (Italy) ticked, and the Exoneration set to N3.3;

  • Use the generic SdI Codice Destinatario 2R4GT08. The invoice is then routed by a dedicated office in San Marino to the correct business.


When a paper bill is received from San Marino, any Italian company must submit that invoice to the Agenzia delle Entrate by indicating the e-invoice’s Tipo Documento field with the special value TD28.

Odoo exports a move as TD28 if the following conditions are met:

  • Is a vendor bill;

  • At least one tax on the invoice lines targets the tax grids VJ;

  • The country of the partner is San Marino.

Pubblica amministrazione (B2G)


Odoo does not send invoices directly to the government as they need to be signed. If we see that the codice destinatario is 6 digits, then it is not sent to the PA automatically, but you can download the XML, sign it with an external program and send it through the portal.

Digital qualified signature

For invoices and bills intended to the Pubblica Amministrazione (B2G), a Digital Qualified Signature is required for all files sent through the SdI. The XML file must be certified using a certificate that is either:

  • a smart card;

  • a USB token;

  • a Hardware Security Module (HSM).

CIG, CUP, DatiOrdineAcquisto

To ensure the effective traceability of payments by public administrations, electronic invoices issued to the public administrations must contain:

  • The CIG, except in cases of exclusion from traceability obligations provided by law n. 136 of August 13, 2010;

  • The CUP, in case of invoices related to public works.

If the XML file requires it, the Agenzia Delle Entrate can only proceed payments of electronic invoices when the XML file contains a CIG and CUP. For each electronic invoice, it is necessary to indicate the CUU, which represents the unique identifier code that allows the SdI to correctly deliver the electronic invoice to the recipient office.


  • The Codice Unico di Progetto) and the CIG must be included in one of the 2.1.2 (DatiOrdineAcquisto), 2.1.3 (Dati Contratto), 2.1.4 (DatiConvenzione), 2.1.5 (Date Ricezione), or 2.1.6 (Dati Fatture Collegate) information blocks. These correspond to the elements named CodiceCUP and CodiceCIG of the electronic invoice XML file, whose table can be found on the government website.

  • The CUU must be included in the electronic invoice corresponding to the element 1.1.4 (CodiceDestinario).