Rabaty i promocje
Dowiedz się, jak zarządzać dostępnymi rabatami i promocjami przez API Allegro.
Rabat na duże zamówienie
Rabat na duże zamówienie dla transakcji B2B (firma - firma) to rabat procentowy, którego wysokość zależy od wartości pojedynczego zamówienia. Rabatem zostaną objęte wszystkie twoje oferty.
Dodaj rabat
Aby utworzyć rabat na duże zamówienie, skorzystaj z POST /sale/loyalty/promotions i określ progi wartościowe pojedynczego zamówienia oraz przypadający dla nich rabat procentowy. Możesz utworzyć tylko jeden rabat na duże zamówienie.
Przykładowy request:
curl -X POST \
‘https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
“benefits”: [
{
“specification”: {
“type”: “LARGE_ORDER_DISCOUNT”, – typ promocji (lista dostępnych
wartości znajduje się w dokumentacji zasobu)
“thresholds”: [ – progi rabatowe
{
“orderValue”: {
“lowerBound”: {
“amount”: “1000.00”, – wartość zamówienia
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “5” – wysokość rabatu (%)
}
},
{
“orderValue”: {
“lowerBound”: {
“amount”: “1500.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “8”
}
}
]
}
}
],
“offerCriteria”: [
{
“type”: “ALL_OFFERS” – rabatem zostaną objęte
} wszystkie oferty
]
}'
W odpowiedzi otrzymasz identyfikator utworzonego rabatu.
Przykładowy response:
{
“id”: “ba01f101-c9ef-4e5d-a88f-efb721bdbb9a”, – identyfikator rabatu
“createdAt”: “2020-10-27T06:31:29.36Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“thresholds”: [
{
“orderValue”: {
“lowerBound”: {
“amount”: “1000.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “5”
}
},
{
“orderValue”: {
“lowerBound”: {
“amount”: “1500.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “LARGE_ORDER_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“type”: “ALL_OFFERS”
}
]
“status”: “ACTIVE”
}
Pobierz dostępne rabaty
GET /sale/loyalty/promotions zwraca listę wszystkich utworzonych na twoim koncie promocji. Aby otrzymać wyłącznie identyfikator rabatu na duże zamówienie, skorzystaj z filtra “promotionType=LARGE_DISCOUNT_ORDER”.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions?promotionType=LARGE_DISCOUNT_ORDER' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“promotions”: [
{
“id”: “ba01f101-c9ef-4e5d-a88f-efb721bdbb9a”, – identyfikator rabatu
“createdAt”: “2020-10-27T06:31:29.36Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“thresholds”: [
{
“orderValue”: {
“lowerBound”: {
“amount”: “1000.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “5”
}
},
{
“orderValue”: {
“lowerBound”: {
“amount”: “1500.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “LARGE_ORDER_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“type”: “ALL_OFFERS”
}
],
“status”: “ACTIVE”
}
],
“totalCount”: 1
}
Pobierz informacje o rabacie
Jeżeli chcesz pobrać szczegółowe informacje o rabacie na duże zamówienie, użyj GET /sale/loyalty/promotions/{promotionId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“id”: “ba01f101-c9ef-4e5d-a88f-efb721bdbb9a”, – identyfikator rabatu
“createdAt”: “2020-10-27T06:31:29.36Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“thresholds”: [ – progi rabatowe
{
“orderValue”: {
“lowerBound”: {
“amount”: “1000.00”, – wartość zamówienia
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “5” – wysokość rabatu (%)
}
},
{
“orderValue”: {
“lowerBound”: {
“amount”: “1500.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “LARGE_ORDER_DISCOUNT”,
}
}
],
“offerCriteria”: [
{
“type”: “ALL_OFFERS” – rabatem objęte są
} wszystkie twoje oferty
],
“status”: “ACTIVE”
}
Edytuj progi rabatowe
Dla rabatu na duże zamówienie udostępniliśmy opcję edycji progów wartościowych zamówienia oraz wysokości przyznanego rabatu. Skorzystaj z PUT /sale/loyalty/promotions/{promotionId}, aby zmienić ustawienia rabatu.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
“id”: “ba01f101-c9ef-4e5d-a88f-efb721bdbb9a”,
“benefits”: [
{
“specification”: {
“type”: “LARGE_ORDER_DISCOUNT”,
“thresholds”: [
{
“orderValue”: {
“lowerBound”: {
“amount”: “2000.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “10”
}
},
{
“orderValue”: {
“lowerBound”: {
“amount”: “3000.00”,
“currency”: “PLN”
}
},
“discount”: {
“percentage”: “15”
}
}
]
}
}
],
“offerCriteria”: [
{
“type”: “ALL_OFFERS”
}
]
}'
Usuń rabat
Aby usunąć rabat na duże zamówienie, skorzystaj z DELETE /sale/loyalty/promotions/{promotionId}. Operacja ta usunie rabat ze wszystkich twoich ofert - jej czas wykonania zależy od liczby ofert, które posiadasz.
Przykładowy request:
curl -X DELETE \
‘https://api.allegro.pl/sale/loyalty/promotions/ba01f101-c9ef-4e5d-a88f-efb721bdbb9a' \
-H ‘Accept: application/vnd.allegro.public.v1+json’ \
-H ‘Authorization: Bearer {token}’
Przykładowy response:
status 204 No Content
Cenniki hurtowe
Dzięki cennikom hurtowym zaoferujesz rabat dla transakcji B2B (firma - firma). Będzie to rabat procentowy, którego wysokość zależy od liczby zakupionych przedmiotów w ofercie.
Dodaj cennik hurtowy
Aby utworzyć cennik hurtowy, skorzystaj z POST /sale/loyalty/promotions i określ progi ilościowe oraz przypadający dla nich rabat procentowy.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
“benefits”: [
{
“specification”: {
“type”: “WHOLESALE_PRICE_LIST”, – typ promocji (lista dostępnych
wartości znajduje się w dokumentacji zasobu)
“name”: “Cennik hurtowy nr 1”, – nazwa cennika
“thresholds”: [ – progi rabatowe
{
“quantity”: { – minimalna liczba
“lowerBound”: 5 zakupionych przedmiotów
},
“discount”: { – wysokość rabatu (%)
“percentage”: “5”
}
},
{
“quantity”: {
“lowerBound”: 10
},
“discount”: {
“percentage”: “8”
}
}
]
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY” – oferty przypiszesz za pomocą
} PUT /sale/offer-modification-commands/{commandId}
]
}'
W odpowiedzi otrzymasz identyfikator utworzonego cennika.
Przykładowy response:
{
“id”: “9de4be5d-9c60-48aa-8711-363625c9d793”, – identyfikator cennika
“createdAt”: “2020-08-13T06:08:06.011Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“name”: “Cennik hurtowy nr 1”,
“thresholds”: [
{
“quantity”: {
“lowerBound”: 5
},
“discount”: {
“percentage”: “5”
}
},
{
“quantity”: {
“lowerBound”: 10
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “WHOLESALE_PRICE_LIST”
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY”
}
],
“status”: “ACTIVE”
}
Przypisz oferty do cennika
Cennik hurtowy przypiszesz do wybranych ofert za pomocą zasobu do grupowych zmian w ofercie - PUT /sale/offer-modification-commands/{commandId}.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/offer-modification-commands/daccd266-fa5e-4a6b-a10b-d24836c411e1' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
“modification”: {
“discounts”: { – typ zmiany
“wholesalePriceList”: {
“id”: “9de4be5d-9c60-48aa-8711-363625c9d793” – identyfikator cennika
}
}
},
“offerCriteria”: [
{
“offers”: [
{
“id”: “9292002929” – identyfikator oferty
},
{
“id”: “9876543210”
}
],
“type”: “CONTAINS_OFFERS”
}
]
}'
Cennik hurtowy dodasz do pojedynczej oferty podczas wystawiania (POST /sale/product-offers) lub edycji oferty (PATCH /sale/product-offers/{offerId}) przekazując jego identyfikator w polu wholesalePriceList.id w sekcji discounts.
…
"discounts": {
"wholesalePriceList": {
"id": "5637592a-0a24-4771-b527-d89b2767d821"
}
},
…
Jeżeli chcesz usunąć powiązanie ofert z wybranym cennikiem hurtowym, to jako identyfikator cennika podaj wartość null.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/offer-modification-commands/daccd266-fa5e-4a6b-a10b-d24836c411e1' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
“modification”: {
“discounts”: {
“wholesalePriceList”: {
“id”: null
}
}
},
“offerCriteria”: [
{
“offers”: [
{
“id”: “9292002929”
},
{
“id”: “9876543210”
}
],
“type”: “CONTAINS_OFFERS”
}
]
}'
Pobierz dostępne cenniki
GET /sale/loyalty/promotions zwraca listę wszystkich utworzonych na twoim koncie promocji. Aby otrzymać wyłącznie listę cenników hurtowych, skorzystaj z filtra “promotionType=WHOLESALE_PRICE_LIST”.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions?promotionType=WHOLESALE_PRICE_LIST' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“promotions”: [
{
“id”: “9de4be5d-9c60-48aa-8711-363625c9d793”, – identyfikator cennika
“createdAt”: “2020-08-13T06:08:06.011Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“name”: “Cennik hurtowy nr 1”, – nazwa cennika
“thresholds”: [ – progi rabatowe
{
“quantity”: { – minimalna ilość
“lowerBound”: 5 zakupionych przedmiotów
},
“discount”: { – wysokość rabatu (%)
“percentage”: “5”
}
},
{
“quantity”: {
“lowerBound”: 10
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “WHOLESALE_PRICE_LIST”
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY”
}
],
“status”: “ACTIVE”
},
{
“id”: “8d389509-18ac-4d66-957a-0124b26864fb”,
“createdAt”: “2020-08-13T06:03:32.649Z”,
“benefits”: [
{
“specification”: {
“name”: “Cennik hurtowy nr 2”,
“thresholds”: [
{
“quantity”: {
“lowerBound”: 20
},
“discount”: {
“percentage”: “5”
}
},
{
“quantity”: {
“lowerBound”: 40
},
“discount”: {
“percentage”: “10”
}
},
{
“quantity”: {
“lowerBound”: 60
},
“discount”: {
“percentage”: “15”
}
}
],
“type”: “WHOLESALE_PRICE_LIST”
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY”
}
],
“status”: “ACTIVE”
}
],
“totalCount”: 2
}
Pobierz informacje o cenniku
Jeżeli chcesz pobrać szczegółowe informacje o wybranym cenniku, użyj GET /sale/loyalty/promotions/{promotionId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“id”: “9de4be5d-9c60-48aa-8711-363625c9d793”, – identyfikator cennika
“createdAt”: “2020-08-13T06:08:06.011Z”, – data utworzenia
“benefits”: [
{
“specification”: {
“name”: “Cennik hurtowy nr 1”, – nazwa cennika
“thresholds”: [ – progi rabatowe
{
“quantity”: { – minimalna liczba
“lowerBound”: 5 zakupionych przedmiotów
},
“discount”: { – wysokość rabatu (%)
“percentage”: “5”
}
},
{
“quantity”: {
“lowerBound”: 10
},
“discount”: {
“percentage”: “8”
}
}
],
“type”: “WHOLESALE_PRICE_LIST”
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY”
}
],
“status”: “ACTIVE”
}
Edytuj cennik
Dla cenników hurtowych udostępniliśmy opcję ich edycji. Skorzystaj z PUT /sale/loyalty/promotions/{promotionId}, aby zmienić ustawienia cennika.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
“id”: “9de4be5d-9c60-48aa-8711-363625c9d793”,
“benefits”: [
{
“specification”: {
“name”: “Cennik hurtowy nr 1”,
“thresholds”: [
{
“quantity”: {
“lowerBound”: 10
},
“discount”: {
“percentage”: “10”
}
},
{
“quantity”: {
“lowerBound”: 20
},
“discount”: {
“percentage”: “20”
}
}
],
“type”: “WHOLESALE_PRICE_LIST”
}
}
],
“offerCriteria”: [
{
“type”: “OFFERS_ASSIGNED_EXTERNALLY”
}
],
“status”: “ACTIVE”
}’
Usuń cennik
Aby usunąć cennik hurtowy, skorzystaj z DELETE /sale/loyalty/promotions/{promotionId}. Operacja ta jednocześnie odepnie cennik od wszystkich powiązanych ofert.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/loyalty/promotions/9de4be5d-9c60-48aa-8711-363625c9d793' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
status 204 No Content
Rabaty ilościowe
Dzięki rabatom ilościowym możesz zaoferować kupującym rabat na kolejną sztukę, przy zakupie określonej liczby sztuk na jednej bądź wielu ofertach. Więcej na ten temat znajdziesz tutaj.
Dodaj rabat ilościowy
Za pomocą POST /sale/loyalty/promotions dodasz nowy rabat ilościowy. Musisz być zautoryzowany jako sprzedawca, który wystawił te oferty.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}' \
-d '{
“benefits”: [{ – wymagane, określa jakie benefity
otrzyma kupujący
“specification”: {
“type”: “UNIT_PERCENTAGE_DISCOUNT”, – wymagane, typ benefitu, obecnie
dostępne są dwie wartości
UNIT_PERCENTAGE_DISCOUNT
(określa procentowy rabat jaki
otrzyma kupujący na daną sztukę
produktu); ORDER_FIXED_DISCOUNT
(określa kwotę, o jaką chcesz
obniżyć wartość zestawu.
Na tej podstawie wyliczymy
jego cenę.)
“configuration”: {
“percentage”: “30” – wymagane, podaj o jaki procent
chcesz obniżyć wartość zestawu.
Na tej podstawie wyliczymy
jego cenę. Minimalna wartość
rabatu to 15%, a maksymalna 100%.
},
“trigger”: {
“forEachQuantity”: “3”, – wymagane, podaj co który przedmiot
ma podlegać obniżce. Rabat ilościowy
dodasz tylko na co 2, 3, 4
bądź 5 sztukę
“discountedNumber”: “1” – wymagane, obecnie jest dostępna
tylko jedna wartość 1
}
}
}],
“offerCriteria”: [{
“type”: “CONTAINS_OFFERS”, – wymagane, obecnie dostępna jest
jedna wartość CONTAINS_OFFERS
(określa jakie oferty wchodzą
w skład zestawu)
“offers”: [{ – wymagane, oferty, które wchodzą
w skład zestawu, bądź rabatu ilościowego
“id”: “6205628150” – wymagane, identyfikator oferty.
Rabatu ilościowego nie dodasz
do ofert ze strefy okazji.
Jeśli chcesz dodać rabat ilościowy
na jednej ofercie podaj tutaj id
jednej wybranej oferty. Jeśli podasz
wiele id ofert ustawisz rabat ilościowy
na wielu ofertach.
},
{
“id”: “6205628489”
},
{
“id”: “6205628082”
},
{
“id”: “6205628361”
}]
}]
}'
Przykładowy response:
{
“id”: “1ec57865-7e15-46f2-b70a-27ea857dd21c”, – identyfikator utworzonego rabatu,
użyj go w zasobach GET, DELETE
jako {promotionId}
“createdAt”: “2018-10-08T09:28:28.951Z”,
“benefits”: [
{
“specification”: {
“configuration”: {
“percentage”: “30” – procentowy rabat jaki
otrzyma kupujący na daną sztukę
produktu
},
“trigger”: {
“forEachQuantity”: 3, – co który przedmiot
ma podlegać obniżce
“discountedNumber”: 1
},
“type”: “UNIT_PERCENTAGE_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“offers”: [
{
“id”: “6205628150”, – numer oferty, która wchodzi
w skład rabatu ilościowego na
wielu ofertach
“quantity”: null, – pole używane dla
zestawów ofert - liczba sztuk
danej oferty wchodząca w skład
zestawu
“promotionEntryPoint”: null – pole używane dla
zestawów ofert - określ, czy na
stronie tej oferty mamy wyświetlać
zestaw
},
{
“id”: “6205628489”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628082”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628361”,
“quantity”: null,
“promotionEntryPoint”: null
}]
“type”: “CONTAINS_OFFERS”
}
],
“status”: “ACTIVE”,
“campaigns”: null
}
Pobierz dostępne rabaty ilościowe
Za pomocą GET /sale/loyalty/promotions pobierzesz informacje o swoich promocjach. Aby wyfiltrować dostępne rabaty skorzystaj z dostępnych opcji:
- MULTIPACK - rabaty ilościowe na pojedynczej ofercie,
- CROSSMULTIPACK - rabat ilościowy na wielu ofertach.
Poniżej przykłady wywołań filtrów:
- wyszukaj informacje o rabatach ilościowych na pojedynczej ofercie: GET /sale/loyalty/promotions?promotionType=MULTIPACK;
- wyszukaj informacje o promocjach przypisanych do danej oferty: GET /sale/loyalty/promotions?offer.id={offerId}.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“promotions”: [
{
“id”: “1ec57865-7e15-46f2-b70a-27ea857dd21c”, – identyfikator utworzonego rabatu,
użyj go w zasobach GET, DELETE
jako {promotionId}
“createdAt”: “2018-10-08T09:28:28.951Z”,
“benefits”: [
{
“specification”: {
“configuration”: {
“percentage”: “30”
},
“trigger”: {
“forEachQuantity”: 3,
“discountedNumber”: 1
},
“type”: “UNIT_PERCENTAGE_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“offers”: [
{
“id”: “6205628150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628489”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628082”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628361”,
“quantity”: null,
“promotionEntryPoint”: null
}]
“type”: “CONTAINS_OFFERS”
}
],
“status”: “ACTIVE”,
“campaigns”: null
}
{
“id”: “3329980c-e0d4-11e8-9f32-f2801f1b9fd1”,
“createdAt”: “2018-10-08T08:28:28.951Z”,
“benefits”: [
{
“specification”: {
“configuration”: {
“percentage”: “50”
},
“trigger”: {
“forEachQuantity”: 3,
“discountedNumber”: 1
},
“type”: “UNIT_PERCENTAGE_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“offers”: [
{
“id”: “6205628154”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205627489”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205626150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628762”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628337”,
“quantity”: null,
“promotionEntryPoint”: null
}]
“type”: “CONTAINS_OFFERS”
}
],
“status”: “ACTIVE”,
“campaigns”: null
}
],
“totalCount”: 2
}
Pobierz informacje o rabacie ilościowym
Za pomocą GET /sale/loyalty/promotions/{promotionId} pobierzesz informacje o danej promocji z rabatem ilościowym, w ramach jednego {promotionId}. Musisz być zautoryzowany jako sprzedawca, który dodał tą promocję.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/loyalty/promotions/{promotionId}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
{
“id”: “1ec57865-7e15-46f2-b70a-27ea857dd21c”, – identyfikator utworzonego rabatu,
użyj go w zasobach GET, DELETE
jako {promotionId}
“createdAt”: “2018-10-08T09:28:28.951Z”,
“benefits”: [
{
“specification”: {
“configuration”: {
“percentage”: “30”
},
“trigger”: {
“forEachQuantity”: 3,
“discountedNumber”: 1
},
“type”: “UNIT_PERCENTAGE_DISCOUNT”
}
}
],
“offerCriteria”: [
{
“offers”: [
{
“id”: “6205628150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628489”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628150”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628082”,
“quantity”: null,
“promotionEntryPoint”: null
},
{
“id”: “6205628361”,
“quantity”: null,
“promotionEntryPoint”: null
}]
“type”: “CONTAINS_OFFERS”
}
],
“status”: “ACTIVE”,
“campaigns”: null
}
Usuń rabat ilościowy
Za pomocą DELETE /sale/loyalty/promotions/{promotionId} usuniesz wybrany rabat ilościowy.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/loyalty/promotions/{promotionId}' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-H 'Authorization: Bearer {token}'
Przykładowy response:
status 204 No Content
Zestawy ofert
Zestawy ofert to połączenie kilku ofert, które możesz sprzedawać w obniżonej cenie. W ten sposób uatrakcyjnisz swoją ofertę i zachęcisz kupujących do większych zakupów.
Utwórz zestaw ofert
Za pomocą POST /sale/bundles utworzysz nowy zestaw ofert. Zestaw musi się składać minimalnie z 2 ofert, a maksymalnie z 9 ofert. Obecnie zestawy obsługujemy tylko w domenie allegro-pl. Jeśli nie chcesz ustawiać rabatu w zestawie, to w tablicy discounts przekaż null lub pustą tablicę.
Przykładowy request:
curl -X POST \
'https://api.allegro.pl/sale/bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
]
}'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
}
Pobierz listę zestawów ofert
Za pomocą GET /sale/bundles pobierzesz listę zestawów ofert zautoryzowanego użytkownika.
Aby dostosować listę do swoich potrzeb, możesz skorzystać z parametrów:
- limit - maksymalna liczba zestawów na liście, max 5000;
- offer.id - pozwala filtrować zestawy zawierające ofertę o podanym id;
- page.id - identyfikator kolejnej strony listy prezentującej zestawy ofert.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"bundles": [ // lista zestawów
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
},
{
"id": "5af902a9-3fbb-4fdb-bece-4a08c0a7556a",
"offers": [
{
"id": "7775430795",
"requiredQuantity": 1,
"entryPoint": true
},
{
"id": "7775430797",
"requiredQuantity": 2,
"entryPoint": true
}
],
"publication": [
{
"marketplace": {
"id": "allegro-pl"
},
"status": "SUSPENDED"
}
],
"discounts": [],
"createdAt": "2024-09-25T17:56:52.992Z",
"createdBy": "USER"
}
],
"nextPage": { // identyfikator kolejnej strony
"id": "MjAyNC0wOS0yNVQxNzo1Njo1Mi45OTJa"
}
}
Pobierz szczegóły wybranego zestawu
Skorzystaj z GET /sale/bundles/{bundleId}, aby pobrać szczegóły wybranego zestawu ofert.
Przykładowy request:
curl -X GET \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36", // identyfikator zestawu
"offers": [ // oferty w zestawie
{
"id": "7775426410", // identyfikator oferty
"requiredQuantity": 1, // wymagana liczba sztuk przedmiotu z oferty w zestawie
"entryPoint": true // czy zestaw będzie widoczny na stronie wskazanej oferty
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [ // status publikacji zestawu w serwisach
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"status": "ACTIVE" // status zestawu, dostępne wartości: ACTIVE, SUSPENDED
}
],
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "100.00", // kwota rabatu
"currency": "PLN" // waluta
}
],
"createdAt": "2024-09-27T07:56:16.137Z", // data utworzenia zestawu
"createdBy": "USER" // informacja, kto utworzył zestaw, dostępne wartości: USER, ALLEGRO
}
Usuń wybrany zestaw
Za pomocą DELETE /sale/bundles/{bundleId} usuniesz wybrany zestaw ofert.
Przykładowy request:
curl -X DELETE \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json'
Przykładowy response:
status 204 No Content
Zmień rabat przypisany do wybranego zestawu
Skorzystaj z PUT /sale/bundles/{bundleId}/discount, aby zmienić rabat w wybranym zestawie ofert. Spowoduje to zastąpienie aktualnie ustawionych rabatów dla wszystkich rynków, więc niezmienione rabaty również muszą być określone w żądaniu. W przypadku, gdy rabat dla wybranego serwisu nie zostanie określony w żądaniu, zostanie on usunięty.
Przykładowy request:
curl -X PUT \
'https://api.allegro.pl/sale/bundles/56b28455-f51e-4caf-b1f2-254a50a9dd36/discount' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"discounts": [ // zniżki związane z zestawem
{
"marketplace": { // identyfikator serwisu
"id": "allegro-pl"
},
"amount": "50.00", // kwota rabatu
"currency": "PLN" // waluta
}
]
}'
Przykładowy response:
{
"id": "56b28455-f51e-4caf-b1f2-254a50a9dd36",
"offers": [
{
"id": "7775426410",
"requiredQuantity": 1,
"entryPoint": true
},
{
"id": "7775426419",
"requiredQuantity": 2,
"entryPoint": false
}
],
"publication": [
{
"marketplace": {
"id": "allegro-pl"
},
"status": "ACTIVE"
}
],
"discounts": [
{
"marketplace": {
"id": "allegro-pl"
},
"amount": "50.00",
"currency": "PLN"
}
],
"createdAt": "2024-09-27T07:56:16.137Z",
"createdBy": "USER"
}
Lista zasobów
Pełną dokumentację zasobów w postaci pliku swagger.yaml znajdziesz tu.
Lista zasobów podstawowych opisanych w poradniku:
- POST /sale/loyalty/promotions - dodaj rabat na duże zamówienie, cennik hurtowy, rabat ilościowy lub promocyjny zestaw ofert
- GET /sale/loyalty/promotions/{promotionId} - pobierz szczegółowe informacje o rabacie na duże zamówienie, cenniku hurtowym, rabacie ilościowym lub promocyjnym zestawie ofert
- PUT /sale/loyalty/promotions/{promotionId} - zmień ustawienia rabatu na duże zamówienie lub cennika hurtowego
- PUT /sale/offer-modification-commands/{commandId} - przypisz grupowo cennik hurtowy do ofert
- DELETE /sale/loyalty/promotions/{promotionId} - usuń rabat na duże zamówienie, cennik hurtowy, rabat ilościowy lub promocyjny zestaw ofert
- POST /sale/bundles - utwórz zestaw ofert
- GET /sale/bundles/{bundleId} - pobierz szczegóły wybranego zestawu ofert
- DELETE /sale/bundles/{bundleId} - usuń wybrany zestaw ofert
- PUT /sale/bundles/{bundleId}/discount - zmień rabat dla wybranego zestawu ofert
Lista zasobów wspierających opisanych w poradniku:
- GET /sale/loyalty/promotions - pobierz listę rabatów i promocji
- GET /sale/bundles - pobierz listę zestawów ofert