ru

API для виджетов бронирования на сайте для Shelter CLOUD

Описание

API предназначено для работы виджета бронирования Shelter Cloud версии v2.

Все методы требуют указания токена, который можно взять в личном кабинете на вкладке "Онлайн v2".



Общий принцип работы

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

Далее оно производит вызов метода getVariants, получает доступные вариации, отображает пользователю.

Пользователь выбирает нужный и переходит к заполнению данных о гостях и выбору способа оплаты. При этом разрешённые способы оплаты запрашиваются в методе getPaymentOptions.

После этого делается запрос на создание бронирования в метод putOrder. В ответ придёт информация о созданном бронировании, в том числе ссылка на оплату (при необходимости).

Если необходимо получить детали заказа, их можно запросить через метод getOrder.

Коллекция Postman во вложении:

Примеры

POST Найти варианты размещения (getVariants)

https://pms.frontdesk24.ru/api/online/getVariants

Метод производит поиск и выдаёт варианты, по которым есть наличие мест и цены на запрошенные даты и число гостей.

Результат - массив, содержащий другие массивы. Порядок следования обязателен к соблюдению.

Система сама определяет, какие номера подходят для указанного числа гостей и как рассадить гостей.

Номер считается подходящим, если число основных и доп.мест в нём больше либо равно запрошенному. Сначала занимаются основные места, потом доп.места, при этом гости рассаживаются начиная со взрослых. Например, если в номере 2 основных места и 1 дополнительное и поиск делается на 1 взрослого, 1 ребёнка и 1 младенца - на основные места будут посчитаны взрослый и ребёнок, а младенец будет определён на дополнительное место. 

Пример в архиве:


POST Получить параметры отеля (getHotelParams)

https://pms.frontdesk24.ru/api/online/getHotelParams

Возвращает параметры виджета и справочники.

Пример в архиве:



POST Получить способы оплаты (getPaymentOptions)

https://pms.frontdesk24.ru/api/online/getPaymentOptions

Пример в архиве:


POST Создать бронирование (putOrder)

https://pms.frontdesk24.ru/api/online/putOrder

Создаёт бронирование.

Пример в архиве:

Возможные проблемы и их решение 

Проблема 1: В ответе на запрос выводится пустой массив данных. Информация предоставлена на примере использования метода getVariants.



Решение: Проверить на сайте, есть ли в модуле бронирования варианты размещения на даты, указанные в запросе. Если сайт отсутствует, либо модуль онлайн бронирования не установлен, то можно произвести проверку через автосайт: 

 - Для этого переходим в Shelter CLOUD

 - Заходим в настройки, нажав по имени пользователя в правом верхнем углу экрана. 

 - Выбираем раздел "Онлайн для сайта v2.0". 

 - Проматываем страницу вниз до раздела "Автосайт". 

 - Заполняем поле "синоним отеля для ссылки", это необходимо для формирования страницы с модулем онлайн бронирования. 

 - Переходим по ссылке.



 - Видим, что в указанный период, доступные номера отсутствуют. Именно поэтому запрос выдает пустой массив данных. Решением может быть:

    1) Проверить, что модуль онлайн бронирования приобретен и есть в тарифе Shelter CLOUD.

    2) Проверить, что категории и тарифы настроены для выгрузки онлайн.

    3) Проверить, что для тарифов и категорий не выставлены ограничения.

    4) Проверить, что в тарифах выставлены цены на запрашиваемый период.

    5) Указать даты, в которые есть доступные варианты размещения.

 


Проблема 2: Некорректные данные в запросе. Информация предоставлена на примере использования метода getVariants. Используемый браузер - Google Chrome.



Решение: Необходимо получить правильный пример запроса при использовании метода getVariants. Для этого:

 - Переходим в модуль бронирования на сайт или автосайт.

 - Открываем консоль (инструменты разработчика).

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



 - В консоли переходим в раздел "Сеть". Выставляем параметр "Fetch/XDR" если он не выставлен.

 - Находим запрос getVariants.

 - На вкладке "Заголовки" - "Общие" видим URL и метод.



  

 - На вкладке "Полезная нагрузка" - "Посмотреть ресурс" видим тело запроса.



 - На вкладке "Ответ" видим ответ на запрос вариантов размещения.



 - Переходим в инструмент тестирования API (Postman, Bruno и т.п.)

 - Указываем URL и метод из примера на вкладке "Заголовки" - "Общие".



 - Копируем тело запроса из вкладки "Полезная нагрузка" - "Посмотреть ресурс".

 - Выполняем запрос и получаем ответ.



 - Теперь можно сгенерировать код.


Оставьте заявку

Задать вопрос