Aktualizacja koszyka [Widget 2.0]

Aktualizacja koszyka [Widget 2.0]

Artykuł zawiera opis metody wykorzystywanej do aktualizacji koszyka.

Na tej stronie:

Opis metody

Metoda służąca tylko do aktualizacji koszyka w aplikacji InPost Pay, nie można nią utworzyć koszyka tak jak to miało miejsce przy koszykach z przeglądarką zaufaną.

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.

Parameters 
 

Nazwa pola 

Opis  

Typ 

Wymagalność 

Dodatkowe uwagi 

basket_id 

Unikalny identyfikator koszyka nadawany przez merchanta 

string 

 

 

Request  

Nazwa pola 

Opis  

Typ 

Wymagalność 

Dodatkowe uwagi 

summary

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

object 

 

summary.basket_base_price

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

object 

 

summary.basket_base_price.net

Cena netto 

Number ($decimal)(10,2) 

 

"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) 

 

summary.basket_base_price.vat

VAT 

Number ($decimal)(10,2) 

 

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 

 

summary.basket_final_price.net

Cena netto 

Number ($decimal)(10,2) 

 

"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) 

 

summary.basket_final_price.vat

VAT 

Number ($decimal)(10,2) 

 

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 

 

summary.basket_promo_price.net

Cena netto 

Number ($decimal)(10,2) 

 

"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) 

 

summary.basket_promo_price.vat

VAT 

Number ($decimal)(10,2) 

 

summary.free_basket

Flaga informująca, czy koszyk bez kosztów dostawy jest darmowy

boolean

O

 

summary.currency

Waluta koszyka. Obecnie obsługiwana tylko waluta PLN 

string 

"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) 

"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 

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

summary.payment_type

Preferowane formy płatności za koszyk. Merchant przekazuje listę preferowanych form płatności dla koszyka z których następnie klient ma możliwość wybrania form płatności. W przypadku przekazania pustej listy, klientowi zostanie zaprezentowana domyślna lista płatności zgodnie z konfiguracją merchanta w bramce płatniczej z wyłączeniem płatności CASH_ON_DELIVERY. 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 

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

summary.basket_additional_parameters

Obiekt służący do przekazania dodatkowych parametrów koszyka, które są zapisane w szczegółach koszyka podczas tworzenia/aktualizacji koszyka. Merchant może wykorzystać obiekt np. do zapisania parametrów które umożliwią identyfikację/powiązanie koszyka z kampanią. Dodatkowe parametry nie są prezentowane w aplikacji.

array

O

 

summary.basket_additional_parameters.key

Klucz

string

Y

 

summary.basket_additional_parameters.value

Wartość

string

Y

 

delivery

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

array 

 

delivery.delivery_type

Forma dostawy. Enum:[ APM, COURIER, DIGITAL ].  

APM – paczkomat, COURIER – kurier Inpost 
DIGITAL – dostawa cyfrowa

string 

"delivery_type":"APM"

delivery.delivery_date

Sugerowana data dostawy 

string($date-time) 

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

delivery.delivery_options

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

PWW – paczka w weekend  

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

 

 array

 

delivery.delivery_options.delivery_name

Nazwa dodatkowej opcji dostawy 

string 

"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 

"delivery_code_value": "PWW"

delivery.delivery_options.delivery_option_price

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

object 

 

delivery.delivery_options.delivery_option_price.net

Cena netto 

Number ($decimal)(10,2) 

 

"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) 

 

delivery.delivery_options.delivery_option_price.vat

VAT 

Number ($decimal)(10,2) 

 

delivery.delivery_price

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

object 

 

delivery.delivery_price.net

Cena netto 

Number ($decimal)(10,2) 

 

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

delivery.delivery_price.gross

Cena brutto (netto + VAT) 

Number ($decimal)(10,2) 

 

delivery.delivery_price.vat

VAT 

Number ($decimal)(10,2) 

 

delivery.free_delivery_minimum_gross_price

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

Number ($decimal)(10,2) 

 

"free_delivery_minimum_gross_price": "100.00"

promo_codes

Lista kodów promocyjnych zastosowanych na koszyku 

array 

 

promo_codes.name

Nazwa kodu. W kolejnej wersji aplikacji pole nie wymagalne 

string 

"name": "Promocja 5%"

promo_codes.promo_code_value

Kod promocyjny 

string 

"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 

 

products.product_id

Identyfikator produktu nadany przez merchanta 

string 

"product_id":26

products.product_category

Kategoria produktu nadana przez merchanta 

string 

"product_category":20

products.product_type

Pole nieobligatoryjne określające typ produktu. Przyjmuje wartość:

  • PRODUCT - produkt fizyczny

  • DIGITAL  - produkt cyfrowy.

Jeśli wartość jest null, to aplikacja domyślenie przyjmuje, że produkt jest fizyczny.

string

O

"product_type":"DIGITAL"

products.ean

Ean 

string 

"ean":"0"

products.product_name

Nazwa produktu  

string 

"product_name":"Plecak washpapa"

 

products.product_description

Opis produktu