BR-28
A line's gross price (BT-148) may not be negative — the same requirement as BR-27, one level above it.
- Severity
- Error
- Applies to
- CII, UBL
- Rule set
- v2026-01-31
Official rule text
The Item gross price (BT-148) shall NOT be negative.
Why does BR-28 happen?
Whoever sets the net price negative usually sets the gross price negative too, both coming from one source. The two rules therefore almost always report together.
How do you fix BR-28?
Keep cac:Price/cac:AllowanceCharge/cbc:BaseAmount in UBL, or ram:GrossPriceProductTradePrice/ram:ChargeAmount in CII, positive, and put the sign where the norm provides for it — see BR-27.
In the XML
A UBL fragment. The CII path is named above — same change, different element names.
<cac:Price>
<cbc:PriceAmount currencyID="EUR">100.00</cbc:PriceAmount>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">10.00</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">-110.00</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price><cac:Price>
<cbc:PriceAmount currencyID="EUR">100.00</cbc:PriceAmount>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">10.00</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">110.00</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price>NormAPI provides technical validation, not tax or legal advice.