Как вывести персональные цены в рассылке
Персональные цены — индивидуальные цены на продукты для каждого клиента, которые учитывают примененные промоакции и количество бонусов на его балльных счетах. Персональные цены доступны к использованию в рассылках, которые принимают параметры шаблонизатора, а также на сайте.
Использование персональных цен в письмах помогает повысить конверсию в клик и заказ. В данной статье рассмотрим, как вывести персональные цены на продукты в рассылках.
С помощью данной механики можно показывать пользователю: персональную стоимость продукта; отображать количество бонусных баллов, доступных к начислению при его покупке; выводить лейбл промоакции. При расчете персональных цен учитываются определенные типы акций, дерево арбитража и лимиты.
Как работают персональные цены в рассылках
В одном письме можно вывести до 20 продуктов с персональной ценой. Отдельно для каждого продукта вызывается системная операция с шагом «Расчет заказа», которая с учетом действующих акций и лимитов рассчитывает персональную цену для продукта от цены, указанной в его карточке.
Результаты расчета нельзя увидеть в логах интеграций, так как операция является системной. Если на продукт не действуют промоакции, то значение персональной цены будет равно актуальной цене (price) из его карточки.
Шаг 1. Настройте промоакции.
Создайте балльную или скидочную промоакцию или используйте существующие. Убедитесь, что в них выбраны подходящие бенефиты, и они соответствуют нижеупомянутым настройкам.
Для участия в расчете персональных цен промоакция должна:
- Действовать в канале Web-Email или во всех каналах и зонах.
Если у вас уже есть настроенная промоакция, которая действует в определенных каналах, то вам нужно также добавить канал «Web-email». В случаях, когда вы по определенным причинам не планируете редактировать промоакцию, можно создать новую, в которой будет указан только один канал — «Web-email».
- Содержать любые бенефиты из списка:
- Выдать скидку;
- Разрешить скидку баллами;
- Использовать цену из дополнительного поля;
- Начислить баллы;
- Начислить баллы из дополнительного поля.
Обратите внимание, что промоакция не будет участвовать в расчете персональных цен, если в ней:
- Выдаются или применяются промокоды;
- Выбраны наборные бенефиты — каскадная скидка; выдать скидку за набор; выдать скидку на N продуктов при оформлении заказа на N единиц продукта; выдать скидку на продукт за каждые n рублей, потраченные на продукты из сегмента;
- Указаны сложные условия по составу заказа. В сегменте заказов, на которые действует промоакция, можно выбирать только условия стандартных полей в «Линии чека — есть такие»: базовая цена, текущая цена, сегмент продуктов. При выборе других фильтров промоакция не будет участвовать в расчете персональных цен.
Шаг 2. Создайте рассылку.
Персональные цены можно выводить и в массовых, и в автоматических рассылках c помощью параметров шаблонизатора.
На данный момент вывод персональных цен недоступен в email-рассылках при использовании нового конструктора.
- Для вывода в письме конкретного товара — используйте параметр:
${Products.SearchInIdentity("<Название внешней системы>").GetByValue("<Идентификатор продукта>").PriceWithSpentBonusPoints}
В котором с помощью параметра SearchInIdentity
указывается название внешней системы и идентификатор продукта, а через PriceWithSpentBonusPoints
выводится персональная цена продукта с учетом скидок и доступных к списанию баллов.
- Для вывода сегмента продуктов или списка продуктов в механиках «Брошенная сессия», «Вывод товаров из списка продуктов» и т.д., используйте параметры:
Product.PriceWithSpentBonusPoints
— цена для клиента в его зоне с учетом акций и применения доступных баллов.
При выводе в письме нескольких товаров с персональной ценой через параметр Product.PriceWithSpentBonusPoints
следует учитывать, что в каждом продукте будет указана цена с учетом доступных баллов клиента. Однако у него может быть недостаточно баллов для покупки всех товаров. Рекомендуем предупредить клиентов об этом в тексте письма.
Product.PriceForCustomer
— цена для клиента в его зоне с учетом акций. Учитывает только скидочные акции.
Product.EarnBonusPoints
— количество баллов, начисляемых за покупку продукта. Количество баллов для начисления рассчитывается от наименьшей цены из параметров Product.PriceWithSpentBonusPoints
или Product.PriceForCustomer
. Например, цена продукта с учетом скидочных акций и бонусов — 3 000 рублей, а цена с учетом только скидочных акций — 2 500. Количество доступных к начислению баллов будет рассчитано от 2 500.
Данные параметры являются коллекциями. Для обращения к каждому элементу (продукту) используйте цикл for...end for
.
Пример: вывод параметров в табличной верстке при подстановке товаров из списка продуктов.
@{for row in tableRows(Recipient.GetProductList("Список продуктов").Take(4), 2)}
@{for cell in row.Cells}
@{if cell.Value!= null}
${cell.value.Product.PriceWithSpentBonusPoints}
Начислим ${ cell.Value.Product.EarnBonusPoints.GetByBalance("Название балльного счета")} бонусов.
@{end if}
@{end for}
@{end for}
Шаг 3: Вывод лейблов в письме.
В промоакциях есть дополнительное поле «Лейбл промоакции», в которое можно добавить описание для отображения рядом с карточкой продукта в письме или на сайте. Например: −50%, 1+1. В это дополнительное поле можно ввести до 100 символов.
Лейбл доступен к выводу, если в промоакции выбраны бенефиты:
- Выдать скидку;
- Разрешить скидку баллами;
- Использовать цену из дополнительного поля;
- Начислить баллы;
- Начислить баллы из дополнительного поля;
- Каскадная скидка;
- Выдать скидку за набор;
- Выдать скидку на N продуктов при оформлении заказа на N единиц продукта;
- Выдать скидку на продукт за каждые n рублей, потраченные на продукты из сегмента.
В сегменте заказов, на которые действует промоакция, можно указывать только условия стандартных полей «Линии чека — есть такие»: базовая цена, текущая цена, сегмент продуктов. При выборе других фильтров лейбл не будет выведен.
Отобразить лейбл в рассылке можно с помощью параметра шаблонизатора promoLabels
. Пример: выводим лейбл промоакции для конкретного продукта.
@{for product in Products.SearchInIdentity("Название внешней системы продуктов").GetByValue("Внешний идентификатор продукта").PromoLabels.Take(1)}
${product}
@{end for}