Действие — Рассчитать скидку для продукта
Действие позволяет рассчитать скидку для продуктов либо для «Расширенного магазина ВКонтакте» и реагировать, например, на событие «Оформил заказ в расширенном магазине VK». А если вам нужен иной вариант скидки вы всегда можете ее рассчитать самостоятельно через математику.
Рассмотрим действие подробнее:

1) Тип скидки — фиксированный либо в процентах. В случае фиксированной скидки сумма продукта будет уменьшена на число, указанное в параметре 5.
Важно! Поддерживается 100% скидка и скидка равная стоимости продукта. Напоминаем, что если вы используете Юкассу с подключенной кассой, то сохраняйте у пользователя email, телефон для чеков. Запросить их у пользователя можно соответствующими условиями «Есть Email» , либо «Есть телефон».
2) Для какого сообщества будут происходить операции с возвратом (можно сменить нажав на соответствующую ссылку).
3) Название продукта, поддерживаются переменные, например, %vk_product_title%
4) Цена продукта, например, %vk_product_price%
5) Сумма скидки. Поддерживает десятичное значение. Например, 3.5%
По умолчанию параметры 3, 4 берутся из товаров сообщества.
6) Массив продуктов. Используется для «расширенного магазина ВК». Переменная %order_items%
Если она передается в действии, но ее значение имеет некорректные JSON - параметры, либо она пуста, действие вернет ошибку.
Полезные переменные действия
%vk_product_title%
- название продукта
%vk_product_price%
- стоимость продукта
%discount_amount%
- скидка переданная в действии
%order_items%
- массив продуктов для магазина ВК
%discount_type%
- тип скидки
%discount_order_price%
- cтоимость продукта либо массива продуктов со скидкой
%discount_order_items%
- массив продуктов для магазина ВК со скидкой (если%order_items%
передан)
Важно! Действие всего лишь обрабатывает массив продуктов на указанную сумму. Дальнейшие действия могут быть любые нужные вам и зависеть от настройщика.
Пример: передан order_items и скидка 2.
[ { "item_id": 9116132, "quantity": 3, "title": "Большой набор роллов 2", "price": 3, "currency": "RUB", "image": "https://sun9-18.userapi.com/impg/j9WxC5RgeQcbQPjDYULdvq71oq9LkWRVxeNM7Q/E-mFUZ6Ibuk.jpg?size=0x400&crop=0,0,1,1&quality=95&sign=ab13d74979fa2c8c26337196084611c1&c_uniq_tag=OpvlgxU1PD4aXUOW1kAJUjE9h708VBZdDfOIufLRAmY", "category": "", "code": "1119" }, { "item_id": 5189591, "quantity": 1, "title": "новый Гибкий товар!", "price": 5, "currency": "RUB", "image": "https://sun9-17.userapi.com/impg/f50XaXQBFgbt1WGF01QpezTzgls7DpRNN4foJg/dPn9ven7fGI.jpg?size=0x400&crop=0,0,0.996,0.996&quality=95&sign=83d7c09bdb8e2e138faff1d713f215b5&c_uniq_tag=CxHvvQXjMZVIhHzhc7K1kGsqtdD5NyDmsXUnrZqOqFM", "category": "", "code": "1000001" } ]
Нехитрыми вычислениями получаем (3*3)+ (1*5) = 14
Но в discount_order_items придет
[
{
"ite
m_id": 911613
2,"quantity":
3,"title&am
p;quot;: &quo
t;Большой набор роллов 2","price": 2.571428571,"currency": "RUB","image": "https:\/\/sun9-18.userapi.com\/impg\/j9WxC5RgeQcbQPjDYULdvq71oq9LkWRVxeNM7Q\/E
-mFUZ6Ibuk.jpg?
size=0x400&
;c
r
op=0,0,1,1&qual
ity=95&sig
n=ab13d74979fa2c8c263
37196084611c
1&c_
uniq_tag=OpvlgxU1PD4aXUOW1kAJUjE9h708VBZdDfOIufLRAmY","category": ";","code": "1119"},{"item_id": 5189591,
"quantity&
quot;: 1,"ti
t
le": "новый Гибкий товар!","price": 4.285714286,"currency": "RUB","image": "https:\/\/sun9-17.userapi.com\/impg\/f50XaXQBFgbt1WGF01QpezTzgls7DpRNN4foJg\/dPn9ven7fGI.jpg?size=0x400&crop=0,0,0.996,0.996&quality=95&sign=83d7c09bdb8e2e138faff1d713f215b5&c_uniq_tag=CxHvvQXjMZVIhHzhc7K1kGsqtdD5NyDmsXUnrZqOqFM","category": "","code": "1000001"}]
Cчитаем: (3*2.571428571)+ (1*4.285714286) = 7,714285713 + 4.285714286) = 11,999999999, то есть, 12.
До скидки было 14, со скидкой 12. Все работает прекрасно.
Творческих взлётов и успешного внедрения!
Вернуться на главную страницу инструкций