Модуль Joys поддерживает работу как по пречеку, так и по быстрому чеку.
В случае, когда ресторация работает по пречеку, с подключением Joys на каждом пречеке печатается QR Joys.

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

Поставка

Модуль представляет из себя сборку FarCards версии 6.04 со включенной в комплект библиотекой joyslib.dll, реализующей интеграцию r-keeper v7.6.X, а так же утилитой POSGen.exe, предоставляющей интерфейс для генерации POS Токенов JOYS и назначения их на кассовой станции rk7.

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

Один модуль FarCards может обслуживать один кассовый сервер при условии доступности в локальной сети. Количество кассовых станций кассового сервера не ограничено логикой интеграции.

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

Все настройки выполняются на станции менеджера rk7 (rk7man.exe)

Общая смысл настройки следующий:

  1. Связать кассовый сервер с FarCards посредством встроенного закрытого протокола.
  2. Настроить валюту JOYS DIGITAL для закрытия заказов, оплаченных через Joys.
  3. Указать валюту из п.2 в настройках joyslib.dll
  4. Добавить в макет печати пречека QR-код, настроить получение данных для кода из joyslib.dll
  5. Сгенерировать POS Токен Joys для кассовой станции кассового сервера, растиражировать POS Token для всех кассовых станций, участвующих в приеме платежей Joys путем правки конфигурации joyslib.dll

Настройки R-Keeper

Добавить интерфейс для кассового сервера

На станции менеджера перейти в справочник Сервис > кассовые станции и устройства.

В справочнике выбрать кассовый сервер, для которого настраивается ПО, перейти на вкладку “Устройства”, нажать ПКМ на пустом месте, выбрать пункт “Список драйверов”

В открывшемся окне найти интерфейс “PDS interface” и перетаскиванием добавить его в устройства кассового сервера.

В настройках интерфейса в поле “PDS Server Name” указать сетевое имя будущего сервера FarCards (FARCARDS.ini)

ВАЖНО

Установить значения параметров

Pass All Receipts XML data = Yes, always (fail if imposible)

Pass All Bills XML data = Yes

Настроить логический интерфейс

Перейти в справочник Сервис > Интерфейсы

Создать новый интерфейс с названием JOYS DIGITAL, в группе параметров “Файлы библиотек (DLL)” во вкладке с названием ресторана установить для каждого кассового сервера устройство, созданное в предыдущем пункте (PDS interface #6)

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

В случае использования модуля в сети ресторанов, где к одному серверу

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

Настроить валюту

В справочнике Деньги -> Валюты создать новую группу валют JOYS DIGITAL, в ее свойствах указать Способ оплаты - Безналичный, Тип фискальности - Фискальный чек *

Затем во вкладке “Валюты” создать новую валюту JOYS DIGITAL, из дополнительных настроек только указать параметр Автозаполнение - Вся сумма + подтверждение для удобства работы кассира.
Если все сделано правильно, тип фискальности унаследуется от группы валют.

*Типы фискальности доступны только при входе в менеджерскую станцию с учетной записью дилера.

Настройка пречека с QR-кодом

Настройка макета

Откройте справочник Настройки -> Печать -> Документы и макеты

В открывшемся окне найдите группу документов Расчет с покупателем -> Пречек

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

В открывшемся окне на вкладке “Свойства” откройте меню “Переменные”

Добавьте новую переменную с именем “joys” и типом “string”

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

В макете пречека найдите свободное место, кликните на нем правой кнопкой мыши и выберите пункт “Создать бенд”, затем выберите тип бенда - “виртуальный бенд”

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

Выберите пункт меню “создать мемо” (кнопка с листом) и очертите новое текстовое поле внутри созданного бенда

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

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

<QRProperties 100;100%>

<QRCode [joys]>

QRProperties - тег задает свойства QR кода.
Первое число - высота QR кода в пикселах, второе - уровень коррекции в процентах (0-100). Задайте значения таким образом, чтобы выдаваемый на печать QR код был компактным - это обеспечит его эффективное считывание Joys Wallet.

QRCode - выводит на печать непосредственно QR-код. В значение тега мы передаем ранее созданную строковую переменную “joys” обязательно обрамив ее в квадратные скобки.

В нижнюю часть memo вставьте следующий скрипт:

if httpget('http://192.168.1.7:16220/getinvoicedata?check='+[GUID],joys) <> 0 then

memo7.Visible:=false

else

memo7.Visible:=True;

Где 192.168.1.7:16220 замените на IP адрес компьютера**, где будет установлен FarCards, и порт его http-сервиса (см подробнее в настройках FarCards)

memo7 замените на название Вашего мемо (будет отображено в заголовке формы редактирования содержимого memo)


**Адрес 127.0.0.1 не будет работать.

Смысл в том, что перед печатью из пречека выполняется запрос в joyslib.dll с guid текущего чека, а в ответ возвращается ИД созданного ранее инвойса joys*** и попадает в переменную “joys”, затем значение этой переменной выводится на печать в QR коде.


*** Инвойс - это есть счет, который создается в Joys, и идентификатор (ИД) которого печатается на пречеке для последующей оплаты с помощью кошелька Joys Wallet

После сделанных изменений в содержимом memo нажмите кнопку “Ок” и сохраните изменения в макете пречека.

Применение макета

Перейдите в справочник Настройки -> Печать -> Схемы печати

Выберите действующую схему печати (Обычно - Основная)

В списке ее документов удалите существующий Пречек (ПКМ -> Удалить)

Затем через ПКМ выберите пункт “Добавить представление документа”

В открывшемся уже знакомом окне перейдите в группу Расчет с покупателем -> Пречек и выберите пречек, который вы отредактировали ранее, нажмите кнопку “Ок”

Настройки FarCards

Отредактировать файлы настроек

В файле FARCARDS.INI установить значение параметра NetServerName в соответствии с параметром PDS Server Name в устройстве кассового сервера PDS interface (JOYSINT)

В файле netk.ini установить любой свободный TCP порт в параметр port

В файле joyslib.ini

В секции PARAMS

JOYSURL - базовый URL сервиса JOYS. Указывается БЕЗ слеша на конце

По-умолчанию JOYSURL=https://api.v2.v3.joys.digital/payment/v1

LOCALPORT - порт локального http сервиса для печати QR-кодов порт должен быть свободным и открытым в брандмауэре windows

JOYSPAYMENT - КОД валюты JOYS DIGITAL из справочников r-keeper


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

В этой секции уже указан X-Joys-Application-Token строкой вида:

X-Joys-Application-Token = apptoken *токен предоставленный joys*

X-Joys-Authorization и X-Joys-Idempotent-Key будут добавляться в процессе работы интеграции


Секции POSTOKEN и TERMID используются для назначения POS Token, когда используется более чем одна кассовая станция.

Используйте POSGen для получения POS Токена JOYS для одной кассовой станции. Выбрать первую станцию по списку, ввести номер терминала и получить POS Token. Статус токена должен быть "activated"
Далее полученный POS Token необходимо присвоить для всех станций, выполняющих обслуживание гостей.


Для этого необходимо отредактировать конфигурационный joyslib.ini файл следующим образом:

[POSTOKEN]
1=token 124253645474859589
2=token 124253645474859589

[TERMID]
22222=token 124253645474859589

где:
значения 22222=token 12425364547485958 и 1=token 124253645474859589 - были получены через утилиту POSGen
А значение 2=token 124253645474859589 - создано вручную в конфигурационном файле.
То есть, необходимо скопировать номер POS Token для всех станций. Каждая станция при обращении к платежному сервису Joys будет сообщать один и тот же POS Token.

Далее необходимо перезапустить FarCards.

В секции LOGS

LogLevel - фильтр для логирования. Больше значение - подробнее логи.

0 - Только критические ошибки

1 - Ошибки, предусмотренные логикой

2 - Шаги алгоритма

3 - Содержимое запросов и ответов

Важно: работа утилиты POSGen не логируется.

OldLogs - возраст старых .log файлов в днях.

Старые .log файлы удаляются автоматически в процессе работы модуля.

LogMem - логировать количество занимаемой модулем FarCards оперативной памяти (1-да,

0-нет)

Настройки для Быстрый чек

Для работы с Быстрым чеком необходим 2D сканер.

Сканер должен быть подключен к кассовым станциям в режиме эмуляции COM

порта (Virtual COM). (Инструкцию по переключению сканера в режим COM

порта предоставляет производитель оборудования.)

Пример, для перевода 2D Сканера штрих-кодов Motorola DS4208 в режим

эмуляции COM порта (Virtual COM), достаточно отсканировать следующий код

Если у вас нет сканера штрихкода, вы можете оставить заявку на сканер на почте support@joys.digital , и он будет предоставлен вам на выгодных для вас условиях.

Доп.настройка физического интерфейса

1. Перейти в справочник Сервис - Станции и устройства

2. Найти PDS interface, который был ранее настроен для работы с FarCards и

joyslib

3. Установить параметр Look Up Card By Mail Addr в значение Yes, error on not

found

4. Перезапустить кассовый сервер

Настройка MCR алгоритма

1. Перейти в справочник Сервис - Обработка сигналов устройств - MCR

Алгоритмы

2. Создать новый MCR алгоритм

3. Настроить следующим образом:

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

Типы устройств:[Штрих код]

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

Объект: *Логический интерфейс JOYS DIGITAL*

Остальные параметры оставить по-умолчанию

4. В поле Скрипт, под строкой-заголовком функции, вставить следующее

содержимое:

begin

Result := pos('JW', Parameter) = 1;

end;

Настройка драйвера сканера для кассовой станции

1. Перейти в справочник Сервис - Станции и устройства

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

вкладку Устройства

3. Через ПКМ вызвать Список драйверов

4. Выбрать тип устройств - I/O Порт, выбрать устройство COM for Windows,

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

5. Выбрать тип устройств Считыватель штрих-кодов, перетаскиванием

добавить в только что добавленному COM for Windows устройство COM Barcode reader

6. В свойствах устройства COM for Windows указать номер COM порта сканера в

текстовом виде в поле DeviceName

Остальные параметры оставить без изменений.

ВАЖНО: В некоторых версиях RK7 в данном пункте не работают номера портов начиная с COM10 включительно. Изменить номер COM порта в windows можно в диспетчере устройств.

7. У устройства COM Barcode Reader в параметре Character set указать

значение Any printable (0x20-0xFF)

8. Перезапустить кассовую станцию.

Чек-лист

Давайте проверим, что мы сделали.

  1. Добавили интерфейс для кассового сервера.
  2. Настроили логический интерфейс.
  3. Настроили валюту.
  4. Настроили пречек: макет и его применение.
  5. Выполнили настройки FarCards - joyslib.ini , установили максимальное логирование, через POSGen получили POS token и прописали его для всех кассовых станций.
  6. Для Быстрого чека: настроили физический интерфейс, MCR алгоритм, настроили драйвер сканера.
  7. Для Быстрого чека: настроили сам сканер в режим эмуляции CпортаOM

Тестовый запрос к платежному сервису

  • Пречек: создать заказ, напечатать пречек. На пречеке есть QR-код Joys.
  • Быстрый чек: создать чек, отсканировать QR, приведенный ниже. Получить уведомление, что оплата завершена с ошибкой или указанный кошелек не найден.
  • направить на e-mail support@joys.digital файл лога. Расположен в каталоге /JOYSFC/Log/joyslib

Отключение ресторана от Joys Digital

Для отключения необходимо:

1. Удалить валюту JOYS DIGITAL (ПКМ -> Удалить)

2. Удалить логический интерфейс JOYS DIGITAL

3. Удалить интерфейс PDS Interface из кассового сервера

4. Перезапустить кассовый сервер

5. Заменить измененный макет пречека на оригинальный в схеме печати

6. Отозвать POS Token через POSGen, вытереть значение терминала и Pos Token из joyslibdll

7. Удалить службу FarCards (если была установлена для подключения Joys)

8. Удалить сборку FarCards с компьютера (если была установлена для подключения Joys)

Полезные ссылки

Как настроить кассовую станцию

R-Keeper: Когда что-то пошло не так

Как принять платеж в R-Keeper

Вы нашли ответ?