Ticketing Web Service

From docs.websky.tech
Jump to navigation Jump to search

Attention! The system implements an improved API-project "Nemo Connect", we strongly recommend to connect using the scheme described in the documentation at link.

Information

The agency ticketing API allows you to determine the validating carrier and the commission value from the airline for the booking, and to run the ticketing procedure.

As a rule for ticketing it is enough to have a "Paid" status. If the option For successful bookings do processing: automatically after changing the status to Paid" from the For technical support → Outdated settings → Booking settings section is activated, the ticket will be automatically issued after the payment. However, this is a prerequisite only for users, it is possible to get a ticket that does not require payment, for this you need to have API user rights. For example, API account must be created for the agency manager.

Additionally the Allowed IP addresses setting is implemented in the section System settings → Integration → Nemo 1.0 (SOAP API) , defining a range of IP addresses for additional protection of accounts under which a ticket is issued without paying or fixing the payment. IP-addresses have the following acceptable format: 125.125.25.5/8, that is possible to specify with the subnet mask.

Attention! When the Websky system does not have the booking locator data in the airline system, the ticketing operation is not possible. That's why in response to Ticketing request you may get an error message like "The requested operation is not allowed for this object". If GDS doesn't have data about a booking locator in the airline's system, an empty value will be returned in the response to the BookFlight request in the Segments.Segment.SupplierCode parameter. In this case you need to send an UpdateBook request several times until GDS side receives information about booking locator in the airline system. Websky system will then receive this value from GDS. The ticketing request can only be sent after a non-zero value is received in the Segments.Segment.SupplierCode parameter in the response from the Websky Agent API.

In Nemo Connect, additional settings have been added to the agent service (the interface to the booking server) for ticketing. The new version of the API allows you to:

  • report the VC (validating carrier) for a given combination
  • inform the commission for the given combination;
  • report the endorsements for the given combination;
  • accept ticketing requests;
  • check the availability of the booking in the GDS;
  • synchronize the booking;
  • perform ticketing;
  • transmit additional information in the remarks;
  • perform voiding for tickets.

General format of ticketing request/response

This request is launched after the payment for the order, it can be launched either manually - by a user who has rights for it - or automatically. It is possible to make a ticketing for unpaid order via Websky only from certain IP addresses, the list of which is configured in the settings section described above. When the ticketing request is triggered, the order update process is also launched, during which the price and other parameters of the order are checked, as well as its relevance is checked. Orders with an expired time limit cannot be ticketed.

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

Request

 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                   <BookID>?</BookID>
 9                   <!--BookID — Order ID in the Websky system-->
10                   <ValCompany>?</ValCompany>
11                   <!--ValCompany —validating carrier (the one that issues a ticket)-->
12                   <Comission Amount="?" Percent="?" CurrencyCode="?"/>
13                   <!--Comission Amount - commissions, indicated either in currency or in percentage, for currency, the 
14                    currency code is obligatory. If it is indicated both in currency and in percent, the commission at the supplier is established in currency-->
15                   <!--Amount - commission in currency-->
16                   <!--Percent - commission in percent-->
17                   <!--CurrencyCode - commission currency code-->
18                   <PassengerFops>
19                      <!--Zero or more repetitions:-->
20                      <PassengerFop>
21                         <PassengerId>?</PassengerId>
22                         <!--PassengerId — sequence number of the passenger on the flight-->
23                         <Fops>
24                            <!--Zero or more repetitions:-->
25                            <Fop>
26                               <Type>?</Type>
27                               <!--Type - form of payment: CC (credit card) or CA (cash)-->
28                               <Money Currency="?">?</Money>
29                               <!--Money - payment amount-->
30                               <!--Currency - currency code-->
31                               <VendorCode>?</VendorCode>
32                               <!--VendorCode — card type code: (for example, VI — Visa, 
33                                                                            MC — MasterCard, 
34                                                                            AX — American Express
35                                                                            DC — DCL,
36                                                                            CA — EURO,
37                                                                            IK — EURO,
38                                                                            JB — JCB,
39                                                                            JC — JCB,
40                                                                            BA — Visa)-->
41                               <Number>?</Number>
42                               <!--Number — card number-->
43                               <ExpireDate>?</ExpireDate>
44                               <!--ExpireDate — he expiration date of the card, for example 12.2020-->
45                               <ManualApprovalCode>?</ManualApprovalCode>
46                               <!--ManualApprovalCode - Preauthorization code for the transaction for which the funds have been blocked for ticketing. This is NOT a CVV code. It is optional. If not specified, it will be automatically obtained by the Websky system through GDS/-->
47                            </Fop>
48                         </Fops>
49                      </PassengerFop>
50                   </PassengerFops>
51                   <DataItems>
52                      <!--Zero or more repetitions:-->
53                      <DataItem>
54                         <Type>Remark</Type>
55                         <!--Type — type of content in this block, for example: Meal, Remark-->
56                         <Remark>
57                            <Type>?</Type>
58                            <!--Type — remark type, for example: General, Historical-->
59                            <Text>?</Text>
60                            <!--Text — remark content-->
61                         </Remark>
62                      </DataItem>
63                   </DataItems>
64                </Ticketing>
65             </Request>
66             <Source>
67                <ClientId>?</ClientId>
68                <!--ClientId - client ID in the Websky system. You can see/add it in
69                "System Settings" → "Integration" → "Nemo 1.0 (SOAP API)".-->
70                <APIKey>?</APIKey>
71                <! --APIKey - the secret access key to Websky API. You can see / add it in the section
72                "System Settings → Integration → Nemo 1.0 (SOAP API).-->
73                <Language>?</Language>
74                <!--Language - for example: RU-->
75                <Currency>?</Currency>
76                <!-- Currency - for example: RUB, EUR-->
77             </Source>
78          </RequestBin>
79       </ver:Ticketing>
80    </soapenv:Body>
81 </soapenv:Envelope>

Response

  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                <Ticketing ID="?" Status="?" Code="?">
  7                <!--ID - ID of the booking in Websky system, integer, mandatory-->
  8                <!--Status - booking status indicator, possible values:
  9                                                 booked - booked,
 10                                                 canceled - booking is canceled,
 11                                                 ticket - ticketed
 12                                                 UNDEFINED - status not defined-->
 13                <!--Code - booking code in the supplier's system-->
 14                   <QueryPlace xsi:nil="true"/>
 15                   <!--QueryPlace — booking position in the queue, Number - booking number in the queue-->
 16                   <Flight FlightId="?">
 17                   <!--FlightId — Flight ID in the Websky system-->
 18                      <WebService>?</WebService>
 19                      <!--WebService — flight supplier-->
 20                      <ValCompany>?</ValCompany>
 21                      <!--ValCompany — code of the airline which is a validating carrier, IATA-->
 22                      <URL>?</URL>
 23                      <!--URL — link to booking of a particular flight-->
 24                      <Segments>
 25                         <Segment SegNum="?" SegGroupNum="?">
 26                         <!--SegNum — segment number in the flight-->
 27                         <!--SegGroupNum – leg number in the flight-->
 28                            <SupplierCode>?</SupplierCode>
 29                            <!--SupplierCode – order number in the airline's system--> 
 30                            <DepAirp CodeType="IATA">?</DepAirp>
 31                            <!--DepAirp — Departure airport, for example: MOW - any airport in Moscow
 32                            or SVO - Sheremetyevo-->
 33                            <DepTerminal>?</DepTerminal>
 34                            <!--DepTerminal — terminal of the point of departure, if empty,
 35                            there is only 1 terminal at the airport-->
 36                            <ArrAirp CodeType="IATA">?</ArrAirp>
 37                            <!--ArrAirp — arrival airport-->
 38                            <ArrTerminal>?</ArrTerminal>
 39                            <!--ArrTerminal — terminal of the point of arrival, if empty,
 40                            there is only 1 terminal at the airport-->
 41                            <OpAirline>?</OpAirline>
 42                            <!--OpAirline — airline carrier, for example: SU — Aeroflot-->
 43                            <MarkAirline>?</MarkAirline>
 44                            <!--MarkAirline — airline selling the flight-->
 45                            <MarkAirlineName>?</MarkAirlineName>
 46                            <!--MarkAirlineName - the full name of the airline in Cyrillic-->
 47                            <FlightNumber>?</FlightNumber>
 48                            <!--FlightNumber — flight number-->
 49                            <AircraftName>?</AircraftName>
 50                            <!--AircraftName — aircraft name-->
 51                            <AircraftType>?</AircraftType>
 52                            <!--AircraftType — aircraft type, code-->
 53                            <DepDateTime>?</DepDateTime>
 54                            <!--DepDateTime — date and time of departure, format YYYYY-MM-DDTHH:MM:SS-->
 55                            <ArrDateTime>?</ArrDateTime>
 56                            <!--ArrDateTime — date and time of arrival, format YYYYY-MM-DDTCH:MM:SS-->
 57                            <StopNum>?</StopNum>
 58                            <!--StopNum — number of stopovers-->
 59                            <StopPoints>
 60                            <!--StopPoints — information about technical stops, if any-->
 61                               <StopPoint>
 62                                  <AirportCode>?</AirportCode>
 63                                  <!--AirportCode — airport stopover code, three character iata code-->
 64                                  <UTC>?</UTC>
 65                                  <!--UTC — airport time zone shift-->
 66                                  <ArrDateTime>?</ArrDateTime>
 67                                  <!--ArrDateTime — date and time of arrival, format YYYYY-MM-DDTCH:MM:SS-->
 68                                  <DepDateTime>?</DepDateTime>
 69                                  <!--DepDateTime — date and time of departure, format YYYYY-MM-DDTHH:MM:SS-->
 70                               </StopPoint>
 71                            </StopPoints>
 72                            <BookingCodes>
 73                               <BookingCode ClassType="?">
 74                               <!--ClassType — flight class, for example: economy-->
 75                                  <BookingCode>?</BookingCode>
 76                                  <!--BookingCode — the booking class code, different airlines may write the same class
 77                                  can be written in different letters, for example: L-->
 78                               </BookingCode>
 79                            </BookingCodes>
 80                            <FlightTime>?</FlightTime>
 81                            <!--FlightTime — flight time in minutes-->
 82                            <TimeZone Departure="?" Arrival="?"/>
 83                            <!--Departure departure airport time zone-->
 84                            <!--Arrival — arrival airport time zone-->
 85                            <ETicket>?</ETicket>
 86                            <!--ETicket — e-ticket attribute, values: true / false-->
 87                            <isCharter>?</isCharter>
 88                            <!--isCharter — attribute of a charter flight, values: true / false-->
 89                            <BaggageAllowances>
 90                            <!--BaggageAllowances — baggage information -->
 91                               <BaggageAllowance>
 92                                  <PassengerType>?</PassengerType>
 93                                  <!--PassengerType — type of passenger, corresponds to the type of fare in PricingInfo -->
 94                                  <Value>?</Value>
 95                                  <!--Value — number of-->
 96                                  <Measurement>?</Measurement>
 97                                  <!--Measurement — a measure, can take the values: kg - kilogram, pc - baggage space, lb - pound-->
 98                               </BaggageAllowance>
 99                            </BaggageAllowances>
100                         </Segment>
101                      </Segments>
102                      <PricingInfo Refundable="?">
103                      <!--Refundable — refundable/non-refundable, true/false. If empty, not known-->
104                         <PassengerFare Type="?" Quantity="?">
105                         <!--Type — fare type-->
106                         <!--Quantity —number of passengers of that type-->
107                            <BaseFare Currency="?" Amount="?"/>
108                            <!--BaseFare — base price, in base currency. Currency - currency code, Amount - price value-->
109                            <EquiveFare Currency="?" Amount="?"/>
110                            <!--EquiveFare — base value in the equivalent currency (currency of sale).
111                            Currency - currency code, Amount - price value-->
112                            <TotalFare Currency="?" Amount="?"/>
113                            <!--TotalFare — total value, in the equivalent currency.
114                            Currency - currency code, Amount - price value-->
115                            <Taxes>
116                               <Tax CurCode="?" TaxCode="?" Amount="?"/>
117                               <!--CurCode — currency code, TaxCode - tax code, Amount - amount of tax-->
118                            </Taxes>
119                            <Tariffs>
120                               <Tariff Code="?" SegNum="?"/>
121                               <!--Code - fare code, SegNum - number of segment to which the fare is applied-->
122                            </Tariffs>
123                            <FareCalc>?</FareCalc>
124                            <!-FareCalc - price calculation line-->
125                            <LastTicketDateTime>?</LastTicketDateTime>
126                            <!--LastTicketDateTime - the date and time of the time limit on the ticketing in the format YYYYY-MM-DDTHH:MM:SS. If the "Apply time zone - For time limit calculations in agent API" setting is enabled, the time limit date and time will be transferred to the user's time zone. If the setting is disabled, the date and time will be in the Moscow time zone by default.
127                         </PassengerFare>
128                      </PricingInfo>
129                      <Commission Currency="?"> </Commission
130                      <Charges Currency="?">?</Charges>.
131                      <!-Charges - charges, Currency - currency code-->
132                      <TotalPrice Currency="?">?</TotalPrice
133                      <!--TotalPrice - total price, Currency - currency code-->
134                   </Flight>
135                   <Agency Name="?">
136                   <!-Name - agency name-->
137                      <Telephone Type="?">
138                      <!--Type - type of number, mandatory, possible values:
139                      M - Mobile, H - Home, B - Work, A - Agency-->
140                         <!--Optional:-->
141                         <PhoneNumber>?
142                         <!--PhoneNumber - phone number-->
143                         <!--Optional:-->
144                         <CountryAccessCode>?
145                         <!-CountryAccessCode - country code-->
146                         <!--Optional:-->
147                         <AreaCityCode>?
148                         <!--AreaCityCode - region/city code-->
149                      </Telephone>
150                      <Address City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/>
151                      <!-City - city-->
152                      <!-State - state-->
153                      <!--StreetAddress - address in the city (street, house, building, office, etc)-->
154                      <!--PostalCode - postal index-->
155                      <!-CountryCode - country code (RU, UA etc)-->
156                   </Agency>
157                   <ItinReceipts Encoding="?" Format="?">
158                   <!--ItinReceipts - itinerary receipt, Encoding - encoding, Format - format-->
159                   <FareStored xsi:nil="true"/>
160                    <PaymentTransactions>
161                      <Transaction>
162                         <Id>?</Id>
163                         <!--Id - transaction number in Websky-->
164                         <Status>?</Status>
165                         <!--Status - transaction status-->
166                         <GatewayName>?</GatewayName>
167                         <!-GatewayName - name of the payment gateway-->
168                         <MoneyPaid Currency="?">?</MoneyPaid>
169                         <!--MoneyPaid - payment amount-->
170                         <!-Currency - currency-->
171                         <PaymentDateTime>?</PaymentDateTime>
172                         <!-PaymentDateTime - payment date and time-->
173                         <CreateDateTime>?</CreateDateTime>
174                         <!--CreateDateTime - date and time of payment transaction creation-->
175                         <Description/>
176                      </Transaction>
177                   </PaymentTransactions>
178                   <PaymentStatus>?</PaymentStatus>
179                   <!-PaymentStatus - payment status:
180                                          not_paid - not paid
181                                          partly_paid - paid, partly
182                                          fully_paid - paid in full-->
183                   <Travellers>
184                      <!--Zero or more repetitions:-->
185                      <Traveller Type="?" IsContact="?" LinkedTo="?" Num="?" TravellerId="?">
186                      <!--Type - passenger type, mandatory, possible values: ADT - adults,
187                      CNN - children, UNN - unaccompanied children, INF - infants, INS - infants with seat-->
188                      <!--IsContact - if true - this passenger is a contact person, if false - he is not,
189                       there can only be 1 contact person, if there are adults among the passengers, only one of them
190                      can be contact person, default is false-->
191                      <!--Num - passenger number, starts with 1-->
192                      <!--LinkedTo - the number of the adult to which the infant/toddler is linked (linking a child to an adult is optional)-->
193                     <!--TravellerId - actualized passenger number which is returned in response to the booking request. Further references to passengers are given based on this parameter-->
194                         <Meal>?</Meal>
195                         <!--Meal - food type code, possible values:
196                                                 NONE - none
197                                                 AVML - Asian vegetarian meals
198                                                 BLML - Meals with a Moderate Diet
199                                                 CHML - Baby Food
200                                                 CHPC - Cold breakfast for kids
201                                                 CHCC - Hot Breakfast for Kids
202                                                 CHHC - Kids Lunch, Ham & Cheese
203                                                 PBJS - Kids Lunch, peanut butter
204                                                 CHMC - Children's lunch macaroni and cheese
205                                                 DBML - Diabetic Nutrition
206                                                 FPML - Fruit
207                                                 GFML - Gluten Free Nutrition
208                                                 HFML - Fiber Rich Meals
209                                                 HNML - Hindu Food
210                                                 BBML - Food for Infants
211                                                 KSML - Kosher cooking
212                                                 SMKB - Kosher Breakfast
213                                                 SMKL - Kosher Lunch
214                                                 SMKD - Kosher Lunch
215                                                 LPML - Low Protein Meals
216                                                 LCML - Low Calorie Meals
217                                                 LFML - Low Cholesterol Diet
218                                                 PRML - Low Purine Diet
219                                                 LSML - Light Malt Malt Nutrition
220                                                 MOML - Muesli
221                                                 NLML - Dairy Free Foods
222                                                 ORML - Oriental Food
223                                                 RVML - Raw Vegetables
224                                                 SFML - Seafood
225                                                 SPML - Specialty Foods
226                                                 VLML - Vegetarian, Milk & Egg
227                                                 VGML - Strictly Vegetarian
228                                                 VJML - Jainese Vegetarian
229                                                 VOML - Oriental Vegetarian Meals-->
230                         <PersonalInfo DateOfBirth="?" Nationality="?" Gender="?">
231                         <!-DateOfBirth - date of birth in DD.MM.YYYY format (for example 12/31/2000)-->
232                         <!--Nationality - citizenship, two-letter country code (RU, UA, US and etc.)-->
233                         <!--Gender - gender of passenger, possible values: M - Male, F - Female -->
234                            <FirstName>?</FirstName>
235                           <!--FirstName — passenger's name-->
236                            <LastName>?</LastName>
237                            <!--LastName -- passenger's last name-->
238                            <!--Optional:-->
239                            <MiddleName>?</MiddleName>
240                            <!--MiddleName - passenger's middle name-->
241                         </PersonalInfo>
242                         <LoyaltyCard OpCode="?" Number="?"/>
243                         <!--OpCode - airline code-->
244                         <!--Number - card number-->
245                         <ContactInfo>
246                            <!--Optional:-->
247                            <EmailID>?</EmailID>
248                            <!--EmailID -- contact email-->
249                            <!--Optional:-->
250                         <!--DocType — document type, possible values:
251                                                                 P - Passport
252                                                                 A - Passport of a foreigner
253                                                                 C - Internal passport
254                                                                 F - Passport replacement document
255                                                                 M - Military ID card
256                                                                 N - Naturalization certificate (US specific document)
257                                                                 T - Re-entry document, refugee passport
258                                                                 V - Border crossing document-->
259                         <!--DocNum - number of document-->
260                         <!--CountryCode - two-letter country code of the passport (RU, UA, US etc)-->
261                         <!--DocElapsedTime - expiration date in DD.MM.YYYY (for example 31.12.2000)-->
262                         <Ticket TicketNum="?">
263                         <!-- TicketNum - number of an issued ticket -->
264                         <VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/>
265                         <!--Num - Visa number-->
266                         <!--IssueDate - date (DD.MM.YYYY) of issue of visa-->
267                         <!--IssueCountry - country where the visa was issued-->
268                         <!--IssuePlace - location where visa is issued-->
269                         <!--BirthCountry - country of birth (IATA country code)-->
270                         <!--BirthCity - city of birth-->
271                         <ArrAddress City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/>
272                         <!-City - city-->
273                         <!--State - state or region of entry-->
274                         <!--StreetAddress - address: street, house number, apartment number, etc.-->
275                         <!-PostalCode - postal code-->
276                         <!-CountryCode - country code-->
277                         <PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/>
278                         <!--If row number and seat number are specified, the SmokingAllowed and Location parameters are ignored-->
279                         <!--SmokingAllowed - boolean value, true - smoking seat, false - non-smoking seat-->
280                         <!--Location - location in row, possible values:
281                                                         W - near the window (Window)
282                                                         M - somewhere in the middle of the row (Middle)
283                                                         NPW - near the aisle (NearPassengerWay)
284                                                         NS - no preference (NotSpecified)-->
285                         <!--RowNumber - row number-->
286                         <!-PlaceNumber - seat number-->
287                         <!--SegNumber - segment number-->
288                         <DocStringFormats>
289                            <!--Zero or more repetitions:-->
290                            <DocStringFormat>?</DocStringFormat>
291                            <!--DocStringFormat - Passport string format, possible values:
292                            DOCS - DOCS format string, FOID - FOID format string-->
293                         </DocStringFormats>
294                      </Traveller>
295                   </Travellers>
296                   <AutoCancelDate> </AutoCancelDate>
297                   <!--AutoCancelDate - date and time of autocancellation time limit in format YYYYY-MM-DDHH:MM:SS determined by agency settings-->
298                   <TimeLimits>
299                     <TicketingTimeLimit>?</TicketingTimeLimit>
300                     <!--TicketingTimeLimit - TicketingTimeLimit in the format YYYY-MM-DDTHH:MM:SS-->
301                     <PriceTimeLimit>?</PriceTimeLimit>
302                     <!--PriceTimeLimit - Price time limit from GDS in format YYYYY-MM-DDTHH:MM:SS-->
303                     <AdvancedPurchaseTimeLimit>?</AdvancedPurchaseTimeLimit>
304                     <!--AdvancedPurchaseTimeLimit - The time limit of the price from the fare rules in the format YYYYY-MM-DDTHH:MM:SS-->
305                     <AgencyTimeLimit>?</AgencyTimeLimit>
306                     <!-AgencyTimeLimit - The time limit of the settings in the format YYYYY-MM-DDTCH:MM:SS-->
307                   </TimeLimits>
308                </Ticketing>
309                <Requisites/>
310                <RequestType xsi:nil="true"/>
311                <UserID xsi:nil="true"/>
312                <Error Code="?">Error message</Error>
313             </Response>
314          </ResponseBin>
315       </ns1:TicketingResponse>
316    </SOAP-ENV:Body>
317 </SOAP-ENV:Envelope>

General format of the request / response of the voiding

This request is launched after the ticket is issued, if it is necessary to cancel it.

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

Request

 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                   <BookID>?</BookID>
 9                   <!--BookID — booking ID in the Websky system, integer-->
10                </VoidTicket>
11             </Request>
12             <Source>
13                <ClientId>?</ClientId>
14                <!--ClientId - client ID in the Websky system. You can view/add it in
15                "System Settings" → "Integration" → "Nemo 1.0 (SOAP API)".
16                <APIKey>?</APIKey>
17                <! --APIKey - the secret access key to API Websky. You can see / add it in the section
18                "System Settings → Integration → Nemo 1.0 (SOAP API).-->
19                <Language>?</Language>
20                <!--Language - for example: RU-->
21                <Currency>?</Currency>
22                <!-- Currency - for example: RUB, EUR-->
23             </Source>
24          </RequestBin>
25       </ver:VoidTicket>
26    </soapenv:Body>
27 </soapenv:Envelope>

Response

 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                <VoidTicket BookID="?">
 7                <!--BookID — booking ID in the Websky system, integer-->
 8                   <Result Success="?"/>
 9                   <!--Success — the result of canceling the ticketing, true or false-->
10                </VoidTicket>
11                <Requisites/>
12                <RequestType xsi:nil="true"/>
13                <UserID xsi:nil="true"/>
14                <Error Code="?">Error message</Error>
15             </Response>
16          </ResponseBin>
17       </ns1:VoidTicketResponse>
18    </SOAP-ENV:Body>
19 </SOAP-ENV:Envelope>

See also