1. Strona główna
  2. Dokumentacja
  3. REST API xSale
  4. Przykłady wykorzystania R...
  5. Pobieranie zamówień – integracja z własnym systemem ERP

Pobieranie zamówień – integracja z własnym systemem ERP

Projektując mechanizm pobierania zamówień z xSale do własnego systemu ERP warto opierać się na statusach zamówień. Dzięki dostępnym filtrom REST API xSale daje możliwość precyzyjnego wskazania, które zamówienia mają trafić do ERP. Zmiana statusu zamówienia po jego imporcie pozwala wygodnie zarządzać procesem realizacji zamówienia i uniknąć ewentualnych pomyłek.

Listę wszystkich zamówień zwraca endpoint:

GET /{organizationName}/orders

W przesyłanym zapytaniu możesz wykorzystać filtry statusidin oraz statusnamein. W obu przypadkach wskaż tablicę zawierającą odpowiednio id statusów (integer) dla statusidin oraz nazw statusów (string) dla statusnamein.

W otrzymanej odpowiedzi Items to kolekcja pozycji zamówienia, zawierająca listę zakupionych produktów. Z kolei OrderItemArticles to kolekcja artykułów powiązanych z pozycją zamówienia w Items. W praktyce można ją traktować jako listę towarów do wydania z magazynu – zwracamy tutaj pozycje przeliczone z zamówionych ofert i zestawów.

Lista wszystkich statusów dostępna jest w zasobie:

GET /{organizationName}/statuses

Po pobraniu zamówienia do systemu ERP rekomendujemy aktualizację jego statusu. Ta operacja pozwala wykluczyć ponowny import zamówienia w oparciu o wskazane w filtrach statusy.

Przykład:

1. Pobierz zamówienia ze statusem Nowe.
2. Po poprawnym wczytaniu zamówienia do ERP zmień status zamówienia w xSale. Domyślny status, jaki xSale nadaje zamówieniom poprawnie przesłanym do systemu ERP, to Zaimportowano do ERP.
3. Jeśli podczas wczytywania zamówienia do systemu ERP wystąpił błąd, ustaw na takim zamówieniu statusu Do obsługi ręcznej.

Aktualizacja statusu odbywa się z wykorzystaniem endpointu:

PUT /{organizationName}/orders/{id}/change-status

Do przesłania zapytania potrzebne jest ID zamówienia oraz ID statusu, który ma zostać nadany po wysłaniu żądania.