Peppol BIS Billing 3.0.21 · UBL

BR-37: Each Document level charge (BG-21) shall have a Document level charge VAT category code…

Peppol BIS Billing 3.0.21 · UBL

fatalbusiness

Original rule text

[BR-37]-Each Document level charge (BG-21) shall have a Document level charge VAT category code (BT-102).

Stored validation assertion
exists(cac:TaxCategory[cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']/cbc:ID)

BR-37 is a fatal rule in the business layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected. It refers to BG-21, BT-102.

What this rule requires

Rule BR-37 requires each document level charge (BG-21) to have a Document level charge VAT category code (BT-102). In UBL, an AllowanceCharge with ChargeIndicator equal to true must contain a cac:TaxCategory whose cac:TaxScheme/cbc:ID is VAT (case-insensitive, surrounding whitespace ignored) and that TaxCategory has a cbc:ID element. In CII, a SpecifiedTradeAllowanceCharge with ChargeIndicator true must have a sibling ram:CategoryTradeTax with ram:TypeCode equal to VAT (case-insensitive) and that contains a ram:CategoryCode element. The test checks presence of these elements; it does not check their values. Because the severity is fatal, a document missing them fails validation.

How to fix

For UBL, ensure the AllowanceCharge (where ChargeIndicator is true) contains a cac:TaxCategory with cac:TaxScheme/cbc:ID equal to VAT and a cbc:ID element. For CII, ensure the SpecifiedTradeAllowanceCharge has a ram:CategoryTradeTax with ram:TypeCode equal to VAT and a ram:CategoryCode element. The rule does not specify allowed category code values; use a value accepted by the applicable tax category code list.

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-37.

Validate an invoice against these rules · All release changes