This schema is used internally by Spark, not for OpCo integration.
The punchout shopping cart event is pushed by the punchout MS when transmitting cart to the customer e-procurement system
{
"eventHeader": {
"source": "SPARK",
"version": "v1"
},
"identifier": {
"cartId": "1234567890"
},
"name": "Shopping Cart",
"accountId": "account123",
"createdOn": "2023-10-01T12:00:00Z",
"transmittedOn": "2023-10-01T13:00:00Z",
"lastModifiedOn": "2023-10-01T14:00:00Z",
"billingAddress": {
"addressId": "234564567898789",
"opCoAddressId": "237564557868778",
"addressLine1": "chaussée Verlinden 22",
"addressLine2": "Apartment 2",
"city": "Bruges",
"countryCode": "BEL",
"postalCode": "0287",
"addressName": "Building #2",
"companyName": "Easy Electric",
"contactFirstName": "John",
"contactLastName": "Doe",
"contactPhoneNumber": "+333746573829",
"deliveryIndication": "Please leave the parcel next the front door.",
"customerReference": "Ref 364361"
},
"logisticDetails": {
"logisticMethod": "DELIVERY",
"supportedLogisticMethods": [
"DELIVERY",
"PICK_UP"
],
"facilityId": "facility123",
"facilityName": "Main Facility",
"deliveryAddress": {
"addressLine1": "456 Secondary St",
"city": "Othertown",
"country": "USA",
"postalCode": "67890"
}
},
"items": [
{
"id": "123",
"itemType": "PRODUCT",
"quantity": 2,
"prices": {
"netPrice": {
"amount": 100,
"scale": 2,
"currency": "USD"
},
"listPrice": {
"amount": 200,
"scale": 2,
"currency": "USD"
},
"taxes": [
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 10,
"scale": 2,
"currency": "USD"
},
"percentage": 10
}
],
"itemPrice": {
"amount": 110,
"scale": 2,
"currency": "USD"
},
"itemTaxes": [
{
"type": "VAT",
"surcharge": false,
"amount": 10,
"scale": 2,
"currency": "USD"
}
],
"itemPriceIncludingTaxes": {
"amount": 120,
"scale": 2,
"currency": "USD"
}
}
}
],
"coupons": [
{
"id": "736923",
"code": "DISCOUNT10",
"description": "10% off",
"discount": {
"amount": 10,
"scale": 2,
"currency": "USD"
},
"exclusive": true
}
],
"contributors": [
{
"email": "contributor@example.com",
"fullName": "John Doe",
"creator": true,
"validator": false,
"onbehalf": false
}
],
"messages": [
{
"severity": "INFO",
"isBlocker": true,
"code": "ITEM_REMOVED"
}
],
"persistentMessages": [
{
"id": "123456789",
"operation": "BULK_ADD_ITEMS",
"code": "ITEMS_NOT_ADDED",
"reasonCode": "PRODUCT_NOT_FOUND",
"additionalInfo": "related products : [4789651], [9820367], [39852330]"
}
],
"opcoId": "opco123",
"orgId": "org123",
"richSynchronizedOn": "2023-10-01T15:00:00Z",
"opcoCartId": "opcoCart123",
"includeAllSpas": false,
"specialPriceAgreements": [
{
"id": "spa123",
"title": "Special Price Agreement"
}
],
"project": {
"id": "project123",
"name": "Project Name"
},
"quote": {
"id": "quote123",
"name": "Quote Name",
"code": "Q123",
"version": "v1"
},
"totalPrice": {
"amount": 220,
"scale": 2,
"currency": "USD"
},
"totalPriceExcludingPromotions": {
"amount": 240,
"scale": 2,
"currency": "USD"
},
"totalPromotions": {
"amount": 20,
"scale": 2,
"currency": "USD"
},
"totalSurchargeTaxes": {
"amount": 5,
"scale": 2,
"currency": "USD"
},
"totalPriceIncludingSurcharges": {
"amount": 225,
"scale": 2,
"currency": "USD"
},
"totalPriceIncludingSurchargesAndShipping": {
"amount": 230,
"scale": 2,
"currency": "USD"
},
"totalShippingCosts": {
"amount": 10,
"scale": 2,
"currency": "USD"
},
"totalPriceIncludingTaxes": {
"amount": 250,
"scale": 2,
"currency": "USD"
},
"totalPriceAllIncluded": {
"amount": 260,
"scale": 2,
"currency": "USD"
},
"totalVatByPercentage": [
{
"type": "VAT",
"surcharge": false,
"percentage": 10,
"amount": 25,
"scale": 2,
"currency": "USD"
}
],
"discountDetails": [
{
"code": "DISCOUNT10",
"type": "COUPON",
"discount": {
"amount": 10,
"scale": 2,
"currency": "USD"
}
}
]
}
Contains information about the event, including the source, version, and scopes.
Represents the origin of the event.
Represents the version of the event schema. It's used to handle changes and evolution of the event structure over time.
Contains the unique identifier for the logistic order.
Cart id. This field is a 64-bit long number represented as a string to avoid unwanted conversions to scientific notation when dealing with the model inside js code
Must match regular expression:^[0-9]+$
"17050283147243520"
Unique identifier for OpCo.
"USA-SPRFLD"
Cart name. If the name is not filled in, its value will be set to "Shopping Cart".
"Shopping Cart."
OpCo account's identifier from which the cart is created.
Must match regular expression:^(?=\s*\S).*$
"4999569661752721026"
Commerce organization identifier. Only present if the account includes one.
Must match regular expression:^(?=\s*\S).*$
"org1"
Creation date time of the cart
"2020-10-12T08:30:22.8045280+00:00"
transmission date of the cart to the external system
"2020-10-12T08:30:22.8045280+00:00"
last modification date time of the cart
"2020-10-12T14:30:45.1076240+00:00"
Last date-time of cart rich synchronization with Opco ERP
"2020-10-12T14:30:50.1076240+00:00"
Address to which the billing informations would be sent
{
"addressLine1": "chaussée Verlinden 22",
"addressLine2": "Apartment 2",
"city": "Bruges",
"country": "BEL",
"postalCode": "0287"
}
Address unique identifier on spark. Its value must contain a 64-bit long number represented as a string.
"234564567898789"
OpCo internal system's unique identifier for the address.
"237564557868778"
According to ISO 19160 the 1/3 component of the street address. This usually contains the whole address though
"chaussée Verlinden 22"
According to ISO 19160 the 2/3 component of the street address.
"1st floor"
According to ISO 19160 the 3/3 component of the street address.
"Apparment 2"
The city name
"Bruges"
The region name
"Frandre"
The department name
"NA"
Country code
Must be at least 3 characters long
Must be at most 3 characters long
"Belgium"
Postal code
"0287"
Extra description about the address
"Building site 1"
Company name, it might differ from the account name
"Easy Electric"
Address contact's first name
"John"
Address contact's last name
"Doe"
Address contact's Phone number. The phone number is E164 format
Must match regular expression:^\+[1-9]\d{1,14}$
"+330287345678"
Optional indications or instructions about the delivery
"Please leave the parcel next the front door"
Optional reference about the customer
"Reference 123"
Information about the logistic details of the current cart (logistic method, logistic preferences, logistic options, delivery address, facility id)
Logistic method chosen for the cart
"PICK_UP"
List of supported logistic methods for the current cart. This field is temporary and should only be used in agreement with the C&C team
Must contain a minimum of 1 items
"DELIVERY"
"PICK_UP"
Unique identifier of the consolidated distribution center facility from which the order will be delivered
"cdc_erp_id_1"
Unique identifier of the facility.
"395"
Name of the facility used.
"SONEPAR Facility"
The address used for delivery when logistic method is 'DELIVERY'
{
"addressId": "234564567898789",
"opCoAddressId": "237564557868778",
"addressLine1": "chauss�e Verlinden 22",
"addressLine2": "Apartment 2",
"city": "Bruges",
"country": "BEL",
"postalCode": "0287",
"addressName": "Building #2",
"companyName": "Easy Electric",
"contactFirstName": "John",
"contactLastName": "Doe",
"contactPhoneNumber": "+333746573829",
"deliveryIndication": "Please leave the parcel next the front door.",
"customerReference": "Ref 364361"
}
Address unique identifier on spark. Its value must contain a 64-bit long number represented as a string.
"234564567898789"
OpCo internal system's unique identifier for the address.
"237564557868778"
According to ISO 19160 the 1/3 component of the street address. This usually contains the whole address though
"chaussée Verlinden 22"
According to ISO 19160 the 2/3 component of the street address.
"1st floor"
According to ISO 19160 the 3/3 component of the street address.
"Apparment 2"
The city name
"Bruges"
The region name
"Frandre"
The department name
"NA"
Country code
Must be at least 3 characters long
Must be at most 3 characters long
"Belgium"
Postal code
"0287"
Extra description about the address
"Building site 1"
Company name, it might differ from the account name
"Easy Electric"
Address contact's first name
"John"
Address contact's last name
"Doe"
Address contact's Phone number. The phone number is E164 format
Must match regular expression:^\+[1-9]\d{1,14}$
"+330287345678"
Optional indications or instructions about the delivery
"Please leave the parcel next the front door"
Optional reference about the customer
"Reference 123"
The cart or the open order identifier at opco system level
"cart-1615220019126"
If its value set to true, then all special price agreements (SPAs) should be included in the price calculation.
If its value set to false, then all SPAs should be excluded in the price calculation.
The presence of specialPriceAgreements array will override this parameter and this parameter should be ignored.
false
Special price agreements
No Additional ItemsSpecial price agreement
Identifier of the special price agreement
"47384781"
Title of the special price agreement
"SPA 1 cheaper than base and SPA 2"
{
"id": "47384781",
"title": "SPA 1 cheaper than base and SPA 2"
}
{
"id": "47384782",
"title": "SPA 2 cheaper than base but more expensive than SPA 2"
}
The project associated to the cart
Unique identifier of the project
"47384783"
The name of the project
"StandElec project"
The quote associated to the cart
Unique identifier of the quote
"quote-001"
The name of the quote
"Quote 001"
The quote code provided by the OpCo for the Customer. If this field is provided, spark will display it to the customer instead of the quoteId
"49995666"
The version of this quote. Used by some opco system to select the right version of the quote.
"1"
list of items added to the cart. Last added item is in the top
No Additional ItemsThis object represent a product item into cart
Unique Id to identify an item's occurrence in the cart. This field is a 64-bit long number represented as a string to avoid unwanted conversions to scientific notation when dealing with the model inside js code
Must match regular expression:^[0-9]+$
"2196602318024039368"
Contains the detail of prices related to the current product and line item
This is the product unit price that the customer will pay to the OPCO, without taxes, before applying promotion.
{
"amount": 1000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
List price of the product, to be used/shown in case there is no customer negotiated net price
{
"amount": 1000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Promotion percentage for the net price. No promotion percentage means there is either no promotion, or the promotion is not based on a promotion percentage.
10
This is the product unit price that the customer will pay to the OPCO, without taxes, after applying promotion. No promotional net price on the response means that no promotion is applied to the product
{
"amount": 900,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Details of the promotion applied to this item
{
"campaignId": "7575785",
"title": "10% de r�duction jusqu'� �puisement du stock",
"alternateProductId": "9898989"
}
Campaign id to which this promotion is associated
"7575785"
A human readable description explaining the promotions eligibility according to chosen language
"Achetez 3 articles et obtenez 10% de réduction"
the alternate product id (Since promotions in cebeo is handled by maintaining 2 different id for normal and promotional product), might not be required by other opcos
"9898989"
This is the product unit price that the customer will pay, without taxes, after applying the quote discount.
{
"amount": 900,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Special price agreement applied to this item
{
"id": "47384781",
"title": "SPA 1 cheaper than base and SPA 2"
}
Identifier of the special price agreement
"47384781"
Title of the special price agreement
"SPA 1 cheaper than base and SPA 2"
Details about the type of this price.
{
"id": "47384781",
"title": "SPA 1 cheaper than base and SPA 2",
"type": "SPECIAL_PRICE_AGREEMENT"
}
an identifier of the contract or project related to this price
"7575785"
A short title for this price according the selected language of the customer (Accept-Language)
"Contract schneider"
The type of this price when set to
- SPECIALPRICEAGREEMENT the id field should contains the contractId
- PROJECT the id field should contains the projectId
- STANDARD the id field can contains any identifier of this price, example the contractId (DEFAULT)
- MARKETPLACE for products that are from marketplace
"SPECIAL_PRICE_AGREEMENT"
List of taxes to be applied to net price or promotional net price in case of promotion
No Additional ItemsContains information about a tax. May contain a percentage or a taxAmount or both.
The type of the tax.
"VAT"
Is the tax applied as a surcharge or not (non-surcharge taxes apply to the price including surcharges).
false
Amount of the tax
{
"amount": 2160,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Percentage of the tax
20
{
"type": "VAT",
"surcharge": false,
"percentage": 20
}
This is the line item price that the customer will pay to the OPCO, without taxes, after applying promotion. Equals (netPrice * quantity) for items without promotion or (promotionalNetPrice * quantity) for items with promotion
{
"amount": 1800,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
List of taxes to be applied to item price
No Additional ItemsContains information about a tax. May contain a percentage or a taxAmount or both.
The type of the tax.
"VAT"
Is the tax applied as a surcharge or not (non-surcharge taxes apply to the price including surcharges).
false
Amount of the tax
{
"amount": 2160,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Percentage of the tax
20
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 360,
"scale": 2,
"currency": "EUR"
},
"percentage": 20
}
This is the line item price that the customer will pay to the OPCO, including taxes, after applying promotion. Equals (netPrice * quantity + taxes) for items without promotion or (promotionalNetPrice * quantity + taxes) for items with promotion
{
"amount": 2160,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The identifier of the line item within the quote in the OpCo system. It can be an alpha numeric value.
"4999569661752721026"
Different types of line items :
* PRODUCT - when the item contains a product available in spark catalog
* PROMOTION - when the line item is a cart promotion
"PRODUCT"
A flag to identify whether the item was added from spark or during the synchronization with opco. An item with null source should be considered as an item added from spark
"SPARK"
Details of the product.
unique product identifier.
"9554961192345"
This is the local product id could be specific to opcos, most cases it is same as manufacturer id but could be different as well
"732D16"
Offline product details.
{
"brandName": "Legrand",
"productTitle": "BATTERY CABINETS"
}
short description of the product
"LIGHT 274498 Metal Halide Lamp"
Brand name
"SASS"
number of units added to the cart.
2
A list of cut items representing the number of same-length cuts of an item
Represents a line cut
The id of the cut
Must match regular expression:^[0-9]+$
"17050283147243520"
The id of the cut group
Must match regular expression:^[0-9]+$
"17050283147243520"
The quantity of cuts for the specified length.
Value must be greater or equal to 1
3
The length of the cable cut in order unit in the product ordering detail.
Value must be greater or equal to 1
10
The reel option selected by the customer for a cuttable item. Possible values are described here.
"COILED"
{
"id": "1",
"cutGroupId": "1",
"numberOfCuts": 2,
"length": 3,
"reelOption": "COILED"
}
{
"id": "2",
"cutGroupId": "1",
"numberOfCuts": 4,
"length": 2,
"reelOption": "SPOOLED"
}
{
"id": "3",
"cutGroupId": "2",
"numberOfCuts": 1,
"length": 10,
"reelOption": "SPOOLED"
}
{
"id": "47138067260809216",
"productId": "3675925",
"itemType": "PRODUCT",
"source": "SPARK",
"quantity": 2,
"prices": {
"netPrice": {
"amount": 1000,
"scale": 2,
"currency": "EUR"
},
"listPrice": {
"amount": 800,
"scale": 2,
"currency": "EUR"
},
"promotionalNetPercentage": 10,
"promotionalNetPrice": {
"amount": 900,
"scale": 2,
"currency": "EUR"
},
"promotionDetails": {
"campaignId": "7575785",
"title": "10% de réduction jusqu'à épuisement du stock",
"alternateProductId": "9898989"
},
"specialPriceAgreement": {
"id": "47384781",
"title": "SPA 1 cheaper than base and SPA 2"
},
"context": {
"type": "SPECIAL_PRICE_AGREEMENT",
"id": "47384781",
"title": "SPA 1 cheaper than base and SPA 2"
},
"taxes": [
{
"type": "VAT",
"surcharge": false,
"percentage": 20
},
{
"type": "BEBAT",
"surcharge": true,
"taxAmount": {
"amount": 100,
"scale": 2,
"currency": "EUR"
},
"percentage": 10
}
],
"itemPrice": {
"amount": 1800,
"scale": 2,
"currency": "EUR"
},
"itemTaxes": [
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 400,
"scale": 2,
"currency": "EUR"
},
"percentage": 20
},
{
"type": "BEBAT",
"surcharge": true,
"taxAmount": {
"amount": 200,
"scale": 2,
"currency": "EUR"
},
"percentage": 10
}
],
"itemPriceIncludingTaxes": {
"amount": 2400,
"scale": 2,
"currency": "EUR"
}
}
}
{
"id": "47138067260809230",
"productId": "3675921",
"itemType": "PRODUCT",
"source": "OPCO",
"quantity": 3,
"prices": {
"netPrice": {
"amount": 4000,
"scale": 2,
"currency": "EUR"
},
"listPrice": {
"amount": 800,
"scale": 2,
"currency": "EUR"
},
"taxes": [
{
"type": "VAT",
"surcharge": false,
"percentage": 30
}
],
"itemPrice": {
"amount": 12000,
"scale": 2,
"currency": "EUR"
},
"itemTaxes": [
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 3600,
"scale": 2,
"currency": "EUR"
},
"percentage": 30
}
],
"itemPriceIncludingTaxes": {
"amount": 15600,
"scale": 2,
"currency": "EUR"
}
}
}
{
"id": "47138067260809450",
"productId": "3675934",
"itemType": "OFFLINE_PRODUCT",
"source": "OPCO",
"offlineProduct": {
"brandName": "Legrand",
"productTitle": "BATTERY CABINETS"
},
"quantity": 1,
"prices": {
"netPrice": {
"amount": 500,
"scale": 2,
"currency": "EUR"
},
"listPrice": {
"amount": 800,
"scale": 2,
"currency": "EUR"
},
"taxes": [
{
"type": "VAT",
"surcharge": false,
"percentage": 30
}
],
"itemPrice": {
"amount": 500,
"scale": 2,
"currency": "EUR"
},
"itemTaxes": [
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 150,
"scale": 2,
"currency": "EUR"
},
"percentage": 30
}
],
"itemPriceIncludingTaxes": {
"amount": 650,
"scale": 2,
"currency": "EUR"
}
}
}
List of coupons applied to the cart.
No Additional ItemsThis object represents a coupon into cart
Unique Id to identify a coupon occurrence in the cart. This field is a 64-bit long number represented as a string to avoid unwanted conversions to scientific notation when dealing with the model inside js code
Must match regular expression:^[0-9]+$
"2196602318024039368"
The coupon code
"SONEPAR_BIRTHDAY23"
A description of the coupon
"50% discount on cart because it is our birthday"
The discount provided by the coupon
{
"amount": 5000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
A flag showing whether or not the presence of other coupons is tolerated
true
Informations about the coupon
No Additional ItemsThis object represents a business message to show to the end user. A message could contain either a code or a text.
the severity of the message that could be used to decide on message formatting
"INFO"
A 'blocker' message prevents the redirection to the checkout page. This flag is set to 'true' when the message requires customer attention.
true
the code of the message
"ITEM_REMOVED"
the text of the message
"we would aim to provide all products to you by tomorrow"
{
"severity": "WARN",
"isBlocker": false,
"text": "15? stil remaining before applying coupon"
}
{
"severity": "WARN",
"isBlocker": false,
"text": "The coupon will expire soon"
}
{
"id": "47138067260809216",
"code": "WINTER_2022",
"description": "Winter is coming! 50? special discount!",
"discount": {
"amount": 5000,
"scale": 2,
"currency": "EUR"
},
"exclusive": true,
"relatedLineItemsIds": [],
"messages": [
{
"type": "COUPON",
"severity": "WARN",
"text": "This coupon cannot be combined with other"
}
]
}
The list of cart contributors
No Additional ItemsThe contributor's email
"john.doe@sonepar.com"
The contributor's full name
"John Doe"
A flag to define whether the contributor is the creator of the cart or not
true
A flag to define whether the contributor is a validator of the cart or not
false
A flag to define whether the contributor is using an onbehalf session on or not
false
{
"contactId": "14569778234085376",
"email": "john.doe@sonepar.com",
"fullName": "John Doe",
"creator": true,
"validator": false,
"onbehalf": false
}
{
"email": "jane.doe@sonepar.com",
"fullName": "Jane Doe",
"creator": false,
"validator": true,
"onbehalf": true
}
The total price of all the items added to the cart after applying promotions and coupons, without taxes. This field is included in the response only if the cart contains items.
{
"amount": 13800,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total price of all the items added to the cart before applying promotions and coupons, without taxes. This field is included in the response only if the cart contains items.
{
"amount": 1400,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total discount (Promotions + Coupons) applied to the cart. This field is included in the response only if the cart contains items.
{
"amount": 7000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The surchage taxes of items added to the cart. This field is included in the response only if the cart contains items.
{
"amount": 200,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total price of all items added to the cart after applying promotions and coupons, including surcharges. This field is included in the response only if the cart contains items.
{
"amount": 14000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total price of all items added to the cart after applying promotions and coupons, including taxes except the VAT tax, and shipping cost relative to the logistic choices. This field is included in the response only if the cart contains items.
{
"amount": 14015,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total of shipping cost relative to the selected option and scenario. This field is calculated by summing the cost related to the option to the cost related to the scenario. This field is included in the response only if the cart contains items.
{
"amount": 15,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total price of all items added to the cart after applying promotions and coupons, including all taxes. This field is included in the response only if the cart contains items.
{
"amount": 18000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
The total price of all items added to the cart after applying promotions and coupons, including shipping cost, surcharges, and taxes. This field is included in the response only if the cart contains items.
{
"amount": 18015,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Total amount of vat applied to items aggregated and sorted in ascending order by vat percentage. This field is included in the response only if the cart contains items and VAT taxes are applied to one or more items.
No Additional ItemsContains information about a tax. May contain a percentage or a taxAmount or both.
The type of the tax.
"VAT"
Is the tax applied as a surcharge or not (non-surcharge taxes apply to the price including surcharges).
false
Amount of the tax
{
"amount": 2160,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
Percentage of the tax
20
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 360,
"scale": 2,
"currency": "EUR"
},
"percentage": 20
}
{
"type": "VAT",
"surcharge": false,
"taxAmount": {
"amount": 3600,
"scale": 2,
"currency": "EUR"
},
"percentage": 30
}
Give the detail of all discounts applied to the cart
No Additional Itemscode identifying the discount. Equivalent to 'productId' when the discount is given by a COUPON and 'title' when it is given by PROMOTION
"WINTER_2022"
Indicating the type of the discount
"COUPON"
amount of the discount, in absolute value
{
"amount": 25000,
"scale": 2,
"currency": "EUR"
}
Unscaled price amount
20000
the scale to be applied on the amount
2
the currency code following ISO 4217 standard 3 letter in which the prices are being displayed
Must be at least 3 characters long
Must be at most 3 characters long
"EUR"
{
"code": "WINTER_2022",
"type": "COUPON",
"discount": {
"amount": 5000,
"scale": 2,
"currency": "EUR"
}
}
An array of message to display to the end user related to the cart
No Additional ItemsThis object represents a business message to show to the end user. A message could contain either a code or a text.
the severity of the message that could be used to decide on message formatting
"INFO"
A 'blocker' message prevents the redirection to the checkout page. This flag is set to 'true' when the message requires customer attention.
true
the code of the message
"ITEM_REMOVED"
the text of the message
"we would aim to provide all products to you by tomorrow"
An array of persistent messages to display to the end user related to the cart
No Additional ItemsThis object contains all mandatory informations to show to the end user persistent message. A persistent message is showed to the user until this last acknowledges it
Identifier used to access to the persistent message
"123456789"
The operation performed which has raised the message
"BULK_ADD_ITEMS"
The error code
"ITEMS_NOT_ADDED"
The reason that has made the error happened
"PRODUCT_NOT_FOUND"
A short text dealing additional informations about the message
"related products : [4789651], [9820367], [39852330]"