XRechnung 2.3.0 · UBL

BR-DEC-25

XRechnung 2.3.0 · UBL

fatalcountry

Original rule text

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

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

What this rule requires

BR-DEC-25 requires the invoice line allowance base amount (BT-137) to be expressed with no more than two decimal places. For UBL it checks cbc:BaseAmount on the line-level allowance charge; for CII it checks ram:BasisAmount under the corresponding specified trade allowance charge. A document fails if the value contains more than two digits after the decimal point, such as 10.345, because the portion after the . has length 3.

How to fix

Ensure the cbc:BaseAmount or ram:BasisAmount value for the line-level allowance charge has at most two digits after the decimal point. For example, change 10.345 to 10.34 or 10.35. The value may also be a whole number or have one decimal place. If the document is generated by software, format the allowance base amount field to output no more than two decimal places.

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