---
updatedAt: 2026-09-30T07:56:15.000Z
agentTools:
  projectIndex: https://docs.eezi.io/llms.txt
---

# Italy

## Credit note

### 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.
* `recipient.address.state` for provinces in Italy, a 2-character Italian province code is required.

```typescript
type CreditNote {
  // ...all generic credit note fields
 customInfo: {
    ita: {
      documentType?: 'TD04';
      recipientCode: string;
      transmissionFormat: string;
    }
  },
  invoiceRefs: string[],
  lines: InvoiceLine[];
  // ...everything from recipient
  // recipient.contact.email required when customInfo.ita.recipientCode = '0000000'
  recipient: {
    contact: {
      email?: string;
    }
  }
}

type InvoiceLine {
  description: string;
  unit: Unit;
  quantity?: number;
  vat: {
    type: 'fixed' | 'percent';
    code: TaxCode;
    // 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;
  };
  price: {
    amount: number;
  };
}
```

### Field information

<Table align={["left","left","left","left"]}>
  <thead>
    <tr>
      <th>
        Name
      </th>

      <th>
        Type
      </th>

      <th>
        Required
      </th>

      <th>
        Description
      </th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>
        `invoiceRefs`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        An array of existing invoices
      </td>
    </tr>

    <tr>
      <td>
        `recipient.address.state`
      </td>

      <td>
        string
      </td>

      <td>
        Conditional
      </td>

      <td>
        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.
      </td>
    </tr>

    <tr>
      <td>
        `lines[].description`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        Description of the goods or service
      </td>
    </tr>

    <tr>
      <td>
        `lines[].unit`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        A value from an enumerated list as outlined on [Units of Measure](https://docs.eezi.io/docs/code-lists-units-of-measure)
      </td>
    </tr>

    <tr>
      <td>
        `lines[].quantity`
      </td>

      <td>
        number
      </td>

      <td>
        Yes
      </td>

      <td>
        Quantity of the good or service
      </td>
    </tr>

    <tr>
      <td>
        `lines[].vat.type`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        A value from an enumerated list of types:<br />"fixed"<br />"percent"
      </td>
    </tr>

    <tr>
      <td>
        `lines[].vat.code`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        A value from an enumerated list as outlined on [VAT code classification](https://docs.eezi.io/docs/code-lists-default-vat-code-classification)
      </td>
    </tr>

    <tr>
      <td>
        `lines[].vat.amount`
      </td>

      <td>
        number
      </td>

      <td>
        Yes
      </td>

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

    <tr>
      <td>
        `lines[].vat.exemptReason`
      </td>

      <td>
        string
      </td>

      <td>
        Conditional
      </td>

      <td>
        If the line VAT amount is 0, an exemption reason is required.
      </td>
    </tr>

    <tr>
      <td>
        `lines[].vat.exemptReasonCode`
      </td>

      <td>
        string
      </td>

      <td>
        Conditional
      </td>

      <td>
        If the line VAT amount is 0, a value from an enumerated list outlined on [Italy exempt reason codes](https://docs.eezi.io/docs/code-lists-italy-exempt-reason-codes) is required.
      </td>
    </tr>

    <tr>
      <td>
        `lines[].price.amount`
      </td>

      <td>
        number
      </td>

      <td>
        Yes
      </td>

      <td>
        Unit price of the good or service
      </td>
    </tr>

    <tr>
      <td>
        `customInfo.ita.recipientCode`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        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.
      </td>
    </tr>

    <tr>
      <td>
        `customInfo.ita.transmissionFormat`
      </td>

      <td>
        string
      </td>

      <td>
        Yes
      </td>

      <td>
        Here are the possible values:

        - _"FPR12"_\* - invoice to private parties
        - _"FPA12"_\* - invoice to public administration
      </td>
    </tr>

    <tr>
      <td>
        `customInfo.ita.documentType`
      </td>

      <td>
        string
      </td>

      <td>
        No
      </td>

      <td>
        A value from the enumerated list outlined below:

        - **_TD04_** - Credit note
      </td>
    </tr>

    <tr>
      <td>
        `recipient.contact.email`
      </td>

      <td>
        string
      </td>

      <td>
        Conditional
      </td>

      <td>
        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.
      </td>
    </tr>
  </tbody>
</Table>

<br />

### Example CSV file

[Credit note - Italy.csv](https://dev.eezi.io/csv-files/credit%20note%20-%20ita.csv)