Use an allowed identifier scheme for the ship-to party

Error FX-SCH-A-000821 Factur-X

Value of '@schemeID' 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 non-empty value of schemeID on ram:GlobalID is not included in the designated code list.

What the rule means

The value of schemeID associates the global identifier with a defined identifier scheme. The rule requires any provided non-empty value to be included in the corresponding code list.

Please use an allowed identifier scheme for the ship-to party

The identifier scheme for the ship-to party’s global identifier has a value that is not in the designated code list. Use a value listed there or leave the attribute empty.

What to do
  1. Locate ram:GlobalID for the party at the ship-to address.
  2. Check the value of schemeID against the designated code list.
  3. Replace a value that is not listed with an allowed value, or leave schemeID empty.
  4. Generate the invoice again and validate it.
Technical details

The test permits an empty value; otherwise, the value of schemeID must occur as an entry in code list 11.

Where the rule applies

The rule applies to the value of the schemeID attribute on ram:GlobalID of the party at the ship-to address.

Context (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeDelivery/ ram:ShipToTradeParty/ram:GlobalID
Test expression (assert/@test)
string-length($codeValue11)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=11]/enumeration[@value=$codeValue11]