Инструкции
Помощь
Подключить ЮKassa
Продажа авиабилетов
При продаже авиабилетов вы можете передавать информацию о билетах, перелетах и пассажирах (так называемая «длинная запись»). Дополнительные данные используются только при оплате банковской картой, они нужны, чтобы снизить вероятность мошеннических операций.
Создание платежа с дополнительными данными
Информация о пассажирах и билетах передается при создании платежа  — в объекте airline. В запросе обязательно указывается или номер билета (ticket_number), или номер брони (booking_reference), если номера билета пока нет.
Информация о пассажирах передается в объекте passengers.
Информация о перелетах передается в объекте legs. Перелет — это фрагмент маршрута. Если пользователь летит без пересадки, это один перелет. Если есть одна пересадка — два перелета.
При единовременной оплате нескольких билетов достаточно передать номер любого из них (ticket_number) или общий для всех билетов номер брони (booking_reference).
Пример запроса на создание платежа за авиабилеты
cURL
PHP
Python
curl https://api.yookassa.ru/v3/payments \
  -X POST \
  -u <Идентификатор магазина>:<Секретный ключ> \
  -H 'Idempotence-Key: <Ключ идемпотентности>' \
  -H 'Content-Type: application/json' \
  -d '{
        "amount": {
          "value": "10000.00",
          "currency": "RUB"
        },
        "payment_method_data": {
          "type": "bank_card"
        },
        "confirmation": {
          "type": "redirect",
          "return_url": "https://www.example.com/return_url"
        },
        "description": "Заказ №72",
        "airline": {
          "booking_reference": "IIIKRV",
          "passengers": [
            {
              "first_name": "SERGEI",
              "last_name": "IVANOV"
              }
            ],
          "legs": [
            {
              "departure_airport": "LED",
              "destination_airport": "AMS",
              "departure_date": "2018-06-20"
            }
          ]
        }
      }'
Подтверждение платежа
При двухстадийной оплате вам необходимо подтвердить платеж, после того как он перейдет в статус waiting_for_capture. При подтверждении необходимо передать номер билета (ticket_number) или номер брони (booking_reference), если номера билета пока нет.
Пример запроса на подтверждение платежа за авиабилеты
cURL
PHP
Python
curl https://api.yookassa.ru/v3/{payment_id}/capture \
  -X POST \
  -u <Идентификатор магазина>:<Секретный ключ> \
  -H 'Idempotence-Key: <Ключ идемпотентности>' \
  -H 'Content-Type: application/json' \
  -d '{
        "amount": {
          "value": "10000.00",
          "currency": "RUB"
        },
        "airline": {
          "booking_reference": "IIIKRV",
          "ticket_number": "5554916004417",
          "passengers": [
            {
              "first_name": "SERGEI",
              "last_name": "IVANOV"
              }
            ],
          "legs": [
            {
              "departure_airport": "LED",
              "destination_airport": "AMS",
              "departure_date": "2018-06-20"
            }
          ]
        }
      }'
Что почитать еще
Проведение платежейОтправка чеков в налоговую