Ab dem 19. Juni 2026 wird der Widerrufsbutton für alle B2C-Fernabsatzverträge mit gesetzlichem Widerrufsrecht Pflicht. Grundlage ist § 356a BGB, umgesetzt durch die EU-Richtlinie 2023/2673. Wer die Frist verpasst, riskiert Abmahnungen, Bußgelder von bis zu 50.000 Euro und eine Verlängerung der Widerrufsfrist auf bis zu 12 Monate und 14 Tage.
Shopware hat die Funktion mit Version 6.7.9.0 eingeführt und auf 6.6.10.14 zurückportiert. Das Problem: Weder die offizielle Dokumentation noch die meisten Anleitungen erklären den Einrichtungsprozess für 6.6 vollständig. In diesem Beitrag zeigen wir den kompletten Weg: ohne Plugin, ohne Custom Code, ausschließlich mit Bordmitteln. Den rechtlichen Rahmen und den Überblick über die anderen Shop-Systeme (WooCommerce, Shopify, JTL) findest du im Beitrag Widerrufsbutton ab 19. Juni 2026: Was § 356a BGB bedeutet.
Was der Gesetzgeber verlangt
Der Widerrufsprozess ist nach § 356a BGB zweistufig aufgebaut:
- Stufe 1, Widerrufsformular: Der Verbraucher erreicht über einen klar beschrifteten Button („Vertrag widerrufen") das Widerrufsformular. Dort gibt er die Pflichtdaten ein: Name, Vertragsidentifikation (z.B. Bestellnummer) und ein Kommunikationsmittel für die Eingangsbestätigung (in der Regel E-Mail).
- Stufe 2, Bestätigungsseite: Nach dem Absenden des Formulars wird der Verbraucher auf eine Bestätigungsseite mit einer separaten Schaltfläche „Widerruf bestätigen" geleitet. Erst dieser zweite Klick löst den Widerruf rechtsverbindlich aus.
Zusätzlich zur Zweistufigkeit muss der Verbraucher unverzüglich eine Eingangsbestätigung per E-Mail erhalten. Das ist eine eigene Pflicht und nicht mit Stufe 2 zu verwechseln.
Der Button selbst muss gut sichtbar im Footer platziert sein, ohne Login-Pflicht, auch für Gastbesteller erreichbar. Der Widerrufsgrund darf kein Pflichtfeld sein. Verbraucher können ohne Angabe von Gründen widerrufen.
Wichtig: Auch die Widerrufsbelehrung muss zum Stichtag angepasst werden und einen Hinweis auf die elektronische Widerrufsfunktion und deren Fundort enthalten. Das ist Sache der Rechtstextquelle (IT-Recht-Kanzlei, Händlerbund, Trusted Shops) und nicht über die Shopware-Konfiguration lösbar.
Voraussetzung: Shopware 6.6.10.14 oder neuer
Der Widerrufsbutton steht erst ab Version 6.6.10.14 zur Verfügung. Wer eine ältere 6.6er-Version betreibt, muss zuerst aktualisieren. Shops auf Shopware 6.5 oder älter müssen auf 6.6 oder 6.7 updaten. Einen Backport für ältere Major-Versionen gibt es nicht.
Die aktuelle Version lässt sich im Admin unter Einstellungen > System > Shopware-Version prüfen.
Schritt 1: Erlebniswelt-Layout anlegen
Shopware hätte beim Update auf 6.6.10.14+ automatisch ein Widerrufsantrag-Layout anlegen sollen. In der Praxis passiert das nicht immer. Falls kein passendes Layout vorhanden ist:
- Im Admin zu Inhalte > Erlebniswelten navigieren.
- Auf „Neues Layout anlegen" klicken.
- Als Typ „Shopseite" wählen.
- Einen aussagekräftigen Namen vergeben, z.B. „Widerrufsantrag".
Schritt 2: Das Widerrufs-Formular einfügen
Hier passiert der entscheidende Schritt, der in den meisten Anleitungen fehlt oder falsch beschrieben wird.
- Im Layout-Editor auf das + klicken, um einen neuen Block hinzuzufügen.
- In der Block-Auswahl links auf „Formular" klicken.
- Das Formular-Element per Drag & Drop in den Inhaltsbereich ziehen.
- Auf das eingefügte Element klicken, rechts öffnen sich die Element-Einstellungen.
In den Element-Einstellungen gibt es drei Felder:
- Formulartyp: Hier steht die Auswahl zwischen „Kontakt", „Newsletter" und „Widerruf". Den Typ „Widerruf" auswählen. Das ist die native Shopware-Lösung. Sie bringt die korrekten Formularfelder, die zweistufige Bestätigung, den Mailversand und die Eingangsbestätigung automatisch mit.
- Titel: Z.B. „Vertrag widerrufen".
- Bestätigungstext: Der Text, den der Kunde nach der finalen Bestätigung sieht. Z.B. „Ihr Widerruf wurde erfolgreich übermittelt. Sie erhalten in Kürze eine Bestätigung per E-Mail."
Layout speichern.
Schritt 3: Layout in den Stammdaten zuweisen
- Im Admin zu Einstellungen > Shop > Stammdaten navigieren.
- Zum Abschnitt „Shopseiten" scrollen.
- Bei „Shopseiten-Layout für Widerrufsantrag Seite" das eben erstellte Layout auswählen. Nicht die Widerrufsbelehrung, das sind zwei verschiedene Dinge. Die Widerrufsbelehrung ist der Rechtstext, die Widerrufsantrag-Seite ist das Formular.
- Speichern.
Schritt 4: Button im Footer aktivieren
- Auf derselben Seite (Stammdaten) zum Abschnitt „Recht und Datenschutz" scrollen.
- Den Toggle „Button ‚Vertrag widerrufen' im Footer anzeigen" aktivieren.
- Speichern.
Schritt 5: Cache leeren und testen
- Im Admin unter Einstellungen > System > Caches & Indizes den Cache leeren.
- Im Frontend die Seite aufrufen.
- Im Footer auf „Vertrag widerrufen" klicken.
- Es öffnet sich ein Modal mit dem Widerrufsformular.
- Testdaten eingeben und absenden.
- Auf der Bestätigungsseite den Button „Widerruf bestätigen" klicken.
- Prüfen, ob die Eingangsbestätigung beim Kunden und die Benachrichtigungsmail beim Shopbetreiber ankommen.
Häufige Fehler und Fallstricke
Button erscheint nicht im Footer
Bei Drittanbieter-Themes (z.B. Zenit GRAVITY Pro, ThemeWare) kann es vorkommen, dass das Theme den Footer überschreibt und den nativen Button nicht rendert. In dem Fall prüfen, ob eine aktuelle Theme-Version installiert ist, die den Widerrufsbutton explizit unterstützt. ThemeWare benötigt mindestens Version 3.7.4, bei GRAVITY Pro muss die aktuellste 6.6-kompatible Version installiert sein. Nach dem Theme-Update: Theme neu kompilieren unter Inhalte > Themes.
Formular wird angezeigt, aber keine Mail versendet
Mögliche Ursachen:
- E-Mail-Template nicht aktiv: Unter Einstellungen > E-Mail-Templates prüfen, ob das Template für das Widerrufsformular aktiviert ist.
- Flow Builder: Unter Einstellungen > Flow Builder prüfen, ob ein Flow für das Widerrufs-Event existiert und aktiv ist.
- SMTP-Konfiguration: Unter Einstellungen > System > Mailer prüfen, ob der Mailversand grundsätzlich funktioniert. Ein einfacher Test: eine Testbestellung aufgeben und prüfen, ob die Bestellbestätigung ankommt.
Nur Rechtstext statt Formular im Modal
Das passiert, wenn bei „Shopseiten-Layout für Widerrufsantrag Seite" versehentlich das Layout der Widerrufsbelehrung zugewiesen wurde. Die Widerrufsbelehrung ist ein reiner Rechtstext. Das Widerrufsantrag-Layout muss das CMS-Formular-Element mit Typ „Widerruf" enthalten.
Custom-HTML-Ansatz funktioniert nicht
Shopware filtert <script>-Tags aus CMS-Text-Blöcken und HTML-Blöcken. Ein Custom-Formular mit JavaScript ist über das CMS daher nicht zuverlässig umsetzbar. Der native Formulartyp „Widerruf" ist die einzig saubere Lösung ohne Plugin.
Was nicht funktioniert
- Kontaktformular als Widerrufsformular missbrauchen: Das bestehende Kontaktformular erfüllt nicht die gesetzlichen Anforderungen. Es fehlen die spezifischen Felder und der zweistufige Prozess.
- Mailto-Links: Ein
mailto:-Link ist nicht rechtskonform, weil er vom E-Mail-Client des Kunden abhängt. Der Widerruf muss im Shop abschließbar sein. - Custom JavaScript im CMS: Shopwares Content-Sanitizer entfernt Script-Tags. Selbst über Umwege (Theme-Custom-Code-Felder, Tracking-Felder) ist die Lösung fragil und nicht wartbar.
- Plugins für Shopware 6.7 auf 6.6 installieren: Nicht alle Widerrufs-Plugins aus dem Store sind abwärtskompatibel. Die Versionskompatibilität muss vor der Installation geprüft werden.
Was dieser Beitrag nicht abdeckt
Die technische Einrichtung allein reicht für die Rechtskonformität nicht aus. Drei Punkte musst du zusätzlich klären:
- Widerrufsbelehrung anpassen: Ab 19.06.2026 muss die Belehrung einen Hinweis auf die elektronische Widerrufsfunktion und deren Fundort enthalten. Das liefert deine Rechtstextquelle.
- Fristprüfung: Shopware prüft nicht, ob ein eingehender Widerruf innerhalb der 14-Tage-Frist liegt. Das muss manuell oder per Eigenlogik passieren. Eingehende Widerrufe nach Ablauf der Frist sind nicht wirksam, sollten aber nachvollziehbar dokumentiert werden.
- Datenschutz: Die Verarbeitung der Formulardaten gehört in die Datenschutzerklärung. Rechtsgrundlage ist in der Regel Art. 6 Abs. 1 lit. c DSGVO (rechtliche Verpflichtung).
Zusammenfassung
Der Widerrufsbutton in Shopware 6.6 lässt sich vollständig mit Bordmitteln umsetzen, ohne Plugin und ohne Custom Code. Der Schlüssel ist das native CMS-Formular-Element mit dem Formulartyp „Widerruf", das Shopware mit dem Backport auf 6.6.10.14 mitgeliefert hat. Die meisten Probleme bei der Einrichtung entstehen durch die Verwechslung von Widerrufsbelehrung und Widerrufsantrag-Seite oder durch Versuche, das Problem mit Custom HTML zu lösen.
Fünf Schritte: Erlebniswelt-Layout mit Formular-Element (Typ: Widerruf) erstellen, in den Stammdaten als Widerrufsantrag-Seite zuweisen, Footer-Button aktivieren, Cache leeren, testen. Den rechtlichen Rahmen (Belehrung, Fristprüfung, Datenschutz) musst du separat absichern.
Wer den Button nicht selbst einrichten will oder einen Custom- oder Headless-Aufbau fährt, bei dem die Standard-Storefront nicht greift: melde dich. Wir bauen den Button samt Bestätigungsseite ein und aktualisieren Widerrufsbelehrung und Datenschutzerklärung passend dazu, für Händler aus Hockenheim, Mannheim, Heidelberg und dem Rhein-Neckar-Raum oft vor Ort, sonst remote. Mehr zu unseren E-Commerce-Projekten.