Как настроить начисление бонусных баллов «1 балл за каждые 20 рублей» в 1С:Розница 2.2?

Пользователь 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

Запуск программы лояльности — это отличный способ повысить средний чек и удержать покупателей. Однако первая настройка бонусного сервиса в программе 1С:Розница 2.2 часто вызывает массу вопросов у пользователей и начинающих специалистов. В рамках данной статьи мы подробно проанализируем ситуацию, когда необходимо начислять 1 бонусный балл за каждые 20 рублей в чеке, разберем два альтернативных технических решения, выясним причины возможных конфликтов при расчете скидок в рабочем месте кассира (РМК) и рассмотрим особенности регламентных операций.

Анализируем математику начисления: процент или количество?

Перед тем как перейти непосредственно к кликам в интерфейсе 1С, давайте разберем математическую суть задачи. Автор темы на форуме изначально запутался в пропорциях, указав, что при правиле «2 балла за 20 рублей» с 500 рублей покупатель должен получить 25 баллов. Это арифметическая ошибка. Если мы берем скорректированное правило «1 балл за каждые 20 рублей», то при условии, что 1 балл равен 1 рублю скидки, мы имеем дело с классическими 5% от суммы покупки (так как 1 / 20 = 0.05 или 5%).

В зависимости от того, как именно бизнес-логика вашей компании трактует это правило, в 1С можно настроить систему двумя способами:

  1. Процентный метод (рекомендуемый): Система начисляет ровно 5% от суммы чека в виде бонусов. Если чек равен 50 рублям, покупатель получит 2.5 балла (которые округлятся по правилам бонусной программы).
  2. Кратный метод (строго за каждые полные 20 рублей): Система начисляет баллы только за полные закрытые интервалы в 20 рублей. Если чек равен 39 рублям, покупатель получит всего 1 балл. Если чек равен 40 рублям — 2 балла.

Ниже мы подробно разберем по шагам реализацию обоих вариантов конфигурации.

Вариант А: Настройка бонусной программы процентом от суммы чека

Этот метод наиболее прост в реализации, стабилен в расчетах и интуитивно понятен покупателям. Мы настраиваем начисление бонусов как скидку в размере 5%.

Выполним следующие шаги для настройки:

  1. Перейдем в раздел Маркетинг, выберем пункт Бонусные программы лояльности и создадим новую программу. Укажем ее наименование и базовые параметры (например, курс конвертации: 1 балл = 1 рубль).
  2. В этом же разделе перейдем в справочник Скидки (наценки) и создадим новый элемент.
  3. В поле Тип скидки выберем значение Начислить бонусные баллы процентом от суммы.
  4. В поле Размер скидки укажем значение 5.
  5. В поле Бонусная программа выберем ранее созданную нами бонусную программу лояльности.
  6. На вкладке Условия предоставления мы можем оставить список пустым (тогда баллы будут начисляться на любые покупки при предъявлении карты) либо добавить условие по типу карты или минимальной сумме чека.
  7. Не забудем установить статус скидки как Действует и указать период действия в документе Установка скидок номенклатуры.

Вариант Б: Настройка бонусной программы количеством с контролем кратности

Если маркетологи требуют жесткого соблюдения правила «бонусы только за каждые полные 20 рублей», то процентный метод нам не подойдет. Нам нужно использовать начисление фиксированным количеством баллов с включенной проверкой кратности суммы покупки.

Давайте разберем по шагам, как правильно настроить этот более сложный механизм:

  1. Перейдем в справочник Скидки (наценки) и создадим новую скидку.
  2. В поле Тип скидки обязательно выберем Начислить бонусные баллы в количестве.
  3. В поле Размер (количество баллов) установим значение 1. Обратите внимание на типичную ошибку начинающих пользователей: здесь нужно указывать именно единицу начисления (1 балл), а не общую пропорцию!
  4. В поле Бонусная программа привяжем нашу целевую бонусную программу.
  5. Перейдем на вкладку Условия предоставления и создадим новое условие.
  6. В открывшемся окне создания условия выберем тип За разовый объем продаж.
  7. В параметрах условия укажем: Сумма в документе не менее 20 рублей.
  8. Самый важный шаг: установим флаг Кратно выполнению условия. Именно эта галочка заставит систему делить итоговую сумму чека на 20, отбрасывать остаток и умножать полученное целое число на размер скидки (наш 1 балл).
  9. Запишем условие, добавим его в созданную скидку и проведем документ активации скидок.

Для понимания внутренней логики расчетов системы приведем абстрактный алгоритм, по которому платформа выполняет вычисление кратных бонусов:


// Примерный алгоритм расчета баллов с кратностью
СуммаДокумента = Чек.ИтоговаяСумма; // Например, 55 рублей
ПорогСуммы = Условие.МинимальнаяСумма; // 20 рублей
РазмерБонуса = Скидка.Значение; // 1 балл

Если СуммаДокумента >= ПорогСуммы Тогда
    КоличествоКратныхИнтервалов = Цел(СуммаДокумента / ПорогСуммы); // Цел(55 / 20) = 2
    Итого БалловНачислено = КоличествоКратныхИнтервалов * РазмерБонуса; // 2 * 1 = 2 балла
КонецЕсли;

Выясняем причины проблемы «Скидка сразу применяется в чеке»

В процессе обсуждения автор столкнулся с распространенной проблемой: при сканировании карты лояльности в РМК клиенту сразу предоставляется прямая скидка (уменьшается сумма к оплате в рублях), вместо того чтобы просто рассчитать и отложить начисление бонусов на баланс.

Рассмотрим основные причины, почему это происходит, и методы их устранения:

1. Конфликт со сторонними скидками в демобазе
Если вы проводите тестирование механизмов в демонстрационной базе «1С:Розница», помните, что там по умолчанию настроено и включено множество маркетинговых акций. Карта лояльности, которую вы сканируете, может одновременно входить в сегмент получателей автоматической скидки 5% или 10% на определенные группы товаров. Проверьте действующие скидки через отчет Действующие скидки наценки и отключите лишние маркетинговые акции на время тестов.

2. Конфликт с минимальными ценами
В системе 1С технически оплата бонусами проводится для фискального регистратора как скидка на товар. Если в базе настроен справочник Минимальные цены продажи номенклатуры, и вы пытаетесь оплатить покупку бонусами, система заблокирует операцию или выдаст ошибку, если итоговая цена позиции после скидки окажется ниже установленного минимального порога. Учитывайте это при формировании розничных цен.

3. Неверное распределение в дереве скидок
В 1С:Розница все скидки объединяются в группы совместного применения. Если ваша скидка, начисляющая бонусы, попала в группу с типом совместного применения Вытеснение или Максимум вместе с обычными рублевыми скидками, система может некорректно рассчитать приоритеты. Рекомендуется выносить бонусные начисления в отдельные группы совместного применения с типом Сложение.

Особенности настройки отсрочки начисления и регламентных заданий

Автор темы пытался решить проблему мгновенной скидки установкой отсрочки начисления баллов в один день. Это логичное действие для отложенного старта бонусов (например, чтобы защитить магазин от возвратов товара: клиент не сможет сразу же потратить баллы, если решит вернуть покупку на следующий день). Однако отсрочка не влияет на сам факт расчета скидки в момент оформления чека — она лишь блокирует трату этих баллов.

При использовании механизма отсрочки баллов важно знать о работе фоновых процессов платформы:

Эволюция бонусных механизмов в 1С:Розница 3.0 и УНФ 3.0

Если вы планируете переход на актуальные версии программных продуктов фирмы «1С», полезно знать, что механизмы лояльности претерпели существенные архитектурные изменения:

Подводя итог нашему разбору, отметим: настройка бонусного сервиса в «1С:Розница 2.2» требует четкого понимания математической модели маркетинговой акции. Используйте процентное начисление для простых дисконтных схем и кратные условия для более жестких алгоритмов. Внимательно следите за пересечением скидок в вашей базе, и тогда ваша программа лояльности будет работать как часы!

← На главную