Reference
Markdown exportBR-26 Item net price must be present on every invoice line
Under EN 16931 rule BR-26, every invoice line (BG-25) must include the item net price in BT-146 (PriceAmount). The item net price is the price of a single unit of the item (or base quantity of units), exclusive of VAT and after deducting any line item price discounts. Even if an item is provided free of charge (0.00 EUR) or bundled, the net price element must be explicitly declared to allow verification of line extension arithmetic: LineExtensionAmount = (ItemNetPrice / BaseQuantity) * InvoicedQuantity - LineAllowances + LineCharges.
Problem Description
Under EN 16931 rule BR-26, every invoice line (BG-25) must include the item net price in BT-146 (PriceAmount). The item net price is the price of a single unit of the item (or base quantity of units), exclusive of VAT and after deducting any line item price discounts. Even if an item is provided free of charge (0.00 EUR) or bundled, the net price element must be explicitly declared to allow verification of line extension arithmetic: LineExtensionAmount = (ItemNetPrice / BaseQuantity) * InvoicedQuantity - LineAllowances + LineCharges.
ERROR
XRechnung 3.0
Context and Significance
Without BT-146, Schematron engines cannot validate the calculation of line totals or enforce Peppol unit pricing formula rules (PEPPOL-EN16931-R120).
Solution
In your ERP item master or order pricing configuration, ensure every line item populates the unit net price. In UBL 2.1 syntax, populate <cac:Price><cbc:PriceAmount currencyID="EUR">45.00</cbc:PriceAmount></cac:Price> inside <cac:InvoiceLine>. In UN/CEFACT CII syntax, populate <ram:ChargeAmount>45.00</ram:ChargeAmount> within <ram:NetPriceProductTradePrice> under <ram:SpecifiedLineTradeAgreement>. For free goods, output 0.00.
Quick actions
Valid Examples
- Invoice line price with BT-146 = 45.00 EUR and base quantity 1
- Invoice line price for promotional free item with BT-146 = 0.00 EUR
Invalid Examples
- cac:InvoiceLine contains invoiced quantity and item details but omits the cac:Price element completely
- cac:Price element instantiated with empty PriceAmount tag (<cbc:PriceAmount/>)
Code Examples
<cac:Price>
<cbc:PriceAmount currencyID="EUR">45.00</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="H87">1</cbc:BaseQuantity>
</cac:Price><cac:Item>
<cbc:Name>Softwarelizenz</cbc:Name>
</cac:Item>