Выписка билета (Ticket Issue)#

Оформление билетов для существующего бронирования.

Описание#

Эндпоинт: POST /avia/ticket_issue

Выписывает авиабилеты для подтвержденного бронирования. После выписки билетов бронирование переходит в статус “оформлено”, и пассажиры могут использовать билеты для перелета.

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

Используйте этот запрос после создания бронирования для выписки билетов.

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

  1. Создайте бронирование через /avia/pnr_create
  2. Проверьте данные бронирования
  3. Опционально: проверьте актуальность цены через /avia/pnr_reprice
  4. Отправьте запрос на выписку билетов
  5. Получите номера выписанных билетов

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

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

1{
2  "bookingId": "019a0bea-808d-720c-abc0-2ec88eb8bf11",
3  "payment": {
4    "type": "invoice"
5  }
6}

Ответ содержит номера выписанных билетов:

 1{
 2  "tickets": [
 3    {
 4      "number": "2469982473",
 5      "vendor": "555",
 6      "passenger": {
 7        "id": "PAX_12",
 8        "firstName": "IVAN",
 9        "lastName": "EGOROV",
10        "type": "adt"
11      }
12    }
13  ]
14}

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


Сценарии использования#

Сценарий 1: Выписка после бронирования#

Когда: Бронирование создано, нужно выписать билеты.

Действия:

  1. Создать бронирование через /avia/pnr_create
  2. Проверить статус бронирования
  3. Выполнить /avia/ticket_issue с bookingId
  4. Получить номера билетов из ответа

Временные рамки: Выписка должна быть выполнена до истечения time limit бронирования.

Результат: Билеты выписаны, пассажиры могут лететь.

sequenceDiagram
    participant Client
    participant API

    Client->>API: POST /avia/pnr_create
    API-->>Client: bookingId, timeLimit

    Note over Client,API: Клиент проверяет статус<br/>бронирования

    Client->>API: POST /avia/ticket_issue<br/>{bookingId, payment}
    API-->>Client: ticketDocuments[]

Важные моменты#

Отмена выписанных билетов#

После успешной выписки билеты можно отменить:

В день выписки (до конца суток по времени GDS):

  • Используйте войдирование через /avia/ticket_cancel
  • Отмена без штрафов, если билет не был использован и не изменялся
  • Полный возврат средств
  • Обычно до 23:59 локального времени системы в день выписки

После окончания дня выписки:

  • Используйте возврат через /avia/ticket_refund
  • Войдирование недоступно
  • Возврат со штрафами (если билет возвратный)
  • Сумма возврата зависит от правил тарифа

Важно: Войдирование может быть недоступно даже в день выписки, если:

  • До вылета осталось мало времени (некоторые авиакомпании запрещают void за 2-3 часа до вылета)
  • Пассажир уже прошел регистрацию (check-in)
  • В таких случаях используйте возврат через /avia/ticket_refund

Проверка перед выпиской#

Обязательно проверьте перед выпиской:

  • Данные пассажиров корректны
  • Документы действительны
  • Срок действия бронирования не истек (time limit)

Состав ответа#

Ответ содержит массив tickets, где для каждого пассажира:

  • Номер билета (number)
  • Префикс BSP/ARC (vendor)
  • Данные пассажира (passenger)

Последствия выписки#

После выписки билетов:

  • Бронирование нельзя отменить через /avia/pnr_cancel
  • Отмена билета требует войдирования (см. условия) или возврата (если войдирование недоступно)
  • Изменения требуют обмена билета через /avia/ticket_exchange
  • Начинают действовать правила тарифа

Валидация данных#

Перед выпиской проверьте:#

Данные пассажиров:

  • Имена соответствуют документам (латиница)
  • Указаны все обязательные документы
  • Даты рождения корректны
  • Пол указан правильно

Маршрут:

  • Даты вылета в будущем
  • Коды аэропортов корректны
  • Нет конфликтов в расписании

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

Код ошибкиПричинаРешение
BOOKING_NOT_FOUNDБронирование не найденоПроверьте bookingId
BOOKING_CANCELLEDБронирование отмененоСоздайте новое бронирование
TICKETS_ALREADY_ISSUEDБилеты уже выписаныИспользуйте существующие билеты
INSUFFICIENT_BALANCEНедостаточно средствПополните баланс
TIME_LIMIT_EXPIREDИстек срок выпискиСоздайте новое бронирование
INVALID_PASSENGER_DATAНекорректные данныеИсправьте данные пассажира
SEATS_NOT_AVAILABLEМеста больше не доступныСоздайте новое бронирование

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