Zadanie i jego rytm
Wszystko kręci się wokół jednego zaplanowanego zadania modułu: tego, które wysyła stany magazynowe z Odoo do Shopify. Oto jego pojęcia, z nazwami tak, jak widzisz je w Odoo.

Shopify Push Stock- Zaplanowane zadanie modułu. W każdym przebiegu szuka sklepów spełniających warunki z następnej sekcji i, sklep po sklepie, wysyła do Shopify ilość każdego powiązanego produktu. Istnieje w gałęziach 17.0, 18.0, 19.0 i 20.0.
- Częstotliwość
- Zadanie działa co 20 minut i jest aktywne od instalacji. W Odoo 17.0 jest skonfigurowane tak, by powtarzać się bez końca. Jeśli nic nie robi, najpierw sprawdź, czy nadal jest aktywne.
- Sklepy (menu)
- Karty sklepów otwierasz z
Shopify › Configuration › Stores. Aby zobaczyć sekcjęConfiguration, potrzebne jest uprawnienieOperator; dla sekcjiShopifywystarczy uprawnienieViewer. Jeśli nie masz żadnego z nich, tej sekcji nie widzisz.
- Administrator
- Zadanie musi uruchamiać administrator. Jeśli nim nie jest, zadanie zatrzymuje się z komunikatem
Only an administrator can run this scheduled action.i niczego nie wysyła.
Nazwa zadania zmienia się zależnie od języka Twojego Odoo. W Odoo po polsku moduł nie ma tłumaczenia, więc zadanie nazywa się Shopify Push Stock; schemat pokazuje, jak nazywa się w innych językach.

Enviar stock a Shopify; po niemiecku Bestand an Shopify senden; po francusku Envoyer le stock vers Shopify; po włosku Invia giacenze a Shopify; po portugalsku Enviar stock para o Shopify.
Do których sklepów trafia
- Aktywny sklep z włączoną synchronizacją stanów
- Zadanie bierze tylko sklepy, które są aktywne i mają włączoną synchronizację stanów. Sklep, który nie spełnia któregoś z tych dwóch warunków, zostaje poza przebiegiem.
- Zapisane dane dostępowe
- Ponadto sklep musi mieć zapisany token dostępu lub sekret API aplikacji. Wystarczy jedno z dwojga: sklep z danymi klienta może nie mieć tokenu, dopóki jego pierwsze wywołanie go nie wygeneruje, dlatego zadanie akceptuje także sam fakt posiadania danych dostępowych.
- Błąd w jednym sklepie
- Każdy sklep jest przetwarzany osobno. Jeśli jeden zawiedzie, błąd zostaje zapisany w logu, a zadanie przechodzi do następnego sklepu.
Jakie produkty i jaką ilość wysyła
- Powiązany i aktywny produkt
- Z każdego sklepu wysyłane są powiązane produkty, które są aktywne, mają przypisany element zapasów Shopify i należą do firmy sklepu: nie wysyła się stanu produktu innej firmy, nawet przez stare powiązanie. Jeśli sklep nie ma żadnego takiego produktu, przebieg tylko zapisuje w sklepie datę wysyłki i przechodzi do następnego.
- Wolna ilość
- Wysyłany jest stan wolny (to, co jest, minus to, co już zarezerwowano), a nie stan fizyczny, zaokrąglony do liczby całkowitej i obliczony dla firmy sklepu; jeśli nie ma wartości, wysyłane jest zero. Zamówienie Shopify potwierdzone w Odoo rezerwuje sztukę, ale stan fizyczny spada dopiero po zatwierdzeniu dostawy: przy stanie fizycznym Shopify znów widziałby jako dostępną sztukę już sprzedaną.
- Lokalizacja
- Wszystkie ilości danego sklepu w jednym przebiegu są wysyłane z tą samą lokalizacją Shopify.
- Grupa po sto
- Produkty sklepu są wysyłane w grupach po 100. Po wysłaniu każdej grupy moduł zapisuje datę ostatniej synchronizacji stanów w produktach tej grupy. Data ostatniej wysyłki sklepu zapisuje się po zakończeniu wszystkich grup.
- Ilość ustawiana bez porównania
- Każda ilość jest wysyłana jako dostępna, z powodem korekty i bez porównywania z tym, co Shopify ma w danej chwili: ustawiana jest wartość z Odoo, niezależnie od tej z Shopify.
- Klucz wysyłki
- Każdy przebieg generuje własny klucz, inny dla każdej grupy, który towarzyszy wysyłce. Dzięki temu te same ilości wysłane później nie są traktowane jako duplikat wcześniejszej wysyłki.
Co sprawdzić, gdy zadanie nic nie robi
Idź w kolejności, w jakiej zadanie podejmuje decyzje:
- Czy zadanie
Shopify Push Stocknadal jest aktywne. - Czy uruchamia je administrator; w przeciwnym razie zatrzymuje się z komunikatem podanym wyżej.
- Czy sklep jest aktywny i ma włączoną synchronizację stanów. Karty otwierasz z
Shopify › Configuration › Stores. - Czy sklep ma zapisany token dostępu lub sekret API aplikacji.
- Czy są aktywne powiązane produkty z elementem zapasów Shopify i z firmy sklepu. Bez żadnego przebieg tylko zapisuje datę i idzie dalej.
- Czy wolna ilość jest taka, jakiej oczekujesz: to, co zarezerwowane, zostało już odjęte.
Dla przycisku Pull Stock jest osobny artykuł: co robi krok po kroku.
Jak pomaga FlexigoTech
FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie. Moduł jest publikowany dla 17.0, 18.0, 19.0 i 20.0 (karta w Odoo Apps, strona modułu). Kupujesz go jednorazowo dla danej wersji i potrzebna jest subskrypcja FlexigoTech Cloud: plan Konektor kosztuje 49 €/mies. lub 490 €/rok netto (bez VAT) (plan Pro, 98 €/mies. lub 980 €/rok netto (bez VAT)). Połączenie przechodzi przez FlexigoTech Cloud, które przechowuje dane dostępowe w formie zaszyfrowanej, nadzoruje synchronizację i wysyła e-mail, jeśli coś zawiedzie.
Czytaj dalej
Sprawdzone w kodzie źródłowym konektora (wersja 17.0 i 20.0) i w podlinkowanych źródłach
Źródła
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): data/ir_cron_data.xml
- Kod modułu: flexigobe_shopify_seller_connector 17.0 (437257e3): data/ir_cron_data.xml
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/shopify_instance.py
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
