SelectLine Shopify-Anbindung
- Installation
- Shopify - Einstellungen
- Shopdaten
- Zuordnung
- Einstellungen
- Zahlungsbedingungen
- Lieferbedingungen
- Sprachzuordnung
- Makros
- Experteneinstellungen
- Zuordnung Versanddienstleister
- Zeitsteuerung
- Tools & APPs`- Empfehlungen aus der Praxis
Installation
Siehe: https://wiki.dako-it.com/books/finnghost-systemhandbuch/page/installation
Shopify - Einstellungen
Die Einstellungen zur Shopify-Schnittstelle
Shopdaten
In diesem Bereich muss der Name des Shops und das Access-Token angeben werden.
Der Name des Shops entspricht dem Namen der Subdomain von myshopify.com . Bitte nur den Namen xxx eintragen.
https://xxx.myshopify.com
Um das Access-Token zu erhalten, muss eine eigene Admin-App innerhalb des Shopify Admin-Bereichs erstellt werden.
Schritt 1 - Aufruf der "Einstellungen" im Shopify Back End
Schritt 2 - Aufruf des Menüpunktes "APPs und Vertriebskanäle
Wählen Sie den Punkt "Apps erstellen".
Schritt 3 - Benutzerdefinierte APP erstellen
Vergeben Sie einen beliebigen APP- Namen.
Anschließen müssen Sie den Button "App erstellen" tätigen.
Schritt 4 - Berechtigungen der APP setzen
Anschließen sind die Berechtigungen zu setzen. Um den vollen Funktionsumfang nutzen zu können, sollten alle Haken aktiviert werden:
Schritt 5 - Installation der APP
Nun erfolgt die Installation der App:
Schritt 6 - Access-Token kopieren
Das Access-Token kann nun einmalig angezeigt werden:
Zuordnung
In den Zuordnungen wird eingestellt, welche Daten und Funktionen in Shopify denen in SelectLine Warenwirtschaft entsprechen. (Mapping)
Belegtyp Bestellungen
Tragen Sie bitte den SelectLine Verkaufs-Belegtyp ein, in den neue Bestellungen aus dem Onlineshop eingelesene werden. Es werden alle Verkaufsbelegtypen der SelectLine unterstützt, auch Extrabelege. Der Kassenbeleg kann nicht genutzt werden.
Belegtyp Versand
Wir eine Bestellung innerhalb der SelectLine an diesen Belegtyp übergeben (z.B. Auftrag in Lieferschein), so wird dem Shop übermittelt, dass die Bestellung versendet wurde, wenn dieser Belegtyp "erreicht" ist.
Ist dem Beleg ein Paket zugeordnet, wird auch die Paketnummer als Trackingnummer an Shopify übertragen.
Promotion Artikel
Sollten im Shop Gutscheine oder Rabatte zum Einsatz kommen, so wird er entsprechende Betrag auf diesen Artikel gebucht. Verwendete Gutscheincodes sind im Memo-Feld der Position zu finden.
Preisgruppe
Hier wird die Verkaufs-Preisgruppe aus der SelectLine ausgewählt, welche die Preise für den Shop bereitstellt (z.B. Preisgruppe 1)
Versand Artikel
Damit die Versandkosten beim Import der Shopify-Bestellungen einer Versandzeile in den SlectLine Positionsdaten zugeordnet werden können, muss hier die Artikelnummer eines Versand-Artikels aus der SelectLine angegeben werden.
Shopkunde
In der SelectLine muss ein Kunde angelegt werden, welcher als Grundlage für die die Funktionen des Shopify- Shops dient, solange kein Kunde eingeloggt ist. Bei Gastbestellungen im Onlineshop werden die Erlöse in der SelectLine Warenwirtschaft auf diesen Kunden/ Debitor gebucht. Der so genannte "Shopkunde" dient auch als Grundlage für Neukunden, die sich im Onlineshop neu registrieren. Von seinen Stammdaten werden Konstanten wie Kostenstelle, Lager, Standort, Kontogruppe u.v.a.m. abgleitet.
Hinweis: Wenn es sich im eine Gastbestellung handelt werden die Rechnungs- und Lieferanschrift nur im Beleg angepasst. Der Shopkunde bleibt in den Stammdaten unverändert.
Standort
Bei Shopify musste bei der Einrichtung ein Standort definiert werden. Damit Bestände von Artikel diesem Standort zugeordnet werden können, muss dieser hier ausgewählt sein. Ist in Shopify nur ein Standort vorhanden, so wird dieser automatisch zugewiesen.
Shopaktiv-Feld Kunde
Gibt an, welches Feld in den SelectLine Kundenstammdaten für die Steuerung genutzt wird, ob ein Kundendatensatz an den Shopify Shop übertragen werden soll oder nicht. Der Standard ist das Standard-Feld der SelectLine "Shopakltiv".
Erläuterung: Werden aus einem SelectLine Mandanten mehrere Onlineshops "bedient" kann es notwendig sein, dass je Shop gesteuert werden soll, welcher Kunde in dem jeweiligen Shop "einkaufen darf".
Shopaktiv-Wert Kunde
Gibt an, welchen Wert das Feld in den SelectLine Kundenstammdaten enthalten muss, damit der Datensatz in den Shopify Shop übertragen werden soll oder nicht. Der Standard ist das Standard-Feld der SelectLine "true".
Shopaktiv-Feld Artikel
Gibt an, welches Feld in den SelectLine Artikelstammdaten für die Steuerung genutzt wird, ob ein Artikeldatensatz an den Shopify Shop übertragen werden soll oder nicht. Der Standard ist das Standard-Feld der SelectLine "Shopaktiv".
Erläuterung: Werden aus einem SelectLine Mandanten mehrere Onlineshops "bedient" kann es notwendig sein, dass je Shop gesteuert werden soll, welcher Artikel in den jeweiligen Shop übertragen werden soll. (Sortimentssteuerung je Shop)
Shopaktiv-Wert Artikel
Gibt an, welchen Wert das Feld in den SelectLine Kundenstammdaten enthalten muss, damit der Datensatz in den Shopify Shop übertragen werden soll oder nicht. Der Standard ist das Standard-Feld der SelectLine "true".
Einstellungen
Maximale Bildgröße
An dieser Stelle kann festgelegt werden, wie groß die zu übertragenen Bilder sein sollen. Die Zahl gibt an, wie viele Pixel die längste Seite des Bildes haben soll. Bei kleineren Bildern wird die Größe belassen. Größere Bilder werden entsprechen verkleinert.
Alternative Artikelgruppen
Im SelectLine Standardsystem ist eine einmalige Artikelgruppenzuordnung je Artikel möglich. In Onlineshops sind zum Teil abweichende Artikelgruppen/ Kategorien üblich und zum Teil auch eine mehrfache Zuordnung einzelner Artikel zu Artikelgruppen.
Ist diese Option aktiviert, werden die alternativen Artikelgruppen verwendet. Die Umsetzung erfolgt in der SelectLine mittels überschaubarer Toolbox-Konfigurationen. Siehe hierzu: LINK
Bestand verwenden
Ist diese Option aktiviert, werden die verfügbaren Selectline Bestände zum Shop übertragen. Bei Stückliste gilt der Bestand des am geringsten verfügbaren Artikels der Stückliste.
Spezielle Bestandsoptionen: Ein Einschränkung der verwendeten Lager oder sogar die mandanten- übergreifende Bestandsanzeige sind möglich. dazu ist im Expertenmodus eine separate Konfiguration in einer JSON-Datei vorgesehen.
Andernfalls wird im Artikel in Shopify unter dem Punkt Inventar die Option "Anzahl verfolgen" deaktiviert.
Trackingnummern importieren
Bei Aktivierung dieser Option wird der Versandstatus nicht nicht zum Shop exportiert. Es besteht nun die Möglichkeit, die Trackingnummern und den Versandstatus direkt im Shop zu verwalten. Beim Bestellimport werden dann die Trackingnummern in die Bestellung hinzugefügt und der Beleg wird wird in den Lieferbeleg übergeben.
Nur Lieferstatus senden, wenn Paketnummer vorhanden
Ist diese Option aktiviert, so wird er Lieferstatus erst zum Shop übermittelt, wenn der Beleg (Belegtyp Versand) eine Paketnummer enthält. Beispiel: Der SelectLine Lieferschein entspricht dem "Belegtyp Versand", wenn über SelectLine Versand (oder manuell) in den Lieferschein eine Paketnummer eingetragen wurde, wird der Lieferstatus in Shopify auf "erledigt" gesetzt und die Paketnummer steht in Shopify zur Verfügung. Generell gilt aber: Der Beleg muss auf "Gedruckt" stehen.
Kunde über Versand informieren
Bei Aktivierung erhält der Kunde eine E-Mail von Shopify, dass der Versandstatus sich geändert hat.
Zusatz hinter Titel
Wird diese Option aktiviert, so wird die "Artikelbezeichnung" und das Feld "Zusatz" gemeinsam in das Shopify-Artikelfeld "Bezeichnung" exportiert.
Versandposition immer anlegen
Wenn aktiv, wird auch bei Versandkosten von 0,00 EUR eine Versandkostenzeile in den SelectLine- Beleg eingetragen.
Nur Bestellungen von bekannten Kunden importieren
Es werden nur Bestellungen importiert, wenn ein zugehöriger Kunde in der SelectLine gefunden werden konnte. Andernfalls wird ein Fehler erzeugt.
Kunden immer anlegen (auch bei Gastbestellung)
Ist es gewünscht, dass Kunden auch bei einer Gastbestellung angelegt werden sollen, so muss diese Option gewählt sein.
Kein Kundenkonto anlegen
Bei dieser Einstellung werden alle Bestellungen als Gastbestellung behandelt. Hierfür wird immer der Shopkunde zugeordnet.
Kunden in SL nicht aktualisieren
Hier werden die bestehenden Kundendaten in der SelectLine nicht aktualisiert. Er erfolgt lediglich eine Zuordnung des Kunden zur Bestellung.
Nettopreise
Hierbei werden die Preise zum Shop als Netto-Preise hochgeladen.
Versandsteuer nachberechnen
Wenn im Shop Artikel mit voller Umsatzsteuer und ermäßigter Steuer vorhanden sind, kann hier die Nachberechnung der Versandkostensteuer aktiviert werden. Hierbei wird den Versandkosten die Steuer zugewiesen, welche den Artikeln mit den höchsten Warenwert im Warenkorb entspricht.
Beispiel:
4x 5,00€ zu 7% = 20€
2x 9,00€ zu 19% = 18€
Dem Versandartikel würden nun 7% MwSt. zugewiesen werden.
Abweichend vom normalen Versandartikel kann optional auch ein Versandartikel für ermäßigte Steuer konfiguriert werden.
Nicht auf Gutschriften prüfen
Wenn im Shop bereits erfüllte Bestellungen reklamiert werden, prüft die Schnittstelle, ob aus der Rechnung Gutschriften erzeugt werden müssen. Dieses Verhalten kann mit dieser Option unterbunden werden.
Zahlungsbedingungen
Hier erfolgt das Mapping der Zahlungsbedingungen der SelectLine und der Zahlungsmethoden aus Shopify.
In Shopify können in den Einstellungen, unter dem Punkt Zahlungen, Zahlungsmethoden definiert werden. Damit diese in der SelectLine bei einer Bestellung richtig zugeordnet werden können, muss ein Mapping stattfinden.
Leider stellt Shopify (noch) keine Übersicht der Zahlungsmethoden per API bereit. Daher werden alle Zahlungsmethoden, die bei einer importierten Bestellung auftauchen, gespeichert. Diese sind dann in der Spalte Shopify aufgelistet und müssen einer entsprechenden Zahlungsbedingung der SelectLine zugeordnet werden, damit diese bei der nächsten Bestellung automatisiert zugewiesen werden kann.
Lieferbedingungen
Hier erfolgt das Mapping der Lieferbedingen der SelectLine und den Shopify-Lieferbedingungen.
In Shopify können in den Einstellungen, unter dem Punkt Versand und Zustellung, Versandtarife für die einzelnen Länder definiert werden. Diese werden in der Spalte Shopify aufgelistet und können den existierenden Versandbedingung der SelectLine zugeordnet werden.
Sprachzuordnung
Wenn der Shopify-Shop mit mehreren Sprachen betrieben wird, kann hier das Mapping vorgenommen werden, damit die korrekte Sprache dem Beleg zugewiesen wird.
Makros
An dieser Stelle können SelectLine-Makros definiert werden, welche nach bestimmten Aktionen ausgeführt werden.
Details dazu finden Sie hier
Experteneinstellungen
Neben den Einstellungen auf der Webseite der Schnittstelle, können diverse Konfigurationen in der config.json
getätigt werden.
Voraussetzung
Die Datei config.json
befindet sich im Installations-Ordner der Schnittstelle. Um Änderungen daran vorzunehmen, sollte zunächst der Dienst des FINN.ghosts gestoppt und nach der Anpassung wieder gestartet werden.
Die Webseite ist nicht erreichbar
Sollte die Webseite der Schnittstelle nicht erreichbar sein, beenden Sie bitte den Dienst bitte über die Eingabeaufforderung (CMD oder Powershell). Sollten Ihnen die angezeigten Fehlermeldungen nicht weiterhelfen, wenden Sie sich bitte an den Support.
config.json
Lagerbestand individuell ermitteln
Um den Lagerbestand für Shopify individuell zu ermitteln, fügen Sie bitte im Object "shopify"
den Wert "customStock"
hinzu. Dieser muss eine SQL-Abfrage enthalten, die den Bestand ermittelt. Dabei ist darauf zu achten, dass das Ergebnis eine Zeile mit der Spalte "Bestand"
zurück liefert. Der Platzhalte für die Artikelnummer muss wie folgt aussehen: '${nummer}'
.
Beispiel:
{
...
"shopify":{
...
"customStock": "SELECT Bestand-Reserviert AS Bestand FROM dbo.SL_vGetFreierArtikelBestandMitLager WHERE Artikelnummer = '${nummer}'",
...
},
...
}
Bestand für bestimmte Artikel auf 0 setzen
Um den Bestand für bestimmte Artikel zu deaktivieren, muss in der config.json
ein Boolean-Feld
des Artikels angegeben werden. Dies kann auch ein Extrafeld sein.
{
...
"shopify":{
...
"zeroStockField": "FreiesKennzeichen1",
...
},
...
}
Bei Variantenartikeln reicht es, den Hauptartikel mit diesem Flag zu versehen. Alles Untervarianten erhalten dann auch den Bestand 0. Stücklistenartikel wirken sich ebenfalls auf die gesamte Stückliste aus.
Verkauf fortsetzen, auch wenn Produkte nicht vorrätig sind
Um Produkte ohne Bestand zu verkaufen, kann in der config.json
ein Boolean-Feld
des Artikels angegeben werden. Dies kann auch ein Extrafeld sein.
{
...
"shopify":{
...
"continueSelling": "FreiesKennzeichen1",
...
},
...
}
Artikel ohne Preise exportieren
Aus Sicherheitsgründen werden Artikel ohne Preise nicht exportiert. Möchte man für bestimmte Artikel dafür eine Ausnahme schaffen, so kann ein Extrafeld (Boolean)
in der Tabelle ART
angelegt werden. Hat dieses Extrafeld den Wert True
, so wird der Artikel trotz fehlenden Preises exportiert.
{
...
"shopify":{
...
"disableSafeguardPriceField": "_EXTRAFELDNAME",
...
},
...
}
Prefix bei IhrAuftrag anpassen
Sollten mehrere Shops am gleichen Mandanten angebunden sind, so muss das Prefix für IhrAuftrag
angepasst werden.
"shopify": {
...
"orderTag": "sfy_",
...
}
Feld für Shop-Kundennummer anpassen
Die Schnittstelle schreibt die Kundennummer aus den Shop in das Feld Shopummer. Dies kann in der config.json
bei kdfeld
angepasst werden.
"shopify": {
...
"kdfeld": "Shopnummer",
...
}
B2B-Funktion für ShopifyPlus
Um die B2B Funktionen von ShopifyPlus nutzen zu können, muss diese aktiviert werden. Hierzu ist status
auf true
zu setzen.
"shopify": {
...
"plus": {
"status": true,
"checkoutToDraft": false,
"editableShippingAddress": false,
"paymentTermsTemplateId": undefined
}
...
},
Weiterhin können Einstellungen für die Unternehmen getroffen werden. Diese werden nur bei der Erstanlage berücksichtigt und können später im Shop für jedes Unternehmen individuell angepasst werden.
checkoutToDraft
|
Bestellungen werden als Entwurf gespeichert und müssen freigeben werden. |
editableShippingAddress
|
Die Versandadresse kann bei der Bestellung angepasst werden. |
paymentTermsTemplateId
|
Die Zahlungsbedingung des Unternehmes. |
Mögliche Zahlungsbedingungen:
Keine Zahlungsbedingung | |
1 | Bei Empfang der Ware |
2 | 7 Tage netto |
3 | 15 Tage netto |
4 | 30 Tage netto |
5 | 60 Tage netto |
6 | 90 Tage netto |
7 | Fester Termin |
8 | 45 Tage netto |
9 | Fällig bei Erfüllung |
Erstes Artikelbild an des Ende
Manche Templates in Shopify zeigen in der Detailansicht das letzte Bild als erstes an. Um dem entgegen zu wirken, kann das erste Bild in der SelectLine als letztes hochgeladen werden. Hier ist folgender Eintrag in der config.json
notwendig:
"shopify": {
...
"firstImgToEnd": true,
...
}
Spezielle Extrafelder
Artikel-TAGs exportieren
SEO Meta Felder
Damit die SEO-Relevanten-Daten im Shop gefüllte werden, müssen 3 spezielle Extrafelder in der Tabelle ART
erstellt und mit entsprechenden Daten befüllte werden:
_METATITLE (Text 70)
_METADESCRIPTION (Text 160)
_METAKEYWORD (Text 255)
Marktplatz-Bestellnummer
Die Bestellnummer von externen Marktplätzen (z.B. Amazon ist im Kopftext des Beleges zu finden. Darüber hinaus, ist es möglich, diese in ein Extrafeld des Beleges zu importieren. Somit ist eine bessere Suche möglich. Das Extrafeld muss wie folgt aussehen:
_SFYMARKETORDERID (Text 255)
Zu lange Adressfelder
In Shopify können die einzelnen Adressfelder mit längeren Texten befüllt werden, als die SelectLine zulässt. In einen solchen Fall wird ein Fehler erzeugt und die Bestellung wird nicht importiert.
Alternativ kann man ein Extrafeld in der Tabelle BELEG
vom Typ Memo
anlegen und dies in der config.json
definieren.
"shopify": {
...
"tooLongAdrField": "_EXTRAFELDNAME",
...
}
Nun wird die Adresse in gekürzter Form dem Beleg hinzugefügt. Die ungekürzte Form ist dann im Extrafeld zu finden.
Bemerkungen / Notizen von Kunden in den Fußtext
Kundenbemerkungen werden in den Kopftext geschrieben. Soll dies aber in den Fußtext, so kann folgende Einstellung getätigt werden:
"shopify": {
...
"noteToFooter": true,
...
}
Zuordnung Versanddienstleister
Beim Senden der Trackinginformationen zum Shopify kann eine Trackingnummer, eine Tracking-URL und ein Versanddienstleister übermittelt werden.
Shopify bietet verschiedene Versanddienstleister an:
Diese müssen nicht mit denen aus der SelectLine übereinstimmen:
Damit DHL Express
zu DHL
zugeordnet werden kann, muss eine Verknüpfung hergestellt werden:
Zeitsteuerung
Grundlagen
Eine allgemeine Beschreibung finden Sie im Systemhandbuch unter Zeitsteuerung
Die Zeitsteuerung kann generell "Aktiv" gesetzt werden. Je Datensegment kann eine feste Übertragungszeit (z.B. 01:00:00 Uhr) oder eine endlose Wiederholung (z.B. all 20 Sekunden) konfiguriert werden. Optional kann eine parallele Ausführung der Übertragungen aktiviert werden.
Mit der parallelen Übertragung und mit zu engen Übertragungs- Zeitfenstern sollte "sparsam" umgegangen werden. Die Bandbreite der Internetverbindung am Installationsort spielt immer noch eine Rolle bei der Verarbeitungsgeschwindigkeit.
Spezifische Funktionen der SelectLine Shopify-Anbindung
Cache aktualisieren
Diese Eintrag benötigt eigentlich keine Zeit Steuerung und sollte nur im Bedarfsfalle aktiviert werden.
Beispiel für Cache aktualisieren: Eine Situation wäre, der Kunde ändert Stammdaten (Beispiel löschen von Artikeln) im Shopify Backend. Als Folge würde es im Log zu einer Fehlermeldung kommen, weil Zuordnungen aus älteren Übertragen nicht mehr gültig sind.
Tools & APPs`- Empfehlungen aus der Praxis
Hier finden Sie APPs mit denen Kunden bereits gute Erfahrungen gemacht haben.
Smart Product Filter & Search
Funktionen
Diese APP implementiert in Shopify Funktionen für:
- Artikelgruppen-Baumstruktur
- Sachmerkmalfilter
- Fehlertolerante Volltextsuche
SelectLine Shopify-Anbindung
Die SelectLine Shopify-Anbindung liefert die für die APP notwendigen Daten aus der SelectLine Warenwirtschaft.
Das sind insbesondere: Artikelgruppen/ Alternative Artikelgruppen, Artikeldaten, Sachmerkmale, Variantenmerkmale