Aller au contenu

Ironfang Finance - Référence des règles

BR-DEC-12 : Écrire le total hors TVA avec deux décimales au plus

cbc:TaxExclusiveAmount dans les totaux monétaires a plus de deux chiffres après le point décimal. Écrivez le total hors TVA avec deux décimales au plus.

EN 16931Erreur : le document n'est pas valideTotaux

Sur cette page

La réponse courte

BR-DEC-12 échoue lorsque cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount est écrit avec plus de deux chiffres après le point décimal. Écrivez le total hors TVA avec deux décimales au plus, par exemple 68.50 plutôt que 68.500.

Le contrôle porte sur la forme écrite, pas sur la valeur : un seul zéro de remplissage suffit à le faire échouer. UBL-DT-01 signale le même élément lors de la même exécution.

Ce que la règle vérifie

La règle s'exécute sur cac:LegalMonetaryTotal, lit le texte de son cbc:TaxExclusiveAmount et autorise au plus deux caractères après le point décimal. Moins convient ; lors d'un essai, 68.5 a été validé sans constat.

Chaque total monétaire a sa propre règle de décimales, donc un formateur qui les complète tous produit un constat par total. Cette règle ne couvre que le total hors TVA ; le montant à payer, par exemple, relève de BR-DEC-18.

L'arithmétique est contrôlée ailleurs. Lors d'un essai, une valeur non arrondie de 68.504 a aussi signalé BR-CO-13, car elle n'est pas le total des lignes moins les remises plus les frais, tandis que BR-CO-15 passait toujours, puisque cette règle arrondit sa propre somme avant de comparer.

TermeSignificationÉlément UBL
BT-109Montant total de la facture hors TVAcac:LegalMonetaryTotal/cbc:TaxExclusiveAmount

Comment une intégration en arrive là

Causes possibles, déduites de la forme de la règle et non d'une utilisation mesurée :

  • Le total hors TVA est additionné à partir de montants de ligne conservés avec trois ou quatre décimales et n'est jamais arrondi avant d'être écrit.
  • Une colonne décimale d'échelle trois ou quatre est sérialisée à pleine échelle, si bien qu'un 68.5 stocké sort sous la forme 68.500.
  • Le formateur choisi pour les quantités et les prix, qui peuvent porter plus de décimales, est réutilisé pour les totaux.

Comment corriger le document

  1. Calculez le total hors TVA à partir des totaux arrondis des lignes, des remises et des frais, et arrondissez le résultat à deux décimales.
  2. Formatez-le avec deux décimales au plus et sans espaces, et écrivez-le dans cac:LegalMonetaryTotal/cbc:TaxExclusiveAmount.
  3. Utilisez le même formatage à deux décimales pour tous les montants du document, pas seulement celui-ci ; chaque total et chaque montant de ventilation est soumis à la même limite.
  4. Si l'arrondi a modifié la valeur, recalculez le total TVA comprise à partir du montant arrondi.

Valider votre facture corrigée

Avant et après

Ce sont des extraits, pas des documents complets. Les documents synthétiques complets dont ils proviennent sont liés ci-dessous.

Fragment de la facture en échec : le total hors TVA est écrit 68.500

<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="GBP">66.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="GBP">68.500</cbc:TaxExclusiveAmount>
  <cbc:TaxInclusiveAmount currencyID="GBP">80.20</cbc:TaxInclusiveAmount>
  <!-- remaining totals omitted from this fragment -->
</cac:LegalMonetaryTotal>

Fragment de la facture corrigée : le même total écrit 68.50

<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="GBP">66.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="GBP">68.50</cbc:TaxExclusiveAmount>
  <cbc:TaxInclusiveAmount currencyID="GBP">80.20</cbc:TaxInclusiveAmount>
  <!-- remaining totals omitted from this fragment -->
</cac:LegalMonetaryTotal>

Les deux documents ne diffèrent que par la façon d'écrire le total hors TVA : 68.500 contre 68.50. La valeur est la même, donc aucun total qui en dépend n'est perturbé. Le document en échec signale BR-DEC-12 sur cac:LegalMonetaryTotal et UBL-DT-01 sur le cbc:TaxExclusiveAmount lui-même. UBL-DT-01 est la limite au niveau de la syntaxe qui couvre tous les éléments de montant, hormis les prix des articles et les montants d'une remise au niveau du prix ; le total hors TVA n'en est pas exempté, donc pour cet élément les deux constats vont toujours ensemble.

Ce que le validateur a signalé

Enregistré avec phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, le moteur du validateur gratuit, sur des données synthétiques. Un résultat enregistré est une preuve de non-régression pour ces documents ; ce n'est pas une certification.

Où la règle s'applique

  • S'applique de la même façon aux documents UBL Invoice et CreditNote. Lors d'un essai, un avoir avec un total hors TVA de 68.500 a signalé les deux mêmes constats.
  • La limite ne change pas avec la devise, puisque currencyID n'est pas lu.
  • Le schéma refuse une virgule décimale dans tout montant, donc une telle valeur échoue à l'étape XSD avant que cette règle puisse s'exécuter.

Portée et source

Rédigé pour Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, tel qu'appliqué aux documents Invoice et CreditNote en UBL 2.1. D'autres profils, syntaxes et versions peuvent définir cet identifiant autrement. Version du catalogue d'aide 2026-09-24.1 : source vérifiée le 2026-09-24, explication mise à jour le 2026-09-24.

La définition officielle de BR-DEC-12 (en anglais) contient le texte normatif et le test. Cette page en est notre explication, pas une copie.

Cette aide ne modifie pas le verdict du moteur. Corriger ce constat ne signifie pas que le document passe toutes les étapes de validation, et la validation ne certifie pas la conformité juridique ou fiscale et ne transmet aucun document via Peppol.