This document describes APIs that are available to integrate your own system with Posti’s warehouse service. See service description of the warehouse service at Warehouse service for ecommerce (in English) / Varastopalvelu verkkokauppiaille (in Finnish). Posti’s warehouse service is using the subset of the features provided Glue API’s, which enables dropshipping service also. The Glue is platform which provides Posti’s warehouse and dropshipping service.
Authentication of APIs is based on oAuth, which is described at Posti Authentication API. Once you have agreed to take warehouse service into use and decided to make integration to the warehouse service, Posti will send you API keys for the test and production environment. Use always test environment during the development. Posti will check your integration before you can go live.
When you take the service into use, you need to create your products to Glue before you can send orders to warehouse. Most likely the User Interface (UI) of the warehouse service is fastest method to create products if you have small amount products.
Following picture shows the flow when using APIs. You can make all operations using the User Interface, and almost all warehouse operations can be done by APIs also. You can implement only those APIs that are essential for you business. Inbound delivery is normally done via UI so you don’t need to think about it when developing integration.
As a developer, do the following:
Poll order statuses
Poll product quantities
Environment | Protocol | Host |
---|---|---|
Test | HTTPS | argon.ecom-api.posti.com |
Prod | HTTPS | ecom-api.posti.com |
Product information can be inputted manually, imported from Excel or send via API. You can create and update product information, and query quantities.
Product ID is unique, and it must have business ID as a prefix.
Following product information is mandatory (field name in parenthesis):
“eanCode” is EAN code of the product. It can be used also as second product Id is the product has one.
“product“ section creates the product into the database and “balances” publishes it into the warehouse.
"catalogExternalId" is the ID for your warehouse. Posti provides you the value when you start integration.
One JSON message can include multiple products. You can use the same message to create and update product information. If product exists already, content is overwritten by new content.
PUT /ecommerce/v3/inventory
[ { "product": { "externalId": "{business ID}-{product ID}", "eanCode": "123456789012", "measurements": { "weight": 1.43, "length": 0.2, "width": 0.065, "height": 0.45 }, "unitOfMeasure": "KPL", "descriptions": { "fi": { "name": "product name" } } }, "balances": [ { "productExternalId": "{business ID}-{product ID}", "retailerId": "{business ID}", "catalogExternalId": "{warehouse ID}", "wholesalePrice": 10.10 } ] } ]
Response: 200 OK
Use the following endpoint to get product quantities:
GET /ecommerce/v3/inventory/balances
You get paginated response with max 2000 products per page.
quantity is the stock you have available for new orders.
Example payload{ "links": [], "content": [ { "productExternalId": "{business ID}-{product ID 1}", "eanCode": "123456789013", "retailerId": "{business ID}", "catalogExternalId": "{warehouse ID}", "quantity": 187.0, "allocated": 23, "wholesalePrice": 6.99, "currency": "EUR" }, { "productExternalId": "{business ID}-{product ID 2}", "eanCode": "123456789012", "retailerId": "{business ID}", "catalogExternalId": "{warehouse ID}", "quantity": 167.0, "allocated": 13, "wholesalePrice": 7.99, "currency": "EUR" } ], "page": { "size": 2000, "totalElements": 2, "totalPages": 1, "number": 0 } }
To get following pages, use the following
GET /ecommerce/v3/inventory/balances?page=1
Default page that your receive without page parameter is page= 0 (see in above response value: “number”:0). Based on the value of “totalPages” you need to loop through all the pages.
In this example there is total of 412638 products with balances and there is 207 pages:
"page": { "size": 2000, "totalElements": 412638, "totalPages": 207, "number": 0 }
Sales Order means, e.g. purchase of your products from on-line shop by end-customer, and order is fulfilled by warehouse. The Sales Order placed to warehouse service must have unique order ID. There are two options to form the unique order ID:
Examples of both options are shown below.
Following table lists attributes that are import for the deliveries - wrong values result error in order handling:
externalId - This is order ID, maximum length is 20 characters. This must have your business ID as a prefix. Format is as follows: {business ID}-{unique order ID}.
The Glue creates the unique order ID in case this field is missing. Then order ID is returned in responce message and you shooul store it in your own system.
references.SO - This is additional reference for your order OR it can be used for order ID if you let the Glue to generate primary order ID.
deliveryAddress - recipient of the order. Include mobile phone number or email, preferably both, as they are used to send notice of arrival to recipient. “name” can include recipient’s name and Posti pick-up point name e.g. “Firstname Lastname c/o Posti pick-up point”
if “serviceCode” is “NOUTO” (pick up from warehouse) then email address is mandatory.
externalWarehouseId - This is system ID for the warehouse and it tells in which warehouse the product is stored and shipped from. It is always fixed value in case you have one warehouse at Posti, which is the most common case. The value is provided by Posti.
externalProductId - Unique product ID, maximum 20 characters. This must have your business ID as a prefix. Format is as follows: {business ID}-{unique product ID}. This product must be created in warehouse before your send the first sales order.
serviceCode - This is delivery method for the order. Following delivery services are supported by warehouse service:
Service and description | serviceCode |
---|---|
Postipaketti (Postal parcel), delivery to Posti outlet or parcel locker. | 2103 |
Pikkupaketti (small parcel), delivery to home address | 2143 |
Kotipaketti (Home delivery), delivery to home addresses. | 2104 |
Express-paketti (Express-parcel), delivery to business address | 2102 |
Express-paketti Aamuksi (Express-parcel, morning), delivery to business address | 2101 |
Express-rahti (Express-freight) | 2144 |
Express-rahti, aamuksi (Express freight, morning) | 2143 |
Express-rahti, illaksi (Express freight, evening) | 2145 |
Parcel Connect, international deliveries | 2711 |
Postipaketti Baltiaan (Postal parcel Baltics), international deliveries | 2331 |
Express Business Day Paketti (parcel), international deliveries | 2317 |
Express Business Day Lava (pallet), international deliveries | 2318 |
Pick up from warehouse | NOUTO |
Please note that if the delivery requires some value added-services, for example “Fragile” or “Oversized”, product information can have that information, and the value added service is automatically added to those orders that have products that require value added service.
pickupPointId - This is an additional identifier of the pick-up point address and its' value can be obtained from Location Service API (field name pupCode). You do not need to use this if delivery address is recipient’s own address. Note that you need separate authentication/credentials for the Location Service API, see more information at developer.posti.fi
PUT /ecommerce/v3/order
{ "references" : [ { "name" : "SO", "value" : "{your own order ID}" } ], "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId":"002303200", "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1 }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2 } ] }
{ "externalId": "PCJ-PQV-74Z", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:39:55.637+00:00", "updateDate": "2021-11-19T06:39:55.637+00:00", "documentType": "SalesOrder" }, "references": [ { "name": "SO", "value": "{your own order ID}" } ], "orderDate": "2021-11-19T08:39:55.636+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId": "002303200", "status": { "value": "Created", "timestamp": "2021-11-19T08:39:55.529+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1 }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2 } ] }
Send your own order ID in “externalId”. Note that maximum length of the externalId is 20 characters.
PUT /ecommerce/v3/order
{ "externalId":"{business ID}-{your own order ID}", "deliveryAddress": { "name": "Firstname Lastname", "streetAddress": "Recipient Street 1", "postalCode": "00000", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1 }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2 } ] }
{ "externalId": "{business ID}-{your own order ID}", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:42:45.132+00:00", "updateDate": "2021-11-19T06:42:45.132+00:00", "documentType": "SalesOrder" }, "orderDate": "2021-11-19T08:42:45.132+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname", "streetAddress": "Recipient Street 1", "postalCode": "00000", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "status": { "value": "Created", "timestamp": "2021-11-19T08:42:45.104+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1 }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2 } ] }
You can poll order status to get information about delivered orders with tracking codes to your own system.
Following statuses are available:
Status | Description |
---|---|
Viewed | Order has been successfully transferred to warehouse. This status will be replaced with status “Submitted” in the beginning of 2022. |
Submitted | Order has been successfully transferred to warehouse. This is a new status which will be available in 2022. |
Created | Order has been successfully received by GLUE but not yet transferred to warehouse. |
Delivered | Order has been picked and packed, and it is ready for delivery. Tracking code of the delivery is available. Note that delivery may have multiple tracking codes. |
Error | This is caused be error in system. One reason can be invalid content of the order. |
Cancelled | Order has been cancelled. One of the reasons can be invalid product quantities or delivery problems. |
Orders changed since time stamp (e.g. 2021-11-16T00:01:22.000Z):
GET /ecommerce/v3/orders?updatedFrom=2021-11-16T00%3A01%3A22.000Z
{ "links": [], "content": [ { "externalId": "PCJ-PQV-74Z", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:39:55.637+00:00", "updateDate": "2021-11-19T06:39:56.426+00:00", "documentType": "SalesOrder" }, "references": [ { "name": "SO", "value": "{your own order ID}" } ], "orderDate": "2021-11-19T08:39:55.636+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId": "002303200", "totalWholeSalePrice": 0.0, "status": { "value": "Submitted", "timestamp": "2021-11-19T08:39:56.403+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } } ] }, { "externalId": "businessID-yourownorderID", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:42:45.132+00:00", "updateDate": "2021-11-19T06:42:45.912+00:00", "documentType": "SalesOrder" }, "orderDate": "2021-11-19T08:42:45.132+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname", "streetAddress": "Recipient Street 1", "postalCode": "00000", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "totalWholeSalePrice": 0.0, "status": { "value": "Submitted", "timestamp": "2021-11-19T08:42:45.903+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:42:45.903+02:00" } }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:42:45.903+02:00" } } ] } ], "page": { "size": 200, "totalElements": 2, "totalPages": 1, "number": 0 } }
Status of one order, based on your own order ID as reference (Option 1):
GET /ecommerce/v3/orders?refName=SO&refValue={your own order ID}
{ "links": [], "content": [ { "externalId": "PCJ-PQV-74Z", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:39:55.637+00:00", "updateDate": "2021-11-19T06:39:56.426+00:00", "documentType": "SalesOrder" }, "references": [ { "name": "SO", "value": "{your own order ID}" } ], "orderDate": "2021-11-19T08:39:55.636+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId": "002303200", "totalWholeSalePrice": 0.0, "status": { "value": "Submitted", "timestamp": "2021-11-19T08:39:56.403+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } } ] } ], "page": { "size": 200, "totalElements": 1, "totalPages": 1, "number": 0 } }
Status of one order, based on order ID provided by Glue (Option 1):
GET /ecommerce/v3/orders/{order ID}
{ "externalId": "PCJ-PQV-74Z", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:39:55.637+00:00", "updateDate": "2021-11-19T06:39:56.426+00:00", "documentType": "SalesOrder" }, "references": [ { "name": "SO", "value": "{your own order ID}" } ], "orderDate": "2021-11-19T08:39:55.636+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId": "002303200", "totalWholeSalePrice": 0.0, "status": { "value": "Submitted", "timestamp": "2021-11-19T08:39:56.403+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } } ] }
Status of one order (Option 2):
GET /ecommerce/v3/orders/{business ID}-{your own order ID}
{ "externalId": "PCJ-PQV-74Z", "clientId": "0109357-9", "metadata": { "insertDate": "2021-11-19T06:39:55.637+00:00", "updateDate": "2021-11-19T06:39:56.426+00:00", "documentType": "SalesOrder" }, "references": [ { "name": "SO", "value": "{your own order ID}" } ], "orderDate": "2021-11-19T08:39:55.636+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" }, "serviceCode": "2103", "pickupPointId": "002303200", "totalWholeSalePrice": 0.0, "status": { "value": "Submitted", "timestamp": "2021-11-19T08:39:56.403+02:00" }, "rows": [ { "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "externalWarehouseId": "{warehouse ID}", "quantity": 1.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } }, { "externalProductId": "{business ID}-{unique product ID 2}", "productEANCode": "product_id_2", "externalWarehouseId": "{warehouse ID}", "quantity": 2.0, "status": { "value": "Created", "timestamp": "2021-11-19T08:39:56.403+02:00" } } ] }
Get orders with status DELIVERED with trackingIDs and that have been updated after given timestamp 2023-01-26T03:55:00.000+02:00 (timestamp must be URL encoded i.e. "+" sign should be encoded to %2B):
GET /ecommerce/v3/orders?status=Delivered&updatedFrom=2023-01-26T03:55:00.000%2B02:00
{ "links": [], "content": [ { "externalId": "PN2-CKS-ZW5", "clientId": "0109357-9", "contractNumber": "561110", "metadata": { "insertDate": "2023-01-26T11:46:23.377+00:00", "updateDate": "2023-01-26T11:49:44.435+00:00", "documentType": "SalesOrder", "warehouse": { "shipNode": "12" } }, "references": [ { "name": "SO", "value": "SO1323123" } ], "orderDate": "2023-01-26T13:47:58.027+02:00", "vendor": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "sender": { "externalId": "0109357-9", "name": "Posti Oy", "streetAddress": "Postintaival 7 A 3 123 12", "postalCode": "00230", "postOffice": "Helsinki", "country": "FI", "telephone": "+358440300967", "email": "gluetests1@itella.com" }, "deliveryAddress": { "name": "Firstname Lastname c/o Posti pick up point", "streetAddress": "Recipient Street 1", "postalCode": "00230", "postOffice": "HELSINKI", "country": "FI", "telephone": "0501234567", "email": "firstname.lastname@recipient.fi" },, "additionalServices": [], "serviceCode": "2103", "totalWholeSalePrice": 22, "deliveryOperator": "Posti", "trackingCodes": [ "JJFI65911600264778304" ], "status": { "value": "Delivered", "timestamp": "2023-01-26T13:49:43.680+02:00" }, "rows": [ { "externalId": "1", "externalProductId": "{business ID}-{unique product ID 1}", "productEANCode": "product_id_1", "productUnitOfMeasure": "KPL", "productDescription": "kahvipaketti", "externalWarehouseId": "{warehouse ID}", "quantity": 1, "deliveredQuantity": 1, "productClass": "NORM", "status": { "value": "Delivered", "timestamp": "2023-01-26T13:49:43.680+02:00" }, "trackingCodes": [ "JJFI65911600264778304" ], "wholeSalePrice": 22 } ], "preferences": {} } ], "page": { "size": 2000, "totalElements": 1, "totalPages": 1, "number": 0 } }
deliveredQuantity indicates the value that was sent out from warehouse.
trackingCodes is an array - if products where sent out in multiple parcels then there will be different trackingIds in the array