Kunden und Bestellungen

Kundendaten, B2B, Bestellabwicklung, Rückmeldungen und Gutschriften.

Kunden

Kunden können in beide Richtungen entstehen: Bestehende SelectLine-Kunden werden in den Shop übertragen, damit sie sich dort anmelden können. Und Kunden, die im Shop bestellen, werden in der SelectLine angelegt.

Betreibt der Shop Shopify Plus mit B2B, entstehen statt einzelner Kunden Unternehmen mit Kontakten — siehe B2B mit Shopify Plus.

Kunden in den Shop übertragen

Die Aufgabe heißt Exportiere Kunden. Beim ersten Lauf werden alle Kunden mit gesetztem Kundenkennzeichen übertragen, danach nur noch die geänderten.

ShopAktiv-Feld

Das Kundenfeld, das bestimmt, ob der Kunde in den Shop gehört. Zu finden unter Shopify → Einstellungen → Kunden.

Shopkundennummer-Feld

In diesem SelectLine-Feld merkt sich FINN.ghost die Shopify-Kundennummer. Beim Anlegen wird sie dort zurückgeschrieben.

Dieses Feld ist die Verbindung zwischen beiden Systemen. Wird es geleert, verliert die Schnittstelle die Zuordnung und legt beim nächsten Lauf einen zweiten Kunden im Shop an.

Zusätzlich lassen sich weitere Felder als Suchfelder hinterlegen. Der Bestellimport sucht den Kunden dann auch dort — praktisch, wenn Shop-Kundennummern historisch in verschiedenen Feldern gepflegt wurden.

Pflichtangaben

Ein Kunde wird übersprungen, wenn keine gültige E-Mail-Adresse vorhanden ist.

Geprüft wird auf ein @ und darauf, dass kein Leerzeichen enthalten ist. Die übersprungenen Kunden stehen im Protokoll und sind damit eine gute Arbeitsliste für die Datenpflege.

Was übertragen wird

Im Shop Aus der SelectLine
Vor- und Nachname Kundenstamm
E-Mail Kundenstamm
Telefon Telefon 1
Währung Währung des Kunden
Standardadresse Straße, PLZ, Ort, Land, Firma, Zusätze
Metafelder Extrafelder der Hauptadresse aus dem CRM

Neue Kunden zur Kontoerstellung einladen

Standardmäßig verschickt Shopify beim Anlegen keine Einladung. Mit dieser Einstellung erhält der Kunde eine E-Mail, über die er sein Kundenkonto aktivieren kann.

Kunden aus Bestellungen

Bestellt jemand im Shop, der in der SelectLine noch nicht existiert, wird er angelegt. Als Vorlage dient der Shopkunde — dessen Vorbelegungen werden übernommen und mit den Bestelldaten überschrieben.

Gesucht wird der bestehende Kunde in dieser Reihenfolge:

  1. über das Shopkundennummer-Feld und die zusätzlichen Suchfelder
  2. über die E-Mail-Adresse — im Kundenstamm und in den CRM-Adressen
  3. kein Treffer: der Kunde wird neu angelegt

Weil die E-Mail-Adresse als zweites Kriterium gilt, laufen zwei SelectLine-Kunden mit derselben E-Mail auf denselben Shop-Kunden zusammen. In Betrieben mit einer Sammeladresse für mehrere Ansprechpartner lohnt hier ein Blick.

Nummernkreis für neue Kunden

Ist ein Nummernkreis hinterlegt, erhalten neu angelegte Shop-Kunden eine Nummer daraus — fortlaufend ab der höchsten bereits vergebenen. Damit bleiben Shop-Kunden im Kundenstamm erkennbar.

Sonderfälle

Nur Bestellungen von bekannten Kunden importieren

Findet sich kein Kunde, bricht der Import dieser Bestellung mit einem Fehler ab, statt einen Kunden anzulegen. Der Weg für Shops mit geschlossenem Kundenkreis.

Kein Kundenkonto anlegen

Alle Bestellungen laufen auf den Shopkunden. Sinnvoll, wenn keine Kundenpflege im ERP gewünscht ist.

Marktplatzbestellungen als Gastbestellungen anlegen

Bestellungen, die nicht aus dem Webshop kommen — Amazon, eBay, Kaufland —, laufen auf den Shopkunden statt auf einen eigenen Kunden.

Kunden in SL nicht aktualisieren

Bestehende Kunden werden beim Bestellimport nicht überschrieben. Sinnvoll, wenn die Kundendaten im ERP als führend gelten.

Adresse des Shopkunden verwenden

Der Beleg erhält die Adresse des Shopkunden statt der Adresse aus der Bestellung. Die Lieferadresse aus der Bestellung wird dabei trotzdem gesetzt.

Kundenadresse aus SL in Beleg verwenden

Umgekehrt: Der Beleg erhält die im Kundenstamm gepflegte Adresse, nicht die Rechnungsadresse aus der Bestellung.

Kassenbestellungen

Bestellungen aus dem Shopify-Kassensystem laufen immer auf den Shopkunden und erhalten im Beleg den Namen POS Kunde.

Shopkunde je Herkunft oder Tag

Der Shopkunde lässt sich je Verkaufskanal — Web, Amazon, eBay — und je Bestell-Tag unterschiedlich festlegen. Damit landen Marktplatzbestellungen auf eigenen Sammelkunden und sind in der Auswertung trennbar.

Weiter

B2B mit Shopify Plus

Shopify Plus kennt neben Endkunden auch Unternehmen mit mehreren Ansprechpartnern, eigenen Adressen und Zahlungszielen. Ist B2B eingeschaltet, überträgt FINN.ghost die SelectLine-Kunden als Unternehmen statt als einzelne Kunden.

Die Umschaltung erfolgt über eine Einstellung. Sie verändert das Verhalten des Kundenexports vollständig — vorher angelegte Einzelkunden bleiben unberührt im Shop stehen.

Was aus einem Kunden wird

Im Shop Aus der SelectLine
Unternehmen Kunde, Name aus Firma oder Nachname
Externe ID Kundennummer
Steuernummer USt-IdNr.
Rechnungsadresse Adresse des Kunden
Lieferadresse Standardlieferadresse, sonst Rechnungsadresse
Kontakte CRM-Adressen zur Hauptadresse des Kunden
Metafelder Extrafelder des Kunden

Pflichtangaben

Straße und Land sind Pflicht, außerdem Firma oder Nachname. Fehlt eines davon, bricht der Export dieses Kunden mit einer Meldung ab.

Kontakte und Rollen

Jede CRM-Adresse zur Hauptadresse des Kunden wird ein Firmenkontakt. Erforderlich sind E-Mail sowie Vor- oder Nachname; andere werden übersprungen und im Protokoll vermerkt.

Die Rollen setzt FINN.ghost so:

Rolle im Shop Wer
Location admin der Standardansprechpartner des Kunden
Ordering only alle weiteren Kontakte

Der Standardansprechpartner wird zusätzlich als Hauptansprechpartner des Unternehmens gesetzt.

Ist der Kunde inaktiv oder das Kundenkennzeichen nicht gesetzt, werden allen Kontakten die Rollen entzogen. Die Kontakte bleiben bestehen, können sich aber nicht mehr anmelden und nicht mehr bestellen. Das ist der Weg, einen B2B-Kunden zu sperren.

Entfallene Kontakte

Wird eine CRM-Adresse in der SelectLine gelöscht, räumt FINN.ghost im Shop auf:

Damit bleibt die Bestellhistorie erhalten und der Zugang ist trotzdem entzogen.

Wenn die E-Mail schon vergeben ist

Existiert im Shop bereits ein Endkunde mit derselben E-Mail-Adresse, kann kein neuer Firmenkontakt entstehen. FINN.ghost erkennt das, sucht den bestehenden Kunden und verknüpft ihn als Kontakt mit dem Unternehmen.

Einkaufserlebnis

Drei Einstellungen bestimmen, wie B2B-Kunden im Shop bestellen:

Bestellung als Entwurf

Der Warenkorb wird nicht direkt zur Bestellung, sondern zu einem Bestellentwurf, der erst geprüft und freigegeben wird.

Lieferadresse bearbeitbar

Legt fest, ob der Kunde beim Bestellen von der hinterlegten Lieferadresse abweichen darf.

Zahlungsbedingungsvorlage

Die Shopify-Zahlungsbedingungsvorlage, die für das Unternehmen gilt — etwa „Zahlung innerhalb 30 Tagen".

Bestellungen von Unternehmen

Bei B2B-Bestellungen entfällt die Prüfung auf vollständige Bezahlung, weil mit Zahlungsziel gearbeitet wird.

FINN.ghost übernimmt zusätzlich:

Ist der Kunde in der SelectLine inaktiv oder das Kundenkennzeichen nicht gesetzt, wird die Bestellung nicht importiert. Im Protokoll steht der Hinweis, dass der Kunde inaktiv ist. Das verhindert, dass gesperrte Kunden über den Shop weiter bestellen.

Weiter

Bestellungen

Bestellungen

Die Aufgabe Bestellungen importieren holt Bestellungen aus dem Shop und legt sie als Beleg in der SelectLine an.

Welche Bestellungen abgeholt werden

Geholt wird, was sich seit dem letzten Lauf geändert hat — unabhängig vom Status. Anschließend prüft FINN.ghost je Bestellung, ob sie importiert werden kann.

Eine Bestellung wird übersprungen, wenn:

Grund Hinweis
Tag ImportError ein früherer Import ist gescheitert
Tag ImportIgnore bewusst vom Import ausgenommen
offener Betrag ungleich 0 noch nicht bezahlt, außer bei Import oder B2B
keine Positionen leere Bestellung
kein Kunde außer bei Kassenbestellungen
keine Adressen außer bei Kassenbestellungen
Beleg existiert bereits erkannt über die Bestellnummer im Beleg

Die Tags ImportError und ImportIgnore

Scheitert ein Import, setzt FINN.ghost am Shopify-Auftrag den Tag ImportError und versucht ihn nie wieder. Das verhindert Endlosschleifen — bedeutet aber, dass die Bestellung liegen bleibt, bis jemand eingreift.

Vorgehen bei ImportError: Ursache im Protokoll nachlesen, in der SelectLine beheben, dann den Tag im Shopify-Adminbereich entfernen. Beim nächsten Lauf wird die Bestellung erneut versucht.

Mit ImportIgnore lässt sich eine Bestellung dauerhaft ausnehmen — etwa eine Testbestellung.

Welcher Beleg entsteht

Der Belegtyp richtet sich nach der Zahlungsart: Vorkasse-Zahlarten gehen in den Vorkasse-Belegtyp, alle anderen in den Bestell-Belegtyp.

Der Beleg trägt die Kennung sfy_<Bestellnummer>_<interne ID> im dafür eingestellten Feld, üblicherweise Ihr Auftrag. Daran erkennt die Schnittstelle den Beleg später wieder.

Dieses Feld darf an Shop-Belegen nicht verändert werden. Ohne die Kennung findet die Schnittstelle den Beleg nicht mehr und meldet Versand und Zahlung nicht zurück.

Was im Belegkopf landet

Im Beleg Aus der Bestellung
Ihr Auftrag sfy_<Bestellnummer>_<ID>
Kunde und Rechnungsadresse Rechnungsadresse, bei B2B die des Unternehmensstandorts
Lieferadresse nur wenn sie von der Rechnungsadresse abweicht
Währung Shop-Währung oder Kundenwährung
Preistyp brutto, wenn die Bestellung Steuer enthält
Zahlungsbedingung, Bankbezug über die Zuordnung der Zahlungsarten
Lieferbedingung über die Zuordnung der Versandarten
Zahlungsreferenz Autorisierung der erfolgreichen Transaktion
Kopf- oder Fußtext Notiz aus der Bestellung
Sprache über die Sprachzuordnung
Lager und Lagerplatz bei echter Standorttrennung aus dem Fulfillment
Auftragsdatum Bestelldatum, auf Wunsch mit Uhrzeit

Zusätzlich lassen sich E-Mail-Adresse und Telefonnummer in eigene Belegfelder schreiben, und Shopify-Metafelder der Bestellung auf Belegfelder abbilden.

Zu lange Adressen

Die SelectLine begrenzt die Feldlängen: Nachname und Firma 80, Vorname 40, PLZ 10, Telefon 30 Zeichen.

Standardmäßig bricht der Import ab, wenn eine Angabe zu lang ist. Hinterlegt man ein Feld für zu lange Adressen, wird stattdessen gekürzt und der vollständige Originalwert in dieses Belegfeld geschrieben. Das ist die empfehlenswerte Einstellung — sonst bleiben Bestellungen mit langen Firmennamen dauerhaft liegen.

Marktplatzbestellungen

Bei Bestellungen über Amazon, eBay oder Kaufland liest FINN.ghost die Marktplatz-Bestellnummer aus den Bestellattributen und schreibt sie in ein eigenes Belegfeld. Damit lässt sich der Beleg der Marktplatzbestellung zuordnen.

Positionen

Jede Position der Bestellung wird zu einer Belegposition. Die Artikelnummer wird über den Cache zur Shopify-Variante ermittelt, im Zweifel über die SKU.

Findet sich die Artikelnummer nicht, wird die Bestellung mit dem Tag ImportError versehen und übersprungen. Im Protokoll steht der Hinweis, den Cache zu erneuern. Das ist der häufigste Grund für gescheiterte Importe.

Rabatte

Rabatte werden auf den Promotion-Artikel gebucht, mit Bezeichnung und Rabattcode. Über Rabattpositionen aufsummieren pro Rabattcode entsteht statt vieler kleiner Zeilen eine Position je Code.

Geschenkkarten

Mit Geschenkkarte bezahlte Anteile werden ebenfalls als Rabattposition gebucht, mit den letzten Zeichen der Karte in der Bezeichnung, Steuer 0.

Positionsbezeichnung aus dem Shop

Über eine Einstellung lässt sich die Bezeichnung aus der Bestellung als Positionsbezeichnung übernehmen, statt der Artikelbezeichnung aus der SelectLine.

Versandkosten

Die Versandkosten werden anteilig nach Steuersatz verteilt — siehe Zahlungs- und Versandarten. Rabatte auf die Versandkosten werden vorher abgezogen.

Nach der Beleganlage

Positionsprüfung

FINN.ghost vergleicht, wie viele Positionen übergeben wurden und wie viele im Beleg angekommen sind. Bei Abweichung gilt der Import als gescheitert.

Diese Prüfung fängt den Fall, dass die SelectLine eine Position stillschweigend verwirft — etwa wegen eines gesperrten Artikels. Ohne sie hätte man einen zu günstigen Beleg, ohne es zu merken.

Konten der Rabattpositionen

Rabattpositionen erhalten das je Steuersatz eingestellte Erlöskonto. Ohne diese Angabe übernehmen sie Konto und Steuer der vorangehenden Artikelposition.

Fertigungsaufträge

Ist in der SelectLine eingestellt, dass beim Speichern Fertigungsaufträge entstehen, erzeugt FINN.ghost zu Positionen mit Arbeitsplan einen Fertigungsauftrag und verknüpft ihn mit der Belegposition.

Makro

Nach dem Aufbau des Belegs läuft das Makro Bestellung angelegt, mit Belegtyp und Belegnummer als Parameter.

Wenn beim Import etwas schiefgeht

Jede Bestellung wird für sich verarbeitet. Läuft eine auf einen Fehler, wird der angefangene Beleg gelöscht, die Bestellung mit ImportError markiert und die nächste bearbeitet.

Ein Sonderfall wird eigens behandelt: Hat der Kunde eine Belegsperre, erscheint eine verständliche Meldung mit Kundennummer und Name, statt eines technischen Fehlers.

Weiter

Versand und Rückmeldungen

Versand und Rückmeldungen

Nach dem Bestellimport melden drei weitere Schritte den Fortschritt zurück in den Shop. Sie laufen am Ende derselben Aufgabe Bestellungen importieren.

  1. Versand und Trackingnummern
  2. Bestelländerungen aus der SelectLine
  3. Zahlungseingang bei Vorkasse

Berücksichtigt werden nur Belege, die aus dem Shop stammen. Von Hand erfasste Belege bleiben unberührt.

Versand melden

Erreicht ein Beleg den Belegtyp Versand und wird gedruckt, meldet FINN.ghost die Bestellung im Shop als versendet und übergibt Paketnummer, Transportdienstleister und Sendungsverfolgungslink.

Erkannt wird der Versand über den Druckvorgang. Zusätzlich lösen neu erfasste Paketnummern eine Meldung aus, auch wenn der Beleg schon vorher gedruckt wurde.

Nur Lieferstatus senden, wenn Paketnummer vorhanden

Meldet erst, wenn eine Paketnummer vorliegt. Findet sich am Versandbeleg keine, sucht FINN.ghost in den Vorgängerbelegen.

Kunde über Versand informieren

Legt fest, ob Shopify die Versandbenachrichtigung verschickt. Voreingestellt ist aus.

Gemeldet wird gegen das erste offene Fulfillment der Bestellung. Ist keines offen — etwa weil im Shop schon manuell versendet wurde —, unterbleibt die Meldung und das Protokoll weist darauf hin.

Trackingnummern stattdessen importieren

Läuft der Versand über Shopify, kehrt die Einstellung Trackingnummern importieren die Richtung um: FINN.ghost prüft die Shop-Bestellungen und erzeugt zu vollständig versendeten Bestellungen den Versandbeleg als Nachfolger in der SelectLine. Die Trackingnummern kommen in die Paketverwaltung.

Storniert der Shop eine Bestellung, entsteht der Versandbeleg ebenfalls, damit die Belegkette schlüssig bleibt.

Beide Richtungen schließen sich aus. Ist der Import aktiv, wird kein Versand mehr an Shopify gemeldet.

Bestelländerungen an Shopify zurückmelden

Ist ein Belegtyp Bestelländerungen hinterlegt, überträgt FINN.ghost Änderungen aus der SelectLine zurück in die Shopify-Bestellung.

Abgeglichen werden:

Änderung in der SelectLine Wirkung in Shopify
Menge geändert Positionsmenge wird angepasst
Position entfernt Menge wird auf 0 gesetzt, Ware eingebucht
Position hinzugefügt Artikel wird zur Bestellung hinzugefügt
Versandkosten geändert Versandposition wird ersetzt

Das ist die einzige Stelle, an der die Schnittstelle eine Bestellung im Shop inhaltlich verändert. Der Kunde sieht die geänderte Bestellung in seinem Konto, und Shopify bucht bei entfernten Mengen den Bestand zurück. Wer das nicht möchte, lässt den Belegtyp leer.

Berücksichtigt werden nur Belege, die nicht von der Schnittstelle selbst bearbeitet wurden — eigene Änderungen lösen also keine Rückmeldung aus. Und nur, wenn sich tatsächlich etwas geändert hat.

Rabattpositionen bleiben außen vor. Sie entstehen aus Shopify-Rabatten und würden beim Zurückschreiben doppelt gezählt.

Zahlungseingang bei Vorkasse

Ist ein Vorkassebeleg in der SelectLine als gezahlt verbucht, markiert FINN.ghost die Bestellung im Shop als bezahlt. Der Kunde sieht, dass seine Überweisung angekommen ist.

Erster Lauf nach der Einrichtung

Beim allerersten Lauf wird nichts rückwirkend gemeldet. Die Schnittstelle merkt sich ab diesem Zeitpunkt, was neu ist.

Das ist Absicht: Sonst würde die Inbetriebnahme alle historischen Belege an den Shop melden und Kunden alte Versandbestätigungen erhalten.

Weiter

Gutschriften und Storni

Gutschriften und Storni

Erstattet man im Shopify-Adminbereich einen Betrag oder storniert eine Bestellung, kann FINN.ghost daraus in der SelectLine die passende Belegkette erzeugen: Rechnung als Vorgänger und darauf die Gutschrift.

Diese Verarbeitung ist standardmäßig ausgeschaltet. Sie greift tief in die Belegkette ein und erzeugt Belege ohne weitere Rückfrage. Vor dem Einschalten sollte der Ablauf mit dem Support besprochen und in einem Testmandanten geprüft werden.

Was passiert

Zu jeder Rückerstattung im Shop:

  1. Existiert noch keine Rechnung zur Bestellung, wird sie als Nachfolger des Auftrags erzeugt — mit genau den erstatteten Positionen und Mengen.
  2. Darauf entsteht eine Gutschrift, verknüpft als Nachfolger der Rechnung.
  3. Die Gutschrift erhält die Shopify-Erstattungsnummer im Feld Ihr Zeichen, die Zahlungsreferenz der Erstattung und die Notiz aus dem Shop als Kopftext.

Sind damit alle Positionen der Rechnung gutgeschrieben, werden zusätzlich die Versandkosten gutgeschrieben.

Über Ihr Zeichen erkennt FINN.ghost eine bereits verarbeitete Erstattung. Eine Erstattung wird deshalb nie doppelt gutgeschrieben, auch wenn die Bestellung mehrfach abgeholt wird.

Zwei Belegtypen für Gutschriften

Fall Belegtyp
Ware wird zurück ins Lager gebucht Belegtyp Gutschrift
Ware wird nicht zurückgebucht Belegtyp Gutschrift ohne Einlagerung

Shopify unterscheidet beim Erstatten, ob die Ware wieder eingelagert wird. Ist ein zweiter Belegtyp hinterlegt, folgt FINN.ghost dieser Unterscheidung — sonst gilt für beide Fälle derselbe Belegtyp.

Wann geprüft wird

Auf Erstattungen wird geprüft, wenn eine Bestellung vollständig storniert ist — also alle Positionen zurückgegeben oder eingelagert wurden. Zusätzlich beim Import der Trackingnummern, falls dieser Weg aktiv ist.

Voraussetzungen und Grenzen

Die erstatteten Positionen müssen im Auftrag mit ausreichender offener Menge vorhanden sein. Ist eine Position dort nicht auffindbar — etwa weil sie in der SelectLine gelöscht oder bereits vollständig verwendet wurde —, bricht die Verarbeitung mit einer Meldung ab und es entsteht keine Gutschrift.

Weitere Punkte:

Empfehlung

Für die meisten Betriebe ist der sinnvolle Weg, Gutschriften in der SelectLine zu buchen und im Shop nur die Zahlung zu erstatten. Die automatische Verarbeitung lohnt sich vor allem bei hohem Retourenvolumen und sauber geführten Belegketten.

Weiter

Zeitplan der Übertragungen