Basket update [Widget 2.0]

Basket update [Widget 2.0]

This article contains a description of the method used to update a basket.

Description of the method

This method is used only to update a basket in the InPost Pay app, it cannot be used to create a basket as was the case for baskets with a trusted browser.

For this method, we require the implementation of all the fields listed in the table, as they make up the entirety of the InPost Pay service. Some of the following fields in the 'Required' column are marked as 'O', i.e. optional, due to the fact that not all products/baskets in online stores have all parameters assigned, so a basket can be created and an order placed without them. However, the implementation/deployment of all fields is REQUIRED from a business perspective.

Parameters

Field name

Description

Type

Requirement status

Additional remarks

basket_id

Basket's unique ID assigned by the merchant

string

Y

 

Request

Field name

Description

Type

Requirement status

Additional remarks

summary

Object used to provide basic details about the basket 

object

Y

 

summary.basket_base_price

Object used to pass the base price for the basket without delivery costs 

object

Y

 

summary.basket_base_price.net

Net price 

Number ($decimal)(10,2)

 

Y

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

summary.basket_base_price.gross

Gross price (net + VAT) 

Number ($decimal)(10,2)

 

Y

summary.basket_base_price.vat

VAT 

Number ($decimal)(10,2)

 

Y

summary.basket_final_price

An object used to pass the final price of a basket with a promotion and discount code included on the basket, without delivery costs.
The value of the discount on the basket resulting from the application of the code (a promotional code that is not regulated by the OMNIBUS Directive), shown in the basket summary, will be the difference between promo_price and final_price or base_price and final_price, if the basket is not covered by a promotion.

object

O

 

summary.basket_final_price.net

Net price 

Number ($decimal)(10,2)

 

Y

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

summary.basket_final_price.gross

Gross price (net + VAT) 

Number ($decimal)(10,2)

 

Y

summary.basket_final_price.vat

VAT 

Number ($decimal)(10,2)

 

Y

summary.basket_promo_price

An object for passing the price of a basket with a promotion included for the basket, but without an applied discount code and without delivery costs.

object

O

 

summary.basket_promo_price.net

Net price 

Number ($decimal)(10,2)

 

Y

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

summary.basket_promo_price.gross

Gross price (net + VAT) 

Number ($decimal)(10,2)

 

Y

summary.basket_promo_price.vat

VAT 

Number ($decimal)(10,2)

 

Y

summary.free_basket

The flag indicating whether the basket without delivery costs is free.

boolean

O

 

summary.currency

Basket currency. The only currency currently supported is PLN 

string

Y

"currency":"PLN"

summary.basket_expiration_date

Basket expiration/validity date. This is the date after which the basket will be automatically removed from the InPost Pay app (will expire). The date cannot be a past date. 

string($date-time)

O

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

summary.basket_additional_information

This field is used to provide additional information about the basket that, from the merchant's point of view, may be relevant to the customer 

string

O

"basket_additional_information": "Order today, and receive a discount code for future purchases"

summary.payment_type

Preferred payment method for the basket. The merchant passes a list of preferred payment methods for the basket from which the customer can then select payment methods. If an empty list is passed, the customer will be presented with a default list of payments according to the merchant's configuration in the payment gateway, excluding the CASH_ON_DELIVERY payment option. List with possible payment types: [ CARD, CARD_TOKEN, GOOGLE_PAY, APPLE_PAY, BLIK_CODE, BLIK_TOKEN, PAY_BY_LINK, SHOPPING_LIMIT, DEFERRED_PAYMENT, CASH_ON_DELIVERY ] 

object

Y

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

summary.basket_additional_parameters

An object used to pass additional basket parameters that are saved in the basket details during basket creation/update. The Merchant can use this object, for example, to save parameters that will enable identification/association of the basket with a campaign. Additional parameters are not displayed in the application.

array

O

 

summary.basket_additional_parameters.key

Key

string

Y

 

summary.basket_additional_parameters.value

Value

string

Y

 

delivery

An object used to provide information about the preferred delivery options for the relevant basket 

array

Y

 

delivery.delivery_type

Delivery option. Enum:[ APM, COURIER, DIGITAL ].  

APM – automated parcel machine, COURIER – InPost courier service 
DIGITAL – digital delivery

string

Y

"delivery_type":"APM"

delivery.delivery_date

Suggested delivery date 

string($date-time)

Y

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

delivery.delivery_options

An object used for passing additional delivery options.  Currently, two additional delivery options are available: 

PWW – weekend parcel  

COD – cash on delivery. If the CASH_ON_DELIVERY value is passed for the relevant basket in payment_type, it is mandatory to pass COD as an additional delivery option. 

 

 array

O

 

delivery.delivery_options.delivery_name

Name of additional delivery option 

string

Y

"delivery_name": "Paczka w Weekend"

delivery.delivery_options.delivery_code_value

Additional delivery option code. Currently, there are two codes available: 

PWW – weekend parcel  

COD – cash on delivery 

 

string

Y

"delivery_code_value": "PWW"

delivery.delivery_options.delivery_option_price

An object used to provide information about the cost of additional delivery options 

object

Y

 

delivery.delivery_options.delivery_option_price.net

Net price 

Number ($decimal)(10,2)

 

Y

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

delivery.delivery_options.delivery_option_price.gorss

Gross price (net + VAT) 

Number ($decimal)(10,2)

 

Y

delivery.delivery_options.delivery_option_price.vat

VAT 

Number ($decimal)(10,2)

 

Y

delivery.delivery_price

An object used to provide information about the cost of delivery  

object

Y

 

delivery.delivery_price.net

Net price 

Number ($decimal)(10,2)

 

Y

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

delivery.delivery_price.gorss

Gross price (net + VAT) 

Number ($decimal)(10,2)

 

Y

delivery.delivery_price.vat

VAT 

Number ($decimal)(10,2)

 

Y

delivery.free_delivery_minimum_gross_price

Minimum basket value starting from which the cost of delivery will be PLN 0 

Number ($decimal)(10,2)

 

O

"free_delivery_minimum_gross_price": "100.00"

promo_codes

List of promotional codes applied to the basket 

array

O

 

promo_codes.name

Code name. This field is not required in the next version of the application. 

string

Y

"name ": "Promotion 5%"

promo_codes.promo_code_value

Promo code 

string

Y

"promo_code_value": "INPOST10"

promo_codes.regulation_type

The type of regulation or restriction to which the promo code is subject.

NOTE: Where the promo code is a code within the meaning of the OMNIBUS Directive, then the “OMNIBUS” value should be passed.

string

O

"regulation_type": "OMNIBUS"

promotions_available

A list of available promo codes that customers can apply to the basket.

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

Code type:
Enum:[ MERCHANT, ONLY_IN_APP ]
 
MERCHANT – code available in the merchant's store and in InPost Pay (STORE CODE).

ONLY_IN_APP – code available only in the InPost Pay app (ONLY IN APP).

string 

Y

promotions_available.promo_code_value

Code value, e.g. DELIVERY

string 

Y

promotions_available.description

Code description

Max: 60 characters

string 

Y

promotions_available.start_date

Start date on which the promo code becomes effective

string($date-time)

O

promotions_available.end_date

End date on which the promo code becomes ineffective

string($date-time)

O

promotions_available.priority

Code priority
The priority is used to determine the order in which the codes are presented in the basket details (the highest priority has the lowest value).

integer

O

promotions_available.details

Promo code details

object

Y

promotions_available.details.link

Link to details of the promo code information in the merchant's store. 

string 

Y

products

List used to pass information about products in the basket 

array

Y

 

products.product_id

Product identifier assigned by the merchant 

string

Y

"product_id": 26

products.product_category

Product category assigned by the merchant 

string

O

"product_category":20

products.product_type

A non-mandatory field specifying the product type. Assumes value:

·       PRODUCT – physical product

·       DIGITAL  – digital product.

If the value is null, then by default the application assumes that the product is physical.

string

O

"product_type":"DIGITAL"

products.ean

Ean 

string

O

"ean":"0"

products.product_name

Product name  

string

Y

"product_name": "washpapa backpack"

products.product_description

Product description 

string

O