Sovos Docs

Lifecycle and use cases

France's e-invoicing reform mandates lifecycle statuses that must be exchanged between trading partners and, for some statuses, reported to the tax authority.

This obligation goes well beyond what is required in other e-invoicing markets. Understanding it is central to a compliant implementation.

The two phases

France's invoice lifecycle is divided into a transmission phase and a treatment phase:

Transmission phase
PA-initiated events that report the transmission of an invoice or credit note from seller to seller PA to buyer PA to buyer.
Treatment phase
The optional statuses that are initiated by the buyer after they receive the invoice, and sometimes require a seller response.

Transmission phase

The transmission phase covers the act of sending an invoice from the seller's platform to the buyer's platform. All statuses in this phase are set automatically by the PAs.

SCICloudStatusCodeFrench CodeWho Sets ItMandatory to PPFNotes
211200 — Déposée (Submitted)Seller's PA (Sovos)YesInvoice validated and transmitted. Primary submission confirmation. PPF has received the invoice.
214201 — Émise par la plateforme (Issued)Seller's PA (Sovos)NoSovos has forwarded the invoice to the buyer's PA.
215202 — Reçue par la plateforme (Received)Buyer's PANoBuyer's PA confirmed receipt.
216203 — Mise à disposition (Made available)Buyer's PANoInvoice delivered to the buyer.
212213 — Rejetée (Rejected)Seller's or buyer's PAYesInvoice rejected during functional validation. See Send invoices for full remediation guidance.

214, 215, and 216 are optional. The buyer's PA is not obligated to send them, and the PPF does not receive them. Their absence does not indicate a problem.

Treatment phase

The optional business actions posted against an invoice after it has been delivered to the buyer. These actions are initiated by the buyer organization — approving, refusing, disputing, or suspending the invoice — and sometimes require a subsequent seller response. Buyers and sellers submit treatment-phase statuses as SBDs. See Lifecycle status body for the submission format.

SCICloudStatusCodeFrench CodeWho Initiates ItMandatory to PPFNotes
204 — Prise en charge (Acknowledged)BuyerNo
203205 — Approuvée (Approved)BuyerNo
217206 — Approuvée partiellement (Partially approved)BuyerNoMay give rise to a credit note.
218207 — En litige (Disputed)BuyerNo
219208 — Suspendue (Suspended)BuyerNoSeller must respond with Complétée plus supporting documents.
206209 — Complétée (Completed)SellerNoSeller's response to Suspendue.
405210 — Refusée (Refused)BuyerYesReason code required. See Mandatory statuses for details.
213211 — Paiement transmis (Payment sent)Buyer or sellerNoOptional; useful for treasury matching.
220212 — Encaissée (Payment received)SellerYes (conditions)Mandatory when VAT due on collection. See Mandatory statuses for details.

Mandatory statuses

France's four mandatory statuses are reported to the PPF and carry the most significant regulatory and accounting consequences. These are the first statuses to understand before go-live:

Submitted by the seller PA

SCICloudStatusCode 211, French Code 200 (Déposée)

Issued automatically by Sovos when the invoice passes validation and is transmitted. This is the primary confirmation that the invoice is in the system. The PPF has received a copy of the regulatory data (Flux 1), and the invoice is now a legal document. After this point it cannot be corrected and resubmitted. Any correction requires cancelling the original and issuing a new invoice.

See Send invoices for full detail.

Rejected by the seller PA or buyer PA

SCICloudStatusCode 212, French Code 213 (Rejetée)

Set by the seller's PA or the buyer's PA when functional validation fails. A rejection reason code is always present. Because Rejetée is mandatory, it is reported to the PPF.

See Send invoices for full remediation guidance depending on which PA rejected and whether the PPF had already received the invoice.

Refused by the buyer

SCICloudStatusCode 405, French Code 210 (Refusée)

The buyer refuses the invoice or credit note in its entirety. A reason code is required. Because Refusée is mandatory, it is reported to the PPF.

When a buyer sends Refusée, the seller must cancel the invoice in their accounting records by creating an internal credit note (avoir interne). This credit note is for accounting purposes only and must not be submitted to Sovos.

Once the accounting entry is cancelled, the seller may issue a corrected invoice as a new document.

Payment received by the seller

SCICloudStatusCode 220, French Code 212 (Encaissée)

In France, VAT on services is due when payment is received by default, not at invoice date. Sellers can elect TVA sur débits to make VAT due at invoice date instead, which is the same rule that applies to goods.

Encaissée is mandatory and reported to the PPF for the following scenarios.

  • Service invoices where the seller has not elected TVA sur débits.

  • Down payment invoices subject to the same VAT-on-collection rule.

Submit as soon as payment is reconciled. Encaissée does not apply to goods invoices, services where the seller has elected TVA sur débits, or intra-community and reverse charge transactions.

The seller may optionally send Encaissée outside the mandatory scope to notify the buyer of payment receipt. In that case it is transmitted to the buyer only, not to the PPF.

For a full overview of which transaction types require after-the-fact payment reporting compared to a lifecycle status, see E-reporting.

Seller cancels with corrective invoice (Annulée)

When a seller issues a corrective invoice that fully replaces a prior invoice, the original invoice's lifecycle is formally closed with an Annulée status. This status is not in the 200-213 reform code range. It is a specific treatment applied to the original invoice when its replacement is submitted.

What implementers must determine per client

Every France e-invoicing implementation requires a use case analysis. Answer these questions for every client before go-live:

Which statuses will the client generate as a seller?
At minimum: Encaissée (if applicable based on VAT regime and invoice type). Optionally: Complétée (if responding to buyer suspensions), Paiement transmis (if desired for treasury matching).
Which statuses will the client generate as a buyer?
At minimum: Refusée (if rejecting invoices). Optionally: Prise en charge, Approuvée, Approuvée partiellement, En litige, Suspendue, Paiement transmis.
When must each status be triggered?
Encaissée should be sent as soon as payment is reconciled. All other treatment statuses should follow the business event promptly.

How to handle mandatory and common statuses

  • SCICloudStatusCode 211 (Submitted / Déposée) → Invoice accepted an in transit. No action required.

  • SCICloudStatusCode 212 (Rejected / Rejetée) → As the seller, parse the reason code. See Send invoices for remediation based on which PA rejected.

  • SCICloudStatusCode 405 (Buyer refused / Refusée) → As the seller, create an internal credit note in your accounting records only. Do not submit it to Sovos. Issue a corrected invoice as a new document if the transaction is still valid.

  • SCICloudStatusCode 220 (Seller reports payment received / Encaissée) → As the buyer, reconcile against payment records.

  • SCICloudStatusCode 219 (Buyer is waiting for documents / Suspendue) → Buyer has placed the invoice on hold pending supporting documents. As the seller, respond with SCICloudStatusCode 206 (Complétée) and attach the requested documents.

Use cases

Most B2B invoices and credit notes follow the flow described in Send Invoices, which the AFNOR calls the nominal use case (cas nominal).

AFNOR has created a list of use cases defining expectations for specific business scenarios, such as third-party payment, advance invoicing, or self-billing. An implementer's job is to identify which of these use cases apply to the client's business and ensure the invoice structure and lifecycle handling are built accordingly.

Sovos supports seven production-ready use cases in addition to the nominal, with more released on an ongoing basis ahead of the September 2026 mandate. The full AFNOR list is below for reference.

#Use CaseDescription
1Multi-order and multi-deliveryInvoice consolidating multiple purchase orders, multiple deliveries, or both into a single billing document.
2Invoice already paid by the buyer or a third partyInvoice issued after the buyer or a third party has already made payment.
3Invoice to be paid by a third-party payerInvoice addressed to the buyer but payable by a designated third party identified at invoice creation.
4Invoice to be paid by the buyer and partial coverage by a third partyInvoice where the buyer pays part and a third party (insurer, subsidy provider) covers the remainder.
5Expenses paid by employees with invoice in company nameEmployee pays a business expense; invoice is in the employer's name.
6Expenses paid by employees without an invoiceEmployee incurs an expense with only a receipt (no formal invoice).
7Invoice following purchase with lodged cardInvoice issued following a purchase made with a corporate lodged or purchasing card.
8Invoice payable to a third party determined at invoicingInvoice directing payment to a third party (factor, cash pool) identified at invoice issuance.
9Invoice payable to third party managing order, receipt, and invoicingA third party (distributor or depositary) manages orders, receipts, and invoicing on behalf of the seller.
10Invoice payable to unknown third-party beneficiaryInvoice where payment may later be assigned to an unknown third party through factoring or subrogation.
11Invoice to be received and processed by a third party on behalf of the buyerA third party gets and processes the invoice on behalf of the buyer.
12Transparent intermediary managing invoices for buyer principalAn intermediary transparently manages invoices for a buyer principal without taking ownership.
13Subcontracting with direct payment or payment delegationSubcontracting scenario with direct payment from client to subcontractor or a payment delegation.
14Joint contracting (co-traitance) B2BMultiple contractors jointly deliver to a single buyer under a joint contracting arrangement.
15Invoice following order or payment by third party on behalf of buyerA third party orders or pays on behalf of the buyer.
16Disbursement invoice for reimbursement of invoice paid by third partyInvoice for reimbursement of expenses a third party paid on behalf of the buyer.
17aInvoice payable to third-party payment intermediaryA marketplace collects payment from the buyer on behalf of the seller.
17bInvoice payable to third-party intermediary and third-party invoicer under mandateA marketplace collects payment and creates the invoice for the seller.
18Debit note managementManagement of debit notes for added charges after invoicing.
19aInvoice issued by third-party invoicer with invoicing mandateA third party issues invoices on behalf of the seller under a formal mandate.
19bSelf-billingThe buyer issues the invoice on behalf of the seller (autofacturation).
20Advance payment invoiceInvoice for an advance payment or deposit before goods or services are delivered.
21Final invoice after advance paymentFinal invoice reconciling advance payments already invoiced.
22aDiscounted service invoice with VAT due on paymentInvoice with early payment discount for services subject to VAT on collection.
22bDiscounted invoice with debit-basis VAT (goods and services)Invoice with early payment discount for goods or services with VAT on débits option.
23Self-billing between individual and professionalSelf-billing between an individual (non-business) and a professional.
24Earnest money (arrhes) managementManagement of earnest money payments that can be forfeited.
25Vouchers and gift cards management (SPV and MPV)Management of Single-Purpose Voucher (SPV) and Multi-Purpose Voucher (MPV) vouchers.
26Invoices with contractual reservation clauseInvoices with a contractual reservation of ownership until payment.
27Toll tickets sold to taxable personToll tickets sold to taxable persons for VAT recovery.
28Restaurant bills issued by taxable seller established in FranceRestaurant invoices issued by French-established taxable sellers.
29Single taxable person (VAT group) — Article 256 C CGIInvoicing within a single taxable person (VAT group).
30VAT already collected — B2C e-reporting operations with subsequent invoiceB2C transaction already e-reported, followed by a subsequent B2B invoice.
31Mixed invoices (main operation and ancillary operation)Invoice combining a main operation with ancillary operations.
32Monthly paymentsInvoicing for recurring transactions with periodic payments.
33Transactions under margin schemeTransactions under the margin scheme (biens d'occasion, oeuvres d'art).
34Partial collection and collection cancellationPartial collections and collection cancellations.
35Author's notesNotes d'auteur in cultural and creative sectors.
36Transactions subject to professional secrecy and sensitive dataTransactions subject to confidentiality requirements.
37Partnerships and joint venturesInvoicing for partnership and joint venture structures.
38Invoices with sub-lines and line groupingsInvoices with hierarchical line structures.
39Transparent intermediary consolidating sales from multiple sellers for a single buyerAn intermediary consolidates sales from multiple sellers for a single buyer.
40Grouped payments, netting, or compensation for cross buy and sell transactionsPayment netting for reciprocal buy and sell transactions.
41Barter companiesTransactions between barter or exchange network members.
42VAT refund management (detaxe)VAT refund management for eligible transactions.
43E-reporting when international B2B transactions use structured invoice formatsE-reporting obligations for cross-border B2B sales and purchases where the invoice is exchanged in one of the core structured formats (UBL, CII, or Factur-X).
44Transactions involving French overseas territoriesIdentifies reporting obligation when a taxpayer location is in a French overseas territory (DROMs, COMs, TAAFs).

How to submit a lifecycle status

Treatment-phase lifecycle statuses are submitted to Sovos as Standard Business Documents (SBDs) containing a CDAR XML body

For the SBDH values, embedding instructions, and CDAR schema, see Lifecycle status body.

Quick reference for CDAR content:

  • Reference the invoice using: invoice number (BT-1), invoice issue date (BT-2), and seller SIREN (BT-30).

  • Set ProcessConditionCode to the French reform code (for example, 212 for Encaissée). Note this is the French reform code, not SCICloudStatusCode 220.

  • Set ProcessCondition to the status name (for example, Encaissée).

  • Include a reason code and reason text for Rejetée (French reform code 213) and Refusée (French reform code 210). These are required.

  • Use the profile URI urn:cpro.gouv.fr:1p0:CDV:invoice inExchangedDocumentContext.

Submit through the API

Endpoint: POST /v1/documents

Request:

POST /v1/documents
Content-Type: application/json
Authorization: Bearer {token}
x-correlationId: {unique-value}

{
  "data": "base64_encoded_SBD",
  "dataEncoding": "base64"
}

Include a unique x-correlationId on every request. This value is required when contacting support about a specific submission.

Success Response: HTTP 202 Accepted.
A 202 confirms Sovos received the SBD. It does not mean the status has been validated or delivered. Track the outcome through notifications.

For the complete list of HTTP status codes, error response schema, and retry guidance, see HTTP status codes and POST /v1/documents.

If the Sovos API is unavailable, check the Sovos status page for real-time operational status. Submissions accepted during any PPF unavailability are retried automatically. Do not resubmit.

Retrieve notifications

Notifications provide status updates as the lifecycle status progresses. Use the following parameters when polling outbound France notifications:

GET /v1/notifications/FR?taxId={SIREN}&sourceSystemId={SenderSystemId}&processType=0
  • taxId: Your SIREN from the SBDH.

  • sourceSystemId: The SenderSystemId from the SBDH.

  • processType: 0 (outbound).

Acknowledging notifications:
After processing, mark notifications as read to prevent retrieving them again. You can do this manually through the API, or configure auto-acknowledge on your ERP system ID in account setup. Use endpoint PUT /v1/notifications/FR or configure your ERP System ID to auto-acknowledge after receipt.

See Check notifications for full details, including setup, pagination, and acknowledgment.

For a full reference on application response structure, status codes, and how to interpret attachments, see Understanding application responses.

Response lifecycle

After submission, Sovos validates the CDAR and routes it to the counterparty's PA. A lifecycle status workflow follows this pattern:

Submit → Sovos validates → Sovos routes to counterparty PA → PPF validates mandatory statuses

Success path: 102 → 221
Failure paths: 401 (fix and resubmit) or 221 → PPF rejection notification (fix and resubmit)

Each notification contains an Application Response with one or more status codes. The primary code to rely on is the SCICloudStatusCode, a Sovos platform code that tells you exactly where the document is in the workflow and what, if any, action you need to take.

SCICloudStatusCodeMeaningAction Required
102Sovos validation passedWait.
221Status delivered to counterpartyDelivery confirmed. For mandatory statuses, a PPF rejection may still arrive.
401Sovos validation failedFix CDAR or SBDH errors and resubmit.

Troubleshoot issues

SCICloudStatus 401 — Validation failure
A 401 notification contains multiple Status elements. The top-level status uses SCICloudStatusCode; each individual error uses SCIInternalValidationStatusCode:
<!-- Workflow status -->
<cac:Status>
  <cbc:StatusReasonCode listID="SCICloudStatusCode">401</cbc:StatusReasonCode>
  <cbc:StatusReason>Error processing document</cbc:StatusReason>
</cac:Status>

<!-- Per-error detail (one element per error) -->
<cac:Status>
  <cbc:StatusReasonCode listID="SCIInternalValidationStatusCode">401</cbc:StatusReasonCode>
  <cbc:StatusReason>ProcessConditionCode 212 requires PaymentAmount to be present</cbc:StatusReason>
</cac:Status>

Review all SCIInternalValidationStatusCode elements, fix the issues, and resubmit.

Common causes of 401 on lifecycle status submissions:

  • Missing or incorrect invoice reference (invoice number, issue date, or seller SIREN do not match the original invoice).

  • Missing reason code on Rejetée (213) or Refusée (210).

  • Invalid ProcessConditionCode value.

  • Malformed CDAR structure or missing required SBDH scope values.

Note: SCIInternalValidationStatusCode values are free-text error messages generated by the Sovos validation engine, not a fixed enumerated list. Each element's StatusReason field describes the specific rule or field that failed. There is no published codelist for these values. Read the StatusReason text directly to identify what needs to be corrected.
PPF rejection of mandatory statuses
For the four statuses mandatory to the PPF (Déposée, Rejetée, Refusée, and Encaissée), Sovos forwards your CDAR to the PPF after its own validation passes. The PPF then performs a second layer of validation and may reject the status with one or more rejection reason codes. This rejection arrives as a follow-up notification after you have already received SCICloudStatusCode 221.

These codes are distinct from the Sovos validation errors (SCICloudStatusCode 401). A PPF rejection means the CDAR passed Sovos validation but failed the PPF's functional checks.

CodeCheckMeaning
REJ_INCStatus consistencyOne or more statuses are inconsistent with the invoice's current lifecycle state.
REJ_INEXStatus conformityOne or more statuses are incorrect or not permitted at this point in the lifecycle.
REJ_RGBusiness ruleOne or more business rules are not satisfied.
REJ_HABAuthorizationThe request is not authorized or requires a permission not held.
REJ_ENCAISSEMENTPayment amountOne or more collected amounts do not match the VAT breakdown declared on the invoice.

REJ_ENCAISSEMENT applies specifically to Encaissée statuses where the payment amount submitted does not reconcile with the VAT rate breakdown on the original invoice.

For all PPF rejections, correct the CDAR and resubmit. The original mandatory status obligation remains. A PPF-rejected Encaissée or Refusée must be resubmitted with corrected data.