getOrders
Metoda umożliwia pobranie zamówień od określonej daty z managera zamówień BaseLinker. Listę zamówień można ograniczyć przy użyciu filtrów opisanych w parametrach metody. Maksymalnie zwracane jest 100 zamówień jednocześnie.Zalecane jest pobieranie tylko potwierdzonych zamówień (get_unconfirmed_orders = false). Niepotwierdzone zamówienia mogą być niepełne. Użytkownik może być np. w trakcie tworzenia zamówienia - istnieje ono już w bazie, jednak nie ma uzupełnionych wszystkich informacji. Niepotwierdzone zamówienia mogą zawierać tylko częściową listę produktów i mogą zostać wkrótce zmienione. Zamówienia potwierdzone najczęściej nie ulegają już zmianie i mogą być bezpiecznie pobrane do zewnętrznego systemu.
Optymalny sposób pobierania bieżących zamówień to:
Pobranie identyfikatorów nowych zamówień metodą getJournalList.
Lub, przy wykorzystaniu tej metody:
1. Ustalenie początkowej daty i podanie jej w polu date_confirmed_from
2. Przetworzenie wszystkich odebranych zamówień. Jeśli odebrano 100 zamówień, oznacza to, że do pobrania może być ich jeszcze więcej.
3. Pobranie kolejnej paczki zamówień, podając w polu date_confirmed_from wartość z date_confirmed ostatnio pobranego zamówienia. Operacja powtarzana aż do otrzymania paczki z ilością zamówień mniejszą niż 100 (oznacza to że nie ma więcej zamówień do pobrania).
4. Zapisanie date_confirmed ostatnio przetworzonego zamówienia. Kolejne pobranie zamówień można wykonać od tej daty, aby nie pobierać dwukrotnie tych samych zamówień. Nie ma możliwości aby jakieś zamówienie 'wskoczyło' do bazy z wcześniejszą datą potwierdzenia. Tym sposobem ma się pewność, że pobrane zostały wszystkie potwierdzone zamówienia.
Parametry wejściowe
Dane wyjściowe:
Przykładowe wywołanie w php:
| order_id | int | (nieobowiązkowe) Identyfikator zamówienia. Uzupełnienie tego pola spowoduje pobranie informacji tylko o jednym konkretnym zamówieniu. |
| date_confirmed_from | int | (nieobowiązkowe) Data potwierdzenia zamówienia, od której mają zostać pobrane zamówienia. Format unix time stamp. |
| date_from | int | (nieobowiązkowe) Data złożenia zamówienia, od której mają zostać pobrane zamówienia. Format unix time stamp. |
| id_from | int | (nieobowiązkowe) Numer ID zamówienia od którego mają zostać pobrane kolejne zamówienia. |
| get_unconfirmed_orders | bool | (nieobowiązkowe, domyślnie false) Pobieraj także niepotwierdzone zamówienia (jest to np. zamówienie z Allegro do którego klient nie wypełnił jeszcze formularza dostawy). Domyślnie false. Niepotwierdzone zamówienia mogą być jeszcze nie pełne, nieznany jest też sposób i cena wysyłki. |
| status_id | int | (nieobowiązkowe) Identyfikator statusu z którego pobrane mają być zamówienia. Pozostaw puste, aby pobrać zamówienia ze wszystkich statusów. |
| filter_email | varchar(50) | (nieobowiązkowe) Filtrowanie list zamówień wg adresu email (wyświetla tylko zamówienia z podanym adresem email). |
Dane wyjściowe
Metoda zwraca dane w formacie JSON.
| status | varchar(30) | SUCCESS - poprawnie wykonano zapytanie ERROR - wystąpił bład podczas zapytania API. Szczegóły błedu opisane będą w 2 dodatkowych zwracanych polach: error_message i error_code |
| orders | array | Tablica z informacjami o znalezionych zamówieniach. Każde zamówienie opisane jest polami wymienionymi poniżej. |
| order_id | int | Identyfikator zamówienia z managera zamówień BaseLinker |
| shop_order_id | int | Identyfikator zamówienia nadany przez sklep |
| external_order_id | varchar(50) | Identyfikator zamówienia które zostało pobrane z zewnętrzego źródła. Np numer zamówienia w sklepie, lub numer transakcji Allegro. |
| order_source | varchar(20) | Żródło zamówienia - możliwe wartości "shop", "allegro", "ebay", "person", "arena", "carrefour", "ceneo", "emag", "empik", "etsy", etc. |
| order_source_id | int | Identyfikator źródła (np wewnętrzne ID konta allegro, wewnętrzne ID sklepu itp). Unikalne dopiero w połączeniu z polem "order_source" (np. konto ebay i konto allegro mogą mieć taki sam numer ID, ale dwa konta allegro zawsze mają różne ID). |
| order_source_info | varchar(200) | Opis źródła zamówienia - np. adres sklepu lub nick sprzedawcy Allegro (pole obecnie niedostępne!) |
| order_status_id | int | Status zamówienia (lista statusów do pobrania metodą getOrderStatusList |
| date_add | int | Data utworzenia zamówienia (format unix time) |
| date_confirmed | int | Data potwierdzenia zamówienia, jeśli potwierdzone (format unix time) |
| date_in_status | int | Data od której zamówienie znajduje się w aktualnym statusie (format unix time) |
| confirmed | bool | Flaga informująca czy zamówienie jest potwierdzone |
| user_login | varchar(100) | Login użytkownika Allegro lub ebay |
| currency | char(3) | Waluta (np. PLN, EUR) |
| payment_method | varchar(100) | Metoda płatności |
| payment_method_cod | bool | Flaga informująca czy rodzaj płatności jest pobraniowy (opłata przy odbiorze) |
| payment_done | float | Wpłacona kwota |
| user_comments | varchar(1000) | Komentarz kupującego |
| admin_comments | varchar(200) | Uwagi sprzedawcy |
| varchar(150) | Adres email kupującego | |
| phone | varchar(100) | Numer telefonu kupującego |
| delivery_method | varchar(100) | Nazwa sposobu dostawy |
| delivery_price | float | Koszt dostawy brutto |
| delivery_package_module | varchar(12) | Nazwa kuriera (jeśli nadano przesyłkę) |
| delivery_package_nr | varchar(40) | Numer nadawczy przesyłki (jeśli nadano przesyłkę) |
| delivery_fullname | varchar(100) | Adres dostawy - imię i nazwisko |
| delivery_company | varchar(100) | Adres dostawy - firma |
| delivery_address | varchar(100) | Adres dostawy - ulica i numer domu |
| delivery_postcode | varchar(100) | Adres dostawy - kod pocztowy |
| delivery_city | varchar(100) | Adres dostawy - miasto |
| delivery_country | varchar(20) | Adres dostawy - kraj |
| delivery_country_code | char(2) | Adres dostawy - kod kraju (dwuliterowy, np PL) |
| delivery_point_id | varchar(40) | Odbiór w punkcie - identyfikator punktu odbioru |
| delivery_point_name | varchar(100) | Odbiór w punkcie - nazwa punktu odbioru |
| delivery_point_address | varchar(100) | Odbiór w punkcie - adres punktu odbioru |
| delivery_point_postcode | varchar(100) | Odbiór w punkcie - kod pocztowy punktu odbioru |
| delivery_point_city | varchar(100) | Odbiór w punkcie - miasto punktu odbioru |
| invoice_fullname | varchar(200) | Dane płatnika - imię i nazwisko |
| invoice_company | varchar(200) | Dane płatnika - firma |
| invoice_nip | varchar(100) | Dane płatnika - NIP |
| invoice_address | varchar(250) | Dane płatnika - ulica i numer domu |
| invoice_postcode | varchar(20) | Dane płatnika - kod pocztowy |
| invoice_city | varchar(100) | Dane płatnika - miasto |
| invoice_country | varchar(20) | Dane płatnika - kraj |
| invoice_country_code | char(2) | Dane płatnika - kod kraju (dwuliterowy, np PL) |
| want_invoice | bool | Flaga oznaczająca czy klient chce fakturę (1 - tak, 0 - nie) |
| extra_field_1 | varchar(50) | Wartość z "pola dodatkowego 1" - sprzedawca może trzymać tam dowolne informacje |
| extra_field_2 | varchar(50) | Wartość z "pola dodatkowego 2" - sprzedawca może trzymać tam dowolne informacje |
| order_page | varchar(150) | Adres do strony z informacjami o zamówieniu |
| pick_state | int | Flaga informująca o stanie zebrania produktów zamówienia (1 - zebrano wszystkie produkty, 0 - nie zebrano wszystkich produktów) |
| pack_state | int | Flaga informująca o stanie spakowania produktów zamówienia (1 - spakowano wszystkie produkty, 0 - nie spakowano wszystkich produktów) |
| products | array | Tablica zawierająca produktu zamówienia. Każdy element tablicy to również tablica, zawierająca pola: storage (varchar(9)) - typ magazynu z którego pochodzi produkt (dostępne wartości: "db" - magazyn wewnętrzny BaseLinker, "shop" - magazyn sklepu internetowego, "warehouse" - podłączona hurtownia) storage_id (int) - identyfikator magazynu z którego pochodzi produkt (jeden z magazynów BaseLinkera lub jeden z podłączonych do konta sklepów). Puste jeśli magazyn nie jest znany order_product_id (int) - identyfikator pozycji zamówienia z managera zamówień BaseLinker product_id (varchar(50)) - identyfikator produktu w magazynie BaseLinkera lub magazynie sklepu. Puste jeśli numer produktu nie jest znany variant_id (varchar(30)) - identyfikator wariantu produktu. Puste jeśli numer wariantu nie jest znany name (varchar(130)) - nazwa produktu sku (varchar(40)) - sku produktu ean (varchar(32)) - ean produktu auction_id (varchar(20)) - numer aukcji (jeśli zamówienie pochodzi z allegro/ebay) attributes (varchar(150)) - szczegółowe atrybuty produktu, np "Kolor: niebieski" (nazwa wariantu) price_brutto (float) - cena brutto pojedynczej sztuki tax_rate (int) - stawka VAT quantity (int) - ilość sztuk weight (float) - waga pojedynczej sztuki |
Przykład
Dane wejściowe:Dane wyjściowe:
Przykładowe wywołanie w php:
Dokumentacja API