API: Корзина
Для перечисленных ниже методов необходимо подключить дополнительно библиотеку session следующим образом:
$this->load->library('session');
Метод add_cart_item позволяет добавить товар в корзину.
Параметры запроса:
id_item | ID товара |
---|---|
Тип | integer |
Значение по умолчанию | нет |
id_variety | ID модификации |
---|---|
Тип | integer |
Значение по умолчанию | нет |
amount | количество |
---|---|
Тип | integer |
Значение по умолчанию | нет |
options | опции товара |
---|---|
Тип | array |
Значение по умолчанию | нет |
Пример простейшего вызова:
Пример вызова с параметрами:
Пример ответа:
Ответ не содержит вывода данных
Метод update_cart_item позволяет изменять количество товара в корзине.
Параметры запроса:
id_item | ID товара |
---|---|
Тип | integer |
Значение по умолчанию | нет |
id_variety | ID модификации |
---|---|
Тип | integer |
Значение по умолчанию | нет |
amount | количество |
---|---|
Тип | integer |
Значение по умолчанию | нет |
options | опции товара |
---|---|
Тип | array |
Значение по умолчанию | нет |
Пример простейшего вызова:
Пример ответа:
Ответ не содержит вывода данных
Метод delete_cart_item позволяет удалить товар из корзины.
Параметры запроса:
id_item | ID товара |
---|---|
Тип | integer |
Значение по умолчанию | нет |
id_variety | ID модификации |
---|---|
Тип | integer |
Значение по умолчанию | нет |
amount | количество |
---|---|
Тип | integer |
Значение по умолчанию | нет |
options | опции товара |
---|---|
Тип | array |
Значение по умолчанию | нет |
Пример простейшего вызова:
Пример вызова с параметрами:
Пример ответа:
Ответ не содержит вывода данных
Метод add_cart_delivery позволяет добавить доставку в корзину.
Параметры запроса:
id_delivery | ID доставки |
---|---|
Тип | integer |
Значение по умолчанию | нет |
Пример простейшего вызова:
Пример ответа:
Ответ не содержит вывода данных
Метод delete_cart_delivery позволяет удалить доставку из корзины.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
Ответ не содержит вывода данных
Метод get_cart позволяет получить данные о товарах в корзине.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
Array
(
[0] => Array
(
[id] => 64
[id_source] => SOURCE_ID
[id_session] => SESSION_ID
[amount] => 2
[name] => Тестовый товар
[vendor_code] => TEST_VC
[desc_short] =>
[link] => /products/testovy_tovar-64
[variety_id] => 9
[variety_name] => Тестовая модификация
[image] => /images/gallery/6JIFaDoFjzi8eThzgW0y.jpg
[value] => 10
[unit] => шт
[price] => 5880
[amount_step] => 1
[quantity] => 5
[weight] => 240
[options] => 8
[options_data] => Array
(
[0] => Array
(
[id] => 8
[name] => Тестовая опция
[price] => 250.00
)
)
)
)
Внимание! Для корректной обработки ответа, необходимо знать структуру таблицы, соответствующей данному методу. Для просмотра информации перейдите по ссылке.
Метод get_cart_delivery позволяет получить данные о доставке в корзине.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
stdClass Object
(
[id_delivery] => 1
[name] => Доставка курьером
)
false - если нет данных о доставке или она не добавлена в корзину
Метод get_cart_sum позволяет получить данные о сумме корзины, учитывая цену доставки, скидки и купоны.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
Array
(
[sum] => 12010
[discount_sum] => 10922
[amount] => 2
[count] => 1
[delivery] => 250
[delivery_module ] =>[extra] => Array
(
[discount] => 1
[coupon] => 1
[discount_name] => Скидка при покупке online
[discount_value] => 5
[discount_unit] => %
[discount_quantity] => 588
[discount_diff] => 0
[coupon_id] => 1
[coupon_name] => Тестовый купон
[coupon_code] => TEST_COUPON
[coupon_value] => 500
[coupon_unit] => currency
[coupon_quantity] => 500
[coupon_diff] => 0
[coupon_amount] =>
)
[price_data ] => Array(
[177_0 ] => Array
(
[price] => 5880
[price_calc] => 5336
[amount] => 2
)
)
)
Основные параметры ответа:
sum | сумма корзины без скидок |
discount_sum | сумма корзины со всеми скидками и купонами |
amount | количество товаров в корзине (доставка не учитывается) |
count | количество уникальных позиций в корзине (доставка не учитывается) |
delivery | сумма доставки |
delivery_module |
модуль расчета стоимости доставки |
extra | массив с дополнительными данными, такими как скидки и купоны |
Дополнительные параметры ответа:
discount | активирована ли скидка в корзине |
coupon | активирован ли купон в корзине |
discount_name | название скидки |
discount_value | величина скидки |
discount_unit | тип скидки, % или currency (валюта) |
discount_quantity |
размер скидки в валюте интернет-магазина |
discount_diff |
погрешность при округлении скидки |
coupon_id | ID активированного купона |
coupon_name | название купона |
coupon_code | код купона |
coupon_value | величина скидки |
coupon_unit | тип скидки, % или currency (валюта) |
coupon_quantity |
размер скидки в валюте интернет-магазина |
coupon_diff |
погрешность при округлении скидки |
coupon_amount | количество купонов |
Блок price_data:
Содержит массив цен, где ключи массива состоят из конкатенации ID товара и ID модификации со знаком "_" (В примере указан товар с ID 177 без модификации, т.е. ID модификации 0), а значения описаны ниже в таблице
price | исходная цена товара/модификации |
price_calc | цена товара/модификации со всеми примененными скидками и купонами (сначала применяется скидка, затем купон) |
amount | количество в корзине |
Метод clear_cart позволяет полностью очистить корзину.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
Ответ не содержит вывода данных
Метод redeem_coupon позволяет активировать купон в корзине.
Параметры запроса:
code | код купона |
---|---|
Тип | string |
Значение по умолчанию | нет |
Пример простейшего вызова:
Пример ответа:
stdClass Object
(
[id] => 1
)
false - если купон не удалось активировать
Метод delete_coupon позволяет удалить купон из корзины.
Параметры запроса:
Нет параметров |
Пример простейшего вызова:
Пример ответа:
Ответ не содержит вывода данных