Skip to main content

Type of Service: ftChargeItemCase

This table expands on the values provided in the Type of Service: ftChargeItemCase reference table of the Compliance Middleware with country-specific values applicable to the Portuguese market.

Format​

CCCC_vlll_gggg_NNSV

v - version​

version 2

V - VAT​

For more information, see VAT rules and rates.

VATRate must match the rate of the VAT value. The Middleware accepts only the rates listed in Table 1; the regional rates of Madeira and the Azores are not supported.

ValueDescriptionSAF-T TaxType / TaxCode
0Unknown VAT rate
Not supported in Portugal; rejected.
–
1Discounted-1 VAT rate
Reduced rate (taxa reduzida), 6 %.
IVA / RED
2Discounted-2 VAT rate
Intermediate rate (taxa intermédia), 13 %.
IVA / INT
3Normal VAT rate
Normal rate (taxa normal), 23 %.
IVA / NOR
4Super reduced 1 VAT rate
Not supported in Portugal; rejected.
–
5Super reduced 2 VAT rate
Not supported in Portugal; rejected.
–
6Parking VAT rate
Not supported in Portugal; rejected.
–
7Zero VAT rate
0 %, exempt. Requires a tax exemption code in ftChargeItemCaseData.PT.TaxExemptionCode. For more information, see Tax exemption code in ftChargeItemCaseData.
IVA / ISE (Isenta, exempt)
8Not Taxable
0 %. Not subject to VAT (não sujeito). If NN is set, the line is exempt instead; see NN - nature of VAT.
NS / NS (not subject to VAT or Stamp Duty)

Table 1. VAT (V) values of ftChargeItemCase for Portugal.

S - Type of Service​

ValueDescriptionMiddleware Version
0Unknown type of service
With the help of the VAT-rates table saved within fiskaltrust.SecurityMechanisms.
1.3.45
1Delivery (supply of goods)1.3.45
2Other service (supply of service)1.3.45
3Tip
For owner use V=0 to 7, related to total amount
For Employee use V=8, Not Taxable (as of 1.1.2022, this is calculated with 5%).
1.3.45
4Voucher
For Single-Use-Voucher use V=0 to 7
For Multi-Use-Voucher use V=8, Not Taxable
Voucher Sale is a positive (+) amount.
Voucher Redeem is a negative (-) amount.
IsVoid can be applied to reverse amounts.
Avoid to use this for Multi-Use-Voucher, use PayItem instead, with ShowInChargeItems flag. For Single-Use-Voucher, apply the ShowInPayItems flag to visualize it similar to payment and to keep the total amount unreduced.
1.3.45
5Catalog service1.3.45
6Not own sales / Agency business
Not supported in Portugal; rejected with EEEE_UnsupportedChargeItemServiceType.
1.3.45
7Own Consumption1.3.45
8Grant
For Unreal Grant use V=0 to 7
For Real Grant use V=8
1.3.45
9Receivable
Receivable creation is negative (-) amount
Receivable reduction is positive (+) amount.
IsVoid can be applied to reverse amounts.
Avoid to use this, use PayItem instead.
1.3.45
ACash Transfer
Cash Transfer to till is positive (+) amount
Cash Transfer from till is negative (-) amount.
Only useable with V=8, Not Taxable.
IsVoid can be applied to reverse amounts
1.3.45

Table 2. Type of Service (S) values of ftChargeItemCase for Portugal.

NN - nature of VAT​

Use 00 for charge items with VAT.

Whenever NN is set to a value other than 00, the charge item is exempt and the VAT rate (V) is ignored: the line is reported with the tax type IVA and the tax code ISE (Isenta, exempt), whatever V is. This also applies to V = 8. VATRate must be 0; a charge item with a VAT rate other than 0 % and an NN other than 00 is rejected.

The individual values of NN for exempt charge items are not yet specified for Portugal. Send the tax exemption code of an exempt charge item in ftChargeItemCaseData, as described in the next section.

Tax exemption code in ftChargeItemCaseData​

An exempt charge item needs a tax exemption code (motivo de isenção). Send it in ftChargeItemCaseData.PT.TaxExemptionCode and use the zero VAT rate (V = 7) in ftChargeItemCase. The Middleware writes the code to TaxExemptionCode and the mention to TaxExemptionReason of the SAF-T (PT) line, and reports the line with the tax type IVA and the tax code ISE (Isenta, exempt).

{
"Position": 2,
"Quantity": 1,
"Amount": 50,
"Description": "Transporte internacional",
"VATRate": 0,
"ftChargeItemCase": 5788286605450018839,
"ftChargeItemCaseData": {
"PT": {
"TaxExemptionCode": "M06"
}
}
}

The ftChargeItemCase in this example is 0x5054_2000_0000_0017: zero VAT rate, delivery, NN 00.

The following rules apply:

  • TaxExemptionCode must be one of the exemption codes in Table 3, for example M06. Upper and lower case and surrounding spaces are ignored. An unknown code is rejected.
  • TaxExemptionCode is only allowed on charge items with 0 % VAT, and V must be 7 (Zero VAT rate). Any other V, including 8 (Not Taxable), is rejected.
  • NN is not evaluated and can be 00.
  • The mention (TaxExemptionReason) is always taken from Table 3 and cannot be sent in the request.
  • A refund must repeat the ftChargeItemCaseData of the original charge item.
Exemption codeMention (TaxExemptionReason)Legal basis
M01Artigo 16.º, n.º 6 do CIVAArtigo 16.º, n.º 6, alíneas a) a d) do CIVA
M02Artigo 6.º do Decreto-Lei n.º 198/90, de 19 de junhoArtigo 6.º do Decreto-Lei n.º 198/90, de 19 de junho
M04Isento artigo 13.º do CIVAArtigo 13.º do CIVA
M05Isento artigo 14.º do CIVAArtigo 14.º do CIVA
M06Isento artigo 15.º do CIVAArtigo 15.º do CIVA
M07Isento artigo 9.º do CIVAArtigo 9.º do CIVA
M09IVA - não confere direito a deduçãoArtigo 62.º alínea b) do CIVA
M10IVA – regime de isençãoArtigo 57.º do CIVA
M11Regime particular do tabacoDecreto-Lei n.º 346/85, de 23 de agosto
M12Regime da margem de lucro – Agências de viagensDecreto-Lei n.º 221/85, de 3 de julho
M13Regime da margem de lucro – Bens em segunda mãoDecreto-Lei n.º 199/96, de 18 de outubro
M14Regime da margem de lucro – Objetos de arteDecreto-Lei n.º 199/96, de 18 de outubro
M15Regime da margem de lucro – Objetos de coleção e antiguidadesDecreto-Lei n.º 199/96, de 18 de outubro
M16Isento artigo 14.º do RITIArtigo 14.º do RITI
M19Outras isençõesIsenções temporárias determinadas em diploma próprio
M20IVA - regime forfetárioArtigo 59.º-D n.º 2 do CIVA
M21IVA – não confere direito à dedução (ou expressão similar)Artigo 72.º n.º 4 do CIVA
M25Mercadorias à consignaçãoArtigo 38.º n.º 1 alínea a) do CIVA
M26Isenção de IVA com direito à dedução no cabaz alimentarLei n.º 17/2023, de 14 de abril
M30IVA - autoliquidaçãoArtigo 2.º n.º 1 alínea i) do CIVA
M31IVA - autoliquidaçãoArtigo 2.º n.º 1 alínea j) do CIVA
M32IVA - autoliquidaçãoArtigo 2.º n.º 1 alínea l) do CIVA
M33IVA - autoliquidaçãoArtigo 2.º n.º 1 alínea m) do CIVA
M34IVA - autoliquidaçãoArtigo 2.º n.º 1 alínea n) do CIVA
M40IVA - autoliquidaçãoArtigo 6.º n.º 6 alínea a) do CIVA, a contrário
M41IVA - autoliquidaçãoArtigo 8.º n.º 3 do RITI
M42IVA - autoliquidaçãoDecreto-Lei n.º 21/2007, de 29 de janeiro
M43IVA - autoliquidaçãoDecreto-Lei n.º 362/99, de 16 de setembro
M44IVA – Regras específicas - artigo 6.ºArtigo 6.º do CIVA
M45IVA – regime transfronteiriço de isençãoArtigo 58.º-A do CIVA
M46IVA – e-TaxFreeDecreto-Lei n.º 19/2017, de 14 de fevereiro
M99Não sujeito ou não tributadoOutras situações de não liquidação do imposto

Table 3. Tax exemption codes for ftChargeItemCaseData.PT.TaxExemptionCode.

lll - local tagging/flag​

TBD

gggg - global tagging/flag​

ValueDescriptionMiddleware Version
0001IsVoid
Marks ChargeItem as Void previous position. Quantity and amount are inverted, related to original item.
1.3.45
0002IsReturn/IsRefund
Marks ChargeItem as Return of good or service. Quantity and amount are inverted, related to original item.
1.3.45
0004Discount
Marks ChargeItem as Discount/Extra for previous position.
Positive (+) amount is extra.
Negative (-) amount is discount
IsVoid or IsReturn/IsRefund will invert this behavior.
1.3.45
0008Downpayment
Marks ChargeItem as a downpayment.
Positive (+) amount is the creation of downpayment.
Negative (-) amount is reduction of downpayment.
IsVoid or IsReturn/IsRefund will invert this behavior.
1.3.45
0010Returnable
Marks ChargeItem as a returnable.
Positive (+) amount/quantity is handout.
Negative (-) amount/quantity is reverse.
IsVoid or IsReturn/IsRefund will invert this behavior.
1.3.45
0020TakeAway
Marks ChargeItem as TakeAway item to prove special VAT application
1.3.45
8000ShowInPayments
Visualize the item after Total Amount. This inverts amount and does not include the amount into the visualized total amount on the receipt.
1.3.45

Table 4. Global tagging/flag (gggg) values of ftChargeItemCase for Portugal.

ftChargeItemCaseFlag​

This table shows flags that can be added to each ftChargeItemCase with values applicable to the Portuguese market.