package
0.200.1
Repository: https://github.com/invopop/gobl.git
Documentation: pkg.go.dev

# README

🇮🇹 GOBL Italy Tax Regime

Italy uses the FatturaPA format for their e-invoicing system.

Example IT GOBL files can be found in the examples (YAML uncalculated documents) and examples/out (JSON calculated envelopes) subdirectories.

Public Documentation

FatturaPA

Changes from 1.2.1 to 1.2.2

  • Documentation changes: TD25, N1, N6.2, N7
  • Addition of TD28: Acquisti da San Marino con IVA (fattura cartacea)

Tax Rates

Tax Definitions

Italy specifics

Italy requires all invoices to comply with the FatturaPA format which includes support for a specific set of fields unique to Italy. GOBL tries to guess what the best options are so that the conversion process is simple, but some data needs to be added manually.

Unfortunately, the FatturaPA format adds considerable complexity as it was designed for two purposes in one format:

  • Regular invoices sent to customers, and,
  • Invoices received from suppliers that are not part of the Italian system, these are described as "self-billed" invoices.

A better way to consider electronic invoices in Italy is perhaps to think of them as micro-tax-declarations as opposed to just a format designed to ease the communication with customers.

We've tried to describe how to deal with many of the exception cases and special usages in this page, but if you find something that is not supported, please get in touch.

Reverse Charge Mechanism

The regular approach in GOBL to indicate that an invoice is subject to the "reverse charge" mechanism, is simply to include the reverse-charge tag inside the invoice's tax section.

Unfortunately in Italy this alone is not sufficient, each line item inside the document needs to be attributed with a specific exemption code. These are defined in the "Nature" (Natura) section below. Take the following line for example:

{
  "quantity": "20",
  "item": {
    "name": "Development services",
    "price": "90.00"
  },
  "taxes": [
    {
      "cat": "VAT",
      "rate": "exempt",
      "ext": {
        "it-sdi-nature": "N6.9"
      }
    }
  ]
}

When converting to FatturaPA the "Nature" code will be set to N6.9.

Stamp Duty

Stamp Duty ("Imposta di bollo") is a fixed priced tax applied to the production, request, or presentation of certain documents: civil, commercial, judicial and extrajudicial documents, on notices, or posters.

These can be added to GOBL Invoices as "charges" (bill.Charge) defined with the stamp-duty (it.ChargeKeyStampDuty) key, for example:

{
  "charges": [
    {
      "key": "stamp-duty",
      "amount": "2.00",
      "reason": "Imposta di bollo"
    }
  ]
}

See also examples/stamp-duty.json.

Numero REA

If you need to include an REA number ("Repertorio delle notizie Economiche e Amministrative") in your invoices, you can use the registration (org.Registration property of a org.Part object.

The fields used are:

  • capital - share capital
  • currency - currency of the share capital, usually EUR
  • office - province code for the company
  • entry - registration number itself

For example:

{
  "registration": {
    "capital": "50000.00",
    "currency": "EUR",
    "office": "RM",
    "entry": "123456"
  }
}

Tax System - "Regime Fiscale"

The tax system ("Regime Fiscale") needs to be defined to suppliers in all Italian FatturaPA invoices. The default code RF01 will always be used unless overridden in an extension field with the it-sdi-fiscal-regime tag.

The following identities are defined:

CodeDescription
RF01Ordinary
RF02Minimum taxpayers (Art. 1, section 96-117, Italian Law 244/07)
RF04Agriculture and connected activities and fishing (Arts. 34 and 34-bis, Italian Presidential Decree 633/72)
RF05Sale of salts and tobaccos (Art. 74, section 1, Italian Presidential Decree 633/72)
RF06Match sales (Art. 74, section 1, Italian Presidential Decree 633/72)
RF07Publishing (Art. 74, section 1, Italian Presidential Decree 633/72)
RF08Management of public telephone services (Art. 74, section 1, Italian Presidential Decree 633/72)
RF09Resale of public transport and parking documents (Art. 74, section 1, Italian Presidential Decree 633/72)
RF10Entertainment, gaming and other activities referred to by the tariff attached to Italian Presidential Decree 640/72 (Art. 74, section 6, Italian Presidential Decree 633/72)
RF11Travel and tourism agencies (Art. 74-ter, Italian Presidential Decree 633/72)
RF12Farmhouse accommodation/restaurants (Art. 5, section 2, Italian law 413/91)
RF13Door-to-door sales (Art. 25-bis, section 6, Italian Presidential Decree 600/73)
RF14Resale of used goods, artworks, antiques or collector's items (Art. 36, Italian Decree Law 41/95)
RF15Artwork, antiques or collector's items auction agencies (Art. 40-bis, Italian Decree Law 41/95)
RF16VAT paid in cash by P.A. (Art. 6, section 5, Italian Presidential Decree 633/72)
RF17VAT paid in cash by subjects with business turnover below Euro 200,000 (Art. 7, Italian Decree Law 185/2008)
RF18Other
RF19Flat rate (Art. 1, section 54-89, Italian Law 190/2014)
{
  "$schema": "https://gobl.org/draft-0/bill/invoice",
  // [...]
  "supplier": {
    "name": "MªF. Services",
    "tax_id": {
      "country": "IT",
      "code": "12345678903"
    },
    "ext": {
      "it-sdi-fiscal-regime": "RF02"
    }
  }
  // [...]
}

Payment Means (ModalitaPagamento)

The FatturaPA format defines its own set of payment means to declare invoices with the SDI. Take the following example of the payment property inside an invoice:

{
  "payment": {
    "instructions": {
      "key": "credit-transfer",
      "bank": {
        "iban": "IT60X0542811101000000123456",
        "bic": "ABCDITMM"
      }
    }
  }
}

The following table describes how to map the Italian payment means codes to those of GOBL. The list is somewhat based on the official mapping of the FatturaPA codes to EU Semantic invoice definition, more details available here.

CodeKey(s)Description
MP01cash, otherCash
MP02chequeCheque
MP03bank-draftBanker's draft
MP04cash+treasuryCash at Treasury
MP05credit-transferbank transfer
MP06promissory-notePromissory Note
MP07other+payment-slipPre-compiled bank payment slip
MP08card, onlineAny type of payment card
MP09direct-debit+ridDirect debit (RID)
MP10direct-debit+rid-utilityUtilities direct debit (RID utenze)
MP11direct-debit+rid-fastFast direct debit (RID veloce)
MP12direct-debit+ribaCollection order (RIBA)
MP13debit-transferPayment by notice (MAV)
MP14other+tax-receiptTax office quittance
MP15other+special-accountTransfer on special accounting accounts
MP16direct-debitDirect Debit
MP17direct-debit+post-officeOrder for direct payment from post office account
MP18cheque+post-officeBulletin postal account
MP19direct-debiy+sepaSEPA Direct Debit (default type of direct debit)
MP20direct-debit+sepa-coreSEPA Direct Debit CORE
MP21direct-debit+sepa-b2bSEPA Direct Debit B2B
MP22nettingDeduction on sums already collected from previous transactions.
MP23online+pagopaPagoPA

Document Type (TipoDocumento)

All Italian invoices must be identified with a specific type code defined by the FatturaPA format. The following table helps identify how GOBL will map the expected Italian code with a combination of the Invoice Type and tax tags.

CodeTypeTax TagsDescription
TD01standardRegular Invoice
TD02standardpartialAdvance or down payment on invoice
TD03standardpartial, freelanceAdvance or down payment on freelance invoice
TD04credit-noteCredit note
TD05debit-noteDebit note
TD06standardfreelanceFreelancer Invoice - includes retained taxes
TD07standardsimplifiedSimplified (no customer)
TD08credit-notesimplifiedSimplified Credit Note (no customer)
TD09debit-notesimplifiedSimplified Debit Note (no customer)
TD16standardself-billed, reverse-chargereverse charge internal invoice integration
TD17standardself-billed, importintegration/self invoicing for purchase services from abroad
TD18standardself-billed, import, goods-euintegration for purchase of intra UE goods
TD19standardself-billed, import, goodsintegration/self invoicing for purchase of goods ex art.17 c.2 DPR 633/72
TD20standardself-billed, regularizationself 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. 331/93)
TD21standardself-billed, ceiling-exceededSelf invoicing when goods are bought for export without VAT until a certain limit. If limit is exceeded, they must issue an invoice of type TD21. (Autofaturra per splafonamento)
TD22standardself-billed, goods-extractedextractions of goods from VAT Warehouse
TD23standardself-billed, goods-with-taxextractions of goods from VAT Warehouse with payment of VAT
TD24standarddeferred"deferred invoice ex art.21, c.4, lett. a) DPR 633/72"
TD25standarddeferred, third-period"deferred invoice ex art.21, c.4, third period lett. b) DPR 633/72"
TD26standarddepreciable-assetssale of depreciable assets and for internal transfers (ex art.36 DPR 633/72)
TD27standardself-billedself invoicing for self consumption or for free transfer without recourse
TD28standardself-billed, san-marino-paperPurchases from San Marino with VAT (paper invoice)

Line Nature Code (Natura)

The "Natura" code is required when identifying why a single row inside an invoice does not include VAT. With the rate field set to exempt, on the of the following codes should be provided in the code field:

CodeDescription
N1excluded pursuant to Art. 15, DPR 633/72
N2.1not subject to VAT under the articles from 7 to 7-septies of DPR 633/72
N2.2not subject – other cases
N3.1not taxable - exportations
N3.2not taxable - intra Community transfers
N3.3not taxable - transfers to San Marino
N3.4not taxable - transactions treated as export supplies
N3.5not taxable - for declaration of intent
N3.6not taxable – other transactions that don’t contribute to the determination of ceiling
N4exempt
N5margin regime / VAT not exposed on invoice
N6.1reverse charge - transfer of scrap and of other recyclable materials
N6.2reverse charge - transfer of gold and pure silver pursuant to law 7/2000 as well as used jewelery to OPO
N6.3reverse charge - subcontracting in the construction sector
N6.4reverse charge - transfer of buildings
N6.5reverse charge - transfer of mobile phones
N6.6reverse charge - transfer of electronic products
N6.7reverse charge - provisions in the construction and related sectors
N6.8reverse charge - transactions in the energy sector
N6.9reverse charge - other cases
N7"VAT paid in other EU countries (telecommunications, tele-broadcasting and electronic services provision pursuant to Art. 7 -octies letter a, b, art. 74-sexies Italian Presidential Decree 633/72)"

Withholding Type (TipoRitenuta)

Withholding types are different categories of withheld taxes that can be applied alongside VAT. The following list identifies those currently supported by GOBL:

CodeTax Category CodeDescription
RT01IRPEFwitholding tax natural persons
RT02IRESwitholding corporate entities
RT03INPSINPS contribution
RT04ENASARCOENASARCO contribution
RT05ENPAMENPAM contribution
RT06not supportedOther social security contribution

Fund Type (TipoCassa)

The Fund Type field is used in very specific circumstances and is currently not supported by GOBL. The following table lists the known types for future implementation.

CodeDescription
TC01National Pension and Welfare Fund for Lawyers and Solicitors
TC02Pension fund for accountants
TC03Pension and welfare fund for surveyors
TC04National pension and welfare fund for self-employed engineers and architects
TC05National fund for solicitors
TC06National pension and welfare fund for bookkeepers and commercial experts
TC07National welfare board for sales agents and representatives (ENASARCO - Ente Nazionale Assistenza Agenti e Rappresentanti di Commercio)
TC08National pension and welfare board for employment consultants (ENPACL - Ente Nazionale Previdenza e Assistenza Consulenti del Lavoro)
TC09National pension and welfare board for doctors (ENPAM - Ente Nazionale Previdenza e Assistenza Medici)
TC10National pension and welfare board for pharmacists (ENPAF - Ente Nazionale Previdenza e Assistenza Farmacisti )
TC11National pension and welfare board for veterinary physicians (ENPAV - Ente Nazionale Previdenza e Assistenza Veterinari)
TC12National pension and welfare board for agricultural employees (ENPAIA - Ente Nazionale Previdenza e Assistenza Impiegati dell'Agricoltura)
TC13Pension fund for employees of shipping companies and maritime agencies)
TC14National pension institute for Italian journalists (INPGI - Istituto Nazionale Previdenza Giornalisti Italiani)
TC15National welfare board for orphans of Italian doctors (ONAOSI - Opera Nazionale Assistenza Orfani Sanitari Italiani)
TC16Autonomous supplementary welfare fund for Italian journalists (CASAGIT - Cassa Autonoma Assistenza Integrativa Giornalisti Italiani)
TC17Pension board for industrial experts and graduate industrial experts (EPPI - Ente Previdenza Periti Industriali e Periti Industriali Laureati)
TC18National multi-category pension and welfare board (EPAP - Ente Previdenza e Assistenza Pluricategoriale)
TC19National pension and welfare board for biologists (ENPAB - Ente Nazionale Previdenza e Assistenza Biologi)
TC20National pension and welfare board for the nursing profession (ENPAPI - Ente Nazionale Previdenza e Assistenza Professione Infermieristica)
TC21National pension and welfare board for psychologists (ENPAP - Ente Nazionale Previdenza e Assistenza Psicologi)
TC22National Social Security Institute (INPS - Istituto Nazionale della Previdenza Sociale)

TODO

  • Document Codice Destinatario (uses inbox codes)