Generate the invoice in ZUGFeRD 2.1 format: embed a CII D16B XML file named ZUGFeRD-invoice.xml as an attachment in a PDF/A-3 document
Validate the embedded XML against the EN 16931 CII schematron using the ConnectingEurope artefacts (current release v1.3.16)
Validate against the ZUGFeRD 2.1 EXTENDED or COMFORT profile schematron provided by the FeRD organization for profile-specific rules
Use the Mustang Project open-source library or an equivalent validator to run combined PDF/A-3 structural and XML schematron checks in one pass
Archive the validated ZUGFeRD file for the GoBD-required 10-year retention period, preserving the original binary without alteration
Known gotchas
The XML must be embedded using the correct PDF/A-3 attachment specification with the AFRelationship key set to Alternative; incorrect embedding causes the PDF to fail PDF/A-3 conformance
ZUGFeRD profile levels (MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED) have different mandatory field sets; choose the profile matching your recipient's requirements before generating
ZUGFeRD 2.1 and Factur-X 1.0 are technically identical specifications; a file valid as ZUGFeRD 2.1 EXTENDED is also valid as Factur-X EN 16931
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp