BR-CO-17: VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category…
Peppol BIS Billing 3.0.20 · UBL
Original rule text
[BR-CO-17]-VAT category tax amount (BT-117) = VAT category taxable amount (BT-116) x (VAT category rate (BT-119) / 100), rounded to two decimals.
(round(cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/xs:decimal(cbc:Percent)) = 0 and (round(xs:decimal(cbc:TaxAmount)) = 0)) or (round(cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/xs:decimal(cbc:Percent)) != 0 and ((abs(xs:decimal(cbc:TaxAmount)) - 1 < round(abs(xs:decimal(cbc:TaxableAmount)) * (cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/xs:decimal(cbc:Percent) div 100) * 10 * 10) div 100 ) and (abs(xs:decimal(cbc:TaxAmount)) + 1 > round(abs(xs:decimal(cbc:TaxableAmount)) * (cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/xs:decimal(cbc:Percent) div 100) * 10 * 10) div 100 ))) or (not(exists(cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/xs:decimal(cbc:Percent))) and (round(xs:decimal(cbc:TaxAmount)) = 0))BR-CO-17 is a fatal rule in the business layer of Peppol BIS Billing 3.0.20 · UBL. An invoice that breaks it is rejected. It refers to BT-117, BT-116, BT-119.
What this rule requires
For each VAT tax subtotal, the rule requires that the VAT category tax amount (cbc:TaxAmount in UBL / ram:CalculatedAmount in CII, BT-117) is consistent with the VAT category taxable amount (cbc:TaxableAmount in UBL / ram:BasisAmount in CII, BT-116) and the VAT category rate (cbc:Percent in UBL / ram:RateApplicablePercent in CII, BT-119). When the VAT percentage rounded to a whole number is non-zero, the tax amount must be within one currency unit of the taxable amount multiplied by the VAT percentage divided by 100, rounded to two decimals. If the VAT percentage rounded to a whole number is zero, or if no percentage is present, the tax amount rounded to a whole number must be zero. This is a fatal rule, so a document that does not satisfy one of these alternatives fails validation.
How to fix
In the affected cac:TaxTotal/cac:TaxSubtotal (UBL) or ram:ApplicableTradeTax (CII) element, adjust the tax amount to the calculated value: cbc:TaxableAmount/ram:BasisAmount × cbc:Percent/ram:RateApplicablePercent ÷ 100, rounded to two decimal places, or set it to 0 if the VAT percentage is zero or missing. Also check that the taxable amount and VAT percentage are correct, as an error there will cause the same mismatch.
Guidance on this rule. The original text above is authoritative.
Where to go next
No published Peppol BIS Billing UBL release comparison lists a change to BR-CO-17.
Validate an invoice against these rules · All release changes