Error code BR-DEC-23 means: the net amount of an invoice line has more than two digits after the decimal point.
What does BR-DEC-23 mean?
The validator shows this message (as worded in the official rules):
[BR-DEC-23]-The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.
The net amount of an invoice line (BT-131, InvoiceLine/LineExtensionAmount) may have at most two decimals. Even 300.000 is wrong, although its value equals 300.00. In our test this also triggered UBL-DT-01, the general rule that amounts have at most two decimals. A unit price (PriceAmount) may have more decimals: 100.0000 gave no error in our test.
Common causes
- The software calculates with four decimals and exports the line amount without rounding.
- A fixed format in the export always writes three or four decimals.
- A line amount was calculated as quantity times a price with many decimals, without rounding.
How to fix it as the sender
- Round every line amount to two decimals before putting it in the XML.
- Prices may keep more decimals, amounts may not.
- Then check PEPPOL-EN16931-R120: the rounded line amount must still match quantity times price.
Received an invoice with this error?
An invoice with this error is not compliant. Ask the supplier for a corrected invoice and do not change the XML yourself.
Example in the XML
❌ Wrong
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="HUR">3</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">300.000</cbc:LineExtensionAmount>
...
</cac:InvoiceLine>
✅ Correct
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="HUR">3</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">300.00</cbc:LineExtensionAmount>
...
</cac:InvoiceLine>
Both snippets come from a complete test invoice that we checked with our validator: the wrong version gives exactly this message, the correct version no errors at all.
Good to know
Similar rules exist for other amounts, from BR-DEC-01 to BR-DEC-28, each with a maximum of two decimals.
Check your invoice
Drop your XML into the free validator. You see right away whether this error still occurs, with a link to the explanation for every message.
Official rule
The full rule with its technical test (Schematron) is in the official Peppol documentation:
Related error codes
- BR-CL-23: The unit of a quantity is not a valid code from the official list.
- PEPPOL-EN16931-R120: The net amount of an invoice line does not equal quantity × unit price, plus charges and minus allowances on that line.
Frequently asked questions about BR-DEC-23
May a unit price have more than two decimals?
Yes. In our test a price of 100.0000 gave no error. The limit applies to amounts, such as line amounts and totals.
What is UBL-DT-01?
A general UBL rule: amounts have at most two decimals. It often appears together with a BR-DEC rule.