Au maximum deux décimales pour le montant à payer

Erreur BR-DEC-18 EN 16931

Le nombre maximal de décimales autorisé pour le Montant dû pour paiement (BT-115) est de 2.

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

ram:DuePayableAmount contient plus de deux caractères après un point décimal. Le test compte les caractères après le premier point ; une valeur avec trois décimales enfreint donc la règle.

Ce que signifie la règle

Le montant à payer est un montant monétaire et, selon cette règle, ne peut comporter plus de deux décimales.

Champs concernés BT-115
Veuillez indiquer le montant à payer avec deux décimales au maximum

Le montant à payer comporte plus de deux décimales. Vous pouvez ajuster la valeur à la précision autorisée.

Que faire ?
  1. Vérifiez la valeur de ram:DuePayableAmount.
  2. Veillez à ne pas avoir plus de deux chiffres après le point décimal.
  3. Vérifiez le mapping vers la propriété DuePayableAmount.
  4. Générez de nouveau la facture et vérifiez-la à nouveau.
À quoi cela ressemble
✗ Déclenche le message
<ram:DuePayableAmount>99.999</ram:DuePayableAmount>
✓ Correct
<ram:DuePayableAmount>100.00</ram:DuePayableAmount>
À vérifier dans FactoorSharp
  • FacturXInvoice.DuePayableAmount (BT-115)
Détails techniques

Dans le contexte ram:SpecifiedTradeSettlementHeaderMonetarySummation, la règle vérifie que la longueur de la sous-chaîne après le point dans ram:DuePayableAmount ne dépasse pas deux.

Où la règle s'applique

La règle s’applique à ram:DuePayableAmount dans les totaux monétaires de l’en-tête de facture.

Message d'origine du Schematron
The allowed maximum number of decimals for the Amount due for payment (BT-115) is 2.
Contexte (rule/@context)
//ram:SpecifiedTradeSettlementHeaderMonetarySummation
Expression de contrôle (assert/@test)
string-length(substring-after(ram:DuePayableAmount,'.'))<=2