Projekt besprechen
WebEntwickler.Pro

Individuelle Erweiterungen für klar definierte Shopware-Aufgaben

Shopware Plugin entwickeln lassen

Ein Shopware Plugin ist sinnvoll, wenn eine konkrete Funktion eng mit dem Shopprozess verbunden ist und Standardkonfigurationen nicht ausreichen. Ich grenze Anforderungen, Datenzugriffe, Ereignisse und Updateabhängigkeiten vor der Umsetzung ab. Entwicklung, Migrationen und Tests werden so dokumentiert, dass Installation und spätere Pflege nicht nur beim ursprünglichen Entwickler nachvollziehbar bleiben.

Autor: Stanislav Tonkich | Stand: 13. Oktober 2026

Plugin, App oder vorhandene Funktion

Nach der Shopware-Architektur laufen Plugins im Core-Prozess, können auf Ereignisse reagieren, Services erweitern und direkt mit der Datenbank arbeiten. Apps werden außerhalb des Core-Prozesses betrieben und kommunizieren über Webhooks sowie die Admin API. Deshalb beginnt ein Projekt nicht mit einem Plugin-Namen, sondern mit der Frage, welcher Erweiterungsweg für Zugriff, Hosting, Wartung und Shopware-Ausgabe passt.

Geschäftsregel

Eine Regel für Produkte, Warenkorb oder Bestellstatus wird mit Auslöser, Eingabedaten, Ausnahmefällen und erwarteter Wirkung beschrieben.

Schnittstelle

Bei einer externen Anbindung werden Authentifizierung, Datenformat, Zeitlimit, Wiederholung und Protokollierung festgelegt.

Administration

Konfiguration und Benutzeroberfläche sollen nur die Einstellungen anbieten, die für den Betrieb gebraucht und verständlich dokumentiert werden.

Datenmigration

Schemaänderungen benötigen versionierte Migrationen und einen prüfbaren Weg für Update, Rücksicherung und erneute Ausführung.

Was in eine belastbare Anforderung gehört

  1. Ausgangslage: Shopware-Version, Hosting, installierte Erweiterungen und betroffene Verkaufskanäle.
  2. Fachlicher Fall: Ein konkretes Beispiel mit Eingangsdaten, gewünschtem Ergebnis und bekannten Ausnahmen.
  3. Datenzugriff: Benötigte Entitäten, Schreibzugriffe, personenbezogene Daten und Aufbewahrung.
  4. Betrieb: Häufigkeit, erwartete Datenmenge, Fehlerbehandlung, Protokolle und verantwortliche Person.
  5. Abnahme: Testfälle, unterstützte Versionen und Kriterien für eine vollständige Übergabe.

Beispiel: Bestellstatus an ein Drittsystem melden

Die Aufgabe ist nicht nur „Webhook bauen“. Zu klären sind auslösende Statuswechsel, übermittelte Felder, Signatur, Zeitlimit, Wiederholungen, doppelte Ereignisse und Verhalten bei Ausfall des Zielsystems. Erst diese Regeln machen Implementierung und Abnahme eindeutig.

Updates und Kompatibilität

Shopware empfiehlt für eigene Plugins unter anderem idempotente Datenbankmigrationen, Tests gegen die vorgesehene Versionsmatrix und die laufende Beobachtung von Deprecations. Vor einem Core-Update sollten Abhängigkeiten, Breaking Changes und kritische Shopabläufe geprüft werden. Eine zeitlich unbegrenzte Kompatibilitätszusage wäre ohne künftige Plattformversionen und Drittanbieteränderungen nicht belastbar.

Für die Übergabe werden Installationsweg, Konfiguration, bekannte Grenzen, Testfälle und betroffene Daten dokumentiert. Quellcode und Zugang zu Abhängigkeiten werden so vereinbart, dass der Betrieb nicht von einem privaten Entwicklerkonto abhängt.

Häufige Fragen

Entwickeln Sie Erweiterungen für jede Shopware-Version?

Die Zielversion und unterstützte Versionsspanne werden vor Beginn festgelegt. Ob ältere Installationen sinnvoll unterstützt werden können, hängt von Core, PHP-Version, vorhandenen Erweiterungen und der konkreten Aufgabe ab.

Kann ein vorhandenes Plugin erweitert werden?

Das hängt von Lizenz, Quellcode, Erweiterungspunkten und Updateweg ab. Direkte Änderungen an fremdem Plugin-Code erschweren spätere Updates und werden deshalb nur nach Prüfung der Alternativen erwogen.

Ist ein Plugin immer die beste Lösung?

Nein. Manche Anforderungen lassen sich über Konfiguration, Theme, Rule Builder, Flow Builder oder eine externe App lösen. Der kleinere wartbare Eingriff ist häufig sinnvoller als zusätzlicher Individualcode.

Plugin-Anforderung prüfen

Nennen Sie Shopware-Version, fachlichen Fall, betroffene Daten und gewünschtes Ergebnis. Ich prüfe den passenden Erweiterungsweg und ob ich die Umsetzung übernehmen kann.

Shopware-Aufgabe besprechen