Italy

Invoice

Changes to generic fields

  • ref has a maximum length of 20 characters.
  • recipient.address.line1 is required.
  • recipient.address.city is required.
  • recipient.address.country is required.
  • recipient.address.postalCode is required.
  • organisation.address.state for provinces in Italy, a 2-character Italian province code is required.
type Invoice {
  // ...all generic invoice fields
  lines: [
    // ...everything from invoice.lines
    vat: {
      // ...everything from invoice.lines.vat
      // If type='percent, amount can be one of:
      amount: 0.00 | 4.00 | 5.00 | 10.00 | 22.00;
      // ...other line item vat fields
      exemptReason?: string;
      exemptReasonCode?: ItalyExemptionReasonCodes;
    }
  ],
  // ...everything from recipient
  // recipient.contact.email required when customInfo.ita.recipientCode = '0000000'
  recipient: {
    contact: {
      email?: string;
    }
  },
  customInfo: {
    ita: {
      documentType: string;
      transmissionFormat: string;
      recipientCode: string;
    }
  }
}

Field information

Name

Type

Required

Description

ref

string

Yes

Invoice reference or number. Maximum length of 20 characters.

lines[].vat.amount

number

Yes

Line item Tax amount when lines[].vat.type = 'percent' Can be one of 0.00, 4.00, 5.00, 10.00 or 22.00

lines[].vat.exemptReason

string

Conditional

If the line VAT amount is 0, an exemption reason is required.

lines[].vat.exemptReasonCode

string

Conditional

If the line VAT amount is 0, a value from an enumerated list outlined on Italy exempt reason codes is required.

recipient.address.postalCode

string

Yes

Needs to be five digits. If the recipient postalCode (CAP) does not fit the five digit Italian model (e.g. Switzerland has four digit postcodes, the UK has letters and digits, etc.), “00000” should be used instead.

recipient.address.state

string

Conditional

Initials of the province of the town/city indicated in recipient.address.city field.

For provinces in Italy, a 2 character Italian province code is required.

customInfo.ita.documentType

string

No

A value from the enumerated list outlined below:

  • TD01* - Invoice
  • TD16* - Reverse charge internal invoice integration
  • TD17* - Integration/self invoicing for purchase services from abroad
  • TD18* - Integration for purchase of intra EU goods
  • TD19* - Integration/self invoicing for purchase of goods ex art.17 c.2 DPR 633/72
  • TD20* - Self invoicing for regularisation and integration of invoices (ex art.6 c.8 and 9-bis d.lgs 471/97 or art.46 c.5 D.L.
  • TD21* - Self invoicing for displacement

customInfo.ita.transmissionFormat

string

Yes

Here are the possible values:

  • "FPR12"* - invoice to private parties
  • "FPA12"* - invoice to public administration

customInfo.ita.recipientCode

string

Yes

Recipient Code (Codice Destinatario) is used to identify the recipient's intermediary (such as a certified email provider or an SDI intermediary).

Here are the possible values:

  • 7-character alphanumeric codes*: These codes are assigned to intermediaries authorized to receive invoices on behalf of recipients. Each intermediary has a unique code.

0000000: This code is used when the recipient prefers to receive the invoice via their certified email (PEC) rather than through an intermediary.

XXXXXXX: For invoices issued to foreign customers who do not have an Italian SDI code.

recipient.contact.email

string

Conditional

When the recipient code is set to 0000000, the invoice is intended to be delivered via a certified email address (recipient PEC). In this case, the recipient's PEC email address must be provided.


Example CSV file

Invoice - Italy.csv