VRBL: Tax
Tax information needs to be modelled.
Tax can be modelled at the Document level or the Line level or both. Some countries require that you model information in one or the other.
You use the TaxTotal elements to model tax information at the Document level. This information applies to the entire Document.
You use the ClassifiedTaxCategory element to model information at the line level.
You also need to include applicable amounts in the LegalMonetaryTotal element. The Modelling Totals and Calculations section explains how to model totals and tax calculations.
General tax requirements
When modeling tax in VRBL, the following requirements exist:
- Each line item must have one Tax Category ID in the
Invoice/InvoiceLine/Item/ClassifiedTaxCategory/ID
element. - Each Tax Category ID must also have an associated tax rate in the
Invoice/InvoiceLine/Item/ClassifiedTaxCategory/Percent
element. - Each Allowance or Charge must have one Tax Category ID in the
Invoice/AllowanceCharge[ChargeIndicator='false|true']/TaxCategory/ID
element. - Each Tax Category ID must also have an associated tax rate in the
Invoice/AllowanceCharge[ChargeIndicator='false|true']/TaxCategory/Percent
element.
Country-Specific variations
Country-specific variations are explained in the following topics:
Other formats
EN 16931 requirements
If you are creating Documents for an EN 16931 compatible country, like France, then you also need to consider its requirements for modelling things like the Tax Category. More information is provided in the EN 16931: Tax Categories topic.
PEPPOL requirements
PEPPOL also has requirements for how you model tax exemptions. More information is provided in the PEPPOL: Tax Exemptions topic.
Examples
Standard rate
The following example shows a standard rate of 25%:
<Invoice>
<!-- code omitted for clarity -->
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">400.00</cbc:TaxAmount>
<!-- First Tax Breakdown: Standard Rate 25% -->
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">250.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>25.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
<!-- code omitted for clarity -->
</Invoice>
Standard rate 15%
The following example shows a standard rate of 15%:
<Invoice>
<!-- code omitted for clarity -->
<cac:TaxTotal>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">150.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>15.00</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
<!-- code omitted for clarity -->
</Invoice>
Tax exemption
The following example shows a tax exemption. Note that the rate is still required even though it is zero:
<Invoice>
<!-- code omitted for clarity -->
<cac:TaxTotal>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">1000.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>E</cbc:ID>
<cbc:Percent>0.00</cbc:Percent>
<cbc:TaxExemptionReasonCode>VATEX-EU-F</cbc:TaxExemptionReasonCode>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal
</cac:TaxTotal>
<!-- code omitted for clarity -->
</Invoice>
Tax calculations
You must also model the tax calculations correctly. See Modeling Tax Calculations.
In this section
The information in this section is divided into the following topics:
Topic | Description |
---|---|
Tax | Overview topic for this section. |
Tax Amounts | This topic describes how to model amounts of tax. |
Tax Categories and Schemes | Tax Categories and Tax Schemes are used to model information about the tax being paid. |
Tax Exchange Rates | If your Documents use foreign currency exchanges, you can capture this information. |
Tax Exemptions | How to model exemptions. |
Withholding Taxes | How to model withheld taxes. |
Tax Point Dates | You can add Tax Point date to your Documents. |
Updated 12 days ago