en

Create ZUGFeRD

Create a ZUGFeRD/Factur-X PDF with embedded EN 16931 XML from a few simple inputs - locally in the browser, with no upload.

A structural check as a helper function, not a legally binding attestation.
Profile
  • BASIC (with line items)
  • BASIC WL (without line items)

Running locally on your device ...

0%

Your files never left your device

    Is my file uploaded?

    No. Everything runs in your browser - your file never leaves your device. How this is verifiable

    No upload100% local
    Your content stays with youno third-party access
    Servers in GermanyGDPR by design
    Independently auditedTLS A+ · HTTP headers A+

    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 formatsText input
    Output formatPDF
    Batch processingNo
    ProcessingLocally in your browser (JavaScript)
    File uploadNone

    In 3 steps

    1. Enter the invoice data - one field per line (e.g. "Item: Consulting | 2 | 100.00").
    2. Tap Generate - the XML and PDF are built locally in the browser.
    3. 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.

    Related tools