Для работы с системой ABMLoyalty файл лицензии должен содержать модуль abmloyalty. Подробнее об этом можно прочитать в разделе "Новый формат лицензии .li4".
Реализованная интеграция с системой ABMLoyalty может не поддерживать определенные функции системы или иметь особенности их реализации. Следует уточнять полноту интеграции в соответствии с функциональными требованиями к системе лояльности.
Кассовое ПО Artix поддерживает применение бонусных воздействий системы лояльности ABMLoyalty.
branch_id, в качестве которого используется код магазина (/linuxcash/cash/data/cash.reg).Конфигурирование модуля ABMLoyalty
Активация модуля системы лояльности ABMLoyalty определяется параметром abmloyalty, который задается в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/abmloyalty.ini в секции [plugins].
| Наименование | Тип данных | Возможные значения | Описание | Примечания |
|---|---|---|---|---|
| abmloyalty | строковый |
| Активация модуля системы лояльности ABMLoyalty | По умолчанию off |
[plugins] ; Система лояльности ABMLoyalty ;abmloyalty = off
Настройка плагина ABMLoyalty производится в конфигурационном файле системы лояльности /linuxcash/cash/conf/ncash.ini.d/abmloyalty.ini в секции [ABMLoyalty].
| Наименование | Тип данных | Возможные значение | Описание | Примечания |
|---|---|---|---|---|
serverUrl | строковый | Адрес сервера системы лояльности ABMLoyalty | По умолчанию http://127.0.0.1/ | |
timeout | целочисленный | Таймаут запроса к серверу системы лояльности ABMLoyalty | По умолчанию 10 секунд. | |
user | строковый | Имя пользователя для авторизации в системе лояльности ABMLoyalty | ||
password | строковый | Пароль пользователя для авторизации в системе лояльности ABMLoyalty | ||
smsVerification | логический |
| SMS-верификация при списании баллов в системе лояльности ABMLoyalty | По умолчанию false. |
| currencyName | строковый | Наименование валюты бонусов | По умолчанию "BON". | |
| bonusRatio | строковый | Отношение бонусных единиц к денежным | Первый параметр – бонусы, второй – деньги. |
[ABMLoyalty] ; Настройки плагина системы лояльности ABMLoyalty ; Адрес сервера ABMLoyalty ; Значение по умолчанию http://127.0.0.1/ ;serverUrl = "http://127.0.0.1/" ; Таймаут запроса к серверу ABMLoyalty ; Значение по умолчанию 10 ;timeout = 10 ; Имя пользователя для авторизации на сервере ; Значение по умолчанию "" ;user = "" ; Пароль пользователя для авторизации на сервере ; Значение по умолчанию "" ;password = "" ; СМС-верификация при списании баллов ; Значение по умолчанию false ;smsVerification = false ; Наименование валюты бонусов ; По умолчанию "BON" ;currencyName = "BON" ; Отношение бонусных единиц к денежным ; Первый параметр - бонусы, второй - деньги ; По умолчанию "1:1" ;bonusRatio="1:1"
Бонусная программа ABMLoyalty
Для использования системы лояльности ABMLoyalty необходимо:
- Завести группу бонусных карт с типом карты ABMLoyalty (БД
DictionariesтаблицаCardgroupполеcardmode = 12). - Активировать модуль системы лояльности ABMLoyalty (см. Конфигурирование модуля ABMLoyalty).
- Настроить подключение к серверу ABMLoyalty, указать логин и пароль системы лояльности (см. Конфигурирование модуля ABMLoyalty).
- Перезапустить кассовую программу.
- Применить бонусную карту в чеке.
Добавление карты по номеру телефона
При использовании системы лояльности ABMLoyalty возможно добавление карты по номеру телефона. Для этого необходимо:
- Включить способ ввода "Удаленно" для группы карт (БД
DictionariesтаблицаCardgroupполеinputmask = 16). - Настроить клавишу "Добавить карту" с командой
COMMAND_CARDи параметрами:cardNumberTypeсо значением 1,cardModeсо значением 12.
При использовании команды на экран будет выведен диалог для ввода номера телефона, по которому будет произведен поиск карт на сервере системы лояльности ABMLoyalty.
Если к номеру телефона привязана:
- одна карта – она автоматически добавляется в чек;
- две и более карт – на экран будет выведен диалог для выбора карты. После подтверждения выбора карта добавится в чек.
Если при запросе к серверу лояльности ABMLoyalty карта клиента не будет найдена, то на экран будет выведена ошибка. Сервер системы лояльности возвращает следующие ошибки поиска:
- "Пользователь не найден" – возникает в случае отсутствия указанного номера телефона на сервере системы лояльности ABMLoyalty;
- "Нет карт для телефона <номер_телефона>" – возникает в случае, когда карта для номера телефона отсутствует.
Продажа
Для начисления и списания баллов с бонусной карты необходимо добавить карту системы лояльности ABMLoyalty в чек. Обращение к серверу для получения суммы доступных баллов выполняется при оплате баллами.
Списание баллов
Списание баллов выполняется по инициативе кассира. Потраченные баллы фиксируются в кассовой программе как скидка на чек. Для списания можно использовать все доступные баллы.
Начисление баллов
Начисление баллов происходит на стороне сервера системы лояльности ABMLoyalty после закрытия чека.
Возврат
В системе лояльности предусмотрена возможность возврата списанных ранее баллов.
SMS-верификация
При использовании системы лояльности ABMLoyalty возможно использование SMS-верификации при списании баллов. Данное поведение регулируется параметром smsVerification в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/abmloyalty.ini в секции [ABMLoyalty].
Если настройка smsVerification включена, то для оплаты баллами запрашивается код, система лояльности отправляет sms-сообщение с кодом верификации на номер телефона клиента, к которому привязана карта:
- при вводе верного кода происходит списание бонусов с карты;
- при вводе неверного кода на экран будет выведено сообщение "Неправильный код".
Отношение бонусных и денежных единиц
При использовании системы лояльности ABMLoyalty возможно задавать отношение бонусных единиц к денежным при списании и начислении баллов. Данное поведение регулируется параметром bonusRatio в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/abmloyalty.ini в секции [ABMLoyalty].
Если настройка bonusRatio включена, то в диалоге оплаты баллами все суммы отображаются в бонусных баллах. После подтверждения списания баллов суммы начисленных и списанных баллов отображаются в денежном эквиваленте. При закрытии чека в БД кассы записываются суммы начисленных и списанных бонусов в денежном эквиваленте.
Для корректной работы кассы необходимо, чтобы настройки отношения бонусных и денежных единиц в кассе и на сервере системы лояльности ABMLoyalty совпадали.
Отправка чеков
При закрытии любого чека продажи или возврата информация о данном чеке будет отправлена на сервер системы лояльности ABMLoyalty.
Режимы работы
В зависимости от доступности сервера системы лояльности ABMLoyalty операции могут производиться в режиме online или offline. При этом:
- запрос информации о карте и списание бонусных баллов всегда производятся online;
- возврат начисленных/списанных бонусов всегда производится offline через очередь Artix-Queue;
- операции по начислению и отмене начисления производятся online. Если сервер лояльности недоступен, то операции производятся в режиме offline.