Codes d'erreur Peppol

BR-CO-16 : le montant à payer est incorrect

Le code d’erreur BR-CO-16 signifie : le montant à payer ne correspond pas au total TTC, moins le montant déjà payé, plus l’arrondi.

Jeu de règles: EN 16931 · Gravité: erreur (fatal) : un point d’accès rejette la facture · Vérifié avec les règles officielles de mai 2026

Que signifie BR-CO-16 ?

Le validateur affiche ce message (en anglais, comme dans les règles officielles) :

[BR-CO-16]-Amount due for payment (BT-115) = Invoice total amount with VAT (BT-112) -Paid amount (BT-113) +Rounding amount (BT-114).

Le montant à payer (BT-115, PayableAmount) doit être égal au total TTC (BT-112, TaxInclusiveAmount), moins le montant déjà payé (BT-113, PrepaidAmount), plus un éventuel arrondi (BT-114, PayableRoundingAmount). Ainsi, si vous déduisez un acompte sans indiquer PrepaidAmount, l’erreur BR-CO-16 apparaît.

Causes fréquentes

  • Le logiciel déduit un acompte du montant à payer, mais ne l’indique pas dans PrepaidAmount.
  • Le logiciel arrondit le montant à 5 centimes, mais n’indique pas l’arrondi dans PayableRoundingAmount.
  • Après une correction des totaux, le logiciel ne met pas à jour le montant à payer.

Comment corriger en tant qu’émetteur

  1. Indiquez ce qui a déjà été payé, comme un acompte, dans PrepaidAmount.
  2. Placez l’arrondi du montant à payer dans PayableRoundingAmount.
  3. Enfin, calculez le montant à payer en dernier : total TTC, moins le montant payé, plus l’arrondi.

Vous avez reçu une facture avec cette erreur ?

Une facture avec cette erreur n’est pas conforme. Demandez une facture corrigée au fournisseur et ne modifiez pas le XML vous-même.

Exemple dans le XML

❌ Incorrect

<cac:LegalMonetaryTotal>
  ...
  <cbc:TaxInclusiveAmount currencyID="EUR">363.00</cbc:TaxInclusiveAmount>
  <cbc:PayableAmount currencyID="EUR">360.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<!-- pas d'acompte (PrepaidAmount) ni d'arrondi -->

✅ Correct

<cac:LegalMonetaryTotal>
  ...
  <cbc:TaxInclusiveAmount currencyID="EUR">363.00</cbc:TaxInclusiveAmount>
  <cbc:PayableAmount currencyID="EUR">363.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>

Les deux extraits proviennent d’une facture de test complète vérifiée avec notre validateur : la version incorrecte donne exactement ce message, la version correcte aucune erreur.

Bon à savoir

Pour une facture finale après une facture d’acompte, il est aussi préférable de faire référence à la facture d’acompte. Ainsi, votre client peut rapprocher les deux documents.

Vérifiez votre facture

Déposez votre XML dans le validateur gratuit. Vous voyez tout de suite si cette erreur se produit encore, avec un lien vers l’explication pour chaque message.

Règle officielle

La règle complète avec son test technique (Schematron) figure dans la documentation officielle Peppol :

Codes d’erreur liés

  • BR-CO-15: Le total TVA comprise n’est pas égal au total hors TVA plus le montant de TVA.
  • BR-CO-13: Le total hors TVA ne correspond pas à la somme des lignes moins les remises plus les suppléments au niveau de la facture.

Questions fréquentes sur BR-CO-16

Avec BR-CO-16, le montant à payer peut-il être nul ?

Oui, par exemple si le client a tout payé à l’avance. Dans ce cas, PrepaidAmount est égal au total TTC et PayableAmount vaut 0.00.

Où indiquer un acompte payé ?

Dans cac:LegalMonetaryTotal/cbc:PrepaidAmount. La règle déduit ensuite ce montant du total TTC.

← Tous les codes d’erreur Peppol