Wiki source code of 4. CalcCheckout

Version 10.4 by Giorgi Mdivnishvili on 2024/04/11 16:58

Show last authors
1 {{box cssClass="floatinginfobox" title="**Contents**"}}
2
3
4 {{toc/}}
5 {{/box}}
6
7 = Method Description =
8
9
10 Once the desired tour variation has been selected, the next step involves calculating the package price in greater detail, typically just before proceeding with the reservation. To accomplish this, the CalcCheckout method must be utilized. This stage marks the pre-booking phase of the process.
11
12
13 == Endpoint URL - [POST] ==
14
15 {{info}}
16 [[https:~~/~~/integration.kazunion.com/api/Checkout/CalcCheckout>>https://integration.kazunion.com/api/Checkout/CalcCheckout]]
17 {{/info}}
18
19
20 == Request Parameters ==
21
22 (% class="box infomessage" %)
23 (((
24 None
25 )))
26
27
28 == Request Body ==
29
30 {{code language="Json"}}
31 {
32 "reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
33 "calcTourPackageRequests": [
34 {
35 "packageId": "string",
36 "extraServicePriceCodes": [
37 "string"
38 ],
39 "flightPassengers": [
40 {
41 "id": "string",
42 "selectedForwardBaggageCode": "string",
43 "selectedBackwardBaggageCode": "string"
44 }
45 ],
46 "includeInsurance": true,
47 "refreshPrices": true
48 }
49 ],
50 "calcOnlyHotelPackageRequests": [
51 {
52 "packageId": "string",
53 "extraServicePriceCodes": [
54 "string"
55 ],
56 "includeInsurance": true,
57 "refreshPrices": true
58 }
59 ],
60 "calcOnlyAviaPackageRequests": [
61 {
62 "packageId": "string",
63 "refreshPrices": true,
64 "flightPassengers": [
65 {
66 "id": "string",
67 "selectedForwardBaggageCode": "string",
68 "selectedBackwardBaggageCode": "string"
69 }
70 ]
71 }
72 ],
73 "hotels": [
74 {
75 "hotelPriceId": "string",
76 "agentConfirmationNumber": "string",
77 "note": "string",
78 "touristIds": [
79 "3fa85f64-5717-4562-b3fc-2c963f66afa6"
80 ]
81 }
82 ],
83 "tourists": [
84 {
85 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
86 "firstName": "string",
87 "lastName": "string",
88 "birthDate": "2024-04-11T03:34:15.828Z",
89 "passportNumber": "string",
90 "passportExpiry": "2024-04-11T03:34:15.828Z",
91 "passportIssue": "2024-04-11T03:34:15.828Z",
92 "citizenship": "string",
93 "tin": "string",
94 "isMale": true,
95 "flightIds": [
96 "string"
97 ],
98 "arrivalFlightInfo": {
99 "flightNumber": "string",
100 "terminalCode": "string",
101 "date": "2024-04-11T03:34:15.828Z",
102 "time": "string"
103 },
104 "departureFlightInfo": {
105 "flightNumber": "string",
106 "terminalCode": "string",
107 "date": "2024-04-11T03:34:15.828Z",
108 "time": "string"
109 },
110 "selectedVisaId": "string",
111 "transfers": [
112 {
113 "id": "string",
114 "selectedTransferPriceId": "string"
115 }
116 ]
117 }
118 ],
119 "note": "string",
120 "contactPhone": "string"
121 }
122
123 {{/code}}
124
125 (% class="wikigeneratedid" id="HRequestBodyexample" %)
126 (% id="cke_bm_10575S" style="display:none" %)
127
128
129
130 == Request Body example ==
131
132 {{code language="Json"}}
133 {
134 "calcTourPackageRequests": [
135 {
136 "refreshPrices": true,
137 "packageId": "tour:7caef71d-25e3-4882-b0db-81e766af2b72:fa7a89d5-1c20-4004-b3d2-f8d08163827f:53552191-59ea-469d-ae9d-5b848da8839d",
138 "flightPassengers": [
139 {
140 "id": "53552191-59ea-469d-ae9d-5b848da8839d-A1",
141 "selectedForwardBaggageCode": "INCLUDED",
142 "selectedBackwardBaggageCode": "INCLUDED"
143 },
144 {
145 "id": "53552191-59ea-469d-ae9d-5b848da8839d-A2",
146 "selectedForwardBaggageCode": "INCLUDED",
147 "selectedBackwardBaggageCode": "INCLUDED"
148 }
149 ],
150 "extraServicePriceCodes": [],
151 "includeInsurance": true
152 }
153 ],
154 "calcOnlyHotelPackageRequests": [],
155 "calcOnlyAviaPackageRequests": []
156 }
157 {{/code}}
158
159
160 == Response ==
161
162 {{code language="json"}}
163 {
164 "error": true,
165 "errorCode": "string",
166 "errorDescription": "string",
167 "userErrorDescription": "string",
168 "priceCurrency": "string",
169 "totalPrice": 0,
170 "agentCommissionPercent": 0,
171 "agentCommissionAmount": 0,
172 "requiredCitizenIdentifiers": [
173 {
174 "countryCode": "string",
175 "identifierType": "TIN"
176 }
177 ],
178 "hotels": [
179 {
180 "hotelPriceId": "string",
181 "touristIds": [
182 "3fa85f64-5717-4562-b3fc-2c963f66afa6"
183 ],
184 "errorCode": "string",
185 "errorMessage": "string",
186 "description": "string"
187 }
188 ],
189 "tourists": [
190 {
191 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
192 "age": 0,
193 "isAdult": true,
194 "flightIds": [
195 "string"
196 ],
197 "flights": [
198 {
199 "flightId": "string",
200 "note": "string"
201 }
202 ],
203 "arrivalFlightInfo": {
204 "flightNumber": "string",
205 "terminalCode": "string",
206 "date": "2024-04-11T05:03:16.796Z",
207 "time": "string"
208 },
209 "departureFlightInfo": {
210 "flightNumber": "string",
211 "terminalCode": "string",
212 "date": "2024-04-11T05:03:16.796Z",
213 "time": "string"
214 },
215 "insurancePrice": {
216 "insuranceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
217 "insuranceServiceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
218 "insurancePriceId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
219 "touristId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
220 "insuranceName": "string",
221 "insuranceDescription": "string",
222 "contragentName": "string",
223 "contragentFullName": "string",
224 "actualStartDate": "2024-04-11T05:03:16.796Z",
225 "actualEndDate": "2024-04-11T05:03:16.796Z",
226 "costCurrencyCode": "string",
227 "costAmount": 0,
228 "priceCurrencyCode": "string",
229 "priceAmount": 0,
230 "coverageCurrencyCode": "string",
231 "coverageAmount": 0
232 },
233 "selectedVisaId": "string",
234 "transfers": [
235 {
236 "id": "string",
237 "type": "Arrival",
238 "flightId": "string",
239 "flightInfo": {
240 "flightNumber": "string",
241 "terminalCode": "string",
242 "date": "2024-04-11T05:03:16.796Z",
243 "time": "string"
244 },
245 "checkInHotelId": "string",
246 "checkOutHotelId": "string",
247 "selectedTransferPriceId": "string",
248 "transferPrices": [
249 {
250 "id": "string",
251 "name": "string",
252 "adultPlaces": 0,
253 "childPlaces": 0,
254 "perPersonPrice": true,
255 "adultPrice": 0,
256 "childPrice": 0
257 }
258 ]
259 }
260 ],
261 "errorCode": "string",
262 "errorMessage": "string",
263 "description": "string"
264 }
265 ],
266 "visas": [
267 {
268 "prid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
269 "prName": "string",
270 "prValue": 0,
271 "sortingOrder": 0
272 }
273 ],
274 "terminals": [
275 {
276 "terminalCode": "string",
277 "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
278 "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
279 "terminalName": "string",
280 "countryCode": "string",
281 "note": "string"
282 }
283 ],
284 "containsError": true,
285 "refreshPriceResult": "Success",
286 "reservationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
287 "reservationDetailsUnavailable": true
288 }
289 {{/code}}
290
291
292 === Response example ===
293
294 {{code language="Json"}}
295 {
296 "package": {
297 "id": "tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:0c299240-6fc6-4f79-ba99-3548f2de3f57",
298 "priceCurrency": "USD",
299 "totalPrice": 937.16,
300 "agentCommissionPercent": 0.00,
301 "agentCommissionAmount": 0.00,
302 "includedExtrasAmount": 0,
303 "priceDifference": 0,
304 "hotel": {
305 "hotelPriceId": "193990fa-41a5-46e6-9805-50f82c3c377f",
306 "providerId": 13,
307 "hotelName": "Mercure Dubai Barsha Heights Suites Apartments",
308 "hotelCode": "5f125310-7025-4807-a4c6-49cd284c9c14",
309 "nigths": 2,
310 "mealPlan": "BB",
311 "hotelClass": "4",
312 "availabilityType": "StopSale",
313 "availableRoomsCount": 0,
314 "fewRooms": true,
315 "roomCategoryCode": "f8e1ffe5-25cc-46a4-80e8-586d1c049de4",
316 "roomCategoryName": "1 B/R Apartment City View",
317 "placementTypeName": "SNGL + CHILD(2-5.99)sharing",
318 "checkInDate": "2024-02-15T20:00:00.000Z",
319 "checkOutDate": "2024-02-17T20:00:00.000Z",
320 "adults": 1,
321 "children": 1,
322 "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e",
323 "districtName": "Al Barsha",
324 "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2",
325 "cityName": "Dubai",
326 "countryCode": "AE",
327 "countryName": "United Arab Emirates",
328 "hasAlcohol": false,
329 "hasFreeWifi": true,
330 "hasMetro": true,
331 "hasPool": true,
332 "hasMall": false,
333 "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %",
334 "cancellationPolicy": {
335 "noShowChargeValue": 100.00,
336 "noShowChargeValueType": "%",
337 "earlyDepartureChargeValue": 100.00,
338 "earlyDepartureChargeValueType": "%",
339 "conditions": [
340 {
341 "timeunits": 5,
342 "timeunitType": "Day",
343 "timeOffsetTypeName": "Before Arrival",
344 "chargeValue": 100.00,
345 "chargeValueType": "%"
346 }
347 ]
348 }
349 },
350 "flight": {
351 "id": "0c299240-6fc6-4f79-ba99-3548f2de3f57",
352 "departureDate": "2024-02-15T20:00:00.000Z",
353 "returnDate": "2024-02-17T20:00:00.000Z",
354 "departureTicketsLeft": 7,
355 "returnTicketsLeft": 7,
356 "departureAvailabilityType": "FewPlaces",
357 "returnAvailabilityType": "FewPlaces",
358 "isTwoWay": true,
359 "sameBaggageForAll": false,
360 "totalBaggage": true,
361 "departureSegments": [
362 {
363 "airlineCode": "KC",
364 "airlineName": "Air Astana-",
365 "flightCode": "KC899",
366 "class": "econom",
367 "lugageWeight": 20,
368 "handLugageWeight": 6,
369 "departureFlightDate": "2024-02-15T20:00:00.000Z",
370 "departureCountryName": "Kazakhstan",
371 "departureCityName": "Almaty",
372 "departureAirportCode": "ALA",
373 "departureAirportName": "Almaty Intl Airport",
374 "departureTerminalCode": "ALA",
375 "arrivalFlightDate": "2024-02-15T20:00:00.000Z",
376 "arrivalCountryName": "United Arab Emirates",
377 "arrivalCityName": "Dubai",
378 "arrivalAirportCode": "DXB",
379 "arrivalAirportName": "Dubai Intl Airport",
380 "arrivalTerminalCode": "DXB1",
381 "flightDuration": "0h 50m"
382 }
383 ],
384 "returnSegments": [
385 {
386 "airlineCode": "KC",
387 "airlineName": "Air Astana-",
388 "flightCode": "KC900",
389 "class": "econom",
390 "lugageWeight": 20,
391 "handLugageWeight": 6,
392 "departureFlightDate": "2024-02-17T20:00:00.000Z",
393 "departureCountryName": "United Arab Emirates",
394 "departureCityName": "Dubai",
395 "departureAirportCode": "DXB",
396 "departureAirportName": "Dubai Intl Airport",
397 "departureTerminalCode": "DXB1",
398 "arrivalFlightDate": "2024-02-17T20:00:00.000Z",
399 "arrivalCountryName": "Kazakhstan",
400 "arrivalCityName": "Almaty",
401 "arrivalAirportCode": "ALA",
402 "arrivalAirportName": "Almaty Intl Airport",
403 "arrivalTerminalCode": "ALA",
404 "flightDuration": "8h 15m"
405 }
406 ],
407 "passengers": [
408 {
409 "id": "42779531011000004-A1",
410 "isAdult": true,
411 "forwardBaggages": [
412 {
413 "baggageCode": "TOTAL_BAGGAGE",
414 "description": "1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS",
415 "price": 45.00,
416 "currency": "USD",
417 "included": false
418 }
419 ],
420 "backwardBaggages": [
421 {
422 "baggageCode": "INCLUDED_IN_FORWARD",
423 "price": 0,
424 "included": false
425 }
426 ]
427 },
428 {
429 "id": "42779531011000004-C1",
430 "isAdult": false,
431 "forwardBaggages": [
432 {
433 "baggageCode": "TOTAL_BAGGAGE",
434 "description": "1 piece included, UP TO 50 POUNDS/23 KILOGRAMS, OVER 62 LINEAR INCHES/158 LINEAR CENTIMETERS",
435 "price": 45.00,
436 "currency": "USD",
437 "included": false
438 }
439 ],
440 "backwardBaggages": [
441 {
442 "baggageCode": "INCLUDED_IN_FORWARD",
443 "price": 0,
444 "included": false
445 }
446 ]
447 }
448 ]
449 },
450 "extraServices": [],
451 "insurancePrice": {
452 "name": "Medical INS (N10000)",
453 "price": 13.44,
454 "priceSurcarge": 0.00,
455 "actualStartDate": "2024-02-15T20:00:00.000Z",
456 "actualEndDate": "2024-02-17T20:00:00.000Z",
457 "optional": false,
458 "includedInPackagePrice": true
459 }
460 },
461 "altPackages": [
462 {
463 "id": "tour:1d0fa533-4261-4254-93bb-83599d581ffc:193990fa-41a5-46e6-9805-50f82c3c377f:63d79c94-1e19-443f-8a17-50e59e633ea8",
464 "priceCurrency": "USD",
465 "totalPrice": 968.40,
466 "agentCommissionPercent": 0.00,
467 "agentCommissionAmount": 0.00,
468 "includedExtrasAmount": 0,
469 "priceDifference": 31.24,
470 "hotel": {
471 "hotelPriceId": "193990fa-41a5-46e6-9805-50f82c3c377f",
472 "providerId": 13,
473 "hotelName": "Mercure Dubai Barsha Heights Suites Apartments",
474 "hotelCode": "5f125310-7025-4807-a4c6-49cd284c9c14",
475 "nigths": 2,
476 "mealPlan": "BB",
477 "hotelClass": "4",
478 "availabilityType": "StopSale",
479 "availableRoomsCount": 0,
480 "fewRooms": true,
481 "roomCategoryCode": "f8e1ffe5-25cc-46a4-80e8-586d1c049de4",
482 "roomCategoryName": "1 B/R Apartment City View",
483 "placementTypeName": "SNGL + CHILD(2-5.99)sharing",
484 "checkInDate": "2024-02-15T20:00:00.000Z",
485 "checkOutDate": "2024-02-17T20:00:00.000Z",
486 "adults": 1,
487 "children": 1,
488 "districtUID": "4c65f6ed-902b-4fd8-9419-af7884c22c5e",
489 "districtName": "Al Barsha",
490 "cityUID": "f5185fa3-3f56-44ed-bf6b-80386a33caa2",
491 "cityName": "Dubai",
492 "countryCode": "AE",
493 "countryName": "United Arab Emirates",
494 "hasAlcohol": false,
495 "hasFreeWifi": true,
496 "hasMetro": true,
497 "hasPool": true,
498 "hasMall": false,
499 "cancellationPolicyDescription": "Cancellation Policy: 5 Day Before Arrival: 100.00 %, Early Departure: 100.00 %, NoShow: 100.00 %",
500 "cancellationPolicy": {
501 "noShowChargeValue": 100.00,
502 "noShowChargeValueType": "%",
503 "earlyDepartureChargeValue": 100.00,
504 "earlyDepartureChargeValueType": "%",
505 "conditions": [
506 {
507 "timeunits": 5,
508 "timeunitType": "Day",
509 "timeOffsetTypeName": "Before Arrival",
510 "chargeValue": 100.00,
511 "chargeValueType": "%"
512 }
513 ]
514 }
515 },
516 "flight": {
517 "id": "63d79c94-1e19-443f-8a17-50e59e633ea8",
518 "departureDate": "2024-02-15T20:00:00.000Z",
519 "returnDate": "2024-02-17T20:00:00.000Z",
520 "departureTicketsLeft": 50,
521 "returnTicketsLeft": 50,
522 "departureAvailabilityType": "FewPlaces",
523 "returnAvailabilityType": "FewPlaces",
524 "isTwoWay": true,
525 "sameBaggageForAll": false,
526 "totalBaggage": false,
527 "departureSegments": [
528 {
529 "airlineCode": "FZ",
530 "airlineName": "Fly Dubai.",
531 "flightCode": "FZ1722",
532 "class": "econom",
533 "lugageWeight": 20,
534 "handLugageWeight": 6,
535 "departureFlightDate": "2024-02-15T20:00:00.000Z",
536 "departureCountryName": "Kazakhstan",
537 "departureCityName": "Almaty",
538 "departureAirportCode": "ALA",
539 "departureAirportName": "Almaty Intl Airport",
540 "departureTerminalCode": "ALA",
541 "arrivalFlightDate": "2024-02-15T20:00:00.000Z",
542 "arrivalCountryName": "United Arab Emirates",
543 "arrivalCityName": "Dubai",
544 "arrivalAirportCode": "DXB",
545 "arrivalAirportName": "Dubai Intl Airport",
546 "arrivalTerminalCode": "DXB3",
547 "flightDuration": "0h 55m"
548 }
549 ],
550 "returnSegments": [
551 {
552 "airlineCode": "FZ",
553 "airlineName": "Fly Dubai.",
554 "flightCode": "FZ1721",
555 "class": "econom",
556 "lugageWeight": 20,
557 "handLugageWeight": 6,
558 "departureFlightDate": "2024-02-17T20:00:00.000Z",
559 "departureCountryName": "United Arab Emirates",
560 "departureCityName": "Dubai",
561 "departureAirportCode": "DXB",
562 "departureAirportName": "Dubai Intl Airport",
563 "departureTerminalCode": "DXB3",
564 "arrivalFlightDate": "2024-02-18T20:00:00.000Z",
565 "arrivalCountryName": "Kazakhstan",
566 "arrivalCityName": "Almaty",
567 "arrivalAirportCode": "ALA",
568 "arrivalAirportName": "Almaty Intl Airport",
569 "arrivalTerminalCode": "DXB3",
570 "flightDuration": "8h 10m"
571 }
572 ],
573 "passengers": [
574 {
575 "id": "42779547001000004-A1",
576 "isAdult": true,
577 "selectedForwardBaggageCode": "INCLUDED",
578 "selectedBackwardBaggageCode": "INCLUDED",
579 "forwardBaggages": [
580 {
581 "baggageCode": "INCLUDED",
582 "description": "20 KG INCLUDED",
583 "price": 0.0,
584 "currency": "USD",
585 "included": true
586 }
587 ],
588 "backwardBaggages": [
589 {
590 "baggageCode": "INCLUDED",
591 "description": "20 KG INCLUDED",
592 "price": 0.0,
593 "currency": "USD",
594 "included": true
595 }
596 ]
597 },
598 {
599 "id": "42779547001000004-C1",
600 "isAdult": false,
601 "selectedForwardBaggageCode": "INCLUDED",
602 "selectedBackwardBaggageCode": "INCLUDED",
603 "forwardBaggages": [
604 {
605 "baggageCode": "INCLUDED",
606 "description": "20 KG INCLUDED",
607 "price": 0.0,
608 "currency": "USD",
609 "included": true
610 }
611 ],
612 "backwardBaggages": [
613 {
614 "baggageCode": "INCLUDED",
615 "description": "20 KG INCLUDED",
616 "price": 0.0,
617 "currency": "USD",
618 "included": true
619 }
620 ]
621 }
622 ]
623 },
624 "extraServices": [],
625 "insurancePrice": {
626 "name": "Medical INS (N10000)",
627 "price": 13.44,
628 "priceSurcarge": 0.00,
629 "actualStartDate": "2024-02-15T20:00:00.000Z",
630 "actualEndDate": "2024-02-17T20:00:00.000Z",
631 "optional": false,
632 "includedInPackagePrice": true
633 }
634 },
635 {
636 {{/code}}
637
638
639 === Schema ===
640
641
642
643 {{success}}
644 CheckoutFormIn{
645
646 |reservationId|string($uuid)
647 nullable: true
648 |calcTourPackageRequests|[
649 nullable: trueCalcTourPackageRequest{(((
650 |packageId|string
651 nullable: true
652 |extraServicePriceCodes|[
653 nullable: truestring]
654 |flightPassengers|[
655 nullable: trueFlightPassengerIn{(((
656 |id|string
657 nullable: true
658 |selectedForwardBaggageCode|string
659 nullable: true
660 |selectedBackwardBaggageCode|string
661 nullable: true
662
663 }]
664 )))
665 |includeInsurance|boolean
666 nullable: true
667 |refreshPrices|boolean
668
669 }]
670 )))
671 |calcOnlyHotelPackageRequests|[
672 nullable: trueCalcOnlyHotelPackageRequest{(((
673 |packageId|string
674 nullable: true
675 |extraServicePriceCodes|[
676 nullable: truestring]
677 |includeInsurance|boolean
678 |refreshPrices|boolean
679
680 }]
681 )))
682 |calcOnlyAviaPackageRequests|[
683 nullable: trueCalcOnlyAviaPackageRequest{(((
684 |packageId|string
685 nullable: true
686 |refreshPrices|boolean
687 |flightPassengers|[
688 nullable: trueFlightPassengerIn{(((
689 |id|string
690 nullable: true
691 |selectedForwardBaggageCode|string
692 nullable: true
693 |selectedBackwardBaggageCode|string
694 nullable: true
695
696 }]
697 )))
698
699 }]
700 )))
701 |hotels|[
702 nullable: trueCheckoutHotelIn{(((
703 |hotelPriceId|string
704 nullable: true
705 |agentConfirmationNumber|string
706 nullable: true
707 |note|string
708 nullable: true
709 |touristIds|[
710 nullable: truestring($uuid)]
711
712 }]
713 )))
714 |tourists|[
715 nullable: trueCheckoutTouristIn{(((
716 |id|string($uuid)
717 |firstName|string
718 nullable: true
719 |lastName|string
720 nullable: true
721 |birthDate|string($date-time)
722 nullable: true
723 |passportNumber|string
724 nullable: true
725 |passportExpiry|string($date-time)
726 nullable: true
727 |passportIssue|string($date-time)
728 nullable: true
729 |citizenship|string
730 nullable: true
731 |tin|string
732 nullable: true
733 |isMale|boolean
734 nullable: true
735 |flightIds|[
736 nullable: truestring]
737 |arrivalFlightInfo|ManualFlightInfo{(((
738 |flightNumber|string
739 nullable: true
740 |terminalCode|string
741 nullable: true
742 |date|string($date-time)
743 nullable: true
744 |time|string
745 nullable: true
746
747 }
748 )))
749 |departureFlightInfo|ManualFlightInfo{(((
750 |flightNumber|string
751 nullable: true
752 |terminalCode|string
753 nullable: true
754 |date|string($date-time)
755 nullable: true
756 |time|string
757 nullable: true
758
759 }
760 )))
761 |selectedVisaId|string
762 nullable: true
763 |transfers|[
764 nullable: trueCheckoutTransferIn{(((
765 |id|string
766 nullable: true
767 |selectedTransferPriceId|string
768 nullable: true
769
770 }]
771 )))
772
773 }]
774 )))
775 |note|string
776 nullable: true
777 |contactPhone|string
778 nullable: true
779
780 }
781 {{/success}}
782
783
784
785 {{success}}
786 CheckoutFormOut{
787
788 |error|boolean
789 |errorCode|string
790 nullable: true
791 |errorDescription|string
792 nullable: true
793 |userErrorDescription|string
794 nullable: true
795 |priceCurrency|string
796 nullable: true
797 |totalPrice|number($double)
798 |agentCommissionPercent|number($double)
799 |agentCommissionAmount|number($double)
800 |requiredCitizenIdentifiers|[
801 nullable: trueCitizenIdentifier{(((
802 |countryCode|string
803 nullable: true
804 |identifierType|IdentifierTypeEnumstringEnum:
805 [ TIN, FIN ]
806
807 }]
808 )))
809 |hotels|[
810 nullable: trueCheckoutHotelOut{(((
811 |hotelPriceId|string
812 nullable: true
813 |touristIds|[
814 nullable: truestring($uuid)]
815 |errorCode|string
816 nullable: true
817 |errorMessage|string
818 nullable: true
819 |description|string
820 nullable: true
821
822 }]
823 )))
824 |tourists|[
825 nullable: trueCheckoutTouristOut{...}]
826 |visas|[
827 nullable: trueServicePrice{(((
828 |prid|string($uuid)
829 |prName|string
830 nullable: true
831 |prValue|number($double)
832 |sortingOrder|integer($int32)
833
834 }]
835 )))
836 |terminals|[
837 nullable: trueTerminal{(((
838 |terminalCode|string
839 nullable: true
840 |cityUID|string($uuid)
841 nullable: true
842 |districtUID|string($uuid)
843 nullable: true
844 |terminalName|string
845 nullable: true
846 |countryCode|string
847 nullable: true
848 |note|string
849 nullable: true
850
851 }]
852 )))
853 |containsError|boolean
854 |refreshPriceResult|RefreshPriceResultEnumstringEnum:
855 [ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ]
856 |reservationId|string($uuid)
857 |reservationDetailsUnavailable|boolean
858
859 }
860 {{/success}}
861
862
863 == Descriptions ==
864
865
866 === Request ===
867
868 Here's a table describing each parameter of the JSON request:
869
870 (% class="table-bordered" %)
871 |=Parameter|=Data Type|=Description
872 |calcTourPackageRequests|Array|An array of objects, each representing a tour package request.
873 |refreshPrices|Boolean|If true, the prices for the tour package will be refreshed.
874 |packageId|String|A unique identifier for the tour package.
875 |flightPassengers|Array|An array of objects, each representing a flight passenger.
876 |id|String|A unique identifier for each flight passenger.
877 |selectedForwardBaggageCode|String|The selected baggage option for the forward journey. there is two optoions ""
878 |selectedBackwardBaggageCode|String|The selected baggage option for the backward journey.
879 |extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected.
880 |includeInsurance|Boolean|If true, insurance will be included in the tour package.
881 |calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested.
882 |calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested.
883
884 === Response ===
885
886 (% class="table-bordered" %)
887 |=Parameter|=Data Type|=Description
888 |priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response.
889 |totalPrice|Number|The total price of the booking.
890 |agentCommissionPercent|Number|The commission percentage for the agent.
891 |agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency.
892 |requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code.
893 |requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN"). **TIN (Taxpayer Identification Number) & FIN (Financial Identification Number)**
894 |hotels[*].hotelPriceId|String|Unique identifier for the hotel price.
895 |hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel.
896 |hotels[*].description|String|A brief description of the hotel.
897 |tourists[*].id|String|Unique identifier for the tourist.
898 |tourists[*].isAdult|Boolean|Indicates if the tourist is an adult.
899 |tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist.
900 |tourists[*].flights[*].flightId|String|Unique identifier for the flight.
901 |tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance.
902 |tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product.
903 |tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider.
904 |...|...|Additional fields for insurancePrice as detailed previously.
905 |tourists[*].transfers[*].id|String|Unique identifier for the transfer service.
906 |tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure").
907 |tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer.
908 |tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type).
909 |tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type).
910 |tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer.
911 |tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option.
912 |tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN").
913 |...|...|Additional fields for transferPrices as detailed previously.
914 |visas[*].prid|String|Unique identifier for the visa option.
915 |visas[*].prName|String|The name of the visa option.
916 |visas[*].prValue|Number|The cost associated with this visa option.
917 |visas[*].sortingOrder|Number|Used to sort visa options in the response or UI.
918 |terminals[*].terminalCode|String|The code representing the terminal.
919 |terminals[*].cityUID|String|Unique identifier for the city where the terminal is located.
920 |...|...|Additional fields for terminals as detailed previously.
921 |containsError|Boolean|Indicates if the response contains any errors.
922 |refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success").
923 |reservationId|String|Unique identifier for the reservation.
924 |reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable.
925 |error|Boolean|A generic error indicator, presumably redundant with containsError.
926
927