Skip to content

Error

FX-SCH-A-000296: A classification code must say which scheme it uses

In short

Error: fails the selected checks.

FX-SCH-A-000296 means an item classification code on an invoice line (BT-158) has no scheme (the listID attribute, BT-158-1). Add the scheme the code comes from, such as HS, and export the invoice again.

On this page

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
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether FX-SCH-A-000296 still fails, and which other rules do.

Updated 5 November 2026