Codes d'erreur Peppol

BR-CO-13 : le total hors TVA est incorrect

Le code d’erreur BR-CO-13 signifie : le total hors TVA ne correspond pas à la somme des lignes moins les remises plus les suppléments au niveau de la facture.

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-13 ?

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

[BR-CO-13]-Invoice total amount without VAT (BT-109) = Σ Invoice line net amount (BT-131) - Sum of allowances on document level (BT-107) + Sum of charges on document level (BT-108).

Le total hors TVA (BT-109, TaxExclusiveAmount) doit être égal à la somme des montants de ligne (BT-131), moins les remises au niveau de la facture (BT-107, AllowanceTotalAmount) et plus les suppléments au niveau de la facture (BT-108, ChargeTotalAmount). Une remise traitée uniquement dans le total, sans cac:AllowanceCharge propre, provoque cette erreur.

Causes fréquentes

  • Une remise, par exemple un escompte, a été déduite du total sans remise distincte au niveau de la facture.
  • Un supplément, comme des frais de transport, figure dans le total mais pas comme cac:AllowanceCharge.
  • Le total hors TVA n’a pas été recalculé après une modification des lignes.
  • Des différences d’arrondi entre les lignes et le total.

Comment corriger en tant qu’émetteur

  1. Placez chaque remise et chaque supplément au niveau de la facture dans un cac:AllowanceCharge propre, avec un motif.
  2. Recalculez le total hors TVA : somme des lignes, moins les remises, plus les suppléments.
  3. Vérifiez ensuite BR-CO-15 et BR-CO-16, qui reposent sur ce total.

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:LineExtensionAmount currencyID="EUR">300.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="EUR">290.00</cbc:TaxExclusiveAmount>
  ...
</cac:LegalMonetaryTotal>
<!-- pas de remise ni de supplément au niveau du document, donc 300.00 -->

✅ Correct

<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">300.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="EUR">300.00</cbc:TaxExclusiveAmount>
  ...
</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

Un escompte accordé seulement en cas de paiement rapide n’a pas sa place d’office dans le total. Discutez du bon traitement avec votre comptable avant de l’intégrer au XML.

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-10: Le total des lignes en bas de la facture ne correspond pas à la somme des montants de ligne.
  • BR-CO-15: Le total TVA comprise n’est pas égal au total hors TVA plus le montant de TVA.

Questions fréquentes sur BR-CO-13

Quelle est la différence entre BR-CO-10 et BR-CO-13 ?

BR-CO-10 compare le total des lignes avec les montants de ligne. BR-CO-13 va plus loin et tient aussi compte des remises et suppléments au niveau de la facture.

Où placer une remise sur toute la facture ?

Dans cac:AllowanceCharge au niveau du document, avec ChargeIndicator à false, un montant et une catégorie de TVA. Le total de ces remises va dans AllowanceTotalAmount.

← Tous les codes d’erreur Peppol