Kiedy dokładnie się pojawia
Komunikat pojawia się po kliknięciu przycisku Create Sale Order w karcie zamówienia Shopify. Do tej karty dochodzisz z menu Shopify › Operations › Orders. Każdy poziom menu wymaga uprawnienia Viewer: bez niego nie zobaczysz tego poziomu. To uprawnienie służy do przeglądania menu; przycisk natomiast jest dla menedżerów Shopify (Shopify Manager), a metoda sprawdza to, zanim zajrzy do zawartości zamówienia.
Przycisk jest widoczny, dopóki pole Sale Order w zamówieniu jest puste, a znika, gdy zamówienie sprzedaży już jest. Po kliknięciu Odoo prosi o potwierdzenie takim tekstem: It is created as a quotation that the connector never confirms: check first that this order was not shipped already. Create it?. Jeśli zaakceptujesz i Twój użytkownik jest menedżerem Shopify, metoda sprawdza, czy pole Raw Payload jest puste. Jeśli jest, zgłasza komunikat i akcja się zatrzymuje.


Czym jest sprawdzane pole
Raw Payload to pole typu Json w zamówieniu Shopify. Widać je w karcie Fulfilment Funnel, w zakładce Technical. Na ekranie nie ma etykiety, widać tylko jego zawartość, i widzą je w trybie tylko do odczytu wyłącznie użytkownicy z uprawnieniem administracji systemu.
Nie wpisujesz go sam: wypełnia je kod modułu, do którego trafiają zarówno przycisk Create Sale Orders, jak i sam Create Sale Order. Aby dowiedzieć się, co robi pierwszy z nich, zobacz co robi przycisk Create Sale Orders.
Przykład
Przykład Przypadek poglądowy: firma i jej dane są zmyślone, żeby pokazać przebieg.
Tienda Ejemplo to wymyślona firma, która sprzedaje w Shopify i obsługuje zamówienia w Odoo. Laura, menedżerka Shopify, zajmuje się zamówieniami: otwiera Shopify › Operations › Orders i wchodzi w zamówienie, które nie ma zamówienia sprzedaży. Widzi przycisk Create Sale Order i klika go. Czyta potwierdzenie: zamówienie powstaje jako oferta, której konektor nigdy nie potwierdza, i warto wcześniej sprawdzić, czy zamówienie nie zostało już wysłane. Laura sprawdza, akceptuje, a Odoo odpowiada komunikatem No Shopify payload available to create sale order. Refresh from Shopify first..
Jej użytkownik nie ma uprawnienia administracji systemu, więc nie widzi pola Raw Payload. Prosi osobę, która je ma, o otwarcie zakładki Technical w karcie Fulfilment Funnel, a ta potwierdza, że zawartości nie ma. To zgadza się z kodem: gdy pole jest puste, metoda się zatrzymuje. Laura odświeża zamówienie z Shopify, tak jak prosi komunikat, i ponownie klika przycisk.
Czego uczy ten przypadek:
- Komunikat dotyczy zapisanej zawartości zamówienia Shopify, a nie zamówienia sprzedaży, które chciałeś utworzyć.
- Aby sprawdzić przyczynę, trzeba zobaczyć pole
Raw Payload, a to zależy od konkretnego uprawnienia. - Ostrzeżenie w potwierdzeniu jest ważne: zamówienie sprzedaży powstaje jako oferta, której konektor nigdy nie potwierdza.
Co robi metoda, krok po kroku
W Odoo 20.0, po kliknięciu Create Sale Order, metoda robi to:
- Jeśli zamówienie ma już
Sale Order, metoda otwiera to zamówienie i kończy. Nie ma błędu. - Jeśli Twój użytkownik nie jest menedżerem Shopify (Shopify Manager), metoda się zatrzymuje.
- Jeśli
Raw Payloadjest puste, zgłasza komunikatNo Shopify payload available to create sale order. Refresh from Shopify first.i się zatrzymuje. - Jeśli zawartość jest, zdejmuje z zamówienia znacznik wstrzymania i oznacza je jako utworzone ręcznie.
- Przetwarza ponownie zapisaną zawartość z opcją ręcznego tworzenia i odczytuje zamówienie na nowo.
- Jeśli zamówienie ma już
Sale Order, otwiera je; jeśli nie, kończy bez otwierania żadnego zamówienia.
Ponieważ wstrzymanie i znacznik ręcznego utworzenia są zapisywane po sprawdzeniu, w chwili błędu żadna zmiana nie jest zapisana, a zamówienie zostaje takie, jakie było.
Jak to rozwiązać
- Sprawdź, czy zamówienie nadal nie ma
Sale Order. Jeśli już je ma, przycisk nie jest widoczny. - Sprawdź, czy Twój użytkownik jest menedżerem Shopify: przycisk jest dla menedżerów, a jeśli nim nie jesteś, metoda zatrzymuje się, zanim zajrzy do zawartości.
- Jeśli masz uprawnienie administracji systemu, otwórz zakładkę
Technicalw karcieFulfilment Funneli sprawdź, czy jest zawartość. Jeśli go nie masz, poproś o to osobę, która je ma. - Odśwież zamówienie z Shopify, jak wskazuje sam komunikat.
- Kliknij ponownie
Create Sale Order, przeczytaj jeszcze raz potwierdzenie i zaakceptuj tylko wtedy, gdy zamówienie nie zostało już wysłane. - Jeśli zamówienie sprzedaży zostanie utworzone, Odoo je otworzy; jeśli się nie otworzy, sprawdź pole
Sale Orderw zamówieniu.
Nie próbuj wpisywać zawartości ręcznie: pole jest tylko do odczytu i zapisuje je kod modułu.
W jakich wersjach występuje
Komunikat jest w opublikowanym kodzie wszystkich czterech gałęzi: Odoo 17, 18, 19 i 20. Przycisk Create Sale Order ma w nich ten sam warunek widoku: znika, gdy zamówienie ma Sale Order. Moduł jest opublikowany w Odoo Apps dla tych czterech wersji.
Przy Odoo po hiszpańsku komunikat wygląda tak, jak we wstępie. Poniższy schemat pokazuje ten sam tekst w innych językach.

Jeśli potrzebujesz pomocy we wdrożeniu
Jeśli chcesz sprawdzić, jak połączone są Twój sklep i Odoo, FlexigoTech wdraża Odoo 17, 18, 19 i 20 oraz tworzy konektory i integracje na zamówienie. Więcej informacji znajdziesz na karcie w Odoo Apps i na stronie modułu.
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_seller_connector 20.0 (d7e627b4): models/shopify_order.py
- Kod modułu: flexigobe_shopify_seller_connector 20.0 (d7e627b4): views/shopify_order_views.xml
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
