Shop-Bestellung wird automatisch E-Rechnung
Abgeschlossene Bestellung rein, geprüfte XRechnung oder ZUGFeRD raus — ohne Handgriff im Backend.
Der Shop kennt die Bestellung bereits vollständig: Positionen, Steuersätze, Versandkosten, Rechnungsadresse. Was ihm fehlt, ist das Format, das ein Geschäftskunde oder eine Behörde annehmen muss. Ein Auslöser am Bestellstatus, ein Aufruf, und die Rechnung liegt als XRechnung oder als ZUGFeRD-PDF vor — für WooCommerce, Shopware, JTL und Magento über die jeweilige Integrationsseite, für alles andere über einen Workflow oder direkt über die REST-Schnittstelle.
Was reinkommt
Bestellung mit Positionen, Mengen, Einzelpreisen und Steuersätzen
Versand- und Rabattzeilen, die als eigene Position in die Rechnung gehören
Rechnungsadresse und, bei Geschäftskunden, die USt-IdNr.
Bestellstatus als Auslöser, zum Beispiel „abgeschlossen“
Bei öffentlichen Auftraggebern: die Leitweg-ID am Kundendatensatz
Was das löst
Der Auslöser sitzt im Shop, nicht im Kalender
Die Rechnung entsteht, wenn die Bestellung abgeschlossen ist — nicht in einem nächtlichen Lauf, dessen Ausfall erst am Monatsende auffällt. Bei WooCommerce, Shopware, JTL und Magento hängt der Auslöser am Bestellstatus.
Ein Datensatz, zwei Formate
Derselbe Bestelldatensatz ergibt eine XRechnung für den Geschäftskunden und ein ZUGFeRD-PDF für alle anderen. Du pflegst nicht zwei Rechnungswege nebeneinander.
Geprüft, bevor sie den Shop verlässt
Vor der Erzeugung prüft der Validate-Endpoint die Rechnungsdaten nach den Regeln des Zielformats — bei XRechnung den XRechnung-Regeln (KoSIT). Fehlt die Steuerkategorie oder der Ansprechpartner, nennt die Antwort die verletzte Regel samt Feld — die Bestellung bleibt unberührt.
Gutschrift und Storno gehören dazu
Eine Retoure ist keine Rechnung mit Minus davor. Der Belegtyp credit_note bildet sie ab und trägt die ursprüngliche Rechnungsnummer als Bezug, damit der Empfänger nicht doppelt bucht.
Ein echtes Beispiel
Die Positionszeile aus dem Rezept „ZUGFeRD-PDF erzeugen“, so wie sie aus einer Bestellung entsteht.
{ "invoice": { "items": [ { "position": 1, "description": "Beratungsleistung", "quantity": 10, "unit": "HUR", "unitPrice": 150, "taxRate": 19, "netAmount": 1500, "taxAmount": 285, "grossAmount": 1785 } ], "taxSummary": [ { "taxRate": 19, "netAmount": 1500, "taxAmount": 285 } ], "subtotal": 1500, "total": 1785 }}POST /api/v1/invoice/DE/zugferd/generate
10 × 150,00 € ergeben 1.500,00 € netto, 19 % ergeben 285,00 € Steuer, Gesamtbetrag 1.785,00 €. Die Antwort ist ein Base64-kodiertes PDF/A-3 mit eingebettetem EN-16931-XML: der Kunde sieht ein PDF, sein System liest das XML.
Das vollständige RezeptDie beteiligten Endpoints
- Invoice CreatorLive
POST /api/v1/invoice/{countryCode}/{format}/generate
- ValidatorLive
POST /api/v1/invoice/{countryCode}/validate
Gegenüber der Alternative
Die Alternative ist ein Shop-Plugin, das die Rechnung selbst baut. Dann hängt die Konformität an dessen Update-Takt und endet an der Shop-Grenze — was das praktisch heißt, zeigt der Plugin-Vergleich.
Zum VergleichSo läuft es
- 1
Auslöser setzen: Bestellstatus „abgeschlossen“ im Shop oder im Workflow.
- 2
POST /api/v1/invoice/DE/validate mit den Bestelldaten — weiter geht es nur bei einem sauberen Ergebnis.
- 3
POST /api/v1/invoice/DE/xrechnung/generate oder .../zugferd/generate, Datei an die Bestellung hängen und versenden.
Was es bei diesem Umfang kostet
Rund 500 Rechnungen im Monat liegen im Tarif Starter bei 23 € pro Monat.
Alle Preise netto, zzgl. USt. · 20 % Rabatt bei Jahreszahlung · Free-Tier ohne Kreditkarte
Alle TarifeGrenzen
- Die Shopify-App ist beim Shopify-App-Store-Review eingereicht und noch nicht öffentlich installierbar.
- Peppol-Versand ist noch nicht verfügbar (geplant 2027).
- Stammdatenpflege — Leitweg-ID, Steuerkategorien, USt-IdNr. — bleibt deine Aufgabe.
Selbst bauen oder bauen lassen
Beide Wege führen zur gleichen E-Rechnung. Der Unterschied ist, wer die Anbindung schreibt.
Selbst bauen
Du rufst die API selbst auf. 500 Rechnungen im Monat liegen im Tarif Starter bei 23 € pro Monat bei monatlicher Zahlung, oder 18 € pro Monat bei Jahreszahlung.
Alle Preise netto, zzgl. USt. · 20 % Rabatt bei Jahreszahlung · Free-Tier ohne Kreditkarte
Zum QuickstartBauen lassen
Wir binden dein Bestandssystem an: 6.000–15.000 € zzgl. USt. zum Festpreis, 4–6 Wochen bis zum Go-Live.
Passt, wenn der Shop gewachsen ist und niemand im Haus an den Bestellstatus heran will — Trigger, Mapping und Fehlerbehandlung kommen dann von uns.
Alle Beträge netto, zzgl. USt.
Zum Integrations-ServiceHäufige Fragen
Brauche ich für jeden Shop ein eigenes Plugin?
Nein. Für WooCommerce, Shopware, JTL und Magento gibt es je eine Integrationsseite mit dem passenden Weg; darüber hinaus reicht ein Workflow oder ein Aufruf aus dem Shop-Code. Die API ist in allen Fällen dieselbe.
Zählt jede Bestellung gegen mein Kontingent?
Jede erzeugte Rechnung ist ein API-Call. Eine Prüfung wird genauso abgerechnet: eine Einheit je geprüftem Format, verbucht auf dasselbe Kontingent. Sie braucht einen gültigen Schlüssel, und bei erschöpftem Kontingent antwortet die API mit 429.
Was passiert bei einer Retoure?
Du erzeugst eine Gutschrift mit dem Belegtyp credit_note und dem Bezug auf die ursprüngliche Rechnungsnummer. Beträge bleiben positiv — die Richtung bestimmt der Belegtyp, nicht das Vorzeichen.