Введение

Для установки PayOrder необходима служба PayBillAgent: файлы PayBillAgent.exe, Settings.exe, а также драйвер терминала веб-авторизации для RK7, cvauhttp.udb.

Файлы PayBillAgent.exe, Settings.exe можно положить в любую папку, файл cvauhttp.udb перенесите в папку \RK7\base\workmods.

Дистрибутив

Дистрибутив PayBill находится на FTP ftp://ftp.ucs.ru/rk7/INSTALL/RK7_PayOrder/
Логин и пароль — ID и пароль дилера.

Настройка в RK7 

Настройка RK7 различается в зависимости от типа ресторана — в ресторанах быстрого обслуживания может быть задействован второй экран для отображение QR-кода и дальнейшего сканирования гостем.

Важно!

Для взаимодействия с системой Оплати счет

Настройка менеджерской станции для ресторанов фаст-фуд

Преднастройки:

  1. Установите актуальную версию RK7
  2. Создайте кассовый сервер
  3. Пролицензируйте систему
  4. Создайте кассу.

Дистрибутивы SecondScreen скачайте из папки на FTP ftp://ftp.ucs.ru/rk7/INSTALL/RK7_XMLSecondScreen/. Необходимы только ядро SSXMLAIR_core_1.0.0.143.rar и один из дизайнов для печати QR-кода ftp://ftp.ucs.ru/rk7/INSTALL/RK7_XMLSecondScreen/SSXMLAIR_Designs/.

Содержимое архивов SSXMLAIR_core_1.0.0.143.rar и universal_vertical_design_QRCode.rar перепишите в ..\RK7\bin\win.  Перезапустите сервер справочников. 

В настройках кассы добавьте в устройства интерфейс Second Screen with XML interface, в свойствах интерфейса задайте имя лога и уровень логирования:

Этого достаточно для запуска, в случае необходимости дополнительной настройки Second Screen читайте в статье Настройка второго экрана.

В случае использования одного монитора с низким разрешением и для кассы, и для Second Screen, в RK7\bin\win\SecondScreen.ini настройте в секции [SCREENPOSITION] параметр MainLeft таким образом, чтобы QR-код был полностью виден на экране:

  • Для экранов 1920х1080 оставьте значение по умолчанию — 1024
  • Для экранов 1440х900 значение должно быть от 400 до 500.

Настройте положение окна кассы RK7 — перенесите окно из центра экрана в левый верхний угол:

Далее необходимо создать валюту для использования веб-терминалом:

Обязательно включите в свойствах валюты чек-бокс Использовать терминал, и выберите интерфейс 101 Кредитные карты. Для удобства можете настроить автозаполнение суммы. 

Далее нужно добавить кассовому серверу стандартный XML интерфейс:

Настройки XML можно оставить стандартные.

Добавьте кассу в устройства HTTPs auth terminal:

В настройках драйвера задайте адрес и порт, по которому касса будет обращаться к терминалу авторизации.

Далее добавьте кассе новый принтер и свяжите его с HTTPs auth terminal:

И укажите его в свойствах кассы для печати на терминале авторизации:

Настройка сервера PayBill для ресторанов фаст-фуд

Далее необходимо настроить сервер PayBill. 

Для этого запустите файл settings.exe и укажите следующие настройки:

В блоке Схема работы выберите вариант Фастфуд.

В блоке Веб-терминал укажите порт, указанный на кассе в устройстве HTTPs auth terminal.

В блоке Связь с сервером «Оплати счет»:

  • Полный URL для связи с сервером оплаты — http://dev.intervale.ru:48080/payuprouter/packet. Если данный URL будет недоступен — запросите актуальный URL у представителя PayUp.
  • Полный URL для сверки с сервером оплатыhttp://sag-entry-preprod.intervale.ru/payup-router/reconcile. Если данный URL будет недоступен — запросите актуальный URL у представителя PayUp.

Параметр Authorization заполняется после получения его от сотрудников PayOrder.
Для получения значения Authorization необходимо предоставить код ресторана из RK7 и GUID кассового сервера.

Нажмите на кнопку Валюты и настройте сопоставление валют — валюте Рубли в RK7 сопоставить валюту, в которой будут производится операции на сервере оплат. Для добавления нового сопоставления нажмите правой кнопкой мыши на поле с валютами на выберите пункт Добавить. Согласно международному стандарту ISO 4217 рублям соответствует код 810.

По окончанию всех настроек нажмите на кнопку Сохранить и выйти. На диске должен сформироваться файл settings.dat.
После этого запустите PayBillAgent.exe /install, он установится службой, которую нужно запустить:

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

На этом настройка завершена, система готова к работе.

При расчете заказа на кассе при выборе валюты необходимо выбрать созданную ранее валюту, связанную с веб-терминалом. Тогда касса, показав на втором экране QR-код заказа, будет ожидать, пока гость отсканирует QR-код и оплатит счет в мобильном приложении. Затем будет напечатан чек.
Ссылку на мобильное приложение для оплаты нужно получить у представителей PayUp. Тестовое мобильное приложение для препродакшн стенда PayUp доступно на http://goo.gl/lgNgFr

Настройка для классического ресторана

Так же доступен другой режим работы PayOrder. В этом режиме не используется модуль второго экрана, его файлы можно не устанавливать в каталог RK7 и драйвер на кассу можно не добавлять — то есть пропустить пункт 1 инструкции. В этом режиме вместо отображения QR-кода на экране покупателя, распечатывается пречек c QR-кодом и передается гостю для оплаты. После оплаты гостя счета через мобильное приложение автоматически распечатывается чек.

Настройка сервера PayBill для классического ресторана

Ззапустите файл settings.exe и укажите следующие настройки:

  • В блоке Схема работы выберите значение Классический ресторан 
  • В блоке Связь с кассой RK7 внесите адрес кассового сервера и порт XML интерфейса, ранее добавленного на кассовый сервер:

Настройте пользователя, от имени которого будут проходить оплаты из мобильного приложения.
Рекомендуем создать нового сотрудника, наделить его необходимыми правами, и настроить соответствие:

Далее настройте станцию, на которой будет происходить печать чека при оплате через PayUp:

Настройте новую валюту в RK7. Обратите внимание, что настройка Использовать терминал у валюты выключена: оплата через библиотеку веб-терминала используется только в режиме фастфуда.
Нажмите на кнопку Валюты, чтобы настроить сопоставление валют. Валюте, в которой будут учитываться операции по оплате через PayUp в RK7, необходимо сопоставить валюту, в которой будут производится операции на сервере оплат. Для добавления нового сопоставления нажмите правой кнопкой мыши на поле с валютами на выберите пункт Добавить. Согласно международному стандарту ISO 4217 рублям соответствует код 810:

Настройки в РК7 для классического ресторана

Настройте печать пречека с QR-кодом в RK7. Для этого в настройках RK7 в справочнике Документы и макеты необходимо создать новый макет пречека копированием существующего. Пречеки находятся в группе макетов Расчеты с покупателем. Добавьте к подвалу нового макета memo поле со строкой <qrcode [Заказы.OrderURL]>:

Печать QR-кодов поддерживается драйвером принтеров Epson из версии RK 7.05.04.

Драйвер — файл CASHSTAT.UDB — возьмите из дистрибутива RK 7.05.04 из папки \base\workmods и переместите в такую же папку текущей инсталляции RK7, заменив уже существующий файл. Для выполнения этой операции необходимо закрыть все приложения RK7 и остановить кассовый сервер и сервер справочников.

После замены файла добавьте порт печати и принтер Epson к кассе RK7. В свойствах порта печати настройте способ связи с принтером, настройки принтера оставьте по умолчанию. На примере ниже — настройка сетевого принтера:

Сделайте новый принтер активным:

И настройте печать пречека на этот принтер:

При некачественной печати QR-кода принтерами EPSON и TM-200 рекомендуем в настройках драйвера принтера включить параметр Send by lines:

Настройка режима Классический ресторан закончена.

Мобильное приложение используется то же самое, что и для режима Фастфуд, но интерфейс кассы теперь не ожидает действий гостя. Кассир после печати пречека может продолжить работу с другими заказами.
Как только счет будет оплачен покупателем, касса RK7 автоматически печатает чек.

Коды ошибок

Ошибки системы r_keeper 7

Для ошибок на стороне r_keeper зарезервирован диапазон кодов ошибок от 100 до 199:

Код ошибки

Описание

100

Ошибка парсинга JSON.

101

Некорректный тип запроса

102

Неверный формат qr кода (передается только в getbill, в параметре id)

103

Неверный код объекта (сопоставление идет в qr коде и нашем сервере)

104

Неверный кассовый сервер (сопоставление идет в qr коде и нашем сервере)

105

Не удалось найти заказ

106

Заказ был завершен

107

Неизвестная валюта (Предварительно нужно настроить сопоставление)

108

Не совпали суммы на этапе checkpayment

109

Не удалось заблокировать заказ (checkpayment)

110

Не удалось разблокировать заказ (cancelpayment)

111

Ошибка оплаты (registerpayment)

112

Частный случай ошибки оплаты (не хватило средств на оплату)

113

Ошибка связи с кассовым сервером

114

Другие виды ошибок, которые вернул r_keeper

151

внутренняя ошибка связи с лок.бд

199

другие типы ошибок, см лог на точке

Ошибки системы «Оплати счет»

Код ошибки

Краткое описание

Комментарий

0

OK

Передается при регистрации успешного платежа.

1

AUTHORIZATION_REJECTED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция авторизации отклонена банком (ResponseCode<>0)

2

AUTHORIZATION_FAILED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция авторизации не выполнена (например, не удалось установить соединение с процессингом)

3

PREAUTHORIZATION_REJECTED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция преавторизации отклонена банком (ResponseCode<>0). Для платежной схемы Банка Москвы

4

PREAUTHORIZATION_FAILED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция преавторизации не выполнена (например, не удалось установить соединение с процессингом). Для платежной схемы Банка Москвы

5

CREDIT_REJECTED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция кредитования отклонена банком (ResponseCode<>0)

6

CREDIT_FAILED

Передается при отмене платежа по причине неуспешного взаимодействия с Банком – операция кредитования не выполнена (например, не удалось установить соединение с процессингом)

7

ESPP_REJECTED

Передается при отмене платежа по причине неуспешного взаимодействия с билингом оператора – отказ ЕСПП на списание средств

8

ESPP_FAILED

Предается при отмене платежа при возникновении ошибки при взаимодействии с биллингом

9

ESPP_SEND_FAILED

Передается при отмене платежа по причине неуспешного взаимодействия с билингом оператора – ошибка отправки сообщения в ЕСПП

10

ESPP_TIME_OUT

Передается при отмене платежа по причине неуспешного взаимодействия с билингом оператора – таймаут ожидания ответа от ЕСПП

11

CARD_POOL_EMPTY

Передается при отмене платежа по причине ошибки работы с пулом предоплаченных карт – пул предоплаченных карт пуст

12

PAYMENT_TERMINAL_NOT_FOUND

Передается при отмене платежа по причине ошибки работы с платежным терминалом – платежный терминал не найден. (например не настроен платежный терминал)

13

CREDIT_TERMINAL_NOT_FOUND

Передается при отмене платежа по причине ошибки работы с кредитным терминалом – кредитный терминал не найден. (например, не настроен кредитный терминал)

14

CPA_FAILED

Передается при отмене платежа при ошибке взаимодействия с Провайдером на фазе проверки возможности выполнения платежа

15

CLIENT_LOST

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

16

USER_CANCEL

Передается при отмене платежа по причине отказа пользователя от подтверждения платежа

17

PAYMENT_FAILED

Передается при отмене платежа при возникновении ошибки в платежной схеме

18

LIMIT_EXCEED

Передается при отмене платежа по причине отклонения из-за лимита на проведение платежа

19

OPERATOR_CANCEL

Передается при отмене платежа по причине отмены платежа оператором

-1

SYSTEM_ERROR

Передается при отмене платежа по причине возникновения системной ошибки в ПМК