allegro / allegro-api

Issue tracker and wiki for Allegro REST API
https://developer.allegro.pl/
213 stars 39 forks source link

[NEWS] Dodaliśmy nowy filtr wyszukiwania dla operacji billingowych / We have introduced a new search filter for billing operations #5881

Open MartaNowaczyk opened 2 years ago

MartaNowaczyk commented 2 years ago

Udostępniliśmy nowy filtr wyszukiwania order.id dla GET /billing/billing-entries, dzięki temu pobierzesz operacje billingowe powiązane z danym zamówieniem.


We have introduced a new order.id search filter for GET /billing/billing-entries, thanks to this you will receive all billing operations associated with the passed order.

allegrofan commented 2 years ago

filtr nie zwraca opłat za przesyłkę. Np smart do paczkomatu 0,99zł

PrzemyslawLukanowski commented 2 years ago

Nie udało mi się powtórzyć tego błędu. Filtr uwzględnia ten rodzaj operacji (HB4). Możesz podać trace-id, gdzie nie otrzymałeś tego rodzaju operacji?

kepesian commented 1 year ago

Czy filtr HB4 działa? otrzymuję pusty array w response, a przy pobraniu części bez filtru, nie ma nigdzie pozycji HB4

PrzemyslawLukanowski commented 1 year ago

Tak, działa, przed chwilą to sprawdziłem. Być może nie masz na koncie żadnych operacji związanych z tym kodem? Możesz to sprawdzić w zakładce Rozliczenia z Allegro.

kepesian commented 1 year ago

HB4 to Allegro paczkomaty Inpost czyli rozumiem że w rozliczeniach widoczne również jako (Allegro Paczkomaty InPost - w ramach Uslugi Allegro Smart); HB2- Przesyłka Poczta Polska - rozumiem, że pod to podchodzi z rozliczeń opis ( Allegro Pocztex Kurier 48 - w ramach Uslugi Allegro Smart) , czy może się mylę i inny filtr tutaj nalezy zastosować ? ( Zwraca mi puste tablice) mimo, że w rozliczeniu na koncie widoczne są. Dodatkowo, gdy nie ustawię pola type.id , to w response otrzymiuję tablice, w których nie ma żadnego id typu który byłby zgodny z jakąkolwiek wysyłką, a przeglądam np. ofertę z okresu 4 miesięcy.

PrzemyslawLukanowski commented 1 year ago

Tak, to prawidłowy typ. Całą listę wszystkich dostępnych typów możesz pobrać za pomocą GET /billing/billing-types. Zarówno na stronie, jak i w API, przy wpisie znajduje się numer zamówienia powiązany z opłatą. Czy możesz go użyć jako wartości w parametrze order.id? Czy w takim przypadku również nie otrzymujesz opłaty, którą widzisz w zakładce Rozliczenia z Allegro? Jeśli tak, to czy możesz przesłać zrzut ekranu, który obejmuje wyłącznie ten odcinek dotyczący opłaty, której nie zwracamy w API oraz trace id wywołania?

kepesian commented 1 year ago

w rozliczeniach dla billingTypes=HB2 lub billingTypes=HB4 - dane sa pokazywane prawidłowo - są opłaty z tych tyułów, ale z API dostaje puste tablice dla tych filtrów. Dla innycch filtróe "SUC", "FEA""FSF" odpowiedzi są poprawne. Nie wiem jak jest dla ITR i DDP, bo nie mam takich

PrzemyslawLukanowski commented 1 year ago

Prosiłbym w takim razie dane, o których wspomniałem oraz przykładowe trace id wywołania, gdzie nie otrzymujesz wpisów H2 i H4.

kepesian commented 1 year ago

OK, filtry działają, ale wyłącznie dla podania order.id, gdy podaje offer.id - nie uzyskuję danych o opłatach pobranych za wysyłki choć filtrem jest typ operacji.

PrzemyslawLukanowski commented 1 year ago

Operacje HB4 nie są powiązane z offer.id, dlatego jeśli przekazujesz numer oferty, nie zwrócimy żadnych wyników związanych z tym wpisem.

kepesian commented 1 year ago

Reasumują, gdy parametry są $param = array( "offset" => $offset, // jakiś offset "occurredAt.gte" => $DateReport_start "occurredAt.lte" => $DateReport_end "offer.id" => $OfferNumber, // moja oferta "type.id" => "HB4", ); $data = $api->getDirect('/billing/billing-entries', $param);

zwracany jest pusty rekord - nie ma opłat

Jeżeli jednak dane są zamiast offer jest konkretny order $param = array( "offset" => $offset, // jakiś offset "occurredAt.gte" => $DateReport_start "occurredAt.lte" => $DateReport_end "order.id" => $OrderId // jakiś konkretny order "type.id" => "HB4", ); $data = $api->getDirect('/billing/billing-entries', $param);

otrzymuję talice z jednym rekordem ( to oczywiste bo dla jednego zamówienia jest jedna opłata za przesyłkę).

Pytanie brzmi jak pobrać opłaty związane ze sprzedażą produktów z konkretnej oferty, czyli jak opłaty pobrane filterm np."SUC"

$param = array( "offset" => $offset, // jakiś offset "occurredAt.gte" => $DateReport_start "occurredAt.lte" => $DateReport_end "offer.id" => $OfferNumber, // moja oferta "type.id" => "SUC", ); $data = $api->getDirect('/billing/billing-entries', $param);

który zwraca to co powinno, tablice z tyloma rekordemi ile razy wystapiła opłata SUC.

kepesian commented 1 year ago

OK, rozumiem, czyli jeżeli mam 1000 wysyłek, to oaby pobrać sumę opłat HB4, pownieniem 1000 razy wysłać requesta o opłatę HB4 z order.id jako parametrem ?

PrzemyslawLukanowski commented 1 year ago

Pytanie brzmi jak pobrać opłaty związane ze sprzedażą produktów z konkretnej oferty, czyli jak opłaty pobrane filterm np."SUC"

Dokładnie tak, jak to przedstawiłeś, czyli za pomocą filtrów offer.id i type.id + opcjonalnie data wystąpienia opłaty i offset.

OK, rozumiem, czyli jeżeli mam 1000 wysyłek, to oaby pobrać sumę opłat HB4, pownieniem 1000 razy wysłać requesta o opłatę HB4 z order.id jako parametrem ?

Możesz ominąć parametr order.id i w ten sposób zwrócimy wszystkie opłaty typu HB4 w ramach prowadzonej sprzedaży. W ten sposób również wyliczysz sumę opłat.

kepesian commented 1 year ago

OK, dziękiję - zrobie to zwykłym requestem ( bo 1000 pytań to mało efektywne) a resztę dopasowania opłaty do konkretnej ofery ( opłata związana z zamówieniem, w którym występował konkretny produkt) ( dla osoby dla której to pisze to jedno zamówienie= jeden produkt= jedna opłata związana z ofertą) Dziękuję - Temat zamknięty.