ReasonCode non autorisé pour la remise

Erreur FX-SCH-A-001033 Factur-X

La valeur de 'ram:ReasonCode' n'est pas autorisée.

Règle obligatoire : tant qu'elle n'est pas respectée, la facture est invalide et sera rejetée par les validateurs.
Ce qui ne va pas

Si ram:ReasonCode contient une valeur, celle-ci doit figurer dans la liste de codes référencée par cette règle. Une valeur absente de la liste n’est pas autorisée ; ce test ne rejette pas une valeur vide.

Ce que signifie la règle

Le code de motif associe un motif à la remise. La liste de codes limite les valeurs autorisées afin que le motif soit représenté par un code admis.

Veuillez utiliser un `ReasonCode` autorisé pour la remise

Le ram:ReasonCode indiqué pour la remise ne figure pas dans la liste de codes correspondante. Utilisez un code de cette liste ou laissez la valeur vide.

Que faire ?
  1. Repérez ram:ReasonCode dans la remise sur le prix brut de la ligne de facture.
  2. Comparez sa valeur à la liste de codes référencée par cette règle et utilisez une valeur de cette liste ou une valeur vide.
  3. Générez de nouveau la facture et vérifiez-la à nouveau.
Détails techniques

Le test accepte une valeur vide ou une valeur répertoriée dans codedb.xml sous la liste de codes d’identifiant 21.

Où la règle s'applique

La règle s’applique à ram:ReasonCode d’une remise sur le prix brut d’une ligne de facture.

Message d'origine du Schematron
Value of 'ram:ReasonCode' is not allowed.
Contexte (rule/@context)
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ ram:SpecifiedLineTradeAgreement/ram:GrossPriceProductTradePrice/ram:AppliedTradeAllowanceCharge[ram:ChargeIndicator/ udt:Indicator="false"]/ram:ReasonCode
Expression de contrôle (assert/@test)
string-length($codeValue21)=0 or document('FACTUR-X_EXTENDED_codedb.xml')/codedb/cl[@id=21]/enumeration[@value=$codeValue21]