Запрос позволяет с помощью API-интерфейса на основании данных во внешней системе забронировать столик в Presto.
Метод запроса: POST
Адрес запроса: https://api.sbis.ru/retail/order/create
Структура запроса
Параметр | Тип | Описание |
product* | string | Постоянное значение параметра — «restaurant» |
pointId* | string | Идентификатор точки продаж, который вренулся в результате запроса «Получить точку продаж» |
comment | string | Примечание к заказу |
customer* | array[{...}] | Информация о покупателе |
datetime* | string | Дата и время, на которое создается заказ, в формате гггг-мм-дд чч:мм:сс |
nomenclatures | array[{...}] | Номенклатура заказа. Кроме указанных обязательных полей, необходимо указывать один из трех идентификаторов номенклатуры (externalId, id или nomNumber), также желательно указывать hierarchicalId. |
booking | array{...} | Информация о бронировании столика |
Структура «customer» | ||
externalId | string | Данные покупателя |
name* | string | |
lastname | string | |
patronymic | string | |
string | ||
phone* | string | |
Структура «nomenclatures» | ||
externalId | string | Внешний идентификатор номенклатуры |
id | integer | Сквозной идентификатор внешней системы |
nomNumber | string | |
count* | number | Количество позиций |
cost | number | Цена за одну позицию. Вы можете указать цену, отличную от той, что установлена в СБИС |
name | string | Наименование позиции |
modifiers | array[{...}] | Информация о модификаторах |
Структура «booking» | ||
woTable | boolean | Принимает значение «true», если столик выбирает администратор, а не клиент. При этом указывать зал и стол не нужно |
visitors* | integer | Количество посетителей, на которое бронируется столик |
hall* | integer | Идентификатор зала, в котором бронируется столик. Параметр возвращается в результате запросов «Получить точку продаж» и «Получить время бронирования» |
table | integer | Идентификатор бронируемого столика, который возвращается в запросе «Получить список столиков» |
Структура «modifiers» | ||
id* | integer | Внутренний идентификатор модификатора. Отсутствует у модификаторов-заметок |
hierarchicalId* | integer | Идентификатор в иерархии |
count* | integer | Количество позиций модификатора |
cost | number | Цена модификатора |
name | string | Название блюда |
* — обязательный параметр.
Пример запроса
*.php
*.php
*.py
*.py
В качестве примера используется функция «cURL».
В качестве примера используется библиотека «Requests».
С помощью API-запросов вы можете получить информацию о бронировании, узнать статус, обновить, удалить или отменить бронирование.
- Запросить информацию о заказе:
- метод: GET
- запрос: https://api.sbis.ru/retail/order/{externalId}, где {externalId} — идентификатор заказа.
- Изменить бронирование:
- метод: PUT
- запрос: https://api.sbis.ru/retail/order/{externalId}/update, где {externalId} — идентификатор заказа. Отправьте всю информацию по заказу вместе с измененными данными.
- Отменить бронирование:
- метод: PUT
- запрос: https://api.sbis.ru/retail/order/{externalId}/cancel, где {externalId} — идентификатор заказа.
- Узнать статус бронирования:
- метод: GET
- запрос: https://api.sbis.ru/retail/order/{externalId}/state, где {externalId} — идентификатор заказа.
- Запросить ссылку на оплату бронирования. Для этого должны быть включены интернет-платежи.
- метод: GET
- запрос: https://api.sbis.ru/retail/order/{externalId}/payment-link, где {externalId} - идентификатор заказа.
В ответ вы получите
Имя поля | Тип | Описание |
state | integer | Статус заказа на бронирование |
payments | array[{...}] | Информация об оплате |
Структура «payments» | ||
amount | number | Сумма, на которую была оплата |
paymentType | string | Тип оплаты |
isClosed | boolean | Принимает значение «true», если оплата прошла корректно |
errorMessage | string | В случае некорректной оплаты выводится описание ошибки |
Параметры запроса
Имя поля | Тип | Описание |
externalId * | string | Идентификатор брони |
shopURL* | string | URL, с которого производится вызов |
successURL | string | URL для перехода при успехе |
errorURL | string | URL для перехода при неудаче |
В ответ вы получите
Параметр | Тип | Описание |
link | string | Ссылка на заказ |
Примеры
Бронирование столика
Получение статуса брони
Получение ссылки на оплату
Нашли неточность? Выделите текст с ошибкой и нажмите ctrl + enter.