eliDocs
Format Reference

Factur-X (1.09.2)

The Franco-German hybrid PDF/A-3 + CII e-invoice format. What Beliq emits across the five profiles plus the EXTENDED-CTC-FR overlay for the French B2B reform.

Factur-X is a hybrid e-invoice format that pairs a PDF/A-3 document (human-readable) with embedded UN/CEFACT CII D22B XML (machine-readable). It is jointly maintained by FNFE-MPE (France) and FeRD (Germany), and the same artefacts are published as ZUGFeRD 2.x by FeRD. The two are technically the same format under two regional labels.

Beliq validates against Factur-X 1.09.2 / ZUGFeRD 2.x (published 2026-08-04). It was announced on 2026-08-20 as a breaking ruleset bump for 2026-11-20 and brought forward to 2026-09-10, so latest resolves to it now and a document you send today is judged under it. 1.08 stays retained on the previous channel until 2027-05-16. Since 2026-09-15 the 1.09.2 artefacts come from FNFE-MPE’s 2026-09-04 pack (Factur-X_1.09.2.fixFR04, shipped with French CTC 1.4.0.04); the specification is still 1.09.2, only the pack moved. What changed, rule by rule, is in ruleset versioning and the changelog.

Profiles

Profiles

Factur-X 1.09.2 ships five EN-16931-aligned profiles plus a French CTC overlay. All five are supported in Beliq.

Profile Beliq value What it carries
MINIMUM minimum Header-only structured data (invoice number, dates, totals). Originally aligned with Chorus Pro minimum requirements.
BASIC_WL basicwl Basic without line items: header-level data only.
BASIC basic Header data plus essential invoice lines.
EN 16931 (Comfort) en16931 Full EN 16931 compliance; recommended for most use cases.
EXTENDED extended EN 16931 plus additional EXTENDED-only fields.
EXTENDED-CTC-FR (overlay) extended-ctc-fr EXTENDED + the French B2B reform CTC overlay (BR-FR-CTC + EXTENDED-CTC-FR Schematron). The official French reference profile for the e-invoicing reform.
What Beliq emits

What Beliq emits

When you call POST /v1/generate with standard: "facturx":

  • output: "pdf" → a PDF/A-3 document with embedded CII D22B XML, attached under the standard filename factur-x.xml.
  • output: "xml" → the same CII D22B XML without the PDF envelope.

The profile field selects one of the values in the table above; verify: true (the default) validates the generated XML before the response is returned, through the arm the profile’s CustomizationID selects (see Validation pipeline below). For the EN 16931 profile that arm is the generic EN 16931 Schematron, not the FNFE-MPE profile pack.

The full request schema is on POST /v1/generate, and a French curl walk-through is in the France guide.

French B2B reform: CTC overlay

French B2B reform: CTC overlay

France’s B2B e-invoicing reform requires invoices to flow through certified Plateformes Agréées (PA). Beliq validates Factur-X documents against the BR-FR-CTC Flux 2 Schematron and the EXTENDED-CTC-FR overlay for the reform, documented in detail in the France guide, French B2B reform section. Beliq’s generator does not build a document that passes them: it does not emit the three BG-1 invoice notes (BT-21 subject codes PMT, PMD, AAB) that rule BR-FR-05 requires, so a POST /v1/generate request for extended-ctc-fr with verify: true is refused with the failing rules listed. Beliq is not a registered Plateforme Agréée (PA); transmission is handled by your PA partner.

Schematron sources

Schematron sources

For the BASIC_WL, EN 16931 and EXTENDED profiles, the per-profile Schematron and XSDs come directly from the FNFE-MPE / FeRD 1.09.2 joint pack. The EN 16931 profile’s Schematron and XSD are pinned like the others but do not run today; the next section says why. For the MINIMUM and BASIC profiles, FNFE-MPE distributes artefacts behind an email-request information pack; Beliq sources those two profiles from Mustangproject core-2.26.0 (Apache-2.0), the FNFE-MPE-recommended downstream consumer that republishes the same artefacts at matching upstream tags. The exact pin is recorded with SHA-pinned per-file paths (see France guide: MINIMUM and BASIC: secondary source for the full disclosure).

Validation pipeline

Validation pipeline

Every Factur-X document Beliq generates or validates passes through:

  1. An XSD, chosen by the document’s CustomizationID. MINIMUM, BASIC_WL, BASIC and EXTENDED run their Factur-X 1.09.2 per-profile XSD. The EXTENDED-CTC-FR CustomizationID runs the full CII D22B XSD. The EN 16931 profile declares the bare urn:cen.eu:en16931:2017, which a plain EN 16931 CII document carries too, so it runs the CEN CII D16B XSD.
  2. The Schematron arm the same CustomizationID selects. MINIMUM, BASIC_WL, BASIC and EXTENDED declare a URN carrying a factur-x.eu fragment and run the Factur-X 1.09.2 profile Schematron (FNFE-MPE / FeRD or Mustang per profile, as above), which carries the EN 16931 rules itself and replaces the generic layer. The EN 16931 profile runs the generic CEN EN 16931 Schematron instead. FNFE-MPE’s own EN 16931 profile Schematron, which adds Factur-X assertions the CEN pack does not carry, runs on no document today: neither the URN nor any request parameter selects it. An EXTENDED-CTC-FR document runs the generic EN 16931 Schematron as its base, without the findings for the rules XP Z12-012 1.4.0 removes from that profile, such as BR-O-11, and for the rules the EXTENDED-CTC-FR Schematron (4) re-issues; an info finding names each set.
  3. France BR-FR-CTC Flux 2 Schematron: when franceCtc=true is requested, when the document declares the EXTENDED-CTC-FR CustomizationID, or when BT-23 carries one of the twenty XP Z12-012 cadre de facturation codes.
  4. France EXTENDED-CTC-FR Schematron: additionally when (3) applies and the document is in the EXTENDED profile or declares the EXTENDED-CTC-FR CustomizationID.

The EN 16931 profile is the default when no profile is given, so it is the common path. The rulesetArtifacts on your response names the arm that judged it; GET /v1/rulesets publishes the pins those artefacts come from.

For output: "pdf", the engine also runs Mustang to embed the XML in the PDF/A-3 envelope, and then veraPDF, which checks the finished file against its PDF/A-3b profile. A file in which veraPDF reports a violation is not returned (422 PDFA_VIOLATION). Pinned versions are on the validation artifacts page.

What Beliq does NOT do

What Beliq does NOT do

  • Operate a Plateforme Agréée (PA). Beliq’s Factur-X output is given to your PA partner for transmission.
  • Implement the AIFE Annuaire (recipient lookup), CDAR message envelope, or e-reporting flows (Flux 8 / 9 / 10).
Related