shopify

Der erfolgreiche Onlineshop shopify lässt sich mit Hilfe von Synesty Studio und dem shopify Add-Onopen in new window an beliebige Systeme anbinden.

So können unter anderem Artikeldaten aus verschiedenen Quellen eingelesen und in shopify importiert (Lieferantenanbindung und dropshipping) und
Aufragsdaten von shopify an ein Warenwirtschafts- oder Auftragsmanagementsystem übertragen werden.

API Zugriff einrichten

Um die shopify API über Synesty nutzen zu können, muss man im shopify Admin-Bereich die Zugangsdaten generieren und diese in Synesty hinterlegen.

API Zugang in shopify generieren und Zugriffsrechte vergeben

Im alten Shopify Layout:

Dies erfolgt über den Bereich Apps durch das Anlegen einer Private App (Menüpukt Apps -> Manage private Apps).

Im Bereich Private Apps legt man eine neue App an (Name frei wählbar) und erhält somit den API-Key und das Password.

Zu den API Zugangsdaten sind noch die entsprechenden Zugriffsrechte in den Bereichen Products und Orders zu setzen.
Sollen Daten auch in shopify zurückgeschrieben werden, dann ist auf alle Fälle eine Read and write Recht erforderlich.
Sind die entsprechenden Rechte nicht gesetzt, erhält man im Synesty Studio die Fehlermeldung IllegalStateException: HTTP status code error: 403 (Forbidden).

Dies erfolgt über den Bereich "Apps and sales channels" durch das Anlegen einer eigenen App (Menüpukt Einstellungen -> Apps and sales channels -> Develop apps -> Create an app).

Nach erstellen der App sind zunächst die entsprechenden Zugriffsrechte in den Bereichen Products und Orders zu setzen.

Sind die entsprechenden Rechte nicht gesetzt, erhält man im Synesty Studio die Fehlermeldung IllegalStateException: HTTP status code error: 403 (Forbidden).

Jetzt kann die App installiert werden, um die API-Credentials zu erhalten:

shopify Zugriffsrechte

Die erforderlichen Zugriffsrechte für den jeweiligen Step finden Sie unter "shopify Zugriffsrechte" in den Bereichen ProductDataManagement-shopify und OrderDataManagement-shopify.

Verbindungsdaten im Synesty Studio hinterlegen

Im Synesty Studio müssen die Verbindungsdaten von shopify hinterlegt werden.

Hinweis

In den neueren Shopify Versionen ist nur noch ein Admin API Access Token gegeben. Diesen hinterlegen Sie bitte unter "Meine Verbindung" in das entsprechende Feld, ohne dabei den API key und das Password auszufüllen. Diese Verbindung funktioniert mit unseren Shopify Steps ab der API Version 2022-01.

shopifyURL

Bei shopifyURL ist die URL Ihres shopify Backends zu hinterlegen (Einstellungen -> Domains).
Beispiel: https://synesty.myshopify.com/admin
Hinterlegt wird https://synesty.myshopify.com ohne /admin

Im Synesty Studio kommt man zur Account Konfiguration auf der Linken Seite unter Meine Verbindungen -> SHOPIFY

Der Accountname ist frei wählbar und wird dann zur Auswahl im jeweiligen shopify Step angezeigt.

ProductDataManagement-shopify

Das shopify Add-On enthält Steps im Bereich Produktdaten, um Produkte anzulegen, zu aktualisieren und abzufragen. Auf dieser Seite sind die vorhandenen Steps aufgeführt und beschrieben.

shopifyGetProducts

Dieser Step holt alle Produkte und Varianten im angegebenen Status aus shopify.

In shopify selbst haben auch Produkte, welche keine Ausprägungen (Varianten) enthalten, mindestens ein Variantenprodukt.

Dieses Variantenprodukt enthält Informationen zum Preis, Gewicht, barcode etc. des Produktes.

Beim Export der Produkte und Varianten wird im Ergebnis gekennzeichnet (Spalte isVariant), ob es sich bei dem exportierten Produkt um ein Variantenprodukt (isVariant=Y) oder um ein einfaches Produkt ohne Ausprägungen handelt (isVariant=N).

shopifyGetProducts (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

Step Konfiguration

Zur Verwendung dieses Steps muss man die Verbindungsdaten zu shopify (account) hinterlegen.
Siehe Verbindungsdaten im Synesty Studio hinterlegen

Die Produktabfrage selbst kann durch verschiedene Filter noch konfiguriert werden, um nur bestimmte Produkte zu erhalten.
Weitere Informationen dazu findet man unter Inputs in der Step Beschreibung <<hier>>open in new window.

shopify Zugriffsrechte

Products (View or manage products, variants, and collections) = read_products

shopifyUpdateProductInformation

Mit diesem Step können bei bereits im shopify angelegten Produkten die Produkinformationen, wie Titel, Beschreibung, Produkttyp, Tags und Bilder aktualisiert werden. Auch ist es möglich über diesen Step ein Produkt im Webshop an- und auszuschalten und den Verkaufskanal zuzuordnen.

shopifyUpdateProductInformation (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

shopifyUpdateProductInformation - Bilder und Tags

Die zu aktualisierenden Werte werden am Produkt überschrieben. Im Fall von Bildern oder Tags werden diese beim Update nicht hinzugefügt, sondern die vorherigen Einträge werden gelöscht und die neuen Werte werden eingetragen.

Step Konfiguration

Zur Verwendung dieses Step muss man die Verbindungsdaten zu shopify (account) und das limit (limit) konfigurieren.

Der Input für diesen Step ist ein Spreadsheet, welches die zu übertragenden Produktinformationen enthält. Eine Liste der möglichen Werte finden Sie <<hier>>open in new window.

product_id und optionale Werte

Zum Aktualisieren übergeben Sie die interne shopify product_id, welche ein Pflichtwert zur Ausführung des Steps ist. Diese erhalten Sie aus dem Step shopifyGetProductsopen in new window. Alle anderen Werte zur Aktualisierung sind optional und können wahlweise einzeln oder zusammen verwendet werden. So wäre es z.B. möglich nur den Titel zu ändern oder den Step nur zur Bilderaktualisierung zu verwenden.

shopify Zugriffsrechte

Products (View or manage products, variants, and collections) = write_products & read_products

shopifyUpdatePriceAndBarcode

Mit diesem Step können bei Produkten/Varianten der Preis und der Barcode (barcode, EAN, UPC oder ISBN) gesetzt werden.

shopifyUpdatePriceAndBarcode (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

Inventory Management mit Locations

shopify unterstützt seit Mitte 2018 locations beim Inventory Management. Dadurch ist es nicht mehr möglich direkt einen Artikelbestand beim Aktualisieren des Produktes mitzugeben. Der Artikelbestand kann mit dem Step shopifySetInventoryLevelopen in new window nach dem Anlegen des Produktes gesetzt werden.

Step Konfiguration

Zur Verwendung dieses Step muss man die Verbindungsdaten zu shopify (account) und das limit (limit) konfigurieren.

Der Input für diesen Step ist ein Spreadsheet, welches die zu übertragenden Produktinformationen enthält. Eine Liste der möglichen Werte finden Sie <<hier>>open in new window.

Beispiel für Nutzung des Steps:

Achtung

Um den compare_at_price zu entfernen können sie den Wert -1 verwenden

shopify Zugriffsrechte

Products (View or manage products, variants, and collections) = write_products & read_products

shopifyGetLocations

Dieser Step holt die Informationen zu allen in shopify angelegten Locations. Die ermittelte location_id wird unter anderem in den Steps shopifySetInventoryLevel und shopifyOrderFulfillment als Pflichteingabe benötigt.

shopifyGetLocations (Inputs/Outputs)

Weitere Informationen zum Step siehe <<hier>>open in new window.

shopifySetInventoryLevel

Mit diesem Step kann der Bestand an einem Produkt gesetzt werden.

location ID

Ab ext. Version 2019-10 ist die location ID keine optionale Step Variable mehr und muss als Pflichteingabe bei der Stepkonfiguration mit übergeben werden. Siehe Inputs bei der Step Beschreibung. Um die location ID zu ermitteln, kann der Step shopifyGetLocationsopen in new window genutzt werden.

shopifySetInventoryLevel (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

Optionale Eingabefelder

Die optionalen Eingabefelder id, product_id, sku und barcode können mit übergeben werden. Diese Felder werden bei allen Ausgaben in den Ergebnistabellen wieder mit ausgegeben. Dadurch ist es zum Beispiel möglich, gespeicherte Artikelinformationen in einem datastore nach der Ausführung des Steps zu aktualisieren.

shopifyAddSingleProducts

Mit diesem Step können Produkte ohne Varianten in shopify angelegt werden.

Inventory Management mit Locations

shopify unterstützt seit Mitte 2018 locations beim Inventory Management. Dadurch ist es nicht mehr möglich direkt einen Artikelbestand beim Anlegen des Produktes mitzugeben. Der Artikelbestand kann mit dem Step shopifySetInventoryLevelopen in new window nach dem Anlegen des Produktes gesetzt werden.

shopifyAddSingleProducts (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

Ergebnisliste von shopifyAddSingleProducts

Nach erfolgreicher Ausführung des Steps erhält man als Ergebnis alle in shopify angelegten Produkte inklusive der von shopify vergebenen internen ID.

Die Ergebnisliste entspricht der Liste von shopifyGetProductsopen in new window.

Step Konfiguration

Zur Verwendung dieses Step muss man die Verbindungsdaten zu shopify (account) und das limit (limit) konfigurieren.

Der Input für diesen Step ist ein Spreadsheet, welches die zu übertragenden Produktinformationen enthält. Eine Liste der möglichen Werte finden Sie <<hier>>open in new window.

shopify Zugriffsrechte

Products (View or manage products, variants, and collections) = write_products & read_products

shopifyUploadProductImages

Mit diesem Step können Produkten bzw. Varianten Bilder hinzugefügt werden.

Achtung

Die Bilder können in Form einer URL (Zielspalte "source") oder Base64 (Zielspalte "image_base64") zu Shopify importiert werden. Eine der beiden Spalten muss vorhanden und gefüllt sein damit der shopifyUploadProductImages Step die Bilder hochladen kann. Wenn das Bild im Base64 Format hochgeladen wird ist auch die Spalte "filename" ein Pflichtfeld.

shopifyUploadProductImages (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

OrderDataManagement-shopify

Das shopify Add-On enthält Steps im Bereich Auftragsdaten, um Aufträge anzulegen, zu aktualisieren und abzufragen sowie den Versand und die Retouren zu managen.Auf dieser Seite sind die vorhandenen Steps aufgeführt und beschrieben.

shopifyGetOrders

Mit diesem Step werden alle Aufträge im gewählten Status und ab dem angegeben Auftragserstelldatum geholt.

Als Ergebnis erhält man eine Tabelle mit den Auftragskopfdaten und den dazugehörigen Auftragspositionen.

shopifyGetOrders (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

Step Konfiguration

Zur Verwendung dieses Step muss man die Verbindungsdaten zu shopify (account), den zu exportierenden Auftragsstatus (status) und Datum/Zeit der Auftragserstellung (created_at_from), ab welchen exportiert werden soll, konfigurieren.

created_at_from

Bei created_at_from kann ein fester Wert (z.B. 2017-06-06 16:04) oder eine Flow-Laufzeit Eigenschaft vom Typ DATETIME (z.B. prop_lastruntime) hinterlegt werden.
Dies ermöglicht es z.B. immer nur neue Aufträge seit letzter Flowausführung zu holen, statt immer alle Aufträge.

Analog kann der Parameter created_at_toverwendet werden, der fest legt bis zu welchen Datum die Auftragserstellung erfolgt ist.

Außerdem kann der Bereich des Aktualisierungsdatums (updated_at_from, updated_at_to) und der Bereich des Bearbeitungsdatums (processed_at_from, processed_at_to) festgelegt werden.

Zusätzlich kann nach der sales_channel, einem tagoder speziell nach order ids(einzeln oder als kommaseparierte Liste mehrerer order ids) gefiltert werden.

Werden ids angegeben, werden alle anderen Filter übergangen so das unabhängig vom Status der Auftrag immer ausgegeben wird.

shopify Zugriffsrechte

Orders (View or manage orders, transactions, fulfillments, and abandoned checkouts) = read_orders

shopifyOrderFulfillment

Mit diesem Step können an einem Auftrag Trackinginformationen hinterlegt werden. Es ist weiterhin möglich festzulegen, ob der Kunde nach Hinterlegung der Trackinginformationen

eine E-Mail von shopify mit den Trackinginformationen erhält. Der Auftrag wird im shopify als fulfilled markiert.

shopifyOrderFulfillment (Inputs/Outputs)

Weitere Informationen zum Step finden Sie <<hier>>open in new window.

order_id ohne Trackinginformationen

Wird diesem Step nur die order_id ohne Trackinginformationen übergeben, dann wird der Auftrag in shopify als fulfilled markiert und eine eine Versandbestätigungs E-Mail wird an den Kunden geschickt.

Step Konfiguration

Zur Verwendung dieses Step muss man die Verbindungsdaten zu shopify (account) und das limit (limit) konfigurieren.

Der Input für diesen Step ist ein Spreadsheet, welches die oben genannten Werte enthält und über das Mapping im Step zu konfigurieren ist.

shopify Zugriffsrechte

Orders (View or manage orders, transactions, fulfillments, and abandoned checkouts) = write_orders & read_orders

Steps im shopify Add-On

Weitere Informationen