Правила начисления

Редактировал(а) Татьяна Брыкова 2025/11/21 12:57

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

В рамках каждой маркетинговой кампании (Акции программы лояльности) партнёры устанавливают правила, которые определяют, за что, как и какие поощрения будут предоставлены участникам ПЛ. Поощрения рассматриваются как один из основных процессов по их привлечению и удержанию. Поощрения базируются на различных видах активностей участников: их покупках, участию в Web и E-mail опросах, а также любых других действиях, которые могут быть переданы и зарегистрированы в системе. Поощрением может служить предоставление скидки или начисление бонусных, или статусных баллов, которыми потом можно будет расплатиться за товары и услуги. Получить скидку или бонусные баллы участник ПЛ может за покупку определённого товара, за покупку на определённую сумму, за покупку в определённое время или в определённом магазине, за общую сумму предыдущих покупок по карте и так далее. 

Поощрением в системе называется предоставление покупателю определённых льготных условий покупки товаров в целях:

  • увеличения суммового содержания покупки;
  • увеличения частоты совершения покупок;
  • побуждения совершения покупок в рамках одной или нескольких партнёрских торговых сетей;
  • побуждения совершения покупок товаров определённой группы или бренда;
  • побуждения совершения покупок в определённое время.

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

Все чеки, которые регистрируются в системе, обрабатываются алгоритмами правил начисления, и при срабатывании правила участнику программы лояльности предоставляется поощрение. При совершении покупки оператор POS-терминала с помощью кассовой программы формирует запрос к системе. Вначале этот запрос посылается как мягкий чек. По параметрам мягкого чека система определяет правила начисления, которые могут быть применены к данному чеку и его составу. Если среди возможных к применению есть правила, вид начисления которых равен Скидка по чеку, то производится применение данных правил к чеку и его составу, и полученные значения скидок передаются на POS-терминал в ответе запроса мягкого чека. На основании применённых значений скидок формируется и передаётся в систему запрос фискального чека. Фискальный чек – это документ, который выдаётся покупателю. В системе фиксируется фискальный чек, к которому применяются уже правила с видом начисления. Начисленные бонусные баллы записываются в базу данных, а связанные с картой и контактом поля накоплений по покупкам и балансовые поля обновляются. Если применились правила с видом начисления Счётчик, то обновляются параметры счётчиков.

Ограничения на начисление баллов. Следует иметь в виду, что количество начисленных бонусных или статусных баллов в рамках одного правила ограничено. Если какое-то правило начисление применяется к чеку или его части, то по этому правилу нельзя начислить строго более 99 999 999 баллов для одной записи баллов. Если к чеку применяется несколько правил, то ограничение начисления относится к каждому правилу по отдельности и по отдельности к создаваемым ими записям баллов.

Ограничения на предоставление скидок. Значение скидки по чеку или по позиции не может превосходить 100%. Если к одному чеку применяется несколько правил и установлено арифметическое сложение скидок, то вполне возможно, что результирующая ставка превзойдёт 100%. Тем не менее, в этом случае будет применена именно 100% скидка. Также в системе невозможны отрицательные ставки скидок, когда сумма со скидкой превосходит значение скидки.

Как и кампания, в рамках которой действует правило, правило начисления также ограничено определённым сроком действия. Если дата чека укладывается и в срок действия кампании, и в срок действия правила, то он попадает под условия обработки правила. Однако в силу того, что не только правило имеет определённый период действия, но и кампания, то если чек попадает в срок действия правила, а кампания ещё не началась или уже завершилась, то такой чек не будет обрабатываться правилом. Следует также учесть, что если дата чека совпадает с датой окончания действия правила начисления (поле «Действует до»), то такой чек не попадает под действие правила.

Одно правило начисления может быть связано только с одной кампанией. Кампания, в свою очередь, может содержать в себе множество правил, причём правил разного вида и разных сроков действия.

1708080208529-215.png

Рис. Совокупность различных правил начисления внутри одной кампании

Правила начисления внутри одной кампании, пересекающиеся по времени, могут обрабатываться согласно приоритету, но только в том случае, если такой параметр кампании как «Метод расчёта» указан как «Приоритет». Если правило относится к кампании, у которой иное значение «Метода расчёта», то приоритет самого правила не учитывается при обработке. Правила также могут обрабатываться согласно максимуму: предоставлять участнику программы лояльности максимальное поощрение данного вида по одному из правил в рамках кампании. Помимо этого, возможно также сложение поощрений всех правил, действующих в рамках кампании.

1708080599961-893.png

Рис. Методы расчета поощрений при одновременном применении нескольких правил начисления

Все созданные правила хранятся в интерфейсе в разделе меню Правила программы => Все правила.

1754484325336-529.pngВ данном представлении можно делать фильтрацию правил по полям:

  • Кампания
  • Активно
  • Вид
  • Значение
  • Тип расчета
  • Дата начала
  • Дата окончания
  • Приоритет
  • Тип правила
  • Фильтр по контактам
  • Фильтр по чекам
  • Фильтр по позициям
  • Фильтр по времени
  • Внешний ID
  • Дата изменения

1753872412803-945.png

Также доступны кнопки "Создать", "Сбросить фильтры", "Обновить", "Экспорт" .

При создании правила по кнопке «Создать»  открывается дополнительная форма с выбором типа правила. Выбор подтверждается кнопкой "Продолжить".

1753872502555-401.png

Рис. Создание правила с выбора его типа

Ограничения: При просмотре и редактировании правила изменить его тип нельзя.

Если у пользователя не отображаются правила, необходимо в настройках привилегий для роли установить доступ к сущности «Все правила».

Для заведения различных видов правил начисления поощрений в системе используется несколько вариантов карточек Правил начисления:

1752054763573-123.png

Рис. Виды правил начисления

Общий процесс создания создания Правила начисления

Создание записи правила предусматривает заполнение полей непосредственно на карточке правила начисления. Для перевода правила в активное состояние необходимо после сохранения правила начисления изменить значение поля «Активно». Чтобы запись сделать неактивной, необходимо в этом случае изменить значение поля на «Неактивно».

Карточка правила начисления состоит из секций (параметры, фильтры, отправка сообщения и пр.), в которых логически объединены различные параметры правила. В зависимости от вида правило начисления может содержать разный состав и количество секций. При создании правила активированы только некоторые «базовые» секции, остальные необходимо активировать по необходимости. Активация секции происходит нажатием на  «Добавить секцию “Наименование секции”» внизу правила в режиме редактирования.

1708085614830-162.png

Рис. Добавление секций в карточку правила начисления

Общие сведения

На данном шаге вводится наименование правила, внешний идентификатор, вид начисления, приоритет данного правила и описание.

Для включения автозаполнения внешних идентификаторов для правила начисления используется системная настройка Action.Create.ChargeRule.AutoAssign.ExternalID. Если системная настройка выключена, то поле внешнего идентификатора доступно для редактирования и может быть записано произвольным значением.

Вид начисления - параметр, который определяет, какое именно поощрение будет применено по данному правилу.

В зависимости от типа правил доступны следующие виды начислений:

Базовое правило – Бонус, Скидка, Статусный бонус, Бонус+Статусный бонус

Поощрение за купон – Бонус, Скидка, Статусный бонус, Бонус+Статусный бонус

Правило-комплект – Бонус, Скидка

Персональная акция – Бонус, Скидка

Товарная акция – Бонус, Скидка

Правило-счётчик – Счётчик, Бонус+Счётчик, Статусный бонус+Счётчик, Бонус+Статусный бонус+Счётчик

В правилах начисления Правила-сообщения, Правила-коэффициенты, Правила-наклейки параметр «Вид начисления» не используется.

Бонус – это вид поощрения, выражающийся в начислении на покупку некоторого количества бонусных баллов. Правило такого вида позволяет начислить на предъявленную на POS-терминале карту лояльности какое-то количество бонусных баллов определённого срока действия. Впоследствии активными баллами можно рассчитываться за покупки, которые будут совершены с предъявлением карты лояльности. Сроки действия бонусных баллов определяются параметрами времени жизни баллов.

Скидка по чеку – скидка, предоставляемая при совершении покупки. Может выражаться в процентах, абсолютных значениях, а также в виде фиксированной цены. При получении запроса мягкого чека система анализирует применимость к нему правил предоставления скидки и возвращает полученное значение скидки обратно на POS-терминал. Программное обеспечение терминалов использует данные значения для формирования запроса фискального чека.

Статусный бонус – это вид поощрения, выражающийся в начислении на покупку некоторого количества статусных баллов. Правило такого вида позволяет начислить на предъявленную на POS-терминале карту лояльности какое-то количество статусных баллов определённого срока действия. Впоследствии активными статусными баллами можно рассчитываться за покупки, которые будут совершены с предъявлением карты лояльности. Сроки действия статусных баллов определяются параметрами времени жизни баллов. Статусные баллы в системе ничем не отличаются от бонусных баллов. Это второй вид баллов.

Бонус + статусный бонус – вид поощрения, который позволяет одним правилом начислять и бонусные, и статусные баллы. В этом случае для значений Балл и Параметр приведения используются различные поля. То есть для статусных и бонусных баллов по одному и тому же правилу могут быть использованы разные ставки. Время жизни баллов определяется одними и теми же полями параметров времени жизни баллов.

Счётчик – вид начисления, который использует соответствующее правило для того, чтобы обновить значения в специальной таблице, которая связана с картой, контактом и мастер-счётом. Рассчитанное по правилу значение прибавляется к уже имеющемуся и сохраняется. Данные в таблицах счётчиках пересчитываются и показывают актуальную информацию за периоды: сутки, неделя, месяц, квартал, полугодие, год.

Бонус + Cчётчик – вид поощрения, когда по одному и тому же правилу начисляются бонусные баллы и обновляются значения связанного с правилом счётчика.

Статусный бонус + Счётчик – вид поощрения, когда по одному и тому же правилу начисляются статусные баллы и обновляются значения связанного с правилом счётчика.

Бонус + Статусный бонус + Счётчик – вид поощрения, когда по одному и тому же правилу начисляются бонусные баллы, статусные баллы и обновляются значения связанного с правилом счётчика. В этом случае для значений Балл и Параметр приведения используются различные поля. То есть для статусных и бонусных баллов по одному и тому же правилу могут быть использованы разные ставки. Время жизни баллов определяется одними и теми же полями параметров времени жизни баллов. Значения счётчика зависят от полей, которыми начисляются не статусные баллы.

1710163212635-660.png

Рис. Вид начисления в карточке начисления (в режиме редактирования)

Параметры правила

В секции Параметры правила указывается кампания, в рамках которой действует правило, размер поощрения, тип расчёта, к чему будет применяться правило и срок действия правила (с какой даты и до какой даты). Стоит напомнить, что последним днём действия правила является предыдущий день относительно даты в поле «До».

1708086602655-934.png

Рис. Секции Общие сведение и  Параметры правила в карточке Базового правила начисления

Конкретный состав параметров зависит от вида правила начисления.

Тип расчёта

Параметр, определяющий значение поощрения. Он может быть либо опосредованный другими параметрами – «Процент», либо непосредственное «Значение», либо особый тип – «Фиксированная цена», либо «Значение для каждого элемента».

1710250714762-584.png

Рис. Тип расчёта в карточке начисления (в режиме редактирования)

Этот параметр является управляющим для значения, которое записывается в поле «Бонус предоставляется в размере» или «Скидка предоставляется в размере» в зависимости от того, является правило начисления бонусным или дисконтным.

1710250782622-950.png

Рис. Поле «Бонус предоставляется в размере» в карточке начисления для бонусного правила

Если тип расчёта «Процент» – то правило предоставляет поощрение как процент от основания начисления (записанного в поле «От»), если «Значение» – то фиксированное число, например, скидка в 100 рублей на весь чек. Следует иметь в виду, что если правило имеет фиксированное значение и вдобавок позиционное, то фиксированное значение бонуса или скидки будет предоставляться по каждой позиции, но не по каждому одинаковому товару в чеке.

Тип расчёта «Фиксированная цена» можно использовать только для правил, которые предоставляют скидку на чек и являются позиционными. Если правило чековое и тип расчёта «Фиксированная цена» – в любом случае поощрение по такому правилу будет нулевым (т.к. совершенно нелогично установка фиксированной цены на чек). Фиксированная цена означает, что данное правило относится к товарным (или персональным) акциям и само правило должно иметь тип Товарная акция или Персональная акция. Существует специальные сущности (Значения товарной акции, Значения персональной акции), в которой каждому товару товарной (или персональной) акции соответствует какое-то значение поощрения. При обработке чека, в котором есть товары товарной (или персональной) акции и правило имеет тип расчёта как фиксированную цену, по товару акции будет предоставлена такая скидка, чтобы сумма со скидкой по единице этого товара равнялась значению фиксированной цены (значение указывается в этой специальной таблице). При этом стоит обращать внимание, что если будут применяться какие-то другие дисконтные правила, то скидка по другому правилу будет складываться со скидкой фиксированной цены, но не высчитываться от этой самой фиксированной цены.

В системе есть возможность в размере фиксированного значения поощрения учесть количество товара в позиции. То есть настроить правило таким образом, что если в позиции находится один товар, то давать скидку 10 руб., если два товара – 20 руб., если полтора товара – то 15 руб. Это делается указанием типа расчёта, равного «Значение для каждого элемента».

Бонус/Скидка предоставляется в размере

Непосредственное количественное выражение поощрения с учётом поля «Тип расчёта» указывается в поле "Бонус предоставляется в размере"/"Скидка предоставляется в размере".

1710250959285-980.pngРис. Поле «Бонус предоставляется в размере» в карточке начисления

Например:

  1. Если значение поля «Вид начисления» = Скидка, «Скидка предоставляется в размере» = 10, «Тип расчёта» = Значение, а объект расчёта «На» = Чек, то в рамках данного правила будет предоставлено поощрение в виде скидки в размере 10 рублей (или других денежных единиц, в зависимости от используемой валюты).
  2. Если значение поля «Вид начисления» = Бонус, «Бонус предоставляется в размере» = 5, «Тип расчёта» = Процент, то в рамках данного правила будет предоставлено поощрение в размере 5% от значения какого-либо параметра чека или позиции, определяемого полем «от:».

Объект расчёта

Значение данного параметра указывается в поле «на:» карточки Правила начисления и определяет, к чему будет применено правило.

1722866310116-851.png

Рис. Поле объекта расчёта «на:» в карточке начисления в режиме редактирования

Возможные значения:

  • Чек и/или заказ
  • Позиция чека и/или заказа
  • Только чек
  • Только позиция чека
  • Только заказ
  • Только позиция заказа
  • Запрос начисления баллов
  • Запрос списания баллов
  • Запрос начисления денежных средств
  • Запрос списания денежных средств
  • Запрос гашения купона

Если объект расчёта равно «Только чек», то при обработке правила учитываются только агрегированные параметры чека: Сумма; Сумма со скидкой; Общая сумма скидки; Магазин, в котором совершена покупка; Партнёр, в магазине которого совершена покупка. Характеристики непосредственного содержания чека, такие как: товары по чеку, количество покупаемого товара, количество строк в чеке – не учитываются при данном значении объекта расчёта (если значение поля «Учитывать состав» = Нет). Чековое правило применяется ко всему чеку.

Если объект расчёта равен «Только позиция чека», то правило применяется по каждой прошедшей фильтрацию позиции чека и уже в качестве входящих параметров используются параметры обрабатываемой позиции чека. Следует обратить внимание, если в системе регистрируются только чеки общего содержания, а именно содержащие только общую сумму покупки и не содержащие товарных позиций, то правила, значение объекта расчёта которых равно «Позиция чека» – применяться не будут.

Позицию чека не стоит путать с товаром. Один и тот же товар может содержаться в разных позициях чека. Применение правила к позиции – это именно связь с позицией, а не с товаром этой позиции. Например, если правило начисляет 1 балл на каждую позицию – это означает, что общее количество начисленных баллов будет равно количеству позиций в чеке, но не количеству разных товаров в чеке.

Если объект расчёта равен «Запрос начисления баллов», то правило применяется к специальному запросу начисления баллов (не к запросу мягкого или фискального чека). В запросах начисления баллов могут обрабатываться расширенные атрибуты. При применении правила начисления к запросу начисления баллов игнорируется фильтрация по позициям в правиле. Описание запроса начисления баллов приведено в технической документации системы (API для интеграции с точкой продажи).

Если объект расчёта равен «Запрос списания баллов», то правило применяется к специальному запросу списания баллов (не к запросу мягкого или фискального чека). В запросах списания баллов могут обрабатываться расширенные атрибуты. При применении правила начисления к запросу списания баллов игнорируется фильтрация по позициям в правиле. Описание запроса списания баллов приведено в технической документации системы (API для интеграции с точкой продажи).

Если объект расчёта равен «Запрос начисления денег», то правило применяется к специальному запросу начисления денег (не к запросу мягкого или фискального чека). В запросах начисления денег могут обрабатываться расширенные атрибуты. При применении правила начисления к запросу начисления денег игнорируется фильтрация по позициям в правиле. Описание запроса начисления денег приведено в технической документации системы (API для интеграции с точкой продажи).

Если объект расчёта равен «Запрос списания денег», то правило применяется к специальному запросу списания денег (не к запросу мягкого или фискального чека). В запросах списания денег могут обрабатываться расширенные атрибуты. При применении правила начисления к запросу списания денег игнорируется фильтрация по позициям в правиле. Описание запроса списания денег приведено в технической документации системы (API для интеграции с точкой продажи).

Если объект расчёта равен «Запрос гашения купона», то правило применяется к специальному запросу гашения купона (не к запросу мягкого или фискального чека). При применении правила начисления к запросу гашения купона игнорируется фильтрация по чекам и по позициям в правиле. Описание запроса гашения купона приведено в технической документации системы (API для интеграции с точкой продажи). В текущей версии в случае объекта расчёта «Запрос гашения купона», то правило должно быть обязательно бонусное и при этом тип расчёта может быть только «Значение».

Настройка привилегий для правил начисления в оффлайн и в E-comm

Система позволяет разграничивать настройку правил начисления на чеки в оффлайн и на заказы в E-comm с помощью управления привилегиями в ролевой модели. Также есть возможность  настраивать механики «омни», которые будут действовать как на чеки в оффлайн, так и на заказы в E-comm.

В регулировании настройки правил участвуют три независящие друг от друга привилегии, которые располагаются в подразделе «Другие привилегии» раздела Loyalty  (по умолчанию выключены):

  • «Разрешить настройку правил на чеки»
  • «Разрешить настройку правил на заказы»
  • «Разрешить настройку правил на чеки и/или заказы»

Пользователь может включить как 1 новую привилегию, так и все 3 одновременно. Также существует возможность выключить все три привилегии одновременно. 

Если включены все три привилегии, то для правил начисления «Базовое правило», «Поощрение за купон», «Правило-комплект», «Правило-счетчик», «Правило-сообщение» , «Правило-коэффициент», «Правило-наклейка», "Товарная акция", "Персональная акция" и выпуска купонов «Моментальный на чек» доступны для выбора  все объекты расчета.

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

  • Только чек 
  • Только позиция чека 

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

  • Только заказ 
  • Только позиция заказа 

Если в роли безопасности выключена привилегия «Разрешить настройку правил на чеки и/или заказы», то пользователю недоступны для выбора значения:

  • Чек и/или заказ 
  • Позиция чека и/или заказа 

Если в роли безопасности выключены все три новые привилегии «Разрешить настройку правил на чеки» и «Разрешить настройку правил на заказы» и «Разрешить настройку правил на чеки и/или заказы», то пользователю недоступны для выбора значения (не распространяется на Товарную и Персональную акцию, какая-то из привилегий должна быть включена):

  • Чек и/или заказ 
  • Позиция чека и/или заказа 
  • Только чек
  • Только позиция чека 
  • Только заказ 
  • Только позиция заказа 

Пользователь может редактировать правила с любым доступным значением объекта расчета при условии, что у пользователя в роли ещё включена стандартная привилегия на редактирование сущности в разделе «Привилегии для роли» вкладки Loyalty. В противном случае кнопка "Редактировать»  недоступна для нажатия.

Основание для расчёта величины поощрения 

Основание для расчёта величины поощрения указывается в параметре «от:».

1728377205194-886.png

Рис. Поле основания для расчёта величины поощрения «от:» в карточке начисления (режим редактирования)

Основанием расчёта поощрения могут быть:

  1. Сумма. Данное значение означает, что величина скидки или количество бонусных баллов будет зависеть от полной суммы чека или суммы позиции чека (в зависимости от объекта расчёта).
  2. Количество товара. В случае применения правила ко всему чеку (Объект расчёта = Чек) этот параметр строго равен единице. В случае позиционного правила (Объект расчёта = Позиция чека) основанием расчёта будет количество покупаемого по позиции чека конкретного товара (в единицах измерения POS-терминала).
  3. Сумма покупок по карте (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок, накопленная по прочитанной POS-терминалом карте, с учётом суммы текущей покупки.
  4. Сумма покупок по карте со скидкой (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со всеми ранее накопленными скидками, накопленная по прочитанной POS-терминалом карте, с учётом суммы текущей покупки.
  5. Количество покупок по карте. Основанием является общее количество всех предыдущих покупок с учётом совершаемой в момент обработки чека.
  6. Сумма со скидкой. Если по правилу начисляются бонусные баллы, то именно этот параметр фискального чека будет взят как основание расчёта.
  7. Скидка по карте. Основанием является текущее значение скидки, которое указано в карте программы лояльности.
  8. Сумма покупок по контакту (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок по всем картам контакта с учётом суммы текущей покупки.
  9. Сумма покупок по контакту со скидкой (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со скидкой по всем картам контакта с учётом суммы текущей покупки.
  10. Активный баланс контакта. В качестве основания расчёта берётся активный бонусный баланс контакта.
  11. Активный статусный баланс контакта. В качестве основания расчёта берётся активный статусный баланс контакта.
  12. Стоимость к оплате. В качестве основания расчета берется сумма оплаты денежными средствами (т.е. за вычетом скидки и списания баллами).
  13. Сумма покупок без скидок по контакту (без учёта текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок по всем картам контакта. При этом сумма обрабатываемого чека не учитывается.
  14. Сумма покупок со скидкой по контакту (без учёта текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со скидкой по всем картам контакта. При этом сумма обрабатываемого чека не учитывается.
  15. Базовая цена. Действует только для дисконтного позиционного процентного правила. Данное значение означает, что величина скидки рассчитывается от значения базовой цены товара в позиции для соответствующего магазина из чека. Необходимо учитывать, что если в позиции чека передана цена, меньшая полученного от расчета скидки от базовой цены, то правило к позиции не применяется. Если у товара в позиции отсутствует значение базовой цены для соответствующего магазина из чека, то ставка скидки рассчитывается от значения цены, переданной в позиции (т.е. от той цены, которую передала касса). Базовые цены загружаются по интеграции в базу процессинга в разрезе магазинов, и их можно просмотреть в интерфейсе в карточке товара. Пример: базовая цена товара 100 руб.; настроено дисконтное правило на скидку 50% от базовой цены; касса передаёт в чеке цену 80 руб.; по итогу обработки чека стоимость (сумма со скидкой) за одну единицу данного товара составит 50 руб. (скидка же 30 руб. за одну единицу товара). В базе ведётся логирование изменения базовых цен (в логе изменения базовых цен хранятся записи с датой изменения за последние 14 дней).

Базовые цены загружаются по интеграции в базу процессинга в разрезе магазинов, и их можно просмотреть в карточке товара. В столбцы «Магазин» и «Значение» подтягиваются данные, переданные в систему по интеграции.

1710251549772-720.png

Рис. Карточка товара с табом «Базовая цена»

16. Расширенный атрибутприменение поощрения к значению чекового атрибута – для чекового правила и к позиционному атрибуту – если правило позиционное.  Правило с этим основанием может быть только процентным,  начисляющим  бонус или статусный бонус. 

17. Результат правила - значение предусмотрено для учета в качестве основания расчета поощрения результата начисления другого правила при обработке одного и того же события

18. Сумма с результатом - значение, позволяющие учитывать в правиле начисления сумму отобранных в правиле-счетчике позиций чека.

Параметр приведения

Поле, значение которого распространяется только на рассчитываемые проценты (Тип расчета = Процент).

1710253830419-254.png

Рис. Параметр привидения в карточке начисления

Если скидки или бонусы указаны как фиксированные значения, параметр приведения не применяется. Если же поощрение рассчитывается как процент, то основание расчёта (параметр, указанный в поле «От чего считать» с учетом объекта расчета) делится на модуль величины, указанной в параметре приведения.

При этом если величина параметра приведения положительная (без знака минус), то отбрасываются все десятичные знаки полученного числа, т.е. берется целая часть от деления. Для получения уже окончательного значения скидки или бонуса к этому полученному значению применяется ставка бонусного балла. Например, мы хотим начислять 1 балл за каждые 200 рублей суммы чека. Предположим, что сумма чека составляет 1000 рублей. Количество 200-ти рублёвых частей суммы чека равно 1000/200 = 5. Количество начисленных бонусных баллов будет равно в этом случае: 1000/200*100% = 5. То есть на чек в 1000 рублей, при значении параметра приведения 200, итоговое количество начисленных баллов будет 5. В этом примере необходимо установить в поле «Параметр приведения» значение 200, в поле «Бонусный балл» – значение 100, в поле «Вид начисления» – Бонус, «Тип расчета» – Процент, объект расчёта «на:» – Чек, «От» – Сумма.

Если же значение величины параметра приведения отрицательное, то при рассмотренном выше делении основания расчёта на модуль параметра приведения берётся остаток от деления. Это может использоваться, когда требуется предоставлять поощрение при кратности основания расчёта какому-либо значению. Например, отрицательный параметр приведения позволяет организовать применимость правила к каждой 5-й покупке или к каждой 7-й единице товара в позиции чека. Однако, такие приведенные примеры механик возможно реализовать только с помощью суммовых пороговых уровней (см. далее пример реализации применимости правила к каждой 5-й покупке в пункте Пороги уровней).

Статусный бонус

Правило начисления одновременно может начислять оба вида баллов и дополнительно обновлять значения счётчиков. Если правило делает всё это одновременно, то значения счётчиков всегда обновляются исходя из значения поля «Бонусный балл». А вот бонусные и статусные баллы, начисляемые по одному правилу, могут иметь разные размеры ставки. В этом случае как раз поле «Статусный бонус» задаёт размер ставки статусных баллов, начисляемых по такому комплексному правилу. Если правило не комплексное, а начисляет только статусные баллы, то размер ставки регулируется полем «Бонусный балл».

1710253977731-203.png

Рис. Поле «Статусный бонус» при выборе начисления «Бонус+Статусный бонус» в карточке начисления

1710254036156-118.png

Рис. При виде начисления «Статусный бонус» размер ставки статусного бонуса указывается в поле «Бонус предоставляется в размере»

Параметр приведения (статусный бонус)

Аналогично, для комплексных правил не только ставка начисления статусных баллов регламентируется специальным полем (Статусный бонус), но и параметр приведения для статусных баллов можно задать отличным от бонусных баллов. Также если правило не комплексное, то для статусных баллов используется поле «Параметр приведения».

1710254192644-377.png

Рис. Поле «Параметр приведения (статусный бонус)» при выборе начисления «Бонус+Статусный бонус» в карточке начисления

1710254247742-933.png

Рис. При виде начисления «Статусный бонус» параметр приведения статусного бонуса указывается в поле «Параметр приведения»

Учитывать состав

В чековом правиле начисления (параметр «На» = Чек) можно предоставлять скидку на несколько позиций таким образом, чтобы сумма скидок по этим позициям равнялась указываемой в правиле сумме фиксированной скидки.

Если в поле «Учитывать состав» указано значение «Да» и к чековому правилу относится включаемый фильтр по позициям, то поощрение по правилу будет применяться только на те позиции, которые прошли фильтрацию по позиционным фильтрам.

1710254411131-880.png

Рис. Параметр «Учитывать состав» в карточке начисления при значениях Вид начисления=Скидка и на: = Чек. При этом правило применяется только к позициям, соответствующим фильтру по позициям

В случае правила с процентной скидкой учитывается позиционный состав чека: правило применяется только к позициям, которые прошли фильтрацию по позиционным фильтрам правила, и скидка распределяется только на такие позиции. В том числе для случая, когда все позиции чека проходят фильтрацию.

В случае правила с фиксированным значением скидки, правило применяется только к тем позициям, которые прошли условия позиционной фильтрации правила, и при этом фиксированная скидка правила распределяется по позициям пропорционально сумме позиции и обратно пропорционально сумме всех позиций, прошедших условия фильтрация правила.

Бонусное чековое правило с учетом состава позволяет начислять баллы согласно общим параметрам позиций, прошедшим условия фильтрации в правиле. Пример 1 (для чеков): начислять 1 балл за каждые 500 рублей стоимости чека без учёта табачных изделий и алкогольной продукции. Пример 2 (для заказов): 50% от покупки (или дополнительно 1000 баллов) вернется баллами при заказе и последующей оплате определенных товаров в заказе (или всего заказа) свыше 5000 руб. В случае если по заказу сумма оплаченных товаров меньше 5000 руб., то тогда начисление баллов по такому правилу производиться не будет.

Для того, чтобы можно было посмотреть, как баллы по правилу начисления распределяются в составе чека, в секции «Расширенные параметры» в «Параметрах правила» при активации поля «Учитывать состав», настраивается поле «Распределять по позициям».

Применимо для правил начисления: Базовое правило, Поощрение за купон, Правила-комплекты.

1710254657893-517.png

Рис. Поле «Распределять по позициям» в параметрах базового правила

ПолеОписаниеОбязательное полеРедактирование
Распределять по позициям

Допустимые значения:

  • Нет
  • Да

Отображается, если Вид начисления:

  • Бонус,
  • Статусный бонус,
  • Бонус + Статусный бонус,

И активировано поле «Учитывать состав».

Значение по умолчанию: Нет

НетПоле доступно для редактирования, заполняется вручную

Условия сохранения правила начисления:

Для дисконтных правил начисления (вид начисления правила=скидка): Базовое правило, Поощрение за купон, Правила-комплекты, если поле «Учитывать состав» в значение «Да», то сохранение правила возможно только в случае, если значение поля «Тип расчёта» установлено как «Значение» (в остальных случаях сохранение записи невозможно).

Формировать МРЦ

Параметр применяется для корректной работы акций со скидкой на товары, в тех случаях, когда на эти товары должен стоять запрет списания баллов. Например, в рамках акции по купону на товары из списка предоставляется фиксированная цена 890 руб. с лимитом в размере 1 штука в рамках чека. При регистрации такого чека правило применяется на 1 позицию, формируется МРЦ = 890, к списанию доступно 0 баллов.

Параметр присутствует на формах дисконтных правил начисления: Базового, Поощрения за купон, Правила-комплекты, Персональные и Товарные акции, в секции «Параметры правила» в подразделе «Расширенные параметры».

ПолеОписаниеОбязательное полеРедактирование
Формировать МРЦ

Параметр задает необходимость расчёта значения МРЦ для позиции чека

Допустимые значения:

  • Нет
  • Да

Отображается, если Вид начисления:

  • Скидка

и На:

  • Позиция чека

Значение по умолчанию: Нет

НетПоле доступно для редактирования, заполняется вручную

1710254815022-843.png

Рис. Параметр дисконтного позиционного правила «Формировать МРЦ».

МРЦ рассчитывается на позицию чека. Если к позиции чека применилось правило, в котором параметр «Формировать МРЦ» = Да, то после того, как по этой позиции получен результат скидок, процессинг делит полученную сумму со скидкой по позиции на количество товара в позиции, и при обработке списаний баллов полученная величина считается значением МРЦ.

Если по этой позиции вместе с запросом чека уже передана МРЦ, или МРЦ взята из записи товара, то для расчёта списаний берется рассчитанная величина МРЦ.

Если к позиции не применилось ни одного правила с параметром «Формировать МРЦ» = Да, то по этой позиции используется то значение МРЦ, которое указано в записи товара или передано вместе с запросом чека в этой позиции.

Дополнительно, если настройка Loyalty.Processing.SoftAnswer.MCP.TurnOn включена, в ответ мягкого чека по той позиции, к которой применилось хотя бы одно правило с параметром «Формировать МРЦ» = Да, формируется тег <Mcp></Mcp>, в который подставляется рассчитанное десятичное значение МРЦ. Тег формируется, даже если изначально у такой позиции не было тега с МРЦ.

Если к позиции не применилось ни одного такого правила, но тег с МРЦ был в позиции чека, то в ответе формируется тег с тем же самым значением, что был на входе. Если в такой позиции не было на входе тега с МРЦ – то в ответе МРЦ не формируется.

Партнерские настройки, определяющие применимость МРЦ:

Loyalty.Processing.SoftAnswer.MCP.TurnOn включает алгоритм возврата в ответе мягкого чека тега с МРЦ: <Mcp></Mcp>. При значениях 1, y или Y в ответе мягкого чека в позициях возвращается значение МРЦ, при прочих значениях не возвращается. Значение по умолчанию ПУСТО.

Loyalty.Processing.WriteOff.MinCalcPriceArticle -  настройка "Включение минимальной расчётной цены". В случае если значение данной настройки равно 1, включена функциональность, позволяющая ограничить минимальную цену товара при оплате баллами. Указанную стоимость единицы продукции необходимо оплачивать каким-то иным образом (наличными, банковской картой и т.д.), но нельзя оплатить бонусными баллами. Данная настройка включает также учёт минимальной расчётной цены для скидок.

Loyalty.Processing.CalcMethod.ExternalMinCalcPriceArticle - настройка, определяющая применимость МРЦ. Значение 1 – применяется МРЦ из карточки товара. Значение 2 – применяется МРЦ из запроса чека.  Значение 3 – МРЦ применяется как максимальное значение из карточки товара и того, что передано в запросе чека. Значение по умолчанию 1.

При обработке чека с переданным тэгом «Mcp» в позиции данного чека, если включена настройка Loyalty.Processing.WriteOff.MinCalcPriceArticle (значение 1), а также настройка Loyalty.Processing.CalcMethod.ExternalMinCalcPriceArticle имеет значение 2, тогда для позиции применяется значение МРЦ из переданного тэга «Mcp».

В случае если включена настройка Loyalty.Processing.WriteOff.MinCalcPriceArticle (значение 1), и настройка Loyalty.Processing.CalcMethod.ExternalMinCalcPriceArticle имеет значение 1, то используется значение МРЦ из карточки товара.

При регистрации запросов чеков если настройка (вначале как атрибут партнёра запроса, при отсутствии – атрибута системная настройка) Loyalty.Processing.CalcMethod.ExternalMinCalcPriceArticle имеет значение 3, то в качестве МРЦ необходимо взять значение: максимум из записи товара и переданного для этого товара в позиции чека. Если товара в системе не заведено или он не может быть определён – считать, что в записи товара указано 0, если же в позиции отсутствует <Mcp>, считать, что переданное значение МРЦ равно 0.

Коэффициенты для правила

Секция Коэффициенты для правила содержит следующие поля:

ПолеОписаниеОбязательное полеРедактирование
От типов оплат

Признак, определяющий, будет ли учитываться тип оплаты чека при расчете поощрения (бонуса или скидки). Возможные значения:

  • Нет
  • Да

Значение по умолчанию Нет.

ДаПоле доступно для редактирования, заполняется вручную
От типов карт

Признак, определяющий, будет ли учитываться соответствующий повышающий коэффициент из типа карты участника программы лояльности при расчете поощрения (бонуса или скидки). Значение коэффициента берётся из карточки типа карты, который в момент совершения операции связан с карточкой карты, предъявленной на POS-терминале.

Возможные значения:

  • Нет
  • Да

Значение по умолчанию Нет.

ДаПоле доступно для редактирования, заполняется вручную
От уровней участия

Признак, определяющий, будет ли учитываться соответствующий повышающий коэффициент из уровня участника программы лояльности при расчете поощрения (бонуса или скидки). Значение коэффициента берётся из карточки уровня, который в момент совершения операции связан с карточкой контакта, карта которого предъявлена на POS-терминал.

Возможные значения:

  • Нет
  • Да

Значение по умолчанию = Нет.

ДаПоле доступно для редактирования, заполняется вручную

Поле «От типов оплат»:

Параметр, который определяет количество бонусов или расчётное значение счётчика в зависимости от того, каким образом оплачивается данный чек. Например, можно указать, что если часть суммы чека оплачивается ранее накопленными баллами, то при применении данного правила на эту часть не будут начисляться новые бонусные баллы. Или же, например, настроить так, что если какая-то часть оплачивается кредитной картой, то на эту часть начислить баллов меньше, чем на ту часть, которая оплачивается наличными деньгами. Для этого необходимо, чтобы касса передавала в запросе чека соответствующие оплаты по этому чеку.

Например, стоит задача начислять покупателю 10% бонусных баллов от суммы чека. Но при этом учитывать, что чек может оплачиваться наличными, и банковской картой. На часть, оплачиваемую наличными, начислять все 100% баллов (то есть 10% от суммы чека); на часть, оплачиваемую картой, начислять в два раза меньше. В этом случае, необходимо в правиле в поле «От типов оплат» установить значение «Да», а для соответствующих типов оплат (платежей) в системе поставить значения 100 и 50 в поле «Процент».

Необходимо заполнить на форме правила начисления параметры следующим образом:

1752244452259-313.png1752244485456-412.png

Рис. Правило начисления бонусов в зависимости от типа оплаты

Дополнительно для реализации такой механики необходимо иметь в системе соответствующие типы оплат (типы платежей), которые должны передаваться в запросе чека от кассового ПО:

1752245037991-389.png

Рис. Справочник типов платежей в системе

Тип платежа добавляется к правилу начисления через связанные представления.

1752245192117-414.png

Рис. Карточка типа платежа с указанием процента для наличной оплаты

1752245459013-555.png

Рис. Карточка типа платежа с указанием процента для безналичной оплаты

Поле «От типов карт»:

1710415016335-732.png

Рис. Повышающий коэффициент «От типов карт» в Карточке правила начисления

Параметр, который определяет необходимо ли повысить в зависимости от типа карты значение рассчитанной по правилу скидки, или значение бонусного балла, или значения счётчика. После того как карта участника лояльности авторизована на POS-терминале, по её типу определяется: на какой коэффициент будет повышено рассчитанное значение. Если по правилу предоставляется скидка, то из карточки типа карты берётся «Повышающий коэффициент для скидок»; если бонус или значение счётчика, то «Повышающий коэффициент для бонусов».

1710415067343-296.png

Рис. Справочник «Типы карт» в системе

1710415099375-679.png

Рис. Значения повышающего коэффициента для скидок и для бонусов в Карточке «Тип карты»

Поле «От уровней участия»:

1710415158668-145.png

Рис. Повышающий коэффициент «От типов оплат» в Карточке правила начисления

Параметр, который определяет необходимо ли повысить в зависимости от уровня участия клиента значение рассчитанной по правилу скидки, или значение бонусного балла, или значения счётчика. После того как карта участника лояльности авторизована на POS-терминале, по её связи в системе с карточкой контакта и связанного с контактом в текущее время уровнем определяется: на какой коэффициент будет повышено рассчитанное значение. Если по правилу предоставляется скидка, то из карточки уровня участника берётся «Повышающий коэффициент для скидок»; если бонус или значение счётчика, то «Повышающий коэффициент для бонусов».

1710415229042-798.png

Рис. Справочник уровней участника ПЛ в системе

1710415303226-591.png

Рис. Значения повышающего коэффициента для скидок и для бонусов в Карточке «Уровень участника»

Зависимости правил

В случае одновременного срабатывания нескольких правил начисления, часто в рамках большинства программ лояльности возникает необходимость ограничения применения одних правил другими. Для этого в системе реализован функционал исключающих и исключаемых правил начисления.

Работает данный функционал следующим образом:

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

1710416112213-265.png

Рис. Настройка взаимоисключений в карточке правила начисления

Важно: Кампания считается сработавшей в том случае, если применилось хотя бы одно правило начисления в рамках этой кампании.

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

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

Недопустимо циклическое исключение вида: правило1 исключает правило2, правило2 исключает правило3, правило3 исключает правило1.

Дисконтное правило может исключать правило списания.

Правило-сообщение не исключается никаким другим видом правил.

Позиционное правило не может исключить чековое правило, чековое правило не может исключить позиционное.

Недопустимо циклическое исключение вида: правило1 исключает правило2, правило2 исключает правило3, правило3 исключает правило1.

Следует иметь в виду, что исключение происходит между правилами одного вида начисления. То есть бонусное правило может исключить применимость бонусного правила, правило-счётчик – применимость другого правила-счётчик, у дисконтного правила есть варианты исключения бонусного правила, которые будут рассмотрены ниже.

Варианты исключения бонусных начислений на товары со скидкой

В системе предусмотрены варианты, когда бонусное правило может быть исключено дисконтным правилом одним из представленных способов, в зависимости от решаемой бизнесом задачи:

  1. С помощью партнерской настройки Loyalty.Processing.ExclusionAllRules.TurnOn. При включенной настройке, если к чеку или позиции чека применяется дисконтное правило с исключенным бонусным правилом, то бонусы не будут начислены по всему чеку, независимо от того, применилась на конкретную позицию скидка или нет.

Если необходимо сделать так, чтобы начисление бонусов применилось к позиции чека, на которую не применилась скидка, то в этом случае следует воспользоваться другими вариантами исключения:

      2. В бонусном правиле настраивается исключаемый фильтр по позициям с заполнением в секции «Диапазоны позиции чека» полей «Скидка от = 0.01", а "Скидка до = 100":

1748258708018-709.png

Рис. Исключаемый фильтр по позициям чеков для дисконтного правила

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

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

         3. Еще один способ настройки ограничивает начисления баллов, если к позиции применилось конкретное дисконтное правило через обмен атрибутами с кассой.

В бонусном правиле также настраивается исключаемый фильтр по позициям. В секции «Расширенные атрибуты позиции чека» добавляется определение РА с числовым типом атрибута и с ключом РА, который передает касса, если это правило сработает. Ключи могут отличаться на проектах, так как формирование этого ключа происходит из префикса системной настройки Loyalty.Processing.Soft.DiscountRuleRuturnAsAttribute.Prefix и внешнего идентификатора правила. Подробнее о  формировании значений расширенных атрибутов написано здесь В диапазонах фильтрации РА  в числовых параметрах указывается  значение скидки - от 0.01 до 100.

1748855999673-607.pngРис. Пример заполнения раздела с фильтрацией по конкретному расширенному атрибуту позиции.

1748510544974-719.png

Рис. Определение РА позиции чека с числовым значением

Таким образом отфильтровываются все позиции с какой-либо скидкой по конкретному правилу.

Ограничения: На проекте должна быть включена функциональность возврата РА по дисконтным правилам с помощью партнерской настройки  Loyalty.Processing.Soft.DiscountRuleRuturnAsAttribute.TurnOn. Но не должна быть включена настройка, по которой в РА возвращается json Loyalty.Processing.Answer.BonusDetailAsAttribute.ReturnJson. Ответы мягкого и фискального чека по количеству начисляемых бонусов будут отличаться как описано выше.

Бонусное правило начисления

Бонусное правило начисления  – это правило, регулирующее начисление участнику бонусных баллов и/или статусных баллов. Бонусными и статусными баллами впоследствии можно будет оплачивать покупки или использовать количество начисленных баллов как определённые уровни лояльности клиента к компании. Начисление баллов производится по фискальному чеку, однако функциональность самого правила распространяется и на мягкий чек, поэтому оператор POS-терминала может при обработке мягкого чека непосредственно увидеть на экране терминала пришедший из системы ответ, в котором будет отображено: сколько именно баллов будет начислено на карту лояльности при совершении конкретной покупки. Следует иметь в виду, что не всегда начисленные по мягкому чеку и начисленные по фискальному чеку баллы совпадают, например, в случае, когда основанием начисления является сумма со скидкой, при этом оплата баллами входит в скидку – в этом случае начисления по мягкому и фискальному чеку не совпадают. Тем не менее, начисленные баллы, используемые в дальнейшем для оплаты покупок или для фильтрации – это именно баллы, начисленные по фискальным чекам.

При обработке одного и того же чека могут сработать несколько правил начисления, в результате этого на карту лояльности может быть начислено несколько порций бонусных и статусных баллов в рамках каждого сработавшего правила. Начисленные баллы в рамках конкретной порции характеризуются сроками действия. Оплачивать покупки можно только теми баллами, которые являются действующими на момент совершения покупки: это означает, что срок начала действия таких баллов меньше даты совершения покупки, а срок окончания действия таких баллов больше времени совершения покупки. Сумма всех действующих бонусных баллов, доступных для оплаты покупок, составляет активный баланс бонусных баллов карты. Все бонусные баллы, которые начислены на карту, в том числе и те, которые ещё не начали своё действие, за вычетом всех списанных баллов, составляют баланс карты. Аналогичные значения предусмотрены также и для статусных баллов.

Стоит отметить, что система позволяет автоматически списывать баллы, которые уже завершили сроки своего действия. Эту возможность лучше использовать всегда, хотя она и необязательна, потому что в этом случае активный баланс баллов будет отличаться от баланса как раз на сумму тех баллов, которые ещё не начали своего действия. Сроки действия начисляемых баллов устанавливаются настройками самого правила начисления.

1710416546244-724.png

Рис. Настройка сроков действия баллов в карточке правила начисления

Существует несколько возможностей для настройки срока начала действия баллов.

  • Во-первых, можно указать, что баллы действуют с момента начисления, то есть с того момента времени, которым выписан чек. Если чек выписан в каком-то другом часовом поясе, отличным от временного пояса, в котором установлены серверы системы, то баллы будут действовать с момента именно поясного времени, а не времени, которым зарегистрирован чек на сервере. Соответственно, и доступны для списания баллы будут согласно поясному времени.

1710416608462-520.png

Рис. Настройка срока действия баллов с даты начисления в карточке правила начисления

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

1710416639512-926.png

Рис. Настройка срока действия баллов с даты начисления в карточке правила начисления

  • В-третьих, датой и временем начала можно указать непосредственно фиксированную дату и время. В этом случае дата и время прописываются в правиле. Использовать фиксированные даты начала действия баллов необходимо очень осторожно. Если создать такое правило, например, с фиксированным окончанием действия, то после того, как эта фиксированная дата случится, то по правилу уже не будут начисляться баллы.

1710416669965-118.png

Рис. Настройка срока действия баллов с фиксированной датой в карточке правила начисления

В результате применения бонусных правил с картой лояльности, в общем случае, связывается несколько записей зарегистрированных в системе бонусных баллов. Каждая такая запись представляет порцию, действующую какой-то промежуток времени. Например, если правило начисления начисляет 10% на сумму позиции чека, то порций баллов будет столько же, сколько позиций в чеке. Если 10% на сумму чека в целом, то будет ровно одна порция баллов.

Сколько именно баллов будет начислено на карту определяется параметрами бонусного правила. Если правило обрабатывает чек (Объект расчёта = Чек), то по правилу будет начислена одна порция бонусных баллов, если правило обрабатывает Позицию чека (Объект расчёта = Позиция чека), то по правилу будет начислено столько порций бонусных баллов, сколько позиций чека попало под обработку данным правилом.

Следует отметить, что бонусные правила будут применяться не только к чекам, которые зарегистрированы на интегрированных c системой POS-терминалах, но также и к тем чекам, которые созданы через функциональность ручных чеков.

Чтобы по правилу начислялись бонусные баллы, правило должно иметь Вид начисления, равный Бонус. Чтобы правило начисляло статусные баллы, Вид начисления должен быть Статусный бонус.

Правила также могут быть комплексными: по этим правилам можно одновременно начислять и статусные, и бонусные баллы. Для этого есть вид начисления в правиле: Бонус + статусный бонус.

1710416916384-498.png

Рис. Настройка Вида начисления в карточке правила начисления

В системе есть возможность установить глобальное округление для бонусных правил, которое позволяет отбрасывать дробную часть. Для этого предназначена партнерская/системная настройка Loyalty.Processing.Bonus.Round, задающая глобальный параметр приведения (партнерская настройка указывается через расширенный атрибут партнера). После расчёта очередной порции начисления по бонусному правилу, с учётом оплат, коэффициентов от типов или уровней, рассчитанное значение порции баллов делится на данный параметр приведения, дробная часть отбрасывается, и полученное значение начисляется по карте операции.

Дисконтное правило начисления

По дисконтным правилам не начисляются бонусные баллы. Данные правила предоставляют скидку при совершении покупок. В этом случае необходимо иметь в виду, что начисление баллов может быть произведено и существенно позже покупки, например, в офлайн режиме. Предоставление скидки может происходить только в онлайн режиме, потому что вначале необходимо отправить запрос в систему о том, какая именно скидка должна быть предоставлена по данному конкретному чеку. Система же должна предоставить ответ на данный запрос, и только после этого скидка должна быть применена к данной покупке.

1710417996654-560.png

Рис. Вид начисления Скидка в карточке правила начисления

Скидка может быть предоставлена в абсолютных значениях платёжных единиц, например, 100 рублей на каждую покупку, либо в процентах к определённому основанию, например, 10 процентов от общей суммы чека.

1710418041691-857.png

Рис. Настройка скидки в процентах в карточке правила начисления

1710418077669-924.png

Рис. Настройка скидки в абсолютных платёжных единицах (рублях) в карточке правила начисления

Следует различать внешнюю скидку и ту скидку, которая получается при обработке чека правилами, которые заведены в системе. Внешняя скидка не зависит от настроенных правил, она поступает в систему как значение, указанное в запросе мягкого чека с конкретного POS-терминала. В качестве внешней скидки может быть значение скидки, предоставляемое в конкретном магазине по каким-то особым причинам, актуальным только в данном магазине для данного клиента магазина. Например, для какой-то конкретной товарной единицы предоставили скидку по причине бракованной упаковки данного товара.

Запрос POS-терминала к системе, для того чтобы посчитать и применить скидки, которые настроены в системе – и есть мягкий чек.

Дисконтные правила (правила с Видом начисления, равным Скидка по чеку) применяются только к мягкому чеку. Мягкий чек, возможно с какой-то внешней скидкой, поступает в систему. Если по нему срабатывает одно или несколько правил-скидок по чеку, то в ответе мягкого чека на POS-терминал возвращается актуальная на момент поясного времени чека информация по значениям скидок, значениям сумм со скидками. На основании данной информации POS-терминал должен сформировать и передать в систему фискальный чек, в котором уже указаны действительные значения суммовых параметров чека. Данные параметры учитывают уже и внешние скидки, и те скидки, которые получились в результате применения дисконтных правил системы в мягком чеке.

Скидка-значение – это некоторая заранее определённая сумма, которая вычитается из суммы чека, если дисконтное правило чековое, или из суммы позиции, если правило позиционное. В процессе применения скидка-значение пересчитывается в процентную скидку и передаётся в систему с фискальным чеком. Следует обращать внимание, что в случае позиционного правила, скидка будет вычитаться из суммы каждой позиции. Например, если один и тот же товар продан в разных позициях чека и в разном количестве, то процентная скидка на этот товар в разных позициях будет разной. 

В случае скидки-значения, если сумма чека (в случае правила, применяющегося к чеку) или сумма по позиции (в случае правила, применяющегося к позиции) с учётом внешней скидки будет меньше данного значения, то правило сработает таким образом, что покупка целиком или покупка определённой позиции чека будет совершена бесплатно (т.е. со скидкой 100%). Во избежание таких ситуаций, рекомендуется правила-скидки с конкретными значениями всегда ограничивать их применимостью таким образом, чтобы они срабатывали в случае, если сумма чека с внешней скидкой или сумма позиции с внешней скидкой была строго больше самого значения абсолютной скидки. Применимость правила в этом случае будет регулироваться связанными с правилами наборами и фильтрацией применимости по этим наборам.

В системе скидка может быть получена не только на основании начислении скидки, но и на основании оплаты баллами. При обработке фискального чека с оплатой баллами может появиться дополнительная скидка. В этом случае происходит пересчёт списанных баллов в скидку. Данная функциональность по умолчанию выключена. Включается функционал с помощью поля «Учёт оплаты баллами в скидку» в карточке партнёра.

1710418377949-537.png

Рис. Настройка учёта оплаты баллами в скидку в карточке партнёра

Скидка по правилам вида M*N. Правила-скидки могут быть правилами вида M*N (читается как правило M на N). Это специфическая функциональность, которая применяется только для правил-скидок в правилах начисления «Базовое правило», «Поощрение за купон», «Персональная акция», «Товарная акция». В случае, если необходимо предоставить поощрение в виде продажи некоторого количества товара за стоимость некоторого меньшего количества товара, например, пять пакетов молока продать за стоимость только четырёх пакетов, то такая функциональность обеспечивается применением именно таких параметров.

Применимость такого правила означает, что в ответе мягкого чека на POS-терминал будет возвращена скидка, которая применяется к товарам, по которым данное правило сработало.

Правило вида M*N распространяется только на полную группу товаров в количестве M. В качестве примера: если в чеке продаётся 11 единиц товара, на который распространяется данное правило, а правило имеет вид «4 на 3», то общее количество такого товара поделится на целое количество групп по 4 единицы товара. В указанном случае на две группы из четырёх единиц товара и ещё останется три единицы, которые не образовали полную группу. Каждая из полных групп будет продана по стоимости 3-х товаров, а последние 3 единицы товара, которые не образуют полную группу из 4-х товаров, будут проданы за полную свою стоимость. В итоге применения указанного в примере правила получается, что все 11 единиц товара будут проданы по стоимости 9-ти единиц. Соответственно, в ответе мягкого чека на POS-терминал будет указано, что каждая единица данного товара для данного конкретного состава чека будет продана со скидкой в 18,181 процента.

Следует отметить, что в количественные поля данного правила можно записывать только целые значения. Однако, если в чеке указаны дробные количества, например, если товар продаётся в килограммах, а не в штуках, то правило всё равно применяется. В любом случае общее количество товаров, на которые распространяется данное правило, объединяются в целочисленные группы количественного состава M, и каждая из этих групп продаётся по стоимости группы товара в целом количестве N. Всё остальное количество товара формирует остаток, который продаётся по полной цене.

Подробнее правило описано в разделе «Правило M*N».

Сложение скидок

В системе нет ограничений на количество одновременно действующих правил-скидок по чеку. Их может быть сколько угодно. Причём они могут относиться как к одной кампании, так и в рамках нескольких кампаний может действовать несколько правил-скидок.

Сложение скидок по правилам, действующим в рамках одной кампании

Каким образом будут рассчитываться скидки по правилам в рамках одной кампании определяется полями «Метод расчета чека для дисконтных правил», «Метод расчета позиции для дисконтных правил» в карточке кампании.

1710418534612-269.png

Рис. Настройка метода скидок в карточке кампании

Подробнее про сложение скидок по правилам в рамках одной кампании см. в пункте Агрегирование скидок в рамках одной кампании.

Сложение скидок по правилам, действующим в рамках разных кампаний

Правила-скидки могут также быть отнесены к разным кампаниям. В случае если такое имеет место быть, то в рамках одной кампании происходит сложение скидок описанным выше способом – получается результирующая скидка каждой кампании. Дальнейшее сложение этих скидок определяется системными настройками.

Подробнее про сложение скидок между кампаниями и группами баллов см. в пунктах Агрегирование скидок между кампаниями и Агрегирование скидок между группами баллов.

Сложение внешних и внутренних скидок

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

1710418602044-685.png

Рис. Настройка метода агрегирования внешней скидки в карточке кампании

Важно! Если в настройке Кампании в поле «Метод агрегирования внешней скидки» указано значение «Арифметическая сумма», а в методе агрегации для чековых и позиционных дисконтных правил выбрано значение Сумма, то будет считаться арифметическая сумма внешней и внутренней скидок, и также арифметически будут суммироваться ставки дисконтных правил.

Чековое дисконтное правило с позиционной фильтрацией

В чековом правиле начисления можно предоставлять скидку на несколько позиций таким образом, чтобы сумма скидок по этим позициям равнялась указываемой в правиле сумме фиксированной скидки. Это возможно с помощью поля «Учитывать состав» в карточке правила.

1710418704146-880.png

Рис. Настройка фиксированной скидки (значение) на несколько позиций в карточке правила начисления

Подробнее см. в пункте «Учитывать состав»

Учет минимальной расчетной цены при предоставлении скидок

При предоставлении скидок система позволяет учитывать минимальную расчётную цену товаров (МРЦ). МРЦ определяет часть цены товара, которая обязательно должна быть оплачена денежными средствами.

Подробнее про МРЦ см. в пункте Учет минимальной расчетной цены.

Ограничения при применении дисконтного правила

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

1710418808167-112.png

Рис. Активация секции «Ограничения» в карточке правил начисления

Максимальный процент скидки от суммы

Поле отображается при параметре Вид начисления = Скидка и Тип расчёта = Значение

При использовании данного параметра в дисконтном правиле (Правила начисления: Базовое правило, Поощрение за купон, Товарная акция) значение скидки по дисконтному правилу не превышает указанный максимальный процент от суммы без скидки. Например, значение скидки по правилу 100, «Максимальный процент от суммы» = 20. Если правило чековое (На = Чек), то в этом случае если сумма чека 400, то скидка по чеку по этому правилу будет составлять 20%, а если к примеру сумма чека 1000, то скидка будет составлять 10%.

Если правило позиционное (На = Позиция чека), то ограничение считается от суммы позиции без скидки. Если правило с признаком "Учитывать состав" = Да, то ограничение считается от соответствующей суммы без скидки входящих позиций (позиций, проходящих фильтрацию).

1710418845071-218.png

Рис. Параметр «Максимальный процент скидки от суммы» в секции «Ограничения» в карточке правила начисления с параметрами Вид начисления = Скидка и Тип расчёта = Значение

Данное ограничение распространяется на дисконтные правила: Базовое правило, Поощрение за купон, Товарная акция. В том числе для правила начисления «Поощрения за купон» когда значение скидки берется из записи купона ("Использовать значение из купона" = Да), и на правила с уровнями (в секции «Суммовые и временные уровни» параметр «Тип уровня» не равно Нет).

Максимальная сумма скидки. Поле отображается при параметре Вид начисления = Скидка и Тип расчёта = Процент

При использовании данного параметра в дисконтном правиле (Правила начисления: Базовое правило, Поощрение за купон, Товарная акция) значение скидки по правилу не превышает указанную максимальную сумму. В случае чекового правила (На = Чек) – ограничение по чеку, в случае позиционного правила (На = Позиция чека) – ограничение по позиции. Например, значение скидки в % по правилу 10%, «Максимальная сумма скидки» = 100. Если правило чековое (На = Чек), то в этом случае если сумма чека 400, то скидка по чеку по этому правилу будет составлять 10%, а если к примеру, сумма чека 2000, то скидка будет составлять 5%.

1710418873835-742.png

Рис. Параметр «Максимальная сумма скидки» в секции «Ограничения» в карточке правила начисления с параметрами Вид начисления = Скидка и Тип расчёта = Процент

Если правило позиционное (На = Позиция чека), то ограничение считается от суммы позиции без скидки.

Данное ограничение распространяется на дисконтные правила: Базовое правило, Поощрение за купон, Товарная акция. В том числе для правила начисления «Поощрения за купон» когда значение скидки берется из записи купона (Использовать значение из купона = Да), и на правила с уровнями (в секции «Суммовые и временные уровни» параметр «Тип уровня» не равно Нет).

Источник скидки

Для применения социальной скидки в пределах социального фонда (подробнее описание акции смотрите здесь»), в дисконтные позиционные Правила программы: «Базовое правило», «Поощрения за купон», «Правила комплекты», «Товарные акции», в дополнительной секции «Ограничения» в поле «Источник скидки» добавляется признак «Денежный счет карты».

Отображается, если Вид начисления = Скидка, а значение поля «На» в секции «Параметры правила» = Позиция чека.

1710419004811-866.png

Рис. Признак «Денежный счет карты» в «Источнике скидке» в «Ограничениях» Базового дисконтного позиционного правила

Правило с уровнями

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

1710419744863-361.png

Рис. Настройка фиксированной скидки (значение) на несколько позиций в карточке правила начисления

Настройка суммовых и временных уровней позволяет реализовать ступенчатую схему поощрения, привязанную к суммовым и временным показателям. Например, при сумме чека от 1000 руб. начислять 5% баллов, при сумме от 3000 руб. начислять 10% баллов и т.д. При этом основанием уровней может выступать не только сумма чека, но и различные числовые параметры: сумма со скидкой чека, количество товара в позиции, сумма покупок по карте и т.п.

ПолеОписаниеОбязательное полеРедактирование
Тип уровня

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

  • Нет (пороги не используются)
  • По сумме (используются пороги от суммы)
  • По времени (используются пороги от времени)
  • Оба – суммарно. Учитывается значение обоих порогов.
  • Оба – максимум. Учитывается значение того из порогов, который даёт максимальное значение поощрения.

Значение по умолчанию Нет.

ДаПоле доступно для редактирования, заполняется вручную
Основание уровня

Параметр, определяющий, что именно будет использоваться в качестве порога. Возможные значения:

  • Сумма
  • Количество товара
  • Сумма покупок по карте (с учётом текущего чека)
  • Сумма покупок по карте со скидкой (с учётом текущего чека)
  • Количество покупок по карте
  • Сумма со скидкой
  • Скидка по карте
  • Сумма покупок по контакту (без учёта текущего чека)
  • Сумма покупок по контакту со скидкой (без учёта текущего чека)
  • Активный баланс контакта
  • Активный статусный баланс контакта
  • Стоимость к оплате
  • Сумма покупок без скидок по контакту (с учётом текущего чека)
  • Сумма покупок по контакту со скидкой (с учётом текущего чека)
  • Счётчик: без учета текущей покупки
  • Счетчик: с учетом текущей покупки

Значение по умолчанию Сумма.

НетПоле доступно для редактирования, заполняется вручную
Суммовые  уровни

Поле отображается если параметр

«Тип уровня» не равен «По времени»,

В разделе отображаются ссылки на связанные с правилом суммовые уровни.

  
Временные уровни

Поле отображается если параметр

«Тип уровня» не равен «По сумме»,

В разделе отображаются ссылки на связанные с правилом временные уровни.

  
Счётчик

Отображается в случае, если поле «Основание уровня» = «Счётчик: без учёта текущей покупки » или «Счётчик: с учётом текущей покупки».

Ссылка на правило-счетчик

ДаПоле доступно для редактирования, заполняется вручную
Период счётчика

Отображается в случае, если поле «Основание уровня» = «Счётчик: без учёта текущей покупки » или «Счётчик: с учётом текущей покупки».

Период, за который осуществляется подсчет событий счетчика.

Возможные  значения:

  • Сутки 
  • Неделя 
  • Месяц 
  • Квартал 
  • Полугодие 
  • Год 

Значение по умолчанию: Неделя

НетПоле доступно для редактирования, заполняется вручную
Источник накопления счётчика

Отображается в случае, если поле «Основание уровня» = «Счётчик: без учёта текущей покупки » или «Счётчик: с учётом текущей покупки».

Сущность, на которую записываются события счетчика.

Возможные  значения:

  • Карта 
  • Контакт 
  • Мастер счёт 

Значение по умолчанию: Контакт

НетПоле доступно для редактирования, заполняется вручную
Тип периода

Отображается в случае, если поле "Основание уровня" = «Счётчик: без учёта текущей покупки » или «Счётчик: с учётом текущей покупки».

Тип периода, за который осуществляется подсчет событий счетчика.

Возможные  значения:

  • Текущий 
  • Предыдущий 
  • Скользящий 

Значение по умолчанию: Текущий

НетПоле доступно для редактирования, заполняется вручную

1710420488809-145.png

Рис. Карточка Базового правила начисления – Суммовые и временные уровни

Тип уровня - параметр, который задаёт качество, определяющее характер расчёта.

1710419926815-598.png

Рис. Параметр Тип уровня в карточке Базового правила начисления

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

  1. Нет. Если указано данное значение, то величина скидки или количество бонусов будет рассчитываться на основании значения поля «Бонусный балл» (или «Статусный бонус»), то есть фиксированным, а не пороговым образом.
  2. По сумме. Если указано данное значение, то величина скидки или количество баллов определяется записанным значением в соответствующем ценовом (суммовом) уровне. При этом указанное в поле правила «Бонусный балл» (Статусный бонус) значение игнорируется.
  3. По времени. Если указано данное значение, то величина скидки или количество баллов определяется записанным значением в соответствующем временном уровне. При этом указанное в поле правила «Бонусный балл» (Статусный бонус) значение игнорируется.
  4. Оба - суммарно. Если указано данное значение, то для расчёта скидки или бонуса будет применена сумма найденных значений для временных и суммовых уровней. При этом указанное в поле правила «Бонусный балл» (Статусный бонус) значение игнорируется.
  5. Оба - максимум. Если указано данное значение, то для расчёта скидки или бонуса будет применяться то значение, которое определяет максимальное среди найденных значений суммового и временного уровня. При этом указанное в поле правила «Бонусный балл» (Статусный бонус) значение игнорируется.

Например, необходимо создать правило, согласно которому в ночное время с 20 вечера до 7 утра на сумму покупки будут начисляться баллы в количестве 10% от суммы покупки. При этом также дополнительно начисляются баллы в количестве 5% от суммы покупки, если она превышает 3000 рублей. Для этого мы должны воспользоваться параметром Тип уровня и указать его значение равным Оба суммарно. Для данного правила нужно дополнительно создать три временных уровня: «от 0 до 7 часов» - бонус по уровню 10, «от 7 часов до 20 часов» - бонус по уровню 0; и «от 20 часов до 24 часов» - бонус по уровню 10. И один ценовой (суммовой) уровень, действующий с суммы более 3000 рублей, бонус по уровню 5.

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

Основание уровня - параметр, который задаёт порог расчёта, если тип уровня суммовой.

1710419977459-748.png

Рис. Параметр Основание уровня в карточке Базового правила начисления

Основанием уровня могут быть такие же значения, которые указываются в параметре «От чего считать»:

  1. Сумма. Данное значение означает, что величина скидки или количество бонусных баллов будет зависеть от полной суммы чека или суммы позиции чека (в зависимости от объекта расчёта).
  2. Сумма со скидкой. Если по правилу начисляются бонусные баллы, то именно этот параметр фискального чека будет взят как основание расчёта.
  3. Количество товара. В случае применения правила ко всему чеку (Объект расчёта = Чек) этот параметр строго равен единице. В случае позиционного правила (Объект расчёта = Позиция чека) основанием расчёта будет количество покупаемого по позиции чека конкретного товара (в единицах измерения POS-терминала).
  4. Сумма покупок по карте (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок, накопленная по прочитанной POS-терминалом карте, с учётом суммы текущей покупки.
  5. Сумма покупок по карте со скидкой (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со всеми ранее накопленными скидками, накопленная по прочитанной POS-терминалом карте, с учётом суммы текущей покупки.
  6. Количество покупок по карте. Основанием является общее количество всех предыдущих покупок с учётом совершаемой в момент обработки чека.
  7. Скидка по карте. Основанием является текущее значение скидки, которое указано в карте программы лояльности.
  8. Сумма покупок по контакту (без учёта текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок по всем картам контакта. При этом сумма обрабатываемого чека не учитывается.
  9. Сумма покупок по контакту со скидкой (без учёта текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со скидкой по всем картам контакта. При этом сумма обрабатываемого чека не учитывается.
  10. Сумма покупок по контакту (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок по всем картам контакта с учётом суммы текущей покупки.
  11. Сумма покупок по контакту со скидкой (с учётом текущего чека). В качестве основания расчёта берётся вся предыдущая сумма покупок со скидкой по всем картам контакта с учётом суммы текущей покупки.
  12. Активный баланс контакта. В качестве основания расчёта берётся активный бонусный баланс контакта.
  13. Активный статусный баланс контакта. В качестве основания расчёта берётся активный статусный баланс контакта.
  14. Стоимость к оплате. В качестве основания расчета берется сумма оплаты денежными средствами (т.е. за вычетом скидки и списания баллами).
  15. Счётчик: без учёта текущей покупки. В качестве основания расчёта берутся накопления по счетчику, при этом начисление поощрения по правилу с таким основанием  будет выполнено при следующей транзакции.
  16. Счётчик: с учётом текущей покупки чека. В качестве основания расчёта берутся накопления по счетчику, при этом начисление поощрения по правилу с таким основанием  будет выполнено в текущей транзакции, в момент достижения порога счетчика.

Пороги уровней. При заполнении поля «Тип уровня» каким-либо значением, отличным от «Нет» становятся доступны для создания записи, посредством которых задаются пороги уровней. Если Тип уровня = По сумме, то слева доступен раздел формы для ценовых суммовых уровней; если Тип уровня = По времени, то справа доступен раздел формы для временных уровней; если Тип уровня есть Оба - суммарно или Оба – максимум, то доступны обе формы для ценовых суммовых и временных уровней.

1710420071746-334.png

Рис. Суммовые и временные уровни в карточке Базового правила начисления

Карточка ценового (суммового) уровня содержит следующие поля:

ПолеОписаниеОбязательное полеРедактирование
Активно

Признак активности записи суммового уровня для алгоритмов процессинга. Возможные значения: Да/Нет.

По умолчанию Нет.

ДаУстанавливается выполнением процесса создания записи
ОтветственныйПользователь, ответственный за создание и ведение данной записи.ДаПоле доступно для редактирования. Заполняется из справочника пользователей.
ПодразделениеПодразделение, к которому относится данная запись.ДаПоле доступно для редактирования. Заполняется из справочника подразделений.
Общие сведения
Сумма отПороговое значение суммы, начиная с которого будет применяться ставка, указанная в поле «Значение» в суммовом уровне.ДаПоле доступно для редактирования, заполняется вручную
ЗначениеСтавка, которая будет применяться, если основание уровня превосходит пороговое значение уровня (значения поля «Сумма от»).ДаПоле доступно для редактирования, заполняется вручную
Правило начисленияСсылка на правило начисления, к которому относится уровень.ДаНе доступно для редактирования, заполняется автоматически при создании уровня из правила
Внешний идентификаторКодовое значение для интеграции с внешними системами.НетПоле доступно для редактирования, заполняется вручную
ОписаниеПодробное описание суммового уровня.НетПоле доступно для редактирования, заполняется вручную

Внешний вид карточки суммового уровня:

1710420120099-297.png

Рис. Карточка суммового уровня

Создание записи временного уровня производится аналогично созданию записи ценового (суммового) уровня. Временные и суммовые уровни работают аналогично.

Карточка временного уровня содержит следующие поля:

ПолеОписаниеОбязательное полеРедактирование
Активно

Признак активности записи суммового уровня для алгоритмов процессинга. Возможные значения: Да/Нет.

По умолчанию Нет.

ДаУстанавливается выполнением процесса создания записи
ОтветственныйПользователь, ответственный за создание и ведение данной записи.ДаПоле доступно для редактирования. Заполняется из справочника пользователей.
ПодразделениеПодразделение, к которому относится данная запись.ДаПоле доступно для редактирования. Заполняется из справочника подразделений.
Общие сведения
Время отПороговое значение времени, начиная с которого будет применяться ставка, указанная в поле «Значение» во временном уровне.ДаПоле доступно для редактирования, заполняется вручную
ЗначениеСтавка, которая будет применяться, если основание уровня превосходит пороговое значение уровня (значения поля «Время от»).ДаПоле доступно для редактирования, заполняется вручную
Правило начисленияСсылка на правило начисления, к которому относится уровень.ДаНе доступно для редактирования, заполняется автоматически при создании уровня из правила
Внешний идентификаторКодовое значение для интеграции с внешними системами.НетПоле доступно для редактирования, заполняется вручную
ОписаниеПодробное описание временного уровня.НетПоле доступно для редактирования, заполняется вручную

Внешний вид карточки временного уровня:

1710420208183-665.png

Рис. Карточка временного уровня

Если суммовой параметр (то, что указано в правиле в поле «Основание уровня») превосходит или совпадает со значением уровня (то, что указано в ценовом суммовом уровне в поле «Сумма от»), то начинает применяться ставка данного уровня. Также если время чека совпадает или превосходит время, указанное во временном уровне, то начинает действовать ставка данного временного уровня.

Например, мы хотим, чтобы порогом было количество товара, причём так, чтобы при покупке до 10 штук начислялось 10 процентов на сумму покупки, при покупке от 11 до 20 – 15 процентов на сумму покупки, более 21 – 20 процентов от суммы покупки в бонусных баллах. Для этого необходимо создать правило следующим образом. Во-первых, правило обрабатывает позицию чеку, во-вторых, поле «От чего считать» должно быть заполнено значением «Сумма», поскольку мы хотим начислять баллы как процент от суммы покупки. А вот само процентное значение мы уже определяем не как константу, а как зависящую от величины купленного количества товара. Для этого заполняем «Тип уровня» значением «По сумме», «Основание уровня» значением «Количество товара» и создаём три порога (три записи ценового суммового уровня). Первый порог выглядит таким образом: Сумма от = 0, Бонус = 10; второй порог: Сумма от = 11, Бонус = 15; третий порог: Сумма от = 21, Бонус = 20.

Рассмотрим, как можно реализовать применимость правила к каждой 5-й покупке с использованием суммовых уровней. Исходя из условия необходимо так настроить правило, чтобы оно применялось только тогда, когда текущая покупка будет кратна 5, то есть это 5-ая покупка, 10-ая покупка, 15-ая и т.д. Предположим, необходимо предоставлять скидку 200 руб. на каждую 5-ю покупку. Для этого, как было сказано выше в пункте Параметр приведения, поможет отрицательный параметр приведения. В этом примере необходимо установить: в поле «Вид начисления» значение «Скидка по чеку», «Объект расчёта» – значение «Чек» (поскольку необходимо предоставлять скидку на весь чек, а не на конкретные позиции), «Тип расчета» – «Значение», в поле «Бонусный балл» – значение 0 (как было сказано выше, при использовании суммовых или временных уровней это поле игнорируется), в поле «Параметр приведения» значение -5, «Тип уровня» – «По сумме», «Основание уровня» – «Количество покупок по карте». И создаём два порога (две записи ценового суммового уровня). Первый порог должен выглядеть таким образом: Сумма от = 0, Бонус = 200; второй порог: Сумма от = 0.01, Бонус = 0. Таким образом, когда текущая покупка будет кратна 5, т.е. делиться на 5 без остатка или, по-другому, с нулевым остатком (в случае отрицательного параметра приведения берется остаток от деления основания, а здесь в случае использования уровней основанием является количество покупок по карте, на модуль значения параметра приведения), то будет использоваться ставка 200, иначе если будет какой-то ненулевой остаток от деления (текущая покупка не кратна 5), то будет использоваться ставка 0, т.е. правило применяться не будет.

Правило M*N

Правило M*N обязательно должно иметь вид начисления Скидка, помимо этого, правило должно быть позиционным (Вид начисления = Скидка, «На» = «Позиция чека). 

ПолеОписаниеОбязательное полеРедактирование
Правило M*N

Признак, определяющий, будет ли применяться при расчете поощрения (бонуса или скидки) правило M*N. Возможные значения:

  • Нет
  • Да

Значение по умолчанию Нет.

ДаПоле доступно для редактирования, заполняется вручную
Способ группировки

Значения:

  • Цена
  • Артикул + Цена
  • Произвольный

Значение по умолчанию: Пусто

НетПоле доступно для редактирования, заполняется вручную
Кол-во товараКоличественный состав группы (значение M) – количество товара, к которому будет применена стоимость товара в количестве NНетПоле доступно для редактирования, заполняется вручную
По ценеКоличество товара (значение N), по стоимости которого будет реализовываться вся группа товаров количественного состава МНетПоле доступно для редактирования, заполняется вручную

1710420620766-534.png

Рис. Карточка Базового правила начисления – Правило M*N

Для настройки дисконтных Базового и правила Поощрение за купон вида M*N - «M товаров по цене N товаров», в системе предусмотрено 3 способа группировки товаров:

  • Цена (Объединять различные товары по цене). Группировка возможно в случае, если к правилу относятся включаемые наборы позиций. Если правило не включает в себя наборы позиций, то объединение товаров по цене необходимо производить с помощью системной настройки Loyalty.Processing.MxNRules.JoinArticles,
  • Артикул+цена (одинаковые товары с одинаковой ценой),
  • Произвольный (группа товаров, категория, бренд), чтобы можно было распределить скидку на позиции с товарами данной общности в одном чеке.

 Если создано такое правило, то все количество объединенных по одному из признаков товаров распределяется на группы, в каждой из которых М товаров. Далее группу из М товаров продается по стоимости N товаров.

Значение M задаётся в поле «Количество товара», а N – в поле «По цене товара». Следует обращать внимание на то, что значение поля «Количество товара» должно быть больше значения поля «По цене», в противном случае правило будет отрабатывать некорректно.

В случае срабатывания группового правила MxN, ограничение на применение других акций в рамках ПЛ делается с помощью стандартного исключения правил в системе.

Групповое правило MxN имеет универсальное применение для акций типа 3 по цене 2, 5 по цене 3 и т.п.

Пример использования. Для участников программы лояльности действует акция 5 по цене 3-х для всех товаров подгруппы «Молоко». При настройке акции MxN скидка дается по сумме двух самых дешевых товаров в чеке и распределяется пропорционально между всеми товарами, попадающими под действие правила.

Если по какому-то товару установлена МРЦ, то величина скидки определяется этой ценой. Общая стоимость товара не может быть ниже МРЦ, помноженной на количество этого товара в позиции. Если ставка скидки такова, что результирующая стоимость становится меньше МРЦ, то ставка скидки пропорционально уменьшается, несмотря на то, в процентах она или в фиксированных значениях.

Тип группировки настраивается в дополнительной секции правила начисления «Правило M*N». В правило также необходимо добавить Фильтр по позициям чека, чтобы в группу M отобрались только товары подгруппы «Молоко», согласно примеру.

1710420860040-883.png

Рис. Значения параметра «Способ группировки» в секции «Правило М*N» в правиле «Поощрение за купон»

1710420902355-725.png

 Рис. Фильтр по позициям в Правиле M*N

В акциях с применением механики правила M*N не рекомендуется использовать товары с внешними или внутренними скидками, а также товары с МРЦ. В противном случае расчет скидки будет производиться иначе.

Партнерские/системные настройки для правил MxN:

Loyalty.Processing.CalcMethod.RuleGroupMxN.Sorting

Loyalty.Processing.CalcMethod.RuleGroupMxN.Distribution 

Если в чеке есть ещё товары, подходящие по фильтру, но их количества недостаточно для образования М - на них скидка не распространяется.

Например, по групповому правилу М = 3, N = 2, позиционную фильтрацию в чеке прошли пять позиций, всего 11 товаров:

Позиция=2 Товар=А Цена=200 Кол-во=3

Позиция=4 Товар=Б Цена=300 Кол-во=1

Позиция=5 Товар=В Цена=400 Кол-во=2

Позиция=6 Товар=Г Цена=500 Кол-во=4

Позиция=9 Товар=Д Цена=600 Кол-во=1

При настройке Loyalty.Processing.CalcMethod.RuleGroupMxN.Sorting = 0, отобралось 9 товаров по возрастанию цены по позициям:

  1. Позиция=2 Товар=А Цена=200
  2. Позиция=2 Товар=А Цена=200
  3. Позиция=2 Товар=А Цена=200
  4. Позиция=4 Товар=Б Цена=300
  5. Позиция=5 Товар=В Цена=400
  6. Позиция=5 Товар=В Цена=400
  7. Позиция=6 Товар=Г Цена=500
  8. Позиция=6 Товар=Г Цена=500
  9. Позиция=6 Товар=Г Цена=500

Чтобы определить, какую скидку необходимо предоставить на отобранные товары, высчитывается общая стоимость самых дешёвых К*(M-N) отобранных товаров, где К – количество комплектов, если нет настройки Loyalty.Processing.CalcMethod.RuleGroupMxN.Sorting, или её значение 0 или NULL. При значении 1, отбираются самые дорогие товары.

Всего комплектов из М штук – 3, общая сумма самых дешёвых 3*(3-2) товаров, равна 600:

Позиция=2 Товар=А, 1 шт Цена=200

Позиция=2 Товар=А, 1 шт Цена=200

Позиция=2 Товар=А, 1 шт Цена=200

Эта сумма является скидкой по правилу.      Если значение партнёрской настройки Loyalty.Processing.CalcMethod.RuleGroupeMxN.Distribution 0, то скидка распределяется только на позиции 2, 4, 5 и 6. Общая сумма этих позиций 600 + 300 + 800 + 2000 = 3700. Соответственно, на позицию будет проходить скидка = 600 (скидка) * ((Сумма по позиции)/3700).

Итого:

Позиция=2 Товар=А Цена=200 Кол-во=3 Сумма=600 Скидка=97.30 (16.216%)

Позиция=4 Товар=Б Цена=300 Кол-во=1 Сумма=300 Скидка=48.65.30 (16.216%)

Позиция=5 Товар=В Цена=400 Кол-во=2 Сумма=800 Скидка=129.73.30 (16.216%)

Позиция=6 Товар=Г Цена=500 Кол-во=4 Сумма=2000 Скидка=324.32 (16.216%)

Для правила начисления «Персональная акция» значения M*N настраиваются в карточке «Персонального предложения»

1710420972939-137.png

Рис. Настройка правила M*N в карточке «Персональное предложение» для применения в правиле «Персональная акция»

Для правила начисления «Товарная акция» значения M*N настраиваются в карточке «Товарного предложения»

1710421020716-634.png

Рис. Настройка правила M*N в карточке «Товарное предложение» для применения в правиле «Товарная акция»

Правило вида MxN работает корректно только в случае, если оно позиционное и к нему относятся включаемые наборы позиций чека. Если к правилу не относится ни один включаемый набор, то правило не применяется. Для правила товары считаются одинаковыми, если они имеют одинаковые идентификаторы и полностью совпадающие цены. Если цены передаются с количеством десятичных знаков более, чем 2, то скидки в этом случае могут рассчитываться некорректно.

Автоматическая деактивация правил начисления

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

По истечении определенного срока после даты окончания действия правила, оно автоматически деактивируется.

Функциональность включается системной/партнерской настройкой Loyalty.Processing.Rule.AutoShutdown.TurnOnпри условии, что  значение поля «Дата окончания действия» правила + Количество дней из настройки Loyalty.Processing.Rule.AutoShutdownDay больше или равно текущей дате. В таком случае правилу начисления присваивается статус «Неактивно».

Механизм проверки правил запускается джобом один раз в сутки по расписанию.