Rule family BR-DE-CVD
BR-DE-CVD-06-a: vehicle category without exactly one cva attribute
ErrorXRechnung business rule (KoSIT)
Official message
[BR-DE-CVD-06-a] Wenn der Scheme identifier von "Item classification identifier" (BT-158) mit dem Wert 'CVD' angegeben ist, muss in derselben Rechnungszeile genau ein "Item attribute name" (BT-160) mit dem Wert 'cva' vorhanden sein.Source: KoSIT XRechnung, version 3.0.2 (Schematron 2.6.0)
How to fix it
Add to every line with a CVD category exactly one cac:AdditionalItemProperty with cbc:Name cva and a permitted value, and remove duplicates. In CII the same applies to ram:ApplicableProductCharacteristic with ram:Description cva.
<cac:Item>
<cbc:Name>City bus M3</cbc:Name>
<cac:CommodityClassification>
<cbc:ItemClassificationCode listID="CVD">M3</cbc:ItemClassificationCode>
</cac:CommodityClassification>
</cac:Item><cac:Item>
<cbc:Name>City bus M3</cbc:Name>
<cac:CommodityClassification>
<cbc:ItemClassificationCode listID="CVD">M3</cbc:ItemClassificationCode>
</cac:CommodityClassification>
<cac:AdditionalItemProperty>
<cbc:Name>cva</cbc:Name>
<cbc:Value>clean</cbc:Value>
</cac:AdditionalItemProperty>
</cac:Item>What the message means
An invoice line carries a vehicle category with the scheme CVD, but the matching attribute cva is missing or appears more than once. The CVD extension requires both details as a pair in the same line: the category says what kind of vehicle it is, the attribute whether it is clean or zero-emission. Without the attribute the public body lacks the classification; with several attributes it would be contradictory. Per line: exactly one category, exactly one attribute.
Common causes
- The attribute cva was set only in the first vehicle line, not in the following ones.
- The software writes the attribute twice, for example from master data and from the order.
- The classification was added but the attribute forgotten.
Frequently asked
May one line contain two vehicles with different classifications?
No. Each classification needs its own line with its own pair of category and attribute; otherwise the assignment is not unambiguous.
What distinguishes 06-a from 06-b?
06-a starts from the category and requires exactly one attribute; 06-b starts from the attribute and requires exactly one category. Both secure the pair.
Fields concerned
- BT-158
- BT-160
- BG-25
- BG-32
Related rules
Check your invoice
The XRechnung validator reports this rule with the line number and location – right in your browser, without upload.
Technical details
- UBL · Context (XPath)
(/ubl:Invoice[$isCVD]/cac:InvoiceLine | /cn:CreditNote[$isCVD]/cac:CreditNoteLine)/cac:Item- UBL · Schematron test
not(cac:CommodityClassification/cbc:ItemClassificationCode[@listID = 'CVD']) or count(cac:AdditionalItemProperty[cbc:Name = 'cva']) = 1- CII · Context (XPath)
/rsm:CrossIndustryInvoice[$isCVD]/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct- CII · Schematron test
not(ram:DesignatedProductClassification/ram:ClassCode/@listID = 'CVD') or count(ram:ApplicableProductCharacteristic[ram:Description = 'cva']) = 1
Explanation written on 14 September 2026