BR-DE-CVD-06-b: cva attribute without a CVD classification on the same line
Severity: fatal ยท Syntax: CII, UBL
Official message
Wenn {name()} "Item attribute name" (BT-160) mit dem Wert 'cva' angegeben ist, muss in derselben Rechnungszeile genau ein {name()} "Item classification identifier" (BT-158) mit dem Scheme identifier 'CVD' vorhanden sein.
What this means
If BT-160 is cva, the same line must contain exactly one BT-158 with scheme identifier CVD. UBL: count(ItemClassificationCode[@listID = 'CVD']) = 1.
Typical cause
The cva attribute is on a line without a vehicle classification, or the classification is duplicated.
How to fix it
Add exactly one classification with listID CVD on the same line.
UBL
<cbc:ItemClassificationCode listID="CVD">N1</cbc:ItemClassificationCode>CII
<ram:ClassCode listID="CVD">N1</ram:ClassCode>
Business term
Item attribute name (BT-160), Item classification identifier (BT-158)
Related rules
Context and assertion
UBL (/ubl:Invoice[$isCVD]/cac:InvoiceLine | /cn:CreditNote[$isCVD]/cac:CreditNoteLine)/cac:Item
CII /rsm:CrossIndustryInvoice[$isCVD]/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedTradeProduct
UBL
not(cac:AdditionalItemProperty[cbc:Name = 'cva']) or count(cac:CommodityClassification/cbc:ItemClassificationCode[@listID = 'CVD']) = 1CII
not(ram:ApplicableProductCharacteristic/ram:Description = 'cva') or count(ram:DesignatedProductClassification/ram:ClassCode[@listID = 'CVD']) = 1
Check a file now, free of charge
curl -F "file=@rechnung.xml" https://checkxrechnung.com/v1/validate
Questions
What does BR-DE-CVD-06-b actually check?
If BT-160 is cva, the same line must contain exactly one BT-158 with scheme identifier CVD. UBL: count(ItemClassificationCode[@listID = 'CVD']) = 1.
How do I fix BR-DE-CVD-06-b?
Add exactly one classification with listID CVD on the same line.
If BR-DE-CVD-06-b passes, is the invoice legally compliant?
No. This page helps you read this one Schematron assertion. A pass is not a statement about tax law, portal acceptance, or bank overlays.