← Zurück zum Editor 🔒 Datenschutz § Impressum

Hilfe & Dokumentation

XRechnung Editor – kostenloser Online-Editor für XRechnung 3.0 / ZUGFeRD / Factur-X konforme Rechnungen. Die Anwendung läuft vollständig in Ihrem Browser und kommuniziert ausschließlich mit dem Server unter xrechnungapi.org.

⬇ Schnellstart: Beispieldateien herunterladen

Laden Sie die Beispieldateien herunter, um sofort loszulegen. Öffnen Sie das Beispiel-XML im Editor, wählen Sie das Template im Server-Panel aus und klicken Sie auf PDF erzeugen.

📄 Beispiel-XML herunterladen (XRechnung 3.0, anonymisiert) 🎨 Beispiel-Template herunterladen (HTML, anpassbar)

Das Template kann in jedem Texteditor angepasst werden – Farben, Logo, Schriften, Fußzeile. Alle verfügbaren Platzhalter sind in Abschnitt 4 dieser Hilfe dokumentiert.

1. Der Editor – Funktionsübersicht

Rechnung / Gutschrift

Ganz oben links in der Menüleiste schalten Sie zwischen Rechnung (TypeCode 380) und Gutschrift (TypeCode 381) um. Das Template reagiert automatisch: der Zahlungshinweis entfällt bei Gutschriften, stattdessen erscheint ein Gutschrift-Hinweistext.

XML laden

Klicken Sie auf 📂 Öffnen oder ziehen Sie eine XML-Datei ins Fenster. Unterstützt werden XRechnung 3.0, ZUGFeRD und Factur-X im UN/CEFACT CII-Format. Alle Felder werden automatisch befüllt.

Tastaturkürzel: ⌘O (Mac) / Ctrl+O (Windows)

Rechnungsersteller (Absender)

Alle Absender-Felder sind editierbar: Name, Adresse, Telefon, E-Mail, USt-IdNr., IBAN, BIC sowie optional Handelsregister (z.B. Lüneburg HRB 211626) und Geschäftsführer. Diese Angaben werden in der XML gespeichert und im PDF dargestellt.

Rechnungskopf

Rechnungsnummer, Datum, Lieferdatum, Währung und Kopf-Notiz (z.B. Leistungszeitraum). Der ↻ Button neben der Rechnungsnummer holt automatisch die nächste verfügbare Nummer vom Server (benötigt API-Key im Server-Panel).

Wenn Sie die Rechnungsnummer ändern, blinkt das Feld Verwendungszweck kurz gelb auf und übernimmt den Wert – sofern Sie den Verwendungszweck nicht manuell geändert haben.

Empfänger

Firmenname, Ansprechpartner, E-Mail, Kundennummer (wird als GlobalID im XML gespeichert), Adresse sowie Bestellreferenz und Verwendungszweck.

Positionen

Beliebig viele Positionen mit Bezeichnung, Leistungsart, Notiz/Zeitraum, Menge, Einheit (Std./Tag/Monat/Stück/kg/m …), Einzelpreis und MwSt-Satz. Summen werden automatisch berechnet – auch bei gemischten Steuersätzen.

Zahlung & Summen

Zahlungsziel in Tagen eingeben → Fälligkeitsdatum wird automatisch errechnet und der Zahlungsbedingungstext befüllt (überschreibbar).

XML speichern

Speichert die aktuelle Rechnung als valide XRechnung 3.0 XML-Datei auf Ihrem Rechner. Tastaturkürzel: ⌘S / Ctrl+S.

2. Demo-Key & Testen

Demo-Key: demo1234  ·  Gültig jeweils von xx:35 bis xx:55 (5-Minuten-Fenster jede Stunde)

Mit dem Demo-Key können Sie alle Funktionen kostenfrei testen – die Erzeugung echter ZUGFeRD-PDFs mit eingebetteter XML inklusive. Der Key ist aus Sicherheitsgründen nur in einem bestimmten Zeitfenster pro Stunde aktiv.

Demo-Keys werden nicht im Browser gespeichert – Sie müssen ihn bei jeder Sitzung neu eintragen. Außerdem werden für Demo-Aufrufe keine Rechnungsdaten auf dem Server gespeichert.

Bitte ausgiebig mit dem Demo-Key testen, bevor Sie sich einen eigenen API-Key erzeugen.

3. Server-Panel: API-Key & PDF-Erzeugung

Das 🖨️-Symbol unten rechts im Editor öffnet das Server-Panel. Dort eintragen:

FeldInhalt
Server-Basis-URLhttps://xrechnungapi.org
API-KeyIhr persönlicher Key oder demo1234 zum Testen
HTML-TemplateIhre Template-Datei (einmalig auswählen, bleibt gesetzt)

Mit Klick auf XML senden → PDF herunterladen wird die aktuelle Rechnung aus dem Editor als XML generiert, zusammen mit dem Template an den Server gesendet, und das fertige ZUGFeRD-PDF (mit eingebetteter XML) direkt heruntergeladen.

Der ↻ Button neben der Rechnungsnummer fragt den Server nach der höchsten bisher verwendeten Nummer und schlägt die nächste vor – praktisch für lückenlose Nummerierung.

4. HTML-Template anpassen

Das Template ist eine normale HTML-Datei mit Platzhaltern. Sie können es beliebig gestalten – Logo, Farben, Schriften, Fußzeile.

Einfache Felder


{{seller_name}}      → Rechnungsersteller Name
{{buyer_name}}       → Käufer Name
{{invoice_nr}}       → Rechnungsnummer
{{invoice_date}}     → Rechnungsdatum (formatiert)
{{due_date}}         → Fälligkeitsdatum
{{net_total}}        → Nettobetrag
{{tax_total}}        → MwSt-Betrag
{{grand_total}}      → Gesamtbetrag
{{iban}}             → IBAN
{{seller_hreg}}      → Handelsregister
{{seller_ceo}}       → Geschäftsführer
{{buyer_custid}}     → Kundennummer
{{doc_type_label}}   → "Rechnung" oder "Gutschrift"
{{doc_class}}        → "" oder "is-credit" (CSS-Klasse)

Positionen (Schleife)

<!-- LOOP_LINES -->
<tr>
  <td>{{line.pos}}</td>
  <td>{{line.name}}</td>
  <td>{{line.desc}}</td>
  <td>{{line.note}}</td>
  <td>{{line.qty_fmt}}</td>
  <td>{{line.unit_label}}</td>
  <td>{{line.price_fmt}} €</td>
  <td>{{line.total_fmt}} €</td>
</tr>
<!-- /LOOP_LINES -->

Direkter XPath-Zugriff


{{xpath:.//ram:ID}}
{{xpath_date:.//udt:DateTimeString}}
{{xpath_num:.//ram:GrandTotalAmount}}

Logo einbinden

Logo per POST /logo hochladen (siehe curl-Beispiele unten), dann im Template:

<img src="logo.png">
<!-- Der Dateiname muss dem hochgeladenen Logo entsprechen -->

Das Logo wird serverseitig als Base64-Data-URI eingebettet – keine externen Referenzen im PDF.

5. Massenverarbeitung via curl

Alle Funktionen sind auch direkt per HTTP-REST erreichbar – ideal für automatisierte Verarbeitung, Skripte oder Systeme die XRechnungen erzeugen müssen.

Logo hochladen

curl -X POST https://xrechnungapi.org/logo \
  -F "key=IHR_API_KEY" \
  -F "logo=@/pfad/zu/logo.png"

PDF erzeugen (Datei-Upload)

curl -X POST https://xrechnungapi.org/invoice \
  -F "key=IHR_API_KEY" \
  -F "xml=@rechnung.xml" \
  -F "template=@template.html" \
  -o Rechnung_221453.pdf

Nächste Rechnungsnummer abfragen

curl -X POST https://xrechnungapi.org/next-invoice-nr \
  -d "key=IHR_API_KEY"

# Antwort: {"next_nr": "221479"}

Massenverarbeitung: Bash-Skript

#!/bin/bash
KEY="IHR_API_KEY"
SERVER="https://xrechnungapi.org"
TEMPLATE="template.html"
OUTDIR="./pdfs"

mkdir -p "$OUTDIR"

for xml_file in ./rechnungen/*.xml; do
  name=$(basename "$xml_file" .xml)
  echo "Verarbeite: $name"

  curl -s -X POST "$SERVER/invoice" \
    -F "key=$KEY" \
    -F "xml=@$xml_file" \
    -F "template=@$TEMPLATE" \
    -o "$OUTDIR/$name.pdf"

  if [ $? -eq 0 ]; then
    echo "  ✓ $OUTDIR/$name.pdf"
  else
    echo "  ✗ Fehler bei $name"
  fi
done

Python-Beispiel

import requests, pathlib

KEY      = "IHR_API_KEY"
SERVER   = "https://xrechnungapi.org"
TEMPLATE = pathlib.Path("template.html")

def xml_to_pdf(xml_path: str) -> bytes:
    with open(xml_path, "rb") as f_xml, TEMPLATE.open("rb") as f_tpl:
        resp = requests.post(
            f"{SERVER}/invoice",
            data={"key": KEY},
            files={
                "xml": ("rechnung.xml", f_xml, "application/xml"),
                "template": ("template.html", f_tpl, "text/html"),
            },
            timeout=30,
        )
    resp.raise_for_status()
    return resp.content  # PDF-Bytes

# Alle XMLs in einem Ordner verarbeiten
for xml in pathlib.Path("./rechnungen").glob("*.xml"):
    pdf = xml_to_pdf(xml)
    out = pathlib.Path("./pdfs") / xml.with_suffix(".pdf").name
    out.write_bytes(pdf)
    print(f"✓ {out}")
Der Server gibt bei ungültigem Key oder Fehler immer 404 ohne Body zurück – absichtlich, um keine technischen Details preiszugeben.

6. Eigenen API-Key erzeugen

Der Key wird sofort selbst erzeugt – eine Anfrage per E-Mail ist nicht mehr nötig. Zur Bestätigung geht eine Mail an die angegebene Adresse; erst ein Klick auf den Link darin erzeugt den Key.

Was danach passiert: Sie bekommen eine Mail mit einem Bestätigungslink. Der Link gilt 24 Stunden und funktioniert genau einmal. Nach dem Klick wird der Key angezeigt und zusätzlich per Mail zugeschickt.

Der Key enthält 10 kostenlose Rechnungen pro Monat. Das Kontingent erneuert sich automatisch am Monatsanfang, eine Kündigung gibt es nicht.

Kommt keine Mail an, liegt es meist am Spam-Ordner. Hilft das nicht, genügt eine Nachricht an apikey@about-quality.de.

7. Preise & Bezahlung

Die Nutzung ist kostenlos

Editor, API und Key kosten nichts. Es gibt keine Anmeldung, kein Abonnement und keine Rechnung, die hinterherkommt. Jeder Key enthält 10 kostenlose Rechnungen pro Monat.

Wer das Werkzeug regelmäßig nutzt und etwas zurückgeben möchte, kann freiwillig spenden. Das hält den Server am Laufen – mehr ist damit nicht verbunden, gespendet wird ohne Gegenleistung und ohne Freischaltung.

Spenden per Wero

Wero QR-Code zum Spenden

https://share.weropay.eu/p/1/c/TmJqBbI8hA

Betrag frei wählbar. Ein Verwendungszweck ist nicht nötig – es wird nichts zugeordnet und nichts freigeschaltet.

Eine Spendenquittung gibt es nicht. Wer eine Rechnung braucht, nutzt bitte die Credits weiter unten.

Für Vielnutzer: Credits mit Rechnung

Wer dauerhaft mehr als das Freikontingent braucht oder eine ordentliche Rechnung für die Buchhaltung benötigt, kann weiterhin Credits erwerben: 0,10 EUR pro Rechnung (inkl. 19 % MwSt.). Credits werden auf den Key gebucht und erst verbraucht, wenn das Freikontingent des Monats aufgebraucht ist.

Mindestmenge und Staffelpreise für größere Kontingente auf Anfrage: apikey@about-quality.de – bitte E-Mail-Adresse und die letzten 6 Zeichen des API-Keys angeben.

Das aktuelle Kontingent lässt sich jederzeit im Server-Panel des Editors über „Credits prüfen" abfragen – ohne die Seite neu zu laden.

8. Kontingent & Credits

Jeder API-Key hat ein Freikontingent von 10 Rechnungen pro Monat. Darüber hinaus können Credits erworben werden (0,10 EUR/Rechnung). Der Server zählt die Verbrauchs automatisch und zieht Credits ab sobald das Freikontingent erschöpft ist.

Kontingent-Logik

PrioritätBedingungErgebnis
1Freikontingent diesen Monat noch verfügbar (≤ 10)✓ Erlaubt, Monatszähler +1
2Credit = unlimited✓ Immer erlaubt
3Credit-Guthaben > 0✓ Erlaubt, Credit −1
4Kein Kontingent mehr✗ Abgelehnt (404)

Credits im Frontend abfragen

Im Server-Panel (🖨️ Button unten rechts) finden Sie neben dem API-Key-Feld den Button „Credits prüfen". Ein Klick öffnet ein Overlay-Fenster mit:

Credits per curl abfragen

curl -X POST https://xrechnungapi.org/credit   -d "key=IHR_API_KEY"

# Antwort:
# {
#   "name":           "Muster GmbH",
#   "credit":         47,
#   "month_key":      "202604",
#   "month_used":     3,
#   "free_remaining": 2
# }
FeldBedeutung
free_remainingNoch verfügbare kostenlose Rechnungen diesen Monat
creditZusätzliches Guthaben (Zahl oder "unlimited")
month_usedGesamtverbrauch diesen Monat (Frei + Paid)

9. Eingegangene Rechnungen visualisieren

Haben Sie eine XRechnung oder ZUGFeRD-Rechnung erhalten und möchten deren Inhalt lesbar darstellen? Nutzen Sie das Upload-Portal:

🔍 XRechnung / ZUGFeRD Visualizer

Laden Sie eine XML-Rechnung oder ein ZUGFeRD-PDF hoch – der Inhalt wird übersichtlich als HTML-Seite dargestellt. Praktisch, wenn Ihr Buchhalter oder Auftraggeber eine maschinenlesbare Rechnung schickt, die Sie zunächst prüfen möchten.

↗ Zum Visualizer

Unterstützt: XRechnung (XML) und ZUGFeRD-PDFs mit eingebetteter XML (Factur-X). Die hochgeladenen Dateien werden ausschließlich zur Darstellung verarbeitet und nicht dauerhaft gespeichert.

10. Erweiterungswünsche & Kontakt

💬 Feature-Wünsche willkommen

Sie vermissen eine Funktion oder haben einen Verbesserungsvorschlag? Melden Sie sich gerne – wir freuen uns über Feedback und entwickeln den Editor kontinuierlich weiter.

apikey@about-quality.de