What it means
On each line, the unit price before discount (BT-148) can carry one discount (BT-147). This rule checks that the discount holds no BasisQuantity, an element that names a quantity the discount is based on. The discount amount itself is allowed. Only this extra element is flagged.
Why it matters
EN 16931 describes the discount on a unit price by its amount alone, so receiving software has no field for a basis quantity and may ignore it. Because this is a warning, the file is still accepted. It is worth fixing if you want a clean file, if the recipient asks for one, or if the buyer relies on the quantity, since it may never be read.
How to fix it
In the XML the element sits in each line, under SpecifiedLineTradeAgreement, GrossPriceProductTradePrice and AppliedTradeAllowanceCharge. Your invoicing software normally writes it, so look for a setting that chooses the output format or profile and pick EN 16931, XRechnung or Peppol BIS rather than a fuller profile such as Extended. If there is no such setting, ask the software supplier to stop writing it. If you edit the XML by hand, delete the BasisQuantity element and keep the discount amount.
The rule as published
BasisQuantity should not be present Where this rule applies
| Rule set | Version |
|---|---|
| EN 16931 (CII) | 1.3.17 |
| XRechnung 3.0 (CII) | 3.0.2 |
| NLCIUS (CII) | 1.0.3.13 |
| France CTC (CII) | 1.4.0-04 |
Check your file
Drop your e-invoice to see whether CII-SR-124 still fails, and which other rules do.
Related rules
- CII-SR-125 Remove the prepaid flag from the unit price discount
- CII-SR-126 Remove the unit basis amount from the unit price discount
- CII-SR-127 Remove the reason code from the unit price discount
- CII-SR-128 Remove the reason text from the unit price discount
- CII-SR-129 Remove the type code from the unit price discount
- CII-SR-130 Remove VAT details from the unit price discount