
PDF/A-3 Technical Guide: Embedding ZUGFeRD & Factur-X XML for Compliance
Official references
Use these sources to verify dates, formats, and official rule changes.
Related Technical Wiki
Explore deep-dive developer documentation and regulatory guidelines matching this article.
A practical guide to PDF/A-3, PDF/X-3, and why ZUGFeRD and Factur-X hybrid invoices need an archival PDF container with embedded XML.
Understand when a hybrid ZUGFeRD or Factur-X PDF can be accepted as an archive-ready PDF/A-3 file.
ZUGFeRD and Factur-X hybrid invoices: PDF/A-3 with embedded CII/XML, profile levels (MINIMUM to EXTENDED), validation, and when to choose ZUGFeRD vs pure XML for Germany and EU B2B.
Hybrid e-invoices such as ZUGFeRD and Factur-X use a PDF/A-3 file (ISO 19005-3) as the visual document and embed the structured invoice XML alongside it.
For software engineers, PDF-library developers, and validation teams, producing a conforming file means getting the PDF/A rules, associated-file metadata, XMP extension schema, and font and color requirements right.
Core Architecture: How PDF/A-3 Differs from PDF/A-2
- File attachments: PDF/A-2 permits embedded files only under its more limited rules. PDF/A-3 permits associated files of arbitrary formats, including XML, when the required PDF/A metadata is present.
- Associated Files (`/AF`): The document Catalog, or an individual Page when appropriate, can carry an `/AF` array that points to file-specification dictionaries and their embedded-file streams.
- AFRelationship: Each associated file must declare an `/AFRelationship` value, such as `/Alternative` or `/Data`, describing how it relates to the PDF representation.
- Attachment name: Factur-X and current ZUGFeRD specifications use `factur-x.xml` for the embedded invoice XML. Do not substitute a different name without checking the exact profile and version specification.
XMP Metadata Extension Schema Requirements
PDF/A-3 validators such as veraPDF inspect the XMP metadata packet referenced by the document Catalog. A Factur-X or ZUGFeRD file must declare the format namespace through the PDF/A extension schema, using the namespace and property definitions from the applicable release.
The invoice extension properties include DocumentFileName (`factur-x.xml`), DocumentType (`INVOICE`), Version, and ConformanceLevel. The allowed profile values depend on the specification version, so use the exact release values rather than assuming that every version has the same list.
Font Subsetting & Color Space Rules
- Font embedding: Every font used by the visual document must be embedded. Subsetting is allowed when the resulting font program and character mappings remain valid.
- Color profile (OutputIntent): A PDF/A-3 file must provide an OutputIntent with an ICC profile suitable for the document, such as sRGB IEC61966-2.1, so rendering is reproducible across systems.
- Validation tools: Run veraPDF for PDF/A-3 and the official FeRD/Factur-X XSD and Schematron rules for the invoice profile before release. They check different layers of conformance and semantic invoice rules.
Official Technical References
Ready to convert your invoices?
Convert PDF invoices to XRechnung, ZUGFeRD, and other formats. Subscriptions from €10/month with annual billing (excl. taxes), with a 3-day trial on your first subscription. Or without a subscription: €5 per conversion (excl. taxes).