На главную

Настройка интеграции

Для интеграции с системой Mace Loyalty потребуется установленная система r_keeper_7, PDS интерфейса на кассовом сервере, FarCards со специальной DLL от Mace Loyalty и системная служба обработки карт Mace Loyalty.

Перед тем как перейти к настройке, установите Microsoft Visual C++ 2015 (x86). Файл установки входит в архив с модулем, предоставляемый Mace Loyalty.

Настройка в менеджере RK7

В созданном в ресторане MIDSERVER (Сервис → Станции и Устройства) в устройствах подключите драйвер интерфейса PDS interface (PDS интерфейсов может быть несколько, каждый может ссылаться на свою систему лояльности). Обязательно у драйвера укажите PDS Server Name. Остальные настройки драйвера можно оставить по-умолчанию.

Подключение PDS интерфейса в r_keeper для системы лояльности

Привяжите драйвер к интерфейсу (Сервис → Интерфейсы). Интерфейс можно использовать существующий (например, "Персональная дисконтная система (ПДС)") или создать свой MACELOYALTY  как на картинке. У интерфейса включите следующие параметры:

  • Общее имя DLL: pdsempty.dll

Привязка драйвера к интерфейсу лояльности в r_keeper

Создайте MCR алгоритм (Сервис → Обработка сигналов с устройств → MCR алгоритмы) для обработки считываемого QR-кода с WEB-камеры. Тип MCR алгоритма указать как "Скрипт вер. 7.0". В свойствах указать типы устройств "Бесконтактный", т.к. этот тип используется как по-умолчанию при считывании с WEB-камеры. В свойствах MCR-алгоритма указать:

  • Тип алгоритма: Скрипт вер. 7.0

  • Бесконтактный: True

  • Область: Интерфейс

  • Тип устройства в соответствии с типом устройства для считывания (как правило, камера имеет тип "Бесконтактный", а сканер штрих-кодов - "Штрих код")

  • Объект: MACELOYALTY (указываем ранее нами созданный интерфейс)

Создание MCR алгоритма в r_keeper для подлючения системы лояльности

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

function MCR1001725(DeviceSignal: Integer; DeviceIdent: Integer; var Parameter: String): Boolean;
var SCode: integer;
    BaseUrl, QueryUrl, ResultQuery: string;
begin
  if pos('ML', Parameter) = 1 then 
  begin
       delete(Parameter, 1, 2);
       result:=true;
  end;
end;

Создайте MCR алгоритм для обработки ручного ввода карт с клавиатуры. Тип MCR алгоритма указать как "Префикс". В свойствах указать типы устройств "Клавиатура". В свойствах MCR-алгоритма указать:

- Клавиатура: True

 - Область: Интерфейс

- Объект: MACELOYALTY (указываем ранее нами созданный интерфейс)

- Префикс: “ML”.

Добавление префикса в MCR алгоритме для ввода карты лояльности вручную в интерфейсе r_keeper

Настройте валюту (Деньги -> Валюты) для списания бонусов с карт Mace Loyalty. Создайте валюту с типом "Платежная карта". Валюту назовите "Валюта MaceLoyalty" или просто "MaceLoyalty". У Валюты обязательно укажите следующие свойства:

  • Название: Валюта MaceLoyalty

  • Класс ставок: Национальный

  • Макс. процент: максимальный процент от общей суммы заказа, доступный для оплаты баллами (рекомендуется установить такой же, как и в Mace Loyalty).

  • Предоплаты: True

  • Не в сдаче: True

  • Без сдачи: True

  • Код транзакции: 119

  • Субсчет FarCards: 1 (или любое число от 1 до 8)

  • Интерфейс: MACELOYALTY  (ранее созданный вами интерфейс)

  • Не учитывать в потратах ПДС: True

Меню настройки платежных карт в r_keeperНастройка оплаты бонусами Mace Loyalty в r_keeper
⚠️
При использовании фискального регистратора можно выбрать один их 2 типов фискальности валюты: "Фискальная скидка" или "Суммарно с вычитанием". Про остальные настройки валюты вы можете прочитать в документации RK7.

Для отображения название системы лояльности на интерфейсе и в чеке необходимо:
Добавить скидку (Деньги -> Скидка и Наценки), указав:

  • Комб. с любой скидкой: true

  • На вручную: true

  • Код: должен совпадать с Cards.DiscountNumber из файла FARCARDS.INI. (см. пункт Настройка FarCards ниже).

  • Название: MaceLoyalty (будет отображаться в чеке и на кассе).

  • Интерфейс: MaceLoyalty.

Настройка отображения типа оплаты Mace Loyalty в r_keeper

Для считывания QR кода необходимо на кассовой станции добавить драйвер для работы с WEB камерой. Настройку свойств драйвера можно оставить по-умолчанию.

Настройка драйвера веб камеры в r_keeper

Чтобы система не открывала информацию о карте при каждом добавлении в заказ:

  1. Перейдите: Настройки → Параметры
  2. В открывшемся окне выберите:
    Все → Установочные → Связь с другими системами → Персональные карты → ПДС показывать инфо о карте
  3. В свойствах снимите галочку с пункта «Логический»
Как убрать отображение карты лояльности при каждом добавлении в заказ в r_keeper менеджер

Чтобы при добавлении карты к заказу появлялось окно выбора «Списывать бонусы» или «Накапливать бонусы»:

  1. Перейдите: Настройки → Параметры
  2. В открывшемся окне выберите:
    Все → Установочные → Параметры рабочей станции → Редактирование заказа → Расчёт/оплата заказа → Оплата платежной картой
  3. В свойствах в поле «Значение» установите «Спрашивать»

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

Настройка отображения окна подтверждения списания / начисления бонусов в интерфейсе к_keeper менеджер

Настройка FarCards

Настройка модуля

У компании Mace Loyalty необходимо получить файлы для сборки сервиса FARCARDS. Основным файлом запросов к системе лояльности является файл http_ext_dll.dll, который подгружается программой ретранслятором FARCARDS.EXE. Все запросы DLL логируются в автоматически создаваемом каталоге "./Logs" откуда запускается Mace Loyalty.

Пропишите настройки в файле FARCARDS.ini для работы с сервисом Mace Loyalty.

[FarServer]
Type = 1
DLL = http_ext_dll.dll
Gate = 1
XMLCP = 1251
Log = 10

[LinkDLL]
1 = pds_netk

[pds_netk]
NetServerName = YOUR_PDS_SERVER_NAME
ininame = netk.ini
DebugMessages = 1

[MaceLoyaltyCRMWebAPI]
GetCardInfo = https://maceloyalty.ru/public/api/v1/cards
TransactionEx = https://maceloyalty.ru/public/api/v1/card-operations
TransactionExCancell = https://maceloyalty.ru/public/api/v1/cancel-card-operation

[Headers]
CompanyId = YOUR_COMPANY_ID
Secret = YOUR_SECRET

[Cards]
DiscountNumber = 4

[Logs]
LogLevel = 1

Где:

[FarServer]

Type = 1. Режим запуска Farcards, Тип 1 указывает что FARCARDS работает в режиме ретранслятора в стороннюю DLL.

DLL = http_ext_dll.dll. Подгружаемая DLL, которая предоставляется  Mace Loyalty

Gate = 1. Настройка для подключения к RK7. Должная соответствовать разделу LinkDLL

XMLCP=1251. Кодировка XML запросов выдаваемой для сторонней DLL.

Log = 3. Уровень логирования FARCARDS от 1 до 10.

[LinkDLL]

1 = pds_netk. Подгружаемая DLL и линк-ссылка на раздел с настройками для работы с RK7. Pds_netk и комплект рабочих файлов берется со сборки RK7.

[pds_netk]

NetServerName = YOUR_PDS_SERVER_NAME. Имя PDS интерфейса из настроек в менеджерской RK7 (PDS Server Name)

ininame = netk.ini. Наименование файла для настройки pds_netk.dll

[MaceLoyaltyCRMWebAPI]

GetCardInfo = https://maceloyalty.ru/public/api/v1/cards. Ссылка на API Mace Loyalty для получения информации о карте.

TransactionEx = https://maceloyalty.ru/public/api/v1/card-operations. Ссылка на API Mace Loyalty для проведения транзакций по карте.

TransactionExCancell = https://maceloyalty.ru/public/api/v1/cancel-card-operation. Ссылка на API Mace Loyalty для отмены транзакции по карте.

[Headers]

CompanyId = YOUR_COMPANY_ID. Идентификатор компании  для подключения к API Mace Loyalty. Передается менеджером Mace Loyalty при подключении.

Secret = YOUR_SECRET. Секретный ключ Mace Loyalty для подключения к API Mace Loyalty. Передается менеджером Mace Loyalty при подключении.

[Cards]

DiscountNumber = 4. Код нулевой скидки из RK7. Используется по-умолчанию если другие скидки не были созданы в менеджере RK7. Проверьте чтобы этот код также был прописан в созданной скидке Деньги -> Скидка и Наценки

[Logs]

LogLevel = 1. Уровень логгирования DLL от 0 до 5

Запуск модуля FarCards

Для запуска Farcards:

  • Создайте ярлык от Farcards.exe

  • Откройте свойства ярлыка и добавьте “/desktop” в поле “объект” через пробел

Настройка ярлыка ретронлятора FarCards для подключения системы лояльности к r_keeper

Запустите FarCards и проверьте, что настройки применились верно. Сделать это можно двумя способами:

  1. Просмотреть статус через интерфейс Farcards. После запуска в трее появится иконка. По двойному клику по ней откроется интерфейс, нас интересует поле Status (должно быть OK)
  2. По логам. После запуска Farcards в папке будет создан файл "Farcards.LOG". Содержание логов должно быть следующее:
12.09.25 11:08:03.406 ** Start Card Retranslator 6.04 **
12.09.25 11:08:03.406 Log = 10
12.09.25 11:08:03.421 Type: 1
12.09.25 11:08:03.421 External DLL: http_ext_dll.dll
12.09.25 11:08:04.343 call ExtD11. Init()...
12.09.25 11:08:04.343 ...completed
12.09.25 11:08:04.437 Loading Link DLL: pds_netk (pds_netk(7.45).NetKern v209)
12.09.25 11:08:04.641 Link modules loaded.

Добавление модуля в автозагрузку

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

1. Нажимите Win + R

2. Введите shell:common startup

3. Добавьте ярлык Farcards (с флагом)

После чего он будет стартовать вместе с операционной системой