Avant / après

Facture Factur-X rejetée par Chorus Pro : exemples et corrections

Un message de rejet donne un code, rarement le fragment en cause. Voici les cinq motifs les plus fréquents montrés dans le XML : ce qui est écrit, ce qu'il fallait écrire.

Par Rayan Sekkat

Pourquoi un fichier « valide » est quand même rejeté

Un XML Factur-X passe trois contrôles successifs, et un rejet peut tomber à chaque étage. Le schéma XSD vérifie la forme : balises connues, types corrects. Les règles métier EN 16931 vérifient la cohérence : totaux qui se recoupent, champs obligatoires présents. Enfin les règles propres à Chorus Pro vérifient le contexte : destinataire existant dans l'annuaire, engagement juridique renseigné. Un fichier peut franchir les deux premiers étages et échouer au troisième — d'où l'impression déroutante d'un document « pourtant valide ».

Cinq rejets, cinq corrections

PES_REJ_014Très fréquent

SIRET destinataire invalide

Ce que vous observez — Le rejet tombe immédiatement après le dépôt, sans contrôle métier. Chorus Pro ne trouve pas le service destinataire dans son annuaire.

La cause réelle — Le SIRET de l'entité publique est absent, tronqué, ou mis en forme avec des espaces. Le schéma XSD accepte n'importe quelle chaîne : seul le contrôle d'annuaire échoue.

Rejeté
<ram:BuyerTradeParty>
  <ram:Name>Mairie de Lyon</ram:Name>
  <!-- Pas d'identifiant : Chorus Pro ne sait pas à qui remettre -->
</ram:BuyerTradeParty>
Accepté
<ram:BuyerTradeParty>
  <ram:ID>21690123400017</ram:ID>          <!-- SIRET, 14 chiffres, sans espace -->
  <ram:Name>Mairie de Lyon</ram:Name>
  <ram:PostalTradeAddress>
    <ram:CountryID>FR</ram:CountryID>      <!-- BT-55, obligatoire -->
  </ram:PostalTradeAddress>
</ram:BuyerTradeParty>

Le contrôle à passer — Vérifier le SIRET dans l'annuaire Chorus Pro AVANT de facturer, pas après le rejet. Un service public peut avoir plusieurs SIRET selon la direction concernée.

PES_REJ_022Fréquent

Montant de TVA incorrect

Ce que vous observez — La facture est acceptée à la syntaxe puis rejetée au contrôle de cohérence, avec un écart souvent d'un seul centime.

La cause réelle — La TVA a été calculée et arrondie ligne par ligne, puis sommée. Le contrôle, lui, recalcule la TVA sur la base agrégée par taux. Les deux méthodes divergent d'un centime dès que les lignes tombent sur des demi-centimes.

Rejeté
<!-- 3 lignes à 33.33 € HT, TVA arrondie sur chaque ligne -->
<!-- 6.666 -> 6.67, trois fois, soit 20.01 -->
<ram:ApplicableTradeTax>
  <ram:BasisAmount>99.99</ram:BasisAmount>
  <ram:CalculatedAmount>20.01</ram:CalculatedAmount>
  <ram:RateApplicablePercent>20</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
Accepté
<!-- TVA calculée sur la base agrégée : 99.99 x 20% = 19.998 -> 20.00 -->
<ram:ApplicableTradeTax>
  <ram:BasisAmount>99.99</ram:BasisAmount>
  <ram:CalculatedAmount>20.00</ram:CalculatedAmount>
  <ram:RateApplicablePercent>20</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>

Le contrôle à passer — Calculer la TVA une seule fois, par taux, sur la somme des bases HT. Ne jamais sommer des TVA déjà arrondies.

PES_REJ_048Fréquent dans le secteur public

Engagement juridique manquant

Ce que vous observez — Rejet systématique de toutes les factures adressées à un même donneur d'ordre, alors que le fichier passe partout ailleurs.

La cause réelle — Les marchés publics exigent le numéro d'engagement ou de bon de commande. Ce n'est pas une règle Factur-X : c'est une règle de gestion propre à l'acheteur public, appliquée au dépôt.

Rejeté
<ram:ApplicableHeaderTradeAgreement>
  <ram:SellerTradeParty>...</ram:SellerTradeParty>
  <ram:BuyerTradeParty>...</ram:BuyerTradeParty>
  <!-- Aucune référence de commande ni de marché -->
</ram:ApplicableHeaderTradeAgreement>
Accepté
<ram:ApplicableHeaderTradeAgreement>
  <ram:BuyerReference>EJ-2026-00815</ram:BuyerReference>
  <ram:SellerTradeParty>...</ram:SellerTradeParty>
  <ram:BuyerTradeParty>...</ram:BuyerTradeParty>
  <ram:BuyerOrderReferencedDocument>
    <ram:IssuerAssignedID>BC-2026-007</ram:IssuerAssignedID>   <!-- BT-13 -->
  </ram:BuyerOrderReferencedDocument>
</ram:ApplicableHeaderTradeAgreement>

Le contrôle à passer — Demander le numéro d'engagement au service acheteur avant d'émettre. Le renseigner systématiquement pour ce client dans votre outil de facturation.

EN16931_012Moyen

Code de catégorie de TVA incorrect

Ce que vous observez — Rejet sur les factures en autoliquidation ou en exonération, alors que les factures à 20 % passent sans problème.

La cause réelle — Le code de catégorie est une valeur d'une liste fermée. Écrire « EXO », « 0 » ou laisser la balise vide échoue, même si le taux affiché est correct.

Rejeté
<ram:ApplicableTradeTax>
  <ram:TypeCode>VAT</ram:TypeCode>
  <ram:CategoryCode>EXO</ram:CategoryCode>      <!-- Valeur hors liste -->
  <ram:RateApplicablePercent>0</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>
Accepté
<ram:ApplicableTradeTax>
  <ram:TypeCode>VAT</ram:TypeCode>
  <ram:CategoryCode>AE</ram:CategoryCode>       <!-- Autoliquidation -->
  <ram:RateApplicablePercent>0</ram:RateApplicablePercent>
  <ram:ExemptionReason>Autoliquidation</ram:ExemptionReason>
</ram:ApplicableTradeTax>

Le contrôle à passer — S (standard), E (exonéré), Z (taux zéro), AE (autoliquidation), K (livraison intracommunautaire), G (export hors UE). Toute valeur hors de cette liste est rejetée. Les catégories autres que S exigent en plus un motif d'exonération.

PES_REJ_001Fréquent

Format de fichier non conforme

Ce que vous observez — Rejet au dépôt, sans détail sur le champ en cause.

La cause réelle — Le fichier n'est pas un PDF/A-3 valide, ou le XML n'y est pas embarqué en pièce jointe. C'est le cas typique d'un XML produit correctement mais livré à côté du PDF, ou joint à un PDF ordinaire.

Rejeté
facture.pdf  +  facture.xml     (deux fichiers séparés)
Accepté
facture.pdf  (PDF/A-3)
  └── pièce jointe embarquée : factur-x.xml

Le contrôle à passer — Ouvrir le PDF et vérifier le panneau des pièces jointes : le XML doit y apparaître. S'il n'y est pas, le document n'est pas un Factur-X, quel que soit le contenu du XML.

Que faire d'une facture déjà rejetée

Un rejet n'est pas une annulation : la facture n'a jamais été reçue. Vous corrigez et redéposez sous le même numéro, sans émettre d'avoir — il n'y a rien à annuler.

C'est l'inverse pour une facture acceptée puis contestée : là, seul un avoir peut la corriger, avec la référence à la facture d'origine. La distinction compte, parce qu'émettre un avoir sur une facture rejetée crée un document orphelin qui ne pourra jamais être rapproché.

Contrôlez avant de déposer, pas après le rejet

Obtenez le rapport de conformité EN 16931 de votre fichier, champ par champ.

1 conversion sans compte, puis 10 conversions de découverte valables 30 jours