Inhaltstypen
Pages
Posts

siroop-Händler-API und -Magento-Anbindungen

Automatisierte Bestellabwicklung für siroop-Händler

Besonderheiten

siroop möchte das Onboarding neuer Händler vereinfachen. Gemeinsam haben wir eine Schnittstelle zum siroop Händler Backend definiert und darauf aufbauend Magento Extensions entwickelt, welche die Bestellprozesse zwischen Händler und siroop weitgehend automatisieren.

Kunde

siroop AG

Branche

Retail, Marktplatz

Technologien

Schnittstellen

REST-API zwischen siroop und Händler

Golive

20. Februar 2018

Ziele des Projekts

Der bekannte Schweizer Online-Marktplatz siroop setzt auf schnelles Wachstum. Um die technische Anbindung von Händler-Shops an den siroop Online-Marktplatz zu vereinfachen und damit die Hürden für Händler zu verringern, möchte siroop eine einheitliche Schnittstelle und Erweiterungen für gängige Shop-Systeme aufbauen.

Händler sollen dabei auf verschiedenen Ebenen profitieren können: Vollständige Prozessautomatisierung durch Erweiterungen für Standard-Shoplösungen, Toolkits zur eigenständigen Integration in verschiedenen Programmiersprachen, sowie eine einheitliche REST-API für alle anderen Fälle.

die Herausforderungen

Für grosse Händler wie beispielsweise brack.ch wurden eigens individuelle Anbindungen an siroop entwickelt. Um aber auch mittlere und kleine Händler effizient an den siroop Online-Marktplatz anbinden zu können, musste zuerst eine einheitliche, klar definierte API geschaffen werden.

Darauf aufbauend sollten für gängige Shopsysteme Erweiterungen entwickelt werden, welche nur eine Konfiguration erfordern und den kompletten Verkaufsprozess automatisieren.

siroop stellt Anforderungen an die Händler, welche sich vom jeweiligen Verkaufsprozess des Händlers unterscheiden. So müssen Kunden bei Lieferverzögerung gem. den siroop-Vorgaben informiert werden, Paket-Trackingnummern sind obligatorisch, Lieferscheine müssen im siroop Look & Feel beigelegt werden, Endkunden-Angaben dürfen nicht für Marketing-Zwecke verwendet werden etc.

Da sich die Prozesse und damit E-Commerce-Lösungen von Händler zu Händler zudem naturgemäss stark unterscheiden, musste im Gespräch mit den Händlern zuerst ein gemeinsamer Nenner gefunden werden.

Zum Zeitpunkt des Projektstarts war Magento 2 noch kaum verbreitet im Einsatz. Trotzdem sollten von Beginn weg Magento 1.x und 2.x im gleichen Umfang unterstützt werden (Magento 2 Extensions unterscheiden sich fast vollständig von Magento 1 Extensions).

In einer Konzeptphase mit dem Kunden wurden schrittweise die Prozesse beleuchtet und ausgearbeitet. Darauf aufbauend haben wir gemeinsam mit den Entwicklern des siroop Merchant Backends eine API definiert. In einem Workshop mit mehreren Händlern wurden die Prozesse gemeinsam durchleuchtet und die individuellen Prozesse der Händler soweit wie möglich berücksichtigt.

Die in der Realisierungsphase schliesslich umgesetzte Architektur besteht aus mehreren Ebenen:

  • Merchant Backend API
    nach OpenAPI-Standard definiert (dies ermöglicht es, Schnittstellen-Code auf für andere Programmiersprachen wie Java, Ruby etc. automatisch zu generieren).
  • PHP SDK
    Das fertige SDK können Händler, welche PHP, aber keines der durch die Erweiterungen unterstützten Shopsysteme verwenden, zur Anbindung ihres Webshops nutzen.
  • Magento 1.x und 2.x Extensions
    Diese können Magento-Betreiber direkt in ihren Magento-Shops einsetzen. Die Anbindung kann innert wenigen Stunden erfolgen.

Die siroop-Magento-Erweiterung automatisiert und unterstützt die Bestellungsbearbeitung der Händler in diesen Bereichen:

  • Übergabe von neuen Bestellungen aus dem siroop Online-Marktplatz an den Magento-Shop des Händlers
  • Bestellstatus-Aktualisierung auf Artikelebene (gemäss den Plattform-Vorgaben von siroop)
  • Verspätete Lieferung avisieren (gemäss den Plattform-Vorgaben von siroop)
  • Stornierung durch den Endkunden oder durch den Händler
  • Lieferscheine als PDF im siroop-Look beziehen
  • Wahlweise automatische oder manuelle Annahme neuer Bestellungen (je nach Automatisierungsgrad des Händlers)
  • Wahlweise Unterstützung der Lagerverwaltung in Magento (autom. Stornierung von Artikeln, die nicht innert Frist geliefert werden können)
  • Admin-Ansicht zur Einsicht und Verwaltung der siroop-Bestellungen mit den hierfür relevanten Daten wie z. B. vertraglich zugesicherte Lieferfristen.

Da viele Magento-Versionen auf Kompatibilität geprüft werden müssen, war ein effizientes Setup notwendig. Mittels der docker-basierten DevOps-Prozesse können sehr einfach die neuesten Magento-Versionen getestet und bei Bedarf Aktualisierungen ausgerollt werden.

Last but not least wird es aber immer Händler geben, deren E-CommerceProzesse und Magento-Individualisierungen nicht out-of-the-box mit den siroop Händlerplattform-Erweiterungen kompatibel sein werden. Für diese bieten wir Unterstützung bei den notwendigen Anpassungen an.

Zum Projekt gehörte ebenfalls der kontrollierte Roll-Out bei Erstkunden. Für Magento 1 war dies Loeb, für Magento 2 der ebenfalls von uns entwickelte doodah-Shop. Trotz individualisierten Shops konnten die siroop-Erweiterungen in kurzer Zeit mit minimalen Prozessanpassungen in Betrieb genommen werden.