BR-O-03: An Invoice that contains a Document level allowance (BG-20) where the Document level…
Peppol BIS Billing 3.0.20 · UBL
Original rule text
[BR-O-03]-An Invoice that contains a Document level allowance (BG-20) where the Document level allowance VAT category code (BT-95) is "Not subject to VAT" shall not contain the Seller VAT identifier (BT-31), the Seller tax representative VAT identifier (BT-63) or the Buyer VAT identifier (BT-48).
(exists((/ubl:Invoice|/cn:CreditNote)/cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']) and (not(//cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID) and not(//cac:TaxRepresentativeParty/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID) and not(//cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme[cac:TaxScheme/(normalize-space(upper-case(cbc:ID)) = 'VAT')]/cbc:CompanyID))) or not(exists((/ubl:Invoice|/cn:CreditNote)/cac:AllowanceCharge[cbc:ChargeIndicator=false()]/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']))BR-O-03 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 BG-20, BT-95, BT-31, BT-63, BT-48.
What this rule requires
The rule is fatal. In UBL, a document fails when it contains a document-level allowance (cac:AllowanceCharge[cbc:ChargeIndicator=false()]) whose cac:TaxCategory/cbc:ID is O and tax scheme is VAT, and at least one of the seller VAT identifier (cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID), seller tax representative VAT identifier (cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID), or buyer VAT identifier (cac:AccountingCustomerParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID) is present. In CII, for each SpecifiedTradeAllowanceCharge[ram:ChargeIndicator=false()] with a CategoryTradeTax[ram:CategoryCode = 'O'][upper-case(ram:TypeCode) = 'VAT'], the seller, seller tax representative, and buyer trade party must not have a ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA']; if any such VAT registration ID exists, the rule fails.
How to fix
Either remove the conflicting VAT identifiers, or change the document-level allowance's VAT category code to a value other than O. In UBL, remove the cbc:CompanyID element from the respective cac:PartyTaxScheme for seller, tax representative, or buyer. In CII, remove the ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA'] from SellerTradeParty, SellerTaxRepresentativeTradeParty, or BuyerTradeParty.
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-O-03.
Validate an invoice against these rules · All release changes