Compte
Français

BR-DEC-23: Le montant net de ligne (BT-131) a plus de 2 décimales

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-131 Invoice line net amount
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-DEC-23] The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.

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

Pourquoi cette erreur apparaît

Le montant net de ligne de facture doit comporter au plus deux décimales. La règle compte les caractères après le séparateur décimal dans cac:InvoiceLine/cbc:LineExtensionAmount (UBL) ou ram:SpecifiedTradeSettlementLineMonetarySummation/ram:LineTotalAmount (CII). C'est fréquent lorsque la quantité multipliée par un prix unitaire à quatre décimales est écrite sans arrondi (3 x 1.2345 = 3.7035), ou lorsqu'un formateur de nombres émet systématiquement trois chiffres ou plus (100.000).

Comment corriger

Arrondissez chaque montant net de ligne à deux décimales et formatez-le avec au plus deux chiffres après la virgule (3.70, 100.00). Les prix unitaires (BT-146) peuvent conserver davantage de décimales ; l'arrondi ne s'applique qu'au montant de ligne. Calculez cac:LegalMonetaryTotal/cbc:LineExtensionAmount (BT-106) comme la somme des montants de ligne arrondis afin que BR-CO-10 soit toujours respectée, et comptez sur une tolérance de 0.02 par ligne dans PEPPOL-EN16931-R120.

Exemple (valide)

<cbc:InvoicedQuantity unitCode="C62">3</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">3.70</cbc:LineExtensionAmount>
...
<cac:Price><cbc:PriceAmount currencyID="EUR">1.2345</cbc:PriceAmount></cac:Price>

Ce que le validateur vérifie

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

UBL

cac:InvoiceLine | cac:CreditNoteLine

Test (XPath):

string-length(substring-after(cbc:LineExtensionAmount,'.'))<=2

CII

//ram:IncludedSupplyChainTradeLineItem

Test (XPath):

string-length(substring-after(ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeSettlementLineMonetarySummation/ram:LineTotalAmount,'.'))<=2

Corriger automatiquement

Cette erreur peut être corrigée automatiquement : déposez le fichier dans le vérificateur 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-DEC-23 ?

BR-DEC-23 est une règle de base en 16931 : The allowed maximum number of decimals for the Invoice line net amount (BT-131) is 2.

Ma facture sera-t-elle rejetée à cause de BR-DEC-23 ?

Oui. BR-DEC-23 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-DEC-23 ?

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.