External Loyalty (REST API)
Waiter позволяет работать с базой зарегистрированных гостей и пользоваться механиками лояльности и внутренних платежей при использовании на предприятии системы отличной от iikoCard5.
Работа с внешней лояльностью может быть реализована для сценариев:
чекина
чекина, чекаута и оплаты
Внешняя лояльность может поддерживать механики:
персональные скидки
подарочные блюда
бонусы
депозиты
подарочные сертификаты
Порядок действий пользователя аналогичен при использовании iikoCard 5.
Сканируемая информация может содержать не только токен или номер карты, но и какие-то расширенные сведения, за парсинг и обработку которых отвечает фронтовый плагин интегрируемой системы. Это позволяет использовать, например, динамические токены карт.
Есть урезанный вариант взаимодействия с ответом Waiter Message на привязку гостя.
Данная интеграция реализуется в виде фронтового плагина для сервиса лояльности с определенными требованиями к разработке, описанными ниже.
В случае использования интеграции лояльности на базе внешних плагинов ответственность Waiter ограничивается передачей данных отсканированного значения во внешний плагин.
Все ошибки или проблемы относительно работы с лояльностью лежат на поставщике технических решений внешней системы лояльности и решаются и устраняются этими поставщиками.
Сервисам лояльности, реализовавшим интеграцию с Waiter, мы предлагаем разместить информацию об этом на данном портале. Для этого просим предоставить следующую информацию:
Ссылка на сайт сервиса
Ссылку на инструкцию пользователя (описание работы сервиса в интеграции с Waiter)
Ссылку на дистрибутив (или на форму для запроса на установочный пакет)
Ссылку на инструкцию по установке и настройке (руководство администратора)
Контакты службы поддержки для конечных клиентов и сервисных партнеров iiko
Рекомендательно
Ссылки на маркетинговые материалы по описанию кейса интеграции
Требования интеграции к разработчикам
Для интеграции с внешними системами лояльности в плагине WaiterServer реализован ряд публичных методов для обмена данными с сервисами таких систем. В процессе взаимодействия плагин WaiterServer выступает активной стороной и инициирует запросы.
Для взаимодействия используются:
Http REST API
Поддерживают по http универсальные методы взаимодействия с плагином вейтера:
Привязка гостя к заказу
Отвязка гостя от заказа
Запрос доступных механик лояльности по заказу
Проверка работоспособности внешнего сервиса лояльности (пинг)
Возвращаемые от внешней системы данные о лояльности: остатки на персональных счетах (кошельках) гостя, специальные предложения и т.д. Не являются обязательными для работы интеграции.
Привязка гостя к заказу фронта должна быть реализована через привязку гостя БРД методами фронтового АПИ.
Вариант с привязкой гостя БРД требует от сервиса внешней лояльности обязательной реализации собственного фронтового плагина, который будет выполнять следующие операции:
получение данных о госте по токену или номеру карты от внешнего сервиса лояльности
поиск гостя в базе БРД
добавление нового гостя в базу БРД в случае его отсутствия там
привязку гостя БРД к заказу
отвязку гостя БРД от заказа
Расчет доступной суммы для оплаты бонусами и депозитом
Платежный процессор с собственными типами оплаты (только для варианта с чекаутом?)
Для потребностей настройки внешнему плагину необходимо залогировать собственные типы оплат, обрабатываемые встроенным платежным процессором, в виде имени ТО и значение GUID для ТО.
Пример:
ExternalLoyaltySystemName payment types:
Bonuses (ExternalLoyaltySystemName) - (0668e655-15a0-4b5e-ab3c-c7f7003cb8cc).
Deposit (ExternalLoyaltySystemName) - (d645d632-cd95-4d49-9974-06911a9cd314).
Для поддержки интеграции стороннему серверу системы лояльности необходимо реализовать у себя нижеперечисленные методы REST API. Рекомендуем ASP.NET использовать в качестве Web Server.
API