EN16931 / XRechnung / Peppol BIS 3 Validator

BR-O-04: VAT ID not allowed with a category O document-level charge

fatal CII UBL

What this error means and how to fix it

A document-level charge has VAT category O (“Not subject to VAT”) while the invoice contains a seller (BT-31), tax representative (BT-63) or buyer (BT-48) VAT identifier. Remove the VAT identifiers or use the correct VAT category for the charge. This is an error: the invoice is rejected until it is fixed.

Check your invoice against BR-O-04 — free

Runs the KoSIT validator 1.6.3, unmodified · result in seconds · the file is not stored · No file at hand? Try a sample invoice

This error needs information only you have, so it is not repaired automatically. The free check shows every finding in the file with its location; if other errors in the same file are in the automatic set (totals, VAT breakdown, rounding, element order), the result page offers the corrected file for 9 €.

Rule text

[BR-O-04]-An Invoice that contains a Document level charge (BG-21) where the Document level charge VAT category code (BT-102) 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).
Where the rule is checked (XPath context and test)
SyntaxSeverityContext (XPath)Test (XPath)
EN16931-UBLfatal/ubl:Invoice | /cn:CreditNote(exists((/ubl:Invoice|/cn:CreditNote)/cac:AllowanceCharge[cbc:ChargeIndicator=true()]/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=true()]/cac:TaxCategory[normalize-space(cbc:ID) = 'O'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']))
EN16931-CIIfatal//ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator=true()]/ram:CategoryTradeTax[ram:CategoryCode = 'O'][upper-case(ram:TypeCode) = 'VAT']not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA']) and not (/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTaxRepresentativeTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA']) and not (//ram:BuyerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[@schemeID = 'VA'])

Business terms referenced

BG-21, BT-102, BT-31, BT-63, BT-48

Related rules

BR-36, BR-37, BR-38, BR-CO-22, BR-AE-01, BR-AE-04, BR-E-01, BR-E-04, BR-G-01, BR-G-04, BR-IC-01, BR-IC-04

Source: EN 16931-1 Schematron, UN/CEFACT CII syntax binding (ConnectingEurope/eInvoicing-EN16931, EUPL-1.2).

Source: EN 16931-1 Schematron, UBL syntax binding (ConnectingEurope/eInvoicing-EN16931, EUPL-1.2).

Check your invoice against this rule