Действие — Рассчитать скидку для продукта

Обзор действия

Действие позволяет рассчитать скидку для продуктов либо для «Расширенного магазина ВКонтакте» и реагировать, например, на событие «Оформил заказ в расширенном магазине 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. Все работает прекрасно.

Творческих взлётов и успешного внедрения!

Вернуться на главную страницу инструкций
181 views·1 share