Jeder Shopify-Shop erzeugt denselben wiederkehrenden Task: bezahlte Bestellung → Rechnung in der Buchhaltung. Solange man das manuell macht, ist es der langsamste und fehleranfälligste Schritt im ganzen Fulfillment. Dabei ist es der am besten automatisierbare – weil Shopify für jedes relevante Ereignis einen Webhook liefert.
Die Ereignisse, die zählen
Für saubere Buchhaltung reichen ein paar Shopify-Webhooks:
-
orders/paid→ Rechnung erstellen -
refunds/create→ Gutschrift erzeugen -
orders/cancelled→ Storno -
orders/fulfilled→ Lieferdatum aktualisieren
Wichtig ist eine Idempotenz-/Doppelerkennung: Shopify kann Webhooks mehrfach zustellen, und ohne Deduplizierung landen Rechnungen doppelt in der Buchhaltung.
Der schwierige Teil ist die Steuer
Das eigentliche Problem ist nicht der HTTP-Call, sondern die Steuerlogik. Ein deutscher Shop mit EU-Verkäufen muss unterscheiden:
- Inland: 19 % / 7 %
- EU B2B: Reverse-Charge (0 %, mit gültiger USt-ID)
- EU B2C: One-Stop-Shop (OSS), 7–27 % je nach Zielland
- Drittland: 0 %
- Kleinunternehmer: §19 UStG (0 %)
Die Zielland-Erkennung und das Mapping auf den richtigen Steuersatz in sevdesk bzw. Lexware Office ist der Teil, der die meiste Arbeit macht – und wo manuelle Prozesse regelmäßig Fehler produzieren.
Build vs. Buy
Man kann das selbst bauen (Shopify-App mit Webhook-Endpoints, Token-Handling, Retry-Logik, Steuer-Mapping, E-Rechnung XRechnung/ZUGFeRD). Realistisch ist das mehr Aufwand als gedacht, vor allem wegen der Randfälle: Teil-Rückerstattungen, gemischte Steuersätze pro Bestellung, gültige vs. ungültige USt-IDs.
Wer es nicht selbst pflegen will, nimmt eine fertige Lösung wie zrapp, die genau diesen Flow abbildet – Webhooks, Steuer-Mapping, Doppelerkennung, E-Rechnung – und an sevdesk oder Lexware Office übergibt.
Falls du es selbst baust: Achte früh auf Idempotenz und ein sauberes Log jeder Übertragung. Das spart dir später viel Debugging.
Ursprünglich veröffentlicht auf zrapp.de.
Top comments (0)