Есть идея по этому модулю?
Опишите доработку или сценарий — обсудим вместе с другими клиентами.
Программа лояльности
Менее 50 раз установок
Ставится из 1С-Битрикс Marketplace за пару минут — вкладка «Установка».
Технические данные
Число установок:
Менее 50 раз
Версия:
1.0.11
Адаптивность:
Нет
Поддержка композита:
Нет
Дата публикации:
30.09.2026
Совместимые редакции
- Программа для ЭВМ "1С-Битрикс: Управление сайтом". Лицензия Малый бизнес
- Программа для ЭВМ "1С-Битрикс24". Лицензия Интернет-магазин + CRM (12 мес.)
Описание
Программу лояльности заводят почти все и почти никто не может сказать, окупается ли она. Баллы начисляются, обязательство магазина перед покупателями растёт, а ответа на простой вопрос — заработали мы на этом или просто раздали скидку — не даёт ни один отчёт.Это решение отвечает на него числом.
ОТЧЁТ «ЧТО ДАЛА ПРОГРАММА» — ТО, РАДИ ЧЕГО СТОИТ СТАВИТЬ РЕШЕНИЕ
Две группы за один и тот же период: покупатели с картой и покупатели без неё. Доля тех, кто вернулся за второй покупкой, средний чек, выручка. Разница между группами и есть ответ.
Отдельно — то, о чём обычно забывают. Сколько баллов начислено и ещё не потрачено: это долг магазина, который однажды предъявят к оплате, и знать его размер нужно заранее. И настоящая цена программы: не начисленное, а списанное. Пока баллы лежат на счетах, они не стоят магазину ничего.
БАЛЛЫ ЗА ПОКУПКИ
Процент от заказа, отдельные правила на разделы и товары, повышенный процент для верхних уровней. Между начислением и возможностью платить — выдержка: если товар вернут, баллы за него ещё никуда не ушли.
ОПЛАТА БАЛЛАМИ ИЗ КОРЗИНЫ
Покупатель видит, сколько может списать и сколько это в деньгах. Предел задаётся долей заказа, минимальной суммой заказа и уровнем покупателя. Сколько разрешено — решает сервер и пересчитывает заново при сохранении заказа: поле в форме подделывается за секунду, а речь идёт о деньгах.
Списание уменьшает цену позиций, а не висит отдельной строкой оплаты. Поэтому чек считается от суммы, которую покупатель действительно отдал деньгами, и вопросов к кассе не возникает.
УРОВНИ
Чем больше человек потратил за период, тем выше процент начисления и доля заказа, которую можно закрыть баллами. Уровень пересчитывается сам, о повышении уходит письмо — это единственное письмо программы, которое читают с удовольствием.
СГОРАНИЕ, КОТОРОЕ НЕ ССОРИТ С ПОКУПАТЕЛЕМ
У каждой партии баллов свой срок. Списываются всегда самые старые, а за несколько дней до сгорания уходит письмо: «сгорит столько-то, до такого-то числа». Молча сжечь баллы — надёжный способ потерять покупателя вместе с его деньгами.
ПРИГЛАШЕНИЕ ДРУГА
Реферальная ссылка и карта с QR-кодом в личном кабинете. Баллы обоим — только после того, как приглашённый оплатил заказ, и только если это разные люди: свой собственный код не работает, одна связь на приглашённого, минимальная сумма заказа, совпадение адреса учитывается как признак накрутки.
ЧЕСТНЫЙ СЧЁТ
Баланс не хранится счётчиком, который правят на ходу, — он считается из проводок. Каждая операция это новая строка журнала, а не правка старой, поэтому на вопрос «куда делись мои баллы» всегда есть ответ. Возврат товара возвращает баллы в те же партии, из которых они уходили, с их исходным сроком: иначе возврат продлевал бы жизнь баллов за счёт магазина.
Операции по одному счёту идут по очереди. Это не мелочь: без такой защиты покупатель, оформивший два заказа в двух вкладках одновременно, тратит одни и те же баллы дважды, а вторую скидку оплачивает магазин.
ЧЕГО МОДУЛЬ НЕ ДЕЛАЕТ
Не заменяет скидочные правила корзины — они считают скидку от текущего заказа, а здесь у покупателя есть счёт, который живёт между заказами; работать вместе им ничто не мешает. Не продаёт сертификаты. Не рассылает маркетинговые письма: пишет только о том, что касается счёта, — сгорание, повышение уровня, начисление.
ГРАНИЦЫ ВЕРСИИ 1.0
Один счёт на покупателя, одна валюта начисления. Карты в Apple Wallet и Google Wallet в этой версии нет — есть карта с QR-кодом в личном кабинете. Кассовые терминалы и офлайн-точки не поддерживаются: программа работает в интернет-магазине.
ТРЕБОВАНИЯ
— 1С-Битрикс: Управление сайтом с модулем «Интернет-магазин»;
— PHP 8.2 и новее;
— MySQL 5.7+ / MariaDB 10.3+ либо PostgreSQL (для PostgreSQL — главный модуль 23.900.900 и новее);
— работающие агенты (в идеале — запуск по крону): ими идут сгорание баллов, пересчёт уровней и письма.
УСТАНОВКА
1. Распакуйте архив в /bitrix/modules/ либо установите решение из Marketplace.
2. Админка → Marketplace → Установленные решения → «Программа лояльности» → Установить.
3. Модуль создаст пять таблиц с префиксом ozhogov_loyalty_, скопирует страницы в /bitrix/admin/, компоненты в /bitrix/components/ozhogov/, скрипты в /bitrix/js/ozhogov.loyalty/, заведёт почтовые события и агенты.
НАСТРОЙКИ
Настройки → Настройки продукта → Настройки модулей → «Программа лояльности».
— «Начисление»: процент по умолчанию, округление, выдержка перед тем, как баллами можно платить, срок жизни баллов, автоматическая запись покупателей в программу.
— «Списание»: доля заказа, минимальная сумма заказа и минимальное списание, можно ли платить баллами за доставку и за товары со скидкой.
— «Уровни»: включение уровней и период, за который считается оборот.
— «Приглашения»: включение, сколько баллов кому, минимальная сумма заказа приглашённого, срок жизни ссылки.
— «Письма»: какие из писем программы отправлять.
СПРАВОЧНИКИ
Магазин → Программа лояльности:
— «Уровни»: порог оборота, процент начисления, доля списания.
— «Правила начисления»: процент на раздел, на товар или на всё; правило с более узким условием побеждает.
— «Счета покупателей»: баланс, оборот, уровень, ручная корректировка с обязательным комментарием.
— «Движение баллов»: все проводки с фильтром по операции и заказу.
— «Приглашения»: кто кого привёл и что за это начислено.
— «Что дала программа»: отчёт с выгрузкой в Excel.
СТРАНИЦЫ НА САЙТЕ
Поставьте компоненты из раздела «Ожогов → Программа лояльности»:
— ozhogov:loyalty.account — личный кабинет: карта с QR-кодом, баланс, история операций, ближайшее сгорание, реферальная ссылка.
— ozhogov:loyalty.basket — корзина: сколько можно списать и сколько это в деньгах.
ПРОВЕРКА ДО БОЕВОГО ЗАПУСКА
1. Заведите уровень с порогом 0 и процентом начисления — без уровней баллы начисляться не будут.
2. Оформите заказ на тестового покупателя и отметьте его оплаченным: в «Движении баллов» появится начисление.
3. Дождитесь окончания выдержки (или поставьте её в ноль) и оформите второй заказ: в корзине появится предложение списать баллы.
4. Проверьте отчёт: заказ со списанием должен попасть в строку «выручка заказов со списанием».
ЕСЛИ ЧТО-ТО ИДЁТ НЕ ТАК
— баллы не начисляются: проверьте, что заказ оплачен, что у покупателя есть счёт и что заведён хотя бы один уровень или правило;
— в корзине нет предложения списать: не прошла выдержка, сумма заказа ниже минимальной, баланс меньше минимального списания либо все товары в корзине со скидкой, а списание на такие запрещено настройкой;
— списание отклонено с сообщением о занятом счёте: по этому счёту прямо сейчас идёт другая операция; повторите через несколько секунд — так модуль защищает от двойного списания одних и тех же баллов;
— оформление остановлено из-за ошибки оплаты баллами: повторите оформление; если ошибка сохраняется, обратитесь в поддержку магазина. Заказ не сохраняется с лишним списанием, резерв несохранённого заказа возвращается автоматически;
— баллы не сгорают: проверьте, что агенты запускаются;
— в отчёте пусто: отчёт считается по оплаченным заказам за выбранный период.
УДАЛЕНИЕ
Админка → Marketplace → Установленные решения → Удалить. На шаге удаления есть флажок «Сохранить таблицы модуля» — он отмечен по умолчанию, поэтому счета и проводки остаются.
1. Распакуйте архив в /bitrix/modules/ либо установите решение из Marketplace.
2. Админка → Marketplace → Установленные решения → «Программа лояльности» → Установить.
3. Модуль создаст пять таблиц с префиксом ozhogov_loyalty_, скопирует страницы в /bitrix/admin/, компоненты в /bitrix/components/ozhogov/, скрипты в /bitrix/js/ozhogov.loyalty/, заведёт почтовые события и агенты.
НАСТРОЙКИ
Настройки → Настройки продукта → Настройки модулей → «Программа лояльности».
— «Начисление»: процент по умолчанию, округление, выдержка перед тем, как баллами можно платить, срок жизни баллов, автоматическая запись покупателей в программу.
— «Списание»: доля заказа, минимальная сумма заказа и минимальное списание, можно ли платить баллами за доставку и за товары со скидкой.
— «Уровни»: включение уровней и период, за который считается оборот.
— «Приглашения»: включение, сколько баллов кому, минимальная сумма заказа приглашённого, срок жизни ссылки.
— «Письма»: какие из писем программы отправлять.
СПРАВОЧНИКИ
Магазин → Программа лояльности:
— «Уровни»: порог оборота, процент начисления, доля списания.
— «Правила начисления»: процент на раздел, на товар или на всё; правило с более узким условием побеждает.
— «Счета покупателей»: баланс, оборот, уровень, ручная корректировка с обязательным комментарием.
— «Движение баллов»: все проводки с фильтром по операции и заказу.
— «Приглашения»: кто кого привёл и что за это начислено.
— «Что дала программа»: отчёт с выгрузкой в Excel.
СТРАНИЦЫ НА САЙТЕ
Поставьте компоненты из раздела «Ожогов → Программа лояльности»:
— ozhogov:loyalty.account — личный кабинет: карта с QR-кодом, баланс, история операций, ближайшее сгорание, реферальная ссылка.
— ozhogov:loyalty.basket — корзина: сколько можно списать и сколько это в деньгах.
ПРОВЕРКА ДО БОЕВОГО ЗАПУСКА
1. Заведите уровень с порогом 0 и процентом начисления — без уровней баллы начисляться не будут.
2. Оформите заказ на тестового покупателя и отметьте его оплаченным: в «Движении баллов» появится начисление.
3. Дождитесь окончания выдержки (или поставьте её в ноль) и оформите второй заказ: в корзине появится предложение списать баллы.
4. Проверьте отчёт: заказ со списанием должен попасть в строку «выручка заказов со списанием».
ЕСЛИ ЧТО-ТО ИДЁТ НЕ ТАК
— баллы не начисляются: проверьте, что заказ оплачен, что у покупателя есть счёт и что заведён хотя бы один уровень или правило;
— в корзине нет предложения списать: не прошла выдержка, сумма заказа ниже минимальной, баланс меньше минимального списания либо все товары в корзине со скидкой, а списание на такие запрещено настройкой;
— списание отклонено с сообщением о занятом счёте: по этому счёту прямо сейчас идёт другая операция; повторите через несколько секунд — так модуль защищает от двойного списания одних и тех же баллов;
— оформление остановлено из-за ошибки оплаты баллами: повторите оформление; если ошибка сохраняется, обратитесь в поддержку магазина. Заказ не сохраняется с лишним списанием, резерв несохранённого заказа возвращается автоматически;
— баллы не сгорают: проверьте, что агенты запускаются;
— в отчёте пусто: отчёт считается по оплаченным заказам за выбранный период.
УДАЛЕНИЕ
Админка → Marketplace → Установленные решения → Удалить. На шаге удаления есть флажок «Сохранить таблицы модуля» — он отмечен по умолчанию, поэтому счета и проводки остаются.
Техническая поддержка решения оказывается разработчиком в течение срока действия лицензии.
— Электронная почта: nm.ozhogov@ya.ru
— Время ответа: в рабочие дни, в течение 48 часов с момента обращения.
— Часовой пояс: UTC+3 (Москва).
Чтобы вопрос решился с первого письма, приложите: название и версию решения, редакцию 1С-Битрикс и версию главного модуля, версии PHP и базы данных, адрес страницы, на которой воспроизводится проблема, последовательность действий для её повторения и снимок экрана с сообщением об ошибке. Если ошибка попала в журнал событий сайта, приложите запись из него.
В поддержку можно обращаться с вопросами по установке, настройке и обновлению решения, по совместимости с другими решениями и по ошибкам в его работе. Доработка решения под требования конкретного проекта в поддержку не входит и обсуждается отдельно.
— Электронная почта: nm.ozhogov@ya.ru
— Время ответа: в рабочие дни, в течение 48 часов с момента обращения.
— Часовой пояс: UTC+3 (Москва).
Чтобы вопрос решился с первого письма, приложите: название и версию решения, редакцию 1С-Битрикс и версию главного модуля, версии PHP и базы данных, адрес страницы, на которой воспроизводится проблема, последовательность действий для её повторения и снимок экрана с сообщением об ошибке. Если ошибка попала в журнал событий сайта, приложите запись из него.
В поддержку можно обращаться с вопросами по установке, настройке и обновлению решения, по совместимости с другими решениями и по ошибкам в его работе. Доработка решения под требования конкретного проекта в поддержку не входит и обсуждается отдельно.
Установите этот модуль прямо сейчас!
Для этого укажите адрес сайта:
пример: https://www.site.ru
Подтвердите что сама лицензия у вас куплена
