Coded identification of a VAT category. The VAT category code must be taken from the UN/CEFACT code list UNCL5305 and determines how VAT is applied to the invoice line or document level charges/allowances. This field is critical for automated VAT processing, compliance verification, and cross-border transaction handling.
Essential for VAT compliance across EU member states. Enables automated processing of invoices by financial systems, ensures correct VAT treatment for cross-border transactions, supports reverse charge mechanisms, and facilitates VAT return preparation. Critical for e-invoicing platforms, ERP systems, and tax automation tools.
Mandatory when VAT breakdown is provided according to EN 16931-1. Must comply with EU VAT Directive requirements and national VAT regulations. Essential for compliance with German VAT law (UStG) and automated tax processing in PEPPOL and XRechnung environments.
/Invoice/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID
/CrossIndustryInvoice/SupplyChainTradeTransaction/ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode
S
Z
E
AE
K
G
O
L
M
19
โ Invalid0
โ InvalidVAT
โ Invalidstandard
โ Invalidexempt
โ Invalid7%
โ InvalidDE
โ Invalid
โ InvalidValid codes from UNCL5305: S (Standard rate - 19% in Germany), Z (Zero rate), E (Exempt from tax), AE (VAT reverse charge), K (VAT exempt for EEA intra-community supply), G (Free export item), O (Services outside scope of tax), L (Canary Islands general indirect tax), M (Tax for Ceuta and Melilla). Each code determines specific VAT treatment.
In Germany, both 19% (standard) and 7% (reduced) rates use code "S" in BT-118. The actual rate is specified in BT-119 (VAT category rate). So BT-118="S" with BT-119="19.00" for standard rate, or BT-118="S" with BT-119="7.00" for reduced rate. The code indicates the VAT treatment type, while BT-119 specifies the exact percentage.
Use "AE" for reverse charge scenarios where the buyer (not seller) is responsible for VAT payment. Common cases: B2B cross-border EU transactions, construction services in Germany (ยง13b UStG), certain professional services, scrap metal trading, and telecommunications services. When using "AE", BT-119 (VAT rate) typically shows the standard rate (19% in Germany) but BT-117 (VAT amount) is 0.00.
Key validation rules: BR-S-08 (standard rate calculation consistency), BR-E-01 (exempt VAT breakdown validation), BR-AE-01 (reverse charge validation), BR-IC-01 (intra-community validation), BR-CL-23 (code list compliance). The code must match the VAT treatment described in BT-119 (rate) and BT-117 (amount). System validates that code combinations are legally valid.
For VAT-exempt transactions, use code "E". Set BT-119 (VAT rate) to 0.00 and BT-117 (VAT amount) to 0.00. Common exempt cases in Germany: medical services, educational services, insurance, banking services, postal services, and certain cultural activities. Include reason for exemption in invoice notes when required by national law.
Code "Z" (Zero rate) applies to goods/services that are taxable but at 0% rate (like exports outside EU). Code "E" (Exempt) applies to transactions completely outside VAT scope (like banking services). With "Z", VAT registration and documentation requirements apply; with "E", the transaction is not subject to VAT system at all. Both result in 0.00 VAT amount but have different legal implications.
Create separate VAT breakdowns (BG-23) for each rate/category combination. For example: one breakdown with BT-118="S" and BT-119="19.00" for standard items, another with BT-118="S" and BT-119="7.00" for reduced rate items. Each breakdown must have its own BT-116 (taxable amount), BT-117 (tax amount), BT-118 (category code), and BT-119 (rate). The sum of all BT-117 values equals BT-110 (total VAT).
Common errors: 1) Using invalid codes not in UNCL5305, 2) Mismatched code-rate combinations (e.g., "E" with non-zero rate), 3) Missing VAT exemption reason for "E" codes, 4) Incorrect reverse charge setup with "AE", 5) Multiple "E" breakdowns when only one allowed, 6) Using numeric values instead of letter codes, 7) Wrong code for cross-border scenarios. Always validate against EN16931 business rules.
Our AI-powered Invoice Converter automatically handles all XRechnung requirements, including proper field validation.