BR-18:Invoice line price required
Each invoice line must have a price amount (item net price).
Engine Classification
Business data required · Explicit input workflow · No assumptions made
Required input: Unit Price
What is BR-18?
BR-18 is a fatal validation rule defined in the EN 16931 specification. It validates the PriceAmount element under InvoiceLine > Price in the UBL invoice XML.
When this rule fires, the invoice is non-compliant and will be rejected by Peppol access points and national validation services. The sending system receives a rejection response and the invoice does not reach the buyer.
Target path: XPath: /Invoice/cac:InvoiceLine/cac:Price/cbc:PriceAmount
Why This Error Matters
Invoice rejected. Tax authorities require the fiscal representative to be fully identified.
BR-18 is a hard failure. Invoices that trigger this rule are rejected at the access point and never reach the recipient. In Peppol networks, this means your sending system receives an MLR (Message Level Response) with a rejection status. The invoice must be corrected and re-sent, adding delay to your payment cycle.
Validator Behavior
- ·Causes invoice rejection
- ·Error returned: BR-18
- ·Specification: EN 16931
How to Fix It
Set unit price
Price for one unit of the item
Add currency
Include currencyID attribute
Verify calculation
Quantity × Price should equal LineExtensionAmount
Before / After
<cac:PartyName> <cbc:Name><!-- invalid or missing value --></cbc:Name> </cac:PartyName>
<cac:PartyName> <cbc:Name>correct-value</cbc:Name> </cac:PartyName>
Technical Reference
XPath: /Invoice/cac:InvoiceLine/cac:Price/cbc:PriceAmountCode Example
<cac:Price>
<cbc:PriceAmount currencyID="EUR">10.00</cbc:PriceAmount>
</cac:Price>Common Causes
- ·TaxRepresentativeParty section added but name missing
- ·Fiscal representative configured without PartyName
- ·VAT registration via representative not fully set up
- ·Template missing tax rep name field mapping
- ·Cross-border tax representative record incomplete
Seeing this in production? The API handles BR-18 automatically. See the fix response →
Commonly Seen In
Frequently Asked Questions
Each invoice line must have a price amount (item net price).
Add PriceAmount element with price per unit. You can also use Invoice Navigator's automatic Fixer tool to correct this instantly.
Yes, BR-18 is a critical error that will cause invoice rejection. It must be fixed before submission to ensure your invoice is accepted by the recipient's system.
Many instances of BR-18 can be automatically corrected using Invoice Navigator's Fixer tool. Upload your invoice and the tool will identify and fix common issues, including invoice line price required.
BR-18 is commonly seen in exports from All invoicing software. These software packages sometimes generate invoices that need adjustment to meet full compliance standards.
See Also
Related Errors
Last updated: 27 February 2026
Handle BR-18 Automatically in Your Pipeline
The compliance engine auto-remediates this error with controlled safety policies and evidence pack generation.