Zum Inhalt springen

SellermaxSubscription

Shopware 6 (SW6) subscription plans and recurring orders

Sellermax Subscription

Shopware-6.7-Plugin für Produkt-Abonnements (Wiederholungsbestellungen).

Live & Demo

  1. Live: www.sellermax.de
  2. Demo: Eine Demo kann auf Anfrage bereitgestellt werden.

Was macht dieses Plugin?

Produkte können als Abo angeboten werden (Einmalkauf bleibt möglich). Das Plugin verwaltet Abo-Pläne, Zahlungsmethoden, Folgeorders, Erinnerungsmails, Kündigungs-/Reaktivierungslogik und Kundenkonto-Aktionen. Lifecycle-Events stehen für den Flow Builder bereit; ein Scheduled Task steuert Reminder und Renewals.

Abhängigkeiten

Abhängigkeit Version
PHP>= 8.2
shopware/core~6.7.0
shopware/storefront~6.7.0
shopware/administration~6.7.0

Zusätzlich im Betrieb erforderlich:

  1. Messenger-/Scheduled-Task-Worker (messenger:consume bzw. scheduled-task:run)

Installation

# Plugin nach custom/plugins/SellermaxSubscription kopieren oder symlinken
bin/console plugin:refresh
bin/console plugin:install --activate SellermaxSubscription
bin/console database:migrate --all SellermaxSubscription
bin/console cache:clear
bin/console assets:install
bin/console scheduled-task:register


Worker:

bin/console messenger:consume async --time-limit=3600
# bzw. cron: bin/console scheduled-task:run

# Manuell (z. B. Test mit 30-Minuten-Intervall):
bin/console sellermax:subscription:process


Features

  1. Admin: Abo-Pläne inkl. Intervall (auch 30 Minuten / täglich als Test) und erlaubten Zahlungsmethoden
  2. Produkt: Flag „Als Abo verfügbar“ + erlaubte Pläne
  3. Storefront: Toggle Einmalkauf/Abo inkl. Plan, Laufzeit und Menge
  4. Warenkorb/Checkout: Laufzeit anpassbar; Login erst beim Bezahlen; Zahlungsarten laut Plan
  5. Kündigung: Soft-Cancel bis Mindestlaufzeit; Hinweis + Kundenservice
  6. E-Mails (Admin-Templates) und Flow-Builder-Trigger für Lifecycle-Events
  7. Kundenkonto: kündigen, Laufzeit anpassen, reaktivieren
  8. Scheduled Task (alle 5 Min.): Folgeorders mit gespeicherter Zahlungsmethode, Zahlungserinnerung, Ablauf-Mails

Plugin-Einstellungen

Unter Einstellungen → Erweiterungen → Sellermax Abo:

Option Wirkung
Abo-Funktionen aktivierenPDP, Cart, Checkout-Filter, Konto, Cron
Login an der Kasse erforderlichGäste dürfen Abo in den Warenkorb legen, müssen sich vor dem Bezahlen anmelden
Menüpunkt im KundenkontoSidebar-Link „Abos“
Kunden dürfen kündigen / reaktivieren / Laufzeit anpassenAccount-Aktionen
Reminder-Tage + Max. RetriesCron-Mails und Backoff
Eingebaute Abo-E-Mails versendenDirekter Versand über Admin-Mail-Templates
Flow-Builder-Events auslösenTrigger für Settings → Flow Builder

E-Mail-Vorlagen

Typen mit Prefix sellermax_subscription.* unter Einstellungen → E-Mail-Vorlagen:

Technischer Name Anlass
sellermax_subscription.createdAbo neu angelegt
sellermax_subscription.renewal_createdFolgebestellung (inkl. Bitte um Zahlung vor Versand)
sellermax_subscription.payment_reminderZahlungserinnerung
sellermax_subscription.expiry_reminder_10Ablauf früh
sellermax_subscription.expiry_reminder_3Ablauf spät
sellermax_subscription.cancelledKündigung
sellermax_subscription.reactivatedReaktivierung
sellermax_subscription.expiredAbgelaufen
sellermax_subscription.renewal_failedFolgebestellung fehlgeschlagen
sellermax_subscription.ends_at_changedLaufzeit geändert

Falls nach dem Update keine Vorlagen erscheinen: Plugin aktualisieren oder Admin-API

POST /api/_action/sellermax-subscription/install-mail-templates aufrufen.

Variablen-Übersicht (Twig / Flow): docs/MAIL_TEMPLATE_VARIABLES.md

Kundenmails nutzen {{ orderNumber }} (Bestellnummer), nicht die interne orderId-UUID.

Flow Builder

Trigger (Suche nach „Abo“ / sellermax_subscription): created, renewal_created, payment_reminder, expiry_reminder_10/3, cancelled, reactivated, expired, renewal_failed, cancel_withdrawn, ends_at_changed.

Admin-Navigation

  1. Einstellungen → Shop → Abo-Pläne
  2. Kunden → Abos → Kunden-Abos
  3. Produkt → Tab „Abo“
  4. Einstellungen → Erweiterungen → Sellermax Abo

Nach Update:

bin/console plugin:refresh
bin/console plugin:update SellermaxSubscription
bin/console database:migrate --all SellermaxSubscription
bin/console scheduled-task:register
bin/console assets:install
bin/console theme:compile
bin/console cache:clear


Für Tests mit dem 30-Minuten-Intervall (ohne auf den Worker zu warten):

bin/console sellermax:subscription:process


Copyright

© Orga Consult – in Teamarbeit mit Seller Max GmbH

Sprache: PHP