Skip to content

BR-AF-07: VAT rate of document level charge with category L (IGIC) is missing or too low

Official message

[BR-AF-07] In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.

EN 16931 (CII) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-AF-07] In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.

EN 16931 (UBL) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-AF-07] In a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) is "IGIC" the Document level charge VAT rate (BT-103) shall be 0 (zero) or greater than zero.

Factur-X / ZUGFeRD EN 16931 · Error · Message language: English · Version: Factur-X 1.08 / ZUGFeRD 2.4
Severity
Error The invoice is invalid and may be rejected by the recipient.
Applies to
EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
Affected fields
BG-21, BT-102, BT-103

What does this mean?

For a document level charge (BG-21) with VAT category (BT-102) L (IGIC, Canary Islands general indirect tax) the document level charge VAT rate (BT-103) must be stated. The rate is missing or too low.
The rule text requires "0 (zero) or greater than zero"; the official CII check, however, requires a rate greater than 0, the UBL check a rate of 0 or more.

Typical causes

The rate was not stated.
CII: rate 0 was stated.

How to fix the error

State the rate (greater than zero for CII) for every document level charge of category L.
If the rate does not match the category, correct the category and adjust the VAT breakdown (BG-23).
CII: ram:SpecifiedTradeAllowanceCharge (ChargeIndicator true)/ram:CategoryTradeTax/ram:RateApplicablePercent, UBL: cac:AllowanceCharge (cbc:ChargeIndicator true)/cac:TaxCategory/cbc:Percent.

In E-Rechnungsfreund

In the invoice form ("Experte" view), section "Zu-/Abschläge auf Dokumentenebene (BG-20/BG-21)" (document level allowances and charges), for every entry of type "Zuschlag (BG-21)" (charge) with "St-Kat." (VAT category) L fill in the field "St-Satz %" (VAT rate). An empty field is not written to the XML for the allowance/charge.

Example

Wrong

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>50.00</ram:ActualAmount>
  <ram:Reason>Freight</ram:Reason>
  <ram:CategoryTradeTax>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:CategoryCode>L</ram:CategoryCode>
  </ram:CategoryTradeTax>
</ram:SpecifiedTradeAllowanceCharge>

Correct

<ram:SpecifiedTradeAllowanceCharge>
  <ram:ChargeIndicator>
    <udt:Indicator>true</udt:Indicator>
  </ram:ChargeIndicator>
  <ram:ActualAmount>50.00</ram:ActualAmount>
  <ram:Reason>Freight</ram:Reason>
  <ram:CategoryTradeTax>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:CategoryCode>L</ram:CategoryCode>
    <ram:RateApplicablePercent>7.00</ram:RateApplicablePercent>
  </ram:CategoryTradeTax>
</ram:SpecifiedTradeAllowanceCharge>
For developers: test expression per syntax

EN 16931 (CII) (CII)

Context: //ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator=true()]/ram:CategoryTradeTax[ram:CategoryCode = 'L'][upper-case(ram:TypeCode) = 'VAT']

ram:RateApplicablePercent > 0

EN 16931 (UBL) (UBL)

Context: cac:AllowanceCharge[cbc:ChargeIndicator=true()]/cac:TaxCategory[normalize-space(cbc:ID)='L'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

(cbc:Percent) >= 0

Factur-X / ZUGFeRD EN 16931 (CII)

Technical ID in the source: FX-SCH-A-000108

Context: //ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator='true']/ram:CategoryTradeTax[ram:CategoryCode = 'L']

ram:RateApplicablePercent > 0

Related validation rules

  • BR-AF-01: VAT breakdown for category L is missing
  • BR-AF-02: Seller VAT or tax registration identifier missing for invoice line with category L
  • BR-AF-03: Seller VAT or tax registration identifier missing for document level allowance with category L
  • BR-AF-04: Seller VAT or tax registration identifier missing for document level charge with category L
  • BR-AF-05: VAT rate of invoice line with category L (IGIC) is missing or too low
  • BR-AF-06: VAT rate of document level allowance with category L (IGIC) is missing or too low

Last updated:
Explanation of the validation rule, not legal or tax advice.