Wo der Button ist und wann Sie ihn drücken müssen
Wo befindet sich der Button Bestand übertragen (Push Stock) und wann erscheint er?
Er befindet sich im Formular des Shops, auf dem Bildschirm Shopify-Instanzen. Sie erreichen ihn über das Menü Shopify › Konfiguration › Shops; sichtbar ist er mit den Rechten, die jede Stufe verlangt: Betrachter für Shopify und Operator für Konfiguration. Der Button hat keine Sichtbarkeitsbedingung: Er ist im Formular in den Odoo-Versionen 17, 18, 19 und 20 zu sehen. Die folgende Funktionsweise entspricht dem Code des Moduls in Odoo 20.0. Mit Odoo auf Deutsch heißt der Button Bestand übertragen; auf Spanisch lautet er Bestand übertragen, auf Französisch Envoyer le stock, auf Italienisch Invia stock und auf Portugiesisch Bestand übertragen.


Muss ich ihn drücken oder sendet Odoo den Bestand von selbst?
Der normale Weg ist automatisch: Die geplante Aktion Bestand an Shopify senden (Shopify Push Stock) führt alle 20 Minuten genau diese Übertragung aus und ist seit der Installation aktiv. Der Button ist die Ausnahme: Er stößt die Übertragung sofort an, ohne die Aktion abzuwarten. Nach dem Ende trägt das Feld Letzte Bestandsübertragung das Datum; es ist im Formular und in der Shopliste zu sehen, schreibgeschützt und wird vom Code geschrieben, nicht von Ihnen. Der Button Synchronisierung zurücksetzen leert es.
Und der Bestand in die Gegenrichtung, von Shopify nach Odoo?
Das ist eine andere Aktion: Bestand aus Shopify abrufen (Shopify → Odoo) (Shopify Pull Stock (Shopify → Odoo)), alle 6 Stunden und bei der Installation aktiv. Ihre Methode wird nur ausgeführt, wenn das Kästchen Bestandssynchronisierung aktiviert (Sync Stock Enabled) gesetzt ist; es befindet sich im Formular Shopify-Instanzen, Reiter Vorgänge, Gruppe Synchronisierungseinstellungen, und ist standardmäßig nicht gesetzt. Die Methode des Buttons Bestand übertragen prüft dieses Kästchen, so wie sie geschrieben ist, nicht.

Was geprüft und was gesendet wird
Welche Produkte werden gesendet?
Pro Shop sucht das Modul die mit ihm verknüpften Produkte, die aktiv sind und denen ein Shopify-Lagerartikel zugewiesen ist. Danach verwirft es die eines anderen Unternehmens als dem des Shops (Unternehmen), auch wenn die Verknüpfung von früher stammt. Bleibt keines übrig, sendet es nichts an Shopify: Es setzt nur das Datum in Letzte Bestandsübertragung und geht zum nächsten Shop.
Welche Menge wird gesendet: die vorhandene oder die verfügbare?
Die freie: der Bestand abzüglich des bereits Reservierten, berechnet mit dem Unternehmen des Shops, auf eine ganze Zahl gerundet und auf null gesetzt, wenn kein Wert vorliegt. Der Grund laut Code: Ein in Odoo bestätigter Shopify-Auftrag reserviert die Einheit, aber der Bestand sinkt erst, wenn die Lieferung validiert wird. Würde der Bestand gesendet, sähe Shopify zwischen Onlineverkauf und Versand diese Einheit wieder als verfügbar, und bei der letzten Einheit könnte ein zweiter Kunde sie kaufen. Mehr zu Aufträgen und Lieferscheinen unter was das Modul im Verkauf ergänzt und was es bei den Lieferscheinen ergänzt.
Wenn ich dieselben Mengen erneut sende, ignoriert Shopify sie dann als Duplikat?
Nein. Jede Ausführung der Übertragung erzeugt einen eigenen Schlüssel und variiert ihn in jedem Block, damit identische, später gesendete Mengen nicht für ein Duplikat gehalten werden. Die Übertragung erfolgt in Blöcken von höchstens hundert Produkten. In jedem Block wird die in Shopify verfügbare Menge so gesetzt, wie Odoo sie berechnet, mit dem Korrekturgrund und ohne Vergleich mit dem, was Shopify in diesem Moment hat.
Was sich ändert und welche Fehler möglich sind
Welchen Shopify-Standort verwendet es und was ändert sich in Odoo?
Zuerst sucht es den Standort: Es verwendet den, den der Shop bereits gespeichert hat, und fragt, falls keiner vorhanden ist, Shopify, nimmt den ersten zurückgegebenen und speichert dessen Kennung und Namen. In Odoo ändern sich Daten: Nach dem Senden jedes Blocks trägt es das Datum der Bestandssynchronisierung in jedes Produkt dieses Blocks ein, und am Ende schreibt es Letzte Bestandsübertragung in den Shop. Stoppt ein Fehler die Aktion, erscheint die Meldung und dieses letzte Datum wird nicht gespeichert.
Welche Standort- oder Verbindungsmeldungen können beim Drücken des Buttons erscheinen?
Diese. Keine Shopify-Standorte für … gefunden (No Shopify locations were found for …): Der Shop hatte keinen gespeicherten Standort und Shopify gab keinen zurück; anstelle der Punkte steht die Domain des Shops. Shopify hat keine gültige Standort-ID zurückgegeben. (Shopify did not return a valid location id.): Shopify gab einen Standort ohne Kennung zurück. Diese beiden Standortmeldungen können nur auftreten, wenn der gespeicherte Standort fehlt. Außerdem gibt es Für … besteht keine Shopify-Verbindung. Öffnen Sie den Reiter Connection und folgen Sie den Einrichtungsschritten. (Shopify is not connected for …. Open the Connection tab and follow the setup steps.): Der Shop hat weiterhin kein Zugriffstoken; anstelle der Punkte steht der Name des Shops. Öffnen Sie sein Formular, Reiter Connection, und folgen Sie den Einrichtungsschritten.
Und die Meldungen des Aufrufs an Shopify?
Auch sie erscheinen beim Drücken des Buttons. Shopify-GraphQL-Aufruf fehlgeschlagen (…): … (Shopify GraphQL call failed (…): …) erscheint, wenn Shopify mit einem Fehlercode ab 400 antwortet; die Meldung enthält diesen Code und den Anfang der Antwort. Bevor das Modul aufgibt, behandelt es 401 und 429: Bei einem 401 versucht es, den Zugriff zu erneuern, und wiederholt den Aufruf, sofern ein Erneuerungstoken oder Client-Zugangsdaten vorhanden sind; bei einem 429 wartet es und wiederholt, mit bis zu drei Versuchen bei einem normalen Aufruf. Möglich sind auch Shopify GraphQL hat Fehler zurückgegeben: … (Shopify GraphQL returned errors: …) und Der Shopify-GraphQL-Aufruf hat die Wiederholungsversuche erschöpft. (Shopify GraphQL call exhausted retries.). Bewahren Sie bei allen den vollständigen Text der Meldung auf: Er ist das, was braucht, wer die Verbindung prüft.
Wenn Sie es mit Unterstützung einrichten
FlexigoTech implementiert Odoo 17, 18, 19 und 20 und entwickelt Konnektoren und individuelle Integrationen. Das Modul ist eine Einmalzahlung pro Odoo-Version (Preis in der Odoo-Apps-Seite und auf der Modulseite) und erfordert das Abonnement von FlexigoTech Cloud: Plan Konnektor, 49 €/Monat oder 490 €/Jahr zzgl. MwSt., bis zu 3 Konten der Plattform. Mit dieser Verbindung werden die Zugangsdaten verschlüsselt gespeichert, die Synchronisierung überwacht und bei einem Fehler per E-Mail benachrichtigt.
Wenn sich eine dieser Meldungen nicht lösen lässt, schreiben Sie uns mit dem vollständigen Text und der von Ihnen verwendeten Odoo-Version.
Weiterlesen
Geprüft im Quellcode des Connectors (Version 20.0) und in den verlinkten Quellen
Quellen
- Quellcode des Moduls: flexigobe_shopify_seller_connector 20.0 (2950bdc0): views/shopify_instance_views.xml
- Quellcode des Moduls: flexigobe_shopify_seller_connector 20.0 (2950bdc0): models/shopify_instance.py
- Quellcode des Moduls: flexigobe_shopify_seller_connector 20.0 (2950bdc0): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
