Tax codes

Every line carries a tax code that names its VAT treatment: a local sale, an intra-community supply, an export. Choosing the code is choosing the treatment: VAT IT validates it and files it, and does not re-determine it.

VAT IT tax codes or your own

Send whichever is easier, per client:

  • VAT IT tax codes. The client's ERP tax codes are mapped once to the codes below, in your ERP.
  • Your own tax codes. Send the code exactly as it is in your ERP. VAT IT agrees the mapping with each client at onboarding and keeps it. A code VAT IT has not mapped yet waits with tax_code_unmapped and is processed once the mapping is added, with no need to resend.

Either way, VAT IT leads a mapping session with each client at onboarding.

The VAT IT tax codes

The rate travels separately in vat_rate, so one code covers standard, reduced and zero rates. goods_or_services travels on the line too.

Sales

Code Meaning
sale_domestic A sale taxed in the country of the registration, at any rate including zero
sale_domestic_exempt A domestic sale exempt from VAT, for example financial, medical or educational services
sale_domestic_reverse_charge A domestic sale where the buyer accounts for the VAT, for example construction or scrap metal where the country applies it
sale_intra_eu_goods Goods sold to a VAT-registered business in another EU country and shipped there. Zero rated
sale_intra_eu_services Services to a business in another EU country. The customer accounts for the VAT
sale_intra_eu_triangular A sale by the middle party in a triangular trade of goods between three EU countries
sale_distance_goods Goods sold to a consumer in another EU country, outside OSS
sale_export Goods shipped outside the EU. Zero rated
sale_services_outside_eu Services to a customer outside the EU, not taxed in the EU
sale_oss_goods Goods sold to a consumer in another EU country, reported through the Union OSS
sale_oss_services Services to a consumer in another EU country, reported through the Union or non-Union OSS
sale_ioss Imported goods of up to EUR 150 sold to EU consumers, reported through IOSS
sale_deemed_supplier A sale through a marketplace that is the deemed supplier and accounts for the VAT
sale_margin_second_hand Second-hand goods, art or antiques under the margin scheme. VAT is due on the margin only
sale_margin_travel Travel services under the tour operators' margin scheme
sale_voucher_single_purpose Issue or transfer of a single-purpose voucher, taxed when issued
sale_own_goods_transfer Your own goods moved to another EU country, reported as an intra-EU supply
sale_outside_scope Outside the scope of VAT, reported only where the return asks for it

Purchases

Code Meaning
purchase_domestic A domestic purchase with VAT charged by the supplier
purchase_domestic_exempt A domestic purchase exempt from VAT
purchase_domestic_reverse_charge A domestic purchase where you account for the VAT instead of the supplier
purchase_intra_eu_goods Goods bought from a business in another EU country and shipped to you. You account for the VAT
purchase_intra_eu_services Services from a business in another EU country. You account for the VAT
purchase_intra_eu_triangular A purchase in a triangular trade of goods between three EU countries
purchase_import Goods imported from outside the EU, with import VAT paid at customs
purchase_import_postponed Goods imported under postponed accounting: the import VAT is declared on the return, not paid at customs
purchase_services_outside_eu Services from a supplier outside the EU. You account for the VAT
purchase_non_deductible A purchase whose VAT cannot be recovered, for example entertainment or passenger cars
purchase_margin_scheme Goods bought under a margin scheme, with no VAT shown
purchase_flat_rate_farmer A purchase from a flat-rate farmer, with the flat-rate compensation
purchase_own_goods_transfer Your own goods arriving from another EU country, reported as an intra-EU acquisition
purchase_outside_scope Outside the scope of VAT, reported only where the return asks for it

Codes are never renamed. A code is retired with an end date and replaced by a new one.

Distance sales take one code. The ship countries decide whether the sale is reported in the origin country, the destination country or both.

Tax jurisdiction, counterparty country and ship countries

The three answer different questions:

  • tax_jurisdiction, on the document: which of the client's VAT registrations the document falls under, given as that registration's country. It is the registration whose VAT number the invoice was issued or received under, and it sets the return the document is reported in. For OSS and IOSS sales it is the country of the OSS or IOSS registration, never the consumer's.
  • counterparty_country: where the customer or supplier is established. It drives the VAT number checks and the counterparty columns on listings such as the EC sales list. For OSS services it is the consumer's country.
  • ship_from_country, ship_to_country, on the document: where goods physically moved. They prove a cross-border supply happened. For OSS goods, ship_to_country is the consumer's country.

You never send the consumer's country as tax_jurisdiction. For OSS and IOSS lines VAT IT takes it from ship_to_country for goods and counterparty_country for services, and checks the rate against it.

In the rare case that one invoice falls under two registrations, send tax_jurisdiction on the lines that differ from the document.

Examples for one seller with stock in Poland, registered for VAT and OSS in Poland. tax_jurisdiction is PL on every one:

Scenario tax_code counterparty_country Ship from, to Reported in
Sale to a Polish business sale_domestic PL PL, PL PL VAT return
Sale to a German business, goods shipped to Germany sale_intra_eu_goods DE PL, DE PL VAT return at 0%, and the PL EC sales list
Same German business, goods collected and kept in Poland sale_intra_eu_goods DE PL, PL Error: no goods left Poland, so it is a domestic sale
German business using its Polish VAT number, goods stay in Poland sale_domestic DE PL, PL PL VAT return
German consumer, goods shipped to Germany, under OSS sale_oss_goods DE PL, DE PL OSS return, German section, at the German rate
German consumer, goods delivered to their address in France sale_oss_goods DE PL, FR PL OSS return, French section, at the French rate
Service to a German business sale_intra_eu_services DE none PL VAT return, and the PL EC sales list
Purchase from a German supplier, goods arrive in Poland purchase_intra_eu_goods DE DE, PL PL VAT return, self-assessed
Export to a US customer sale_export US PL, US PL VAT return at 0%

When a code is refused

Code Meaning
tax_code_not_valid The VAT IT code does not exist, is retired, or does not apply in tax_jurisdiction. Fix the mapping in your ERP
tax_code_unmapped VAT IT has no mapping yet for your own code, or has not enabled the VAT IT code for tax_jurisdiction. VAT IT fixes this and the line reprocesses