- Category
- EU E-Invoicing Compliance
- Status
- Live
- Platforms
- Web, API
- Stack
- Next.js, React, Prisma, PostgreSQL, node-zugferd, pdf-lib, Stripe, Tailwind CSS
Zugflow is a headless e-invoicing engine that listens to Stripe and Shopify webhooks and compiles each paid invoice or order into a hybrid Factur-X/ZUGFeRD e-invoice: a human-readable PDF/A-3 with an EN 16931-conformant Cross Industry Invoice XML payload embedded inside it. It is built for SaaS and e-commerce businesses billing into Germany or France under the EU's e-invoicing mandates.
EU e-invoicing mandates require a machine-readable XML payload alongside the human-readable invoice, and most billing stacks only produce the latter. Zugflow listens for Stripe invoice.finalized and Shopify orders/paid webhooks, maps each payload to the UN/CEFACT Cross Industry Invoice model, and renders both halves of a hybrid Factur-X/ZUGFeRD document from one computed-totals source, so the PDF and the embedded XML can't disagree.
Money is computed in scaled integers rather than floats, so a thousand one-cent lines sum to exactly the expected total, and VAT is rounded per category per EN 16931. Every generated document is validated against the official Factur-X 1.07.3 XSD, and the PDF output is checked for veraPDF PDF/A-3b conformance.
A free, unmetered validation endpoint checks a payload against EN 16931 independently of document generation, so it can run safely on every CI build. Inbound webhook events are keyed on the provider's event ID, so a retried delivery returns the original document instead of minting a duplicate.
- Webhook-driven compilation
- Point a Stripe or Shopify webhook at Zugflow; signatures are verified against the raw body before the payload is mapped to Cross Industry Invoice.
- Hybrid PDF/A-3 output
- Delivers a single file: a PDF/A-3 container with the Factur-X XML embedded as an alternative attachment, fetchable via API.
- Free EN 16931 validator
- A POST endpoint checks a payload against EN 16931 and returns exact errors, unmetered and independent of document-generation quota.
- Conformance profile support
- Supports MINIMUM, BASIC WL, BASIC, EN 16931 and EXTENDED profiles, with the legal caveats of each stated on the docs.