Über die Entwicklung eines Marktplatzes auf Basis von Shopware

Bereits im Oktober 2018 begannen die Vorbereitung für dieses außergewöhnliche Projekt, dass in Zusammenarbeit mit der Albert Mellies GmbH aus Osnabrück entstanden ist.

Mit "Mellies Marktplatz" haben wir im vergangenen Jahr für einen der größten Händler für Arbeitsschutz, Werkzeuge, Betriebseinrichtung und C-Artikel in Deutschland eine ganze Systemlandschaft auf Basis von Shopware implementiert.

Die ersten Schritte: Mellies Marktplatz

Nachdem zu Beginn des Projektes alle Anforderungen konsolidiert wurden, begann zunächst die Entwicklung des Marktplatz-Systems und des Single-Sign-On-Portals (siehe unten) auf Basis von Shopware.

Der Marktplatz ist hierbei einer normaler Shopware-Onlineshop mit einer Anbindung an das Single-Sign-On-Portal zur Benutzerverwaltung.

Neben der Implementierung eines eigenen Frontend-Themes, wurde hier die Anbindung an die Warenwirtschaft des Kunden zur Abbildung von kundenindividuellen Preisen und Katalogen implementiert. Das bedeutet, dass jeder Kunde auf dem Marktplatz-System ein individuelles Set an Artikeln mit eigenen Preisen zugewiesen bekommen kann.

In Mellies Marktplatz wird unser Plugin Netzdirektion B2B Commerce eingesetzt, um Unternehmenshierarchien, mehrstufige Freigabeprozesse, Budgets und Kostenstellen zu verwirklichen.

Darüber hinaus haben wir, ebenfalls in dieser ersten Projektstufe, eine eigene Management API für Shopware entwickelt. Diese ermöglicht die zentrale Verwaltung aller angeschlossenen Onlineshops über das nachfolgend erläuterte Single-Sign-On-Portal.

Besonderheiten des Marktplatzes

  • Anbindung an Warenwirtschaft
  • kundenindividuelle Preise und Kataloge
  • Verwaltung über zentrale Management API
  • SAP OCI Anbindung
  • Einsatz von Netzdirektion B2B Commerce, Budgets und Kostenstellen

Das Shopware Single-Sign-On Portal

Parallel zur Entwicklung des Marktplatzes wurde auf Basis von Laravel ein System zur Verwaltung von Shopware-Installation und zugehörigen Kunden sowie Lieferanten entwickelt. Das Single-Sign-On-Portal (SSO-Portal) bildet das Herzstück der gesamten Systemlandschaft.

Das SSO-Portal ermöglicht im Wesentlichen die Erzeugung neuer kundenspezifischer Onlineshops und deren Verwaltung (Themes, Plugins, Einstellungen uvm.). Außerdem besteht die Möglichkeit, jedem Onlineshop eine beliebige Anzahl an Lieferanten zuzuweisen, damit diese Lieferanten Artikeldaten über das ebenfalls implementierte Lieferanten-Portal hochladen können.

Für jeden angelegten Benutzer / Kunden wird nun bei der Anmeldung in Mellies Marktplatz geprüft, ob für sein Unternehmen eine eigene Instanz existiert. Sofern eine kundenindividuelle Instanz existiert, wird diese dem Kunden ausgeliefert.

Besonderheiten des SSO-Portals

  • Erzeugung und Verwaltung von Servern über die Hetzner Cloud API
  • Monitoring der Server über Oh Dear!
  • Automatische Erzeugung und Provisionierung von Shopware Installationen für Kunden
  • Zentrale Verwaltung von Shopware Themes, Einstellungen und Plugins
  • Zentrale Verwaltung von Benutzern und Routing auf die zugehörigen Shops
  • Verwaltung und Zuweisung von Lieferanten der angeschlossenen Kunden
  • Onboarding für neue Benutzer
  • Zentrale Verwaltung von Shopware Inhalten über mehrere Installationen hinweg

Kundenindividuelle Shopware Onlineshops auf Knopfdruck

Nachdem im zweiten Quartal des vergangenen Jahres die Grundlagen für das Gesamtsystem gelegt waren, haben wir begonnen, die Verwaltungs-Logik für die Showpare-Instanzen zu implementieren.

Alle Onlineshops werden automatisiert in einem privaten Netzwerk in der Hetzner Cloud erzeugt und sind nur über ein Reverse-Proxy-Cluster - basierend auf nginx - erreichbar. Das Cluster wird aus dem SSO-Portal heraus laufend mit den aktuellen Nutzerdaten aktualisiert.

Außerdem wurde eine REST-API für die Änderung von diversen Einstellungen innerhalb von Shopware implementiert. Darüber hinaus wurde eine Möglichkeit geschaffen, Plugins und Themes über die REST-API zu installieren.

Besonderheiten des Instanzen

  • Remote Management fähig, alle Shopware-Einstellungen und Inhalte sind über die erweiterte REST-API verfügbar
  • Upload von neuen Plugins über die Shopware API
  • Upload von Themes über die Shopware API

Das Lieferanten-Portal für Shopware

In der letzten Phase der Implementierung wurde dann das Lieferanten-Portal, ebenfalls auf Basis von Laravel, implementiert. Das Lieferanten-Portal ermöglicht es Lieferanten ihre Artikel in die für sie freigeschalteten Shopware Instanzen hochzuladen.

Hierfür wurde unter anderem eine REST-API implementiert. Diese kann für jeden Lieferanten separat freigeschaltet werden. Darüber hinaus besteht die Möglichkeit Artikeldaten als Datei hochzuladen. Diese werden dann durch das System validiert und automatisiert in die Shopware Instanzen übertragen.

Alle Artikelübertragungs-Prozesse verwenden Queues und werden durch Supervisord verwaltet, so dass eine hohe Skalierbarkeit von Beginn an gegeben ist.

Besonderheiten des Lieferanten-Portals

  • Artikel-Upload in den Formaten CSV, XML, XLSX und JSON
  • Dedizierte REST-API für Lieferanten
  • Validierung aller Artikeldaten vor der Übertragung

Diverse Plugins für Shopware

Im Rahmen des Projektes wurden einige Plugins für Shopware entwickelt, hier ein Auszug der wichtigsten:

  • Kundenindividuelle Preise und Kataloge
  • Kundenindividuelle Produkte
  • SAP OCI 5.0 Integration
  • Shop Management API
  • Barcode-Etiketten Erzeugung
  • Barcode Scanner
  • uvm.

Technologie Stack

  • Shopware 5.5 / 5.6
  • Laravel
  • Laravel Lumen
  • Laravel Nova
  • Hetzner Cloud
  • Oh Dear!
  • LAMP + nginx
  • Supervisord
  • packer.io
  • uvm.

Was kann man jetzt damit anfangen?

Unser System eignet sich für die Realisierung vieler möglicher Anwendungszenarien, bei denen mehr als eine Shopware Instanz benötigt wird. So besteht z.B. die Möglichkeit automatisiert Shopware Installationen für die Anwendung in einem Filial- oder Händlernetzwerk zu erzeugen und diese effizient zu verwalten.

Auch die Verwendung von einzelnen Bestandteilen des Systems ist denkbar - das Lieferantenportal eignet sich z.B. hervorragend für die Anbindung von Händlern in einem Dropshipping-Szenario.

Möchten Sie mehr erfahren?

Wir freuen uns über ein persönliches Gespräch! Ihr Ansprechpartner ist Patrick Dornbusch, Sie erreichen uns telefonisch unter +49 (0) 6152 / 978 94 66 oder per E-Mail unter pd@netzdirektion.de

Zurück