Peppol BIS Billing 3.0.21 · UBL

BR-DEC-24: The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2

Peppol BIS Billing 3.0.21 · UBL

fatalbusiness

Original rule text

[BR-DEC-24]-The allowed maximum number of decimals for the Invoice line allowance amount (BT-136) is 2.

Stored validation assertion
string-length(substring-after(cbc:Amount,'.'))<=2

BR-DEC-24 is a fatal rule in the business layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected. It refers to BT-136.

What this rule requires

The rule requires the line-level allowance amount BT-136 to have no more than two decimal places. It applies to cbc:Amount inside cac:AllowanceCharge where cbc:ChargeIndicator is false (UBL), and to ram:ActualAmount inside ram:SpecifiedTradeAllowanceCharge where ram:ChargeIndicator is false (CII). The test counts the characters after the decimal point in that amount and fails if there are more than 2. A value without a decimal point passes.

How to fix

Set the allowance amount to a value with at most two decimal places, such as 10.50 or 10. In UBL change cbc:Amount; in CII change ram:ActualAmount. If the amount is produced by a system, format it to no more than two decimals before generating the invoice.

Guidance on this rule. The original text above is authoritative.

Where to go next

No published Peppol BIS Billing UBL release comparison lists a change to BR-DEC-24.

Validate an invoice against these rules · All release changes