Shopware 6 für den B2B-Kanal: Entscheidung mit Belegen

Ein Lebensmittelgroßhändler brauchte einen Online-Bestellkanal. Der erste Versuch, eine Eigenentwicklung auf Next.js und Fastify, wurde eingefroren. Die Frage lautete: fertiges Shopware 6 nehmen oder weiter selbst bauen. Die Antwort sollte nicht geraten, sondern belegt werden.

Vorgehen

  • Anforderungen und den Austauschvertrag mit 1C 7.7 aus dem eingefrorenen Projekt übernommen. Sie hängen nicht an der Plattform
  • 47 Spezifikationen über dem Umsetzungsplan, mit Nachweiskette Anforderung → Spezifikation → Beleg
  • Fit-Gap zu jeder bestätigten Anforderung, dazu kaufmännischer Rahmen und die drei größten Risiken
  • Sechs Proof of Concepts mit vorab veröffentlichten Gate-Kriterien und der Regel, im vendor-Verzeichnis nichts zu ändern
  • Drei Plugins geschrieben, ausschließlich über dokumentierte Erweiterungspunkte
  • Ein Fragebogen für die Betreuung von 1C und eine Frage an den Inhaber zur Endkundschaft, beide fertig zum Weiterleiten

Ergebnis

  • Urteil: GO mit einer Einschränkung
  • Bestanden: Umgebung; Katalogimport aus Fake-1C mit idempotentem Upsert; B2B-Preis in Liste, Karte, Warenkorb und Bestellung 14 von 14; Vorrang von Aktionen samt Rundung; Bestellung → 1C bei verlorenem Ack und offline 10 von 10; Lager und Mindestbestellmenge 9 von 10
  • Nicht bestanden: gemeinsamer Warenkorb einer Organisation, Verlust von Änderungen in 10 von 10 Versuchen. Genau das ist die Einschränkung
  • Keine einzige Änderung im vendor-Verzeichnis, deshalb überstehen die Anpassungen ein Plattform-Update

Technik: Shopware 6.7, PHP, Docker Compose, PHPStan, 1C 7.7 (XML-Austausch, XSD), Python