What does BR-27 mean?
The price per unit without VAT must not be less than zero. Discounts belong in an allowance, not in a minus price.
Common causes of BR-27
- A discount or a refund was modelled as a negative item net price.
- A credit note line was wrongly written into an invoice with a negative price.
- A sign error in the export flipped the price into the negative.
How to fix BR-27
- Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-146 along this XPath:
//ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:ChargeAmount - Apply the fix. The item net price (BT-146) must not be negative. Set a value of 0 or greater in ram:NetPriceProductTradePrice/ram:ChargeAmount. For credit notes or discounts use a credit note (invoice type 381) or an allowance, not a negative price.
- Validate again. Save the file and validate it again to check that BR-27 is no longer reported.
The item net price (BT-146) must not be negative. Set a value of 0 or greater in ram:NetPriceProductTradePrice/ram:ChargeAmount. For credit notes or discounts use a credit note (invoice type 381) or an allowance, not a negative price.
//ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeAgreement/ram:NetPriceProductTradePrice/ram:ChargeAmountBefore / after: the XML example
This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>-10.00</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
<ram:NetPriceProductTradePrice>
<ram:ChargeAmount>10.00</ram:ChargeAmount>
</ram:NetPriceProductTradePrice>
Frequent questions about BR-27
How do I show a discount if the price must not be negative?
May the price be 0?
Related error codes
Check BR-27 automatically
Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – upload the PDF or the XML and you get every error with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.