Методы

  • /api/v2/marketing-actions/calc/ - расчет чека / корзины

/api/v2/marketing-actions/calc/ - расчет чека / корзины

Этот метод предназначен для формирования корзины (чека), расчета её стоимости, количества начисляемых баллов и применения акций с последующим пересчетом стоимости заказа (в случае если он изменился при применении акции).

При формировании запроса передаётся информация о количестве товарах, их SKU и цене.

Формат запроса

Если настроена акция, то в случае списания баллов необходимо передавать информацию о размере желаемого списания баллов для каждой позиции.

Параметр обязательный? Имя параметра Описание параметра
да token  
да store_department_id   См. здесь
да cart  Массив, содержащий основную информацию о товарах. В нём представлены следующие  реквзииты:
да 1, 2, 3 …. n  Порядковый номер товара в корзине
да sku  ID товара в вашей системе (артикул)
да price  Сумаарная стоимость позиции
нет quantity  Количество единиц товара в позиции чека
нет discount_points  Информация о размере желаемого списания баллов для каждой позиции в параметре
нет user_phone или origin_user_id  Идентификатор пользователя. Необязательный параметр. Используется для проверки принадлежности пользователя к каким либо группам (тегам).
нет

card_numbers

 Массив, содержащий коды дисконтных карт, примненных к корзине (заказу). Возможно передать несколько карт в один заказ разделяя их запятой.

Значение discount_points рассчитывается на стороне клиента в соответствии с бизнес процессами компании.

Если значение скидки, получаемой по позиции при переданном количестве баллов превышает квоту, то в ответ на запрос будет возвращена ошибка с указанием позиции, превысившей квоту.

Пример запроса

sailplay.ru/api/v2/marketing-actions/calc/?cart={"1":{"sku":"1","price":600},"2":{"sku":"1","price":400},"3":{"sku":"1","price":400}}&store_department_id=530&token=2f6e41c6ac9c00e11d461de751e06a36fc9b94ba&user_phone=79058356969&card_numbers=[2,430]

Ответ сервера

Название параметра Описание параметра
status  
marketing_actions_applied  Массив, содержащий  информацию о примененных акциях: client_msg, service_msg и Alias (идентификатор акции)
client_msg  Сообщение, которое получит клиент после успешного применения акции
service_msg  Сообщение, которое позволит идентифицировать примененную акцию
possible_marketing_actions  Массив, содержащий  информацию о возможной акции (если выполнена как минимум 1 часть условия): client_msg, service_msg и Alias
cart  Массив, содержащий состав корзины и основную по ней информации. Содержит следующие значения:
total points  Суммарное количество баллов за, которые покупатель получит при оплате корзины (чека).
positions  Массив товаров внутри данной корзины. Содержит всю основную информацию о товарах: порядковый номер товара, его категорию, ID товара, стоимость (price), новую стоимость,в случае, если была применена какая либо акция (new_price), количество бонусов (points), коэффициент конвертации (points_rate) и количество (quanity)
positions_count  Количество товаров в чеке
total_price  Общая стоимость товаров в корзине (чеке) с учетом скидок от акций
ID  Уникальный идентификатор расчитанного заказа (корзины). Используется для создания покпки на основании полученного расчета корзины.

 

Пример ответов сервера

{
    "status": "ok",
    "marketing_actions_applied": [
        {
            "client_msg": "33% disc",
            "service_msg": "33% disc",
            "alias": "3432432423"
        },
        {
            "client_msg": null,
            "service_msg": "Discount card (10%)",
            "alias": "3412412"
        }
    ],
    "possible_marketing_actions": [],
    "cart": {
        "total_points": 603,
        "positions": {
            "1": {
                "category": {
                    "sku": "11",
                    "id": 332
                },
                "product": {
                    "sku": "1",
                    "id": 1382
                },
                "marketing_actions": [
                    "3"
                ],
                "price": "600.00",
                "new_price": "335.00",
                "points": 335,
                "points_rate": "1.0000",
                "quantity": 1
            },
            "2": {
                "category": {
                    "sku": "11",
                    "id": 332
                },
                "product": {
                    "sku": "1",
                    "id": 1382
                },
                "marketing_actions": [
                    "3"
                ],
                "price": "400.00",
                "new_price": "268.00",
                "points": 268,
                "points_rate": "1.0000",
                "quantity": 1
            }
        },
        "positions_count": 2,
        "total_price": "603.00",
        "id": 463
    }
}