BR-CO-10

Total HT lignes incohérent

La somme des montants nets de ligne (BT-131) doit être égale au total net des lignes déclaré en en-tête (BT-106).

Pourquoi cette erreur apparaît

Un arrondi appliqué différemment sur les lignes et sur le total, ou une ligne ajoutée/supprimée sans recalcul du total.

Où regarder

BT-131 (LineExtensionAmount par ligne) → BT-106 (LineExtensionAmount en en-tête)

Fix rapide

Calculer BT-106 par agrégation des BT-131 après arrondi de chaque ligne. Ne jamais calculer les deux indépendamment.

Exemple minimal

499.99 + 500.00 = 999.99, mais 1000.00 est déclaré en en-tête.
<!-- Ligne 1 : 499.99, Ligne 2 : 500.00 -->
<cbc:LineExtensionAmount currencyID="EUR">499.99</cbc:LineExtensionAmount>
<cbc:LineExtensionAmount currencyID="EUR">500.00</cbc:LineExtensionAmount>

<!-- En-tête : montant déclaré incorrect -->
<cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>

Bonnes pratiques

  • Toujours sommer les valeurs arrondies des lignes plutôt que recalculer le total globalement
  • Ajouter un test unitaire sur vos classes de calcul de totaux