Peppol BIS Billing 3.0.21 · UBL

PEPPOL-EN16931-R121: Base quantity MUST be a positive number above zero

Peppol BIS Billing 3.0.21 · UBL

fatalformat

Original rule text

[PEPPOL-EN16931-R121]-Base quantity MUST be a positive number above zero.

Stored validation assertion
not(cac:Price/cbc:BaseQuantity) or xs:decimal(cac:Price/cbc:BaseQuantity) > 0

PEPPOL-EN16931-R121 is a fatal rule in the format layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.

What this rule requires

For each cac:InvoiceLine or cac:CreditNoteLine, the UBL test allows cac:Price/cbc:BaseQuantity to be absent, but when it is present its value, converted to decimal, must be greater than 0. The rule therefore rejects a present base quantity of 0, a negative number, or a value that cannot be read as a decimal. The message states "Base quantity MUST be a positive number above zero", which the test applies only when the element exists.

How to fix

If cac:Price/cbc:BaseQuantity is present, set it to a positive number above zero (e.g. 1). If base quantity does not apply, remove the element. Check that the value is a valid decimal, not zero or negative.

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 PEPPOL-EN16931-R121.

Validate an invoice against these rules · All release changes