GARAN-Label und Gewährleistungshinweis in Shopware 6.6 und 6.7 umsetzen

• von Tobias Schäfer • 9 min read

Seit Sonntag, dem 27. September 2026, braucht jeder Onlineshop, der Waren an Verbraucher verkauft, einen neuen Pflichthinweis: die EU-weit einheitliche Grafik zur gesetzlichen Gewährleistung. Dazu kommt für manche Produkte das GARAN-Label für Herstellergarantien über zwei Jahre.

Shopware hat beides in 6.7.14.0 eingebaut und nach 6.6 zurückportiert. Das ist die gute Nachricht. Die weniger gute: Die Standardumsetzung deckt nicht jede Rechtsauffassung ab, individuelle Mail-Templates bekommen nichts davon mit, und die ersten Versionen hatten Fehler, die erst in späteren Patches behoben wurden.

Hier steht, was die Regeln tatsächlich verlangen, was Shopware davon abdeckt und was du prüfen musst. Stand: 30. September 2026. Ich bin Entwickler, kein Anwalt. Die rechtliche Einordnung für deinen Shop sollte jemand vornehmen, der dafür haftet.

Zwei Grafiken, zwei verschiedene Pflichten

Die Durchführungsverordnung (EU) 2025/1960 legt zwei Grafiken fest. Sie werden gerne in einen Topf geworfen, haben aber unterschiedliche Auslöser.

Der harmonisierte Gewährleistungshinweis (Anhang I) erinnert daran, dass in der EU für jede Ware mindestens zwei Jahre gesetzliche Gewährleistung gelten. Den muss jeder B2C-Händler zeigen, unabhängig vom Sortiment. In Deutschland steht das jetzt in Art. 246a § 1 Abs. 1 Nr. 11 EGBGB: Die Information ist „in hervorgehobener Weise unter Verwendung der harmonisierten Mitteilung“ zu geben.

Das GARAN-Label (Anhang II) ist produktbezogen. Es kennzeichnet eine gewerbliche Haltbarkeitsgarantie des Herstellers, und zwar nur, wenn drei Bedingungen gleichzeitig erfüllt sind: ohne Zusatzkosten, für die gesamte Ware (nicht nur den Motor oder den Akku) und länger als zwei Jahre. Eine Garantie über genau zwei Jahre löst nichts aus. Deine eigene Händlergarantie auch nicht.

Wichtig für die Praxis ist der Nebensatz in Nr. 11a EGBGB: Die Pflicht greift, wenn der Hersteller die Garantie gewährt „und diese Informationen dem Unternehmer zur Verfügung stellt“. Die Leitlinien der Kommission werden noch deutlicher: Händler sollen solche Informationen nicht aktiv beim Hersteller suchen, etwa auf dessen Produktseiten. Du musst also nicht dein ganzes Sortiment durchrecherchieren. Du musst aber verarbeiten, was dein Lieferant dir liefert, und dafür brauchst du einen Weg, diese Daten in den Shop zu bekommen.

B2B-Shops, die klar als solche erkennbar sind, sind raus. Digitale Inhalte ebenfalls.

Was die Leitlinien für Onlineshops vorgeben

Die EU-Kommission hat im April 2026 praktische Leitlinien veröffentlicht, dazu die offiziellen Dateien in allen 24 Amtssprachen (PDF, PNG, JPG, SVG). Für die Online-Darstellung gilt im Kern:

  • Nur die farbige RGB-Version verwenden. Schwarz-Weiß ist dem stationären Handel vorbehalten.
  • Die Grafik bei Standard-Anzeigegröße lesbar halten. Keine Farben ändern, nichts beschneiden oder strecken, nichts hinzufügen.
  • Immer einen klickbaren Link auf dasselbe Ziel wie der QR-Code anbieten. Für Deutsch ist das europa.eu/youreurope/garantien.
  • Beide Grafiken gehören laut Leitlinien auch in die Bestätigungsmail.

Beim Gewährleistungshinweis nennt die Kommission als Beispiele einen Text wie „Ihre gesetzlichen Gewährleistungsrechte“ im Header, auf Kategorieseiten oder im Checkout, bei dessen erstem Klick oder Mouseover der vollständige Hinweis erscheint.

Beim GARAN-Label ist eine kompakte Vorschau erlaubt, das „nested label“. Es zeigt nur die Garantiedauer und muss beim ersten Klick, Mouseover oder Antippen das vollständige Label öffnen. Das vollständige Label hat drei Felder: Dauer in Jahren (ganze Zahlen oder halbe Jahre mit Komma, also 2,5 oder 4,5, nichts anderes), Marke des Herstellers und Modellkennung. Das Label gehört auf der Produktseite zum jeweiligen Produkt und soll laut Leitlinien direkt vor der Bestellung im Checkout noch einmal auftauchen.

Und hier wird es unangenehm. Die IT-Recht Kanzlei vertritt in ihrer FAQ vom 3. September 2026 die strengere Auffassung: Der Gewährleistungshinweis müsse online als Grafik direkt eingebunden sein, ohne Link, Mouseover oder Aufklapp-Element. Die Kommission schreibt in ihren eigenen Leitlinien, dass diese nur ihre vorläufige Sicht wiedergeben und verbindlich allein der EuGH auslegt. Bis ein Gericht entscheidet, gibt es also zwei vertretbare Positionen. Welche du wählst, beeinflusst direkt, ob dir die Shopware-Standardlösung reicht.

Welche Shopware-Version du brauchst

Die Funktion kam mit Shopware 6.7.14.0 (9. September 2026) und im 6.6-Zweig mit 6.6.10.24 (10. September 2026). Sie ist Teil des Cores, also auch in der Community Edition enthalten. Ein Plugin brauchst du dafür nicht.

Die ersten Versionen hatten Lücken. Die Korrekturen sind auf 6.6 schon draußen, auf 6.7 noch nicht:

Problem6.6 behoben in6.7 behoben in
Varianten erben „Label in der Storefront anzeigen“ nicht vom Hauptprodukt6.6.10.266.7.15.0 (noch nicht veröffentlicht)
GARAN-Label in der Bestellmail hochskaliert und abgeschnitten6.6.10.266.7.15.0 (noch nicht veröffentlicht)
Keine Obergrenze für die Garantiedauer, kein Hinweis, warum das Label nicht erscheint6.6.10.266.7.15.0 (noch nicht veröffentlicht)
Fehlerhafte Produktreferenz kann die Bestellhistorie im Kundenkonto kaputt machen6.6.10.276.7.15.0 (noch nicht veröffentlicht)

Die Releases 6.7.14.1 und 6.7.14.2 enthalten laut Release Notes keine GARAN-Fixes. Wenn du auf 6.7 bist und Varianten mit Garantie hast, musst du bis 6.7.15.0 den Schalter an jeder Variante einzeln setzen. Auf 6.6 spiel mindestens 6.6.10.27 ein.

Shops unter 6.6.10.24, also auch alle 6.5-Installationen, bekommen die Funktion nicht über den Core. Da bleibt ein Plugin oder die eigene Template-Erweiterung.

Schritt für Schritt: den Gewährleistungshinweis einrichten

Nach dem Update ist der Hinweis bereits aktiv. Die Systemkonfiguration core.cart.showLegalGuaranteeNotice steht standardmäßig auf true.

  1. In der Administration die Warenkorb-Einstellungen öffnen, Bereich „Bestellabschluss“. Dort steht der Schalter „Gewährleistungshinweis auf Bestellabschlussseite anzeigen“. Über die Verkaufskanal-Auswahl oben lässt er sich pro Kanal überschreiben, etwa für einen reinen B2B-Kanal.
  2. Im Checkout bis zur Bestellabschlussseite durchklicken. Shopware tauscht dort den AGB-Text gegen die neuen Snippets checkout.confirmTermsTextWithGuarantee bzw. checkout.confirmTermsTextModalWithGuarantee. Darin steckt ein Link, der ein Modal mit der Grafik in der Sprache der Storefront öffnet, dazu ein Link auf die passende Your-Europe-Seite. Für Sprachen außerhalb der EU fällt Shopware auf Englisch zurück.
  3. Prüfen, ob dein Theme den Block page_checkout_confirm_tos_control_label oder die alten Snippets checkout.confirmTermsText / checkout.confirmTermsTextModal überschreibt. Wenn ja, siehst du den Link nicht, und du musst die Platzhalter %legalGuaranteeNoticeModalTagOpen% und %legalGuaranteeNoticeModalTagClose% in deine Überschreibung übernehmen.
  4. Eine Testbestellung auslösen und die Bestellbestätigung ansehen (dazu unten mehr).

Das ist die Umsetzung, die der Linie der Kommission folgt: ein Link im Checkout, der Rest im Modal. Wenn du der strengeren Auffassung folgst und die Grafik direkt sichtbar haben willst, liefert Shopware das Werkzeug gleich mit. Der Twig-Filter sw_legal_guarantee_notice rendert die Grafik für eine Sprach-ID. In einem eigenen Theme sieht das etwa so aus:

{% sw_extends '@Storefront/storefront/page/checkout/confirm/index.html.twig' %}

{% block page_checkout_confirm_tos_control %}
    {{ parent() }}

    {% if config('core.cart.showLegalGuaranteeNotice') %}
        <div class="checkout-confirm-legal-guarantee-notice mt-3">
            {{ context.languageId|sw_legal_guarantee_notice }}
            <a href="{{ context.languageId|sw_legal_guarantee_notice_link }}"
               target="_blank" rel="noopener">
                Mehr zu deinen Gewährleistungsrechten
            </a>
        </div>
    {% endif %}
{% endblock %}

Der Block existiert in 6.6 und 6.7 gleich. Wie groß die Grafik dort wirkt, musst du im eigenen Layout testen, auch auf dem Handy. Die Leitlinien verlangen Lesbarkeit bei Standardgröße, und Verkleinern per CSS bis zur Unleserlichkeit wäre genau das, was sie verbieten.

Schritt für Schritt: das GARAN-Label pflegen

Das Label hängt am Produkt. In der Produktdetailseite der Administration gibt es eine neue Karte „Garantie (GARAN Label)“ mit zwei Feldern:

  • „Dauer der herstellerseitigen Garantie in Monaten“: 30, 36, 42 und so weiter, immer in 6er-Schritten. 24 oder weniger lehnt Shopware ab, seit 6.6.10.26 bzw. 6.7.15.0 auch alles über 600 Monate.
  • „Label in der Storefront anzeigen“: der eigentliche Schalter.

Shopware rechnet die Monate in Jahre um, 42 Monate werden auf dem Label zu „3,5“. Das passt zu den Leitlinien, die nur ganze und halbe Jahre erlauben.

Das Label erscheint nur, wenn alles zusammenkommt: Schalter an, gültige Dauer, ein zugeordneter Hersteller und eine Hersteller-Produktnummer. Den Herstellernamen setzt Shopware als „Marke“ ein, die Hersteller-Produktnummer als „Modellkennung“. Fehlt eins davon, bleibt das Label ohne Fehlermeldung weg. Erst ab 6.6.10.26 (und 6.7.15.0) zeigt die Administration ein Banner, welche Voraussetzung fehlt.

An dieser Stelle würde ich bei einem Kundenshop zuerst nachsehen. Ein Feld, das bisher kaum eine Rolle spielte, wird selten sauber gepflegt. Jetzt steht die Hersteller-Produktnummer als Modellkennung auf dem Label, direkt vor dem Kunden.

In der Storefront zeigt Shopware das Label an drei Stellen:

  • auf der Produktdetailseite im Buy-Widget als kompakte Vorschau, die per Klick das volle Label aufklappt (Block buy_widget_garan_label),
  • im Warenkorb und im Checkout an der jeweiligen Position,
  • in der Bestellbestätigung.

Die Produktliste zeigt es nicht. Die Leitlinien verlangen das auch nicht.

Bei vielen Produkten willst du die Felder nicht per Hand pflegen. Beide sind über die Admin API schreibbar als guaranteeMonths und guaranteeConfirmed, also per Import, Sync-API oder PIM-Anbindung. Beide Felder vererben sich auf Varianten, der Schalter wie gesagt erst ab 6.6.10.26 bzw. 6.7.15.0 zuverlässig. Die Massenbearbeitung in der Administration kennt die Felder noch nicht. Der Fix ist im Trunk gemergt, steckt aber noch in keinem Release.

Die Bestellbestätigung: der Teil, der oft vergessen wird

Shopware hängt Gewährleistungshinweis und GARAN-Label per Migration an die Mailvorlage order_confirmation_mail. Allerdings nur, wenn die Vorlage nie bearbeitet wurde. Das ist die übliche Shopware-Regel für Mail-Migrationen (updated_at IS NULL), und sie trifft fast jeden produktiven Shop, weil die Bestellbestätigung meist als erste Vorlage angepasst wird.

Wenn du die Vorlage angepasst hast, musst du selbst ran. Laut Release Notes zu 6.7.14.0 sind es diese zwei Ausdrücke, der erste innerhalb der Positionsschleife:

{{ nestedItem.productId|sw_garan_label_nested_uri(context) }}
{{ context.languageId|sw_legal_guarantee_notice_link }}

Der erste liefert das kompakte GARAN-Label als data:-URI für ein <img>-Tag, weil viele Mailclients eingebettetes SVG entfernen. Der zweite liefert nur den Link auf die EU-Seite, nicht die Grafik. Ob ein Link in der Mail reicht, ist die gleiche Streitfrage wie oben.

Shopware arbeitet an dieser Stelle noch. Im Trunk und in den Branches 6.6.x und 6.7.15.x ist eine Umstellung auf ein PNG-Label für die Bestellmail gemergt, die noch in keinem veröffentlichten Release steckt. Wer jetzt eine eigene Mailvorlage anpasst, sollte nach dem nächsten Update noch einmal draufschauen.

Headless und eigene Frontends

Für Composable-Frontends oder eigene Apps gibt es zwei Store-API-Routen:

  • GET /store-api/product/{productId}/garan-label liefert das GARAN-Label als SVG, volle und kompakte Variante.
  • GET /store-api/legal-guarantee-notice liefert die Grafik des Gewährleistungshinweises und den Link zur passenden EU-Seite.

Die Produktfelder guaranteeMonths und guaranteeConfirmed sind in der Store API lesbar. Wo und wie das Frontend beides anzeigt, liegt komplett bei dir.

Checkliste vor dem nächsten Deployment

  1. Version prüfen: mindestens 6.6.10.27 oder 6.7.14.0, auf 6.7 das Update auf 6.7.15.0 einplanen.
  2. Bestellabschlussseite in jeder Sprache und jedem Verkaufskanal öffnen und den Link zum Gewährleistungshinweis suchen. Theme-Overrides am AGB-Block sind der häufigste Grund, wenn er fehlt.
  3. Entscheiden, ob dir Link plus Modal reicht oder ob die Grafik direkt sichtbar sein soll. Das ist eine rechtliche Entscheidung, keine technische.
  4. Mit dem Einkauf klären, welche Lieferanten Herstellergarantien über zwei Jahre melden, und diese Daten in guaranteeMonths bringen.
  5. Hersteller und Hersteller-Produktnummer bei allen Garantieprodukten prüfen. Ohne beides kein Label.
  6. Testbestellung mit einem Garantieprodukt, Bestellmail in Gmail, Outlook und Apple Mail öffnen.

Was bei dir bisher im Feld Hersteller-Produktnummer steht, sieht ab jetzt jeder Kunde mit Garantieprodukt im Warenkorb.

Quellen

Ähnliche Artikel