Разработка бонусной системы для магазина косметики
В проекте использовали
Клиент пришел с проблемой
Онлайн-магазин косметики решил перейти с прежней накопительной системы скидок для постоянных клиентов на новую бонусную и интегрировать ее с программой «1С:бухгалтерия». Действующая система накопительных поощрений рассчитывала 5 уровней скидок в зависимости от объема покупок отдельно для розничных и оптовых клиентов. Из 211 237 покупателей 31 965 пользовались накопительными скидками.
Клиент хотел, чтобы у постоянных розничных покупателей действовали прежние скидки (но уровень больше не повышался) и была возможность перехода на новую систему бонусов. А все новые покупатели просто должны подключаться к бонусной программе автоматически.
Решение получилось комплексным. Затронут весь основной функционал сайта. Это и оформление заказа и даже каталог. Интересно что у большинства клиентов работает новая бонусная система, а у некоторых по-прежнему старая накопительная программа.
Всегда есть особенности
Действовавшая накопительная программа работала на базе встроенного CMS модуля, по которому не было документации. Накопленная у клиента скидка нигде не отражалась, и отключить ее действие, оставив накопления покупателя на прежнем уровне, было невозможно.
Количество бонусов за товар, параметры начисления, списание бонусов – все должно управляться через 1С. И играющий второстепенную роль сайт тоже должен иметь доступ к начислению бонусов, не дожидаясь отклика от 1с, и не нарушая целостность бонусной системы.
Как мы это сделали
Чтобы получить и сохранить точные данные о клиентах и скидках мы отключили накопительную программу. Создали специальные группы пользователей «накопленная скидка X%». Получили объем заказов клиентов и смогли рассчитать уровень скидок для каждого покупателя.
Для взаимодействия с 1с мы создали 2 потока данных и модифицировали 3 существующих в программе. Количество бонусов за товары, коэффициент покупателя, списываемые и начисляемые бонусы за заказ – все передается в модифицированных потоках. В отдельном потоке передается история в таком виде, чтобы сам покупатель понимал, что и когда произошло с его бонусами. Еще один поток предусмотрен для бонусов, которые начисляет сам сайт. Мы передаем информацию о начислении в 1с.
Бонусная система успешно работает. Все решения принимаются в 1с, и там же хранится история действий с бонусами, рассчитывается баланс. Информация регулярно синхронизируется с сайтом, что позволяет рассчитываться бонусами при покупке.