Integracja sklepu Agilix z Allegro

Jak aplikacja Agilix Sklep korzysta z REST API Allegro: cele, działanie, autoryzacja, uprawnienia, dane i zgodność z regulaminem.

Stan na 29 września 2026 r.

Agilix Sklep to aplikacja zarejestrowana w Allegro Developer Apps, która łączy sklep internetowy agilix.dog (zabawki, smakołyki i akcesoria dla psów) z kontem sprzedawcy na Allegro. Dzięki niej sklep ma jeden katalog produktów, jeden stan magazynowy i jedną obsługę zamówień - bez prowadzenia drugiego zaplecza w panelu Allegro.

Aplikację tworzy i utrzymuje:

Hackerman Consulting - Adam Gajzlerowicz

NIP 7772841677

Regon 380997651

Hebanowa 16E, 62-020 Zalasewo, woj. wielkopolskie

+48 737 909 076

adam@agilix.dog

Cele aplikacji

  • wystawianie produktów sklepu agilix.dog jako ofert na Allegro oraz aktualizowanie ich nazwy, opisu, zdjęć i ceny;
  • utrzymywanie jednego wspólnego stanu magazynowego - sprzedaż w sklepie zmniejsza liczbę sztuk w ofercie na Allegro, a sprzedaż na Allegro zmniejsza stan w sklepie, zwykle w ciągu minuty;
  • pobieranie opłaconych zamówień z Allegro do panelu zamówień sklepu, aby realizować je razem z zamówieniami złożonymi w sklepie;
  • przekazywanie do Allegro statusu realizacji zamówienia i numeru przesyłki.

Kto korzysta z aplikacji

Z aplikacji korzysta wyłącznie administrator sklepu agilix.dog, w ustawieniach sklepu w panelu administracyjnym. Łączy on z aplikacją jedno konto sprzedawcy Allegro - to, z którego sklep sprzedaje. Kupujący i pozostali użytkownicy Agilix nie logują się do Allegro przez tę aplikację i nie mają dostępu do jej ustawień.

Jak działa wystawianie ofert

Administrator zaznacza przy produkcie pole "Synchronizuj z Allegro", wybiera kategorię i wymagane parametry oraz cenę na Allegro. Po zapisaniu produktu serwer Agilix w tle przesyła zdjęcia do Allegro, tworzy lub aktualizuje ofertę (produkt, kategoria i parametry, dane producenta i osoby odpowiedzialnej zgodnie z GPSR, cena, liczba sztuk, cennik dostawy, warunki zwrotów i reklamacji) i ją publikuje.

  • Odznaczenie pola, dezaktywacja produktu lub wyczerpanie stanu kończy ofertę; ponowna dostępność wznawia ją.
  • Zmiany trafiają do kolejki zadań w tle, więc edycja w sklepie nie czeka na odpowiedź Allegro.
  • Jeśli Allegro odrzuci ofertę, administrator widzi przy produkcie kod i komunikat błędu z Allegro i może ponowić synchronizację.

Jak działa obsługa zamówień

  • Raz na minutę serwer odczytuje dziennik zdarzeń zamówień od ostatnio przetworzonego zdarzenia.
  • Zamówienie trafia do sklepu dopiero wtedy, gdy jest gotowe do realizacji (READY_FOR_PROCESSING) i nie zostało anulowane; każde zamówienie jest importowane dokładnie raz, a stan magazynowy maleje o zamówione sztuki.
  • Anulowanie zamówienia na Allegro anuluje je w sklepie i przywraca stan magazynowy.
  • Gdy administrator zmienia status zamówienia lub nadaje przesyłkę, aplikacja aktualizuje status realizacji w Allegro i dodaje numer przesyłki.
  • Zwroty pieniędzy za zamówienia z Allegro są obsługiwane w panelu Allegro, poza aplikacją.

Autoryzacja użytkownika

Aplikacja korzysta ze standardowego przepływu OAuth 2.0 (Authorization Code) udostępnianego przez Allegro. Nikogo nie prosi o login, hasło, Client ID ani Client Secret.

  1. Administrator klika "Połącz z Allegro" w ustawieniach sklepu. Serwer tworzy podpisany parametr state, ważny 15 minut i przypisany do tego administratora.
  2. Przeglądarka przechodzi na stronę logowania Allegro (https://allegro.pl/auth/oauth/authorize), gdzie sprzedawca loguje się na swoje konto i wyraża zgodę na uprawnienia aplikacji.
  3. Allegro przekierowuje na zarejestrowany adres https://api.agilix.dog/allegro/oauth/callback. Serwer sprawdza podpis i ważność state oraz to, że użytkownik nadal jest administratorem sklepu, a następnie wymienia kod na tokeny (https://allegro.pl/auth/oauth/token), uwierzytelniając się własnym Client ID i Client Secret aplikacji.
  4. Serwer odczytuje login połączonego konta i zapisuje połączenie. Token odświeżający jest przechowywany wyłącznie na serwerze, zaszyfrowany algorytmem AES-256-GCM. Token dostępowy jest odświeżany automatycznie, a nowy token odświeżający od razu zastępuje poprzedni.

Client Secret i tokeny nigdy nie trafiają do przeglądarki, aplikacji mobilnej ani do innych podmiotów.

Uprawnienia aplikacji

Aplikacja prosi tylko o uprawnienia potrzebne do opisanych funkcji:

allegro:api:profile:read
odczyt loginu połączonego konta, aby administrator widział, które konto Allegro jest podłączone.
allegro:api:sale:offers:read
odczyt ofert sklepu i wyników operacji ich tworzenia oraz podpowiedzi kategorii i ich parametrów.
allegro:api:sale:offers:write
tworzenie, edycja, publikacja i kończenie ofert sklepu oraz przesyłanie ich zdjęć.
allegro:api:sale:settings:read
odczyt cenników dostawy, warunków zwrotów i reklamacji oraz danych producentów i osób odpowiedzialnych (GPSR), aby administrator wybrał je dla ofert.
allegro:api:sale:settings:write
dodanie danych producenta odpowiedzialnego (GPSR), jeśli konto jeszcze ich nie ma.
allegro:api:orders:read
odczyt zdarzeń i szczegółów zamówień, przewoźników i przesyłek.
allegro:api:orders:write
aktualizacja statusu realizacji zamówienia i dodanie numeru przesyłki.

Wykorzystywane zasoby REST API

Wszystkie zapytania są wysyłane z serwera Agilix na https://api.allegro.pl (zdjęcia na https://upload.allegro.pl) w imieniu połączonego konta:

Oferty i ich publikacja

  • POST /sale/product-offers
  • PATCH /sale/product-offers/{offerId}
  • GET /sale/product-offers/{offerId}
  • GET /sale/product-offers/{offerId}/operations/{operationId}
  • PUT /sale/offer-publication-commands/{commandId}
  • GET /sale/offer-publication-commands/{commandId}

Zdjęcia

  • POST /sale/images

Kategorie i parametry

  • GET /sale/matching-categories
  • GET /sale/categories/{categoryId}/parameters

Ustawienia sprzedaży

  • GET /sale/shipping-rates
  • GET /after-sales-service-conditions/return-policies
  • GET /after-sales-service-conditions/implied-warranties
  • GET /after-sales-service-conditions/warranties
  • GET /sale/responsible-producers
  • POST /sale/responsible-producers
  • GET /sale/responsible-persons

Zamówienia

  • GET /order/events
  • GET /order/event-stats
  • GET /order/checkout-forms/{checkoutFormId}

Realizacja i przesyłki

  • PUT /order/checkout-forms/{checkoutFormId}/fulfillment
  • GET /order/checkout-forms/{checkoutFormId}/shipments
  • POST /order/checkout-forms/{checkoutFormId}/shipments
  • GET /order/carriers

Konto

  • GET /me

Przetwarzane dane

Aplikacja przetwarza tylko dane potrzebne do sprzedaży: dane ofert sklepu oraz dane zamówień z Allegro - imię i nazwisko, adres dostawy lub punkt odbioru, telefon, adres e-mail w domenie allegromail.pl, dane do faktury, zamówione produkty i wiadomość do sprzedającego.

Dane zamówień służą wyłącznie do realizacji i wysyłki danego zamówienia. Sklep nie wysyła kupującym z Allegro żadnych wiadomości e-mail - ani transakcyjnych, ani marketingowych - i nie wykorzystuje ich danych do marketingu.

Zasady przetwarzania danych osobowych: Polityka Prywatności

Zgodność z regulaminem REST API Allegro

  • Aplikacja korzysta wyłącznie z własnego Client ID i Client Secret, przechowywanych jako sekrety serwera; nie udostępnia ich nikomu i nigdy nie prosi użytkowników o ich klucze.
  • Dostęp do konta sprzedawcy uzyskuje tylko przez OAuth 2.0, za zgodą sprzedawcy i w zakresie opisanych wyżej uprawnień.
  • Każde zapytanie zawiera stały nagłówek User-Agent identyfikujący aplikację: Agilix-Sklep/1.0.0 (+https://agilix.dog/).
  • Aplikacja przestrzega limitów: dziennik zamówień odpytuje raz na minutę, oferty aktualizuje tylko po zmianie produktu, a po odpowiedzi 429 czeka tyle, ile wskazuje nagłówek Retry-After.
  • Nie pobiera masowo ofert ani danych innych sprzedawców i kupujących; dane z API wykorzystuje wyłącznie do obsługi sprzedaży połączonego konta.
  • Komunikacja odbywa się wyłącznie przez HTTPS, a tokeny są przechowywane w postaci zaszyfrowanej.

Odłączenie konta

Administrator może w każdej chwili kliknąć "Odłącz" w ustawieniach sklepu - serwer usuwa wtedy zapisane tokeny i powiązania ofert, a aplikacja przestaje wysyłać zapytania dla tego konta. Dostęp można też cofnąć po stronie Allegro, w ustawieniach konta; aplikacja oznacza wtedy połączenie jako rozłączone i pokazuje to administratorowi.

Pytania dotyczące aplikacji: adam@agilix.dog.