Überblick

Zwei Einstiege: schnell prüfen oder systematisch integrieren

XInvoice deckt zwei unterschiedliche Nutzungsszenarien ab: einzelne Rechnungen im Browser prüfen oder E-Rechnungen per API in bestehende Software integrieren. Dieser Überblick hilft dir, den passenden Pfad sofort zu finden.

Ich will eine einzelne Rechnung prüfen

Nutze den Web-Validator für schnelle Browser-Tests mit XML oder ZUGFeRD-PDF.

Zum Validator

Ich will E-Rechnungen automatisieren

Nutze die API für wiederkehrende Validierung, Erzeugung und Abruf in deinem Produkt oder Backend.

Zur Entwicklerseite

Web-Validator: E-Rechnungen im Browser prüfen

Der Web-Validator ist für direkte Einzelprüfungen gedacht. Er eignet sich für XRechnung-Dateien im XML-Format und für ZUGFeRD-Dateien als PDF. Bei erfolgreicher Prüfung kann der Rechnungsinhalt im Browser zusätzlich strukturiert angezeigt werden.

Welche Dienste bietet diese App hier?

  • Validierung von XRechnung-XML im Browser.
  • Validierung von ZUGFeRD-PDF im Browser für eingeloggte Benutzer.
  • Lesbare HTML-Anzeige erfolgreicher XRechnungen und ZUGFeRD-PDFs im Browser für eingeloggte Benutzer.

Nach welchen Normen und Kriterien wird validiert?

  • XRechnung wird gegen UBL/XSD, EN 16931 und XRechnung-CIUS geprüft.
  • ZUGFeRD wird gegen CII/XSD und EN-16931-Regeln geprüft.
  • Zusätzlich wird bei ZUGFeRD der PDF/A-Pfad mit veraPDF geprüft.

Welche Formate kann diese App erzeugen?

  • XRechnung als UBL gemäß EN 16931 und XRechnung-CIUS.
  • ZUGFeRD / Factur-X als CII plus Hybrid-PDF gemäß EN 16931.

So funktioniert der Test im Browser

  1. 1. Die Seite »Validator« öffnen und eine XML- oder PDF-Datei hochladen. XML kann alternativ direkt in das Textfeld eingefügt werden.
  2. 2. Auf »E-Rechnung validieren« klicken und auf das Prüfergebnis unterhalb des Buttons warten.
  3. 3. Bei erfolgreicher Prüfung kann mit »Inhalt der Rechnung anzeigen« eine strukturierte HTML-Ansicht geöffnet werden.

Wo ist das Ergebnis zu finden?

  • Das Ergebnis erscheint direkt unter dem Formular auf derselben Seite.
  • Gäste sehen nur den Status gültig oder fehlerhaft.
  • Eingeloggte Benutzer sehen die einzelnen Fehlermeldungen und bei erfolgreicher Prüfung zusätzlich den Rechnungsinhalt.

Einschränkungen

  • Gäste können nur XML- und TXT-Dateien hochladen. ZUGFeRD-PDFs sind im Web-Validator nur für eingeloggte Benutzer verfügbar.
  • Gäste sind auf drei Prüfungen pro Stunde begrenzt. Mit Konto ist das Kontingent höher.
  • Der Web-Validator ist für Einzelprüfungen gedacht, nicht für automatisierte Produktivprozesse.

API: Schnelleinstieg für Entwickler

Die API richtet sich an Integratoren, die Rechnungen wiederkehrend validieren, erzeugen, speichern und abrufen wollen. Die ausführliche Referenz wird separat gehostet. Hier steht der kompakte Einstieg mit den wichtigsten Endpunkten und der Datenstruktur für Generate.

Welche Dienste bietet diese App über die API?

  • Validierung von Rechnungsdaten als JSON, XML oder ZUGFeRD-PDF.
  • Erzeugung von XRechnung und ZUGFeRD aus strukturierten Rechnungsdaten.
  • Abruf, Auflistung und Download erzeugter Artefakte pro API-Key.

Nach welchen Normen und Kriterien wird validiert?

  • XRechnung: UBL/XSD, EN 16931 und XRechnung-CIUS.
  • ZUGFeRD: CII/XSD, EN-16931-Regeln und PDF/A-Prüfung mit veraPDF.
  • Die Ergebnisse werden strukturiert mit Quelle, Code, Schweregrad und Position zurückgegeben.

Welche Formate kann die API erzeugen?

  • XRechnung als UBL-XML.
  • ZUGFeRD / Factur-X als CII-XML und Hybrid-PDF.
  • Für ZUGFeRD kann zusätzlich ein Logo eingebunden werden.

Schnelleinstieg

  1. 1. Konto registrieren, passenden Tarif wählen und im Dashboard einen API-Key erzeugen.
  2. 2. Mit »POST /v1/invoices/validate« zuerst Testdaten gegen die Validierung laufen lassen.
  3. 3. Mit »POST /v1/invoices/generate« die eigentliche Rechnung erzeugen, synchron oder asynchron.
  4. 4. Den Status über »GET /v1/invoices/{id}« abfragen und fertige Artefakte bei Bedarf herunterladen.

Ausführliche API-Dokumentation

Externe API-Doku öffnen

Die vollständige Referenz mit allen Feldern, Antwortmodellen und Beispielen wird separat veröffentlicht. Der Überblick auf dieser Seite ist bewusst knapp und soll den schnellsten Weg in die Integration zeigen.

Wichtige Endpunkte mit Beispielen

POST /v1/invoices/validate

Validiert Rechnungsdaten als JSON, XML oder ZUGFeRD-PDF, ohne etwas zu speichern.

curl -X POST https://api.xinvoice.net/v1/invoices/validate \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -d @payload.json

POST /v1/invoices/generate

Erzeugt eine Rechnung und liefert im Sync-Modus direkt XML bzw. PDF zurück.

curl -X POST https://api.xinvoice.net/v1/invoices/generate \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Prefer: respond-sync' \
  -d @payload.json

GET /v1/invoices/{id}

Liefert Status, Validierung und Artefakte einer zuvor erzeugten Rechnung.

curl -X GET https://api.xinvoice.net/v1/invoices/{id} \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY'

GET /v1/invoices/{id}/download-pdf

Lädt das Hybrid-PDF einer ZUGFeRD-Rechnung herunter.

curl -X GET https://api.xinvoice.net/v1/invoices/{id}/download-pdf \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -o invoice.pdf

Struktur der Rechnungsdaten für die Erzeugung

Für »generate« und »validate« mit JSON werden strukturierte Rechnungsdaten erwartet. Das folgende Beispiel zeigt die wichtigsten Blöcke für Seller, Buyer und Positionen.

{
  "document_format": "zugferd",
  "invoice_number": "RE-2026-001",
  "issue_date": "2026-04-15",
  "currency": "EUR",
  "seller": {
    "name": "Muster GmbH",
    "vat_id": "DE123456789",
    "street": "Musterstr. 1",
    "postal_code": "12345",
    "city": "Berlin",
    "country_code": "DE",
    "email": "seller@example.com"
  },
  "buyer": {
    "name": "Kunde AG",
    "street": "Kundenweg 5",
    "postal_code": "54321",
    "city": "Hamburg",
    "country_code": "DE",
    "email": "buyer@example.com"
  },
  "items": [
    {
      "name": "Beratung",
      "quantity": 1,
      "unit_code": "H87",
      "price": 100.00,
      "tax_rate": 19
    }
  ]
}

FAQ

Häufige Fragen zu Web-Validator, Konto, API-Zugang und Downloads sind auf einer eigenen FAQ-Seite zusammengefasst.

Zur FAQ

Support

Wenn der Überblick nicht reicht oder ein konkretes Problem vorliegt, kann das Support-Formular direkt im Browser genutzt werden.

Zum Support