Disallowed CategoryCode

Error FX-SCH-A-001128 Factur-X

Value of 'ram:CategoryCode' is not allowed.

Mandatory rule: As long as it is violated, the invoice is invalid and will be rejected by validators.
What is wrong

The value of ram:CategoryCode is not included in the applicable code list. The check also permits an empty code value.

What the rule means

ram:CategoryCode identifies the tax category of the tax information. A non-empty value must belong to the codes defined for this element so that the category can be classified unambiguously.

Please use an allowed CategoryCode for the tax category

ram:CategoryCode in an invoice line’s tax information contains a value that does not match the applicable code list. You can adjust the value so that it is empty or included in that list.

What to do
  1. Locate ram:CategoryCode in ram:ApplicableTradeTax for the affected invoice line.
  2. Check its value against the code list applicable to this element.
  3. Generate the invoice again and check it once more.
Technical details

The test accepts an empty $codeValue24 value or a value listed under cl[@id=24] in FACTUR-X_EXTENDED_codedb.xml.

Where the rule applies

The rule applies to ram:CategoryCode within ram:ApplicableTradeTax on an invoice line.

Context (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode
Test expression (assert/@test)
string-length($codeValue24)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=24]/enumeration[@value=$codeValue24]