allegro / allegro/allegro-api

[NEWS] One Fulfillment by Allegro - wdrożyliśmy zmiany w zarządzaniu awizo / One Fulfillment by Allegro - we have implemented changes in ASN management

Offen
#6,887 0 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @AureliuszBrussy Auf GitHub ansehen
News
Vorherrschende Sprache
Keine Sprachdaten
Sterne
244
Forks
40
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Zgodnie z [wcześniejszą zapowiedzią](https://developer.allegro.pl/news/one-fulfillment-by-allegro-wdrozymy-zmiany-w-zarzadzaniu-awizo-RdKD3LKn0Hg) - wdrożyliśmy dzisiaj zmiany w zarządzaniu awizo w ramach usługi [One Fulfillment by Allegro](https://allegro.pl/kampania/fulfillment).

**Jakich endpointów dotyczy zmiana?**

- [GET /fulfillment/advance-ship-notices](https://developer.allegro.pl/documentation#operation/getAdvanceShipNotices),
- [POST /fulfillment/advance-ship-notices](https://developer.allegro.pl/documentation#operation/createAdvanceShipNotice),
- [GET /fulfillment/advance-ship-notices/{id}](https://developer.allegro.pl/documentation#operation/getAdvanceShipNotice),
- [PUT /fulfillment/advance-ship-notices/{id}](https://developer.allegro.pl/documentation#operation/updateAdvanceShipNotice).

**Jakie zmiany wprowadziliśmy?**

1. Usunęliśmy tablice **content** i pozostawiamy jedynie zagnieżdżoną w niej tablice **items**. Dzięki temu sprzedający nie musi deklarować, co znajduje się w kartonach, a jedynie liczbę poszczególnych przedmiotów w całym awizo.
2. Dodaliśmy nowy obiekt **handlingUnit**, w którym sprzedający może zadeklarować:
- **unitType** - rodzaj awizowanej jednostki, gdzie prócz wcześniej dostępnej wartości **BOX** (karton), sprzedający może wybrać również **PALLET** (paletę) oraz **CONTAINER** (kontener),
- **amount** - liczba sztuk podanej jednostki (lub ile jednostek znajdzie się w kontenerze),
- **labelsType** - rodzaj etykiety, dostępne wartości to: **ONE_FULFILLMENT** (sprzedający samodzielnie naklei etykiety), **NONE** (brak etykiet na jednostkach, może wiązać się z dodatkowymi opłatami).
3. W polu **shipping.method** dodaliśmy nową wartość **THIRD_PARTY_DELIVERY**, dzięki której sprzedający może zadeklarować dostawę bezpośrednio od producenta.
4. W obiekcie shipping dodaliśmy obiekt **thirdParty**, który musisz uzupełnić dla metody **THIRD_PARTY_DELIVERY** - zawiera pola:
- **name** - nazwa producenta lub dystrybutora,
- **orderNumber** - indywidualny numer zamówienia u producenta.
5. W obiekcie **shipping** dodaliśmy również pole **countryCode** w którym zdefiniujesz, z jakiego kraju nastąpi wysyłka. Przekazanie wartości w polu jest obowiązkowe.

**Przykładowy request:**

```
curl -X POST \
'https://api.allegro.pl/fulfillment/advance-ship-notices \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"items": [
{
"product": {
"id": "a1520fab-7801-4832-9ccd-fb068c707a74"
},
"quantity": 2
},
{
"product": {
"id": "67df7d34-811e-11ed-a1eb-0242ac120002"
},
"quantity": 3
}
],
"handlingUnit": {
"unitType": "BOX",
"amount": 1,
"labelsType": "ONE_FULFILMENT"
},
"shipping": {
"method": "THIRD_PARTY_DELIVERY",
"trackingNumber": null,
"truckLicencePlate": null,
"estimatedTimeOfArrival": "2023-02-16T11:00:00Z",
"thirdParty": {
"name": "Producer name",
"orderNumber" : "O-123"
},
"countryCode": "PL"
}
}'
```
**Przykładowy response:**

```
{
"id": "3f79982b-a978-4ca3-ae38-b552a43b287b",
"displayNumber": "A-230215-0000026",
"status": "DRAFT",
"createdAt": "2023-02-15T07:37:41.766343917Z",
"updatedAt": "2023-02-15T07:37:41.766343917Z",
"items": [
{
"product": {
"id": "a1520fab-7801-4832-9ccd-fb068c707a74"
},
"quantity": 2
},
{
"product": {
"id": "67df7d34-811e-11ed-a1eb-0242ac120002"
},
"quantity": 3
}
],
"labels": {
"fileUrl": "https://api.allegro.pl/fulfillment/advance-ship-notices/3f79982b-a978-4ca3-ae38-b552a43b287b/labels"
},
"shipping": {
"estimatedTimeOfArrival": "2023-02-16T11:00:00Z",
"method": "THIRD_PARTY_DELIVERY",
"trackingNumber": null,
"truckLicencePlate": null,
"thirdParty": {
"name": "Producer name",
"orderNumber": "O-123"
},
"countryCode": "PL"
},
"handlingUnit": {
"unitType": "BOX",
"amount": 1,
"labelsType": "ONE_FULFILMENT"
}
}
```

**Dlaczego wdrożyliśmy zmianę?**

Udostępniliśmy nowy sposób awizowania, aby ułatwić i usprawnić ten proces dla sprzedających. Dzięki temu unikną oni błędów podczas deklarowania produktów w poszczególnych kartonach.

Chcemy także ułatwiać i usprawniać operacje logistyczne sprzedających, dlatego udostępniliśmy opcję wysłania do magazynu produktów sprzedającego bezpośrednio od producentów i dystrybutorów.

Z kolei możliwość dostawy kontenerowej jest odpowiedzią na potrzeby zagranicznych sprzedających.

Więcej o One Fulfillment by Allegro przeczytasz w [naszym poradniku](https://developer.allegro.pl/tutorials/one-fulfillment-by-allegro-0ADwgOLqWSw).

-------

As [previously announced](https://developer.allegro.pl/news/one-fulfillment-by-allegro-we-will-implement-changes-in-asn-management-K6Ygz9VAYHX) - today we have implemented changes in ASN management within [One Fulfillment by Allegro](https://allegro.pl/kampania/fulfillment) service.

**Which endpoints are affected by the change?**

- [GET /fulfillment/advance-ship-notices](https://developer.allegro.pl/documentation#operation/getAdvanceShipNotices),
- [POST /fulfillment/advance-ship-notices](https://developer.allegro.pl/documentation#operation/createAdvanceShipNotice),
- [GET /fulfillment/advance-ship-notices/{id}](https://developer.allegro.pl/documentation#operation/getAdvanceShipNotice),
- [PUT /fulfillment/advance-ship-notices/{id}](https://developer.allegro.pl/documentation#operation/updateAdvanceShipNotice).

**What changes have we introduced?**

1. We removed the **content** array and left only the **items** array nested within it. This way, the seller doesn't have to declare what is in the boxes, only the number of individual items in the entire ASN.
2. We added a new **handlingUnit** object in which the seller can declare:
- **unitType** - the type of unit in ANS, where in addition to the previously available value **BOX**, the seller can also choose **PALLET** and **CONTAINER**,
- **amount** - the number of items of the specified unit (or how many handling units inside a container will be sent),
- **labelsType** - type of label, available values are: **ONE_FULFILLMENT** (seller will apply labels himself), **NONE** (no labels on units, may incur additional charges).
3. In the **shipping.method** field, we added a new value **THIRD_PARTY_DELIVERY**, so that the seller can declare delivery directly from the manufacturer.
4. In **shipping** object we added a **thirdParty** structure, which you need to complete for the **THIRD_PARTY_DELIVERY** method - it contains fields:
- **name** - the name of the manufacturer or distributor,
- **orderNumber** - individual order number from the manufacturer.
5. In the **shipping** object, we also added a **countryCode** field in which you define from which country the shipment will arrive. This field is mandatory.

**Sample request:**

```
curl -X POST \
'https://api.allegro.pl/fulfillment/advance-ship-notices \
-H 'Authorization: Bearer {token}' \
-H 'Accept: application/vnd.allegro.public.v1+json' \
-H 'Content-Type: application/vnd.allegro.public.v1+json' \
-d '{
"items": [
{
"product": {
"id": "a1520fab-7801-4832-9ccd-fb068c707a74"
},
"quantity": 2
},
{
"product": {
"id": "67df7d34-811e-11ed-a1eb-0242ac120002"
},
"quantity": 3
}
],
"handlingUnit": {
"unitType": "BOX",
"amount": 1,
"labelsType": "ONE_FULFILMENT"
},
"shipping": {
"method": "THIRD_PARTY_DELIVERY",
"trackingNumber": null,
"truckLicencePlate": null,
"estimatedTimeOfArrival": "2023-02-16T11:00:00Z",
"thirdParty": {
"name": "Producer name",
"orderNumber" : "O-123"
},
"countryCode": "PL"
}
}'
```

**Sample response:**

```
{
"id": "3f79982b-a978-4ca3-ae38-b552a43b287b",
"displayNumber": "A-230215-0000026",
"status": "DRAFT",
"createdAt": "2023-02-15T07:37:41.766343917Z",
"updatedAt": "2023-02-15T07:37:41.766343917Z",
"items": [
{
"product": {
"id": "a1520fab-7801-4832-9ccd-fb068c707a74"
},
"quantity": 2
},
{
"product": {
"id": "67df7d34-811e-11ed-a1eb-0242ac120002"
},
"quantity": 3
}
],
"labels": {
"fileUrl": "https://api.allegro.pl/fulfillment/advance-ship-notices/3f79982b-a978-4ca3-ae38-b552a43b287b/labels"
},
"shipping": {
"estimatedTimeOfArrival": "2023-02-16T11:00:00Z",
"method": "THIRD_PARTY_DELIVERY",
"trackingNumber": null,
"truckLicencePlate": null,
"thirdParty": {
"name": "Producer name",
"orderNumber": "O-123"
},
"countryCode": "PL"
},
"handlingUnit": {
"unitType": "BOX",
"amount": 1,
"labelsType": "ONE_FULFILMENT"
}
}
```

**Why will we implement the change?**

We provided a new way of ASN creation to make the process easier and more efficient for sellers. This will avoid errors when declaring products in individual boxes.

We also want to make sellers' logistics operations easier and more efficient, so we have provided the option to send sellers' products directly from manufacturers and distributors to the warehouse.

The container delivery option, on the other hand, addresses the needs of foreign sellers.

You can read more about One Fulfillment by Allegro in [our guide](https://developer.allegro.pl/tutorials/one-fulfillment-by-allegro-4R9dXyMPlc9).

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.