Агентский API Авиабилеты: различия между версиями
(→Пример запроса и ответа) |
(→Агентский АПИ выписки) |
||
Строка 18: | Строка 18: | ||
Агентский АПИ выписки позволяет определить валидирующего перевозчика и значение комиссии от авиакомпании для брони, а также запустить процедуру выписки билета. | Агентский АПИ выписки позволяет определить валидирующего перевозчика и значение комиссии от авиакомпании для брони, а также запустить процедуру выписки билета. | ||
− | + | <span style="background-color:#fff0f5;"><span style="font-size:large;"><span style="color:#ff0000;">!</span></span> Как правило для выписки билета достаточно сформировать запрос на проставление статуса "ОПЛАЧЕНО". При включенной опции «Производить оформление билета: автоматически» билет будет выпущен в фоновом режиме. | |
+ | |||
+ | В Nemo 2.0 в агентский сервис (интерфейс к серверу бронирования) добавлены дополнительные настройками для выписки авиабилетов. В новой версии АПИ позволяет: | ||
+ | |||
+ | *принимать запросы на возможность тикетинга; | ||
+ | *сообщать ВП (валидирующего перевозчика) по данной комбинации; | ||
+ | *сообщать комиссию по данной комбинации; | ||
+ | *сообщать эндорсменты по данной комбинации; | ||
+ | *принимать запрос на тикетинг; | ||
+ | *проверять наличие брони в ГДС; | ||
+ | *синхронизировать бронь; | ||
+ | *выписывать билет | ||
+ | *присылать маршрут-квитанцию; | ||
+ | *войдировать билет; | ||
== Отмена бронирования == | == Отмена бронирования == |
Версия 04:54, 25 марта 2012
Содержание
Агентский АПИ поиска авиабилетов и бронирования
1. Запрос на бронирование 2. Односторонний перелет: Москва - Санкт-Петербург 3. Перелет Москва - Санкт-петербург
1. Подключение 2. Просмотр результатов 3. Односторонний перелет 4. Перелет туда-обратно 5. Сложный маршрут
Агентский АПИ выписки
Агентский АПИ выписки позволяет определить валидирующего перевозчика и значение комиссии от авиакомпании для брони, а также запустить процедуру выписки билета.
! Как правило для выписки билета достаточно сформировать запрос на проставление статуса "ОПЛАЧЕНО". При включенной опции «Производить оформление билета: автоматически» билет будет выпущен в фоновом режиме.
В Nemo 2.0 в агентский сервис (интерфейс к серверу бронирования) добавлены дополнительные настройками для выписки авиабилетов. В новой версии АПИ позволяет:
- принимать запросы на возможность тикетинга;
- сообщать ВП (валидирующего перевозчика) по данной комбинации;
- сообщать комиссию по данной комбинации;
- сообщать эндорсменты по данной комбинации;
- принимать запрос на тикетинг;
- проверять наличие брони в ГДС;
- синхронизировать бронь;
- выписывать билет
- присылать маршрут-квитанцию;
- войдировать билет;
Отмена бронирования
После бронирования, если не истек таймлимит можно аннулировать сделанный заказ. Аннуляция заказа в Nemo может быть ручной (сделанной пользователем) и автоматической - по истечению таймлимита, установленного для заказа система сама аннулирует заказ.
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=CancelBook
Пример запроса и ответа на аннуляцию заказа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:CancelBook> <RequestBin> <Request> <!--Запрос, обязательный--> <CancelBook> <!--BookID - Ид брони в системе немо, целое число, обязательный--> <BookID>20990</BookID> </CancelBook> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:CancelBook> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:CancelBook> <ResponseBin> <Response> <!--Запрос, обязательный--> <!--@BookID - Ид брони в системе немо, целое число, обязательный--> <CancelBook BookID="20990"> <!--Result, Отмена брони, обязательный--> <!--@Sucscess, Результат отмены брони, true или false, обязательный--> <Result Success="true"/> </CancelBook> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:CancelBook> </soapenv:Body> </soapenv:Envelope>
Проверка на доступность
Данный запрос отправляется из Nemo после того как пользователь на результатах поиска нажимает ссылку «забронировать». Он необходим для того чтобы перед подтверждением бронирования повторно проверить перелет на доступность и исключить максимально возможное количество заказов, которые нельзя будет забронировать из-за сервисных ошибок, либо изменения условий (например, снятия мест).
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=AirAvail
Пример запроса и ответа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:AirAvail> <RequestBin> <Request> <AirAvail> <!--Запрос, обязательный--> <!--FlightId ид перелёта в системе Немо, обязательный--> <FlightId>534733</FlightId> </AirAvail> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:AirAvail> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:AirAvail> <ResponseBin> <Response> <!--Запрос, обязательный--> <!--@FlightId ид перелёта в системе Немо, обязательный--> <!--@IsAvail доступность перелёта, true или false, обязательный--> <AirAvail FlightId="534733" IsAvail="true"/> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:AirAvail> </soapenv:Body> </soapenv:Envelope>
Параметры, используемые в запросах
<td">строкаИмя элемента | Обязательный | Тип | Описание |
---|---|---|---|
BookFlight | да | сложный | Контейнер для тела запроса бронирования |
FlightId | да | число | ИД перелёта для которого будет производится бронирование(поиск тарифных правил, проверка доступности) |
ValidatingCompany | нет | строка | Код авиакомпании, на бланке которой будет выписываться билет |
BookingCodes | нет | сложный | Список классов авиа перелётов для бронирования. Рекомендуется заполнять, если бронируется перелёт из результатов поиска по расписанию. |
BookingCode | да | сложный | Класс авиа перелёта для конкретного сегмента перелёта |
Code | да | строка | Литера класса перелёта (Двух буквенный код авиакомпании) |
SegNumber | да | число | Номер сегмента |
CurrencyCode | нет | строка | Трёх буквенный код валюты (обязателен для комиссии в валюте) |
TicketTimeLimit | нет | Таймлимит выписки, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС. Используется для установки своего собственного таймлимита вручную | |
Agency | да | сложный | Информация об агентстве |
Name | да | строка | Название агентства |
Telephone | нет | сложный | Контактный телефон агентства |
Type | да | строка | Тип номера, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агентство |
PhoneNumber | да | строка | Номер телефона |
CountryAccessCode | нет | строка | Код страны |
AreaCityCode | нет | строка | Код региона/города |
Address | да | сложный | Адрес агентства |
City | да | строка | Город, в котором расположено агентство |
StreetAddress | нет | сложный | Адрес агентства в городе (улица, дом, корпус, офис и т.д.) |
PostalCode | нет | строка | Почтовый код, индекс. |
CountryCode | нет | строка | Код страны (RU, UA, US и т.д.) |
Travellers | да | сложный | Контейнер для информации о пассажирах (для которых будет производится поиск перелёта, бронирование) |
Traveller | да | сложный | Информация о пассажире |
Type | да | строка | Тип пассажира возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы,INS - младенцы с местом |
IsContact | нет | булевский | Индикатор показывающий является ли данное лицо контактным, возможные значение: true - пассажир является контактным лицом, false - не является. Контактное лицо может быть только одно, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом. Если не указано, то по умолчанию false. |
LinkedTo | нет | целое число | Номер взрослого, к которому привязан младенец/ребёнок |
Num | да | число | Номер пассажира. |
PreferedPlace | нет | сложный | Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры Smoking и Location игнорируются и могут быть не указаны. |
SmokingAllowed | нет | булевский | true - место для курящих, false - место для некурящих. По умолчанию false. |
Location | нет | строка | Расположение места, возможные значения: W - у окна (Window); M - где-то в середине ряда (Middle); NPW - возле прохода (NearPassengerWay); NS - нет предпочтения (NotSpecified). |
RowNumber | нет | строка | Номер ряда |
PlaceNumber | нет | строка | Номер места |
SegNumber | да | строка | Номер сегмента |
DocumentInfo | да | сложный | Паспортные данные |
DocType | да | строка | Тип документа, обязательный. |
DocNum | да | строка | Номер документа |
CountryCode | да | строка | Страна выдачи, двух буквенный код(RU, US и т.д.) |
DocElapsedTime | да | строка | Срок истечения срока действия паспорта в фирмате dd.mm.yyyy (например 31.12.2012) |
VisaInfo | нет | сложный | Информация о визе |
Num | да | строка | Номер визы |
IssueDate | да | строка | Дата выдачи визы в формате dd.mm.yyyy |
IssueCountry | да | строка | Страна выдачи визы |
IssuePlace | да | строка | Место выдачи визы |
BirthCountry | нет | строка | Страна рождения (IATA код страны) |
BirthCity | нет | строка | Город рождения (название) |
ArrAddress | нет | сложный | Адрес прибытия, для въезжающих в США (не граждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнять при посадке на самолёт. |
CountryCode | да | строка | IATA код страны |
State | да | строка | Штат или область въезда |
PostalCode | да | строка | Почтовый код |
City | да | строка | Город |
StreetAddress | да | строка | Адрес: улица, номер дома, квартиры и тп |
DocStringFormats | нет | сложный | Список форматов строк паспортных данных, которые будут отправлены в дополнение к стандартным. |
DocStringFormat | да | строка | Формат данных, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID. Установка данных в формате DOCS как правило необходима для последующей выписки в BSP среде. Установка FOID - всреде ТКП. |
PersonalInfo | да | сложный | Персональные данные пассажира |
DateOfBirth | да | строка | Дата рождения в формате dd.mm.yyyy (например 31.12.2000) |
Nationality | да | строка | Национальность/гражданство, двух буквенный код страны (RU, UA, US и т.д.) |
Gender | да | строка | Пол пассажира, обязательный, возможные значения: M - мужской(Male); F - женский(Female). |
FirstName | да | строка | Имя пассажира |
LastName | да | строка | Фамилия пассажира |
BMiddleName | да | строка | Отчество пассажира |
Meal | нет | строка | Код типа питания, возможные значения: NONE - отсутствует (по умолчанию); AVML - Азиатская вегетарианская кухня; BLML - Блюда щадящей диеты; CHML - Детское питание; CHPC - Детский холодный завтрак; СНСС - Детский горячий завтрак; CHHC - Детский ланч, ветчина и сыр; PBJS - Детский ланч, ореховое масло; CHMC - Детский обед макароны с сыром; DBML - Диабетическое питание; FPML - Фрукты; GFML - Питание без клейковины; HFML - Питание богатое клетчаткой; HNML - Индусская кухня; BBML - Питание для младенцев; KSML - Кошерная кухня; SMKB - Кошерный завтрак; SMKL - Кошерный ланч; SMKD - Кошерный обед; LPML - Малобелковое питание; LCML - Низкокалорийное питание; LFML - Низкохолестериновое питание; PRML - Низкопуриновое питание; LSML - Малосоленое питание; MOML - Мюсли; NLML - Безмолочные продукты; ORML - Восточная кухня; RVML - Сырые овощи; SFML - Морепродукты; SPML - Особое питание; VLML - Вегетарианское, молоко и яйца; VGML - Строго вегетарианское питание; VJML - Джайнизское вегетарианское; VOML - Восточное вегетарианское питание. |
LoyaltyCard | нет | сложный | Карточка часто летающего пассажира |
OpCode | да | строка | IATA код компании авиаперевозчика |
Number | да | строка | Номер карточки |
ContactInfo | нет | сложный | Контактная информация для пассажира |
EmailID | нет | строка | Контактный email |
Telephone | нет | сложный | Контактный телефон пассажира, описание аналогично описанию телефона агентства |
QueueNum | нет | строка | Номер очереди, в которую необходимо поместить бронирование (Специфична для поставщика). |
CancelBook | да | сложный | Контейнер для тела запроса отмены брони |
BookID | да | число | Номер брони, которая будет отменяться (для которой будет производится выписка, отмена выписки) |
GetAirRules | да | сложный | Контейнер для тела запроса поиска тарифных правил |
AirAvail | да | сложный | Контейнер для тела запроса проверки доступности перелёта |
Ticketing | да | сложный | Контейнер для тела запроса выписки брони |
ValCompany | нет | строка | Валидирующий перевозчик, на бланке которого выписывается билет |
Comission | нет | сложный | Комиссия |
Amount | нет | число с плавающей точкой | Значение комиссии в валюте, если указано, то комиссия в процентах игнорируется |
Percent | нет | число | Комиссия в процентах |
VoidTicket | да | сложный | Контейнер для тела запроса отмены выписки брони |
Search | да | сложный | Контейнер для тела запроса поиска |
ODPairs | да | сложный | Контейнер для информации о перелёте |
Type | да | строка | Тип перелёта, возможные значения: OW - в одну сторону, RT - туда-обратно, CT - сложный маршрут |
Direct | нет | булевский | Индикатор, указывающий какие перелёты искать, только прямые или с пересадками, возможные значения: false - с пересадками, true - только прямые. Если не указан, значение по умолчанию false. |
AroundDates | нет | число | Включает поиск по окружным датам, количество дней +/- от даты заезда/возвращения. Применим только для типов перелёта в одну сторону(OW) и туда-обратно(RT). Возможные значения: 0, 1, 2, 3 |
ODPair | да | сложный | Контейнер для информации о сегменте перелёта. Может повторяться 1-6 раз. Поиск по расписанию использует только первый сегмент, поиск сложных перелётов и перелётов туда и обратно не поддерживается |
DepDate | да | строка | Дата вылета, Формат ГГГГ-MM-DDTЧЧ:ММ:СС |
DepAirp | да | строка | Трёх буквенный код города отправления или конкретного аэропорта в городе отправления. |
ArrAirp | да | строка | Трёх буквенный код города прибытия или конкретного аэропорта в городе прибытия. |
Count | да | число | Число пассажиров данного типа. Общее количество пассажиров всех типов должно быть не более 9. |
Restrictions | нет | сложный | Контейнер дополнительной информации для поиска. |
ClassPref | нет | строка | Предпочитаемый класс перелёта, возможные значения: All - все, Economy - эконом, Business - бизнес, First - первый. Если не указан, то по умолчанию All. |
OnlyAvail | нет | булевский | Искать только доступные, возможные значения: true - только доступные, false - все. Если не указан, то по умолчанию false. |
AirVPrefs | нет | сложный | Обёртка для списка авиакомпаний, по которым будет или не будет проводиться поиск. |
AirVPref | да | сложный | Информация об авиакомпании. |
Include | нет | булевский | Индикатор, показывающий включить или исключить в результатах поиска перелёты данной авиакомпании: true - включить, false - исключить. Если не указан, то по умолчанию false. |
IncludePrivateFare | нет | булевский | Включать приватные цены в результат или нет, возможные значения: true - включать, false - не включать. Если не указан, то по умолчанию false. |
ServiceTypes | нет | сложный хмл | Контейнер массива используемых веб-сервисов при поиске. |
ServiceType | нет | строка | Тип веб-сервиса(поставщика). При указании нескольких элементов ServiceType поиск будет проведён для каждого сервиса. Возможные значения: Sirena2000 - поиск в Сирене; SirenaSchedule - поиск в Сирене по расписанию; SabreLFS - поиск в Сэйбр LFS; SabreBFM - поиск в Сэйбр BFM; SabreSchedule - поиск Сэйбр по расписанию; Galileo - поиск в Галилео; AmadeusMPTBS - поиск в Амадеус. |
Параметры, используемые в ответах
Имя элемента | Обязательный | Тип | Описание |
---|---|---|---|
BookFlightResult | да | сложный | Контейнер для тела ответа бронирования |
ID | да | число | Номер бронирования в системе Немо. |
Status | да | строка | Статус брони, возможные значения: booked - забронировано, canceled - бронь отменена, ticket - выписана; UNDEFINED - статус не определён. |
Code | да | строка | Номер бронирования в системе поставщика (в sabre, sirena и т.д.)/код тарифного правила |
QueryPlace | нет | сложный | Очередь, в которую помещено бронирование |
Number | да | число | Номер очереди |
Flight | да | сложный | Перелёт, по которому была сделана бронь (Результаты проверки доступности для перелёта) |
Agency | да | сложный | Информация об агентстве |
ItinReceipts | нет | сложный | Маршрут квитанция. Содержит строку в кодировки Encoding (как правило в base64), представляющую маршрут квитанцию в формате Format. |
Encoding | да | строка | Кодировка |
Format | да | строка | Формат |
Travellers | да | сложный | Контейнер для информации о пассажирах |
Traveller | да | сложный | Информация о пассажире |
Ticket | нет | сложный | Билет пассажира. |
TickectNum | да | строка | Номер билета |
Seats | нет | сложный | Контейнер мест пассажира. |
Seat | да | сложный | Место в самолёте |
Number | да | строка | Номер места(ряд+номер в ряду) |
Characteristic | нет | строка | Характеристика места в соответствии со стандартом EDIFACT. См справочник “Таблица характеристик мест”. |
SmokingPreference | нет | строка | Статус курения на этом месте, если Y - место для курящих, если N - место для некурящих. |
SegmentNumber | да | число | Номер сегмента |
PersonalInfo | да | сложный | Личные данные |
LoyaltyCard | нет | сложный | Карточка часто летающего пассажира |
ContactInfo | нет | сложный | Контактная информация для пассажира |
FareStored | нет | срока: Yes/No | Указывает установлена ли / гарантируется ли цена у поставщика. Если параметр отсутствует в ответе, то по умолчанию значение “Yes”. |
CancelBookResult | да | сложный | Контейнер для тела ответа отмены брони |
BookID | да | число | Номер брони, которая отменялась (Номер выписанной брони, выписка которой отменялась) |
Result | да | сложный | Результат отмены (войдирования) |
Success | да | булевский | Индикатор, показывающий успешно или нет прошла отмена, возможные значения: true - успешно отменена (войдирование); false - не отменена |
GetAirRulesResult | да | сложный | Контейнер для тела ответа поиска тарифных правил |
FlightId | да | число | Номер перелёта, для которого найдены тарифные правила (будет проводилась проверка доступности) |
Rules | да | сложный | Контейнер для правил |
Rule | да | сложный | Правило |
Tarrif | да | строка | Код тарифа, для которого правило применяется |
Name | да | строка | Имя правила |
RuleText | да | строка | Текст правила |
AirAvailResult | да | сложный | Контейнер для тела ответа помещения брони в очередь |
IsAvail | да | булевский | Индикатор, показывающий доступность перелёта, возможные значения: true - доступен; false - недоступен |
VoidTicketResult | да | сложный | Контейнер для тела ответа отмены выписки брони |
SearchResult | нет | сложный | Контейнер тела ответа для результатов поиска. |
Flights | да | сложный | Контейнер для перелётов |
Flight | нет | сложный | Представляет информацию о перелёте. Отсутствует если перелётов не найдено (используется в поисковом ответе) |
WebService | да | строка | Веб-сервис (поставщик) от которого был получен перелёт. |
ValCompany | нет | строка | IATA код авиакомпании. Валидирующий перевозчик, на бланках которого должен выписываться билет. |
Segments | да | сложный | Контейнер для сегментов перелёта |
Segment | да | сложный | Представляет информацию о сегменте |
SegNum | да | число | Номер сегмента в перелёте |
DepAirp | да | строка | IATA код аэропорта отправления |
DepTerminal | нет | строка | Код терминала отправления |
ArrAirp | да | строка | IATA код аэропорта прибытия |
ArrTerminal | нет | строка | Код терминала прибытия |
OpAirline | да | строка | Код авиакомпании, выполняющей рейс |
MarkAirline | да | строка | Код авиакомпании, продающей билет |
FlightNumber | да | число | Номер рейса |
AircraftType | да | строка | Код типа самолёта |
DepDateTime | да | строка | Дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС |
ArrDateTime | да | строка | Дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС |
StopNum | да | число | Число остановок |
Meal | да | строка | Тип питания, возможные значения: UNDEFINED - неизвестно; N - Нет питания; P - Алкогольные напитки в продаже; B - Завтрак; O - Холодная еда; C - Бесплатные алкогольные напитки; K - Континтальный завтрак; D - Обед; F - Еда в продаже; G - Еда/напитки в продаже; H - Горячая еда; L - Ланч; M - Еда; R - Освежающие еда/напитки бесплатно; V - Освежающие еда/напитки за отдельную плату; S - Закуска |
BookingCodes | да | сложный | Контейнер для классов перелёта |
BookingCode | да | строка | Код класса перелёта. Если производится поиск по расписанию, то может встречаться несколько раз. |
FlightTime | нет | число | Время перелёта в минутах |
TimeZone | нет | сложный | Информация о временных зона прибытия и отправления |
Departure | да | число | Часовой пояс отправления, UTC (смещение относительно Гринвича) |
Arrival | да | число | Часовой пояс прибытия, UTC (смещение относительно Гринвича) |
ETicket | да | булевский | Индикатор электронного билета, возможные значения: true - билет является электронным, false - билет не является электронным. |
Baggage | нет | сложный | Информация о багаже |
Measure | да | строка | Мера веса. K - килограммы, PC - сумки/клади |
Value | да | строка | Количество багажа |
PricingInfo | нет | сложный | Контейнер для информации о ценах. Отсутствует в случае, если производится поиск по расписанию. |
Refundable | да | булевский | Индикатор показывающий является ли билет возвратным или нет, возможные значения: true - возвратный (нет штрафов за возврат), false - невозвратный (могут быть штрафы за возврат) |
PassengerFare | да | сложный | Информация о ценах для конкретного типа пассажиров. |
Quantity | да | число | Число пассажиров данного типа |
BaseFare | да | сложный | Цена в базовой валюте(за одного пассажира) |
EquiveFare | нет | сложный | Цена в эквивалентной валюте(за одного пассажира), при поиске цены не возвращается |
TotalFare | нет | сложный | Полная стоимость для пассажиров данного типа включая таксы (за одного пассажира), при поиске цены не возвращается |
Currency | да | строка | Трёх буквенный код валюты. |
Amount | да | число с плавающей точкой | Значение стоимости. |
Taxes | нет | сложный | Контейнер для такс, при поиске цены не возвращается |
Tax | да | сложный | Одна такса |
CurCode | да | строка | Трёх буквенный код валюты для таксы |
TaxCode | да | строка | Код таксы |
Amount | да | число с плавающей точкой | Значение таксы |
Tariffs | да | сложный | Контейнер для тарифов |
Tariff | да | сложный | Контейнер для одного тарифа |
Code | да | строка | Код тарифа |
SegNum | да | число | Номер сегмента для которого применяется тариф, если тариф применяется для всех сегментов, то возвращается 0. |
FareCalc | нет | строка | Строка расчёта цены |
LastTicketDateTime | да | строка | Дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС. Если бронирование не будет аннулировано или выписано до этого времени, то могут быть применены штрафы. |
Чтение тарифных правил
Чтение тарифных правил - это запрос, который отправляется после того, как пользователь на результатах поиска выбрал перелет и нажал «Забронировать». При помощи него Nemo получает информацию от поставщика о возвратности/невозвратности тарифов, а так же иную полезную информацию, которая доступна пользователю на странице подтверждения бронировании по клику на названии тарифного правила.
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=GetAirRules
Пример запроса и ответа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:GetAirRules> <RequestBin> <Request> <!--Запрос, обязательный--> <GetAirRules> <!--FlightId ид перелёта в системе Немо, обязательный--> <FlightId>531846</FlightId> </GetAirRules> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:GetAirRules> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:GetAirRules> <ResponseBin> <Response> <!--Запрос, обязательный--> <GetAirRules> <!--FlightId ид перелёта в системе Немо, обязательный--> <FlightId>531846</FlightId> <!--Rules Правила перелета, обязательный--> <Rules> <!--@Code код правила, обязательный--> <!--@Tarrif название тарифа, обязательный--> <!--@Name название правила, обязательный--> <Rule Code="6" Tarrif="VSSOW" Name="MINIMUM STAY"> <!--Текст правила, обязательный--> <RuleText>No Minimum Stay</RuleText> </Rule> <Rule Code="7" Tarrif="VSSOW" Name="MAXIMUM STAY"> <RuleText>No Maximum Stay</RuleText> </Rule> <Rule Code="5" Tarrif="VSSOW" Name="ADVANCE RESERVATIONS/TICKETING"> <RuleText>Advanced reservations anytime Advanced ticketing departure time - 0 Advanced ticketing reservation time - 24 hours</RuleText> </Rule> <Rule Code="2" Tarrif="VSSOW" Name="DAY/TIME"> <RuleText>Most restrictive ticketing date 20110524</RuleText> </Rule> <Rule Code="12" Tarrif="VSSOW" Name="SURCHARGES"> <RuleText>No surcharges</RuleText> </Rule> <Rule Code="16" Tarrif="VSSOW" Name="PENALTIES"> <RuleText>Condition: If Itinerary is changed requiring reissue of ticket. Amount - Condition: If canceled. Amount -</RuleText> </Rule> <Rule Code="0" Tarrif="VSSOW" Name="APPLICATION AND OTHER CONDITIONS"> <RuleText>Application and other conditions rule - 304/ut23 unless otherwise specified one way instant purchase fare application area these fares apply within russia. class of service these fares apply for economy class service. types of transportation this rule governs one-way fares. fares governed by this rule can be used to create one-way journeys. capacity limitations the carrier shall limit the number of passengers carried on any one flight at fares governed by this rule and such fares will not necessarily be available on all flights. the number of seats which the carrier shall make available on a given flight will be determined by the carriers best judgment </RuleText> </Rule> <Rule Code="4" Tarrif="VSSOW" Name="FLIGHT APPLICATION"> <RuleText>Flight application unless otherwise specified the fare component must be on one or more of the following any ut flight.</RuleText> </Rule> <Rule Code="5" Tarrif="VSSOW" Name="ADVANCE RES/TICKETING"> <RuleText>Advance res/ticketing unless otherwise specified reservations are required for all sectors. ticketing must be completed within 24 hours after reservations are made.</RuleText> </Rule> <Rule Code="8" Tarrif="VSSOW" Name="STOPOVERS"> <RuleText>Stopovers unless otherwise specified unlimited stopovers permitted.</RuleText> </Rule> <Rule Code="9" Tarrif="VSSOW" Name="TRANSFERS"> <RuleText>Transfers unless otherwise specified unlimited transfers permitted on the pricing unit fare break and embedded surface sectors permitted on the fare component. </RuleText> </Rule> <Rule Code="10" Tarrif="VSSOW" Name="PERMITTED COMBINATIONS"> <RuleText>Permitted combinations unless otherwise specified single/double open jaws/round trips/circle trips not permitted. add-ons not permitted. end-on-end end-on-end combinations permitted with ut fares. validate all fare components. provided - combinations are with any one way fare for carrier ut.</RuleText> </Rule> <Rule Code="15" Tarrif="VSSOW" Name="SALES RESTRICTIONS"> <RuleText>Sales restrictions unless otherwise specified tickets must be issued on ut. </RuleText> </Rule> <Rule Code="16" Tarrif="VSSOW" Name="PENALTIES"> <RuleText>Penalties unless otherwise specified cancellations cancellations permitted for cancel/no-show/refund. note - -full refund if ticket is presented for the refund more than 24hrs before departure time shown on the flight coupon. -refund the fare paid less 25 percent if ticket is presented for the refund less than 24hrs before departure time shown on the flight coupon or after departure time shown on the flight coupon/no-show/ --------------------- refund of unused fees and taxes permitted --------------------- penalties waived in case of involuntary refund --------------------- refund permitted at any time within one year from the day of original ticket issue. changes changes permitted. note - permitted upon payment to any higher applicable ow fare. the difference in fares has to be collected. ---------------- changes permitted if the ticket is presented for the change within 1 month from the date of departure shown on the original flight coupon. involuntary changes involuntary changes permitted. </RuleText> </Rule> <Rule Code="17" Tarrif="VSSOW" Name="HIP/MILEAGE EXCEPTIONS"> <RuleText>Hip/mileage exceptions unless otherwise specified note - higher intermediate rule applies. unless otherwise specified note - higher intermediate rule applies. </RuleText> </Rule> <Rule Code="19" Tarrif="VSSOW" Name="CHILDREN DISCOUNTS"> <RuleText>Children discounts within russia </RuleText> </Rule> <Rule Code="6" Tarrif="VSSOW" Name="PENALTIES"> <RuleText>Penalties unless otherwise specified cancellations cancellations permitted for cancel/no-show/refund. note - -full refund if ticket is presented for the refund more than 24hrs before departure time shown on the flight coupon. -refund the fare paid less 25 percent if ticket is presented for the refund less than 24hrs before departure time shown on the flight coupon or after departure time shown on the flight coupon/no-show/ --------------------- refund of unused fees and taxes permitted --------------------- penalties waived in case of involuntary refund --------------------- refund permitted at any time within one year from the day of original ticket issue. changes changes permitted. note - permitted upon payment to any higher applicable ow fare. the difference in fares has to be collected. ---------------- changes permitted if the ticket is presented for the change within 1 month from the date of departure shown on the original flight coupon. involuntary changes involuntary changes permitted. 17. hip/mileage exceptions unless otherwise specified note - higher intermediate rule applies. unless otherwise specified note - higher intermediate rule applies. 19. children discounts within russia accompanied child 2-11 - charge 67 percent of the fare. ticket designator - cn and percent of discount. note - discount applies if the number of children is 6 or less ----------------------------------------------- unaccompanied children not permitted or - 1st and each additional group child 2-11 - charge 95 percent of the fare. ticket designator - cn and percent of discount. note - discount applies if the number of children in the group is more than 6. group required to travel together for the entire pricing unit. ------------- unaccompanied children not permitted or - 1st infant under 2 without a seat - no charge ticket designator - in and percent of discount or - 2nd and each additional infant under 2 without a seat- charge 67 percent of the fare. ticket designator - cn and percent of discount or - infant under 2 with a seat - charge 67 percent of the fare. ticket designator - cn and percent of discount. note - unaccompanied infants not permitted </RuleText> </Rule> <Rule Code="20" Tarrif="VSSOW" Name="TOUR CONDUCTOR DISCOUNTS"> <RuleText>Tour conductor discounts unless otherwise specified note - tour conductor discounts not permitted. </RuleText> </Rule> <Rule Code="21" Tarrif="VSSOW" Name="AGENT DISCOUNTS"> <RuleText>Agent discounts unless otherwise specified note - agent discounts not permitted. </RuleText> </Rule> <Rule Code="22" Tarrif="VSSOW" Name="ALL OTHER DISCOUNTS"> <RuleText>All other discounts unless otherwise specified note - not permitted. </RuleText> </Rule> </Rules> </GetAirRules> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:AirAvail> </soapenv:Body> </soapenv:Envelope>
Запрос на выписку
Данный запрос запускается после оплаты заказа, может быть запущен как в ручную - пользователем, у которого есть на это права, так и автоматически при использовании соответствующей опции. Выписать неоплаченный заказ через Nemo возможности нет. При запуске запроса на выписку также запускается процесс обновления заказа, в ходе которого сверяется цена и остальные параметры заказа, а также проверяется его актуальность. Заказы, с истекшим таймлимитом выписаны через Nemo быть не могут.
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=Ticketing
Примеры запроса и ответа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DTicketing"> <soapenv:Header/> <soapenv:Body> <ver:Ticketing> <RequestBin> <Request> <!--Запрос, обязательный--> <Ticketing> <BookID>21032</BookID> <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> <ValCompany></ValCompany> <!--Комиссии, указывается или в валюте, или в процентах, для валюты обязательным является код валюты. Если указана и в валюте и в процентах, то у поставщика комиссия устанавливается в валюте.--> <!--@Amount - комиссия в валюте--> <!--@Percent - комиссия в процентах--> <!--@CurrencyCode - код валюты комиссии--> <!--Optional:--> <Comission Amount="" Percent="" CurrencyCode=""/> </Ticketing> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:Ticketing> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DTicketing"> <soapenv:Header/> <soapenv:Body> <ver:Ticketing> <ResponseBin> <Response> <!--Ответ, обязательный--> <!--@ID - Ид брони в системе немо, целое число, обязательный--> <!--@Status - Индикатор состояния брони, обязательный, возможные значения: booked - забронировано, canceled - бронь отменена, ticket - выписана UNDEFINED - статус не определён --> <!--@Code - Код брони в системе бронирования/поиска, строка, обязательный--> <BookFlight ID="21032" Status="booked" Code="QCH3DA"> <!--Положение брони в очереди, необязательный--> <!--@Number - номер брони в очереди, обязательный--> <QueryPlace/> <!--@FlightId ид перелёта в системе Немо, обязательный--> <Flight FlightId="534733"> <!--Веб-сервис из которого получен перелёт, обязательный--> <WebService>GALILEO</WebService> <!--Код авиакомпании - валидирующего перевозчика, IATA, обязательный--> <ValCompany>UN</ValCompany> <URL>http:///</URL> <!--Сегменты в перелёте, обязательный--> <Segments> <!--SegNum - Номер сегмента в перелёте, обязательный--> <Segment SegNum="1"> <!--Аэропорт отправления. Обязательный--> <DepAirp CodeType="IATA">DME</DepAirp> <!--Терминал пункта отправления, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <DepTerminal/> <!--Аэропорт прибытия. Обязательный--> <ArrAirp CodeType="IATA">LED</ArrAirp> <!--Терминал пункта прибытия, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <ArrTerminal>1</ArrTerminal> <!--Авиакомпания перевозчик. Обязательный--> <OpAirline>UN</OpAirline> <!--Авиакомпания, продающая перелёт. Обязательный--> <MarkAirline>UN</MarkAirline> <!--Номер рейса. Обязательный--> <FlightNumber>5</FlightNumber> <!--Тип воздушного судна, код. Обязательный--> <AircraftType>735</AircraftType> <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <DepDateTime>2011-06-28T19:25:00</DepDateTime> <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <ArrDateTime>2011-06-28T20:50:00</ArrDateTime> <!--Количество остановок. Обязательный--> <StopNum>0</StopNum> <!--Код класса бронирования. Обязательный--> <BookingCodes> <BookingCode>W</BookingCode> </BookingCodes> <!--Время перелёта, в минутах. Обязательный--> <FlightTime>85</FlightTime> <!--Временные зоны точки отправления и прибытия. Необязательный--> <!--@departure временная зона аэропорта отправления--> <!--@arrival - временная зона аэропорта прибытия--> <TimeZone Departure="" Arrival=""/> <!--Признак электронного билета. Значения: true или false. Обязательный--> <ETicket>true</ETicket> </Segment> </Segments> <!--информация о стоимости, может встречаться более 1 раза, обязательный--> <!--@Refundable возвратный/невозвратный, true/false. Если пустое, то не известно, необязательный--> <PricingInfo Refundable="true"> <!--Типы пассажиров с ценами, таксами и тп, может встречаться более 1 раза, необязательный--> <!--@Type тип пассажира, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом, обязательный--> <!--@Quantity Количество пассажиров данного типа, обязательный--> <PassengerFare Type="ADT" Quantity="1"> <!--Базовая стоимость, в базовой валюте, обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <BaseFare Currency="RUB" Amount="300"/> <!--Базовая стоимость, в эквивалентной валюте(валюте продажи), обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <EquiveFare Currency="RUB" Amount="300"/> <!--Суммарная стоимость в эквивалентной валюте, необязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <TotalFare Currency="RUB" Amount="1735"/> <!--Массив такс, необязательный--> <Taxes> <!--@CurCode код валюты, обязательный--> <!--@TaxCode код таксы, обязательный--> <!--@Amount сумма таксы, обязательный--> <Tax CurCode="RUB" TaxCode="RU" Amount="41"/> <Tax CurCode="RUB" TaxCode="YQ" Amount="779"/> <Tax CurCode="RUB" TaxCode="YR" Amount="615"/> </Taxes> <!--Массив тарифов, необязательный--> <Tariffs> <!--Тариф, обязательный--> <!--@Code код тарифа, обязательный--> <!--@SegNum номер сегмента, к которому применён тариф, обязательный--> <Tariff Code="WPROW" SegNum="1"/> </Tariffs> <!--Строка расчёта цены, необязательный--> <FareCalc/> <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС, обязательный--> <LastTicketDateTime>2011-05-27T10:11:32</LastTicketDateTime> </PassengerFare> </PricingInfo> <!--Комиссии, обязательный--> <!--@Currency код валюты, обязательный--> <Commission Currency="RUB">173.5</Commission> <!--Сборы, обязательный--> <!--@Currency код валюты, обязательный--> <Charges Currency="RUB">0</Charges> </Flight> <!--Информация об агенстве, обязательный--> <Agency Name=""> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <Address> <!--Город. Обязательный.--> <City></City> <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <StreetAddress></StreetAddress> <!--Почтовый индекс. Необязательный.--> <PostalCode></PostalCode> <!--Код страны (RU, UA и т.п.). Необязательный.--> <CountryCode></CountryCode> </Address> </Agency> <!--Маршрут квитанция, необязательный--> <!--@Encoding - кодировка, обязательный--> <!--@Format - формат, обязательный--> <ItinReceipts Encoding="" Format=""> <FareStored/> <!--Список пассажиров, обязательный--> <Travellers> <!--@Type тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира , начинается с 1, обязательный--> <!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> <Traveller Type="ADT" IsContact="true" Num="1"> <!--Код типа питания, необязательный, возможные значения: NONE - отсутствует AVML - Азиатская вегетарианская кухня BLML - Блюда щадящей диеты CHML - Детское питание CHPC - Детский холодный завтрак СНСС - Детский горячий завтрак CHHC - Детский ланч, ветчина и сыр PBJS - Детский ланч, ореховое масло CHMC - Детский обед макароны с сыром DBML - Диабетическое питание FPML - Фрукты GFML - Питание без клейковины HFML - Питание богатое клетчаткой HNML - Индусская кухня BBML - Питание для младенцев KSML - Кошерная кухня SMKB - Кошерный завтрак SMKL - Кошерный ланч SMKD - Кошерный обед LPML - Малобелковое питание LCML - Низкокалорийное питание LFML - Низкохолестериновое питание PRML - Низкопуриновое питание LSML - Малосоленое питание MOML - Мюсли NLML - Безмолочные продукты ORML - Восточная кухня RVML - Сырые овощи SFML - Морепродукты SPML - Особое питание VLML - Вегетарианское, молоко и яйца VGML - Строго вегетарианское питание VJML - Джайнизское вегетарианское VOML - Восточное вегетарианское питание--> <Meal/> <!--Билет, обязательный--> <!--@TickectNum - номер билета, обязательный--> <Ticket TickectNum="0000777751"/> <Seats> <!--Место пассажира в самолёте, обязательный--> <!--@Number - номер места, обязательный--> <!--@Characteristic - характеристика места, необязательный--> <!--@SmokingPreference - статус курения на этом месте, необязательный--> <!--@SegmentNumber - номер сегмента в перелёте, обязательный--> <Seat Number="" Characteristic="" SmokingPreference="" SegmentNumber=""/> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> </Seats> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="15.05.1975" Gender="M"> <!--Имя пассажира, обязательный--> <FirstName>IVAN</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>IVANOV</LastName> <!--Отчество пассажира, обязательный--> <MiddleName/> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный --> <LoyaltyCard OpCode="" Number=""/> <!--Контактная информация, необязательный--> <ContactInfo> <!--Контактный email, необязательный--> <EmailID/> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber/> <!--Код страны, необязательный--> <CountryAccessCode/> <!--Код региона/города, необязательный--> <AreaCityCode/> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> <DocumentInfo DocType="P" DocNum="1234123456" DocElapsedTime="15.06.2025"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo/> <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. @CountryCode - Код страны. Обязательный @State - Штат или область въезда. Обязательный @PostalCode - Почтовый код. Обязательный @City - Город. Обязательный @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный --> <ArrAddress/> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> <PreferedPlace/> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat></DocStringFormat> </DocStringFormats> </Traveller> </Travellers> </BookFlight> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:Ticketing> </soapenv:Body> </soapenv:Envelope>
Войдирование билета
Данный запрос запускается после выписки билета, если необходимо его отменить.
WSDL: http://sys.nemo-ibe.com/nemoflights/wsdl.php?for=VoidTicket
Пример запроса и ответа:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:VoidTicket> <RequestBin> <Request> <!--Запрос, обязательный--> <VoidTicket> <!--BookID - Ид брони в системе немо, целое число, обязательный--> <BookID>20990</BookID> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:VoidTicket> </soapenv:Body> </soapenv:Envelope> </env:Envelope>
RESPONSE
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/nemoflights/?version%3D1.0%26for%3DVoidTicket"> <soapenv:Header/> <soapenv:Body> <ver:VoidTicket> <ResponseBin> <Response> <!--Запрос, обязательный--> <!--@BookID, обязательный--> <VoidTicket BookID="20990"> <!--Result, Отмена выписки, обязательный--> <!--@Sucscess, Результат отмены выписки, true или false, обязательный--> <Result Success="true"/> </VoidTicket> </Response> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </ResponseBin> </ver:VoidTicket> </soapenv:Body> </soapenv:Envelope>