Przejdź do głównej treści
Shopify

Co robi przycisk „Devolver Stock” w Shopify Connector, krok po kroku

Przycisk Devolver Stock przy zwrocie pieniędzy z Shopify tworzy w Odoo jedno lub kilka zatwierdzonych przesunięć zwrotnych z tym, co zostało do zwrotu z towaru, który Shopify przywrócił na stan; jeśli Odoo już go zwróciło, nie tworzy kolejnego i otwiera dostawę. Widać go tylko przy niektórych wartościach pola Stock Return, a gdy coś zawiedzie, zatrzymuje się z komunikatem o niepowiązanych produktach lub błędem tworzenia.

FlexigoTech · Odpowiada: Víctor Gómez · Aktualizacja: 5 listopada 2026

Najważniejsze

Moduł
Shopify
Wersje
Odoo 17, 18, 19 i 20
Sprawdzone
w kodzie źródłowym konektora, wersja 20.0 · w źródłach podanych na końcu
Czas czytania
4 min

Poniższy opis metody pochodzi z kodu Odoo 20. Przycisk jest w gałęziach 17, 18, 19 i 20, z tym samym warunkiem widoczności.

Gdzie jest i kiedy go widać

Gdzie jest przycisk Devolver Stock i kiedy się pojawia?

Znajduje się w karcie Shopify Refunds, którą otwierasz z Sprzedaż › Shopify › Operations › Refunds. Widok pokazuje go tylko wtedy, gdy pole Stock Return ma wartość oczekujący, w przeglądzie lub nieudany; przy każdej innej wartości go ukrywa. Przy wartościach domyślnych go nie widać, bo to pole startuje z wartością, która nie jest żadną z tych. W Odoo po hiszpańsku przycisk nazywa się Devolver Stock; drugi schemat pokazuje, jak jest podpisany w innych językach.

Schemat z menu zwrotów, przyciskiem Devolver Stock i komunikatami, które mogą go zatrzymać
Schemat wykonany kodem na podstawie opublikowanego kodu modułu, to nie zrzut ekranu z Odoo.
Schemat z tekstem przycisku Devolver Stock po hiszpańsku, niemiecku, francusku, włosku i portugalsku
Schemat wykonany kodem na podstawie opublikowanych tłumaczeń modułu, to nie zrzut ekranu z Odoo: po hiszpańsku Devolver Stock, po niemiecku Lager zurückgeben, po francusku Retourner au stock, po włosku Restituisci al magazzino i po portugalsku Devolver ao stock.

Co się dzieje, jeśli zwrot zapasów był już wykonany?

Metoda sprawdza to w pierwszej kolejności. Jeśli pole było w stanie nieudany, a przesunięcie zwrotne było już wykonane, oznacza je jako wykonane i czyści tekst błędu. Jeśli było już wykonane i istnieje Return Transfer, otwiera to przesunięcie; jeśli żadnego nie ma, nie robi nic więcej.

Your Odoo doesn't talk to Amazon, Temu or Shopify?
Wideo: Your Odoo doesn't talk to Amazon, Temu or Shopify? (wideo po angielsku)

Co sprawdza i co tworzy

Jak decyduje, które produkty zwraca?

Czyta pozycje przywrócenia na stan w zwrocie, czyli to, co Shopify przywrócił na stan. Odrzuca te o ilości zero lub mniejszej. Dla każdej szuka najpierw produktu po ID wariantu z Shopify, a jeśli go nie znajdzie, po SKU. Pozycje, których nie da się rozpoznać, nie trafiają do zwrotu i zostawiają ostrzeżenie w logu. Jeśli nie zostanie żaden produkt, metoda zatrzymuje się z komunikatem opisanym niżej.

Co robi, gdy zwrot ma zamówienie sprzedaży z zatwierdzonymi dostawami?

W karcie pole Sale Order jest w grupie Amounts. Kod szuka wydań z tego zamówienia, które są już wykonane. Jeśli jakieś są, oblicza, ile zostało do zwrotu z każdego produktu: to, co Shopify przywrócił na stan we wszystkich zwrotach tego zamówienia, minus to, co już wróciły niewycofane zwroty (także te wykonane przez samo Odoo), i nigdy więcej niż dostarczono. Podział idzie od najstarszej dostawy do najnowszej, nie przekraczając tego, co wysłała każda z nich, pomniejszonego o to, co już z niej wróciło.

Tworzy jeden zatwierdzony zwrot dla każdej dotkniętej dostawy, więc może ich być kilka. Gdy dostawa ma ruch tego produktu, zwrot jest z nim powiązany jako zwrot samego Odoo, dzięki czemu dostawa liczy go jako zwróconą.

Jeśli nie zostało nic do zwrotu, nie tworzy żadnego przesunięcia: oznacza zwrot zapasów jako wykonany, czyści błąd, zostawia w dostawach, które wysłały te produkty, notatkę Shopify refund …: nothing left to return from this delivery, Odoo already returned it. i otwiera pierwszą z nich.

A jeśli nie ma zamówienia ani żadnej zatwierdzonej dostawy?

Wtedy tworzy ręczne przesunięcie przychodzące, ze źródłem w lokalizacji klientów i miejscem docelowym w lokalizacji zapasów magazynu. Magazyn to ten skonfigurowany w instancji Shopify, a jeśli go nie ma, pierwszy znaleziony w firmie instancji. Używa typu operacji przyjęcia z tego magazynu, nadaje każdemu ruchowi opis Return: … z nazwą produktu, potwierdza przesunięcie, rezerwuje je, oznacza żądaną ilość jako wykonaną i zatwierdza je.

Co się zmienia, gdy wszystko się uda?

Zwrot zapasów zostaje oznaczony jako wykonany, tekst błędu jest czyszczony, a pole Return Transfer w grupie Amounts karty wskazuje pierwsze utworzone przesunięcie. To pole jest ukryte, dopóki jest puste, i wypełnia je przycisk, nie użytkownik. Wszystkie przesunięcia mają jako źródło Shopify Refund … z nazwą zwrotu (pole Name, grupa Shopify).

Przycisk zostawia notatki w przesunięciach: w każdym zwrocie Stock returned from Shopify refund …. Transfer: …, a jeśli pochodzi z dostawy, w tej dostawie Shopify refund …: returned in …. Na końcu otwiera pierwsze przesunięcie zwrotne.

Błędy i co zrobić

Co zrobić z komunikatem No restockable products found for this refund. Make sure products are linked by SKU or Shopify variant ID.?

To komunikat, który przycisk wyświetla, gdy po odczytaniu pozycji nie zostaje żaden produkt: pozycje o ilości zero lub mniejszej albo produkty, których nie znajduje ani ID wariantu, ani SKU. Pojawia się przed utworzeniem czegokolwiek i nie zmienia pola Stock Return. Sprawdź, czy produkty ze zwrotu są powiązane w Odoo po SKU lub po ID wariantu z Shopify, jak podaje komunikat, i kliknij ponownie.

Co oznacza Failed to create stock return: …?

To komunikat, który pojawia się, gdy coś zawiedzie podczas wyszukiwania dostaw lub tworzenia i zatwierdzania przesunięć. Po dwukropku jest tekst oryginalnego błędu i to on mówi, co poprawić. Zanim go pokaże, metoda ustawia Stock Return na nieudany i zapisuje tekst błędu. Ponieważ warunek widoku obejmuje wartość nieudany, przycisk pozostaje widoczny po usunięciu przyczyny.

Ile to kosztuje i czego potrzebuję, żeby z tego korzystać?

Shopify Connector kosztuje 9 € za wersję Odoo, dla 17, 18, 19 i 20, jednorazowo netto (bez VAT) (zobacz kartę w Odoo Apps). Dodatkowo wymaga subskrypcji FlexigoTech Cloud: plan Konektor kosztuje 49 €/mies. lub 490 €/rok netto (bez VAT), z maksymalnie 3 kontami platformy. Jeśli chcesz dopasować przepływ zwrotów do swoich magazynów, FlexigoTech wdraża Odoo i tworzy konektory oraz integracje na zamówienie.

Czytaj dalej

Co robi przycisk Pull Stock w Shopify Connector, krok po krokuCo robi przycisk Pull Stock w Shopify Connector dla Odoo 20: kiedy się pojawia, co sprawdza, jakie korekty magazynowe tworzy i jakie błędy może zgłosić.
Sprawdzone w kodzie źródłowym konektora (wersja 20.0) i w podlinkowanych źródłach

Źródła