Validation rules
BR-27 — EN 16931 rule
The item net price (BT-146) must not be negative.
- Rule
BR-27— official EN 16931 / XRechnung rule- Severity
- error
- Business term
BT-146— Item net price- Field in your JSON
invoice.lines[*].unit_price
How to fix it
Use a positive unit_price — a cancellation or correction (type_code 384) reverses lines with a negative qty instead.
Cancellation, correction or credit note — which type code applies, and why a UBL Invoice rejects 381: see the guide on cancellations, corrections and credit notes.
BR-27 auf Deutsch — was bedeutet der Fehler?
Der Netto-Einzelpreis einer Position (BT-146) darf nicht negativ sein.
So beheben Sie den Fehler
Verwenden Sie einen positiven unit_price. Stornos und Rechnungskorrekturen (type_code 384) kehren Positionen über eine negative Menge (qty) um — nie über einen negativen Preis.
Welcher Typcode für Storno, Korrektur oder Gutschrift gilt: Leitfaden zu Storno, Korrektur und Gutschrift.
Related rules
PEPPOL-EN16931-R046— The item net price must equal the gross price minus the price allowance when a gross price is provided.BR-26— An invoice line has no item net price (BT-146).BR-28— The item gross price (BT-148) must not be negative.BR-29— The invoicing period end date (BT-74) must not be earlier than its start date (BT-73).BR-25— An invoice line has no item name (BT-153).BR-30— An invoice line period end date (BT-135) must not be earlier than its start date (BT-134).
Official sources
- XRechnung specification (KoSIT / xeinkauf.de)
- KoSIT validator on GitHub and the XRechnung validator configuration
Every 422 from the API lists the rule id, the path in your request JSON, a plain-language message and a suggested fix — see the docs overview for the report format.
Or try it live: drop any XRechnung XML on the free validator — same KoSIT-backed report, no account.