Adding products to a cart
You can add products one by one or multiple products at once
Request
You only need to provide the cart-id and product-code to add a product to the cart.
Price and quantity will be added based on the Hublify-data for the product.
Attention: On default only products that are marked as buyable will be accepted.
Request URL
https://{your hublify url}/api/eos_10/cart_addProducts
Request parameter
{
"filter": {
"cart_id": 123
},
"fields": {
"cart_items": [ // Array with products that should be added
{
"pcode": "PC0001
", // Product-Code. If the Product is available in Hublify PIM, the other item-details can be filled from there.
"quantity": 1 // (optional, default: min-order-quantity set in PIM, usually 1)
}
]
},
"evaluate": true // (optional) directly reevaluate the cart
}
Response
If your request was successful, you receive the adjusted cart-data with some additional details for your convenience.
If no other data has been set before, the cart will also be initialised with the default order-options (invoice- and delivery country, shipping type and payment-method)
If you already have the exact same product in your cart, your requested quantity will be added to the existing item.
The Cart will automatically adjust the request to fulfill the product-requirements set in the PIM (e.g. min/max order-quantity).
You can see details about the actual quantities newly added to your cart ("quantity_added") and the new total quantity for this product ("quantity_final") in the meta-data you receive in the response.
Tipp: The cart will also automatically consider personal prices, price scales and other product details configured in the Hublify PIM.
{
"status": true,
"meta": { // Summary of the latest call
"products_added": 1, // number of products added to the cart
"items": { // Details about the added products
"PC0001": {
"quantity_added": 1, // Quantity that was actually added for this specific product (after adjustment for PIM-requirements)
"quantity_final": 1 // New total quantity in the cart for this specific item (sum of previous and newly added quantity)
}
}
},
"data": ... // As described in cart-get
}
Update products in the cart
You can adjust e.g. quantities for one or more products in the cart
Request
You need the cart-id and the key of the item to update within the cart_items array to update it
Request URL
https://{your hublify url}/api/eos_10/cart_updateProducts
Request parameter
{
"filter": {
"cart_id": 123
},
"fields": {
"cart_items": [ // Array with products that should be updated
"0": {
"quantity": 3 // You only need to add the details you want to update
}
]
},
"evaluate": true // (optional) directly reevaluate the cart
}
Response
If your request was successful, you receive the adjusted cart-data.
The Cart will automatically adjust the request to fulfill the product-requirements set in the PIM (e.g. min/max order-quantity)
Tipp: The cart will also automatically consider personal prices, price scales and other product details configured in the Hublify PIM.
{
"status": true,
"data": {
"cart_id": "123",
"cart_data": {
"currency": "EUR",
"cart_item_key": 1,
"order": {
"invoice_country": "DE",
"deliver_country": "DE",
"fk_o_st_id": "1"
},
"payment": {
"pys_id": "1"
},
"currency_dsp": "\u20ac"
},
"cart_items": [
{
"quantity": 3,
"pcode": "PC0001",
"vat_pct": 19,
"xdata": {
"price_scale": null,
"price_data_original": {
"price_single_brutto": 14.56,
"vat_pct": "19.00"
},
"currency_convert_rates": {
"EUR": "1.0000"
}
},
"type": "product",
"block": 1,
"price_single_brutto": 14.56,
"name": "Example Product 1"
}
],
"cart_prds_quantity": 3,
"cart_prds_netto": 36.71,
"cart_prds_brutto": 43.68,
"cart_total_quantity": 3,
"cart_total_netto": 36.71,
"cart_total_brutto": 43.68,
"cart_lock": "0",
"cart_prds_lock": "0",
"cart_time_insert": "2021-06-14 16:30:22",
"cart_time_update": "2021-06-14 17:04:58",
"cart_time_out": null,
"cart_time_save": null,
"fk_cart_persid": "0",
"cart_type": "open",
"cart_name": "",
"summary": {
"prds_pure_virtual": false,
"weight_total": 0,
"vats": {
"19": {
"total_netto": 36.71,
"total_brutto": 43.68,
"total_vat": 6.97,
"items_netto": 36.71,
"items_brutto": 43.68,
"items_vat": 6.97
}
},
"blocks": {
"1": {
"total_netto": 36.71,
"total_brutto": 43.68,
"total_vat": 6.97,
"items_netto": 36.71,
"items_brutto": 43.68,
"items_vat": 6.97
}
},
"items": {
"PC0001": {
"quantity": 3,
"occurrences": 1,
"total_netto": 36.71,
"total_brutto": 43.68,
"total_vat": 6.97
}
},
"type": {
"product": {
"quantity": 3,
"occurrences": 1,
"total_netto": 36.71,
"total_brutto": 43.68,
"total_vat": 6.97
}
},
"order_min_limit_OK": true
},
"checkout": {
"purchase": true,
"msg": null
}
}
}
Remove products from the cart
Request URL
https://{your hublify url}/api/eos_10/cart_removeProducts
Request with item-key
You need the cart-id and the item-id to remove it
Request parameter
{
"filter": {
"cart_id": 123,
"item_id": 0
}
}
Request with pcode
You need the cart-id and product-code to remove thie item
If you use the pcode to remove products, ALL items with this pcode will be removed
Request parameter
{
"filter": {
"cart_id": 123,
"pcode": "PC0001"
}
}
Response
If your request was successful, you receive the adjusted cart-data
{
"status": true,
"data": {
"cart_id": "123",
"cart_data": {
"currency": "EUR",
"cart_item_key": 1,
"order": {
"invoice_country": "DE",
"deliver_country": "DE",
"fk_o_st_id": "1"
},
"payment": {
"pys_id": "1"
},
"currency_dsp": "\u20ac"
},
"cart_items": [],
"cart_prds_quantity": 0,
"cart_prds_netto": 0,
"cart_prds_brutto": 0,
"cart_total_quantity": 0,
"cart_total_netto": 0,
"cart_total_brutto": 0,
"cart_lock": "0",
"cart_prds_lock": "0",
"cart_time_insert": "2021-06-14 16:30:22",
"cart_time_update": "2021-06-14 17:05:13",
"cart_time_out": null,
"cart_time_save": null,
"fk_cart_persid": "0",
"cart_type": "open",
"cart_name": "",
"summary": {
"prds_pure_virtual": true,
"weight_total": 0,
"order_min_limit_OK": true
},
"checkout": {
"purchase": true,
"msg": null
}
}
}