Laufender Betrieb Zeitplan, Cache, Vorgehen bei fehlenden Daten und häufige Fragen. Zeitplan der Übertragungen Unter Shopify → Zeitsteuerung wird festgelegt, wie oft jede Aufgabe läuft. Auf derselben Seite stehen das Protokoll, der Zeitpunkt der letzten Ausführung und der nächste geplante Termin. Die Aufgaben Aufgabe Was sie tut Artikelgruppen exportieren Sammlungen anlegen und aktualisieren Artikel exportieren (geänderte) geänderte Artikel mit Bildern Artikel exportieren (geänderte, ohne Bilder) dasselbe ohne Bildübertragung Artikel exportieren (alle) Vollexport mit Bildern Artikel exportieren (alle, ohne Bilder) Vollexport ohne Bilder Preise exportieren Preis, Streichpreis und Katalogpreise Bestand exportieren (geänderten) Bestände mit Bewegung seit dem letzten Lauf Bestand exportieren alle Bestände, zusätzlich Statuspflege Bestellungen importieren Bestellungen holen, Versand und Zahlung zurückmelden Sachmerkmale und Extrafelder aktualisieren Metafeld-Definitionen anlegen Exportiere Kunden Kunden bzw. Unternehmen übertragen Dateien aktualisieren Journaldateien hochladen und zuordnen Cache aktualisieren Zuordnungstabelle neu aufbauen, siehe Der Cache Die Aufgaben laufen nacheinander Das ist der wichtigste Punkt bei der Planung: Aufgaben laufen nicht gleichzeitig. Startet eine, während eine andere arbeitet, wartet sie. Läuft ein Vollexport aller Artikel mehrere Stunden, warten in dieser Zeit alle anderen Aufgaben — auch der Bestellimport. Vollexporte gehören daher auf eine feste Uhrzeit in der Nacht und nicht in ein Intervall. Ein Start von Hand über die Oberfläche umgeht das Warten und läuft sofort. Shopify gibt das Tempo vor Shopify begrenzt die Anzahl der Anfragen. FINN.ghost pausiert selbstständig, wenn das Kontingent knapp wird. Deshalb lässt sich ein Vollexport nicht durch kürzere Intervalle beschleunigen — man erreicht nur, dass sich die Läufe gegenseitig blockieren. Bei großen Sortimenten ist die Nacht der richtige Ort für Vollläufe. Empfehlung für einen mittelgroßen Shop Aufgabe Empfehlung Begründung Bestellungen importieren alle 5 Minuten Bestellungen sollen zeitnah im ERP stehen Bestand exportieren (geänderten) alle 5 Minuten häufigste Änderung im Tagesgeschäft Artikel exportieren (geänderte, ohne Bilder) alle 15 Minuten Texte und Stammdaten zeitnah, ohne Bildlast Artikel exportieren (geänderte) stündlich zieht die Bilder nach Preise exportieren stündlich erfasst ablaufende Aktionspreise Exportiere Kunden stündlich Dateien aktualisieren nachts, feste Zeit ändert sich selten Artikelgruppen exportieren nachts, feste Zeit ändert sich selten Sachmerkmale und Extrafelder aktualisieren nachts, feste Zeit nur bei Strukturänderungen relevant Bestand exportieren nachts, feste Zeit Korrekturlauf, pflegt auch den Status Artikel exportieren (alle, ohne Bilder) nachts, feste Zeit Korrekturlauf Cache aktualisieren nachts, feste Zeit siehe Der Cache Artikel exportieren (alle) nur von Hand läuft je nach Artikelzahl viele Stunden Warum die nächtlichen Korrekturläufe wichtig sind Der Änderungslauf erkennt Artikel daran, dass sich der Artikelstamm geändert hat. Zwei Dinge entgehen ihm: Preisänderungen und ablaufende Aktionen — dafür gibt es Preise exportieren. Alles, was sich nur in Nebentabellen ändert — dafür der nächtliche Vollauf ohne Bilder. Ohne diese Läufe können Änderungen dauerhaft im Shop fehlen. Besonders auffällig bei Aktionspreisen: Eine abgelaufene Aktion bleibt im Shop stehen, bis der Preislauf sie korrigiert. Was im Protokoll steht Das Protokoll zeigt den Fortschritt, übersprungene Datensätze und Fehler. Ein Lauf gilt als erfolgreich beendet, auch wenn alle Datensätze übersprungen wurden. Der Abschluss allein ist also kein Nachweis dafür, dass alles im Shop angekommen ist — dafür muss man ins Protokoll schauen. Siehe Wenn etwas nicht im Shop ankommt. Der Cache Shopify vergibt für jedes Produkt, jede Variante, jede Sammlung und jedes Metafeld eine eigene interne Nummer. Diese Nummern stehen nirgends in der SelectLine. FINN.ghost führt deshalb eine eigene Zuordnungstabelle — den Cache. Der Cache ist keine Kopie der Daten, sondern nur ein Verzeichnis: „SelectLine-Artikel 4711 ist im Shop das Produkt mit der Nummer 123456789". Ohne diesen Eintrag findet die Schnittstelle den Artikel im Shop nicht wieder. Was im Cache steht Zuordnung Wofür sie gebraucht wird Artikelnummer → Produkt Artikel wiederfinden statt doppelt anlegen Artikelnummer → Variante Preis und Bestand setzen Artikelnummer → Sammlungen Zuordnung nicht doppelt anlegen Artikelgruppe → Sammlung Sammlung wiederfinden Sachmerkmal → Metafeld Definition nicht doppelt anlegen Extrafeld → Metafeld Definition nicht doppelt anlegen Kundennummer → Unternehmen B2B-Unternehmen wiederfinden CRM-Adresse → Firmenkontakt B2B-Kontakte wiederfinden Zahlungsarten Liste für die Zuordnung der Zahlungsbedingungen Wann er erneuert werden muss Immer, wenn im Shopify-Adminbereich Produkte, Varianten oder Sammlungen gelöscht oder von Hand angelegt wurden. Der Cache weiß davon nichts. Die Folgen eines veralteten Caches sind typisch und gut erkennbar: Symptom Ursache Artikel entsteht im Shop doppelt Produkt gelöscht, Cache zeigt noch darauf Bestellimport meldet „Artikelnummer nicht gefunden" Variante nicht im Cache Preis- oder Bestandslauf meldet „VariantID nicht gefunden" Variante nicht im Cache Sammlungszuordnung entsteht doppelt Sammlung im Shop neu angelegt Wie man ihn erneuert Die Aufgabe Cache aktualisieren unter Shopify → Zeitsteuerung starten. Sie verwirft die Tabelle und baut sie vollständig aus dem Shop neu auf: alle Sammlungen, alle Produkte mit ihren Varianten, alle Metafeld-Definitionen und — bei Shopify Plus — alle Unternehmen mit ihren Kontakten. Das ist ein vollständiger Durchlauf durch den Shop und dauert bei großen Sortimenten entsprechend lange. Während er läuft, warten alle anderen Aufgaben. Der Lauf gehört deshalb in die Nacht — und nach jedem größeren Eingriff im Shopify-Adminbereich einmal von Hand angestoßen. Die Zuordnung eines Produkts erfolgt über die SKU seiner ersten Variante. Ist das ein Variantenartikel, wird der Hauptartikel aus der SelectLine ermittelt. Unbekannte Produkte archivieren Unbekannte Produkte archivieren Ist diese Einstellung aktiv, archiviert der Cache-Lauf zusätzlich alle Produkte, die keiner SelectLine-Artikelnummer zuzuordnen sind, oder deren Artikel nicht mehr für den Shop freigegeben ist. Damit werden auch Produkte archiviert, die absichtlich nur im Shop existieren — etwa reine Shop-Artikel ohne Gegenstück in der SelectLine. Vor dem Einschalten prüfen, ob es solche Produkte gibt. Der Cache und die Datensicherung Der Cache liegt als Datei im Arbeitsverzeichnis des Dienstes. Er ist kein schützenswerter Datenbestand: Geht er verloren, baut die Aufgabe Cache aktualisieren ihn vollständig neu auf. Nach einem Serverumzug oder einer Neuinstallation ist der Cache leer. Bevor irgendein Artikel- oder Bestellauf startet, muss deshalb Cache aktualisieren durchgelaufen sein — sonst entstehen alle Produkte im Shop doppelt. Weiter Wenn etwas nicht im Shop ankommt Wenn etwas nicht im Shop ankommt Die meisten Fälle lassen sich in wenigen Minuten selbst klären. Diese Seite geht die häufigsten Situationen der Reihe nach durch. Ein Artikel fehlt im Shop 1. Ist das ShopAktiv-Feld gesetzt? In der Artikelmaske das bei der Einrichtung vereinbarte Kennzeichen prüfen. Das ist mit Abstand die häufigste Ursache. 2. Ist der Artikel inaktiv? Inaktive Artikel gehen nicht in den Shop. 3. Steht das Produkt im Shop als Entwurf? Bei aktivem Neue Artikel als Entwurf hochladen landet ein neuer Artikel als Entwurf und ist nicht sichtbar, bis er im Adminbereich freigegeben wird. Solange er dort steht, überspringt ihn auch der Bestandslauf. 4. Läuft die Aufgabe überhaupt? Unter Shopify → Zeitsteuerung nachsehen, ob Artikel exportieren (geänderte) ein Intervall hat und wann sie zuletzt gelaufen ist. Steht die Aufgabe dauerhaft auf wartend, blockiert ein großer Lauf. 5. Was sagt das Protokoll? Im Protokoll nach der Artikelnummer suchen: Meldung enthält Bedeutung keine Bezeichnung die Artikelbezeichnung ist leer ist nicht ShopAktiv Freigabekennzeichen nicht gesetzt ist Inaktiv Artikel ist inaktiv hat kein Preis kein Preis in der eingestellten Preisgruppe hat keine Artikelgruppe keine Gruppe zugeordnet mehr als 3 Merkmale Grenze von Shopify, Variantenartikel wird abgewiesen Variante … hat keine Merkmale Merkmale an der Variante fehlen Ein Artikel ist doppelt im Shop Fast immer ein veralteter Cache: Das Produkt wurde im Adminbereich gelöscht oder von Hand angelegt. Vorgehen: Das überzählige Produkt im Shopify-Adminbereich löschen, dann Cache aktualisieren starten. Siehe Der Cache. Ein geänderter Preis kommt nicht an Wurde nur der Preis geändert, ohne den Artikel selbst anzufassen, erkennt der Änderungslauf das nicht. Die Aufgabe Preise exportieren von Hand starten oder auf den nächsten geplanten Lauf warten. Dasselbe gilt für abgelaufene Aktionspreise: Sie verschwinden erst mit dem nächsten Preislauf aus dem Shop. Der Bestand stimmt nicht Prüfpunkt Hinweis Standortzuordnung ohne Zuordnung wird kein Bestand übertragen Produkt im Entwurfsstatus wird vom Bestandslauf übersprungen Bestandsführung abgeschaltet global oder über das Artikelkennzeichen Feld für Bestand 0 Kennzeichen am Artikel oder an einer Stücklistenkomponente Nachkommastellen der Bestand wird abgeschnitten, 2,7 wird zu 2 reservierte Menge wird standardmäßig abgezogen Eine Bestellung fehlt in der SelectLine 1. Hat die Bestellung den Tag ImportError? Im Shopify-Adminbereich nachsehen. Ist der Tag gesetzt, ist ein früherer Import gescheitert und wird nicht wiederholt. Vorgehen: Ursache im Protokoll nachlesen, in der SelectLine beheben, dann den Tag entfernen. Beim nächsten Lauf wird die Bestellung erneut versucht. 2. Hat die Bestellung den Tag ImportIgnore? Dann ist sie bewusst ausgenommen. 3. Ist die Bestellung bezahlt? Nur vollständig bezahlte Bestellungen werden importiert. Für Zahlungsarten wie Rechnung muss der Haken Import bei der Zahlungsart gesetzt sein — siehe Zahlungs- und Versandarten. 4. Bekannte Ursachen Ursache Erkennbar an Artikelnummer nicht im Cache Meldung „Bitte Cache erneuern" Adressangabe zu lang Meldung über die Feldlänge Kunde hat Belegsperre Meldung mit Kundennummer und Name Kunde inaktiv (B2B) Meldung, dass der Kunde inaktiv ist Shopkunde nicht definiert Abbruch mit entsprechendem Hinweis Positionsanzahl stimmt nicht Meldung über abweichende Positionsanzahl Der Belegbetrag weicht von der Bestellung ab Häufigste Ursache: Es ist kein Promotion Artikel hinterlegt. Rabatte und Geschenkkarten werden dann übersprungen, und der Beleg ist teurer als die Bestellung. Siehe Zahlungs- und Versandarten. Zweite Möglichkeit: Artikelpreise aus SelectLine verwenden ist aktiv. Dann rechnet die SelectLine die Preise selbst, und Abweichungen zum Shop sind möglich. Der Versand wird nicht gemeldet Prüfpunkt Hinweis Belegtyp Versand hinterlegt ohne diese Angabe wird nichts gemeldet Beleg gedruckt der Druck löst die Meldung aus Paketnummer vorhanden bei aktivem Nur Lieferstatus senden, wenn Paketnummer Kennung im Feld Ihr Auftrag ohne sfy_… findet die Schnittstelle den Beleg nicht offenes Fulfillment in Shopify wurde im Shop schon manuell versendet, unterbleibt die Meldung Trackingnummern importieren ist diese Einstellung aktiv, wird nichts gemeldet Regelmäßige Kontrolle Zwei Auswertungen, die sich im Alltag bewährt haben: Bestellungen mit ImportError: im Shopify-Adminbereich nach diesem Tag filtern. Die Liste sollte leer sein; jeder Eintrag ist eine Bestellung, die nicht im ERP steht. Freigegebene Artikel ohne Shop-Eintrag: die Anzahl der Artikel mit Freigabekennzeichen mit der Produktanzahl im Shop vergleichen. Die Differenz sind die Artikel mit unvollständigen Daten. Wenn es dabei bleibt Wenden Sie sich an den Support und halten Sie bereit: die betroffene Artikel-, Kunden- oder Bestellnummer den Auszug aus dem Protokoll zum Zeitpunkt des Laufs welche Aufgabe zuletzt gelaufen ist ob zwischenzeitlich im Shopify-Adminbereich Produkte geändert wurden Häufige Fragen Muss ich im Shopify-Adminbereich noch etwas pflegen? Im Normalfall nicht. Produkte, Preise, Bestände, Sammlungen, Metafelder und Kunden kommen aus der SelectLine. Im Shop pflegt man das, was dort hingehört: Navigation, Inhaltsseiten, Theme, Versandprofile, Zahlungsarten, Steuerregeln und Märkte. Was passiert, wenn ich ein Produkt im Shop von Hand ändere? Bei der nächsten Übertragung wird die Änderung überschrieben. Das betrifft Titel, Beschreibung, Preise, Bestand, Bilder, Metafelder und Sammlungszuordnungen. Wer Texte oder Bilder im Shop redaktionell pflegen möchte, nutzt Nur neue Artikel hochladen — dann bleiben bestehende Produkte unangetastet. Darf ich Produkte im Shop löschen? Besser nicht. Nach dem Löschen zeigt der Cache auf ein Produkt, das es nicht mehr gibt, und der Artikel entsteht doppelt. Wenn doch: anschließend Cache aktualisieren starten. Der bessere Weg ist, das Freigabekennzeichen in der SelectLine zu entfernen — dann wird das Produkt archiviert und alles bleibt konsistent. Wie bekomme ich einen Artikel aus dem Shop heraus? Das Freigabekennzeichen entfernen. Der Artikel wird dann archiviert, nicht gelöscht. Damit bleiben bestehende Bestellungen und die Adresse der Produktseite gültig. Warum ist mein Variantenartikel nicht im Shop? Wahrscheinlich hat er mehr als drei Merkmale — Shopify erlaubt nur drei. Der Artikel wird dann vollständig abgewiesen. Im Protokoll steht der Hinweis. Warum stehen die Größen in der falschen Reihenfolge? Die Optionswerte werden alphabetisch nach Merkmalsbezeichnung übertragen, also L, M, S, XL. Die gewünschte Reihenfolge lässt sich im Shopify-Adminbereich am Produkt einstellen und wird von der Schnittstelle nicht überschrieben. Ein Kunde findet einen Artikel in der Sammlung nicht, obwohl er zur Untergruppe gehört Sollte nicht vorkommen: Ein Artikel wird allen Sammlungen seines Zweigs zugeordnet. Wenn doch, den Artikel einmal neu exportieren. Der umgekehrte Fall kommt häufiger vor — ein Artikel steht zusätzlich in einer alten Sammlung, weil er in der SelectLine die Gruppe gewechselt hat. Altzuordnungen werden nicht entfernt und müssen im Adminbereich aufgeräumt werden. Sehen B2B-Kunden ihre eigenen Preise? Über Märkte und Kataloge, ja. Je Katalog wird eine SelectLine-Preisgruppe zugeordnet — siehe Sprachen und Märkte. Kundenindividuelle Preise je Kunde kennt Shopify nicht. Warum steht bei einem Artikel ein Bestand von 2, obwohl 2,7 Meter da sind? Der Bestand wird ganzzahlig an den Shop übergeben und dabei abgeschnitten. Bei Artikeln in Bruchteilen ist das eine bewusste Sicherheitsreserve. Kann ich einen Zeitraum erneut übertragen? Ja. Die Schnittstelle merkt sich zu jeder Aufgabe, bis wann sie zuletzt gelaufen ist. Dieser Stand lässt sich zurücksetzen — das erfordert einen Eingriff in die Konfiguration bei gestopptem Dienst, bitte über den Support. Für Artikel, Preise und Bestände geht es einfacher: Dafür genügen die Vollläufe. Wie lange dauert eine Vollübertragung? Das hängt an der Artikelanzahl, an den Bildern und am Anfragekontingent von Shopify. Als Anhaltspunkt: Ein Vollauf ohne Bilder ist ein Vielfaches schneller als einer mit Bildern. Beschleunigen lässt sich das nicht — das Tempo gibt Shopify vor. Was bedeutet die Kennung sfy_… im Feld „Ihr Auftrag"? Daran erkennt die Schnittstelle Belege, die aus dem Shop stammen. Enthalten sind die Bestellnummer und die interne Shopify-Nummer. 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. Kann die Schnittstelle eine Bestellung im Shop ändern? Ja, wenn ein Belegtyp Bestelländerungen hinterlegt ist. Dann werden Mengenänderungen, entfernte und hinzugefügte Positionen sowie geänderte Versandkosten aus der SelectLine zurück in die Bestellung geschrieben. Siehe Versand und Rückmeldungen. Ohne diese Einstellung verändert die Schnittstelle Bestellungen nur im Status. Werden Retouren automatisch verarbeitet? Nur, wenn die Gutschriftverarbeitung ausdrücklich eingeschaltet ist — standardmäßig ist sie aus. Siehe Gutschriften und Storni. Wer hat die Änderungen im Shop vorgenommen? Die Schnittstelle arbeitet mit der eigenen App, die bei der Einrichtung im Shopify-Adminbereich angelegt wurde. In der Änderungshistorie erscheint deshalb diese App und nicht ein einzelner Mitarbeiter. Wo finde ich heraus, was gerade läuft? Shopify → Zeitsteuerung. Dort steht zu jeder Aufgabe, ob sie läuft oder wartet, wann sie zuletzt gelaufen ist und wann sie das nächste Mal fällig ist. Darunter das Protokoll.