Shopify
Zweck
Shopify wird zum Verkaufskanal, nicht zu einem zweiten System: der Artikelstamm bleibt hier, der Shop bekommt eine Kopie. Damit gibt es die teuerste Fehlerquelle im E-Commerce gar nicht erst — zwei Artikelstämme, zwei Bestände, zwei Preiswahrheiten und einen driftenden Konnektor dazwischen. Shopify ist der Referenz-Konnektor: an ihm ist der Kanal-Vertrag entstanden.
Funktionsumfang
- Artikel anlegen und ändern in EINEM Aufruf (
productSet) statt in drei Schritten — damit gibt
es auch nur einen Teilerfolg statt dreier.
- Bestände am konfigurierten Standort; ohne Standort weiß Shopify nicht, wo die Ware liegt, und
lehnt ab.
- Preise an der Variante — Preis und Artikelnummer hängen bei Shopify seit 2024 dort, nicht am
Produkt.
- Bestellungen werden abgeholt und zu Aufträgen.
- Versandmeldung mit Sendungsnummer zurück in den Shop.
- Warenkörbe per Webhook (
checkouts/create,checkouts/update): begonnene Warenkörbe werden zu
Warenkörben im Kanal. Ruht einer eine Stunde mit Adresse und ohne Bestellung, gilt er als verlassen — der Auslöser der Warenkorb-Erinnerung. Vorlage im Integrations-Hub: Shopify: Warenkörbe per Webhook.
- Vier Einstellungen je Kanal: Shop-Domain, API-Version, Standort und ob neue Artikel
ACTIVE
oder DRAFT erscheinen.
Zusammenspiel
Der Kanal ist ein Verkaufskanal im Sinne der Kanäle — kein Sonderpfad neben dem Beleg. Artikel, Preise und Bestände kommen aus dem Produktkatalog und dem Bestand; eingehende Bestellungen werden zu regulären Aufträgen und laufen von dort durch Lager, Versand und Rechnung wie jede andere Bestellung auch. Die Zugangsdaten stehen als Integration unter Integrationen in der verschlüsselten Ablage. Abläufe und Zuordnungen an der Systemgrenze — welches Feld auf welches, wann welcher Abgleich läuft — gehören OctiConnect; Bedingungen und Wartezeiten bleiben Sache der Automationen.
Warenkörbe einrichten
- Im Integrations-Hub die Vorlage Shopify: Warenkörbe per Webhook installieren (Kanal-Schlüssel
des Shopify-Kanals angeben) und die angezeigte Webhook-Adresse sowie das Geheimnis übernehmen.
- In der Shopify-App (Dev Dashboard bzw. eigene App im Shopify-Admin) den Zugriff
read_orders
freigeben — ohne ihn liefert Shopify keine Warenkörbe. Shopify fragt dabei nach dem Zugang zu geschützten Kundendaten: E-Mail, Name und Telefon anfordern und den Zweck („Erinnerung an verlassene Warenkörbe") angeben.
- In Shopify zwei Webhooks auf die Adresse aus Schritt 1 setzen:
checkouts/createund
checkouts/update, Format JSON. Signiert wird mit dem App-Geheimnis (X-Shopify-Hmac-Sha256) — dasselbe Geheimnis gehört an den Ablauf.
- Die eigene Warenkorb-Mail von Shopify (Marketing → Automatisierungen) abschalten, sonst erinnern
zwei Systeme.
Doppelt gemeldete Warenkörbe schreiben denselben Warenkorb fort; eine Bestellung derselben Adresse oder der Abschluss im Checkout beendet die Erinnerung.
Grenzen
- Die externe Kennung trägt drei Kennungen (Produkt, Variante, Bestandsposten), getrennt durch
:. Shopify braucht je Vorgang eine andere davon; sie bei jedem Lauf per Artikelnummer neu zu suchen wäre eine Zusatzabfrage je Zeile und Lauf.
- Der Echt-Lauf steht aus. Geprüft ist, dass wir richtig fragen und die Antwort richtig deuten —
nicht, dass Shopify die Anfrage annimmt. Dafür fehlt ein echtes Verkäuferkonto.