Lifecycle status body
Create the lifecycle status body, which contains the CDAR XML embedded inside a Standard Business Document (SBD).
For a full guide to lifecycle statuses — including the complete status list, mandatory vs. optional statuses, use cases, and response handling — see Lifecycle and use cases.
When to use this body type
Use the lifecycle status body when you need to report a treatment-phase status on an invoice you have already submitted. Treatment-phase statuses are set by the seller or buyer after the invoice has been delivered, and are routed through Sovos to the counterparty.
Examples of treatment-phase statuses you may need to submit:
-
Encaissée (212) — Seller reports that payment has been received. Mandatory and must be reported to the PPF when VAT is due on collection (services invoices where the seller has not opted for VAT on debits)
-
Refusée (210) — Buyer refuses the invoice in its entirety
-
Approuvée (205) — Buyer accepts the invoice
-
En litige (207) — Buyer raises a dispute
-
Suspendue (208) — Buyer requests additional supporting documents
-
Paiement transmis (211) — Buyer or seller reports payment transfer
Transmission-phase statuses (Déposée, Rejetée, Émise, Reçue, Mise à disposition) are set automatically by the PDPs — you do not submit these.
For the complete status list, which statuses are mandatory, and which use cases require specific statuses, see Invoice Lifecycle and Use Cases.
SBDH values
When submitting a lifecycle status, use these values alongside the standard SBDH configuration in Create a Standard Business Document.
| Element | Value |
|---|---|
DocumentIdentification.Standard | urn:oasis:names:specification:ubl:schema:xsd:Invoice-2 |
DocumentIdentification.TypeVersion | 2.1 |
DocumentIdentification.Type | Invoice |
Scope: BusinessService.BusinessServiceName | Default |
Scope: BusinessCategory | FR-CDAR-3.0-LIFECYCLE-1.0 |
Embedding the CDAR body
CDAR XML must be Base64-encoded and embedded inside <enc:EmbeddedDocument>:
<svs:SovosDocument>
<svs:SovosLegalDocument>
<enc:Base64Document>
<enc:EmbeddedDocument id="[Your_StatusMessageID]"
fileName="status.xml"
mimeCode="application/xml">
[Base64-encoded CDAR XML]
</enc:EmbeddedDocument>
</enc:Base64Document>
</svs:SovosLegalDocument>
</svs:SovosDocument>
CDAR schema
The CDAR (Cross Domain Acknowledgement and Response) message is implemented in UN/CEFACT D22B format. A lifecycle status CDAR contains three main blocks:
-
ExchangedDocumentContext — identifies the message profile (
urn:cpro.gouv.fr:1p0:CDV:invoice). -
ExchangedDocument — message header: unique message ID, date/time, sender and recipient party identifiers.
-
AcknowledgementDocument — the status block, containing:
-
A reference to the invoice this status applies to (invoice number, issue date, seller SIREN).
-
The status code (
ProcessConditionCode) — one of the reform codes 200-213. -
The status label (
ProcessCondition) — human-readable status name. -
Optional reason code and reason text.
-
For the complete CDAR field reference, status codes, reason codes, and sample SBDs for each use case, see Invoice Lifecycle and Use Cases.
- Validation
-
-
Reason code and reason text are required for Rejetée (213) and Refusée (210)
-
The CDAR XSD is available at https://unece.org/trade/documents/2024/12/standards/cross-domain-acknowledgement-and-response-d22b. The French implementation profile is in AFNOR XP Z12-012, downloadable from https://www.impots.gouv.fr/specifications-externes-b2b
-
