BR-DE-CVD-06-bWenn […] "Item attribute name" (BT-160) mit dem Wert 'cva' angegeben ist, muss in derselben Rechnungszeile genau ein […] "Item classification identifier" (BT-158) mit dem Scheme identifier 'CVD' vorhanden sein.

Official rule text

Where an item carries an attribute whose name (BT-160) is cva, the same item must have exactly one item classification identifier (BT-158) under the CVD scheme: not none, and not two. Only listID="CVD" spelled exactly that way counts; the same category under another scheme does not. The reverse direction is BR-DE-CVD-06-a.

Severity
Error
Applies to
CII, UBL
Rule set
v2026-08-31
Checked on

Written and checked against the official KoSIT rule set by Dmytro Yalanskyi, NormAPI.

Why does BR-DE-CVD-06-b happen?

The category sits under another scheme, ZZZ for instance — a natural result if the line was first tested as an ordinary XRechnung, where BR-CL-13 rejects the CVD scheme because it is not in UNTDID 7143. Two categories appear when one line combines, say, a car (M1) and a van (N1).

What the validator checks

The expression the official KoSIT rule set evaluates — not paraphrased, but read from the Schematron file it ships. UBL and CII address different document trees, so the same rule reads differently in each.

UBL
not(cac:AdditionalItemProperty[cbc:Name = 'cva']) or count(cac:CommodityClassification/cbc:ItemClassificationCode[@listID = 'CVD']) = 1
CII
not(ram:ApplicableProductCharacteristic/ram:Description = 'cva') or count(ram:DesignatedProductClassification/ram:ClassCode[@listID = 'CVD']) = 1

Source: rule set v2026-08-31

How do you fix BR-DE-CVD-06-b?

Set the category exactly once per line with listID="CVD" — on cac:CommodityClassification/cbc:ItemClassificationCode in UBL, on ram:DesignatedProductClassification/ram:ClassCode in CII. Vehicles of different categories belong on separate invoice lines. Further classifications may stand alongside, as long as their scheme comes from UNTDID 7143 — which is what BR-TMP-CVD-01 checks.

In the XML

A UBL fragment. The CII path is named above — same change, different element names.

Fails
<cac:Item>
  <cbc:Name>Gelenkbus 18 m, batterieelektrisch</cbc:Name>
  <cac:CommodityClassification>
    <cbc:ItemClassificationCode listID="ZZZ">M3</cbc:ItemClassificationCode>
  </cac:CommodityClassification>
  <cac:ClassifiedTaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:ClassifiedTaxCategory>
  <cac:AdditionalItemProperty>
    <cbc:Name>cva</cbc:Name>
    <cbc:Value>zero-emission</cbc:Value>
  </cac:AdditionalItemProperty>
</cac:Item>
Fixed
<cac:Item>
  <cbc:Name>Gelenkbus 18 m, batterieelektrisch</cbc:Name>
  <cac:CommodityClassification>
    <cbc:ItemClassificationCode listID="CVD">M3</cbc:ItemClassificationCode>
  </cac:CommodityClassification>
  <cac:ClassifiedTaxCategory>
    <cbc:ID>S</cbc:ID>
    <cbc:Percent>19</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:ClassifiedTaxCategory>
  <cac:AdditionalItemProperty>
    <cbc:Name>cva</cbc:Name>
    <cbc:Value>zero-emission</cbc:Value>
  </cac:AdditionalItemProperty>
</cac:Item>

Related rules

NormAPI provides technical validation, not tax or legal advice.