Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

XRechnung / ZUGFeRD / Peppol e-invoice API — examples

Turn invoice data into valid EU e-invoices (and back) with one HTTPS request. Covers XRechnung (Germany), ZUGFeRD / Factur-X, ebInterface (Austria) and Peppol BIS 3.0 — all EN 16931. Generated XRechnung is validated ACCEPTABLE by the official KoSIT validator.

API: https://einvoice.installateur1210.at · Free demo key demo · on RapidAPI: RegioInvoice

Why

E-invoicing is mandatory across the EU (Germany B2B 2025–2028, Austria e-Rechnung, Peppol EU-wide). Instead of implementing EN 16931, the two XML syntaxes (UBL + CII) and every national format yourself:

# JSON -> valid XRechnung / Peppol XML (profile: peppol | xrechnung | en16931)
curl -X POST "https://einvoice.installateur1210.at/v1/einvoice/generate?key=demo" \
  -H "Content-Type: application/json" \
  -d '{"invoice_number":"AT-2026-001","issue_date":"2026-07-12","currency":"EUR",
       "seller":"My Company","seller_country":"AT","seller_vat":"ATU12345678",
       "buyer":"Client Ltd","buyer_country":"DE",
       "total_net":100,"tax_amount":20,"total_gross":120,
       "line_items":[{"name":"Consulting","quantity":1,"line_amount":100}]}'

# Any XRechnung (UBL), ZUGFeRD (CII) or ebInterface (AT) XML -> clean JSON
curl -X POST "https://einvoice.installateur1210.at/v1/einvoice/parse?key=demo" \
  -H "Content-Type: application/xml" --data-binary @invoice.xml

# ZUGFeRD PDF (PDF/A-3 with embedded XML) -> JSON  (the XML is extracted for you)
curl -X POST "https://einvoice.installateur1210.at/v1/einvoice/parse?key=demo" \
  -H "Content-Type: application/pdf" --data-binary @zugferd.pdf

# Validate against EN 16931 / XRechnung  (official KoSIT validator)
curl -X POST "https://einvoice.installateur1210.at/v1/einvoice/validate/official?key=demo" \
  -H "Content-Type: application/xml" --data-binary @invoice.xml

# Convert between formats, e.g. Austrian ebInterface -> Peppol
curl -X POST "https://einvoice.installateur1210.at/v1/einvoice/convert?to=peppol&key=demo" \
  -H "Content-Type: application/xml" --data-binary @ebinterface.xml

Endpoints

Endpoint Description
POST /v1/einvoice/generate JSON → valid UBL (XRechnung / Peppol / EN 16931)
POST /v1/einvoice/parse XRechnung, ZUGFeRD (XML or PDF) or ebInterface → JSON
POST /v1/einvoice/validate Fast EN 16931 rule check (BR-CO-10/15/16, BT-2/5, …)
POST /v1/einvoice/validate/official Official KoSIT validator (EN 16931 + XRechnung Schematron)
POST /v1/einvoice/convert?to=peppol|xrechnung|en16931 Convert between formats

Examples in examples/ — Node.js, Python, PHP. EU-hosted (Austria), no invoice data stored. Built by Kaufmann Installationen, Vienna. Not legal or tax advice.

About

XRechnung, ZUGFeRD, ebInterface & Peppol e-invoice API (EN 16931) — generate, parse, validate & convert. DE/AT/EU. Free demo.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors