EN16931 1.3.16 · UBL / CII · Severity: ERROR
Unit of measure code must be from UN/ECE Recommendation 20 or 21
The unitCode attribute on InvoicedQuantity (BT-130) must be an official UN/ECE Recommendation 20 or 21 code.
- Rule ID & Severity
BR-CL-23· ERROR- Standard & Scope
- EN16931 1.3.16 · UBL / CII
- XPath Condition
cbc:InvoicedQuantity/@unitCode = $UNECE-REC20-REC21- Target XML Path
cac:InvoiceLine/cbc:InvoicedQuantity/@unitCode
Find the source field
cac:InvoiceLine/cbc:InvoicedQuantity/@unitCode
Match namespace URI and element name, not a particular prefix spelling. The validator reports the full expanded-name source path when the published rule supplies a location.
Common causes
- Human-readable unit names ("PCS", "HOURS", "DAYS", "Stück") were used instead of UN/ECE codes.
Invalid and corrected fragments
<cbc:InvoicedQuantity unitCode="HOURS">8</cbc:InvoicedQuantity>
<cbc:InvoicedQuantity unitCode="HUR">8</cbc:InvoicedQuantity>
Use official UN/ECE codes such as C62 or H87 (one/piece), HUR (hour), DAY (day), MON (month), or KGM (kilogram).
Open BR-CL-23 in en16931-validator →
Verify the whole document
These are fragments, not complete invoices. The exact rule is exercised by synthetic mutation tests against the stated package. Correcting one field does not prove conformance; run the full selected validator again. Published messages and severity remain authoritative.
Explanation record: 2026-10-14 · Local WebAssembly / SaxonJS validation. No invoice-derived report is published as a search page.