Кейс по разработке программы лояльности

Программа лояльности для sokana.ru

Sokana - инновационный стартап, сервис готовой еды.

Задача: разработать накопительную программу лояльности для постоянных покупателей с возможностью оплаты до 20% заказа бонусами.

Этап 1. Используем инструмент "из коробки"

В битриксе есть внутренние счета покупателей, на которые можно начислять и списывать средства. В настройках платежной системы "Внутренний счет" можно поставить ограничение на процент оплаты.

Это решает часть задачи, поэтому за основу взяли внутренний счет покупателя.

Этап 2. Размер бонусов

Условия начисления бонусов:

  • бонусы начисляются на процент от суммы реального платежа
  • бонусы не начисляются за акционные товары
  • процент зависит от суммы покупок прошлого месяца
  • условия не действуют за первый заказ - за первую покупку всегда начисляем 500 приветственных бонусов

Решение: наш модуль после оплаты заказа проверяет - это первый заказ покупателя? Если да, то +500 бонусов. Если не первый, то проверяем, есть ли в корзине товары без скидок, и получаем сумму, с которой будем считать бонусы.

Далее делаем запрос к базе данных и получаем все оплаченные заказы покупателя прошлого месяца. Запрос кэшируемый, в API D7 есть возможность кэшировать запросы.

В зависимости от общей суммы покупок получаем % бонусов для начисления. Полученную сумму бонусов зачисляем на бонусный счет покупателя.

Этап 3. Премиальные бонусы

Так как программа лояльности внедрялась в уже работающем магазине, все старые покупатели получили 500 приветственных бонусов.

Решение: перед включением бонусной программы мы запустили скрипт, который начислил бонусы всем нашим покупателям.

Этап 4. Письма

Добавили шаблон письма, которое отправляется покупателю после начисления бонусов

Этап 5. Личный кабинет покупателя

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

Решение: взяли компонент bitrix:sale.personal.account, который отображает состояние внутреннего счета текущего пользователя. Кастомизировали его шаблон и добавили историю начислений и расходов.

Этап 6. Корзина и оформление заказа

Чтобы покупатель видел возможность оплаты бонусами, добавили уведомления в корзину и на страницу оформления заказа.

Решение: для получения доступной суммы бонусов использовали тот же компонент bitrix:sale.personal.account

Бонусная программа - аккаунт покупателя
Этап 7. Админка

Процент начисляемых бонусов редактируется на странице настроек модуля программы лояльности.

Этап 8. Сгорание неиспользованных бонусов

По условиям программы неиспользованные бонусы сгорают через 60 дней.

Решение: мы написали скрипт, который работает по крону.

Результат
  • повысилась лояльность покупателей
  • увеличилось количество продаж
  • покупатели стали совершать покупки за бонусы, потому что видят баланс
  • получили инструмент стимуляции покупок товаров без скидок, потому что за них начисляются бонусы