[NEWS] Zestawy elastyczne - wprowadzimy nowe zasoby do obsługi zestawów ofert / Flexible bundles – we will introduce new resources to handle offer bundles
- Ngôn ngữ chính
- Không có dữ liệu ngôn ngữ
- Star
- 244
- Fork
- 40
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
W **drugiej połowie kwietnia 2026** wprowadzimy nową generację narzędzi do budowania zestawów – **Zestawy elastyczne**. To rozwiązanie, które zastąpi dotychczasowe [zestawy ofertowe](https://developer.allegro.pl/tutorials/jak-zarzadzac-rabatami-promocjami-yPya2mj6zUP#pobierz-liste-zestawow-ofert), da sprzedającym większą swobodę w zarządzaniu zestawami, a kupującym możliwość zakupu spersonalizowanych zestawów.
Najważniejsza funkcja zestawów elastycznych to możliwość zdefiniowania grupowych slotów, dzięki którym stworzysz zestawy dla wielu ofert jednocześnie, w ramach jednej akcji i jednego wspólnego zestawu. Dzięki temu kupujący może wybrać zestaw spośród zdefiniowanych przez sprzedającego ofert w poszczególnych slotach.
**Jakie wprowadzimy zmiany w API Allegro?**
1. W drugiej połowie kwietnia 2026 wdrożymy grupę nowych endpointów do zarządzania Zestawami elastycznymi:
- [POST /sale/flexible-bundles](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/createFlexibleBundleUsingPOST) - utwórz nowy zestaw elastyczny
- [GET /sale/flexible-bundles](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/listSellersFlexibleBundlesUsingGET) - pobierz listę utworzonych zestawów elastycznych
- [GET /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/getFlexibleBundleUsingGET) - pobierz szczegóły zestawu elastycznego
- [PUT /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/updateFlexibleBundleUsingPUT) - edytuj zestaw elastyczny
- [DELETE /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/deleteFlexibleBundleUsingDELETE) - usuń zestaw elastyczny.
**Dokładną datę wdrożenia podamy w newsie przypominającym o zmianie.**
2. Wraz z wdrożeniem zaczniemy przenosić istniejące zestawy ofertowe do nowego narzędzia.
3. Równocześnie, **wyłączymy dotychczasowe API do tworzenia zestawów ofertowych**:
- [POST /sale/bundles](https://developer.allegro.pl/documentation/#operation/createOfferBundleUsingPOST) - utwórz zestaw ofert
- [GET /sale/bundles](https://developer.allegro.pl/documentation/#operation/listSellersOfferBundlesUsingGET) - pobierz listę zestawów
- [GET /sale/bundles/{bundleId}](https://developer.allegro.pl/documentation/#operation/getOfferBundleUsingGET) - pobierz szczegóły wybranego zestawu
- [DELETE /sale/bundles/{bundleId}](https://developer.allegro.pl/documentation/#operation/deleteOfferBundleUsingGET) - usuń wybrany zestaw
- [PUT /sale/bundles/{bundleId}/discount](https://developer.allegro.pl/documentation/#operation/updateOfferBundleDiscountUsingPUT) - zmień rabat dla wybranego zestawu.
4. **Od dziś możesz rozpocząć testy nowego rozwiązania** w ramach publicznego API [Sandboxa](https://allegro.pl.allegrosandbox.pl/). Szczegółowa dokumentacja endpointów dostępna jest już [w dedykowanej dokumentacji](https://developer.allegro.pl/docs/flexible-bundles-api).
**Przykładowy request tworzący nowy zestaw elastyczny:**
```json5
curl -X POST \
'https://api.allegro.pl.allegrosandbox.pl/sale/flexible-bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"slots": [
{
"order": 0, // kolejność slotów w zestawie.
"entryPoint": true, // wskazuje czy na stronach ofert w slocie zostanie
// wyświetlony zestaw.
"requiredQuantity": 2, // wymagana liczba sztuk z tego slotu przy
// zakupie.
"offers": [ // lista ofert w slocie.
{
"id": "1240124104",
"excludedFromDiscount": false // czy oferta jest wykluczona ze zniżki
// zdefiniowanej w discount.
}
]
},
{
"order": 1,
"entryPoint": false,
"requiredQuantity": 1,
"offers": [
{
"id": "1240234504",
"excludedFromDiscount": false
}
]
}
],
"discount": {
"type": "SLOT_DISCOUNT", // rodzaj rabatu:
// - WHOLE_BUNDLE_DISCOUNT oznacza, że kwota
// rabatu zostanie rozłożona proporcjonalnie
// na wszystkie niewykluczone ze zniżki
// oferty w zestawie.
// - SLOT_DISCOUNT pozwala określić, które sloty
// w zestawie są objęte rabatem i w jakiej
// wysokości, np. slot z etui na smartfony może być
// objęty rabatem w wysokości 20%, ale slot ze
// słuchawkami może nie być objęta żadnym
// rabatem.
"slot": {
"slots": [
{
"order": 0,
"discounts": [
{
"marketplaceId": "allegro-pl",
"percentage": 5
},
{
"marketplaceId": "allegro-cz",
"percentage": 10
}
]
},
{
"order": 1,
"discounts": [
{
"marketplaceId": "allegro-cz",
"percentage": 20
}
]
}
]
}
}
}'
```
**Jakie są kluczowe różnice w działaniu mechanizmów?**
| | Zestawy ofertowe | Zestawy elastyczne |
|-------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Sposób tworzenia i zarządzania** | Partnerzy muszą tworzyć każdy zestaw osobno, nawet jeśli dotyczyły one różnych wariantów tych samych produktów. Powoduje to konieczność generowania wielu niemal identycznych zestawów, z których zazwyczaj tylko pierwszy był widoczny dla użytkownika. | Wprowadzimy mechanizm grupowego tworzenia zestawów typu „wiele do wielu”. Pozwoli to na stworzenie zestawów dla wielu ofert jednocześnie w ramach jednej akcji i jednego wspólnego zestawu. |
| **Mechanizm wyboru dla kupującego** | Kupujący mogą zakupić cały zestaw lub jego część, ale nie mają możliwości zamiany oferty w zestawie na inny wariant lub alternatywny produkt. | Wprowadzimy mechanizm wymiany oferty w zestawie. Kupujący będzie mógł samodzielnie wybrać inny produkt w zestawie na inny, np. wybrać inny wariant kolorystyczny lub inny pasujący produkt z tej samej kategorii. |
| **System rabatowania** | Dostępne są wyłącznie rabaty kwotowe na cały zestaw. Przy asortymencie o zróżnicowanych cenach i marżach jest to trudne w zarządzaniu i podatne na błędy (np. mylenie ceny po rabacie z kwotą rabatu). | Wprowadzimy rabaty procentowe. Sprzedający zyska wybór: może udzielić rabatu na cały zestaw lub tylko na konkretną kategorię produktów wchodzącą w jego skład. |
--------
In the **second half of April, 2026**, we are introducing a new generation of tools for building bundles – **Flexible bundles**. This solution, which will replace the existing [offer bundles](https://developer.allegro.pl/tutorials/how-to-manage-rebates-and-promotions-g05avdL0vT4#offer-bundles), will give sellers greater freedom in managing bundles, also bringing the opportunity to purchase personalized bundles for the buyers.
The most important feature of flexible bundles is the ability to define group slots, which allow you to create bundles for multiple offers at once, as part of a single action and a single shared bundle. This allows buyers to choose a bundle from among the offers defined by the seller in individual slots.
**What changes will we introduce to the Allegro API?**
1. In the **second half of April 2026**, we will implement a group of new endpoints for managing Flexible bundles:
- [POST /sale/flexible-bundles](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/createFlexibleBundleUsingPOST) - create a new flexible bundle
- [GET /sale/flexible-bundles](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/listSellersFlexibleBundlesUsingGET) - get a list of created flexible bundles
- [GET /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/getFlexibleBundleUsingGET) - get details of the flexible bundles
- [PUT /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/updateFlexibleBundleUsingPUT) - modify flexible bundle
- [DELETE /sale/flexible-bundles/{bundleId}](https://developer.allegro.pl/docs/flexible-bundles-api#tag/Flexible-bundles/operation/deleteFlexibleBundleUsingDELETE) - delete flexible bundle.
**We will announce the exact implementation date in the future update, reminding you about the change.**
2. With deployment, we will begin a migration process of the existing offer bundles to the new tool.
3. At the same time, we will disable the existing API for creating offer bundles:
- [POST /sale/bundles](https://developer.allegro.pl/documentation/#operation/createOfferBundleUsingPOST) - create offer bundle
- [GET /sale/bundles](https://developer.allegro.pl/documentation/#operation/listSellersOfferBundlesUsingGET) - get list of bundles
- [GET /sale/bundles/{bundleId}](https://developer.allegro.pl/documentation/#operation/getOfferBundleUsingGET) - get details of an offer bundle
- [DELETE /sale/bundles/{bundleId}](https://developer.allegro.pl/documentation/#operation/deleteOfferBundleUsingGET) - delete offer bundle
- [PUT /sale/bundles/{bundleId}/discount](https://developer.allegro.pl/documentation/#operation/updateOfferBundleDiscountUsingPUT) - change the discount for the selected bundle.
4. **Starting today, you can begin testing the new solution** on the public API [Sandbox](https://allegro.pl.allegrosandbox.pl/). Detailed documentation of endpoints is now available in the [dedicated documentation](https://developer.allegro.pl/docs/flexible-bundles-api).
**An example request creating a new flexible bundle:**
```json5
curl -X POST \
'https://api.allegro.pl.allegrosandbox.pl/sale/flexible-bundles' \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"slots": [
{
"order": 0, // slot order in the bundle.
"entryPoint": true, // indicates whether bundles will be displayed
// on the offer pages in the slot.
"requiredQuantity": 2, // required purchase quantity from this slot.
"offers": [ // list of offers in the slot.
{
"id": "1240124104",
"excludedFromDiscount": false // is the offer excluded from the discount
// defined in discount.
}
]
},
{
"order": 1,
"entryPoint": false,
"requiredQuantity": 1,
"offers": [
{
"id": "1240234504",
"excludedFromDiscount": false
}
]
}
],
"discount": {
"type": "SLOT_DISCOUNT", // type of discount:
// - WHOLE_BUNDLE_DISCOUNT means that
// the discount amount will be distributed
// proportionally across all offers in the bundle
// that are not excluded from the discount.
// - SLOT_DISCOUNT allows you to specify which
// slots in the bundle are eligible for a discount
// and how much, e.g., a slot with a smartphone
// case may be eligible for a 20% discount, but a slot
// with headphones may not be eligible for any
// discount.
"slot": {
"slots": [
{
"order": 0,
"discounts": [
{
"marketplaceId": "allegro-pl",
"percentage": 5
},
{
"marketplaceId": "allegro-cz",
"percentage": 10
}
]
},
{
"order": 1,
"discounts": [
{
"marketplaceId": "allegro-cz",
"percentage": 20
}
]
}
]
}
}
}'
```
**What are the key differences in how the mechanisms work?**
| | Offer bundles | Flexible bundles |
|---------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **The way of creating and managing** | Partners must create each bundle separately, even if they relate to different variants of the same products. This results in the need to generate multiple nearly identical bundles, of which usually only the first one was visible to the user. | We will introduce a mechanism for creating “many-to-many” bundles. This will allow you to create bundles for multiple offers simultaneously as part of a single action and a single shared bundle. |
| **Selection mechanism for the buyer** | Buyers may purchase the entire bundle or part of it, but they cannot exchange the bundle for another variant or alternative product. | We will introduce a mechanism for exchanging items in a bundle. Buyers will be able to choose a different product in the bundle, e.g., select a different color variant or another matching product from the same category. |
| **Discount system** | Only fixed discounts on the entire bundles are available. With a range of products with varying prices and margins, this is difficult to manage and prone to errors (e.g., confusing the discounted price with the discount amount). | We will introduce percentage discounts. Sellers will have a choice: they can offer a discount on the entire bundle or only on a specific category of products included in it. |
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Đánh giá
Issue này chưa được đánh giá.