What Forme handles
- PDF/A-3 (
pdfa: "3b","3u", or"3a") — identical to PDF/A-2 plus permission for arbitrary embedded files. 3b is sufficient for every Factur-X profile. - The attachment as a conformant associated file: spec filename
(
factur-x.xml;xrechnung.xmlfor the XRECHNUNG profile), MIME typetext/xml,/F//UF,/AFRelationship(profile-derived:Datafor MINIMUM/BASIC WL,Alternativeotherwise; overridable),/Paramswith a deterministicModDate, and the catalog/AFassociation. - The Factur-X XMP identification (
fx:extension schema with DocumentType, DocumentFileName, Version, ConformanceLevel) plus the PDF/A extension-schema description that makes it legal. - Composition with PDF/UA-1 — an invoice can be archival, accessible,
and machine-readable at once (
pdfa="3a" pdfUa). - Validation in CI: every commit renders this exact configuration and gates it on veraPDF (PDF/A-3b + PDF/UA-1) and Mustangproject, the ZUGFeRD/Factur-X reference validator. Evidence: parity.formepdf.com.
What Forme does not do
Forme does not generate or validate EN 16931 semantic content. The invoice XML — its ~170 business terms, tax categories, and the 300+ business rules over them — comes from you (your ERP, billing system, or an EN 16931 library). A conformant container around a non-conformant XML is not a legal e-invoice; validate your XML with Mustang or the CEN validation artefacts. Also worth knowing: under the German B2B mandate,MINIMUM and BASIC WL
profiles do not count as e-invoices (they lack line items) — use an
EN 16931-profile XML for legal compliance in Germany, and EN 16931 or
EXTENDED for France.
Generic attachments
The same machinery is available without the e-invoice framing — any file, under PDF/A-3 or plain PDF:pdfa: "3b" or drop the conformance claim.