No processing of your file contents takes place on any server. You need no data-processing agreement with gottrix to handle confidential or business documents.
Servers in GermanyGDPR by design
Origin servers at Hetzner in Germany. Since your files never leave your device, their contents are not transmitted at all.
A ZUGFeRD or Factur-X invoice is a hybrid document: a PDF to look at, with the structured invoice data additionally embedded as XML (CrossIndustryInvoice per EN 16931). This tool builds both from your input: you type the invoice line by line as a simple "key: value" list, and it produces a PDF with a readable invoice page and the embedded factur-x.xml. Everything runs locally in the browser (pure JavaScript via pdf-lib, no server) - your business data never leaves your device.
You give one field per line. Supported keys (German or English): invoice number, date (YYYY-MM-DD), currency, type (380 commercial invoice or 381 credit note), seller (name | country | VAT ID), buyer (name | country), Leitweg-ID and tax rate. Each invoice line is its own row: "Item: description | quantity | unit price" - so you can add as many line items as you like. Line and grand totals plus the tax are computed automatically and written into both the XML and the visible PDF page.
Honestly framed: the tool produces a PDF with a correctly embedded CII XML in the chosen profile - by default Factur-X BASIC with line items and EN 16931 compliance, or optionally BASIC WL without line items and without an EN 16931 claim (a plain booking-aid profile) - the structured invoice that accounting software can read automatically. Full strict PDF/A-3 conformance (colour profile, XMP metadata) cannot be conclusively produced or verified in the browser, which is why this tool is marked structural/Beta. Check the finished PDF with your invoicing software if needed - you can extract and re-check the generated XML directly with the sister tools.
Specifications
Specifications
Input formats
Text input
Output format
PDF
Batch processing
No
Processing
Locally in your browser (JavaScript)
File upload
None
In 3 steps
Enter the invoice data - one field per line (e.g. "Item: Consulting | 2 | 100.00").
Tap Generate - the XML and PDF are built locally in the browser.
Download the ZUGFeRD/Factur-X PDF (with the embedded factur-x.xml).
Limitations:Builds a PDF with embedded CII XML (CrossIndustryInvoice) in the selectable profile Factur-X BASIC (with line items, EN 16931 compliant, default) or BASIC WL (without line items, no EN 16931 claim) from a simple "key: value" input: invoice number, date, currency, type 380/381, seller/buyer, Leitweg-ID, tax rate and any number of line items (name | quantity | unit price); totals and tax are computed. It covers the BASIC core profile with a single tax rate - discounts, multiple tax rates or prepayments are not modelled in this version. Full strict PDF/A-3 conformance (colour profile/XMP) is not fully producible in the browser, hence structural/Beta: verify the finished PDF with your software. The tool provides a structural template, not a seal of approval.
FAQ
Is my data uploaded?
No. The XML and the PDF are built entirely locally in the browser (pure JavaScript via pdf-lib, no server); your business data never leaves your device.
How do I enter the invoice?
One field per line as "key: value", e.g. "Invoice number: INV-2026-001" or "Seller: Acme Ltd | DE | DE123456789". Each line item is its own row "Item: name | quantity | unit price".
What is inside the PDF?
A readable invoice page and the embedded factur-x.xml (CrossIndustryInvoice) in the chosen profile - Factur-X BASIC (default, with line items, EN 16931 compliant) or BASIC WL (without line items) - exactly the hybrid structure of ZUGFeRD/Factur-X.
Is this a full PDF/A-3?
The XML is embedded correctly, but full strict PDF/A-3 conformance (colour profile, XMP) cannot be fully produced in the browser - hence structural/Beta. Verify the finished PDF with your invoicing software.
Can I double-check the result?
Yes. Use "Extract ZUGFeRD XML" to pull the embedded XML back out and "Check e-invoice" to check it structurally against the EN 16931 rules.
What is the difference between BASIC and BASIC WL?
BASIC includes every invoice line item and is EN 16931 compliant - that is the default and the right choice for most cases. BASIC WL (without lines) omits the line items and only carries the totals; it is a plain booking-aid profile with no EN 16931 compliance claim. Pick the profile above that matches your use case.