Hinweis: Dieser Artikel beschreibt den Stand der Diskussion und gängige Umsetzungsansätze aus technischer Sicht. Er ist keine Rechtsberatung und ersetzt nicht die Prüfung Ihres konkreten Falls durch eine Fachanwältin oder einen Fachanwalt für IT- bzw. Vertragsrecht.
Worum geht es?
Seit Juli 2022 müssen Online-Anbieter für laufende Verbraucherverträge einen Kündigungsbutton bereitstellen (§ 312k BGB) — sichtbar, beschriftet mit „Verträge hier kündigen" und ohne Login-Hürde erreichbar. Auf europäischer Ebene wird seit längerem ein Widerrufsbutton diskutiert: ein vergleichbar einfach erreichbarer Klick-Mechanismus, mit dem Verbraucher ihr 14-tägiges Widerrufsrecht bei Fernabsatzverträgen ausüben können — ohne Brief, Fax oder Online-Formular eines Drittanbieters.
Hintergrund ist die Modernisierungsrichtlinie (EU 2019/2161) und nachfolgende Diskussionen um eine einheitliche, niedrigschwellige Möglichkeit, Vertragsrechte digital wahrzunehmen. Unabhängig davon, wann eine konkrete Pflicht für Ihren Shop greift: ein gut auffindbarer, einfach bedienbarer Widerrufsmechanismus ist gute UX und reduziert Ihre Supportlast.
Anforderungen an den Button (analog zum Kündigungsbutton)
Falls die endgültige Regelung das Schema des Kündigungsbuttons übernimmt — und alle bisher veröffentlichten Entwürfe deuten in diese Richtung —, dürften die folgenden Punkte zentral sein:
- Eindeutige Beschriftung: z. B. „Vertrag/Kauf widerrufen". Keine versteckte oder werbliche Sprache.
- Unmittelbare Erreichbarkeit: der Button muss ohne Login und ohne Umweg zugänglich sein — typischerweise im Footer und in der Bestellbestätigungsmail.
- Bestätigungsseite mit Eingabefeldern: Name, E-Mail, Bestellnummer, Datum des Kaufs, Begründung optional.
- Bestätigungsbutton: klar als Auslöseaktion erkennbar — etwa „Widerruf jetzt absenden".
- Sofortige Empfangsbestätigung: der Verbraucher muss elektronisch eine Bestätigung des Eingangs erhalten (Datum/Zeit), die als Beweis dienen kann.
- Speicherbarkeit: Bestätigung als PDF herunterladbar oder per Mail zugesandt.
Umsetzung in Shopware
Shopware bringt das Widerrufsformular nach § 355 BGB schon mit (PDF-Anlage zur Widerrufsbelehrung), aber die Umsetzung als aktiver Klick-Workflow fehlt im Standard. Die saubere Lösung ist ein eigenes Plugin oder eine eigene Storefront-Route mit folgenden Bausteinen:
-
Footer-Link „Widerruf" — direkt neben Impressum/AGB/Datenschutz, ohne Login.
Im Theme über das Footer-Twig oder per Plugin-Erweiterung in
storefront.layouts. -
Eigene Storefront-Route (z. B.
/widerruf), die ein Symfony-Form ausliefert: Bestellnummer, Name, E-Mail, Bestelldatum, Liste der zu widerrufenden Artikel (per AJAX nachladen, sobald Bestellnummer + Mail validiert sind). - Server-seitige Validierung: Plausibilitätscheck gegen die Order-Tabelle, Token-basiert vor Spam schützen, Rate-Limit pro IP/E-Mail.
- Eingangs-Bestätigung: parallel an Verbraucher (Mail + PDF mit Zeitstempel) und an Ihren Kundenservice (Ticket im Shop oder Mail mit allen relevanten Bestelldaten).
-
Statusübergang im Bestell-Workflow: eigener State-Machine-Übergang
„
order.state.cancelled" oder „refunded" via Shopware Flow Builder, inklusive automatischer Aktionen (Lager zurückbuchen, Rechnung stornieren, Refund triggern).
Worauf Sie technisch achten sollten
1. Beweissicherheit: Der Eingangszeitpunkt des Widerrufs muss revisionssicher
gespeichert werden. Eine eigene Tabelle revocation_log mit Hash-verkettet
signierten Einträgen ist ideal — IP, User-Agent, ISO-Timestamp und Hash des vorherigen Eintrags.
2. Datenschutz: Sie verarbeiten personenbezogene Daten zu einem klaren Zweck (Vertragsabwicklung, Art. 6 Abs. 1 lit. b DSGVO). Eingaben minimieren, keine Tracking-Cookies auf der Widerrufsseite, Aufbewahrungsfristen dokumentieren.
3. Spam-Schutz: der Button muss ohne Login zugänglich sein — also direkt im offenen Web. Ohne Captcha oder gleichwertigen Schutz haben Sie binnen Tagen Müll-Widerrufe in der Inbox. Cloudflare Turnstile, Honeypot + Zeit-Trap, oder ein einfaches Token-Mail-Verfahren (Verifikationsmail bestätigen) sind die saubersten Optionen.
4. Multi-Channel: Wenn dieselbe Bestellung über Marktplätze wie Amazon oder eBay zustande kam, gilt dort meist deren eigenes Widerrufssystem. Im Shopware-Backend sollten Sie klar erkennen können, woher die Bestellung kam, bevor Sie ein Widerruf-Mail-Workflow auslösen.
5. Refund automatisieren — aber mit Augenmaß: Eine Auto-Refund-Pipeline ist komfortabel, aber prüfen Sie pro Zahlungsart, ob ein automatischer Refund tatsächlich rechtssicher ist (Rückzahlungsfrist 14 Tage ab Eingang des Widerrufs, gleicher Zahlweg wie der Eingang).
Wann lohnt sich der Aufwand schon jetzt?
Auch ohne explizite gesetzliche Pflicht ist ein Widerrufsbutton bei mittleren bis großen Shops ein klares UX- und Compliance-Plus:
- weniger Supportaufwand, weil Standardfälle automatisiert ablaufen,
- klarere Datenlage für die Buchhaltung (jeder Widerruf ist sauber datiert und protokolliert),
- Wettbewerbsvorteil: Verbraucher empfinden das als modern und transparent,
- Vorbereitung auf die kommende Pflicht — wer früh implementiert, muss später nichts kurzfristig nachrüsten.
Was Sie konkret tun können
- Mit Ihrer Anwältin / Ihrem Anwalt prüfen, ob für Ihre Branche bereits eine Pflicht besteht.
- Den Footer-Link parallel zum Kündigungsbutton einplanen (wenn nicht bereits vorhanden).
- Workflow definieren: Wer im Team bearbeitet eingehende Widerrufe? Wie schnell? Wer macht Refund?
- Plugin/Custom-Route in einem Sprint umsetzen lassen — das ist überschaubarer Aufwand.
Widerrufsbutton in Ihrem Shopware-Shop einbauen?
Ich setze die Storefront-Route, das Backend-Workflow-Setup und das Mailing für Sie um — inklusive Anbindung an Flow Builder und Refund-Pipelines.
Anfrage senden