Спецификация метода Booking

Пример вызова


Протокол: HTTP POST
Адресная строка: api/Booking/Execute


Метод апи: Execute
Полный аналог предыдущего метода, но все данные отправляются в теле запроса, также необходимо для запроса установить Content-Type: text/xml

Информация о запросе

Ниже приведены параметры запроса и их краткое описание

Параметры запроса

НазваниеОписаниеТИП
req Объект CommonBookingRequest с параметрами запроса

GET


Описание работы сервиса

Сервис Booking (Бронирование выбранного варианта) – бронирование выбранного варианта, по тарифу из PriceExact

Данный метод осуществляет бронирование выбранного варианта перелета в ГДС (система бронирования) в соответствии с рассчитанной на предыдущем шаге (PriceExact) стоимостью.

Результатом метода является одна или несколько броней (PNR) с закрепленным расчетом стоимости (масками - Mask).

Корневой элемент MultiItinerary - коллеция элементов типа Itinerary. В каждый элемент Itinerary необходимо добавить коллекцию пассажиров Passenger.

Позиция в диаграмме бизнес-процесса

Ответ на запрос Booking

Общая информация о структуре ответа

Ответ метода Booking содержит в себе 3 узла:

  • Errors - ошибки, произошедшие в процессе выполнения запроса;
  • ReferenceContainer - справочники аэропортов, городов, авиакомпаний и branded fares, присутствующих в ответе;
  • MultiItinerary - коллеция элементов типа Itinerary;

MultiItinerary

Коллеция элементов типа Itinerary

MultiItinerary - контейнер составляющих маршрута (броней). Данный класс используется практически на всех стадиях бизнес-процесса: от поиска вариантов перелета до оформления билета.

При поиске по цене (метод FareDrivenFlightSearch) каждый из предложенных вариантов перелета представляет собой MultiItinerary, соответственно, результатом обращения к методу будет столько объектов MultiItinerary, сколько вариантов перелета вернул метод.

При создании бронирования/ий по маршруту (метод Booking) всегда будет один объект MultiItinerary, так как бронирование/я осуществляется по одному выбранному варианту перелета.

По каждому из вариантов перелета, предложенных по цене, система заранее знает, будет ли весь маршрут целиком оформлен одной бронью, или же будет разбит на составляющие, каждая из которых будет оформлена отдельной бронью. Каждой такой составляющей маршрута в объекте MultiItinerary соответствует объект Itinerary. Таким образом, если для конкретного варианта перелета весь маршрут планируется оформить одной бронью, то контейнер MultiItinerary такого варианта содержит только один элемент Itinerary. Если конкретный вариант предполагается оформить несколькими бронями, то контейнер MultiItinerary такого варианта содержит несколько элементов Itinerary (по количеству составляющих маршрута).

После того, как выбранный вариант перелета забронирован, контейнер MultiItinerary содержит один или несколько элементов Itinerary, каждый из которых соответствует одной брони и содержит ее полные данные.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
ref:long Attribute Timestamp временная метка результата всегда 637801845897081089
uint Attribute Key уникальный идентификатор модели всегда 3460159847
double Attribute EquivTotal суммарная стоимость перелета по всем маршрутам из контейнера для всех пассажиров с учетом всех сборов и такс в валюте страны PCC агента всегда 3400.43
Itinerary Element Itinerary список составляющих маршрута (броней) всегда, 1 и более элементов -

Itinerary (Element, входящий в контейнер MultiItinerary)


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

Например, на этапе поиска по цене Itinerary состоит из Leg и Mask, то есть данные по перелетам маршрута и расчет стоимости перелета по маршруту. На этапе создания бронирования туда попадает Passenger, то есть данные по пассажирам брони, номер брони (Locator) и блок SSR.

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

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор модели всегда 3460159847
string Attribute Locator номер брони в системе бронирования, при помощи которого агент может самостоятельно открыть бронь, в том числе и в оффлайн терминале, присваивается только после завершения процедуры бронирования, строка (6 символов, латинские буквы и цифры). Номер брони - ключевая информация о бронировании, по нему авиакомпания и агент могут найти заказ в собственных системах бронирования, также при помощи данного номера осуществляются процедуры выгрузки и отмены бронирования. появляется на шаге бронирования TL39MX
double Attribute EquivTotal суммарная стоимость перелета по этому маршруту для всех пассажиров с учетом всех сборов и такс в валюте страны PCC агента всегда 3400.43
int Attribute id_System система бронирования - идентификатор GDS, из которой получен данный участок всегда 3
string Attribute FamilyCode код семейства тарифов BS
int Attribute id_Profile финансовый профиль - идентификатор финансового профиля, который использован для расчета цены по данному варианту 226
string Attribute CorporateDiscountDetails код корпоративного контракта
string Attribute ValidatingCarrier валидирующий перевозчик U6
datetime Attribute Timelimit таймлимит 08.10.2017 23:00:00
Fare Element Fare код класса обслуживания (тариф) 2
OBSOLETE Element ItineraryUpsell устаревшая структура апселла, заменена на ItineraryUpsellV2 FareDrivenFlightSearch -
ItineraryUpsellV2 Element ItineraryUpsellV2 upsell - различные модификации предложенного тарифа - Виды улучшений типа тарифа - может быть несколько FareDrivenFlightSearch -
Leg Element Legs/Leg коллекция участков перелета в данном маршруте(брони) всегда, если бронь не отменена;
1 и более элементов
-
Mask Element Masks/Mask маска,
создается на каждую категорию пассажира.
в том случае, если расчет стоимости актуален;
максимальное количество - 3 элемента
-
FareRemark Element FareRemarks/FareRemark правила применения тарифа появляется на шаге проверки стоимости -
Passenger Element Passengers/Passenger пассажиры — люди, на которых оформляется авиа перевозка появляется на шаге бронирования -
SSR Element SSRs/SSR специальный код для обозначения информации об индивидуальных запросах пассажиров появляется на шаге бронирования -
Ticket Element Ticket появляется на шаге оформления билета -
FreeTextRemark Element FreeTextRemark -

Fare (Element, входящий в контейнер Itinerary)


Fare - код класса обслуживания (тариф) — в международной практике называются уровни сервиса, которые получают пассажиры воздушного судна на борту.

Основные классы обслуживания:
  • Эконом-класс;
  • Бизнес-класс;
  • Первый класс (в настоящее время отсутствует на подавляющем большинстве рейсов).

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
string Attribute Name код класса обслуживания - название тарифа всегда Business

ItineraryUpsellV2 (Element, входящий в контейнер Itinerary)


ItineraryUpsell - возможность повышения уровня тарифа для включения в стоимость каких-то дополнительных услуг, например, нормы провоза бесплатого багажа

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор предложения об улучшении тарифа всегда 810306099
string Attribute FareFamilyCode код семейства тарифа всегда YBASIC
string Attribute Name название семейства, понятное пользователю всегда Эконом Базовый
string Attribute NameEnglish название семейства, понятное пользователю (на английском) всегда Economy Basic
int Attribute id_Family идентификатор семейства тарифов - идентификатор семейства тарифов в редакторе семейств (Главная/Список авиакомпаний/[а/к]/Семейства тарифов) всегда
double Attribute EquivTotal общая стоимость данного апселла всегда 12000.00
int Attribute id_System система бронирования - идентификатор GDS, из которой получен данный вариант всегда
bool Attribute HasBaggage флаг наличия нормы бесплатного провоза багажа всегда true/false
bool Attribute IsExchangeable флаг наличия обмена всегда true/false
bool Attribute IsRefundable флаг наличия возврата всегда true/false
UpsellFlight Element UpsellFlight перелеты, входящие в upsell, может быть несколько -

UpsellFlight (Element, входящий в контейнер ItineraryUpsellV2)


Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор рейса всегда 2881966159
string Attribute Airline код авиакомпании IATA - скачать список с openflights.org
маркетинговый перевозчик
всегда S7
int Attribute Number номер рейса всегда 3555
string Attribute FareName код тарифа всегда SBSOW
string Attribute Baggage информация о нормах провоза багажа всегда 0N

Leg (Element, входящий в контейнер Itinerary)


Leg - участок перелета, содержащий один или более рейсов(связанных авиакомпанией на техническом уровне участков перелета от начального до конечного пункта, включая трансферные пункты). Так как не любую пару городов связывает прямое воздушное сообщение (прямые рейсы), то не всегда один участок перелета можно преодолеть одним рейсом. Иногда требуется лететь последовательно двумя или тремя рейсами отдельными прямыми рейсами, чтобы из пункта отправления попасть в пункт назначения. Такие рейсы называют стыковочными, а те пункты (города), где осуществляются пересадки с одного рейса на другой – пунктами пересадки (стыковки), разумеется, пункт прилета первого рейса является пунктом вылета следующего. Стыковочные рейсы образуются независимыми друг от друга прямыми рейсами, в общем случае это рейсы разных авиакомпаний, каждый из них имеет свой номер, свой тип самолета и прочие характеристики. Стыковки бывают как в рамках одного аэропорта, так и с переездом в другой аэропорт того же города.

Например, из Москвы до Сиднея (Австралия) нет прямого рейса. Поэтому можно лететь, например, со стыковкой во Франкфурте:

  • SU 109 SVO D FRA 2 2125 2240 E0/319 Аэрофлот Москва - Франкфурт
  • QF 006 FRA 2 SYD 1 2350 0510+2E1/744 Qantas Франкфурт – Сидней.

Стыковки строятся автоматически системами ГДС по специальным алгоритмам. При этом проверяется так называемое MCT (minimum connecting time, минимальное время стыковки) – время, требующееся для осуществления пересадки с рейса на рейс. В ГДС достаточно указать дату, начальный и конечный пункт участка перелета – и она подберет стыковки. Однако перелет стыковочными рейсами используется не только в том случае, если между начальным и конечным пунктом нет прямых рейсов. Довольно часто перелет стыковочными рейсами стоит дешевле прямого рейса, а иногда он получается удобнее по времени вылета/прилета и т.п. Не нужно путать стыковочные (пересадочные) пункты с пунктами отправления/назначения сегментов перелета. В терминах нашей системы участки (сегменты) задаются пользователем, и на этапе задания маршрута он не должен(кроме тех случаев, когда пассажир указывает конкретную точку пересадки по своей инициативе) задумываться о том, какие пересадки пассажиру потребуется совершить, чтобы попасть из пункта отправления каждого участка в пункт назначения. Если пассажир хочет лететь из Москвы в Сидней, значит, у него маршрут OW, состоящий из 1 участка перелета: Москва – Сидней. То, что на участке Москва – Сидней пассажир делает стыковку во Франкфурте, не значит, что у него 2 участка (сегмента) перелета. В терминах ГДС сегментом маршрута называется каждый прямой рейс маршрута. Соответственно, для ГДС в маршруте Москва – Сидней будет 2 сегмента: Москва – Франкфурт и Франкфурт – Сидней.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор группы участков всегда 3460159847
int Attribute id_System система бронирования - идентификатор GDS, из которой получен данный участок всегда 3
int Attribute DurationMinutes длительность полета в минутах 2 1090
Flight Element Flight сегмент перелета (конкретный рейс) в данном маршруте(брони) всегда, если бронь не отменена -

Flight (Element, входящий в контейнер Itinerary)


Flight - описание сегмента перелета (конкретного рейса) в составе Leg с указанием авиа перевозчика, тарифа, дат и времени, а так же аэропорта вылета и прилета, класса обслуживания и статуса подтверждения с локатором авиакомпании.

Дает нам полную информацию о сегменте перелета, а так же статус его подтверждения.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор рейса всегда 3118082012
string Attribute Airline код авиакомпании IATA - скачать список с openflights.org
маркетинговый перевозчик
всегда KL
string Attribute OperatingAirline оперирующий перевозчик всегда KL
int Attribute Number номер рейса всегда 904
string Attribute Origin аэропорт вылета (код аэропорта IATA - скачать список с datahub.io) всегда SVO
string Attribute OriginTerminal терминал в пункте отправления всегда, если в пункте отправления есть терминалы E
string Attribute Destination аэропорт прилета (код аэропорта IATA - скачать список с datahub.io) всегда AMS
string Attribute DestinationTerminal терминал в пункте прибытия всегда, если в пункте прибытия есть терминалы E
datetime Attribute DepartureDate дата и время вылета всегда 12.12.2017 18:00:00
datetime Attribute ArrivalDate дата и время прилета всегда 12.12.2017 19:35:00
string Attribute AirplaneCode код самолета - Квалификатор воздушных судов всегда 73H
string Attribute Status статус рейса всегда HK
int Attribute NumOfStops количество промежуточных посадок всегда 0
string Attribute RBD код класса бронирования(часто бывает первой буквой FareName) всегда G
string Attribute FareName код тарифа всегда GSRRU6
int Attribute SeatsStatus информация о свободных местах по этому тарифу всегда 7
string Attribute AirlineLocator номер брони авиакомпании для данного рейса до бронирования пустой AR78Z3
string Attribute Baggage информация о нормах провоза багажа всегда 1PC

Mask (Element, входящий в контейнер Itinerary)


Mask - маска билета (PQ) — данные, связанные с PNR, в которых отражается вся информация о билете и пассажира, а так же расчет авиа перевозки.

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

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

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key ключ, формируемый из легов и паксов(либо легов и категории пассажиров) всегда 810306099
double Attribute EquivTotal суммарная стоимость перелета по всем маршрутам из контейнера для всех пассажиров одного типа с учетом всех сборов и такс в валюте страны PCC агента всегда 12302
int Attribute PassengerType тип пассажира всегда 0
string Attribute PassengerTypeName категория пассажира всегда Adult
int Attribute PassengersQuantity количество пассажиров - берется или из референсов, или из переменной _PassengersQuantity всегда 2
double Attribute VAT НДС всегда 3436.3636363636365
string Element Endorsement endorsement всегда LAST TKT DTE 08OCT17 - SEE ADV PURCHASE
string Element VATRemark строка с ремаркой для расчета НДС, вставляется как ремарка вида всегда NO VAT
Price Element BaseFare базовый тариф - это и есть та сумма, которую получает авиакомпания за то, что предоставила услугу перевозки. всегда -
Price Element ServiceFee сервисный сбор всегда -
Price Element HiddenFee скрытый сбор всегда -
Price Element Commission комиссия всегда -
Ref Element PaxReferences перекрестные ссылки по полю Key из Passenger, которые используются в данном расчете всегда, появляется на шаге бронирования -
Ref Element LegReferences перекрестные ссылки по полю Key из Leg, которые используются в данном расчете всегда -
Price Element Taxes таксы - топливный сбор, аэропортовый сбор и т.п. всегда -
string Element FareCalculation строка расчета тарифа в методах, использующих выгрузку брони MOW LH MUC38.20KEULGTF5 LX X/ZRH LX MOW49.20KEULGTZ5 NUC87.40END ROE0.863772

Price


Price — тип данных, предназначенный для описания полей бизнес-объекта Mask : BaseFare, Taxes, Comission, ServiceFee, HiddenFee.

Эти бизнес-объекты являются составляющими стоимости авиабилета.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key ключ для формирования хеша объекта всегда 952203723
double Attribute Value цена в оригинальной валюте всегда 6990
string Attribute CurrencyCode код оригинальной валюты всегда RUB
double Attribute CurrencyRate курс оригинальной валюты с округлением до 6 знаков всегда 69.90003
double Attribute EquivValue значение в эквивалентной валюте 6990.00
double Attribute VAT Величина НДС для данного компонента(элемент цены или такса) - обычно бывает равна 0, или 10% или 18% от значения EquivValue 699.90
string Attribute EquivCode код эквивалентной валюты всегда RUB

Ref


Ref — тип данных для описания полей бизнес-объекта Mask : PaxReferences (Passenger) и LegReferences (Leg), предназначенных для хранения уникальных ссылок для маски расчета тарифа на соответствующие этой маске пассажира брони и участок маршрута.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный ключ 3967153309

FareRemark (Element, входящий в контейнер Itinerary)


FareRemark — условия применения тарифов (УПТ) – правила, которые должны быть выполнены для применения тарифа.

УПТ устанавливаются перевозчиком и действительны на дату начала перевозки.

В УПТ могут быть оговорены:

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

Так как для расчета авиаперевозки по одной брони могут применяться различные тарифные компоненты на разных участках маршрута, то для таких участков УПТ будут разные, соответственно, их в контейнере FareRemark может быть несколько. Для каждого УПТ указаны начало и конец участка — origin/destination.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор ремарки всегда 2745288187
string Attribute OriginCode код пункта отправления (код аэропорта IATA - скачать список с datahub.io) всегда VKO
string Attribute DestinationCode код пункта прибытия (код аэропорта IATA - скачать список с datahub.io) всегда LED
string Element RemarkText текст ремарки (правил применения тарифа) всегда PENALTIES UNLESS OTHERWISE SPECIFIED CANCELLATIONS TICKET IS NON-REFUNDABLE IN CASE OF CANCEL/NO-SHOW/ REFUND. ...

Passenger (Element, входящий в контейнер Itinerary)


Passenger (пассажир) — человек, на которого оформляется авиаперевозка.

Пассажиры делятся на три типа:

  • взрослый (12+ лет),
  • ребенок (02-12 лет, но не включая 12),
  • младенец (0-2 лет, но не включая 2 лет).

Существуют некоторые особенности оформления бронирования:

  • пассажир с типом младенец (Infant) может быть забронирован только без места, т.е. совершать перелет он будет на одном месте с закрепленным за ним взрослым.
    Закрепление младенца в бронировании происходит по порядку занесения пассажиров в систему, т.е. первый младенец (Infant) автоматически привяжется к первому взрослому пассажиру (Adult), второй — ко второму, и т. д.
  • пассажир с типом ребенок (Child) также не может быть забронирован без сопровождения взрослого.
  • в брони должен присутствовать хотя бы один взрослый пассажир 18+.
    Пассажиры от 12 лет и не достигшие 18 лет, хотя и считаются взрослыми с точки зрения стоимости билета, не только не могут выступать сопровождающими для детей (Child) и младенцев (Infant), но и не могут сами быть забронированы отдельно от взрослого 18+ пассажира.

Пассажир должен иметь следующие атрибуты:

  • Имя, фамилия и отчество (отчество используется по требованию ряда российских авиакомпаний и только на внутрироссийские перевозки).
  • Дата рождения пассажира.
  • Пол пассажира.
  • Гражданство — указывается код страны, гражданином которой является пассажир.
  • Номер документа и срок действия документа, по которому будет осуществляться перелет.
  • Контактные данные пассажира: электронная почта и мобильный телефон.
    Есть обязательное требование некоторых авиакомпаний о добавлении в бронь контактных данных пассажира, в том числе мобильного телефона, для оперативного уведомления пассажира о внештатных ситуациях, например, отмена или задержка рейса.
  • Бонусная (мильная) карта (номер карты и код авиаперевозчика-владельца бонусной программы), добавляется в случае ее наличия у пассажира.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key уникальный идентификатор пассажира всегда 3251827403
string Attribute FirstName имя на латинице всегда Ivan
string Attribute LastName фамилмя на латинице всегда Viktorov
string Attribute MiddleName отчество на латинице всегда Fedorovich
datetime Attribute Date дата рождения всегда 05.10.1980 0:00:00
bool Attribute Gender пол пассажира (true = мужской, false = женский) всегда true
string Attribute Type категория пассажира всегда Adult
string Attribute CitizenshipCode ALPHA2-код страны гражданства всегда RU
string Attribute DocumentNumber номер документа всегда 123456789
datetime Attribute DocumentValid дата окончания срока действия всегда 16.10.2027 0:00:00
string Attribute Email электронная почта пассажира если внесен в карточку пассажира vikrorov@mail.ru
string Attribute MobilePhone телефон пассажира если внесен в карточку пассажира +79033121020
string Attribute MileCardNumber номер мильной карты если внесена в карточку пассажира и выбрана при создании заказа 123123213
string Attribute MileCardAirline код авиакомпании IATA - скачать список с openflights.org, чья мильная карта если внесена мильная карта SU
string Element Comments / Comment комментарии по пассажиру если внесен superpax

SSR (Element, входящий в контейнер Itinerary)


SSR — Special Service Request (SSR) — запрос специальных услуг на борту для пассажиров, например: специальное питание, провоз нестандартного багажа, животных, необходимых приспособлений для передвижения пассажиров с ограниченными возможностями, полет несовершеннолетних пассажиров без сопровождения взрослых и иные запросы, связанные с особенностями и/или удобством перелета.

Каждая спецуслуга имеет свой 4х-буквенный код, например, VGML — вегетарианское питание на борту, DOCS — информация о документах пассажира, FQTV — информация о бонусной карте и т.п.

SSR всегда требуют от перевозчика (авиакомпании) произвести определенное действие — подтвердить запрашиваемую услугу либо отказать в ней.

С помощью SSR в бронь передается следующая информация:

  • Тип, номер, срок действия документа, по которому летит пассажир, а также фамилия, имя и отчество пассажира, дата рождения и гражданство.
  • Номер бонусной карты, а так же код авиа перевозчика — владельца бонусной программы, в том случае, если бонусная карта была добавлена при бронировании.
  • Данные по пассажирам с типами ребенок и младенец, в случае если пассажиры данного типа присутствуют при бронировании.

В случае, если у корпоративного клиента есть трехсторонний договор с авиаперевозчиком, с помощью SSR вносится tour code по данному договору.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key ключ для уникализации объекта всегда 944638194
string Attribute AirlineCode ref:AirlineCode всегда SU
string Attribute Type тип всегда DOCS
string Attribute Content контент, наприрер, данные по документу или мильной карте всегда P/RU/123456789/RU/05OCT80/M/16OCT27/VIKTOROV/IVAN
string Attribute Status статус сервиса всегда HK
Ref Element FlightReferences перекрестные ссылки по полю Key из Flight, которые используются в данном расчете всегда 1624016448
Ref Element PaxReferences перекрестные ссылки по полю Key из Passenger, которые используются в данном расчете всегда, появляется на шаге бронирования 2743858651

Ticket (Element, входящий в контейнер Itinerary)


Ticket - электронный билет (или E-ticket) — это электронная запись в базе данных авиакомпании, содержащая данные о пассажире, маршруте следования, примененном тарифе и подтверждающая сделку по договору авиаперевозки.

Электронному билету присваивается уникальный номер бланка из стока валидирующего перевозчика, состоящий из 13 цифр, первые 3 из которых – цифровой код валидирующего перевозчика.

В качестве подтверждения того, что электронный билет оформлен, пассажиру высылается в электронном виде или выдается в распечатанном виде на руки маршрут-квитанция (itinerary receipt), которая содержит полную информацию о маршруте, ФИО пассажира, классе обслуживания, дополнительных услугах и т.п.

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key ключ для уникализации объекта всегда 855224081
string Attribute TicketNumber номер билета всегда 5551355473016
datetime Attribute TicketingDate дата выписки билета всегда 14.10.2017 2:32:15
uint Attribute MaskKey ссылка на маску (уникальный ключ), по которой выписывается билет всегда 3655520777
uint Attribute PassengerKey ссылка на пассажира (уникальный ключ), на которого выписывается билет всегда 3917394012
string Element Endorsement endorsement если того требует авиаперевозчик PSPT1111122222*INCL VAT 926.36RUB

FreeTextRemark (Element, входящий в контейнер Itinerary)


FreeTextRemark - текстовая ремарка ремарка в свободной форме, добавляемая в бронь авиабилетов.

Ремарка вносится только в том случае, если выполнены соответствующие настройки в финансовом профиле клиента, а именно: текст ремарки и момент ее внесения (при создании брони или при выписке авиабилетов).

Данной ремаркой в бронь можно добавить любую информацию, которая необходима агенту: размер сервисного сбора, код семейства тарифов, информацию по 3D-соглашению, комментарий к пассажиру.

Данные ремарки в брони не видны авиаперевозчику.

Например, в Галилео мы вносим ремарку с семейством, а потом при повторном прайсинге берем из множества семейств ответа прайсинга то, код которого записан в нашу ремарку

Поля класса:

Тип XML-тип Название Комментарий Наличие в ответах Пример
uint Attribute Key ключ для уникализации объекта всегда 343398945
string Attribute RemarkType тип ремарки всегда RM
string Attribute RemarkLineId
string Attribute FreeText текст ремарки в свободной форме всегда FreeText=«FAMILY=EF»

ReferenceContainer - справочники авиакомпаний, городов, аэропортов и семейств тарифов.

Структура ответа

  • Airlines(ReferenceAirline) - список авиакомпаний, каждая из которых присутствует хотя бы в одном из рейсов в ответе;
    • Rus - название авиакомпании на русском языке (некоторые названия не переводятся и совпадают с английским)
    • En - название авиакомпании на английском языке
    • Code - код авиакомпании IATA - скачать список с openflights.org
  • Airports(ReferenceAirport) - список аэропортов, каждый из которых является пунктом вылета или прилета хотя бы в одном из рейсов в ответе;
    • Rus - название аэропорта на русском языке (некоторые названия не переводятся и совпадают с английским)
    • En - название аэропорта на английском языке
    • Code - код аэропорта IATA - скачать список с datahub.io
    • id_City - идентификатор города, в котором расположен аэропорт, см. ReferenceCity
  • Cities(ReferenceCity) - список городв, в которых находятся аэропорты из пункта выше.
    • Rus - название города на русском (некоторые названия не переводятся и совпадают с английским)
    • En - название города на английском
    • Code - код города IATA - скачать список с openflights.org
    • Country - код страны ISO 3166-2 - скачать список с openflights.org
    • id_City - идентификатор города
    • CountryName - сведения о стране, в которой находится город
      • Rus - название страны на русском
      • En - название страны на английском
  • Families(FareFamily) - список семейств тарифов, которые представленны в ответе;
    • Name - название семейства
    • NameLatin - название семейства на английском
    • AirlineCode - код авиакомпании IATA - скачать список с openflights.org
    • FareType - код класса обслуживания семейства
    • Description - описание семейства, раскрывающее условия его применения
    • DescriptionLatin - описание семейства на английском, раскрывающее условия его применения
    • Services(FareFamilyServiceDetails) - перечень услуг, которые могут быть доступны или недоступны при выполнении перелета по тарифу из семейства;
      • id_FareFamilyService - идентификатор услуги
      • Description - описание услуги
      • DescriptionLatin - описание услуги на английском
      • Price - стоимость услуги
      • IsIncluded - доступна услуга или нет
      • Name - название услуги
      • NameLatin - название услуги на английском
    • Relations(FareFamilyGDSRelation) - перечень кодов, которыми семейство обозначается у разных поставщиков (GDS - см. система бронирования);
      • id_System - идентификатор GDS, для которого указан код
      • Code - код семейства

Пример ответа

<?xml version="1.0" encoding="utf-8" ?>
<ReferenceContainer>
  <Airlines>
    <ReferenceAirline Rus="Lufthansa" En="Lufthansa" Code="LH"/>
    <ReferenceAirline Rus="Swiss" En="Swiss" Code="LX"/>
    <ReferenceAirline Rus="Helvetic Airways" En="Helvetic Airways" Code="2L"/>
    <ReferenceAirline Rus="Polish Airlines" En="LOT" Code="LO"/>
    <ReferenceAirline Rus="Austrian" En="Austrian Airlines" Code="OS"/>
    <ReferenceAirline Rus="Finnair" En="Finnair" Code="AY"/>
    <ReferenceAirline Rus="Аэрофлот" En="Aeroflot" Code="SU"/>
    <ReferenceAirline Rus="Air France" En="Air France" Code="AF"/>
    <ReferenceAirline Rus="S7 Airlines" En="S7 Airlines" Code="S7"/>
    <ReferenceAirline Rus="Klm Royal Dutch Airlines" En="KLM" Code="KL"/>
    <ReferenceAirline Rus="Turkish Airlines " En="Turkish Airlines" Code="TK"/>
    <ReferenceAirline Rus="ЮТэйр" En="Utair" Code="UT"/>
    <ReferenceAirline Rus="Air Baltic" En="AirBaltic" Code="BT"/>
    <ReferenceAirline Rus="Alitalia" En="Alitalia" Code="AZ"/>
  </Airlines>
  <Airports>
    <ReferenceAirport Rus="Домодедово" En="Domodedovo" Code="DME" id_City="660"/>
    <ReferenceAirport Rus="Мюнхен" En="Munich" Code="MUC" id_City="929"/>
    <ReferenceAirport Rus="Цюрих" En="Zurich" Code="ZRH" id_City="1009"/>
    <ReferenceAirport Rus="Франкфурт-на-Майне" En="Frankfurt" Code="FRA" id_City="898"/>
    <ReferenceAirport Rus="Шереметьево" En="Sheremetyevo" Code="SVO" id_City="660"/>
    <ReferenceAirport Rus="Варшава" En="Warsaw" Code="WAW" id_City="657"/>
    <ReferenceAirport Rus="Вена" En="Vienna" Code="VIE" id_City="656"/>
    <ReferenceAirport Rus="Хельсинки" En="Helsinki" Code="HEL" id_City="923"/>
    <ReferenceAirport Rus="Шарль Де Голь" En="Charles De Gaulle" Code="CDG" id_City="967"/>
    <ReferenceAirport Rus="Амстердам" En="Amsterdam" Code="AMS" id_City="833"/>
    <ReferenceAirport Rus="Внуково" En="Vnukovo" Code="VKO" id_City="660"/>
    <ReferenceAirport Rus="Стамбул" En="Istanbul" Code="IST" id_City="655"/>
    <ReferenceAirport Rus="Рига" En="Riga" Code="RIX" id_City="767"/>
    <ReferenceAirport Rus="Фьюмичино" En="Fiumicino" Code="FCO" id_City="957"/>
  </Airports>
  <Cities>
    <ReferenceCity Rus="Москва" En="Moscow" Code="MOW" Country="RU" id_City="660">
      <CountryName Rus="Россия" En="Russia"/>
    </ReferenceCity>
    <ReferenceCity Rus="Мюнхен" En="Munich" Code="MUC" Country="DE" id_City="929">
      <CountryName Rus="Германия" En="Germany"/>
    </ReferenceCity>
    <ReferenceCity Rus="Цюрих" En="Zurich" Code="ZRH" Country="CH" id_City="1009">
      <CountryName Rus="Швейцария" En="Switzerland"/>
    </ReferenceCity>
    <ReferenceCity Rus="Франкфурт-на-Майне" En="Frankfurt" Code="FRA" Country="DE" id_City="898">
      <CountryName Rus="Германия" En="Germany"/>
    </ReferenceCity>
    <ReferenceCity Rus="Варшава" En="Warsaw" Code="WAW" Country="PL" id_City="657">
      <CountryName Rus="Польша" En="Poland"/>
    </ReferenceCity>
    <ReferenceCity Rus="Вена" En="Vienna" Code="VIE" Country="AT" id_City="656">
      <CountryName Rus="Австрия" En="Austria"/>
    </ReferenceCity>
    <ReferenceCity Rus="Хельсинки" En="Helsinki" Code="HEL" Country="FI" id_City="923">
      <CountryName Rus="Финляндия" En="Finland"/>
    </ReferenceCity>
    <ReferenceCity Rus="Париж" En="Paris" Code="PAR" Country="FR" id_City="967">
      <CountryName Rus="Франция" En="France"/>
    </ReferenceCity>
    <ReferenceCity Rus="Амстердам" En="Amsterdam" Code="AMS" Country="NL" id_City="833">
      <CountryName Rus="Нидерланды" En="Netherlands"/>
    </ReferenceCity>
    <ReferenceCity Rus="Стамбул" En="Istanbul" Code="IST" Country="TR" id_City="655">
      <CountryName Rus="Турция" En="Turkey"/>
    </ReferenceCity>
    <ReferenceCity Rus="Рига" En="Riga" Code="RIX" Country="LV" id_City="767">
      <CountryName Rus="Латвия" En="Latvia"/>
    </ReferenceCity>
    <ReferenceCity Rus="Рим" En="Rome" Code="ROM" Country="IT" id_City="957">
      <CountryName Rus="Италия" En="Italy"/>
    </ReferenceCity>
  </Cities>
  <Families>
    <FareFamily id_FareFamily="174" Name="BUSINESS SAVER" NameLatin="BUSINESS SAVER" AirlineCode="LH" FareType="C">
      <Description>
        Тариф BUSINESS SAVER/LH
        Meal(BUSINESS CLASS FOOD AND BEV) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS SAVER/LH
        Meal(BUSINESS CLASS FOOD AND BEV) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15597" id_FareFamilyService="9" id_FareFamily="174" Description="BUSINESS CLASS FOOD AND BEV" DescriptionLatin="BUSINESS CLASS FOOD AND BEV" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="125" id_FareFamily="174" id_System="3" Code="SAVER"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="175" Name="BUSINESS SAVER" NameLatin="BUSINESS SAVER" AirlineCode="LX" FareType="C">
      <Description>
        Тариф BUSINESS SAVER/LX
        Meal(BUSINESS CLASS FOOD AND BEV) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS SAVER/LX
        Meal(BUSINESS CLASS FOOD AND BEV) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15598" id_FareFamilyService="9" id_FareFamily="175" Description="BUSINESS CLASS FOOD AND BEV" DescriptionLatin="BUSINESS CLASS FOOD AND BEV" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="126" id_FareFamily="175" id_System="3" Code="SAVER"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="177" Name="BUSINESSEMIFLX" NameLatin="BUSINESSEMIFLX" AirlineCode="LO" FareType="C">
      <Description>
        Тариф BUSINESSEMIFLX/LO
        Meal(COMPLIMENTARY FOOD AND BEV) : доступно
        Miles(MILEAGE ACCRUAL) : доступно
        Exchange(CHANGEABLE TICKET) : доступно за дополнительную плату
        Refund(REFUND BEFORE DEPARTURE) : доступно за дополнительную плату
        Refund(REFUND AFTER DEPARTURE) : не доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESSEMIFLX/LO
        Meal(COMPLIMENTARY FOOD AND BEV) : included
        Miles(MILEAGE ACCRUAL) : included
        Exchange(CHANGEABLE TICKET) : included with extra charge
        Refund(REFUND BEFORE DEPARTURE) : included with extra charge
        Refund(REFUND AFTER DEPARTURE) : not offered
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15600" id_FareFamilyService="9" id_FareFamily="177" Description="COMPLIMENTARY FOOD AND BEV" DescriptionLatin="COMPLIMENTARY FOOD AND BEV" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15601" id_FareFamilyService="8" id_FareFamily="177" Description="MILEAGE ACCRUAL" DescriptionLatin="MILEAGE ACCRUAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15602" id_FareFamilyService="7" id_FareFamily="177" Description="CHANGEABLE TICKET" DescriptionLatin="CHANGEABLE TICKET" Price="Extra charge" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15603" id_FareFamilyService="6" id_FareFamily="177" Description="REFUND BEFORE DEPARTURE" DescriptionLatin="REFUND BEFORE DEPARTURE" Price="Extra charge" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15604" id_FareFamilyService="6" id_FareFamily="177" Description="REFUND AFTER DEPARTURE" DescriptionLatin="REFUND AFTER DEPARTURE" Price="" IsIncluded="false"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="128" id_FareFamily="177" id_System="3" Code="BUSEMI"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="176" Name="BUSINESS SAVER" NameLatin="BUSINESS SAVER" AirlineCode="OS" FareType="C">
      <Description>
        Тариф BUSINESS SAVER/OS
        Meal(BUSINESS CLASS FOOD AND BEV) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS SAVER/OS
        Meal(BUSINESS CLASS FOOD AND BEV) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15599" id_FareFamilyService="9" id_FareFamily="176" Description="BUSINESS CLASS FOOD AND BEV" DescriptionLatin="BUSINESS CLASS FOOD AND BEV" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="127" id_FareFamily="176" id_System="3" Code="SAVER"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="179" Name="BUSINESS" NameLatin="BUSINESS" AirlineCode="AY" FareType="C">
      <Description>
        Тариф BUSINESS/AY
        Exchange(CHANGE BEFORE DEPARTURE) : доступно
        Exchange(CHANGE AFTER DEPARTURE) : доступно
        Refund(REFUND BEFORE DEPARTURE) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS/AY
        Exchange(CHANGE BEFORE DEPARTURE) : included
        Exchange(CHANGE AFTER DEPARTURE) : included
        Refund(REFUND BEFORE DEPARTURE) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15606" id_FareFamilyService="7" id_FareFamily="179" Description="CHANGE BEFORE DEPARTURE" DescriptionLatin="CHANGE BEFORE DEPARTURE" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15607" id_FareFamilyService="7" id_FareFamily="179" Description="CHANGE AFTER DEPARTURE" DescriptionLatin="CHANGE AFTER DEPARTURE" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15608" id_FareFamilyService="6" id_FareFamily="179" Description="REFUND BEFORE DEPARTURE" DescriptionLatin="REFUND BEFORE DEPARTURE" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="130" id_FareFamily="179" id_System="3" Code="BIZ"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="180" Name="BUSINESS CLASSIC" NameLatin="BUSINESS CLASSIC" AirlineCode="SU" FareType="C">
      <Description>
        Тариф BUSINESS CLASSIC/SU
        Exchange(CHANGEABLE TICKET) : доступно за дополнительную плату
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS CLASSIC/SU
        Exchange(CHANGEABLE TICKET) : included with extra charge
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15605" id_FareFamilyService="7" id_FareFamily="180" Description="CHANGEABLE TICKET" DescriptionLatin="CHANGEABLE TICKET" Price="Extra charge" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="131" id_FareFamily="180" id_System="3" Code="BC"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="184" Name="BUSINESS CLASS" NameLatin="BUSINESS CLASS" AirlineCode="AF" FareType="C">
      <Description>
        Тариф BUSINESS CLASS/AF
        Meal(BEVERAGE) : доступно
        Meal(MEAL) : доступно
        Exchange(CHANGEABLE TICKET) : доступно
        Miles(BUSINESS CLASS MILES ACCRUAL) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS CLASS/AF
        Meal(BEVERAGE) : included
        Meal(MEAL) : included
        Exchange(CHANGEABLE TICKET) : included
        Miles(BUSINESS CLASS MILES ACCRUAL) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15609" id_FareFamilyService="9" id_FareFamily="184" Description="BEVERAGE" DescriptionLatin="BEVERAGE" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15610" id_FareFamilyService="9" id_FareFamily="184" Description="MEAL" DescriptionLatin="MEAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15611" id_FareFamilyService="7" id_FareFamily="184" Description="CHANGEABLE TICKET" DescriptionLatin="CHANGEABLE TICKET" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15612" id_FareFamilyService="8" id_FareFamily="184" Description="BUSINESS CLASS MILES ACCRUAL" DescriptionLatin="BUSINESS CLASS MILES ACCRUAL" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="135" id_FareFamily="184" id_System="3" Code="BUSINESS"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="178" Name="BASIC BUSINESS" NameLatin="BASIC BUSINESS" AirlineCode="S7" FareType="C">
      <Description>
        Тариф BASIC BUSINESS/S7
        Meal(SPECIAL MEAL) : доступно
        Miles(MILEAGE ACCRUAL) : доступно
        Exchange(CHANGE BEFORE DEPARTURE) : доступно за дополнительную плату
        Exchange(CHANGE AFTER DEPARTURE) : доступно за дополнительную плату
      </Description>
      <DescriptionLatin>
        Fare family BASIC BUSINESS/S7
        Meal(SPECIAL MEAL) : included
        Miles(MILEAGE ACCRUAL) : included
        Exchange(CHANGE BEFORE DEPARTURE) : included with extra charge
        Exchange(CHANGE AFTER DEPARTURE) : included with extra charge
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15613" id_FareFamilyService="9" id_FareFamily="178" Description="SPECIAL MEAL" DescriptionLatin="SPECIAL MEAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15614" id_FareFamilyService="8" id_FareFamily="178" Description="MILEAGE ACCRUAL" DescriptionLatin="MILEAGE ACCRUAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15615" id_FareFamilyService="7" id_FareFamily="178" Description="CHANGE BEFORE DEPARTURE" DescriptionLatin="CHANGE BEFORE DEPARTURE" Price="Extra charge" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15616" id_FareFamilyService="7" id_FareFamily="178" Description="CHANGE AFTER DEPARTURE" DescriptionLatin="CHANGE AFTER DEPARTURE" Price="Extra charge" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="129" id_FareFamily="178" id_System="3" Code="CBS"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="181" Name="BUSINESS CLASS" NameLatin="BUSINESS CLASS" AirlineCode="KL" FareType="C">
      <Description>
        Тариф BUSINESS CLASS/KL
        Meal(SNACK) : доступно
        Meal(BEVERAGE) : доступно
        Meal(MEAL) : доступно
        Exchange(CHANGEABLE TICKET) : доступно
        Miles(BUSINESS CLASS MILES ACCRUAL) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS CLASS/KL
        Meal(SNACK) : included
        Meal(BEVERAGE) : included
        Meal(MEAL) : included
        Exchange(CHANGEABLE TICKET) : included
        Miles(BUSINESS CLASS MILES ACCRUAL) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15617" id_FareFamilyService="9" id_FareFamily="181" Description="SNACK" DescriptionLatin="SNACK" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15618" id_FareFamilyService="9" id_FareFamily="181" Description="BEVERAGE" DescriptionLatin="BEVERAGE" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15619" id_FareFamilyService="9" id_FareFamily="181" Description="MEAL" DescriptionLatin="MEAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15620" id_FareFamilyService="7" id_FareFamily="181" Description="CHANGEABLE TICKET" DescriptionLatin="CHANGEABLE TICKET" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15621" id_FareFamilyService="8" id_FareFamily="181" Description="BUSINESS CLASS MILES ACCRUAL" DescriptionLatin="BUSINESS CLASS MILES ACCRUAL" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="132" id_FareFamily="181" id_System="3" Code="BUSINESS"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="182" Name="BUSINESS" NameLatin="BUSINESS" AirlineCode="UT" FareType="C">
      <Description>
        Тариф BUSINESS/UT
        Meal(ALCOHOLIC DRINK) : доступно
        Meal(NON ALCOHOLIC DRINK) : доступно
        Meal(MEAL) : доступно
        Exchange(CHANGEABLE TICKET) : доступно за дополнительную плату
        Miles(200 PERCENT MILES EARNED) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS/UT
        Meal(ALCOHOLIC DRINK) : included
        Meal(NON ALCOHOLIC DRINK) : included
        Meal(MEAL) : included
        Exchange(CHANGEABLE TICKET) : included with extra charge
        Miles(200 PERCENT MILES EARNED) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15622" id_FareFamilyService="9" id_FareFamily="182" Description="ALCOHOLIC DRINK" DescriptionLatin="ALCOHOLIC DRINK" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15623" id_FareFamilyService="9" id_FareFamily="182" Description="NON ALCOHOLIC DRINK" DescriptionLatin="NON ALCOHOLIC DRINK" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15624" id_FareFamilyService="9" id_FareFamily="182" Description="MEAL" DescriptionLatin="MEAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15625" id_FareFamilyService="7" id_FareFamily="182" Description="CHANGEABLE TICKET" DescriptionLatin="CHANGEABLE TICKET" Price="Extra charge" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15626" id_FareFamilyService="8" id_FareFamily="182" Description="200 PERCENT MILES EARNED" DescriptionLatin="200 PERCENT MILES EARNED" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="133" id_FareFamily="182" id_System="3" Code="BUSINESS"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="183" Name="BUSINESS" NameLatin="BUSINESS" AirlineCode="BT" FareType="C">
      <Description>
        Тариф BUSINESS/BT
        Meal(BUSINESS CLASS MEAL AND BEV) : доступно
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS/BT
        Meal(BUSINESS CLASS MEAL AND BEV) : included
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15627" id_FareFamilyService="9" id_FareFamily="183" Description="BUSINESS CLASS MEAL AND BEV" DescriptionLatin="BUSINESS CLASS MEAL AND BEV" Price="" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="134" id_FareFamily="183" id_System="3" Code="BUSINESS"/>
      </Relations>
    </FareFamily>
    <FareFamily id_FareFamily="188" Name="BUSINESS CLASSIC" NameLatin="BUSINESS CLASSIC" AirlineCode="AZ" FareType="C">
      <Description>
        Тариф BUSINESS CLASSIC/AZ
        Miles(MILEAGE ACCRUAL) : доступно
        Exchange(CHANGE BEFORE DEPARTURE) : доступно за дополнительную плату
      </Description>
      <DescriptionLatin>
        Fare family BUSINESS CLASSIC/AZ
        Miles(MILEAGE ACCRUAL) : included
        Exchange(CHANGE BEFORE DEPARTURE) : included with extra charge
      </DescriptionLatin>
      <Services>
        <ServiceToFareFamilyRelation id_Relation="15628" id_FareFamilyService="8" id_FareFamily="188" Description="MILEAGE ACCRUAL" DescriptionLatin="MILEAGE ACCRUAL" Price="" IsIncluded="true"/>
        <ServiceToFareFamilyRelation id_Relation="15629" id_FareFamilyService="7" id_FareFamily="188" Description="CHANGE BEFORE DEPARTURE" DescriptionLatin="CHANGE BEFORE DEPARTURE" Price="Extra charge" IsIncluded="true"/>
      </Services>
      <Relations>
        <FareFamilyGDSRelation id_Relation="139" id_FareFamily="188" id_System="3" Code="BIZCLASSIC"/>
      </Relations>
    </FareFamily>
  </Families>
</ReferenceContainer>

Errors

Контейнер ошибок, каждый элемент которого выглядит следующим образом:
Module: MASTERPRICERPARSER Method: TRYEXECUTE Error: TRANSACTION UNABLE TO PROCESS : CB (711 / 301)
В данном ответе сожержится следующая информация:

  • Module - название модуля, в котором произошла ошибка
  • Method - имя процедуры, в которой возникла ошибка
  • Error - описание ошибки
В данном примере приведена системная ошибка на стороне поставщика система бронирования Amadeus.




Структура запроса при отправке запроса в теле сообщения

  • id_Profile - int, число, идентификатор финансового профиля(финансовый профиль) для применения 3D и финусловий;
  • SecurityKey - ключ для работы с API;
  • IsMock - bool - используется только для разработки, для моментального получения прегенеренного ответа;
  • MultiItinerary - MultiItinerary.
    В корневой элемент MultiItinerary необходимо вставить список элементов Itinerary, полученный на этапе парсинга. В каждый элемент Itinerary необходимо добавить коллекцию пассажиров Passenger.
    <?xml version="1.0" encoding="utf-8"?>
    <Passengers>
      <Passenger Key="3251827403" FirstName="Ivan" LastName="Viktorov" MiddleName="Fedorovich" Date="05.10.1980 0:00:00" Gender="true" Type="Adult" CitizenshipCode="RU" DocumentNumber="123456789" DocumentValid="24.10.2027 0:00:00" Email="vikrorov@mail.ru" MobilePhone="+79033121020" MileCardNumber="123123213" MileCardAirline="SU">
        <Comments>
          <Comment>megadude</Comment>
          <Comment>superpax</Comment>
        </Comments>
      </Passenger>
      <Passenger...></Passenger...>
    </Passengers>
    • Passenger (пассажир) — человек, на которого оформляется авиаперевозка.

      Пассажиры делятся на три типа:

      • взрослый (12+ лет),
      • ребенок (02-12 лет, но не включая 12),
      • младенец (0-2 лет, но не включая 2 лет).

      Существуют некоторые особенности оформления бронирования:

      • пассажир с типом младенец (Infant) может быть забронирован только без места, т.е. совершать перелет он будет на одном месте с закрепленным за ним взрослым.
        Закрепление младенца в бронировании происходит по порядку занесения пассажиров в систему, т.е. первый младенец (Infant) автоматически привяжется к первому взрослому пассажиру (Adult), второй — ко второму, и т. д.
      • пассажир с типом ребенок (Child) также не может быть забронирован без сопровождения взрослого.
      • в брони должен присутствовать хотя бы один взрослый пассажир 18+.
        Пассажиры от 12 лет и не достигшие 18 лет, хотя и считаются взрослыми с точки зрения стоимости билета, не только не могут выступать сопровождающими для детей (Child) и младенцев (Infant), но и не могут сами быть забронированы отдельно от взрослого 18+ пассажира.

      Пассажир должен иметь следующие атрибуты:

      • Имя, фамилия и отчество (отчество используется по требованию ряда российских авиакомпаний и только на внутрироссийские перевозки).
      • Дата рождения пассажира.
      • Пол пассажира.
      • Гражданство — указывается код страны, гражданином которой является пассажир.
      • Номер документа и срок действия документа, по которому будет осуществляться перелет.
      • Контактные данные пассажира: электронная почта и мобильный телефон.
        Есть обязательное требование некоторых авиакомпаний о добавлении в бронь контактных данных пассажира, в том числе мобильного телефона, для оперативного уведомления пассажира о внештатных ситуациях, например, отмена или задержка рейса.
      • Бонусная (мильная) карта (номер карты и код авиаперевозчика-владельца бонусной программы), добавляется в случае ее наличия у пассажира.

      Поля класса:

      Тип XML-тип Название Комментарий Наличие в ответах Пример
      uint Attribute Key уникальный идентификатор пассажира всегда 3251827403
      string Attribute FirstName имя на латинице всегда Ivan
      string Attribute LastName фамилмя на латинице всегда Viktorov
      string Attribute MiddleName отчество на латинице всегда Fedorovich
      datetime Attribute Date дата рождения всегда 05.10.1980 0:00:00
      bool Attribute Gender пол пассажира (true = мужской, false = женский) всегда true
      string Attribute Type категория пассажира всегда Adult
      string Attribute CitizenshipCode ALPHA2-код страны гражданства всегда RU
      string Attribute DocumentNumber номер документа всегда 123456789
      datetime Attribute DocumentValid дата окончания срока действия всегда 16.10.2027 0:00:00
      string Attribute Email электронная почта пассажира если внесен в карточку пассажира vikrorov@mail.ru
      string Attribute MobilePhone телефон пассажира если внесен в карточку пассажира +79033121020
      string Attribute MileCardNumber номер мильной карты если внесена в карточку пассажира и выбрана при создании заказа 123123213
      string Attribute MileCardAirline код авиакомпании IATA - скачать список с openflights.org, чья мильная карта если внесена мильная карта SU
      string Element Comments / Comment комментарии по пассажиру если внесен superpax

Пример для отправки запроса в теле сообщения

<?xml version="1.0" encoding="utf-8"?>
<CommonBookingRequest SecurityKey="XXXXXXXXX" id_Profile="XXX">
  <MultiItinerary Key="2952619352" EquivTotal="46820">
    <Itinerary Key="3656370146" Locator="" EquivTotal="46820" id_System="3" FamilyCode="LIGHT" id_Profile="XXX" CorporateDiscountDetails="" ValidatingCarrier="LH" Timelimit="27.10.2017 23:00:00">
      <Fare Name="Economy">0</Fare>
      <Legs>
        <Leg Key="763472210" id_System="3" DurationMinutes="200">
          <Flight Key="3887373531" Airline="LH" OperatingAirline="LH" Number="2529" Origin="DME" OriginTerminal="" Destination="MUC" DestinationTerminal="2" DepartureDate="14.12.2017 17:00:00" ArrivalDate="14.12.2017 18:20:00" AirplaneCode="321" Status="HK" NumOfStops="0" RBD="S" FareName="S27LGT3A" SeatsStatus="9" AirlineLocator="" Baggage="0N">
            <MetaData>
              <Duration>03:20:00</Duration>
            </MetaData>
          </Flight>
        </Leg>
        <Leg Key="854588549" id_System="3" DurationMinutes="190">
          <Flight Key="2790682526" Airline="LH" OperatingAirline="LH" Number="2528" Origin="MUC" OriginTerminal="2" Destination="DME" DestinationTerminal="" DepartureDate="21.12.2017 10:55:00" ArrivalDate="21.12.2017 16:05:00" AirplaneCode="321" Status="HK" NumOfStops="0" RBD="S" FareName="S27LGT3A" SeatsStatus="9" AirlineLocator="" Baggage="0N">
            <MetaData>
              <Duration>03:10:00</Duration>
            </MetaData>
          </Flight>
        </Leg>
      </Legs>
      <Masks>
        <Mask Key="731313736" EquivTotal="16010" PassengerType="0" PassengerTypeName="Adult" PassengersQuantity="2">
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="2871105612" Value="8505" CurrencyCode="RUB" EquivValue="8505" VAT="0" EquivCode="RUB" />
          <ServiceFee Key="2843577119" Value="200" CurrencyCode="RUB" EquivValue="200" VAT="0" EquivCode="RUB" />
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB" />
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB" />
          <LegReferences>
            <Ref Key="763472210" />
            <Ref Key="854588549" />
          </LegReferences>
          <Taxes EquivValue="7305">
            <Tax Key="4225676050" Value="2296" CurrencyCode="RUB" EquivValue="2296" VAT="0" EquivCode="RUB" TaxCode="YQ" />
            <Tax Key="1677925207" Value="1080" CurrencyCode="RUB" EquivValue="1080" VAT="0" EquivCode="RUB" TaxCode="YR" />
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI" />
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI" />
            <Tax Key="2545830370" Value="420" CurrencyCode="RUB" EquivValue="420" VAT="0" EquivCode="RUB" TaxCode="UH" />
            <Tax Key="2932565736" Value="505" CurrencyCode="RUB" EquivValue="505" VAT="0" EquivCode="RUB" TaxCode="OY" />
            <Tax Key="2224817760" Value="485" CurrencyCode="RUB" EquivValue="485" VAT="0" EquivCode="RUB" TaxCode="DE" />
            <Tax Key="3033834777" Value="1483" CurrencyCode="RUB" EquivValue="1483" VAT="0" EquivCode="RUB" TaxCode="RA" />
          </Taxes>
        </Mask>
        <Mask Key="3735598272" EquivTotal="13820" PassengerType="1" PassengerTypeName="Child" PassengersQuantity="1">
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="20128614" Value="6415" CurrencyCode="RUB" EquivValue="6415" VAT="0" EquivCode="RUB" />
          <ServiceFee Key="1916341366" Value="100" CurrencyCode="RUB" EquivValue="100" VAT="0" EquivCode="RUB" />
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB" />
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB" />
          <LegReferences>
            <Ref Key="763472210" />
            <Ref Key="854588549" />
          </LegReferences>
          <Taxes EquivValue="7305">
            <Tax Key="4225676050" Value="2296" CurrencyCode="RUB" EquivValue="2296" VAT="0" EquivCode="RUB" TaxCode="YQ" />
            <Tax Key="1677925207" Value="1080" CurrencyCode="RUB" EquivValue="1080" VAT="0" EquivCode="RUB" TaxCode="YR" />
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI" />
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI" />
            <Tax Key="2545830370" Value="420" CurrencyCode="RUB" EquivValue="420" VAT="0" EquivCode="RUB" TaxCode="UH" />
            <Tax Key="2932565736" Value="505" CurrencyCode="RUB" EquivValue="505" VAT="0" EquivCode="RUB" TaxCode="OY" />
            <Tax Key="2224817760" Value="485" CurrencyCode="RUB" EquivValue="485" VAT="0" EquivCode="RUB" TaxCode="DE" />
            <Tax Key="3033834777" Value="1483" CurrencyCode="RUB" EquivValue="1483" VAT="0" EquivCode="RUB" TaxCode="RA" />
          </Taxes>
        </Mask>
        <Mask Key="663020162" EquivTotal="980" PassengerType="2" PassengerTypeName="Infant" PassengersQuantity="1">
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="924027096" Value="880" CurrencyCode="RUB" EquivValue="880" VAT="0" EquivCode="RUB" />
          <ServiceFee Key="1916341366" Value="100" CurrencyCode="RUB" EquivValue="100" VAT="0" EquivCode="RUB" />
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB" />
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB" />
          <LegReferences>
            <Ref Key="763472210" />
            <Ref Key="854588549" />
          </LegReferences>
        </Mask>
      </Masks>
      <Passengers>
        <Passenger Key="3251827403" FirstName="Ivan" LastName="Viktorov" MiddleName="Fedorovich" Date="05.10.1980 0:00:00" Gender="true" Type="Adult" CitizenshipCode="RU" DocumentNumber="123456789" DocumentValid="24.10.2027 0:00:00" Email="vikrorov@mail.ru" MobilePhone="+79033121020" MileCardNumber="123123213" MileCardAirline="SU">
          <Comments>
            <Comment>megadude</Comment>
            <Comment>superpax</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="1389018444" FirstName="Aleftina" LastName="ViktorovaZabugornaya" MiddleName="Stepanovna" Date="01.12.1989 0:00:00" Gender="false" Type="Adult" CitizenshipCode="RU" DocumentNumber="1111122222" DocumentValid="24.10.2022 0:00:00" Email="" MobilePhone="+79263300205" MileCardNumber="" MileCardAirline="">
          <Comments>
            <Comment>just a girl</Comment>
            <Comment>useless pax</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="1330916686" FirstName="Vanessa" LastName="Viktorova" MiddleName="Fedorovna" Date="24.10.2012 0:00:00" Gender="false" Type="Child" CitizenshipCode="RU" DocumentNumber="3333344444" DocumentValid="24.10.2021 0:00:00" Email="vikrorovavanessa@yandex.ru" MobilePhone="" MileCardNumber="" MileCardAirline="">
          <Comments>
            <Comment>its just a kid</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="2214666481" FirstName="Vincent" LastName="Sharapov" MiddleName="Bugurtovich" Date="24.10.2016 0:00:00" Gender="true" Type="Infant" CitizenshipCode="RU" DocumentNumber="111122222" DocumentValid="24.10.2022 0:00:00" Email="" MobilePhone="" MileCardNumber="" MileCardAirline="">
          <Comments>
            <Comment>babe</Comment>
          </Comments>
        </Passenger>
      </Passengers>

    </Itinerary>
  </MultiItinerary>
</CommonBookingRequest>

Пример успешного ответа

<?xml version="1.0" encoding="utf-8"?>
<CommonBookingResponse>
  <Errors/>
  <ReferenceContainer>...</ReferenceContainer>
  <MultiItinerary Key="2952619352" EquivTotal="46820">
    <Itinerary Key="3656370146" Locator="R9NFLV" EquivTotal="46820" id_System="3" FamilyCode="LIGHT" id_Profile="XXX" CorporateDiscountDetails="" ValidatingCarrier="LH" Timelimit="27.10.2017 23:00:00">
      <Fare Name="Economy">0</Fare>
      <Legs>
        <Leg Key="763472210" id_System="3" DurationMinutes="200">
          <Flight Key="3887373531" Airline="LH" OperatingAirline="LH" Number="2529" Origin="DME" OriginTerminal="" Destination="MUC" DestinationTerminal="2" DepartureDate="14.12.2017 17:00:00" ArrivalDate="14.12.2017 18:20:00" AirplaneCode="321" Status="HK" NumOfStops="0" RBD="S" FareName="S27LGT3A" SeatsStatus="9" AirlineLocator="" Baggage="0N">
            <MetaData>
              <Duration>03:20:00</Duration>
              <AmadeusId>1</AmadeusId>
            </MetaData>
          </Flight>
        </Leg>
        <Leg Key="854588549" id_System="3" DurationMinutes="190">
          <Flight Key="2790682526" Airline="LH" OperatingAirline="LH" Number="2528" Origin="MUC" OriginTerminal="2" Destination="DME" DestinationTerminal="" DepartureDate="21.12.2017 10:55:00" ArrivalDate="21.12.2017 16:05:00" AirplaneCode="321" Status="HK" NumOfStops="0" RBD="S" FareName="S27LGT3A" SeatsStatus="9" AirlineLocator="" Baggage="0N">
            <MetaData>
              <Duration>03:10:00</Duration>
              <AmadeusId>2</AmadeusId>
            </MetaData>
          </Flight>
        </Leg>
      </Legs>
      <Masks>
        <Mask Key="895313732" EquivTotal="16010" PassengerType="0" PassengerTypeName="Adult" PassengersQuantity="2">
          <MetaData>
            <AmadeusId>1</AmadeusId>
          </MetaData>
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="2871105612" Value="8505" CurrencyCode="RUB" EquivValue="8505" VAT="0" EquivCode="RUB"/>
          <ServiceFee Key="2843577119" Value="200" CurrencyCode="RUB" EquivValue="200" VAT="0" EquivCode="RUB"/>
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB"/>
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB"/>
          <PaxReferences>
            <Ref>3251827403</Ref>
            <Ref>1389018444</Ref>
          </PaxReferences>
          <LegReferences>
            <Ref Key="763472210"/>
            <Ref Key="854588549"/>
          </LegReferences>
          <Taxes EquivValue="7305">
            <Tax Key="4225676050" Value="2296" CurrencyCode="RUB" EquivValue="2296" VAT="0" EquivCode="RUB" TaxCode="YQ"/>
            <Tax Key="1677925207" Value="1080" CurrencyCode="RUB" EquivValue="1080" VAT="0" EquivCode="RUB" TaxCode="YR"/>
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI"/>
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI"/>
            <Tax Key="2545830370" Value="420" CurrencyCode="RUB" EquivValue="420" VAT="0" EquivCode="RUB" TaxCode="UH"/>
            <Tax Key="2932565736" Value="505" CurrencyCode="RUB" EquivValue="505" VAT="0" EquivCode="RUB" TaxCode="OY"/>
            <Tax Key="2224817760" Value="485" CurrencyCode="RUB" EquivValue="485" VAT="0" EquivCode="RUB" TaxCode="DE"/>
            <Tax Key="3033834777" Value="1483" CurrencyCode="RUB" EquivValue="1483" VAT="0" EquivCode="RUB" TaxCode="RA"/>
          </Taxes>
        </Mask>
        <Mask Key="1700970822" EquivTotal="13820" PassengerType="1" PassengerTypeName="Child" PassengersQuantity="1">
          <MetaData>
            <AmadeusId>2</AmadeusId>
          </MetaData>
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="20128614" Value="6415" CurrencyCode="RUB" EquivValue="6415" VAT="0" EquivCode="RUB"/>
          <ServiceFee Key="1916341366" Value="100" CurrencyCode="RUB" EquivValue="100" VAT="0" EquivCode="RUB"/>
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB"/>
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB"/>
          <PaxReferences>
            <Ref>1330916686</Ref>
          </PaxReferences>
          <LegReferences>
            <Ref Key="763472210"/>
            <Ref Key="854588549"/>
          </LegReferences>
          <Taxes EquivValue="7305">
            <Tax Key="4225676050" Value="2296" CurrencyCode="RUB" EquivValue="2296" VAT="0" EquivCode="RUB" TaxCode="YQ"/>
            <Tax Key="1677925207" Value="1080" CurrencyCode="RUB" EquivValue="1080" VAT="0" EquivCode="RUB" TaxCode="YR"/>
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI"/>
            <Tax Key="3338269161" Value="518" CurrencyCode="RUB" EquivValue="518" VAT="0" EquivCode="RUB" TaxCode="RI"/>
            <Tax Key="2545830370" Value="420" CurrencyCode="RUB" EquivValue="420" VAT="0" EquivCode="RUB" TaxCode="UH"/>
            <Tax Key="2932565736" Value="505" CurrencyCode="RUB" EquivValue="505" VAT="0" EquivCode="RUB" TaxCode="OY"/>
            <Tax Key="2224817760" Value="485" CurrencyCode="RUB" EquivValue="485" VAT="0" EquivCode="RUB" TaxCode="DE"/>
            <Tax Key="3033834777" Value="1483" CurrencyCode="RUB" EquivValue="1483" VAT="0" EquivCode="RUB" TaxCode="RA"/>
          </Taxes>
        </Mask>
        <Mask Key="1604855732" EquivTotal="980" PassengerType="2" PassengerTypeName="Infant" PassengersQuantity="1">
          <MetaData>
            <AmadeusId>3</AmadeusId>
          </MetaData>
          <Endorsement>
            NON-REFUNDABLE
            NO REBOOKING REQUIRED FOR LOWEST AVAILABLE FARE
            - SEE ADV PURCHASE
            FARE FAMILIES:    (ENTER FQFn FOR DETAILS, FXY FOR UPSELL)
            FARE FAMILY:FC1:1:LIGHT
            FARE FAMILY:FC2:2:LIGHT
            NO BAG INCLUDED FOR AT LEAST ONE FLIGHT
            TICKET STOCK RESTRICTION
            BG CXR: LH/LH
            PRICED WITH VALIDATING CARRIER LH - REPRICE IF DIFFERENT VC
          </Endorsement>
          <VATRemark>NO VAT</VATRemark>
          <BaseFare Key="924027096" Value="880" CurrencyCode="RUB" EquivValue="880" VAT="0" EquivCode="RUB"/>
          <ServiceFee Key="1916341366" Value="100" CurrencyCode="RUB" EquivValue="100" VAT="0" EquivCode="RUB"/>
          <HiddenFee Key="2001352511" Value="0" CurrencyCode="RUB" EquivValue="0" VAT="0" EquivCode="RUB"/>
          <Commission Key="2558155814" Value="1" CurrencyCode="RUB" EquivValue="1" VAT="0" EquivCode="RUB"/>
          <PaxReferences>
            <Ref>2214666481</Ref>
          </PaxReferences>
          <LegReferences>
            <Ref Key="763472210"/>
            <Ref Key="854588549"/>
          </LegReferences>
        </Mask>
      </Masks>
      <Passengers>
        <Passenger Key="3251827403" FirstName="Ivan" LastName="Viktorov" MiddleName="Fedorovich" Date="05.10.1980 0:00:00" Gender="true" Type="Adult" CitizenshipCode="RU" DocumentNumber="123456789" DocumentValid="24.10.2027 0:00:00" Email="vikrorov@mail.ru" MobilePhone="+79033121020" MileCardNumber="123123213" MileCardAirline="SU">
          <MetaData>
            <AmadeusId>2</AmadeusId>
          </MetaData>
          <Comments>
            <Comment>megadude</Comment>
            <Comment>superpax</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="1389018444" FirstName="Aleftina" LastName="ViktorovaZabugornaya" MiddleName="Stepanovna" Date="01.12.1989 0:00:00" Gender="false" Type="Adult" CitizenshipCode="RU" DocumentNumber="1111122222" DocumentValid="24.10.2022 0:00:00" Email="" MobilePhone="+79263300205" MileCardNumber="" MileCardAirline="">
          <MetaData>
            <AmadeusId>4</AmadeusId>
          </MetaData>
          <Comments>
            <Comment>just a girl</Comment>
            <Comment>useless pax</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="1330916686" FirstName="Vanessa" LastName="Viktorova" MiddleName="Fedorovna" Date="24.10.2012 0:00:00" Gender="false" Type="Child" CitizenshipCode="RU" DocumentNumber="3333344444" DocumentValid="24.10.2021 0:00:00" Email="vikrorovavanessa@yandex.ru" MobilePhone="" MileCardNumber="" MileCardAirline="">
          <MetaData>
            <AmadeusId>5</AmadeusId>
          </MetaData>
          <Comments>
            <Comment>its just a kid</Comment>
          </Comments>
        </Passenger>
        <Passenger Key="2214666481" FirstName="Vincent" LastName="Sharapov" MiddleName="Bugurtovich" Date="24.10.2016 0:00:00" Gender="true" Type="Infant" CitizenshipCode="RU" DocumentNumber="111122222" DocumentValid="24.10.2022 0:00:00" Email="" MobilePhone="" MileCardNumber="" MileCardAirline="">
          <MetaData>
            <AmadeusId>2</AmadeusId>
          </MetaData>
          <Comments>
            <Comment>babe</Comment>
          </Comments>
        </Passenger>
      </Passengers>
      <SSRs>
        <SSR Key="1171217623" AirlineCode="LH" Type="INFT" Content="SHARAPOV/VINCENT 24OCT16" Status="HK">
          <FlightReferences>
            <FlightReference>3887373531</FlightReference>
          </FlightReferences>
          <PaxReferences>
            <PaxReference>53514161</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="2969941667" AirlineCode="LH" Type="INFT" Content="SHARAPOV/VINCENT 24OCT16" Status="HK">
          <FlightReferences>
            <FlightReference>2790682526</FlightReference>
          </FlightReferences>
          <PaxReferences>
            <PaxReference>53514161</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="524468187" AirlineCode="LH" Type="CHLD" Content="24OCT12" Status="HK">
          <PaxReferences>
            <PaxReference>3638095934</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="169371048" AirlineCode="LH" Type="DOCS" Content="P/RU/123456789/RU/05OCT80/M/24OCT27/VIKTOROV/IVAN" Status="HK">
          <PaxReferences>
            <PaxReference>53514161</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="1794767093" AirlineCode="LH" Type="FQTV" Content="SU 123123213" Status="HK">
          <PaxReferences>
            <PaxReference>53514161</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="2357312283" AirlineCode="LH" Type="DOCS" Content="P/RU/1111122222/RU/01DEC89/F/24OCT22/VIKTOROVAZABUGORNAYA/ALEFTINA" Status="HK">
          <PaxReferences>
            <PaxReference>2888799580</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="2752244734" AirlineCode="LH" Type="DOCS" Content="P/RU/3333344444/RU/24OCT12/F/24OCT21/VIKTOROVA/VANESSA" Status="HK">
          <PaxReferences>
            <PaxReference>3638095934</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="1475352883" AirlineCode="LH" Type="DOCS" Content="P/RU/111122222/RU/24OCT16/MI/24OCT22/SHARAPOV/VINCENT" Status="HK">
          <PaxReferences>
            <PaxReference>53514161</PaxReference>
          </PaxReferences>
        </SSR>
        <SSR Key="3868625504" AirlineCode="LH" Type="OSI" Content="LH CTCM 0079033121020" Status="HK"/>
        <SSR Key="1728263527" AirlineCode="LH" Type="OSI" Content="LH CTCM 0079263300205" Status="HK"/>
      </SSRs>
    </Itinerary>
  </MultiItinerary>
</CommonBookingResponse>