Skip to main content

BR-S-5 Standard-rated invoice line VAT rate must be greater than zero

In an invoice line (BG-25) where the Invoiced item VAT category code (BT-151) is "Standard rated" (S), the Invoiced item VAT rate (BT-152) must be greater than zero.

Problem Description

ERROR

EN 16931 VAT category rule

Interactive pipeline

Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.

Try:

BR-S-05 EN 16931 VAT category rule

Reported in stage 2: EN 16931 rules.

Level error: the report recommends rejecting the invoice.

Stage 2 · What it checks

  • The core business terms are present (BR-01 to BR-65).
  • Totals add up and related fields agree (BR-CO); codes and decimals are valid (BR-CL, BR-DEC).
  • Each VAT category is consistent: S, Z, E, AE, K, G, O, L, M (BR-S, BR-Z, BR-AE, BR-IC …).

Example codes

Typical fix

Recalculate totals and VAT from the line data, and correct the VAT category in the source data.

A validator checks an e-invoice in stages. First the file must be well-formed XML that matches the UBL or CII schema (XSD). Then the EN 16931 business rules run: BR core rules, BR-CO calculations, BR-CL code lists, BR-DEC decimals and VAT-category rules such as BR-S. Next come the national or network rules that BT-24 selects: BR-DE for XRechnung, PEPPOL-EN16931 for Peppol BIS Billing. The report lists every failed rule: one error means reject, warnings alone still mean accept. BR-S-05: EN 16931 VAT category rule, reported in the stage “EN 16931 rules”. Rule sets: KoSIT validator 1.6.3 with the XRechnung configuration of 31 Aug 2026 (EN 16931 artefacts 1.3.16), Peppol BIS Billing 3.0.21.

Context and Significance

Category S means that VAT is charged at the standard or a reduced rate, so a rate of zero or a missing rate contradicts the code. The error typically occurs when software exports an exempt, reverse-charge or out-of-scope line with the default code S and a rate of 0 %, or when the rate is not mapped from the item master data. Document level allowances and charges with category S are covered by BR-S-06 and BR-S-07.

Solution

Set the line VAT rate (BT-152; UBL: cac:Item/cac:ClassifiedTaxCategory/cbc:Percent; CII: ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent) to the applicable rate, for example 19 or 7 in Germany. If no VAT is due on the line, replace code S with the correct category (Z, E, AE, K, G or O).

Quick actions

Valid Examples

  • BT-151 = "S", BT-152 = 19
  • BT-151 = "S", BT-152 = 7

Invalid Examples

  • BT-151 = "S", BT-152 = 0
  • BT-151 = "S", BT-152 absent

Code Examples

Valid XML
<cac:InvoiceLine>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>19</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
Invalid XML
<cac:InvoiceLine>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>0</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>

Affected Fields

Validation Tools