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.
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
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.
3. Server-Panel: API-Key & PDF-Erzeugung
Das 🖨️-Symbol unten rechts im Editor öffnet das Server-Panel. Dort eintragen:
| Feld | Inhalt |
|---|---|
| Server-Basis-URL | https://xrechnungapi.org |
| API-Key | Ihr persönlicher Key oder demo1234 zum Testen |
| HTML-Template | Ihre 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}")
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.
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
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.
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ät | Bedingung | Ergebnis |
|---|---|---|
| 1 | Freikontingent diesen Monat noch verfügbar (≤ 10) | ✓ Erlaubt, Monatszähler +1 |
| 2 | Credit = unlimited | ✓ Immer erlaubt |
| 3 | Credit-Guthaben > 0 | ✓ Erlaubt, Credit −1 |
| 4 | Kein 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:
- Verbleibendes Freikontingent diesen Monat (z.B. „7 von 10")
- Zusätzliches Credit-Guthaben (z.B. „47 Credits" oder „unlimited")
- Gesamtverbrauch diesen Monat
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 # }
| Feld | Bedeutung |
|---|---|
free_remaining | Noch verfügbare kostenlose Rechnungen diesen Monat |
credit | Zusätzliches Guthaben (Zahl oder "unlimited") |
month_used | Gesamtverbrauch 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 VisualizerUnterstü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.