Zwykła ścieżka: Odoo akceptuje zamówienia samo
Czy muszę klikać Accept Order przy każdym zamówieniu z Mirakl?
Nie. Według kodu opublikowanego dla Odoo 20 akceptację uruchamiają także dwa zaplanowane zadania, aktywne po instalacji modułu: Mirakl - Accept Orders i Mirakl - Sync Orders. Oba działają co 10 minut i oba trafiają do tej samej metody, która akceptuje oczekujące zamówienia danej instancji. Przycisk zostaje jako ręczna droga dla konkretnego zamówienia.
Jakie zamówienia wybiera ta metoda i w jakiej kolejności?
Te z danej instancji, które wymagają akceptacji (Requires Acceptance), mają stan akceptacji oczekujący lub błąd i nie są wstrzymane względem zamówień sprzedaży: kod zaznacza, że zaakceptowanie takiego zamówienia oznaczałoby zobowiązanie się do wysłania tego, czego Odoo nigdy nie wyśle. Sortuje je według daty zamówienia, od najstarszego do najnowszego.
Co się dzieje, gdy automatyczna akceptacja się nie powiedzie?
Jeśli wywołanie do Mirakl się nie powiedzie, w ścieżce automatycznej błąd nie jest rzucany ponownie: zamówienie dostaje stan akceptacji z błędem, zapisuje się data i godzina próby, licznik prób rośnie o jeden i zapisywany jest tekst błędu. Ponieważ zamówienia z błędem wchodzą do wyboru, przy następnym uruchomieniu zadanie spróbuje ponownie. Jeśli FlexigoTech Cloud nie przepuści żądania, zamówienie nie zostaje oznaczone, a kolejne uruchomienie ponowi próbę. Jeśli masz wątpliwości co do połączenia, zobacz najpierw co robi przycisk testowania połączenia.

Przycisk: gdzie jest, kiedy go widać i kto może go kliknąć
Gdzie jest i kiedy się pojawia?
Znajduje się na ekranie Mirakl Orders, otwieranym z Mirakl › Operations › Orders, w wersjach Odoo 17, 18, 19 i 20. Jest ukryty, gdy Acceptance State wskazuje, że zamówienie jest już zaakceptowane, lub gdy Requires Acceptance nie jest aktywne; warunek jest taki sam we wszystkich czterech wersjach. Zamówienie pokazuje swoją Instance w karcie i na liście, a akceptacja jest wysyłana przez tę instancję. W Odoo po polsku przycisk nazywa się Accept Order; drugi schemat pokazuje, jak jest opisany w innych językach.


Co jeśli mój użytkownik nie jest Mirakl Managerem?
To pierwsze, co sprawdza przycisk, zanim cokolwiek zmieni. Jeśli nim nie jesteś, zatrzymuje się z komunikatem: Only a Mirakl Manager can accept, cancel or refund a marketplace order. These actions change the order on the marketplace and move real money. Rozwiązanie: kliknij przycisk jako użytkownik z rolą Mirakl Manager.
Co robi po kliknięciu i jakie błędy może zwrócić
Co robi krok po kroku i co się zmienia, gdy wszystko pójdzie dobrze?
Najpierw sprawdza uprawnienie Mirakl Manager. Potem sprawdza, czy zamówienie wymaga akceptacji, i przygotowuje dane do wysłania do Mirakl; jeśli te dane nie zawierają pozycji zamówienia, niczego nie wysyła. Następnie wysyła do Mirakl żądanie akceptacji, z adresem i metodą HTTP skonfigurowanymi w instancji. Jeśli Mirakl odpowie poprawnie, zamówienie przechodzi w stan zaakceptowane: zapisują się data i godzina próby oraz akceptacji, licznik prób rośnie o jeden, ostatni błąd jest czyszczony i zapisywana jest odpowiedź Mirakl. Ponieważ to akceptacja ręczna, w instancji publikowana jest dodatkowo wiadomość. Gdy stan akceptacji zmienia się na zaakceptowany, przycisk przestaje być widoczny przy tym zamówieniu.
Jaki błąd zobaczę, gdy wywołanie do Mirakl się nie powiedzie?
Ten sam, który wystąpił, w takiej postaci, w jakiej dotrze. Przycisk wymaga, aby błędy były propagowane, więc akcja zatrzymuje się i nie zapisuje tego, co miało się zmienić (ani stanu błędu, ani licznika). W ścieżce automatycznej natomiast błąd jest zapisywany w zamówieniu. Ponieważ zamówienie nadal nie jest zaakceptowane, przycisk pozostaje widoczny, dopóki wymaga akceptacji, i możesz kliknąć go ponownie.
Czym przycisk różni się od ścieżki automatycznej?
Według kodu przycisk najpierw sprawdza, czy jesteś Mirakl Managerem, pokazuje błędy zamiast zapisywać je w zamówieniu, publikuje wiadomość w instancji po akceptacji i nie stosuje filtra zamówień wstrzymanych, bo wywołuje bezpośrednio akceptację zamówienia. Pamiętaj o ostrzeżeniu z kodu dotyczącym takich zamówień: ich zaakceptowanie oznaczałoby zobowiązanie się do wysłania tego, czego Odoo nigdy nie wyśle.
Jeśli potrzebujesz pomocy przy uruchomieniu
Mirakl Connector to moduł z jednorazową opłatą za wersję Odoo, opublikowany dla wersji 17, 18, 19 i 20, który wymaga subskrypcji FlexigoTech Cloud, plan Conector: 49 €/mies. lub 490 €/rok netto (bez VAT), do 3 kont platformy. Bez subskrypcji lub przy zawieszonej usłudze przestaje działać to, co zapewnia subskrypcja; dane zostają w Twoim Odoo. Szczegóły znajdziesz na karcie w Odoo Apps i na stronie modułu. Jeśli wdrażasz Odoo, 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_mirakl_connector 20.0 (aa05e537): views/mirakl_order_views.xml
- Kod modułu: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_order.py
- Kod modułu: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
