Дисконтная схема
Общие положения
Задачи
- централизованное хранение данных о картах, быстрый доступ к информации о карте, возможность обновления информации
- централизованное хранение чеков и предоставление их для анализа
- быстрый расчёт скидок
- простое распространение изменений в алгоритмах расчёта
-
нетребовательная и устойчивая инфраструктура
Выделяются три независимых модуля
- Сервер карт - хранение, регистрация карт, выдача информации о карте по запросу, обновление информации о карте по запросу.
- Модуль скидок - расчёт скидок
- Сервер чеков - хранение проведённых чеков
Схема взаимодействия модулей
- Касса обращается на сервер карт. Сервер карт проверяет актуальность карт и возвращает в кассу ответ.
- Касса передаёт чек в модуль скидок (товары и карты). Модуль при необходимости запрашивает у сервера карт дополнительные данные о картах. Модуль выполняет расчёт цен со скидками и возвращает в кассу чек с новыми ценами.
- После оплаты чека касса передаёт данные на сервер карт и сервер чеков. Результата передачи касса не ждёт. Повторная (проверочная) передача будет выполнена позже. Сервер карт вносит сведения о совершенной покупке по карте. Сервер чеков сохраняет чек.
Источники появления скидок
- фиксированная акционная цена (Скидка заранее указана в виде цены в реестре на распродажу).
- цена, рассчитанная по правилам дисконтной схемы. Расчёт выполняется либо самой кассой (встроенный модуль скидок), либо внешним сервером (Дисконтный сервер или система лояльности).
- ручная скидка (указывается кассиром в чеке).
- скидка за оплату баллами
Ограничения расчёта скидок
- фиксированная акционная цена не участвует в расчётах модуля скидок
- цена после ручной скидки не участвует в расчётах модуля скидок
- МРЦ на алкоголь и табак (итоговая цена не может быть ниже или выше значений, регулируемых государством)
- доля стоимости, которая может быть оплачена баллами, не может быть выше заданного значения
Принципы расчёта
- Скидка всегда считается на строку. Скидка на чек означает, что скидка применяется к каждой строке.
- Расчёт скидок модулем выполняется либо при нажатии кнопки ПодИтог, либо при переходе в режим оплаты
Схема работы
Ввод чека и расчёт цен
- Кассир добавляет товары в чек. Для товара отображается либо акционная цена, либо текущая розничная цена
- Если кассир указал ручную скидку на товар, то сумма в строке изменяется.
- Если кассир нажимает кнопку ПодИтог, то выполняется запрос в модуль скидок и отображаются суммы со скидками
- При переходе в режим оплаты также выполняется запрос в модуль скидок. Если кассир вернётся в режим продажи, будут отображены суммы со скидками.
- Дисконтные карты, купоны, промо-слова необходимо считывать до перехода в режим оплаты. В противном случае скидки не будут рассчитаны.
- Дисконтный модуль получает на вход чек и все предъявленные покупателем дисконтные карты и купоны. Расчёт выполняется внутри модуля. В кассу модуль передаёт чек с новыми ценами.
Учёт скидок за баллы
1. Если на карте покупателя имеются баллы для оплаты, то модуль рассчитывает максимальное число баллов, которыми покупатель может расплатиться.
Общая сумма для расчёта максимального количества баллов вычисляется по формуле: цена * количество. Если в строке указан товар с МРЦ, то цена для расчёта максимального количества баллов рассчитывается как разница между факт. ценой товара и МРЦ. Если задан максимальный процент оплаты баллами, то рассчитанная сумма изменяется в соответствии со значением этого процента.
2. Кассир запрашивает у покупателя число баллов для оплаты с учётом имеющихся на карте баллов и рассчитанного максимального количества баллов.
3. Баллы для оплаты распределяются пропорционально на строки чека в виде скидок. В зависимости от значения соответствующего параметра строк с акционной ценой и ручной скидкой могут быть исключены из распределения. Нераспределённый в результате округления сумм остаток переносится на строку с наибольшей ценой товара. В каждую строку чека записывается число списанных баллов за оплату данного товара.
Оплата
1. Кассир узнаёт способ оплаты и принимает деньги.
2. По окончании оплаты выполняется передача окончательного варианта чека в сервер чеков.
3. В систему лояльности передаются два значения: списанные баллы и начисленные баллы за текущую покупку. Баллы могут быть начислены при оплате наличными или банковской картой.
Не понятно, как рассчитать число начисленных баллов за покупку товара в каждой строке, поскольку оплата подарочным сертификатом (картой) действует на чек в целом. Вариант начисления баллов за оплату подарочным сертификатом не понравится магазинам.
Варианты организации модулей
Задачи
- централизованное хранение данных о картах, быстрый доступ к информации о карте, возможность обновления информации
- централизованное хранение чеков и предоставление их для анализа
- быстрый расчёт скидок
- простое распространение изменений в алгоритмах расчёта
- нетребовательная и устойчивая инфраструктура
Расчёт на кассе
- расчёт выполняется на кассе
- информация о картах уходит в ЦБД, потом на другие кассы
- + не требуются дополнительные сервисы, касса автономна
- + расчёт выполняется быстро
- - долго обновляется информация о картах
- - для обновления акций требуется обновление кассы
Модуль скидок
Настройка дисконтной схемы
Описание всех скидок хранится в документе Дисконтная схема.
Список дисконтных схем
Активна |
Номер |
Название |
Область действия |
Акций |
Дата акцепта |
* |
1 |
ОСНОВНАЯ СХЕМА |
Все магазины |
5,2,0,1 |
|
- число активных акций (четыре значения через запятую)
Действия: создать, изменить, удалить, акцепт, снять акцепт, Акции на товары, Акции на чек, Послепродажные, Для печати
Всегда имеется один документ с номером 1, названием ОСНОВНАЯ СХЕМА и областью действия на все магазины. Этот документ нельзя удалить и переименовать. Действует только утверждённый (акцептованный) документ.
Форма дисконтной схемы
Параметры |
Признак акцепта |
Номер |
Название |
Магазины |
Дата акцепта |
Действия: сохранить
Когда ДС получает чек для расчёта скидок, то сначала выбирается дисконтная схема. Берётся подразделение, указанное в чеке и подбирается схема для этого подразделения. Если подходящей (и акцептованной) схемы не будет найдено, то применяется ОСНОВНАЯ СХЕМА.
Содержание документа с описанием дисконтной схемы составляют строки четырёх типов. Одна строка описывает одну акцию. Четыре вида строк соответствуют видам акций.
- (А) акции, назначающие скидки на товары
- (Б) акции, рассчитывающие скидки на чек
- (И) послепродажные акции (начисление баллов, выдача купонов, печать итогов и купонов)
- (П) акции для печати
Внутри каждого вида важно расположение акции в списке, поскольку акции обрабатываются последовательно. Для каждой акции программа сначала проверяет условия её применения, затем выполняются указанные в акции действия.
Внутри вида акции разделяются по типам. Это сделано для удобства настройки. Каждый тип имеет короткое название - буква и число.
Документы с описанием схем создаются в офисе и рассылаются на кассы автоматически.
Список акций
Активна |
Номер |
Тип |
Название |
* |
1 |
А2 |
Специальная цена по купону Активный гражданин 24 |
Действия: создать, изменить, удалить, изменить активность
Фильтр: только активные, по типу
Акции на товар
Красная цена (А1)
- период действия
- наличие карты (купона)
- дни недели с временем начала и окончания
- список подразделений
- набор товаров с ценами
Специальная цена по купону (А2)
- период действия
- купон
- набор товаров с ценами
- дни недели с временем начала и окончания
- список подразделений
Персональная цена (А3)
- период действия
- наличие карты (купона)
- набор товаров с ценами
- дни недели с временем начала и окончания
- список подразделений
Процентная скидка (А4)
- период действия
- набор товаров
- исключённые товары
- процент скидки
- округление цены
- наличие карты (купона)
- способ вычисления суммы чека
- В розничных ценах (без скидок) без исключённых товаров
- В розничных ценах (без скидок) вместе с исключёнными товарами
- В фактических ценах (со скидками) на момент расчёта акции без исключённых товаров
- В фактических ценах (со скидками) на момент расчёта акции вместе с исключёнными"
- Минимально необходимая сумма чека. Для применения акции сумма чека должна быть БОЛЬШЕ ИЛИ РАВНА заданному значению.
- дни недели с временем начала и окончания
- список подразделений
Процентная скидка по карте (купону) (А5)
- период действия
- карта (купон)
- набор товаров
- исключённые товары
- процент скидки
- округление цены
- дни недели с временем начала и окончания
- список подразделений
Скидка на день рождения (А6)
- период действия
- набор товаров
- исключённые товары
- процент скидки
- округление цены
- число дней до дня рождения
- число дней после дня рождения
- список подразделений
Скидка от количества товаров в чеке (А7) - цена товара зависит от количества данного товара в чеке
- период действия
- набор товаров
- исключённые товары
- округление цены
- список подразделений
- способ вычисления суммы чека
- В розничных ценах (без скидок) без исключённых товаров
- В розничных ценах (без скидок) вместе с исключёнными товарами
- В фактических ценах (со скидками) на момент расчёта акции без исключённых товаров
- В фактических ценах (со скидками) на момент расчёта акции вместе с исключёнными"
- дни недели с временем начала и окончания
- Минимально необходимая сумма чека. Для применения акции сумма чека должна быть БОЛЬШЕ ИЛИ РАВНА заданному значению.
- минимально необходимое количество товаров в наборе
- таблица с процентами (указываются верхняя граница диапазона (включительно) и процент скидки)
Скидка на сопутствующие товары (А8) - продажа сопутствующих товаров со скидкой, если покупатель приобретает заданное количество основных товаров.
- период действия
- набор Основных товаров
- набор Сопутствующих товаров
- исключённые товары
- процент скидки
- округление цены
- соотношение основных и сопутствующих товаров
- неограниченное число сопутствующих при наличии хоть одного основного
- на каждый основной 1 сопутствующий
- на каждый основной 2 сопутствующих
- на каждый основной 3 сопутствующих
- на каждый основной 4 сопутствующих
- один сопутствующий на 2 основных
- один сопутствующий на 3 основных
- один сопутствующий на 4 основных
- способ вычисления суммы чека
- В розничных ценах (без скидок) без исключённых товаров
- В розничных ценах (без скидок) вместе с исключёнными товарами
- В фактических ценах (со скидками) на момент расчёта акции без исключённых товаров
- В фактических ценах (со скидками) на момент расчёта акции вместе с исключёнными"
- Минимально необходимая сумма чека. Для применения акции сумма чека должна быть БОЛЬШЕ ИЛИ РАВНА заданному значению.
- Минимaльнo необходимое количество УНИКАЛЬНЫХ товаров в наборе
- Минимaльнo необходимое КОЛИЧЕСТВО товаров в наборе
- Минимaльнo нeoбxoдимая розничная СУММА товаров в наборе
- дни недели с временем начала и окончания
- список подразделений
Скидка на комплект А(9) - при покупке всех товаров комплекта назначается скидка
- период действия
- исключённые товары
- дни недели с временем начала и окончания
- список подразделений
- процент скидки
- округление цены
- элементы комплекта (товары и наборы)
Скидка на набор по типу N+1 А(10) - при покупке N товаров один получаете бесплатно
Все товары в чеке сортируются по цене, начиная с самых дорогих. Затем разбиваются на группы по N товаров. Далее каждая полученная группа обрабатывается отдельно. Для каждой группы скидка (суммовая) равна стоимости самого дешёвого товара. Скидка равномерно распределяется по всем товарам в группе.
- период действия
- дни недели с временем начала и окончания
- список подразделений
- набор товаров
- исключённые товары
- округление цены
- формула вычисления подарка
- 1+1 - при покупке двух товаров один из них в подарок
- 2+1 - при покупке трёх товаров один из них в подарок
- 3+1 - при покупке четырёх товаров один из них в подарок
- 4+1 - при покупке пяти товаров один из них в подарок
- 5+1 - при покупке шести товаров один из них в подарок
- наличие карты (купона)
- наличие ключевого слова (промокода)
- Минимaльнo нeoбxoдимая розничная цена товаров
- способ вычисления суммы чека
- В розничных ценах (без скидок) без исключённых товаров
- В розничных ценах (без скидок) вместе с исключёнными товарами
- В фактических ценах (со скидками) на момент расчёта акции без исключённых товаров
- В фактических ценах (со скидками) на момент расчёта акции вместе с исключёнными"
- Минимально необходимая сумма чека. Для применения акции сумма чека должна быть БОЛЬШЕ ИЛИ РАВНА заданному значению.
- Минимaльнo необходимое количество товаров в наборе
- Минимaльнo необходимое количество УНИКАЛЬНЫХ товаров в наборе
- Минимaльнo нeoбxoдимая розничная СУММА товаров в наборе
Скидки на чек
Скидка за баллы (Б1)
- период действия
- карта
- исключённые товары
- минимально оплачиваемая сумма чека
Скидка от суммы чека (Б2)
- период действия
- исключённые товары
- дни недели с временем начала и окончания
- список подразделений
- таблица процентов (пороговые значения и проценты)
Скидка по купону (Б3)
- период действия
- купон
- исключённые товары
- минимально оплачиваемая сумма чека
- разрешить применять скидку на все товары (игнорируя запрет на товары с распродажной ценой и ручной скидкой)
- максимальная величина скидки в %
При выполнении перечисленных акций вначале вычисляется величина скидки. Затем полученное значение распределяется по всем товарам чека, кроме исключённых товаров и тех товаров, цену которых уменьшить нельзя.
Послепродажные акции
Начисление баллов на персональную карту (И1)
- период действия
- набор товаров
- исключённые товары
- процент скидки
- дни недели с временем начала и окончания
- список подразделений
Начисление процентной скидки от суммы покупок (И2)
- период действия
- дни недели с временем начала и окончания
- список подразделений
- таблица процентов (пороговые значения и проценты)
Выдача подарочного купона (И3)
- период действия
- набор товаров
- исключённые товары
- купон
- способ вычисления суммы чека
- Минимально необходимая сумма чека
- дни недели с временем начала и окончания
- список подразделений
Акции для печати
Промо (П1)
- период действия
- набор товаров
- дни недели с временем начала и окончания
- список подразделений
- строки для печати
- расположение (в начале чека, в конце чека, в виде отрывного купона)
- число строк (до 10)
- текст на каждой строке
Печать подарочного купона (П2)
- купон
- строки для печати
- расположение (в начале чека, в конце чека, в виде отрывного купона)
- число строк (до 10)
- текст на каждой строке. Указывается формат текста: обычный, жирный, QR-код, EAN13. В тексте можно использовать макрос {КУПОН}. Это означает номер купона.
Упрощения по сравнению с ДС
- меньше акций, особенно со сложными расчётами
- меньше параметров акций
- наборы товаров реализуются либо Товарными корзинами, либо документами (если нужны цены)
- не реализуются сложные алгоритмы. Например, выбор оптимальной скидки
- используются типы карт и купонов, настроенные в Домино
Акции в БИМе
Сейчас используются следующие акции:
- N+1. При продаже N товаров, один бесплатно. Обычно 3+1 по разные наборы товаров. Более 30 наборов.
- выдача купона при продаже (Миллион призов, Активный гражданин)
- печать итогов по скидкам
Ранее использовались
- фиксированная скидка на набор товаров
- скидка по купону
- скидка по сроку годности (DISCONT)
Виды наборов товаров:
- явное перечисление товаров
- запрос к справочнику по реквизитам товара
- специальное условие (цена заканчивается на 9)
- объединение нескольких наборов
Виды карт:
- персональные
- обезличенные
- купоны
Сервер карт
Предложения
Разделение дисконтных карт по классам устарело. Сейчас одна и та же карта одновременно может использоваться для разных вариантов скидок. Например, скидка владельцу карты плюс скидка за бонусы.
Предложение 1
Объединяем три класса карт в один - Дисконтная карта
- Дисконтная карта
- накопительная дисконтная карта
- накопительная бонусная карта
Параметры класса карты:
- Основные
- наименование
- класс
- префикс
- суффикс
- не применяется на КСО
- отображать владельца ДК
- отображать вместо владельца тип
- Дополнительные
- срок действия бонуса
- округление
- Шкала скидок
Параметры: Параметр для определения скидки, циклическая скидка - удаляем как устаревшие.
Кнопки: Единовр. очки, накопл.очки, баллы - удаляем как устаревшие.
Параметры: начисление баллов, 4 параметра о дне рождения - удаляем. Начисление баллов одновременно может быть по сумме чека и на отдельные товары. Это и параметры для ДР надо указывать в приказе.
Предложение 2
Настройка алгоритма начисления бонусов выполняется в приказах.
- о начислении схемы расчета бонусов
- о назначении максимального процента и минимального количества бонусов для оплаты
- на запрет оплаты бонусами
В приказ о начислении схемы расчета бонусов добавить кнопку:
- в день рождения - 4 параметра, которые удалены из класса.
Надо проверить влияние параметров Процент и Сумма в форме приказа. Я думаю, что они определяют начисление баллов от суммы чека.