Создание бронирования (Create Booking)#

Создание бронирования отеля на основе выбранного предложения.

Описание#

Эндпоинт: POST /api/hotels/create_booking

Создает бронирование с данными гостей для выбранного предложения. В ответе возвращается bookingId для последующих операций.

Использование#

Используйте этот запрос после проверки цены через /api/hotels/offer_pricing. Это ключевой шаг оформления бронирования.

Основной сценарий#

  1. Выполните поиск через /api/hotels/search
  2. Получите предложения через /api/hotels/hotel_pricing
  3. Проверьте цену через /api/hotels/offer_pricing
  4. Соберите данные гостей и контактную информацию
  5. Отправьте запрос на создание бронирования
  6. Получите bookingId для просмотра и управления

Базовый пример#

Минимальный запрос для создания бронирования:

 1{
 2  "searchId": "search-xyz789",
 3  "offerId": "offer-001",
 4  "partnerInfo": {
 5    "partnerOrderId": "ORDER-12345"
 6  },
 7  "paymentType": {
 8    "type": "online",
 9    "amount": {
10      "amount": 15000.00,
11      "currency": "RUB"
12    }
13  },
14  "guests": [
15    {
16      "firstName": "IVAN",
17      "lastName": "IVANOV",
18      "isChild": false,
19      "gender": "Male"
20    }
21  ],
22  "customer": {
23    "firstName": "Ivan",
24    "lastName": "Ivanov",
25    "email": "ivan@example.com",
26    "phone": "+79991234567"
27  }
28}

Ответ содержит:

1{
2  "bookingId": "019a0c82-5d2b-7a5e-84fe-56357a57df66",
3  "supplierOrderId": "SUP-789",
4  "partnerOrderId": "ORDER-12345"
5}

Детальная документация#


Типичные ошибки#

Код ошибкиПричинаРешение
OFFER_NOT_FOUNDПредложение не найдено или срок его действия истёкВыполните новый поиск
OFFER_NOT_VERIFIEDПредложение не подтверждено через offer_pricing перед бронированиемВызовите offer_pricing для этого оффера и повторите
ECLC_NOT_AVAILABLEУ предложения нет пары для раннего заезда / позднего выездаУберите соответствующий upsell или выберите другое предложение
HOTEL_TIME_UNKNOWNНе удалось определить стандартное время заезда/выезда отеля (актуально для поставщика Acase)Передайте checkinTime/checkoutTime в upsells[] и повторите запрос
VALIDATION_ERRORОшибка валидации запроса (HTTP 400)Проверьте обязательные поля и форматы значений
NO_TARGETSПод запрос не нашлось ни одного поставщика: ни один не настроен либо все отсеяны на этапе подготовки запросаПроверьте настройки офисов и пресетов в личном кабинете; при сохранении ошибки обратитесь в поддержку
SUPPLIER_ERRORПоставщик вернул ошибку. Причина — текстом поставщика в поле messageРазберите message; при необходимости повторите запрос позже
SYSTEM_ERRORВнутренняя ошибка Travel APIПовторите запрос позже; при повторении обратитесь в поддержку с errorId

Помимо перечисленных TAPI-кодов, при ошибке на стороне поставщика в ответе может быть возвращён код ошибки поставщика без изменений (проброс) — набор таких кодов зависит от поставщика и не фиксирован.

Связанные операции#