Skip to content

BR-AG-05: VAT rate of invoice line with category M (IPSI) is missing or negative

Official message

[BR-AG-05] In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) 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-AG-05] In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) 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-AG-05] In an Invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "IPSI" the Invoiced item VAT rate (BT-152) 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-25, BT-151, BT-152

What does this mean?

For an invoice line (BG-25) with VAT category (BT-151) M (IPSI, tax for production, services and importation in Ceuta and Melilla) the invoiced item VAT rate (BT-152) must be 0 (zero) or greater than zero. The rate is negative or missing.

Typical causes

The rate was not stated.
The rate was taken over with a negative sign.

How to fix the error

State a rate of 0 or more for every invoice line of category M.
If the rate does not match the category, correct the category and adjust the VAT breakdown (BG-23).
CII: ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent, UBL: cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory/cbc:Percent (credit note: cac:CreditNoteLine).

In E-Rechnungsfreund

In the invoice form, section "Rechnungspositionen (BG-25)" (invoice lines, "Experte" view), for every line with "Steuerkategorie (BT-151)" (VAT category) M fill in the field "Steuersatz % (BT-152)" (VAT rate).

Example

Wrong

<ram:SpecifiedLineTradeSettlement>
  <ram:ApplicableTradeTax>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:CategoryCode>M</ram:CategoryCode>
  </ram:ApplicableTradeTax>
  ...
</ram:SpecifiedLineTradeSettlement>

Correct

<ram:SpecifiedLineTradeSettlement>
  <ram:ApplicableTradeTax>
    <ram:TypeCode>VAT</ram:TypeCode>
    <ram:CategoryCode>M</ram:CategoryCode>
    <ram:RateApplicablePercent>10.00</ram:RateApplicablePercent>
  </ram:ApplicableTradeTax>
  ...
</ram:SpecifiedLineTradeSettlement>
For developers: test expression per syntax

EN 16931 (CII) (CII)

Context: //rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax[ram:CategoryCode = 'M'][upper-case(ram:TypeCode) = 'VAT']

ram:RateApplicablePercent >= 0

EN 16931 (UBL) (UBL)

Context: cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']| cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory[normalize-space(cbc:ID) = 'M'][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-000246

Context: //rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax[ram:CategoryCode = 'M']

ram:RateApplicablePercent >= 0

Related validation rules

  • BR-AG-01: VAT breakdown for category M is missing
  • BR-AG-02: Seller VAT or tax registration identifier missing for invoice line with category M
  • BR-AG-03: Seller VAT or tax registration identifier missing for document level allowance with category M
  • BR-AG-04: Seller VAT or tax registration identifier missing for document level charge with category M
  • BR-AG-06: VAT rate of document level allowance with category M (IPSI) is missing or negative
  • BR-AG-07: VAT rate of document level charge with category M (IPSI) is missing or negative

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