Публичное пространство
SetLoyalty ◾️ Динамический код как способ авторизации покупателя и валидации выдачи вознаграждения
https://crystals.atlassian.net/browse/SLS-4086
https://crystals.atlassian.net/browse/CR-10682
Set Retail 10.4.14.0
SET LOYALTY 2025.3.0
- 1 Описание
- 2 Ценность
- 3 Настройка
- 4 Примеры
- 4.1 Сценарий 1. Авторизация по динамическому коду с проверкой его актуальности
- 4.1.1 Исходные условия
- 4.1.2 Кейс 1. Код актуален
- 4.1.3 Кейс 2. Код устарел
- 4.2 Сценарий 2. Авторизация без проверки кода при включенной валидации выдачи вознаграждения
- 4.2.1 Исходные условия
- 4.2.2 Кейс 1: Код актуален
- 4.2.3 Кейс 2: Код устарел
- 4.3 Сценарий 3. Валидация выдачи вознаграждения динамическим кодом при другом способе авторизации
- 4.3.1 Исходные условия
- 4.3.2 Кейс 1: Код актуален
- 4.3.3 Кейс 2: Код устарел
- 4.1 Сценарий 1. Авторизация по динамическому коду с проверкой его актуальности
- 5 Ограничения
- 6 Статьи по теме
Описание
Авторизация с помощью динамического кода – это безопасный способ авторизации покупателя на кассе, не требующий дополнительной процедуры подтверждения списания бонусов (или выдачи другого типа вознаграждения). Срок жизни кода ограничен, что предотвращает его перехват и подбор.
Начиная с версии 10.4.27.0 возможность подтверждения списания бонусов с помощью динамического кода доступна также при других способах авторизации – при добавлении карты лояльности по номеру телефона, отсканированному штрихкоду карты и др.
Общие правила
Динамический код – это временный уникальный код авторизации, который содержит: префикс, номер карты и сгенерированную последовательность символов. Если у покупателя несколько активных карт, то в динамический код будет записана последняя выданная карта.
Мобильное приложение или Telegram-бот ритейлера получает динамический код через API SetLoyalty и преобразует его в штрихкод PDF417 или QR-код – в тот формат, который может быть считан используемым кассовым оборудованием.
Срок действия динамического кода по умолчанию составляет 30 минут. Параметр настраиваемый.
Карта может быть добавлена в чек, даже если динамический код устарел (данная возможность зависит от установленных настроек). Однако при таком способе авторизации не обеспечивается безопасность операции списания бонусов (или предоставления другого типа вознаграждения), поэтому при включенной настройке валидации потребуется:
повторное сканирование штрихкода/QR-кода, предварительно обновлённого покупателем в приложении;
подтверждение через одноразовый пароль (OTP).
Ценность
Преимущества использования динамического кода для авторизации покупателя и защиты операции списания бонусов:
Снижение затрат на SMS и звонки при подтверждении списания бонусов.
Ускорение обслуживания покупателей за счет отсутствия необходимости отправки и ввода на кассе кода подтверждения.
Сокращение количества применений карты лояльности к чужим покупкам, и как следствие:
достоверность данных в истории покупок участников программы лояльности;
построение актуальных сегментов покупателей;
отправка релевантных персонализированных предложений.
Настройка
Перейдите в раздел CDP: Покупатели → Настройки → откройте вкладку ВАЛИДАЦИЯ.
На вкладке ОПЕРАЦИИ откройте вкладку Подтверждение выдачи вознаграждения → установите требуемые настройки валидации → нажмите .
Подробное описание данных настроек – в статье SetLoyalty ◾️ Вкладка "Валидация" в главе Подтверждение выдачи вознаграждения.
Перейдите на вкладку ПАРАМЕТРЫ → укажите период обновления динамического кода в минутах → укажите количество попыток цифрового ввода кода подтверждения и время ожидания ввода кода в секундах → нажмите на иконку для редактирования текста сообщения → введите заголовок (необходим при использовании мобильных пуш-уведомлений в качестве канала отправки кода подтверждения) → введите текст сообщения {{secret_code}} для генерации кода подтверждения → нажмите
→ нажмите
.
Подробное описание данных настроек – в статье SetLoyalty ◾️ Вкладка "Валидация" в главе Вкладка “ПАРАМЕТРЫ“.
Примеры
Сценарий 1. Авторизация по динамическому коду с проверкой его актуальности
Исходные условия
В разделе CDP: Покупатели → Настройки → на вкладке ВАЛИДАЦИЯ установлена настройка:
Проверять актуальность динамического кода при авторизации покупателя на кассе
Данный сценарий не зависит от настройки Валидировать выдачу вознаграждения кодом/динамическим кодом. Касса в любом случае не потребует повторного сканирования динамического кода или ввод кода подтверждения, если ранее в чек уже добавлена карта лояльности по актуальному динамическому коду.
Кейс 1. Код актуален
Покупатель на своем мобильном устройстве открывает приложение и предъявляет кассиру ШК в формате PDF-417 или QR-код.
Кассир сканирует штрихкод/QR-код.
Касса проверяет динамический код на актуальность.
Код валиден.
Касса добавляет карту в чек.
Покупатель запрашивает списание бонусов.
Бонусы успешно списываются без дополнительной процедуры подтверждения.
Кейс 2. Код устарел
Покупатель на своем мобильном устройстве открывает приложение и предъявляет кассиру ШК в формате PDF-417 или QR-код.
Кассир сканирует штрихкод/QR-код.
Касса проверяет динамический код на актуальность.
Код устарел (невалиден).
Касса не добавляет карту в чек и выводит на экран сообщение: Код устарел. Обновите код в мобильном приложении для повторного добавления и предлагает варианты действий:
Отменить – карта не будет добавлена в чек.
Добавить по телефону – откроется окно добавления карты по номеру телефона (кассе SetTouch данная кнопка появляется при условии включенной настройки Добавление карты по номеру телефона в разделе Кассовый модуль → Шаблоны касс → [Шаблон кассы] → на вкладке ФУНКЦИИ).
Клавиатурная касса
Set Touch
Кассир передаёт информацию покупателю и закрывает сообщение.
Покупатель обновляет код в мобильном приложении и предъявляет кассиру.
Кассир сканирует штрихкод/QR-код.
Касса проверяет код на актуальность.
Код валиден.
Касса добавляет карту в чек.
Покупатель запрашивает списание бонусов.
Бонусы успешно списываются без дополнительной процедуры подтверждения.
Сценарий 2. Авторизация без проверки кода при включенной валидации выдачи вознаграждения
Исходные условия
В разделе CDP: Покупатели → Настройки → на вкладке ВАЛИДАЦИЯ установлены настройки:
Проверять актуальность динамического кода при авторизации покупателя на кассе
Валидировать выдачу вознаграждения кодом/динамическим кодом, если покупатель авторизовался
по номеру телефона
по динамическому коду
по отсканированной полосе карты
по отсканированному штрихкоду карты
по номеру карты, введенному вручную
Кейс 1: Код актуален
Покупатель на своем мобильном устройстве открывает приложение и предъявляет кассиру ШК в формате PDF-417 или QR-код.
Карта добавляется в чек.
Касса запоминает динамический код, который считала при авторизации.
Покупатель запрашивает списание бонусов.
Касса проверяет код на актуальность действия.
Код валиден.
Касса списывает бонусы.
Кейс 2: Код устарел
Покупатель на своем мобильном устройстве открывает приложение и предъявляет кассиру ШК в формате PDF-417 или QR-код.
Кассир сканирует штрихкод/QR-код.
Карта добавляется в чек.
Касса запоминает динамический код, который считала при авторизации.
Покупатель запрашивает списание бонусов.
Касса проверяет динамический код на актуальность действия.
Код не валиден.
Касса блокирует операцию списания и выводит сообщение: Списание невозможно! Код устарел. Обновите код в мобильном приложении или подтвердите списание кодом, полученным на телефон с вариантами действий:
Повторить – касса запросит повторное сканирование штрихкода/QR-кода, который покупателю необходимо будет предварительно обновить в приложении.
Подтвердить по телефону – запускается сценарий подтверждения по телефону (данный процесс должен быть настроен, иначе касса выведет ошибку Сервис валидации не доступен).
Клавиатурная касса
Set Touch
Кассир нажимает Повторить.
Касса предлагает отсканировать карту лояльности из приложения.
Клавиатурная касса
Set Touch
Покупатель обновляет код в приложении и предъявляет кассиру.
Кассир сканирует обновленный штрихкод/QR-код. Скидка по бонусам отображается в чеке.
Клавиатурная касса
Set Touch
Кассир закрывает чек. Бонусы успешно списываются.
Сценарий 3. Валидация выдачи вознаграждения динамическим кодом при другом способе авторизации
https://crystals.atlassian.net/browse/SLS-5276
Set Retail 10.4.27.0
SET LOYALTY 2026.4.0
Исходные условия
В разделе CDP: Покупатели → Настройки → на вкладке ВАЛИДАЦИЯ включены настройки:
Валидировать выдачу вознаграждения кодом/динамическим кодом, если покупатель авторизовался
по номеру телефона
по отсканированной полосе карты
по отсканированному штрихкоду карты
по номеру карты, введенному вручную
Предлагать подтверждение операции динамическим кодом на кассе
Значение настройки Проверять актуальность динамического кода при авторизации покупателя на кассе – любое.
Кейс 1: Код актуален
Кассир формирует чек и добавляет карту лояльности покупателя любым из следующих способов:
по номеру телефона;
по отсканированной полосе карты;
по отсканированному штрихкоду карты;
по номеру карты, введенному вручную.
Кассир переходит к расчету.
Покупатель запрашивает списание бонусов.
Кассир вызывает функцию списания бонусов → подтверждает сумму бонусов к списанию.
Касса выводит сообщение: Отсканируйте карту из приложения или отправьте проверочный код на телефон с вариантами действий:
Отправить на телефон – запустить сценарий подтверждения по телефону (данный процесс должен быть настроен, иначе касса выведет ошибку Сервис валидации не доступен).
Отмена – закрыть окно и вернуться к оплате.
Клавиатурная касса
Set Touch
Кассир уведомляет покупателя о возможности подтверждения операции списания с помощью мобильного приложения.
Кассир сканирует штрихкод/QR-код с экрана устройства покупателя.
Касса проверяет код.
Код валиден.
Касса применяет бонусы.
Покупатель оплачивает чек.
Клавиатурная касса
Set Touch
Кейс 2: Код устарел
Кассир формирует чек и добавляет карту лояльности покупателя одним из способов:
по номеру телефона;
по отсканированной полосе карты;
по отсканированному штрихкоду карты;
по номеру карты, введенному вручную.
Кассир переходит к расчету.
Покупатель запрашивает списание бонусов.
Кассир вызывает функцию списания бонусов → подтверждает сумму бонусов к списанию.
Касса выводит сообщение: Отсканируйте карту из приложения или отправьте проверочный код на телефон с вариантами действий:
Отправить на телефон – запустить сценарий подтверждения по телефону (данный процесс должен быть настроен, иначе касса выведет ошибку Сервис валидации не доступен).
Отмена – закрыть окно и вернуться к оплате.
Клавиатурная касса
Set Touch
Кассир уведомляет покупателя о возможности подтверждения операции списания с помощью мобильного приложения.
Кассир сканирует штрихкод/QR-код с экрана устройства покупателя.
Касса проверяет код → код неактуален → касса блокирует операцию списания и выводит сообщение: Списание невозможно! Код устарел. Обновите код в мобильном приложении или подтвердите списание кодом, полученным на телефон с вариантами действий:
Повторить – касса запросит повторное сканирование штрихкода/QR-кода, который покупателю необходимо будет предварительно обновить в приложении.
Подтвердить по телефону – запускается сценарий подтверждения по телефону (данный процесс должен быть настроен, иначе касса выведет ошибку Сервис валидации не доступен).
Клавиатурная касса
Set Touch
Кассир нажимает кнопку Повторить.
Касса предлагает отсканировать карту лояльности из приложения.
Клавиатурная касса
Set Touch
Покупатель предъявляет код кассиру заново (необходимо обновить код в приложении).
Если код актуален, сценарий переходит к следующему шагу, если неактуален – возвращается к шагу 8.
Касса применяет бонусы.
Покупатель оплачивает чек.
Клавиатурная касса
Set Touch
Ограничения
Поддержка динамического кода как средства авторизации и автоматической валидации списания бонусов реализована с версии 10.4.14.0 на клавиатурных кассах, Set Touch и Set SCO v.3.
Возможность выбора способа подтверждения списания доступна на клавиатурных кассах и Set Touch с версии 10.4.27.0. Не поддерживается для касс самообслуживания.