French e-invoice statuses and rejection codes explained
Under the French e-invoicing reform, invoice lifecycle statuses include 213 Rejetée when a platform's checks find an anomaly and 210 Refusée when the recipient refuses the invoice. Rejections and refusals carry a reason code. A whole transmission to the public invoicing portal (PPF) can also be marked 501 Irrecevable if it cannot be accepted, with an IRR_ reason code. Find your code below to see what it means, the usual cause and what to do. The codes come from the DGFiP's external specifications, version 3.2, and the Chorus Pro document published with them; the error codes of Chorus Pro's historic portal, API and EDI channels are not covered.
In short
What French e-invoice statuses such as 210 Refusée or 213 Rejetée and codes such as REJ_SEMAN, IRR_SYNTAX or TX_TVA_ERR mean, and what to change.
This list covers 88 codes from the official documents below. 44 have their own page; 44 are explained in the table only, as they are system or transport statuses with no fix in the invoice.
Not covered: REJ_PER, REJ_VAL_INC, 250, 251, 300, 301, 400, 401, 500, 601, which concern a process other than sending an invoice.
Invoice statuses
| Code | What it means |
|---|---|
| 200 | Submitted (Déposée) French e-invoicing status 200 Déposée means the supplier's invoice has been passed to their issuing approved platform, which certifies that the invoice has been checked and is compliant. Nothing to change. Follow the later statuses to see whether the recipient approves, refuses or pays the invoice. |
| 201 | Issued by the platform French e-invoicing status 201 means the issuing approved platform reports that it has passed the invoice to the recipient's receiving platform. Nothing to change. |
| 202 | Received by the platform French e-invoicing status 202 means the recipient's receiving approved platform reports that it has received the invoice from the issuing platform. Nothing to change. |
| 203 | Made available French e-invoicing status 203 means the receiving approved platform reports that it has made the invoice available to the recipient. Nothing to change. |
| 204 | Receipt acknowledged French e-invoicing status 204 means the recipient acknowledges receipt of the invoice. Nothing to change. |
| 205 | Approved French e-invoicing status 205 means the recipient accepts the invoice in full. Nothing to change. |
| 206 | Partly approved French e-invoicing status 206 means the recipient accepts only part of the invoice. Contact the recipient to agree on the part they do not accept. |
| 207 | In dispute French e-invoicing status 207 means the recipient disagrees with all or part of the invoice. Contact the recipient to settle the dispute. |
| 208 | Suspended |
| 209 | Completed French e-invoicing status 209 means the supplier provides the further supporting documents the recipient asked for. Nothing to change. |
| 210 | Refused |
| 211 | Payment sent French e-invoicing status 211 means the recipient reports having paid the invoice, or the supplier reports having made a refund. Nothing to change. |
| 212 | Payment received French e-invoicing status 212 Encaissée means the supplier reports having received partial or full payment of the invoice, under the conditions of article 290 A of the French tax code (CGI). Nothing to change. |
| 213 | Rejected |
| NON_TRANSMISE | Submitted but not passed on (NON_TRANSMISE) Chorus Pro status Déposée with the reason NON_TRANSMISE means Chorus Pro has accepted an invoice from a public body but could not yet pass it on, because the private recipient's approved platform is not connected to Chorus Pro. Nothing to correct in the invoice, which is sent once the platform is connected. The specifications recommend sending the recipient a duplicate in the meantime. |
Rejection reasons (status 213 Rejetée)
| Code | What it means |
|---|---|
| REJ_SEMAN | Semantic format not compliant |
| REJ_UNI | Data already sent and processed |
| REJ_COH | Inconsistent data |
| REJ_ADR | Invoicing address not in the directory |
Refusal reasons (status 210 Refusée)
| Code | What it means |
|---|---|
| AUT_MOTIF_ERR_VALIDEUR | Reason other than an approver error French e-invoicing reason AUT_MOTIF_ERR_VALIDEUR means the lead contractor refused a subcontractor's or co-contractor's invoice for a reason other than it going to the wrong approver. Ask the lead contractor for the reason. |
| CONTACT_ACHTR | Other: contact your buyer French e-invoicing reason CONTACT_ACHTR means the recipient refused the invoice for another reason and asks you to contact the buyer. Contact the buyer to find out why. |
| COORD_BANC_ERR | Wrong bank details |
| CREANCIER_ERR | Unknown or different creditor |
| DEST_ERR | Wrong recipient |
| DOUBLE_FACT | Duplicate invoice data |
| CMD_EJ_ERR | Wrong or missing order number |
| ERR_VALIDEUR | Wrong approver French e-invoicing reason ERR_VALIDEUR means the lead contractor refused a subcontractor's or co-contractor's invoice because they are not the right approver. Check who approves the invoices under the contract and send the invoice to them. |
| FACT_NON_CONFORME | Invoice does not match the order |
| JUSTIF_ABS | Supporting document missing or insufficient |
| LIVR_INCOMP | Delivery incomplete or not made French e-invoicing reason LIVR_INCOMP means the recipient refused the invoice because the delivery is incomplete or was not made. Check the delivery with the recipient before invoicing again. |
| MARCHE_TERM | Contract ended French e-invoicing reason MARCHE_TERM means the recipient refused the invoice because the public contract has ended. Check the contract with the recipient. |
| MONTANT_ERR | Wrong invoice amount |
| SE_ERR | Wrong recipient department |
| ST_CT_NON_DECLAR | Subcontractor or co-contractor not declared |
| SUPPR_COMP_AVOIR | Removed to offset credit notes French e-invoicing reason SUPPR_COMP_AVOIR means the invoice was removed to offset credit notes. Check the credit notes concerned with the recipient. |
| TRANSF_PMNT_REGIE | Passed on for payment by a cash office French e-invoicing reason TRANSF_PMNT_REGIE means the invoice was passed on for payment through a public body's regie (cash office), a reason reserved for invoices to the public sector. Nothing to change in the invoice; ask the public body about payment. |
| TX_TVA_ERR | Wrong VAT rate |
| ANNUL_ENC | Payment not received or receipt cancelled French e-invoicing reason ANNUL_ENC means a payment was not made or was cancelled. Check the payment with the other party. |
| AUTRE | Other French e-invoicing reason AUTRE means the invoice was refused for another reason. Read the comment, or ask the recipient. |
| ROUTAGE_ERR | Routing error |
| CALCUL_ERR | Calculation error |
| NON_CONFORME | Missing legally required information |
| DEST_INC | Unknown recipient |
| TRANSAC_INC | Unknown transaction French e-invoicing reason TRANSAC_INC means the invoice does not match a delivery made or a service provided. Check with the recipient which delivery or service the invoice is for. |
| EMMET_INC | Unknown issuer French e-invoicing reason EMMET_INC means the issuer of the invoice is unknown to the recipient, an anti-spam reason. Contact the recipient to confirm your business relationship. |
| CONTRAT_TERM | Contract ended French e-invoicing reason CONTRAT_TERM means the recipient refused the invoice because the contract has ended and no more invoices are possible. Check the contract with the recipient. |
| ADR_ERR | Electronic invoicing address wrong |
| SIRET_ERR | SIRET wrong or missing |
| CODE_ROUTAGE_ERR | Routing code wrong or missing |
| REF_CT_ABSENT | Contract reference missing |
| REF_ERR | Wrong reference |
| PU_ERR | Wrong unit prices |
| REM_ERR | Wrong discount |
| QTE_ERR | Wrong quantity invoiced |
| ART_ERR | Wrong item invoiced |
| MODPAI_ERR | Wrong payment terms |
| QUALITE_ERR | Quality problem with a delivered item French e-invoicing reason QUALITE_ERR means one of the items delivered is defective. Settle the quality problem with the recipient. |
| DOUBLON | Duplicate invoice |
| MONTANTTOTAL_ERR | Wrong total amount |
| RETRAIT_MAN_SERV | Manual processing by the public body Chorus Pro reason RETRAIT_MAN_SERV means the invoice is handled manually by the public body's departments. Chorus Pro passes it on to platforms as AUTRE. Ask the public body about the invoice. |
| SUPPR_MASSE | Bulk removal Chorus Pro reason SUPPR_MASSE means the invoice was removed in bulk. Chorus Pro passes it on to platforms as AUTRE. Ask the public body about the invoice. |
| ERREUR_DONNEE_EJ | Error in the commitment data |
| EJ_ERR | Commitment number wrong or does not exist |
| HONORER_LA_COMMANDE | Order cannot be fulfilled Chorus Pro reason HONORER_LA_COMMANDE means the order cannot be fulfilled. Chorus Pro passes it on to platforms as LIVR_INCOMP. Check the order with the public body. |
Transmissions not accepted (status 501 Irrecevable)
| Code | What it means |
|---|---|
| 501 | Delivery unreceivable PPF status 501 Irrecevable means a delivery (flux) an approved platform sends to the PPF failed one or more technical or application checks, so the PPF did not accept it. Look up the IRR_ code, correct the delivery or the named files and send it again. |
| IRR_TAILLE | Delivery too large PPF reason IRR_TAILLE means a delivery (flux) an approved platform sends to the PPF is larger than the size allowed. Split the files into smaller deliveries and send them again. |
| IRR_TAILLE_F | File in the delivery too large |
| IRR_TAILLE_PJ | Attachment too large |
| IRR_UNICITE | Delivery already received PPF reason IRR_UNICITE means a delivery (flux) an approved platform sends to the PPF has already been sent and received. Check whether the first delivery was processed before sending anything again. |
| IRR_VIDE | Empty delivery PPF reason IRR_VIDE means a delivery (flux) an approved platform sends to the PPF is empty. Send the delivery again with its files. |
| IRR_VIDE_F | Empty file in the delivery PPF reason IRR_VIDE_F means one or more files in a delivery to the PPF are empty. Generate the named file again and send it. |
| IRR_VID_PJ | Empty attachment |
| IRR_FORM | Delivery name not valid PPF reason IRR_FORM means the name of a delivery (flux) an approved platform sends to the PPF does not follow the naming rules. Correct the delivery name to the naming rules in the specifications and send it again. |
| IRR_NOM_F | File name not valid |
| IRR_NOM_PJ | Attachment name not valid |
| IRR_TYPE | Delivery type not valid PPF reason IRR_TYPE means the type or extension of a delivery (flux) an approved platform sends to the PPF is not compliant. Send the delivery again as tar.gz or xml. |
| IRR_TYPE_F | File type not valid PPF reason IRR_TYPE_F means the type or extension of files in a delivery to the PPF is not compliant. Check the type and extension of the named files and send them again. |
| IRR_EXT_DOC | Attachment type not allowed |
| IRR_ANTIVIRUS | Delivery does not meet security conditions PPF reason IRR_ANTIVIRUS means a delivery (flux) an approved platform sends to the PPF does not meet the security conditions. Resolve the security issue with your platform before sending the delivery again. |
| IRR_CODE_INTER | Unknown interface code PPF reason IRR_CODE_INTER means the interface code of a delivery (flux) an approved platform sends to the PPF is not known to the system. A question for your platform: it must use the interface code set for that kind of delivery. |
| IRR_EXTRAC | Archive could not be extracted PPF reason IRR_EXTRAC means the archive of a delivery (flux) an approved platform sends to the PPF could not be extracted. Build the archive again and send it. |
| IRR_CODE_APP | No connection for the application code PPF reason IRR_CODE_APP means no connection exists for the application code of a delivery (flux) an approved platform sends to the PPF. A question for your platform, which manages its connection to the PPF. |
| IRR_SYNTAX | File syntax not valid |
Rejected lifecycle statuses
| Code | What it means |
|---|---|
| REJ_INC | Inconsistent statuses PPF reason REJ_INC means a lifecycle message (flow 6) with a mandatory status was rejected because one or more statuses are inconsistent. Check the order of the statuses you sent for the invoice. |
| REJ_INEX | Status not valid PPF reason REJ_INEX means a lifecycle message (flow 6) with a mandatory status was rejected because one or more statuses are incorrect or not allowed. Use one of the statuses the specifications allow. |
| REJ_RG | Business rule not met PPF reason REJ_RG means a lifecycle message (flow 6) with a mandatory status was rejected because one or more business rules are not met. Correct the message to that rule, listed in Annex 7 of the specifications, and send it again. |
| REJ_HAB | Not authorised PPF reason REJ_HAB means a lifecycle message (flow 6) with a mandatory status was rejected because a request is not authorised or needs an authorisation. A question for your platform, which manages the rights. |
| REJ_ENCAISSEMENT | Collected amounts do not match the VAT split |
Read the official document
- Dossier de spécifications externes de la facturation électronique, Dossier général Source: Dossier de spécifications externes de la facturation électronique, Dossier général, version 3.2, published by Direction générale des Finances publiques (DGFiP), read on 8 November 2026. Official text in its original language, from Direction générale des Finances publiques, Spécifications externes de la facturation électronique v3.2 (impots.gouv.fr), mise à jour du 30 avril 2026, under Licence Ouverte / Open Licence 2.0 (Etalab).
- Spécifications externes, Annexe 7, Règles de gestion Source: Spécifications externes, Annexe 7, Règles de gestion, version 1.9 (spécifications externes 3.2), published by Direction générale des Finances publiques (DGFiP), read on 8 November 2026. Official text in its original language, from Direction générale des Finances publiques, Spécifications externes de la facturation électronique v3.2, Annexe 7 (impots.gouv.fr), mise à jour du 30 avril 2026, under Licence Ouverte / Open Licence 2.0 (Etalab).
- Dossier de spécifications externes de la facturation électronique, Document Chorus Pro Source: Dossier de spécifications externes de la facturation électronique, Document Chorus Pro, version 1.1 (spécifications externes 3.2), published by Agence pour l'informatique financière de l'État (AIFE), read on 8 November 2026. Official text in its original language, from Agence pour l'informatique financière de l'État, Spécifications externes de la facturation électronique v3.2, Document Chorus Pro (impots.gouv.fr), mise à jour du 30 avril 2026, under Licence Ouverte / Open Licence 2.0 (Etalab).
Frequently asked questions
What is the difference between Rejetée and Refusée?
213 Rejetée means a check by the issuing or receiving approved platform found an anomaly in the invoice. 210 Refusée means the recipient refuses the whole invoice, with a reason code. In both cases the supplier cancels the invoice in their accounts with an internal credit note, which is not reported to the PPF.
Where do I find the reason code?
In the lifecycle message your platform passes on to you: a rejection, a refusal or a transmission marked 501 Irrecevable must carry a reason code (field MDT-113), and a refusal or suspension also carries a comment explaining it.
Which codes are not listed?
E-reporting and directory statuses and reasons, the status for accepted transmissions, and the error codes of Chorus Pro's historic portal, API and EDI channels, which are described in Chorus Pro's own annexes.
Where do the codes come from?
From the external specifications for e-invoicing published by the DGFiP on impots.gouv.fr, version 3.2 of 30 April 2026, under the Licence Ouverte 2.0 (Etalab). Each code page quotes the official French text and links to the source.