Une remise n'indique pas son motif
Chaque remise au niveau document (BG-20) doit porter un motif en clair (BT-97), un code de motif (BT-98), ou les deux.
Seul l’émetteur détient cette valeur : Factlint la signale et ne la fabrique jamais. Testez votre facture pour savoir si elle est concernée.
Le message que votre validateur affiche
Recopié tel quel de l’artefact scellé : c’est la phrase exacte que le contrôle imprime quand cette règle échoue.
[BR-CO-21]-Each Document level allowance (BG-20) shall contain a Document level allowance reason (BT-97) or a Document level allowance reason code (BT-98), or both.
Cité de schematron-cen 1.3.16, sous licence EUPL-1.2.
Requêtes fréquentes autour de ce code
Ces formulations reprennent les recherches réelles d’un intégrateur : code, syntaxe, règle, champ métier et correction.
Tester votre fichier avec cette erreur en tête
Déposez la facture concernée : le rapport dira si ce code apparaît, où il apparaît dans le document, et si Factlint peut seulement le signaler ou aussi le corriger.
Pour automatiser ce contrôle dans une chaîne ERP, appelez l’API de validation et reliez chaque code rendu à sa fiche publique.
Pourquoi cette erreur se produit
Une remise sans motif est fréquente sur les factures issues d'une négociation commerciale, où le montant est saisi directement en pied. La norme ne demande pas de justification détaillée — elle demande qu'un lecteur puisse savoir de quoi il s'agit.
Comment la corriger
Ajoutez l'un des deux. Le code UNCL 5189 suffit et voyage mieux qu'un texte libre ; le texte reste utile quand aucun code de la liste ne décrit le cas.
Exemple de correction XML
<ram:SpecifiedTradeAllowanceCharge> <ram:ActualAmount>30.00</ram:ActualAmount> </ram:SpecifiedTradeAllowanceCharge>
<ram:SpecifiedTradeAllowanceCharge> <ram:ActualAmount>30.00</ram:ActualAmount> <ram:ReasonCode>95</ram:ReasonCode> </ram:SpecifiedTradeAllowanceCharge>