sevDesk Bridge
WordPress-Plugin: überträgt bezahlte FluentCart-Bestellungen automatisch als Rechnungen nach sevDesk — mit Storno (Gutschrift), Wiederübertragung und EÜR-konformer Buchung für Kleinunternehmer (§19).
by netztaucher | digital · github.com/netztaucher/sevdesk-bridge · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/netztaucher/sevdesk-bridge/archive/refs/heads/main.zipWordPress-Plugin, das FluentCart-Bestellungen automatisch als Rechnungen in sevDesk überträgt — inklusive Storno (Gutschrift), Wiederübertragung und EÜR-konformer Zahlungsbuchung für Kleinunternehmer (§19 UStG).
Ursprünglich für eine Massage-/Therapiepraxis entwickelt (Vor-Ort-Zahlung, Terminbuchung über FluentBooking), aber generisch für jeden FluentCart-Shop mit sevDesk nutzbar.
Funktionsumfang
| Vorgang | Verhalten |
|---|---|
| Push | Bezahlte Bestellung → sevDesk-Rechnung (Status bezahlt), Zahlung gebucht mit echtem Zahldatum (EÜR-Zufluss) |
| Auto-Push | Hook auf payment_status_changed_to_paid → automatische Übertragung via Action Scheduler |
| Storno | FluentCart-Refund → sevDesk-Gutschrift, festgeschrieben + Auszahlung gebucht (EÜR-Abfluss) |
| Wiederübertragung | „Storno des Stornos" → neue Rechnung (GoBD-Kette), altes RE+GU bleibt archiviert |
| Teil-Erstattung | Halb-manuell: Plugin loggt Hinweis, Teilgutschrift wird in sevDesk-UI angelegt (ADR-0007) |
| Backfill | WP-CLI wp sevdesk push + Admin-Bulk-Button für historische Bestellungen |
| Metadaten | Rechnung enthält Termin (Datum/Uhrzeit aus FluentBooking), Bestellnr., Zahlungsart |
Bedienung pro Bestellzeile über einen Button in der FluentCart-Orders-Tabelle (4 Zustände, Bestätigungs-Popover).
Voraussetzungen
- WordPress + FluentCart (nutzt dessen Models + gebündelten Action Scheduler)
- PHP ≥ 7.4
- Optional: FluentBooking (für Termin-Metadaten)
- sevDesk-Account mit API-Token (Kleinunternehmer §19 —
taxRule 11)
Installation
- Ordner
sevdesk-bridge/nachwp-content/plugins/kopieren - Konstanten in
wp-config.phpsetzen (siehe unten) - Plugin aktivieren
Konfiguration (wp-config.php)
define( 'SEVDESK_API_TOKEN', 'dein-sevdesk-api-token' ); // Pflicht
define( 'SEVDESK_CHECK_ACCOUNT_ID', 12345 ); // Pflicht — eigene sevDesk Bankkonto-ID
define( 'SEVDESK_DRY_RUN', false ); // true = simulieren, keine Schreib-Calls
define( 'SEVDESK_AUTO_PUSH', false ); // Master-Switch Auto-Push (default aus)
Secrets gehören bewusst in wp-config.php (nicht in die DB) — siehe ADR-0002.
Zusätzlicher Runtime-Schalter unter Einstellungen → sevDesk Bridge (Option sevdesk_auto_push_enabled). Auto-Push greift nur, wenn Konstante UND Option an sind.
Bedienung
Button (FluentCart → Orders)
| Zustand | Button | Aktion |
|---|---|---|
| nicht übertragen | → sevDesk (blau) |
Rechnung anlegen |
| übertragen | ✓ RE-xxxx (grün) |
Stornieren (Gutschrift) |
| storniert | ↻ Neu übertragen (amber) |
neue Rechnung erzeugen |
Jede Aktion mit Bestätigungs-Popover (an document.body, immun gegen Tabellen-Re-Render — ADR-0003).
WP-CLI (Backfill)
wp sevdesk push --from=2026-01-01 --to=2026-06-30 --status=paid --limit=100 [--dry-run] [--include-pushed]
REST
POST /wp-json/sevdesk-bridge/v1/orders/{id}/push
POST /wp-json/sevdesk-bridge/v1/orders/{id}/cancel
POST /wp-json/sevdesk-bridge/v1/orders/{id}/repush
GET /wp-json/sevdesk-bridge/v1/status?ids=1,2,3
Alle nur mit manage_options.
Architektur (Kurzform)
FluentCart Order ──(Button/Hook/CLI)──► Pusher ──► Client ──► sevDesk API
│
├─ Logger → FluentCart Activity-Stream
├─ OrderMeta → Idempotenz + History
└─ Scheduler → Action Scheduler (async/retry)
Details: docs/architecture.md. Entscheidungen: docs/adr/. Endkunden-Anleitung: docs/benutzerhandbuch.md.
sevDesk-Buchungsfluss
Push: POST /Invoice/Factory/saveInvoice (Status 100)
→ PUT /Invoice/{id}/sendBy (Status 200, festgeschrieben)
→ PUT /Invoice/{id}/bookAmount (Status 1000 bezahlt, EÜR-Zufluss)
Storno: POST /Invoice/{id}/cancelInvoice → Gutschrift (CreditNote)
→ PUT /CreditNote/{id}/sendBy
→ PUT /CreditNote/{id}/bookAmount (EÜR-Abfluss)
Kleinunternehmer §19: taxRule 11 / taxType 'ss', smallSettlement 1, 0 % (ADR-0005).
Bekannte Grenzen
- Teil-Erstattungen laufen halb-manuell — die sevDesk-API blockiert programmatische Teilgutschriften für §19-Rechnungskorrekturen (ADR-0007).
- Nur EUR — andere Währungen werden übersprungen + geloggt.
- Festgeschriebene Belege sind GoBD-immutabel und nicht löschbar; Korrekturen laufen über Gutschrift/Neu-Übertragung (ADR-0008).
- DATEV-Export per API benötigt
accountingYearBegin(nur über sevDesk-UI setzbar).
Über
Entwickelt von netztaucher | digital — WordPress-Projekte und individuelle Plugin-Entwicklung.
Du brauchst eine maßgeschneiderte WordPress-Lösung oder ein Plugin wie dieses für deinen Shop, dein CRM oder deine Buchhaltung? → netztaucher.com/wordpress
Lizenz
GPL-2.0 (wie WordPress).
Releases
1 release.
These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.