Aktualizacja koszyka

Metoda przekazująca aktualizacje koszyka jakie klient wykonał w aplikacji InPost Pay. Na otrzymany event informujący Merchanta o zmianie na koszyku, Merchant w response powinien przesłać cały zaktualizowanych koszyk.

W danej metodzie wymagamy implementacji wszystkich pól wymienionych w tabeli, ponieważ składają się na całość usługi InPost Pay. Część poniższych pól w kolumnie 'Wymagalność' jest oznaczona jako 'O' tj. opcjonalna ze względu na to, że nie wszystkie produkty/koszyki w sklepach internetowych mają przypisane wszystkie parametry, więc koszyk może zostać utworzony, a zamówienie złożone bez nich. Jednak implementacja/wdrożenie wszystkich pól jest biznesowo WYMAGANE.

POST /v1/izi/basket/{basket_id}/event

Parameters

Nazwa pola

Opis

Typ

Wymagalność

Dodatkowe uwagi

basket_id

Unikalny identyfikator koszyka nadawany przez merchanta

string

Y

 

 

Request

Nazwa pola

Opis

Typ

Wymagalność

Dodatkowe uwagi

event_id

Id eventu

 string

 Y

 

event_data_time

Data i czas wystąpienia eventu

 string($date-time)

 Y

 

event_type

Typ eventu.

Enum:

[ PRODUCTS_QUANTITY, PROMO_CODES, RELATED_PRODUCTS ]

 

PRODUCTS_QUANTITY - zmiana ilości produktu

PROMO_CODES - dodanie/aktualizacja /usunięcie kodu promocyjnego

RELATED_PRODUCTS - dodanie produktu sugerowanego

 string

 Y

 

phone_number

Informacja o numerze użytkownika, z którym jest powiązany koszyk

 object

 O

 

phone_number.country_prefix

Prefix

 string

 Y

 

phone_number.phone

Numer telefonu

 string

 Y

 

quantity_event_data

Obiekt zwracający szczegóły eventu PRODUCTS_QUANTITY

 

 O

 

quantity_event_data.product_id

Identyfikator produktu nadany przez merchanta

string

Y

"product_id":26

quantity_event_data.quantity

Obiekt do przekazania informacji o ilości produktu

object

Y

 

quantity_event_data.quantity.quantity

Ilość produktu

number ($decimal)  

Y

"quantity":1

quantity_event_data.quantity.quantity_type

Typ pola quantity. Dostępne wartości Enum:[ DECIMAL, INTEGER ]

Jeżeli quantity_type produktu to INTEGER, wtedy Merchant przesyła cenę za 1 sztukę produktu. Jeżeli quantity_type produktu to DECIMAL, wtedy Merchant przesyła cenę za wybraną ilość produktu.  

  • Przykład 1) Mamy 5 sztuk koszul w cenie 10 zł za sztukę. W takim przypadku quantity_type, to INTEGER i cena produktu wynosi 10 zł.

  • Przykład 2) Mamy 0,35 kg mąki w cenie 5 zł. W takim przypadku quantity_type, to DECIMAL i cena produktu wynosi 5 zł.

string

O

"quantity_type":"INTEGER"

quantity_event_data.quantity.quantity_unit

Jednostka ilości produktu

string

O

"quantity_unit":"pcs"

quantity_event_data.quantity.available_quantity

Ilość dostępnego produktu w sklepie

number ($decimal)

O

"available_quantity":26

quantity_event_data.quantity.max_quantity

Maksymalna ilość produktu jaką klient może zamówić np. przy jednym zamówieniu

number ($decimal)

O

"max_quantity":26

promo_codes_event_data

Obiekt zwracający szczegóły eventu PROMO_CODES

 object

O

 

promo_codes_event_data.name

Nazwa kodu. W kolejnej wersji aplikacji pole nie wymagalne

string

Y

"name": "Promocja 5%"

promo_codes_event_data.promo_code_value

Kod promocyjny

string

Y

"promo_code_value": "INPOST10"

related_products_event_data

Obiekt zwracający szczegóły eventu RELATED_PRODUCTS

 object

O

 

related_products_event_data.product_id

Identyfikator produktu nadany przez merchanta

string

Y

"product_id":26

related_products_event_data.ean

Ean

string

O

"ean":"0"

related_products_event_data.quantity

Obiekt do przekazania informacji o ilości produktu

object

Y

 

related_products_event_data.quantity.quantity

Ilość produktu

number ($decimal)  

Y

"quantity":1

related_products_event_data.quantity.quantity_type

Typ pola quantity . dostępne wartości Enum: [ DECIMAL, INTEGER ]

string

O

"quantity_type":"INTEGER"

related_products_event_data.quantity.quantity_unit

Jednostka ilości produktu

string

O

"quantity_unit":"pcs"

related_products_event_data.quantity.available_quantity

Ilość dostępnego produktu w sklepie

number ($decimal)

O

"available_quantity":26

related_products_event_data.quantity.max_quantity

Maksymalna ilość produktu jaką klient może zamówić np. przy jednym zamówieniu

number ($decimal)

O

"max_quantity":26

 

 

Response

Nazwa pola

Opis

Typ

Wymagalność

Dodatkowe uwagi

summary

Obiekt służący do przekazania podstawowych danych o koszyku

object

Y

 

summary.basket_base_price

Obiekt służący do przekazania ceny podstawowej za koszyk bez kosztów dostawy

object

Y

 

summary.basket_base_price.net

Cena netto

number ($decimal)(10,2)

Y

"summary":{"basket_base_price":{"net":"250.00","gross":"307.50","vat":"57.5

summary.basket_base_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

summary.basket_base_price.vat

VAT

number ($decimal)(10,2)

Y

summary.basket_final_price

Obiekt służący do przekazania ostatecznej ceny koszyka z uwzględnioną promocją i kodem rabatowym na koszyku bez kosztów dostawy.
Wartość obniżki na koszyku  wynikająca z zastosowania kodu (kodu promocyjnego, który nie reguluje dyrektywa OMNIBUS), widoczna w podsumowaniu koszyka będzie różnicą pomiędzy promo_price a final_price lub base_price a final_price w przypadku gdy koszyk  nie jest w promocji.

object

O

 

summary.basket_final_price.net

Cena netto

number ($decimal)(10,2)

Y

"basket_final_price":{"net":"220.00","gross":"270.60","vat":"50.60"}

summary.basket_final_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

summary.basket_final_price.vat

VAT

number ($decimal)(10,2)

Y

summary.basket_promo_price

Obiekt służący do przekazania ceny koszyka z uwzględnioną promocją na koszyku, ale bez zastosowania kodu rabatowego i bez kosztów dostawy.

object

O

 

summary.basket_promo_price.net

Cena netto

number ($decimal)(10,2)

Y

"basket_promo_price":{"net":"220.00","gross":"270.60","vat":"50.60"}

summary.basket_promo_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

summary.basket_promo_price.vat

VAT

number ($decimal)(10,2)

Y

summary.currency

Waluta koszyka. Obecnie obsługiwana tylko waluta PLN

string

Y

"currency":"PLN"

summary.basket_expiration_date

Data wygaśnięcia/ważności koszyka. Jest to data, po której koszyk zostanie automatycznie usunięty z aplikacji InPost Pay (straci ważność). Data nie może być przeszła.

string($date-time)

O

"basket_expiration_date":"2023-09-13T07:40:53.000Z"

summary.basket_additional_information

Pole służy do przekazania dodatkowych informacji o koszyku, które z punktu widzenia merchanta mogą być istotne dla klienta

string

O

"basket_additional_information":"Zamów już dziś, a otrzymasz kod promocyjny na przyszłe zakupy"

summary.payment_type

Preferowane formy płatności dla koszyka. Merchant przekazuje listę preferowanych form płatności dla koszyka z których następnie klient mam możliwość wybrania form płatności przy tworzeniu zamówienia. W przypadku przekazania pustej listy, klientowi zostanie zaprezentowana domyślna lista płatności zgodnie z konfiguracją merchanta w bramce płatniczej oraz CASH_ON_DELIVERY, gdy dla danej formy dostawy w "delivery" został przekazany "delivery_code_value" ="COD".

Lista z możliwymi typami płatności: [ CARD, CARD_TOKEN, GOOGLE_PAY, APPLE_PAY, BLIK_CODE, BLIK_TOKEN, PAY_BY_LINK, SHOPPING_LIMIT, DEFERRED_PAYMENT, CASH_ON_DELIVERY ]

array

Y

"payment_type":["CARD","CARD_TOKEN","APPLE_PAY","BLIK_CODE","BLIK_TOKEN","PAY_BY_LINK","SHOPPING_LIMIT","DEFERRED_PAYMENT","GOOGLE_PAY"],

summary.basket_notice

Obiekt z informacją dodatkową o koszyku, o której merchant chciałby poinformować klienta w aplikacji InPost Pay

object

O

 

summary.basket_notice.type

Typ informacji. Wyróżniamy dwa typy informacji, na podstawie której, aplikacji zaprezentuje odpowiedni format komunikatu Enum: [ ATTENTION, ERROR ]:

ATTENTION - wykorzystujemy w przypadku, gdy chcemy poinformować klient o istotnych informacjach na koszyku, np. zastosowanie kodu promocyjnego, dodanie produktu gratis etc.

ERROR - wykorzystujemy w przypadku, gdy nie udało się wykonać jakiegoś działania na koszyku np. niepoprawny kod promocyjny lub nie udana próba dodania produktu sugerowanego.

 

string

Y

"type":"ATTENTION"

summary.basket_notice.description

Treść komunikatu prezentowana klientowi w aplikacji InPost Pay dla danego notice.type

string

Y

"description":"Kod został aktywowany"

delivery

Obiekt służący do przekazania informacji o preferowanych formach dostawy dla danego koszyka

array

Y

 

delivery.delivery_type

Forma dostawy. Dostępne dwie formy Enum:[APM, COURIER ]

APM - paczkomat,

COURIER - kurier InPost

string

Y

"delivery_type":"APM"

delivery.delivery_date

Sugerowana data dostawy

string($date-time)

Y

"delivery_date":"2023-09-14T12:00:00.000Z"

delivery.delivery_options

Obiekt służący do przekazania dodatkowych opis dostawy.  Obecnie dostępne dwie dodatkowe opcje dostawy:

PWW - paczka w weekend

COD - płatność przy odbiorze. W przypadku, gdy dla danego koszyka w payment_type zostanie przekazana wartość CASH_ON_DELIVERY, obligatoryjnie należy przekazać COD jako dodatkową opcję dostawy

 array

O

 

delivery.delivery_options.delivery_name

Nazwa dodatkowej opcji dostawy

string

Y

"delivery_name": "Paczka w Weekend"

delivery.delivery_options.delivery_code_value

Kod dodatkowej opcji dostawy. Obecnie dostępne dwa kody:

PWW - paczka w weekend

COD - płatność przy odbierze

string

Y

 "delivery_code_value": "PWW"

 

delivery.delivery_options.delivery_option_price

Obiekt służący do przekazania informacji o koszcie dodatkowej opcji dostawy

object

Y

 

delivery.delivery_options.delivery_option_price.net

Cena netto

number ($decimal)(10,2)

Y

"delivery_option_price ":{"net":"10.00","gross":"12.30","vat":"2.30"}

delivery.delivery_options.delivery_option_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

delivery.delivery_options.delivery_option_price.vat

VAT

number ($decimal)(10,2)

Y

delivery.delivery_price

Obiekt służący do przekazania informacji o koszcie dostawy

object

Y

 

delivery.delivery_price.net

Cena netto

number ($decimal)(10,2)

Y

"delivery_price":{"net":"10.00","gross":"12.30","vat":"2.30"}

delivery.delivery_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

delivery.delivery_price.vat

VAT

number ($decimal)(10,2)

Y

delivery.free_delivery_minimum_gross_price

Minimalna wartość koszyka od jakiej koszt dostawy będzie wynosił 0 PLN

number ($decimal)(10,2)

O

"free_delivery_minimum_gross_price": "100.00"

delivery.estimate_delivery_time

Funkcjonalność wykorzystująca obiekt dostępna w kolejnych wersjach aplikacji

Obiekt służący do przekazania informacji o szacowanym czasie dostawy w przypadku zamówienia towarów przez klienta w określonym czasie.

array

O

"estimate_delivery_time": [
{
"description": "Kup do 15:00 - dostawa jutro",
"days_available": [
"MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY"
],
"start_hour": "10:00",
"end_hour": "15:00"
}
]
}
],

delivery.estimate_delivery_time.description

Treść komunikatu prezentowana klientowi aplikacji

string

Y

delivery.estimate_delivery_time.days_available

Dni tygodnia w jakich ma być prezentowany komunikat

array

O

delivery.estimate_delivery_time.start_hour

Godzina od której ma być prezentowany komunikat

string

O

delivery.estimate_delivery_time.end_hour

Godzina do której ma być prezentowany komunikat

string

O

promo_codes

Lista kodów promocyjnych zastosowanych na koszyku 

array 

 

promo_codes.name

Nazwa kodu. W kolejnej wersji aplikacji pole niewymagalne

string

Y

 "name": "Promocja 5%"

promo_codes.promo_code_value

Kod promocyjny

string

Y

"promo_code_value": "INPOST10"

promo_codes.regulation_type

Typ regulacji lub restrykcji, której kod promocyjny podlega.

UWAGA: W przypadku gdy, kod promocyjny jest kodem w myśl dyrektywy OMNIBUS to należy przekazać wartość „OMNIBUS”.

string

O

"regulation_type": "OMNIBUS"

promotions_available

Lista dostępnych kodów promocyjnych, które klient może wykorzystać w koszyku.

array

O

  "promotions_available": [

    {

      "type": "MERCHANT",

      "promo_code_value": "IZI",

      "description": "Super promocja -- 20 PLN ",

      "start_date": "2024-10-03T07:33:13.942Z",

      "end_date": "2024-11-03T07:33:13.942Z",

      "priority": 0,

      "details": {

        "link": " https://inpostpay.pl/ "

      }

    }

  ],

promotions_available.type

Typ kodu:
Enum:[ MERCHANT, ONLY_IN_APP ]
 
MERCHANT -  kod dostępny w sklepie merchanta i InPost Pay (KOD SKLEPU)

ONLY_IN_APP - kod dostępny tylko w aplikacji InPost Pay (TYLKO W APCE).

string 

Y

promotions_available.promo_code_value

Wartość kodu np. DOSTAWA

string 

Y

promotions_available.description

Opis kodu

Max: 60 znaków

string 

Y

promotions_available.start_date

Data początkowa obowiązywania kodu promocyjnego

string($date-time)

O

promotions_available.end_date

Data końcowa obowiązywania kodu promocyjnego

string($date-time)

O

promotions_available.priority

Priorytet kodu
Priorytet służy do określenia kolejności prezentacji kodów w szczegółach koszyka (najwyższy priorytet ma najniższa wartość)

integer

O

promotions_available.details

Szczegóły kodu promocyjnego

object

Y

promotions_available.details.link

Link do szczegółów informacji o kodzie promocyjnym w sklepie merchanta. 

string 

Y

products

Lista do przekazania informacji o produktach w koszyku

array

Y

 

products.product_id

Identyfikator produktu nadany przez merchanta

string

Y

"product_id":26

products.product_category

Kategoria produktu nadana przez merchanta

string

O

"product_category":20

products.ean

ean

string

O

"ean":"0"

products.product_name

Nazwa produktu

string

Y

"product_name":"Plecak washpapa"

products.product_description

Opis produktu

string

O

"product_description":" \r\n\r\nCzasem masz ochotę rzucić wszystko, spakować się i wyjechać w Bieszczady? Jest to dobry plan na wakacje. A w ciągu roku po prostu odkrywaj swoje miasto na nowo.\r\n\r\nUdana eksploracja nie obędzie się bez solidnego plecaka ze zwijanym zamknięciem i uszytego z wysokiej jakości materiałów, takiego jak nasz.\r\n\r\nBawełniane pasy zapewnią wygodę noszenia, a washpapa wyrazi Twoje przywiązanie do natury. Pamiętaj! Za każdą przygodą stoi dobry plecak."

products.product_link

Link do produktu na stronie merchanta

string

O

"product_link":"https://test.outofthebox.pl/product/plecak-washpapa/"

products.product_image

Link do zdjęcia produktu. Preferowane formaty: png, jpg (rekomendacja: png bez tła) 

string

O

"product_image":"https://test.outofthebox.pl/img/2022/10/INPOST_aranzacje-z-modelami25-1.jpg"

Preferowane formaty: png, jpg (rekomendacja: png bez tła)

products.additional_product_images

Obiekt do przekazania dodatkowych zdjęć produktu (lista)

object

O

-

products.additional_product_images.small_size

Zdjęcie produktu. Preferowany rozmiar 360 x 352

string

Y

-

products.additional_product_images.normal_size

Zdjęcie produktu. Preferowany rozmiar 360 x 504

string

Y

-

products.base_price

Cena podstawowa z produkt

object

Y

 

products.base_price.net

Cena netto

number ($decimal)(10,2)

Y

"base_price":{"net":"161.79","gross":"199.00","vat":"37.21"}

products.base_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

products.base_price.vat

VAT

number ($decimal)(10,2)

Y

products.promo_price

Cena promocyjna produktu

object

O

 

products.promo_price.net

Cena netto

number ($decimal)(10,2)

Y

"promo_price":{"net":"160.98","gross":"198.00","vat":"37.02"}

products.promo_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

products.promo_price.vat

VAT

number ($decimal)(10,2)

Y

products.lowest_price

Obiekt służący do przekazania najniższej ceny produktu z ostatnich 30 dni. Wymagane w celu obsłużenia dyrektywy Omibus. Obiekt należy przekazać obligatoryjnie w przypadku, gdy została przekazania cena promocyjna produktu (obiekt promo_price) oraz został przekazany kod promocyjny z "regulation_type": "OMNIBUS".

object

O

 

products.lowest_price.net

Cena netto

number ($decimal)(10,2)

Y

"lowest_price ":{"net":"160.98","gross":"198.00","vat":"37.02"}

products.lowest_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

products.lowest_price.vat

VAT

number ($decimal)(10,2)

Y

products.quantity

Obiekt do przekazania informacji o ilości produktu

object

Y

 

products.quantity.quantity

Ilość produktu

number ($decimal)

Y

"quantity":1

products.quantity.quantity_type

Typ pola quantity. Dostępne wartości: Enum: [ DECIMAL, INTEGER ]

 

string

Y

"quantity_type":"INTEGER"

products.quantity.quantity_unit

Jednostka ilości produktu

string

O

"quantity_unit":"pcs"

products.quantity.available_quantity

Ilość dostępnego produktu sklepie

number ($decimal)

O

"available_quantity":26

products.quantity.min_quantity

Funkcjonalność wykorzystująca obiekt dostępna w kolejnych wersjach aplikacji

Minimalna ilość produktu jaką klient może zamówić np. przy jednym zamówieniu 

number ($decimal) 

 

"min_quantity": 2

products.quantity.max_quantity

Maksymalna ilość produktu jaką klient może zamówić np. przy jednym zamówieniu

number ($decimal)

O

"max_quantity": 26

products.quantity.quantity_jump

Funkcjonalność wykorzystująca obiekt dostępna w kolejnych wersjach aplikacji

Wartość skoku ilości w przypadku zwiększenia/zmniejszenia ilości produktu przez klienta (np. 0,1 lub 0,5 lub 0,01)

number ($decimal)    

O

"quantity_jump": 0.5

products.product_attributes

Obiekt służący do określenia atrybutów produktu

array

O

 

products.product_attributes.attribute_name

Nazwa atrybutu

string

Y

"product_attributes":[{"attribute_name":"Wymiary/Pojemność","attribute_value":"54 cm x 38 cm x 10 cm"},{"attribute_name":"Materiał","attribute_value":"Washable paper standard + kodura + pasy bawełniane tkane"}]

products.product_attributes.attribute_value

Wartość atrybutu

string

Y

products.delivery_product

Obiekt służący do przekazania informacji o dostępnych formach dostawy dla produktu. Jeśli brak obiektu delivery_product, to oznacza że dostawa dostępna wszystkimi typami.

array

O

-

products.delivery_product.delivery_type

Typ dostawy

string

O

-

products.delivery_product.if_delivery_available

Flaga informująca czy typ dostawy dostępna

string

O

-

related_products

Obiekt służący do przekazania listy produktów sugerowanych dla danego koszyka, które klient może dodać z poziomu aplikacji InPost Pay

array

O

 

related_products.product_id

Identyfikator produktu nadany przez merchanta

string

Y

"product_id":26

related_products.product_category

Kategoria produktu nadana przez merchanta

string

O

"product_category":20

related_products.ean

Ean

string

O

"ean":"0"

related_products.product_name

Nazwa produktu

string

Y

"product_name":"Plecak washpapa"

related_products.product_description

Opis produktu

string

O

"product_description":" \r\n\r\nCzasem masz ochotę rzucić wszystko, spakować się i wyjechać w Bieszczady? Jest to dobry plan na wakacje. A w ciągu roku po prostu odkrywaj swoje miasto na nowo.\r\n\r\nUdana eksploracja nie obędzie się bez solidnego plecaka ze zwijanym zamknięciem i uszytego z wysokiej jakości materiałów, takiego jak nasz.\r\n\r\nBawełniane pasy zapewnią wygodę noszenia, a washpapa wyrazi Twoje przywiązanie do natury. Pamiętaj! Za każdą przygodą stoi dobry plecak."

related_products.product_link

Link do produktu na stronie merchanta

string

O

"product_link":"https://test.outofthebox.pl/product/plecak-washpapa/"

related_products.product_image

Link do zdjęcia produktu. Preferowane formaty: png, jpg (rekomendacja: png bez tła)

 

string

 

"product_image":"https://test.outofthebox.pl/img/2022/10/INPOST_aranzacje-z-modelami25-1.jpg"

Preferowane formaty: png, jpg (rekomendacja: png bez tła)

related_products.additional_product_images

Obiekt do przekazania dodatkowych zdjęć produktu (lista)

object

O

-

related_products.additional_product_images.small_size

zdjęcie produktu. Preferowany rozmiar 360 x 352

string

Y

-

related_products.additional_product_images.normal_size

zdjęcie produktu. Preferowany rozmiar 360 x 504

string

Y

-

related_products.base_price

Cena podstawowa z produkt

object

Y

 

related_products.base_price.net

Cena netto

number ($decimal)(10,2)

Y

"base_price":{"net":"161.79","gross":"199.00","vat":"37.21"}

related_products.base_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

related_products.base_price.vat

VAT

number ($decimal)(10,2)

Y

related_products.promo_price

Cena promocyjna produktu

object

O

 

related_products.promo_price.net

Cena netto

number ($decimal)(10,2)

Y

"promo_price":{"net":"160.98","gross":"198.00","vat":"37.02"}

related_products.promo_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

 

Y

related_products.promo_price.vat

VAT

number ($decimal)(10,2)

 

Y

related_products.lowest_price

Obiekt służący do przekazania najniższej ceny produktu z ostatnich 30 dni. Wymagane w celu obsłużenia dyrektywy Omibus. Obiekt należy przekazać obligatoryjnie w przypadku, gdy została przekazania cena promocyjna produktu (obiekt promo_price) oraz został przekazany kod promocyjny z "regulation_type": "OMNIBUS".

object

O

 

related_products.lowest_price.net

Cena netto

number ($decimal)(10,2)

Y

"lowest_price ":{"net":"160.98","gross":"198.00","vat":"37.02"}

related_products.lowest_price.gross

Cena brutto (netto + VAT)

number ($decimal)(10,2)

Y

related_products.lowest_price.vat

VAT

number ($decimal)(10,2)

Y

related_products.quantity

Obiekt do przekazania informacji o ilości produktu

object

Y

 

related_products.quantity.quantity

Ilość produktu

number ($decimal)

Y

"quantity":1

related_products.quantity.quantity_type

Typ pola quantity. Dostępne wartości: Enum: [ DECIMAL, INTEGER ]

 

string

Y

"quantity_type":"INTEGER"

related_products.quantity.quantity_unit

Jednostka ilości produktu

string

O

"quantity_unit":"pcs"

related_products.quantity.available_quantity

Ilość dostępnego produktu sklepie

number ($decimal)

O

"available_quantity":26

related_products.quantity.min_quantity 

Funkcjonalność wykorzystująca obiekt dostępna w kolejnych wersjach aplikacji

Minimalna  ilość produktu jaką klient może zamówić np. przy jednym zamówieniu 

number ($decimal) 

"min_quantity":2 

related_products.quantity.max_quantity

Maksymalna ilość produktu jaką klient może zamówić np. przy jednym zamówieniu

number ($decimal)

O

"max_quantity":26

related_products.quantity.quantity_jump

Funkcjonalność wykorzystująca obiekt dostępna w kolejnych wersjach aplikacji

Wartość skoku ilości w przypadku zwiększenia/zmniejszenia ilości produktu przez klienta (np. 0,1 lub 0,5 lub 0,01)

number ($decimal)    

O

"quantity_jump": 0.5

related_products.product_attributes

Obiekt służący do określenia atrybutów produktu

array

O

 

related_products.product_attributes.attribute_name

Nazwa atrybutu

string

Y

"product_attributes":[{"attribute_name":"Wymiary/Pojemność","attribute_value":"54 cm x 38 cm x 10 cm"},{"attribute_name":"Materiał","attribute_value":"Washable paper standard + kodura + pasy bawełniane tkane"}]

related_products.product_attributes.attribute_value

Wartość atrybutu

string

Y

 

related_products.delivery_related_products

Obiekt służący do przekazania informacji o dostępnych formach dostawy dla produktu. Jeśli brak obiektu delivery_product oznacza że dostawa dostępna wszystkimi typami

array

O

-

related_products.delivery_related_products.delivery_type

Typ dostawy

string

O

-

related_products.delivery_related_products.if_delivery_available

Flaga informująca czy typ dostawy dostępna

string

O

-

consents

Obiekt służący do przekazania listy zgód dla danego koszyka.
Maksymalna ilość zgód dla koszyka: 10

array

 Y

 

consents.consent_id

Id zgody nadawane przez merchanta

string

 Y

"consent_id":3

consents.consent_link

Link przekierowujący do pełnej treści zgodny np. do strony merchanta

string

 Y

"consent_link":"https://test.outofthebox.pl/zwroty-i-reklamacje/"

consents.label_link

Label do linku przekazanego w consent_link

string

O

"label_link": "Regulaminu",

consents.additional_consent_links

Obiekt służący do przekazania dodatkowego linku do zgody/regulaminu

object

O

 

consents.additional_consent_links.id

Id zgody nadawane przez merchanta

string

O

"id": "0"

consents.additional_consent_links.consent_link

Link przekierowujący do pełnej treści zgodny np. do strony merchanta

string

O

"consent_link": "https://uat.outofthebox.pl/privacy-policy/",

consents.additional_consent_links.label_link

Label do linku przekazanego w consent_link

string

O

"label_link": "Polityką prywatności"

consents.consent_description

Opis zgody, nie więcej niż 500 znaków

string

 Y

"consent_description":"zwroty i reklamacje"

consents.consent_version

Wersja zgody

string

 Y

"consent_version":1

consents.requirement_type

Typ zgody. Dostępne wartości: Enum: [OPTIONAL, REQUIRED_ONCE, REQUIRED_ALWAYS ]

OPTIONAL -- Zgoda opcjonalna

REQUIRED_ONCE - wymagana jednorazowo. Zgoda o takim typie i wersji będzie zapisana w profilu użytkownika, z informacją, że klient wyraził zgodę i w przypadku kolejnych koszyków będzie domyślnie zaznaczona.

REQUIRED_ALWAYS - wymagana zawsze. Zgoda o takim typie i wersji nie jest zapisywana w profilu użytkownika. Klient za każdym razem musi wyrazić zgodę.

string

 Y

"requirement_type":"OPTIONAL"

merchant_store

Obiekt służący do przekazania cookie koszyka klienta w celu umożliwienia przejścia ze aplikacji InPost Pay do koszyka w sklepie merchanta

object

O

-

merchant_store.url

url sklepu 

string

Y

"url": "https://uat.outofthebox.pl/cart/",

merchant_store.cookies

Obiekt do przekazania cookie

array

Y

-

merchant_store.cookies.domain

Domena pliku cookie reprezentowana przez parę key-value

string

Y

"domain": "uat.outofthebox.pl",

merchant_store.cookies.key

Cookie key

string

Y

"key": "wp_woocommerce_session_f3cd21b400c074e165b59837d7a9d0a4",

merchant_store.cookies.value

Cookie value

string

Y

"value": "t_f13664beda2ec455d97546c1ddab8b%7C%7C1699438060%7C%7C1699434460%7C%7Cf77d310ce1f0440cb4812f5043736989",

merchant_store.cookies.path

Cookie path

string

Y

"path": "/",

merchant_store.cookies.expires

Czas wygaśnięcia pliku cookie lub maxAge

string($date-time)

O

"expires": "2025-01-16T14:17:02.486Z",

merchant_store.cookies.secure

Informacje o bezpieczeństwie plików cookie

boolean

O

"secure": false,

merchant_store.cookies.http_only

Informacje http o plikach cookie

boolean

O

"http_only": true,

merchant_store.cookies.same_site

Informacje o pliku cookie sameSite [ STRICT, LAX, NONE ]

string

O

"same_site": "LAX",

merchant_store.cookies.priority

Priorytet plików cookie [ LOW, MEDIUM, HIGH ]

string

O

"priority": "MEDIUM",

merchant_store.cookies.max_age

Maksymalny czas cookie

integer($int32)

O

"max_age": 0

Przykładowy request

{ "event_id":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "event_data_time":"2023-08-23T11:14:33.973Z", "event_type":"PRODUCTS_QUANTITY", "phone_number": { "country_prefix":"+48", "phone":"5xxxxxxxx" }, "quantity_event_data": [ { "product_id":"549", "quantity": { "quantity":3 } } ] }

Response

{ "summary": { "basket_base_price": { "net":"249.59", "gross":"307.00", "vat":"57.41" }, "basket_final_price": { "net":"242.01", "gross":"297.67", "vat":"55.66" }, "basket_promo_price": { "net":"242.01", "gross":"297.67", "vat":"55.66" }, "currency":"PLN", "basket_expiration_date":"2023-08-25T11:09:29.000Z", "basket_additional_information":"", "payment_type": [ "CARD", "CARD_TOKEN", "APPLE_PAY", "BLIK_CODE", "BLIK_TOKEN", "PAY_BY_LINK", "SHOPPING_LIMIT", "DEFERRED_PAYMENT", "GOOGLE_PAY", "CASH_ON_DELIVERY" ], "basket_notice":null }, "delivery": [ { "delivery_type":"APM", "delivery_date":"2023-08-25T12:00:00.000Z", "delivery_options":[], "delivery_price": { "net":"0.00", "gross":"0.00", "vat":"0.00" } }, { "delivery_type":"COURIER", "delivery_date":"2023-08-25T12:00:00.000Z", "delivery_options":[], "delivery_price": { "net":"0.00", "gross":"0.00", "vat":"0.00" } } ], "promo_codes":[], "products": [ { "product_id":10678, "product_category":53, "ean":"wp-pennant-1", "product_name":"Klocki Paczkomat InPost z samochodem eko", "product_description":" \r\n\r\nA wiesz, że każdy jest kurierem własnego życia? Przecież gdy mówisz, to dostarczasz informacje, a jak się uśmiechasz to... dostarczasz radość. Jeszcze większą radość zobaczysz na twarzy dziecka, gdy dostarczysz mu zestaw klocków: paczkomat wraz z ekobusem.\r\n\r\nTo unikalny zestaw, dzięki któremu dzieci mogą wcielić się w rolę kuriera i poczuć jak to jest, gdy dostarcza się same dobre wiadomości czy prezenty. A co najlepsze, klocki pasują do innych klocków konstrukcyjnych co sprawia, że możliwości zabawy stają się nieograniczone.\r\n\r\nKlocki przeznaczone są dla dzieci od 8 lat, ale potrafią obudzić dziecko w człowieku do 80 lat i więcej. W końcu dobra zabawa nie zna wieku.", "product_link":"https://outofthebox.pl/product/paczkomat-inpost-z-samochodem-eko/", "product_image":"https://outofthebox.pl/app/uploads/2022/11/INPOST_aranzacje-z-modelami18.jpg", "base_price": { "net":"113.01", "gross":"139.00", "vat":"25.99" }, "promo_price": { "net":"113.01", "gross":"139.00", "vat":"25.99" }, "quantity": { "quantity":2, "quantity_type":"INTEGER", "quantity_unit":"pcs", "available_quantity":7507, "max_quantity":7507 }, "product_attributes": [ { "attribute_name":"Wymiary/Pojemność", "attribute_value":"344 cm x 60 cm x 240 cm" } ] }, { "product_id":549, "product_category":20, "ean":"0", "product_name":"Paczkotorba bawełniana", "product_description":" \r\n\r\nTa torba bawełniana lubi być czysta i wyprana. Lubi, bo jest z bawełny, tak jak wiele Twoich ubrań. Dlatego pralka nie robi jej krzywdy.\r\n\r\nTorba polecana jest szczególnie tym, którzy nie chcą za każdym razem wracać z zakupów z toną jednorazowych woreczków foliowych.\r\n\r\nTorba jest szyta lokalnie. W Polsce, a nie na końcu świata.\r\n\r\nMetr kwadratowy materiału, z którego stworzono torbę, waży 280 gramów. Gdyby miała ręce, włożyłaby sobie do środka spory ciężar i nic by się jej nie stało.\r\n\r\nUwaga: torba InPost ma wielkie uszy, żeby można było ją nosić w stylu out of the box.", "product_link":"https://outofthebox.pl/product/paczkotorba-bawelniana/", "product_image":"https://outofthebox.pl/app/uploads/2022/10/INPOST_aranzacje-z-modelami24-1.jpg", "base_price": { "net":"23.58", "gross":"29.00", "vat":"5.42" }, "promo_price": { "net":"15.99", "gross":"19.67", "vat":"3.68" }, "quantity": { "quantity":"1", "quantity_type":"INTEGER", "quantity_unit":"pcs", "available_quantity":240, "max_quantity":240 }, "product_attributes":[] } ], "related_products": [ { "product_id":606, "product_category":17, "ean":"0", "product_name":"Paczkokurtka","product_description":" \r\n\r\nNormalne kurtki są normalne.\r\n\r\nPrzód i tył. Lewy rękaw i prawy rękaw. Kaptur i kieszenie.\r\n\r\nKurtki InPost -- są zawsze out of the box! Oprócz wszystkiego, co ma normalna kurtka -- mają jeszcze ogromną kieszeń, są wodoodporne i wiatroszczelne. Ta kieszeń jest tak duża, że może pomieścić w sobie na przykład paczkę. Albo coś innego, co tylko przyjdzie Ci do głowy.\r\nWierzchni materiał pokryty jest powłoką Water Repellent, dzięki czemu woda skrapla się na jego powierzchni\r\n\r\nBo wszystko, co najlepsze, zaczyna się od głowy.\r\nOd pomysłu, który jest inny.\r\n\r\nKtóry jest Out of the box!\r\n\r\nPaczkokurtka InPost dostępna jest w czterech rozmiarach: S, M, L, XL.", "product_link":"https://outofthebox.pl/product/paczkokurtka-rozm-s/", "product_image":"https://outofthebox.pl/app/uploads/2022/10/INPOST_aranzacje-z-modelami25-1.jpg", "base_price": { "net":"172.07", "gross":"211.65", "vat":"0.00" }, "promo_price": { "net":"172.07", "gross":"211.65", "vat":"0.00" }, "quantity": { "quantity":1, "quantity_type":"INTEGER", "quantity_unit":"pcs", "available_quantity":999, "max_quantity":999 }, "product_attributes":[] }, { "product_id":452, "product_category":53, "ean":"0", "product_name":"Klocki Sortownia", "product_description":"sdadsadsadasdas", "product_link":"https://outofthebox.pl/product/sortownia/", "product_image":"https://outofthebox.pl/app/uploads/2022/10/INPOST_aranzacje-z-modelami17.jpg", "base_price": { "net":"186.18", "gross":"229.00", "vat":"0.00" }, "promo_price": { "net":"186.18", "gross":"229.00", "vat":"0.00" }, "quantity": { "quantity":1, "quantity_type":"INTEGER", "quantity_unit":"pcs", "available_quantity":55844, "max_quantity":55844 }, "product_attributes":[] } ], "consents": [ { "consent_id":3, "consent_link":"https://outofthebox.pl/zwroty-i-reklamacje/", "consent_description":"zwroty i reklamacje", "consent_version":1, "requirement_type":"OPTIONAL" } ] }

Related pages