Агентский API Авиабилеты

Материал из Центр поддержки системы бронировании
Версия от 13:54, 14 марта 2014; Наталья Яременко (обсуждение | вклад) (Агентский АПИ бронирования авиабилетов)
Перейти к навигации Перейти к поиску


Агентский АПИ поиска авиабилетов

Агентский АПИ бронирования авиабилетов

Агентский АПИ выписки

Агентский АПИ выписки позволяет определить валидирующего перевозчика и значение комиссии от авиакомпании для брони, а также запустить процедуру выписки билета.

! Как правило для выписки билета достаточно сформировать запрос на проставление статуса "ОПЛАЧЕНО". При включенной опции «Производить оформление билета: автоматически» билет будет выпущен в фоновом режиме.

В Nemo 2.0 в агентский сервис (интерфейс к серверу бронирования) добавлены дополнительные настройки для выписки авиабилетов. В новой версии АПИ позволяет:

  • принимать запросы на возможность тикетинга;
  • сообщать ВП (валидирующего перевозчика) по данной комбинации;
  • сообщать комиссию по данной комбинации;
  • сообщать эндорсменты по данной комбинации;
  • принимать запрос на тикетинг;
  • проверять наличие брони в ГДС;
  • синхронизировать бронь;
  • выписывать билет;
  • присылать маршрут-квитанцию;
  • войдировать билет.

Отмена бронирования

После бронирования, если не истек таймлимит можно аннулировать сделанный заказ. Аннуляция заказа в Nemo может быть ручной (сделанной пользователем) и автоматической - по истечению таймлимита, установленного для заказа система сама аннулирует заказ.

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=CancelBook

Пример запроса и ответа на аннуляцию заказа:

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DCancelBook">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:CancelBook>
 5          <RequestBin>
 6             <Request>
 7                <!--Запрос, обязательный-->
 8                <!--BookID - Ид брони в системе немо, целое число, обязательный-->
 9                <CancelBook BookID="260646"/>
10             </Request>
11             <Source>
12                <!--Авторизация, обязательный-->
13 	       <!--ClientId, идентификатор клиента, обязательный-->
14 	       <!--APIKey, API ключ клиента, обязательный-->
15 	       <!--Language, код языка, обязательный-->
16 	       <!--Currency код валюты, обязательный-->
17                <ClientId>---</ClientId>
18                <APIKey>---</APIKey>
19                <Language>RU</Language>
20                <Currency>RUB</Currency>
21             </Source>
22          </RequestBin>
23       </ver:CancelBook>
24    </soapenv:Body>
25 </soapenv:Envelope>

Ответ

 1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DCancelBook" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 2    <SOAP-ENV:Body>
 3       <ns1:CancelBookResponse>
 4          <ResponseBin>
 5             <Response>
 6                <!--BookID - Ид брони в системе немо, целое число-->
 7                <CancelBook BookID="260646">
 8                   <!--Result, Отмена брони-->
 9                   <!--Sucscess, Результат отмены брони, true или false-->
10                   <Result Success="true"/>
11                </CancelBook>
12                <Requisites/>
13                <RequestType xsi:nil="true"/>
14                <UserID xsi:nil="true"/>
15                <Errors xsi:nil="true"/>
16             </Response>
17          </ResponseBin>
18       </ns1:CancelBookResponse>
19    </SOAP-ENV:Body>
20 </SOAP-ENV:Envelope>

Проверка на доступность

Данный запрос отправляется из Nemo после того как пользователь на результатах поиска нажимает ссылку «забронировать». Он необходим для того чтобы перед подтверждением бронирования повторно проверить перелет на доступность и исключить максимально возможное количество заказов, которые нельзя будет забронировать из-за сервисных ошибок, либо изменения условий (например, снятия мест).

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=AirAvail

Пример запроса и ответа:

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DAirAvail">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:AirAvail>
 5          <RequestBin>
 6             <Request>
 7                <AirAvail>
 8                   <!--Запрос, обязательный-->
 9                   <!--FlightId ид перелёта в системе Немо, обязательный-->
10                   <FlightId>142330001</FlightId>
11                </AirAvail>
12             </Request>
13             <Source>
14                <!--Авторизация, обязательный-->
15                <!--ClientId, идентификатор клиента, обязательный-->
16                <!--APIKey, API ключ клиента, обязательный-->
17                <!--Language, код языка, обязательный-->
18                <!--Currency код валюты, обязательный-->
19                <ClientId>---</ClientId>
20                <APIKey>---</APIKey>
21                <Language>RU</Language>
22                <Currency>RUB</Currency>
23             </Source>
24          </RequestBin>
25       </ver:AirAvail>
26    </soapenv:Body>
27 </soapenv:Envelope>

Ответ

 1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DAirAvail" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 2    <SOAP-ENV:Body>
 3       <ns1:AirAvailResponse>
 4          <ResponseBin>
 5             <Response>
 6                <!--FlightId ид перелёта в системе Немо-->
 7                <!--IsAvail доступность перелёта, true или false-->
 8                <AirAvail FlightId="142330001" IsAvail="true"/>
 9                <Requisites/>
10                <RequestType xsi:nil="true"/>
11                <UserID xsi:nil="true"/>
12                <Errors xsi:nil="true"/>
13             </Response>
14          </ResponseBin>
15       </ns1:AirAvailResponse>
16    </SOAP-ENV:Body>
17 </SOAP-ENV:Envelope>

Запрос на обновление заказа

Запрос на обновление заказа

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=UpdateBook

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DUpdateBook">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:UpdateBook>
 5          <RequestBin>
 6             <Request>
 7                <UpdateBook>
 8                   <!--Запрос, обязательный-->
 9                   <!--BookID - Id заказа в системе Немо, обязательный-->
10                   <BookID>260647</BookID>
11                </UpdateBook>
12             </Request>
13             <Source>
14                <!--Авторизация, обязательный-->
15                <!--ClientId, идентификатор клиента, обязательный-->
16                <!--APIKey, API ключ клиента, обязательный-->
17                <!--Language, код языка, обязательный-->
18                <!--Currency код валюты, обязательный-->
19                <ClientId>---</ClientId>
20                <APIKey>---</APIKey>
21                <Language>RU</Language>
22                <Currency>RUB</Currency>
23             </Source>
24          </RequestBin>
25       </ver:UpdateBook>
26    </soapenv:Body>
27 </soapenv:Envelope>

Чтение тарифных правил

Чтение тарифных правил - это запрос, который отправляется после того, как пользователь на результатах поиска выбрал перелет и нажал «Забронировать». При помощи него Nemo получает информацию от поставщика о возвратности/невозвратности тарифов, а так же иную полезную информацию, которая доступна пользователю на странице подтверждения бронировании по клику на названии тарифного правила.

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=GetAirRules

Пример запроса и ответа:

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DGetAirRules">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:GetAirRules>
 5          <RequestBin>
 6             <Request>
 7                <GetAirRules>
 8                   <!--Запрос, обязательный-->
 9                   <!--FlightId - Id перелёта в системе Немо, обязательный-->
10                   <FlightId>142330001</FlightId>
11                </GetAirRules>
12             </Request>
13             <Source>
14                <!--Авторизация, обязательный-->
15                <!--ClientId, идентификатор клиента, обязательный-->
16                <!--APIKey, API ключ клиента, обязательный-->
17                <!--Language, код языка, обязательный-->
18                <!--Currency код валюты, обязательный-->
19                <ClientId>---</ClientId>
20                <APIKey>---</APIKey>
21                <Language>RU</Language>
22                <Currency>RUB</Currency>
23             </Source>
24          </RequestBin>
25       </ver:GetAirRules>
26    </soapenv:Body>
27 </soapenv:Envelope>

Ответ

  1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DGetAirRules" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  2    <SOAP-ENV:Body>
  3       <ns1:GetAirRulesResponse>
  4          <ResponseBin>
  5             <Response>
  6                <GetAirRules>
  7                   <!--FlightId - Id перелёта в системе Немо-->
  8                   <FlightId>142330001</FlightId>
  9                   <!--Rules Правила перелета-->
 10                   <Rules>
 11                      <!--Code код правила-->
 12                      <!--Tarrif название тарифа-->
 13                      <!--Name название правила-->
 14                      <Rule Code="00" Tarrif="LEXOW1" Name="RULE APPLICATION AND OTHER CONDITIONS">
 15                         <!--RuleText Текст правила-->
 16                         <RuleText>NOTE - THE FOLLOWING TEXT IS INFORMATIONAL AND NOT
 17    VALIDATED FOR AUTOPRICING.
 18    SU CARRIER VALUE-ECONOMY FARES
 19    APPLICATION
 20     AREA
 21      THESE FARES APPLY 
 22       BETWEEN RUSSIA AND AREA 2/AREA 3.
 23     CLASS OF SERVICE
 24      THESE FARES APPLY FOR ECONOMY CLASS SERVICE.
 25     TYPES OF TRANSPORTATION
 26      FARES GOVERNED BY THIS RULE CAN BE USED TO CREATE
 27       ONE-WAY JOURNEYS.
 28     CAPACITY LIMITATIONS
 29      THE CARRIER SHALL LIMIT THE NUMBER OF PASSENGERS
 30       CARRIED ON ANY ONE FLIGHT AT FARES GOVERNED BY
 31       THIS RULE AND SUCH FARES WILL NOT NECESSARILY BE
 32       AVAILABLE ON ALL FLIGHTS. THE NUMBER OF SEATS,
 33       WHICH THE CARRIER SHALL MAKE AVAILABLE ON A GIVEN
 34       FLIGHT, WILL BE DETERMINED BY THE CARRIER'S BEST
 35       JUDGEMENT.</RuleText>
 36                      </Rule>
 37                      <Rule Code="01" Tarrif="LEXOW1" Name="ELIGIBILITY">
 38                         <RuleText>NO ELIGIBILITY REQUIREMENTS APPLY.</RuleText>
 39                      </Rule>
 40                      <Rule Code="02" Tarrif="LEXOW1" Name="DAY/TIME">
 41                         <RuleText>NO DAY/TIME TRAVEL RESTRICTIONS APPLY.</RuleText>
 42                      </Rule>
 43                      <Rule Code="03" Tarrif="LEXOW1" Name="SEASONALITY">
 44                         <RuleText>NO SEASONAL TRAVEL RESTRICTIONS APPLY.</RuleText>
 45                      </Rule>
 46                      <Rule Code="04" Tarrif="LEXOW1" Name="FLIGHT APPLICATION">
 47                         <RuleText>THE FARE COMPONENT MUST NOT BE ON
 48        ONE OR MORE OF THE FOLLOWING
 49            A3 FLIGHTS 1000 THROUGH 1999
 50            A3 FLIGHTS 3000 THROUGH 3999
 51            AF FLIGHTS 3600 THROUGH 3799
 52            AF FLIGHTS 4400 THROUGH 4499
 53            AF FLIGHTS 4600 THROUGH 4999
 54            AF FLIGHTS 6300 THROUGH 6399
 55            AF FLIGHTS 8000 THROUGH 9999
 56            AY FLIGHTS 4000 THROUGH 9999
 57            AZ FLIGHTS 2400 THROUGH 3999
 58            AZ FLIGHTS 7000 THROUGH 7999
 59            AT FLIGHTS 9000 THROUGH 9999
 60            BA FLIGHTS 510 THROUGH 524
 61            BA FLIGHTS 1500 THROUGH 1999
 62            BA FLIGHTS 2290 THROUGH 2539
 63            BA FLIGHTS 2800 THROUGH 2899
 64            BA FLIGHTS 3000 THROUGH 3269
 65            BA FLIGHTS 3300 THROUGH 8449
 66            BA FLIGHTS 8498 THROUGH 8699
 67            BA FLIGHTS 8770 THROUGH 9999
 68            BD FLIGHTS 2000 THROUGH 4999
 69            FB FLIGHTS 999 THROUGH 1999
 70            IB FLIGHTS 5000 THROUGH 5999
 71            IB FLIGHTS 7000 THROUGH 8999
 72            IG FLIGHTS 9000 THROUGH 9999
 73            JK FLIGHTS 7500 THROUGH 7999
 74            JK FLIGHTS 8800 THROUGH 9999
 75            UX FLIGHTS 3000 THROUGH 3999
 76            VV FLIGHTS 4000 THROUGH 4999
 77            JU FLIGHTS 8000 THROUGH 8999
 78            OU FLIGHTS 5000 THROUGH 5999
 79            TP FLIGHTS 6000 THROUGH 9499
 80            F7 FLIGHTS 1000 THROUGH 1999
 81            F7 FLIGHTS 6700 THROUGH 6701
 82            FI FLIGHTS 7000 THROUGH 7999
 83            DE FLIGHTS 9000 THROUGH 9999
 84            YM FLIGHTS 4000 THROUGH 4999.
 85    AND
 86    THE FARE COMPONENT MUST BE ON
 87        ONE OR MORE OF THE FOLLOWING
 88            ANY 9B FLIGHT
 89            ANY A3 FLIGHT
 90            ANY AF FLIGHT OPERATED BY AF
 91            ANY AY FLIGHT
 92            ANY AZ FLIGHT
 93            ANY AT FLIGHT
 94            ANY BA FLIGHT
 95            ANY B2 FLIGHT OPERATED BY B2
 96            ANY BD FLIGHT OPERATED BY BD
 97            ANY BT FLIGHT
 98            ANY BU FLIGHT OPERATED BY SK
 99            ANY FB FLIGHT
100            ANY IB FLIGHT
101            ANY IG FLIGHT
102            ANY JK FLIGHT
103            ANY KF FLIGHT OPERATED BY KF
104            ANY KK FLIGHT
105            ANY KL FLIGHT
106            ANY OU FLIGHT
107            ANY SK FLIGHT OPERATED BY SK
108            ANY SU FLIGHT
109            ANY SU FLIGHT OPERATED BY AF
110            ANY UX FLIGHT
111            ANY VV FLIGHT
112            ANY YO FLIGHT
113            ANY JU FLIGHT
114            ANY F7 FLIGHT
115            ANY TP FLIGHT
116            ANY FI FLIGHT
117            ANY DE FLIGHT
118            ANY YM FLIGHT.</RuleText>
119                      </Rule>
120                      <Rule Code="05" Tarrif="LEXOW1" Name="ADVANCE RESERVATIONS/TICKETING">
121                         <RuleText>FOR TICKETING ON/AFTER 08APR13
122      CONFIRMED RESERVATIONS ARE REQUIRED FOR ALL SECTORS.
123      WHEN RESERVATIONS ARE MADE AT LEAST 100 DAYS BEFORE
124      DEPARTURE, TICKETING MUST BE COMPLETED AT LEAST 93
125      DAYS BEFORE DEPARTURE.
126      OR - CONFIRMED RESERVATIONS ARE REQUIRED FOR ALL
127           SECTORS.
128           WHEN RESERVATIONS ARE MADE AT LEAST 14 DAYS
129           BEFORE DEPARTURE, TICKETING MUST BE COMPLETED
130           WITHIN 7 DAYS AFTER RESERVATIONS ARE MADE.
131      OR - CONFIRMED RESERVATIONS ARE REQUIRED FOR ALL
132           SECTORS.
133           WHEN RESERVATIONS ARE MADE AT LEAST 12 DAYS
134           BEFORE DEPARTURE, TICKETING MUST BE COMPLETED AT
135           LEAST 11 DAYS BEFORE DEPARTURE.
136      OR - CONFIRMED RESERVATIONS ARE REQUIRED FOR ALL
137           SECTORS.
138           WHEN RESERVATIONS ARE MADE AT LEAST 2 DAYS
139           BEFORE DEPARTURE, TICKETING MUST BE COMPLETED
140           WITHIN 24 HOURS AFTER RESERVATIONS ARE MADE.
141    CONFIRMED RESERVATIONS ARE REQUIRED FOR ALL SECTORS.
142          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
143           DUE TO AUTOMATED TICKETING DEADLINE CONTROL
144           DIFFERENCE COULD EXIST BETWEEN THE FARE RULE LAST
145           TICKETING DATE AND THE SYSTEM GENERATED TICKETING
146           DEADLINE MESSAGE. THE MORE RESTRICTIVE TICKETING
147           DEADLINE APPLIES.
148           --------
149           FARE IS SUBJECT TO CHANGE AND NOT GUARANTEED UNTIL
150           TICKETED
151           --------</RuleText>
152                      </Rule>
153                      <Rule Code="06" Tarrif="LEXOW1" Name="MINIMUM STAY">
154                         <RuleText>NO MINIMUM STAY REQUIREMENTS APPLY.</RuleText>
155                      </Rule>
156                      <Rule Code="07" Tarrif="LEXOW1" Name="MAXIMUM STAY">
157                         <RuleText>TRAVEL FROM LAST STOPOVER MUST COMMENCE NO LATER THAN
158    345 DAYS AFTER DEPARTURE FROM FARE ORIGIN.</RuleText>
159                      </Rule>
160                      <Rule Code="08" Tarrif="LEXOW1" Name="STOPOVERS">
161                         <RuleText>UNLIMITED FREE STOPOVERS PERMITTED ON THE PRICING
162    UNIT.</RuleText>
163                      </Rule>
164                      <Rule Code="09" Tarrif="LEXOW1" Name="TRANSFERS">
165                         <RuleText>UNLIMITED TRANSFERS PERMITTED ON THE PRICING UNIT.
166    FARE BREAK AND EMBEDDED SURFACE SECTORS NOT PERMITTED
167    ON THE FARE COMPONENT.</RuleText>
168                      </Rule>
169                      <Rule Code="10" Tarrif="LEXOW1" Name="COMBINATIONS">
170                         <RuleText>DOUBLE OPEN JAWS NOT PERMITTED.
171     END-ON-END NOT PERMITTED. SIDE TRIPS PERMITTED WITH
172     NO RESTRICTIONS.
173    OPEN JAWS
174      FARES MAY BE COMBINED ON A HALF ROUND TRIP BASIS
175      -TO FORM SINGLE OPEN JAWS
176       A MAXIMUM OF TWO INTERNATIONAL FARE COMPONENTS
177       PERMITTED. MILEAGE OF THE OPEN SEGMENT MUST BE EQUAL/
178       LESS THAN MILEAGE OF THE LONGEST FLOWN FARE
179       COMPONENT.
180      PROVIDED -
181        WHEN THE OPEN SEGMENT OCCURS
182        -WITHIN AREA 2
183        -THE OPEN SEGMENT MUST NOT BE WITHIN RUSSIA
184         COMBINATIONS ARE WITH ANY FARE FOR CARRIER SU/FV
185         IN ANY RULE AND TARIFF.
186    ROUND TRIPS/CIRCLE TRIPS
187      FARES MAY BE COMBINED ON A HALF ROUND TRIP BASIS
188      -TO FORM ROUND TRIPS
189      -TO FORM CIRCLE TRIPS
190       A MAXIMUM OF TWO INTERNATIONAL FARE COMPONENTS
191       PERMITTED.
192      PROVIDED -
193        COMBINATIONS ARE WITH ANY FARE FOR CARRIER SU/FV
194        IN ANY RULE AND TARIFF.</RuleText>
195                      </Rule>
196                      <Rule Code="11" Tarrif="LEXOW1" Name="BLACKOUT DATES">
197                         <RuleText>NO BLACKOUT DATES APPLY.</RuleText>
198                      </Rule>
199                      <Rule Code="12" Tarrif="LEXOW1" Name="SURCHARGES">
200                         <RuleText>NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
201           EFF 01JUN08 IN CASE PASSENGER VOLUNTARILY
202           REQUESTS TO CONVERT E-TICKET TO PAPER SURCHARGE
203           OF EUR 10.00 PER TICKET SHOULD BE CHARGED.
204           THE SURCHARGE SHALL BE COLLECTED ON MCO/MPD AND
205           WILL BE ASSESSED AT THE RATE IN EFFECT AT THE TIME
206           THE ELECTRONIC TICKET IS CONVERTED TO PAPER.
207           PAPER TICKET SURCHARGE IS NOT REFUNDABLE.
208    IF INFANT WITHOUT A SEAT PSGR UNDER 2.
209      FOR TICKETING ON/AFTER 01NOV13
210        THERE IS NO MISCELLANEOUS/OTHER SURCHARGE PER ANY
211        PASSENGER.
212    IF REGIONAL PASSES FOR SKY TEAM CARRIERS PSGR.
213      FOR TICKETING ON/AFTER 01NOV13
214        THERE IS NO MISCELLANEOUS/OTHER SURCHARGE PER ANY
215        PASSENGER.
216    FOR TICKETING ON/AFTER 01NOV13
217      THE PROVISIONS BELOW APPLY ONLY AS FOLLOWS -
218      TICKETS MUST BE ISSUED ON THE STOCK OF SU.
219      FOR TICKETING ON/AFTER 01NOV13
220        THERE IS NO MISCELLANEOUS/OTHER SURCHARGE PER ANY
221        PASSENGER.
222    FOR TICKETING ON/AFTER 01NOV13
223      FUEL SURCHARGE OF EUR 42.00 PER COUPON WILL BE ADDED
224      TO THE APPLICABLE FARE PER ANY PASSENGER WHEN SECTOR
225      OF TRAVEL IS BETWEEN MOW AND AREA 2.
226      AND - FUEL SURCHARGE OF RUB 1500 PER COUPON WILL BE
227            ADDED TO THE APPLICABLE FARE PER ANY PASSENGER
228            WHEN SECTOR OF TRAVEL IS BETWEEN MOW AND
229            RUSSIA.
230      AND -
231        MISCELLANEOUS/OTHER SURCHARGE OF EUR 3.70 PER
232        COUPON WILL BE ADDED TO THE APPLICABLE FARE PER
233        ANY PASSENGER.</RuleText>
234                      </Rule>
235                      <Rule Code="13" Tarrif="LEXOW1" Name="ACCOMPANIED TRAVEL">
236                         <RuleText>ACCOMPANIED TRAVEL NOT REQUIRED.</RuleText>
237                      </Rule>
238                      <Rule Code="14" Tarrif="LEXOW1" Name="TRAVEL RESTRICTIONS">
239                         <RuleText>NO TRAVEL DATE RESTRICTIONS APPLY.</RuleText>
240                      </Rule>
241                      <Rule Code="15" Tarrif="LEXOW1" Name="SALES RESTRICTIONS">
242                         <RuleText>TICKETS MAY NOT BE SOLD IN THR.
243    TICKETS MAY ONLY BE SOLD IN AREA 1/AREA 2/AREA 3.</RuleText>
244                      </Rule>
245                      <Rule Code="16" Tarrif="LEXOW1" Name="PENALTIES">
246                         <RuleText>FARE RULE
247    ORIGINATING RUSSIA -
248      CANCELLATIONS
249      
250        BEFORE DEPARTURE
251          CANCELLATIONS PERMITTED FOR CANCEL/REFUND.
252          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
253           FULL FARE PAID IF TICKET IS PRESENTED FOR A REFUND
254           MORE THAN 24 HOURS BEFORE DEPARTURE TIME SHOWN
255           ON THE FIRST FLIGHT COUPON.
256           FARE PAID LESS 25 PERCENT IF TICKET IS PRESENTED
257           FOR A REFUND LESS THAN 24 HOURS BEFORE DEPARTURE
258           TIME SHOWN ON THE FIRST FLIGHT COUPON.
259      
260      BEFORE DEPARTURE
261          TICKET IS NON-REFUNDABLE IN CASE OF NO-SHOW.
262      
263      AFTER DEPARTURE
264          CANCELLATIONS PERMITTED FOR CANCEL/REFUND.
265          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
266           REFUND THE DIFFERENCE BETWEEN THE FARE PAID AND
267           THE APPLICABLE FARE FOR THE TRANSPORTATION USED
268           IN EFFECT ON THE DAY OF ORIGINAL TICKET ISSUE
269           IF TICKET IS PRESENTED FOR A REFUND MORE THAN
270           24 HOURS BEFORE DEPARTURE TIME SHOWN ON THE
271           UNUSED FLIGHT COUPONS.
272           --------
273           REFUND THE DIFFERENCE BETWEEN THE FARE PAID AND
274           THE APPLICABLE FARE FOR THE TRANSPORTATION USED
275           IN EFFECT ON THE DAY OF ORIGINAL TICKET ISSUE
276           LESS 25 PERCENT OF EACH TARIFF COMPONENT
277           PRESENTED FOR THE REFUND LESS THAN 24 HOURS
278           BEFORE DEPARTURE TIME SHOWN ON THE FLIGHT COUPON.
279      
280      AFTER DEPARTURE
281          TICKET IS NON-REFUNDABLE IN CASE OF NO-SHOW.
282      FOR TICKETING ON/AFTER 01DEC12/FOR TRAVEL ON/AFTER
283      01FEB13
284        CHANGES
285        
286          ANY TIME
287            CHARGE EUR 60.00 FOR REISSUE/REVALIDATION.
288        
289        CHANGES NOT PERMITTED IN CASE OF NO-SHOW.
290          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
291           A.IF CHANGES ARE MADE TO THE FIRST TICKETED FLIGHT
292           COUPON -
293           FULL AMOUNT PAID FOR THE ORIGINAL TICKET MAY BE
294           APPLIED TOWARDS PURCHASE OF A NEW TICKET PRICED
295           AT EQUAL OR HIGHER FARE TICKET AMOUNT USING
296           -CURRENT- FARE LEVELS UPON PAYMENT THE DIFFERENCE
297           BETWEEN ORIGINAL AND RECALCULATED FARES PLUS
298           EUR 60.00 CHANGE FEE.
299           ALL RULE PROVISIONS OF THE NEW FARE INCLUDING
300           ADVANCE PURCHASE/MIN STAY/MAX STAY/SEASONALITY/ETC
301           MUST BE MET.
302           -----
303           B.IF CHANGES ARE MADE TO OTHER THAN THE FIRST
304           TICKETED FLIGHT COUPON-
305           THE FULL AMOUNT PAID FOR ORIGINAL TICKET MAY BE
306           APPLIED TOWARDS PURCHASE OF A NEW TICKET PRICED AT
307           EQUAL OR HIGHER TICKET AMOUNT USING FARES IN
308           EFFECT ON THE DATE OF ORIGINAL TICKET ISSUE FARE
309           LEVELS UPON PAYMENT THE DIFFERENCE BETWEEN
310           ORIGINAL AND RECALCULATED FARES PLUS EUR 60.00
311           CHANGE FEE.
312           ALL RULE PROVISIONS OF THE NEW FARE EXCEPT ADVP
313           AND TICKETING REQUIREMENTS MUST BE MET.
314  
315    GENERAL RULE - APPLY UNLESS OTHERWISE SPECIFIED
316          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
317           CANCELLATIONS RULES
318           NOTE
319           INFANT FREE OF CHARGE.CHILDREN DISCOUNT NOT APPLY
320           UNLESS OTHERWISE SPECIFIED.
321           WHEN COMBINING ON A HALF ROUNDTRIP BASIS THE
322           PENALTY CONDITIONS OF MORE RESTRICTED RULE APPLY.
323           PENALTIES WAIVED FOR DEATH OF PASSENGER/
324           TRAVELLING COMPANION OR FAMILY MEMBER
325           FAMILY MEMBER - SPOUSE/CHILDREN/ADOPTED CHILDREN
326           PARENTS
327           REFUND OF UNUSED FEES AND TAXES PERMITTED.
328           REFUND CAN ONLY BE MADE THROUGH ISSUING OFFICE.
329           PERIOD VALIDITY FOR SPECIAL FARE WILL BE MAX STAY
330           OF THE FARE FROM THE DATE ON THE FIRST FLIGHT
331           COUPON.
332           AT ANY TIME - IN CASE OF REFUND - PAPER TICKET
333           SURCHARGE IS NOT REFUNDABLE WHEN APPLIED.
334           FOR REFUND OF FARES ORIGINATING IN RUSSIA - AT
335           ANYTIME IF PASSENGER VOLUNTARILY REQUESTS FOR
336           FULL OR PARTIAL REFUND ADDITIONAL REFUND CHARGE
337           OF 35.00 EUR PER INTERNATIONAL SERVICES OR
338           1400RUB FOR DOMESTIC -E TICKET OR PAPER TICKET-
339           SHALL APPLY.
340           AFTER DEPARTURE
341           FOR PARTLY USED TRANSPORTATION
342           THE REFUND IF ANY WILL BE THE DIFFERENCE BETWEEN
343           THE FARE PAID AND THE FARE FOR TRANSPORTATION
344           USED WHEN RECALCULATING FARES FOR TRANSPORTATION
345           USED FARES IN LOWER RBD THAN SHOWN IN USED COUPONS
346           CANNOT APPLY
347           -------------------------------------------------
348           CHANGES
349           NOTE
350           CH DISCOUNT APPLY/INFANT FREE OF CHARGE.
351           A CHANGE IS A ROUTING/DATE/FLIGHT/CLASS/FARE
352           LEVEL MODIFICATION.
353           CHARGE APPLIES PER TRANSACTION.
354           IN CASE OF CHANGES NEW FARE AMOUNT SHOULD BE
355           EQUAL OR HIGHER THAN PREVIOUS AMOUNT.
356           WHEN MORE THAN ONE FARE COMPONENTS IS BEING
357           CHANGED THE HIGHEST PENALTY OF ALL CHANGED FARE
358           COMPONENT WILL APPLY.
359           CHANGES ARE NOT PERMITTED AFTER THE DEPARTURE
360           TIME SHOWN ON THE APPLICABLE FLIGHT COUPON.
361           IN THIS CASE TICKET HAS NO VALUE.
362           EXCEPTION- FARE RULES WHICH ALLOW TO MAKE CHANGES
363           ANY TIME INCLUDING FOR NO-SHOW.
364           THE ORIGINAL NON-REFUNDABLE AMOUNT REMAINS NON
365           REFUNDABLE AND MUST BE PRINTED ON THE NEW TICKET.</RuleText>
366                      </Rule>
367                      <Rule Code="17" Tarrif="LEXOW1" Name="HIP/MILEAGE EXCEPTIONS">
368                         <RuleText>NO HIP OR MILEAGE EXCEPTIONS APPLY.</RuleText>
369                      </Rule>
370                      <Rule Code="18" Tarrif="LEXOW1" Name="TICKET ENDORSEMENTS">
371                         <RuleText>TICKET ENDORSEMENT NOT REQUIRED.</RuleText>
372                      </Rule>
373                      <Rule Code="19" Tarrif="LEXOW1" Name="CHILDREN DISCOUNTS">
374                         <RuleText>CNN/ACCOMPANIED CHILD PSGR 2-11 - CHARGE 75 PERCENT OF
375      THE FARE.
376          TICKET DESIGNATOR - CH AND PERCENT APPLIED.
377      MUST BE ACCOMPANIED ON ALL FLIGHTS IN THE SAME
378        COMPARTMENT BY ADULT PSGR 18 OR OLDER.
379    OR - INS/INFANT WITH A SEAT PSGR UNDER 2 - CHARGE 75
380           PERCENT OF THE FARE.
381               TICKET DESIGNATOR - CH AND PERCENT APPLIED.
382           MUST BE ACCOMPANIED ON ALL FLIGHTS IN THE SAME
383             COMPARTMENT BY ADULT PSGR 18 OR OLDER.
384    OR - 1ST INF/INFANT WITHOUT A SEAT PSGR UNDER 2 -
385           CHARGE 10 PERCENT OF THE FARE.
386               TICKET DESIGNATOR - IN AND PERCENT APPLIED.
387           MUST BE ACCOMPANIED ON ALL FLIGHTS IN THE SAME
388             COMPARTMENT BY ADULT PSGR 18 OR OLDER.
389    OR - UNN/UNACCOMPANIED CHILD PSGR 5-11 - CHARGE 100
390           PERCENT OF THE FARE.
391          NOTE - TEXT BELOW NOT VALIDATED FOR AUTOPRICING.
392           PASSENGER BOX - UN FOLLOWED BY THE AGE.</RuleText>
393                      </Rule>
394                      <Rule Code="20" Tarrif="LEXOW1" Name="TOUR CONDUCTOR DISCOUNTS">
395                         <RuleText>NO DISCOUNTS FOR TOUR CONDUCTORS.</RuleText>
396                      </Rule>
397                      <Rule Code="21" Tarrif="LEXOW1" Name="AGENT DISCOUNTS">
398                         <RuleText>NO DISCOUNTS FOR SALE AGENTS.</RuleText>
399                      </Rule>
400                      <Rule Code="22" Tarrif="LEXOW1" Name="ALL OTHER DISCOUNTS">
401                         <RuleText>NO DISCOUNTS FOR OTHERS.</RuleText>
402                      </Rule>
403                      <Rule Code="23" Tarrif="LEXOW1" Name="MISCELLANEOUS PROVISIONS">
404                         <RuleText>NO PROVISIONS APPLY.</RuleText>
405                      </Rule>
406                      <Rule Code="25" Tarrif="LEXOW1" Name="FARE BY RULE">
407                         <RuleText>NOT APPLICABLE.</RuleText>
408                      </Rule>
409                      <Rule Code="26" Tarrif="LEXOW1" Name="GROUPS">
410                         <RuleText>NO GROUP PROVISIONS APPLY.</RuleText>
411                      </Rule>
412                      <Rule Code="27" Tarrif="LEXOW1" Name="TOURS">
413                         <RuleText>NO TOUR PROVISIONS APPLY.</RuleText>
414                      </Rule>
415                      <Rule Code="28" Tarrif="LEXOW1" Name="VISIT ANOTHER COUNTRY">
416                         <RuleText>NO VISIT ANOTHER COUNTRY PROVISIONS APPLY.</RuleText>
417                      </Rule>
418                      <Rule Code="29" Tarrif="LEXOW1" Name="DEPOSITS">
419                         <RuleText>NO DEPOSIT PROVISIONS APPLY.</RuleText>
420                      </Rule>
421                      <Rule Code="31" Tarrif="LEXOW1" Name="VOLUNTARY CHANGES">
422                         <RuleText>ENTER RD*31 OR RD‡LINE NUM‡*31 FOR VOLUNTARY CHGS.</RuleText>
423                      </Rule>
424                      <Rule Code="33" Tarrif="LEXOW1" Name="VOLUNTARY REFUNDS">
425                         <RuleText>CHECK CATEGORY 16 OR CONTACT CARRIER FOR DETAILS.</RuleText>
426                      </Rule>
427                      <Rule Code="35" Tarrif="LEXOW1" Name="NEGOTIATED FARES">
428                         <RuleText>NOT APPLICABLE.</RuleText>
429                      </Rule>
430                      <Rule Code="IC" Tarrif="LEXOW1" Name="INTERNATIONAL CONSTRUCTION">
431                         <RuleText>NOT A CONSTRUCTED FARE</RuleText>
432                      </Rule>
433                   </Rules>
434                </GetAirRules>
435                <Requisites/>
436                <RequestType xsi:nil="true"/>
437                <UserID xsi:nil="true"/>
438                <Errors xsi:nil="true"/>
439             </Response>
440          </ResponseBin>
441       </ns1:GetAirRulesResponse>
442    </SOAP-ENV:Body>
443 </SOAP-ENV:Envelope>

Запрос на выписку

Данный запрос запускается после оплаты заказа, может быть запущен как в ручную - пользователем, у которого есть на это права, так и автоматически при использовании соответствующей опции. Выписать неоплаченный заказ через Nemo возможности нет. При запуске запроса на выписку также запускается процесс обновления заказа, в ходе которого сверяется цена и остальные параметры заказа, а также проверяется его актуальность. Заказы, с истекшим таймлимитом выписаны через Nemo быть не могут.

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=Ticketing


Примеры запроса и ответа:

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DTicketing">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:Ticketing>
 5          <RequestBin>
 6             <Request>
 7                <Ticketing>
 8                   <!--Запрос, обязательный-->
 9                   <!--BookID - Id заказа в системе Немо, обязательный-->
10                   <BookID>260650</BookID>
11                   <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный-->
12                   <ValCompany></ValCompany>
13                   <!--Комиссии, указываются или в валюте, или в процентах, для валюты обязательным является код валюты. 
14                    Если указана и в валюте и в процентах, то у поставщика комиссия устанавливается в валюте.-->
15                   <!--Amount - комиссия в валюте-->
16                   <!--Percent - комиссия в процентах-->
17                   <!--CurrencyCode - код валюты комиссии-->
18                   <Comission Amount="" Percent="" CurrencyCode=""/>
19                </Ticketing>
20             </Request>
21             <Source>
22                <!--Авторизация, обязательный-->
23                <!--ClientId, идентификатор клиента, обязательный-->
24                <!--APIKey, API ключ клиента, обязательный-->
25                <!--Language, код языка, обязательный-->
26                <!--Currency код валюты, обязательный-->
27                <ClientId>---</ClientId>
28                <APIKey>---</APIKey>
29                <Language>RU</Language>
30                <Currency>RUB</Currency>
31             </Source>
32          </RequestBin>
33       </ver:Ticketing>
34    </soapenv:Body>
35 </soapenv:Envelope>

Ответ

  1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DTicketing" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  2    <SOAP-ENV:Body>
  3       <ns1:TicketingResponse>
  4          <ResponseBin>
  5             <Response>
  6                <!--ID - Ид брони в системе немо, целое число-->
  7                <!--Status - Индикатор состояния брони, возможные значения:
  8                     booked - забронировано,
  9                     canceled - бронь отменена,
 10                     ticket - выписана,
 11                     UNDEFINED - статус не определён-->
 12                <!--Code - Код брони в системе бронирования/поиска, строка-->
 13                <Ticketing ID="260650" Status="ticket" Code="0PC1V1">
 14                   <QueryPlace xsi:nil="true"/>
 15                   <!--FlightId - Id перелёта в системе Немо-->
 16                   <Flight FlightId="142350072">
 17                      <!--Веб-сервис из которого получен перелёт-->
 18                      <WebService>SIRENA2000</WebService>
 19                      <!--Код авиакомпании - валидирующего перевозчика, IATA-->
 20                      <ValCompany>UT</ValCompany>
 21                      <URL>http---CLIENT_DOMAIN---</URL>
 22                      <!--Сегменты в перелёте, обязательный-->
 23                      <Segments>
 24                         <!--SegNum - Номер сегмента в перелёте-->
 25                         <Segment SegNum="1" SegGroupNum="0">
 26                            <!--Аэропорт отправления-->
 27                            <DepAirp CodeType="IATA">VKO</DepAirp>
 28                            <!--Терминал пункта отправления, если пустое значение, то терминала нет, 
 29                             т.е. в аэропорту всего 1 терминал-->
 30                            <DepTerminal/>
 31                            <!--Аэропорт прибытия-->
 32                            <ArrAirp CodeType="IATA">LED</ArrAirp>
 33                            <!--Терминал пункта прибытия, если пустое значение, то терминала нет, 
 34                             т.е. в аэропорту всего 1 терминал-->
 35                            <ArrTerminal/>
 36                            <!--Авиакомпания перевозчик-->
 37                            <OpAirline>UT</OpAirline>
 38                            <!--Авиакомпания, продающая перелёт-->
 39                            <MarkAirline>UT</MarkAirline>
 40                            <!--Номер рейса-->
 41                            <FlightNumber>369</FlightNumber>
 42                            <!--Тип воздушного судна, код-->
 43                            <AircraftType>TU5</AircraftType>
 44                            <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС-->
 45                            <DepDateTime>2014-02-16T11:05:00</DepDateTime>
 46                            <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС-->
 47                            <ArrDateTime>2014-02-16T12:25:00</ArrDateTime>
 48                            <!--Количество остановок-->
 49                            <StopNum/>
 50                            <BookingCodes>
 51                               <!--Класс перелета-->
 52                               <BookingCode ClassType="economy">
 53                                  <!--Код класса перелета-->
 54                                  <BookingCode>H</BookingCode>
 55                               </BookingCode>
 56                            </BookingCodes>
 57                            <!--Время перелёта, в минутах-->
 58                            <FlightTime>80</FlightTime>
 59                            <!--Временные зоны точки отправления и прибытия. Возможные параметры: 
 60                                 departure - временная зона аэропорта отправления,
 61                                 arrival - временная зона аэропорта прибытия-->
 62                            <TimeZone/>
 63                            <!--Признак электронного билета-->
 64                            <ETicket/>
 65                         </Segment>
 66                      </Segments>
 67                      <!--Информация о стоимости, может встречаться более 1 раза-->
 68                      <!--Refundable - возвратный/невозвратный, true/false. Если пустое, то не известно-->
 69                      <PricingInfo Refundable="false">
 70                         <!--Типы пассажиров с ценами, таксами и т.п., может встречаться более 1 раза-->
 71                         <!--Type - тип пассажира, возможные значения:
 72                              ADT - взрослые,
 73                              CNN - дети со взрослыми,
 74                              UNN - дети без сопровождения взрослых,
 75                              INF - младенцы,
 76                              INS - младенцы с местом, обязательный-->
 77                         <!--Quantity - Количество пассажиров данного типа-->
 78                         <PassengerFare Type="ADT" Quantity="1">
 79                            <!--Базовая стоимость, в базовой валюте-->
 80                            <!--Currency - код валюты, Amount - значение цены-->
 81                            <BaseFare Currency="RUB" Amount="990"/>
 82                            <!--Базовая стоимость, в эквивалентной валюте(валюте продажи)-->
 83                            <!--Currency - код валюты, Amount - значение цены-->
 84                            <EquiveFare Currency="RUB" Amount="990"/>
 85                            <!--Окончательная стоимость в эквивалентной валюте-->
 86                            <!--Currency - код валюты, Amount - значение цены-->
 87                            <TotalFare Currency="RUB" Amount="1475"/>
 88                            <!--Массив такс-->
 89                            <Taxes>
 90                               <!--CurCode - код валюты, обязательный-->
 91                               <!--TaxCode - код таксы, обязательный-->
 92                               <!--Amount - сумма таксы, обязательный-->
 93                               <Tax CurCode="RUB" TaxCode="YQ" Amount="360"/>
 94                               <Tax CurCode="RUB" TaxCode="ZZ" Amount="125"/>
 95                            </Taxes>
 96                            <!--Массив тарифов-->
 97                            <!--Тариф-->
 98                            <!--Code - код тарифа-->
 99                            <!--SegNum - номер сегмента, к которому применён тариф-->
100                            <Tariffs/>
101                            <!--Строка расчёта цены-->
102                            <FareCalc/>
103                            <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС-->
104                            <LastTicketDateTime>2014-02-09T03:13:00</LastTicketDateTime>
105                         </PassengerFare>
106                      </PricingInfo>
107                      <!--Комиссии-->
108                      <!--Currency - код валюты-->
109                      <Commission Currency="RUB">0</Commission>
110                      <!--Сборы-->
111                      <!--Currency - код валюты-->
112                      <Charges Currency="RUB">0</Charges>
113                      <TotalPrice Currency="RUB">1475</TotalPrice>
114                   </Flight>
115                   <!--Информация об агенстве-->
116                   <Agency/>
117                   <!--Маршрут квитанция--> 
118                   <!--Возможные параметры:
119                        Encoding - кодировка,
120                        Format - формат-->
121                   <ItinReceipts xsi:nil="true"/>
122                   <FareStored xsi:nil="true"/>
123                   <!--Список пассажиров-->
124                   <Travellers>
125                      <!--Type тип пассажира, обязательный, возможные значения:
126                           ADT - взрослые,
127                           CNN - дети со взрослыми,
128                           UNN - дети без сопровождения взрослых,
129                           INF - младенцы,
130                           INS - младенцы с местом-->
131                      <!--IsContact - если true - то данный пассажир является контактным лицом, если false - то не является,
132                       контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них 
133                       может быть контактным лицом, по умолчанию false-->
134                      <!--Num - порядковый номер пассажира , начинается с 1-->
135                      <!--LinkedTo - номер взрослого, к которому привязан младенец/ребёнок-->
136                      <Traveller Type="ADT" IsContact="false" Num="1">
137                         <!--Код типа питания, необязательный, возможные значения:
138                              NONE - отсутствует
139                              AVML - Азиатская вегетарианская кухня
140                              BLML - Блюда щадящей диеты
141                              CHML - Детское питание
142                              CHPC - Детский холодный завтрак
143                              СНСС - Детский горячий завтрак
144                              CHHC - Детский ланч, ветчина и сыр
145                              PBJS - Детский ланч, ореховое масло
146                              CHMC - Детский обед макароны с сыром
147                              DBML - Диабетическое питание
148                              FPML - Фрукты
149                              GFML - Питание без клейковины
150                              HFML - Питание богатое клетчаткой
151                              HNML - Индусская кухня
152                              BBML - Питание для младенцев
153                              KSML - Кошерная кухня
154                              SMKB - Кошерный завтрак
155                              SMKL - Кошерный ланч
156                              SMKD - Кошерный обед
157                              LPML - Малобелковое питание
158                              LCML - Низкокалорийное питание
159                              LFML - Низкохолестериновое питание
160                              PRML - Низкопуриновое питание
161                              LSML - Малосоленое питание
162                              MOML - Мюсли
163                              NLML - Безмолочные продукты
164                              ORML - Восточная кухня
165                              RVML - Сырые овощи
166                              SFML - Морепродукты
167                              SPML - Особое питание
168                              VLML - Вегетарианское, молоко и яйца
169                              VGML - Строго вегетарианское питание
170                              VJML - Джайнизское вегетарианское
171                              VOML - Восточное вегетарианское питание-->
172                         <Meal/>
173                         <!--Билет-->
174                         <!--TickectNum - номер билета-->
175                         <Ticket TickectNum="2986150730166"/>
176                         <!--Место пассажира в самолёте, возможные параметры:
177                              Number - номер места,
178                              Characteristic - характеристика места, 
179                              SmokingPreference - статус курения на этом месте, 
180                              SegmentNumber - номер сегмента в перелёте-->
181                         <Seats/>
182                         <!--Персональные данные-->
183                         <!--DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000)-->
184                         <!--Nationality - национальность-->
185                         <!--Gender - пол пассажира, возможные значения:
186                              M - мужской(Male)
187                              F - женский(Female)-->
188                         <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
189                            <!--Имя пассажира-->
190                            <FirstName>PETR</FirstName>
191                            <!--Фамилия пассажира-->
192                            <LastName>IVANOV</LastName>
193                            <!--Отчество пассажира-->
194                            <MiddleName xsi:nil="true"/>
195                         </PersonalInfo>
196                         <!--Карточка часто летающего пассажира, возможные параметры:
197                              OpCode -  код авиакомпании,
198                              Number - номер карточки-->
199                         <LoyaltyCard/>
200                         <!--Контактная информация-->
201                         <ContactInfo>
202                            <!--Контактный email-->
203                            <EmailID xsi:nil="true"/>
204                            <Telephone>
205                               <!--Номер телефона-->
206                               <PhoneNumber>79053811900</PhoneNumber>
207                               <!--Код страны-->
208                               <CountryAccessCode xsi:nil="true"/>
209                               <!--Код региона/города-->
210                               <AreaCityCode xsi:nil="true"/>
211                            </Telephone>
212                         </ContactInfo>
213                         <!--Данные о документе-->
214                         <!--DocType - тип документа, возможные значения:
215                              Р - Паспорт
216                              A – Паспорт иностранца
217                              С - Внутренний гражданский паспорт
218                              F – Документ заменяющий паспорт
219                              М - Воинское удостоверение
220                              N – Сертификат натурализации(специфичный документ США)
221                              T – Док.повторного въезда, паспорт беженца
222                              V – Документ для пересечения границы-->
223                         <!--DocNum - номер документа-->
224                         <!--DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000)-->
225                         <!--CountryCode - Код страны-->
226                         <DocumentInfo DocType="C" DocNum="109482" CountryCode="RU"/>
227                         <!--Информация о визе(Заполняется через SSR DOCO), возможные параметры:
228                              Num - номер визы
229                              IssueDate - дата(dd.mm.yyyy) выдачи визы
230                              IssueCountry - страна выдачи визы
231                              IssuePlace - место выдачи визы
232                              BirthCountry - страна рождения(IATA код страны)
233                              BirthCity - город рождения(название)-->
234                         <VisaInfo/>
235                         <!--Адрес прибытия(Заполняется через SSR DOCA)
236                          Но для въезжающих в США(не граждан США) информация является обязательной. Если она не заполняется
237                          при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт.
238                          CountryCode - Код страны
239                          State - Штат или область въезда
240                          PostalCode - Почтовый код
241                          City - Город
242                          StreetAddress - Адрес: улица, номер дома, квартиры и т.п.-->
243                         <ArrAddress/>
244                         <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, 
245                          то параметры Smoking и Location игнорируются и могут быть не указаны-->
246                         <!--SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих-->
247                         <!--Location - положение места в ряде, возможные значения:
248                              W - у окна (Window)
249                              M - где-то в середине ряда (Middle)
250                              NPW - возле прохода (NearPassengerWay)
251                              NS - нет предпочтения (NotSpecified)-->
252                         <!--RowNumber - Номер ряда, строка-->
253                         <!--PlaceNumber - Номер места, строка-->
254                         <!--SegNumber - Номер сегмента, строкай-->
255                         <PreferedPlace/>
256                         <!--Формат паспортной строки, возможные значения:
257                              DOCS - строка формата DOCS,
258                              FOID - строка формата FOID-->
259                         <DocStringFormats/>
260                      </Traveller>
261                   </Travellers>
262                </Ticketing>
263                <Requisites/>
264                <RequestType xsi:nil="true"/>
265                <UserID xsi:nil="true"/>
266                <Errors xsi:nil="true"/>
267             </Response>
268          </ResponseBin>
269       </ns1:TicketingResponse>
270    </SOAP-ENV:Body>
271 </SOAP-ENV:Envelope>

Войдирование билета

Данный запрос запускается после выписки билета, если необходимо его отменить.

WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=VoidTicket

Пример запроса и ответа:

Запрос

 1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DVoidTicket">
 2    <soapenv:Header/>
 3    <soapenv:Body>
 4       <ver:VoidTicket>
 5          <RequestBin>
 6             <Request>
 7                <VoidTicket>
 8                   <!--Запрос, обязательный-->
 9                   <!--BookID - Ид брони в системе немо, целое число-->
10                   <BookID>260650</BookID>
11                </VoidTicket>
12             </Request>
13             <Source>
14                <!--Авторизация, обязательный-->
15                <!--ClientId, идентификатор клиента, обязательный-->
16                <!--APIKey, API ключ клиента, обязательный-->
17                <!--Language, код языка, обязательный-->
18                <!--Currency код валюты, обязательный-->
19                <ClientId>---</ClientId>
20                <APIKey>---</APIKey>
21                <Language>RU</Language>
22                <Currency>RUB</Currency>
23             </Source>
24          </RequestBin>
25       </ver:VoidTicket>
26    </soapenv:Body>
27 </soapenv:Envelope>

Ответ

 1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DVoidTicket" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 2    <SOAP-ENV:Body>
 3       <ns1:VoidTicketResponse>
 4          <ResponseBin>
 5             <Response>
 6                <!--BookID - Ид брони в системе немо-->
 7                <VoidTicket BookID="260650">
 8                   <!--Result, Отмена выписки-->
 9                   <!--Sucscess - Результат отмены выписки, true или false-->
10                   <Result Success="true"/>
11                </VoidTicket>
12                <Requisites/>
13                <RequestType xsi:nil="true"/>
14                <UserID xsi:nil="true"/>
15                <Errors xsi:nil="true"/>
16             </Response>
17          </ResponseBin>
18       </ns1:VoidTicketResponse>
19    </SOAP-ENV:Body>
20 </SOAP-ENV: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 - туда-обратно, CR - сложный маршрут
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ЧЧ:ММ:СС. Если бронирование не будет аннулировано или выписано до этого времени, то могут быть применены штрафы.

См. также