Generate ZUGFeRD e-invoice PDFs with webhook and Fly.io API
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
Nodes used (7)
- Stripe Trigger
n8n-nodes-base.stripeTrigger - Webhook
n8n-nodes-base.webhook - Code
n8n-nodes-base.code - HTTP Request
n8n-nodes-base.httpRequest - If
n8n-nodes-base.if - Send Email
n8n-nodes-base.emailSend - Respond to Webhook
n8n-nodes-base.respondToWebhook
What it does
Quick overview This workflow receives invoice data via a webhook, sends it to a Fly.io-hosted ZUGFeRD/XRechnung generation API, and returns a generated PDF/A-3 invoice (with embedded ZUGFeRD XML) directly in the webhook response. How it works 1. Receives a POST request with invoice JSON data via a webhook endpoint. 2. Sends the received JSON to the Fly.io API endpoint https://e-rechnung-api.fly.dev/v1/invoice/generate with an X-API-Key header. 3. Receives the generated invoice PDF as a binary file from the API. 4. Returns the PDF in the webhook response as a downloadable file named e-rechnung.pdf with Content-Type: application/pdf. Setup 1. Deploy/verify access to the ZUGFeRD generation API at https://e-rechnung-api.fly.dev/v1/invoice/generate and obtain an API key. 2. Set the ZUGFERDAPIKEY environment variable in n8n (or replace the X-API-Key header value) so the HTTP request authenticates against the API. 3. Activate the workflow and copy the webhook URL, then configure your source system to POST the invoice JSON to /generate-zugferd-invoice.