Compte
Français

BR-CO-25: Montant à payer sans date d'échéance ni conditions de paiement

Règle de base EN 16931 · Erreur · UBL, CII

NormeEN 16931-1 (modèle sémantique européen de la facture électronique)GravitéErreur: la facture est rejetéeSyntaxeUBL, CIITermes métier
  • BT-9 Payment due date
  • BT-20 Payment terms
  • BT-115 Amount due for payment
S'applique àToute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales.

Texte officiel de la règle

[BR-CO-25] In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.

Le texte normatif est en anglais ; il est cité tel quel.

Pourquoi cette erreur apparaît

Si le montant à payer (BT-115) est supérieur à zéro, la facture doit indiquer soit une date d'échéance (BT-9), soit des conditions de paiement (BT-20), afin que l'acheteur sache quand payer. En UBL, la règle recherche cbc:DueDate ou cac:PaymentTerms/cbc:Note sur une Invoice dont cac:LegalMonetaryTotal/cbc:PayableAmount est positif ; en CII, ram:SpecifiedTradePaymentTerms/ram:DueDateDateTime ou ram:Description lorsque ram:DuePayableAmount est positif. Elle est typiquement déclenchée par un logiciel qui imprime les conditions sur le PDF sans les exporter, ou ne les exporte que pour certains groupes de clients.

Comment corriger

Ajoutez cbc:DueDate (AAAA-MM-JJ) parmi les champs d'en-tête en UBL (il se place après cbc:IssueDate et avant cbc:InvoiceTypeCode), et/ou cac:PaymentTerms/cbc:Note avec les conditions en texte libre. En CII, ajoutez ram:SpecifiedTradePaymentTerms avec ram:DueDateDateTime/udt:DateTimeString format="102" et/ou ram:Description dans ram:ApplicableHeaderTradeSettlement. Indiquez de préférence les deux : la date est lisible par machine, le texte porte les conditions telles que l'escompte. Les avoirs et les factures entièrement payées d'avance (BT-115 = 0) n'ont besoin ni de l'une ni de l'autre.

Exemple (valide)

<cbc:IssueDate>2026-10-14</cbc:IssueDate>
<cbc:DueDate>2026-11-13</cbc:DueDate>
...
<cac:PaymentTerms>
  <cbc:Note>Payable within 30 days without deduction.</cbc:Note>
</cac:PaymentTerms>

Ce que le validateur vérifie

Élément vérifié (contexte):

UBL

/ubl:Invoice/cac:LegalMonetaryTotal/cbc:PayableAmount

Test (XPath):

((. > 0) and (exists(//cbc:DueDate) or exists(//cac:PaymentTerms/cbc:Note))) or (. <= 0)

CII

/rsm:CrossIndustryInvoice

Test (XPath):

(number(//ram:DuePayableAmount) > 0 and ((//ram:SpecifiedTradePaymentTerms/ram:DueDateDateTime) or (//ram:SpecifiedTradePaymentTerms/ram:Description))) or not(number(//ram:DuePayableAmount)>0)

Corriger automatiquement

Le vérificateur corrige cette erreur dès que vous saisissez la valeur manquante : déposez le fichier et cliquez sur « Corriger automatiquement ».

Corriger ma facture →

La même vérification par API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Règles liées

Questions fréquentes

Que signifie BR-CO-25 ?

BR-CO-25 est une règle de base en 16931 : In case the Amount due for payment (BT-115) is positive, either the Payment due date (BT-9) or the Payment terms (BT-20) shall be present.

Ma facture sera-t-elle rejetée à cause de BR-CO-25 ?

Oui. BR-CO-25 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.

À quels formats s'applique BR-CO-25 ?

Toute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales. Syntaxe : UBL et CII.

Source: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.