What it means
When a line carries an item classification code (BT-158), such as a customs tariff code, the element ram:ClassCode must have a listID attribute (BT-158-1) that says which classification the code comes from. Which values are allowed is covered by FX-SCH-A-000297. This check applies to the EN 16931 and Extended profiles of Factur-X and ZUGFeRD.
Why it matters
A bare code is ambiguous, because the same digits can mean different things in different classification systems. Without the scheme the recipient cannot interpret the code, and the invoice can be rejected.
How to fix it
In your invoicing software, find the classification or commodity code field of the item and choose or enter the scheme next to it, for example HS for a customs tariff code. If the software has no scheme field, remove the code from the line or update the software. If you build the XML yourself, add the attribute to the element, for example listID="HS" on ram:ClassCode.
Once the file is corrected, check it again for free: Validate a ZUGFeRD invoice
Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice Beta
The rule as published
Attribute '@listID' is required in this context. Where this rule applies
| Rule set | Version |
|---|---|
| Factur-X 1.09 EN 16931 | 1.0.9-2 |
| Factur-X 1.09 EXTENDED | 1.0.9-2 |
| ZUGFeRD 2.5 EN 16931 | 2.5.2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000296 still fails, and which other rules do.
Related rules
- FX-SCH-A-000297 Use an allowed classification scheme code
- FX-SCH-A-000315 State at most one document language
- FX-SCH-A-000316 The document's effective period needs one date entry
- FX-SCH-A-000317 Each invoice note can hold only one text (Extended)
- FX-SCH-A-000319 Delivery terms need one delivery type code
- FX-SCH-A-000320 Use an allowed delivery terms code