InvoiceIn
Language: EN

BR-CL-23

EN 16931 · validation rule

EN 16931Error
A unit of measure code (BT-130 or BT-150) is not from UN/ECE Recommendation 20 (with Rec 21 extension). Use e.g. C62 (piece/unit), H87 (piece), HUR (hour), DAY (day), KGM (kilogram), MTR (metre), LTR (litre), MON (month); 'Stk', 'pcs' or 'EA' are not valid codes.
Field
lines[].unit (BT-130) / lines[].price.base_unit (BT-150)
Rule set
EN 16931
Rule-set version
EN 16931 validation artefacts 1.3.17 · in force since · Rule-set changelog
Who has to fix it
The sender

This is a property of the file you received, so it cannot be corrected on your side without changing the document — ask the supplier to reissue it.

Worked example · UBL

unitCode comes from UN/ECE Recommendation 20/21: "piece" is H87 (or C62 for "one"), never a free label like PCS or Stk.

Fails this rule
<cbc:InvoicedQuantity unitCode="PCS">1</cbc:InvoicedQuantity>
Passes
<cbc:InvoicedQuantity unitCode="H87">1</cbc:InvoicedQuantity>

Worked example · CII

Fails this rule
<ram:BilledQuantity unitCode="PCS">1</ram:BilledQuantity>
Passes
<ram:BilledQuantity unitCode="H87">1</ram:BilledQuantity>

Check your own invoice

Drop the file that failed. We parse it, run the official rule sets against it and list every finding with a fix — 20 invoices per day, no key, nothing stored.

Open the live demo

Same explanation over the API: GET /v1/rules/BR-CL-23?lang=en