Zanim klikniesz: gdzie jest przycisk i co Odoo robi samo
Kartę instancji otworzysz z menu Sprzedaż: wejdź w Shopify, potem w Control Center, a na końcu w Instances. Przycisk Sync Products jest w wersjach 17, 18, 19 i 20 Odoo i, według warunku w widoku, jest widoczny zawsze.

Przycisk nie jest jedyną drogą. To, co robi, robi także zaplanowane zadanie Shopify Sync Products, co godzinę, które po instalacji modułu jest wyłączone. Poniższy opis dotyczy opublikowanego kodu dla Odoo 20.0.
- Zdecyduj, czy wystarczy Ci zaplanowane zadanie
Shopify Sync Products(co godzinę, wyłączone po instalacji): jeśli go nie włączysz, synchronizację produktów możesz uruchamiać tym przyciskiem.
- Otwórz kartę instancji i zanotuj wartość
Last Product Sync. Widać ją na karcie i na liście instancji, tylko do odczytu: zapisuje ją moduł, nie Ty.
- Na zakładce
Operations, w grupieSync Settings, sprawdźPage Size(domyślnie 50) iMax Pages(domyślnie 20). Jeśli w którymś z nich wpiszesz mniej niż jeden, moduł użyje jedynki.
- Jeśli instancja nie korzysta z FlexigoTech Cloud, kod wymaga, aby przed wysłaniem czegokolwiek miała token dostępu.

Co robi przycisk, po kolei
- Tworzy rejestr synchronizacji instancji, typu produkty, oznaczony jako w toku.
- Przygotowuje zapytanie do Shopify. Prosi o produkty posortowane według daty aktualizacji i, dla każdego z nich, między innymi o dane: tytuł, dostawcę, typ produktu, status, opis, tagi, datę aktualizacji, wyróżniony obraz, opcje oraz do 250 wariantów z ich SKU, ceną, ceną porównawczą, kodem kreskowym i stanem magazynowym.
- Ustala filtr. Jeśli
Last Product Syncjest puste, nie ustawia żadnego. Jeśli ma datę, prosi tylko o produkty zaktualizowane w Shopify od tego momentu. - Wywołuje Shopify stronami o rozmiarze
Page Size, przekazując w każdym wywołaniu kursor poprzedniej strony. - Przekazuje każdy otrzymany produkt do powiązania produktu Shopify w module i dolicza go do sumy.
- Zatrzymuje się, gdy Shopify wskaże, że nie ma więcej stron, albo gdy osiągnie liczbę stron z
Max Pages. - Zapisuje w
Last Product Syncdatę i godzinę tego momentu i zamyka rejestr synchronizacji, z policzoną sumą jako zaktualizowanymi produktami.
Szczegół dotyczący ostatniego kroku: datę zapisuje się po wyjściu z pętli, zarówno gdy skończyły się strony, jak i gdy przerwano na Max Pages. Następne uruchomienie startuje więc od tej daty. Pamiętaj o tym, ustawiając Page Size i Max Pages w sklepie z dużą liczbą produktów.
Co robi wywołanie do Shopify
- Jeśli instancja działa przez FlexigoTech Cloud, żądanie przechodzi przez usługę, która dodaje token, który przechowuje (i odnawia). Odoo nie łączy się ze sklepem i nie otrzymuje tokenu.
- Bez tej drogi Odoo wywołuje Shopify z tokenem instancji.
- Jeśli Shopify odpowie, że przekroczono limit żądań, wywołanie czeka (tyle, ile wskaże Shopify, albo kilka sekund, z górnym limitem trzydziestu, i dłużej przy każdej kolejnej próbie) i ponawia. Wykonuje do trzech prób.
- Jeśli Shopify odrzuci token przy pierwszej próbie, a instancja ma token odnowienia, moduł ponawia wywołanie raz, z tokenem, który instancja ma w tej chwili.
- Każda inna odpowiedź z błędem, odpowiedź zawierająca błędy lub odpowiedź z błędami użytkownika zatrzymuje akcję z tym błędem. Zatrzymuje ją także wyczerpanie prób.
Jeśli zawiedzie: co się zmienia, a co nie
- W razie błędu moduł oznacza rejestr synchronizacji jako nieudany, zapisuje w nim tekst błędu (przycięty, jeśli jest zbyt długi) i zgłasza błąd ponownie, więc akcja się zatrzymuje.
- W nieudanym uruchomieniu
Last Product Syncnie jest aktualizowane: ten krok następuje po pętli.
- Jeśli FlexigoTech Cloud wstrzyma wykonanie, moduł usuwa rejestr tego uruchomienia (nie zostaje jako nieudany), a akcja i tak się zatrzymuje.
Po kliknięciu: co sprawdzić
Last Product Syncpokazuje bieżącą datę i godzinę na karcie i na liście instancji.
- Jeśli Twój sklep ma więcej produktów, niż mieści się w
Page SizerazyMax Pages, pamiętaj, że data i tak zostanie zapisana, a następne uruchomienie pobierze tylko to, co zaktualizowano od tego momentu.
- Sprawdź, jak przycisk nazywa się w Twoim języku Odoo. Przy Odoo po polsku jest to
Sync Products; pozostałe opublikowane tłumaczenia są na schemacie.

Sync Products; po niemiecku Produkte synchronisieren; po francusku Synchroniser les produits; po włosku Sincronizza prodotti; po portugalsku Sincronizar produtos.O stanach magazynowych Shopify mamy osobny artykuł: co robi przycisk „Pull Stock”.
Cena i pomoc
Shopify Connector kosztuje 9 € za wersję Odoo, netto (bez VAT), jednorazowo (dla 17, 18, 19 i 20; zobacz kartę), i wymaga subskrypcji FlexigoTech Cloud: plan Konektor, 49 €/mies. lub 490 €/rok netto (bez VAT).
Jeśli wdrażasz Odoo i chcesz dobrze skonfigurować synchronizację produktów, FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie.
Czytaj dalej
Sprawdzone w kodzie źródłowym konektora (wersja 20.0) i w podlinkowanych źródłach
Źródła
- Kod modułu: flexigobe_shopify_connector 20.0 (c7078cd8): views/shopify_instance_views.xml
- Kod modułu: flexigobe_shopify_connector 20.0 (c7078cd8): models/shopify_instance.py
- Kod modułu: flexigobe_shopify_connector 20.0 (c7078cd8): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/17.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/18.0/flexigobe_shopify_connector
- apps.odoo.com/apps/modules/19.0/flexigobe_shopify_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
