Changes for page 4. CalcCheckout
Last modified by Giorgi Mdivnishvili on 2024/04/11 16:59
From version 4.1
edited by Giorgi Mdivnishvili
on 2024/04/11 06:28
on 2024/04/11 06:28
Change comment:
There is no comment for this version
To version 10.5
edited by Giorgi Mdivnishvili
on 2024/04/11 16:58
on 2024/04/11 16:58
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -6,9 +6,10 @@ 6 6 7 7 = Method Description = 8 8 9 -This method is used to calculate full package with hotels and flights, to recheck prices, availability, prices and cancelation policy before book. 10 10 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 11 12 + 12 12 == Endpoint URL - [POST] == 13 13 14 14 {{info}} ... ... @@ -28,20 +28,97 @@ 28 28 29 29 {{code language="Json"}} 30 30 { 31 - "packageId": "string", 32 - "extraServicePriceCodes": [ 33 - "string" 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 + } 34 34 ], 35 - " flightPassengers": [50 + "calcOnlyHotelPackageRequests": [ 36 36 { 37 - "id": "string", 38 - "selectedForwardBaggageCode": "string", 39 - "selectedBackwardBaggageCode": "string" 52 + "packageId": "string", 53 + "extraServicePriceCodes": [ 54 + "string" 55 + ], 56 + "includeInsurance": true, 57 + "refreshPrices": true 40 40 } 41 41 ], 42 - "includeInsurance": true, 43 - "refreshPrices": true 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" 44 44 } 122 + 45 45 {{/code}} 46 46 47 47 (% class="wikigeneratedid" id="HRequestBodyexample" %) ... ... @@ -87,353 +87,126 @@ 87 87 "errorCode": "string", 88 88 "errorDescription": "string", 89 89 "userErrorDescription": "string", 90 - "package": { 91 - "cacheKey": "string", 92 - "id": "string", 93 - "priceCurrency": "string", 94 - "totalPrice": 0, 95 - "agentCommissionPercent": 0, 96 - "agentCommissionAmount": 0, 97 - "includedExtrasAmount": 0, 98 - "priceDifference": 0, 99 - "hotel": { 100 - "hotelPriceId": "string", 101 - "providerId": 0, 102 - "hotelName": "string", 103 - "hotelCode": "string", 104 - "nigths": 0, 105 - "mealPlan": "string", 106 - "hotelClass": "string", 107 - "availabilityType": "OnRequest", 108 - "availableRoomsCount": 0, 109 - "fewRooms": true, 110 - "roomCategoryCode": "string", 111 - "roomCategoryName": "string", 112 - "placementTypeName": "string", 113 - "placementDescription": "string", 114 - "checkInDate": "2023-12-26T12:55:59.433Z", 115 - "checkOutDate": "2023-12-26T12:55:59.433Z", 116 - "adults": 0, 117 - "children": 0, 118 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 119 - "districtName": "string", 120 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 121 - "cityName": "string", 168 + "priceCurrency": "string", 169 + "totalPrice": 0, 170 + "agentCommissionPercent": 0, 171 + "agentCommissionAmount": 0, 172 + "requiredCitizenIdentifiers": [ 173 + { 122 122 "countryCode": "string", 123 - "countryName": "string", 124 - "hasAlcohol": true, 125 - "hasFreeWifi": true, 126 - "hasMetro": true, 127 - "hasPool": true, 128 - "hasMall": true, 129 - "cancellationPolicyDescription": "string", 130 - "cancellationPolicy": { 131 - "cancellationPolicyCode": "string", 132 - "noShowChargeValue": 0, 133 - "noShowChargeValueType": "string", 134 - "earlyDepartureChargeValue": 0, 135 - "earlyDepartureChargeValueType": "string", 136 - "conditions": [ 137 - { 138 - "timeunits": 0, 139 - "timeunitType": "string", 140 - "timeOffsetTypeName": "string", 141 - "chargeValue": 0, 142 - "chargeValueType": "string" 143 - } 144 - ] 145 - } 146 - }, 147 - "flight": { 148 - "id": "string", 149 - "departureDate": "2023-12-26T12:55:59.433Z", 150 - "returnDate": "2023-12-26T12:55:59.433Z", 151 - "departureTicketsLeft": 0, 152 - "returnTicketsLeft": 0, 153 - "departureAvailabilityType": "OnRequest", 154 - "returnAvailabilityType": "OnRequest", 155 - "isTwoWay": true, 156 - "sameBaggageForAll": true, 157 - "totalBaggage": true, 158 - "departureSegments": [ 159 - { 160 - "airlineCode": "string", 161 - "airlineName": "string", 162 - "flightCode": "string", 163 - "class": "string", 164 - "lugageWeight": 0, 165 - "handLugageWeight": 0, 166 - "departureFlightDate": "2023-12-26T12:55:59.433Z", 167 - "departureCountryName": "string", 168 - "departureCityName": "string", 169 - "departureAirportCode": "string", 170 - "departureAirportName": "string", 171 - "departureTerminalCode": "string", 172 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z", 173 - "arrivalCountryName": "string", 174 - "arrivalCityName": "string", 175 - "arrivalAirportCode": "string", 176 - "arrivalAirportName": "string", 177 - "arrivalTerminalCode": "string", 178 - "flightDuration": "string" 179 - } 175 + "identifierType": "TIN" 176 + } 177 + ], 178 + "hotels": [ 179 + { 180 + "hotelPriceId": "string", 181 + "touristIds": [ 182 + "3fa85f64-5717-4562-b3fc-2c963f66afa6" 180 180 ], 181 - "returnSegments": [ 182 - { 183 - "airlineCode": "string", 184 - "airlineName": "string", 185 - "flightCode": "string", 186 - "class": "string", 187 - "lugageWeight": 0, 188 - "handLugageWeight": 0, 189 - "departureFlightDate": "2023-12-26T12:55:59.433Z", 190 - "departureCountryName": "string", 191 - "departureCityName": "string", 192 - "departureAirportCode": "string", 193 - "departureAirportName": "string", 194 - "departureTerminalCode": "string", 195 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z", 196 - "arrivalCountryName": "string", 197 - "arrivalCityName": "string", 198 - "arrivalAirportCode": "string", 199 - "arrivalAirportName": "string", 200 - "arrivalTerminalCode": "string", 201 - "flightDuration": "string" 202 - } 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" 203 203 ], 204 - " passengers": [197 + "flights": [ 205 205 { 206 - "id": "string", 207 - "isAdult": true, 208 - "selectedForwardBaggageCode": "string", 209 - "selectedBackwardBaggageCode": "string", 210 - "forwardBaggages": [ 211 - { 212 - "baggageCode": "string", 213 - "description": "string", 214 - "price": 0, 215 - "currency": "string", 216 - "included": true 217 - } 218 - ], 219 - "backwardBaggages": [ 220 - { 221 - "baggageCode": "string", 222 - "description": "string", 223 - "price": 0, 224 - "currency": "string", 225 - "included": true 226 - } 227 - ] 199 + "flightId": "string", 200 + "note": "string" 228 228 } 229 - ] 230 - }, 231 - "extraServices": [ 232 - { 233 - "extraServiceCode": "string", 234 - "extraServiceTypeCode": "string", 235 - "isMandatory": 0, 236 - "extraServiceName": "string", 237 - "minimalServiceAmount": 0, 238 - "includedPriceCode": "string", 239 - "prices": [ 240 - { 241 - "extraServicePriceCode": "string", 242 - "displayName": "string", 243 - "restrictionInfo": "string", 244 - "additionalInfo": "string", 245 - "price": 0, 246 - "extraPrice": 0, 247 - "currency": "string" 248 - } 249 - ] 250 - } 251 - ], 252 - "insurancePrice": { 253 - "name": "string", 254 - "price": 0, 255 - "priceSurcarge": 0, 256 - "actualStartDate": "2023-12-26T12:55:59.433Z", 257 - "actualEndDate": "2023-12-26T12:55:59.433Z", 258 - "optional": true, 259 - "includedInPackagePrice": true 260 - } 261 - }, 262 - "altPackages": [ 263 - { 264 - "cacheKey": "string", 265 - "id": "string", 266 - "priceCurrency": "string", 267 - "totalPrice": 0, 268 - "agentCommissionPercent": 0, 269 - "agentCommissionAmount": 0, 270 - "includedExtrasAmount": 0, 271 - "priceDifference": 0, 272 - "hotel": { 273 - "hotelPriceId": "string", 274 - "providerId": 0, 275 - "hotelName": "string", 276 - "hotelCode": "string", 277 - "nigths": 0, 278 - "mealPlan": "string", 279 - "hotelClass": "string", 280 - "availabilityType": "OnRequest", 281 - "availableRoomsCount": 0, 282 - "fewRooms": true, 283 - "roomCategoryCode": "string", 284 - "roomCategoryName": "string", 285 - "placementTypeName": "string", 286 - "placementDescription": "string", 287 - "checkInDate": "2023-12-26T12:55:59.433Z", 288 - "checkOutDate": "2023-12-26T12:55:59.433Z", 289 - "adults": 0, 290 - "children": 0, 291 - "districtUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 292 - "districtName": "string", 293 - "cityUID": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 294 - "cityName": "string", 295 - "countryCode": "string", 296 - "countryName": "string", 297 - "hasAlcohol": true, 298 - "hasFreeWifi": true, 299 - "hasMetro": true, 300 - "hasPool": true, 301 - "hasMall": true, 302 - "cancellationPolicyDescription": "string", 303 - "cancellationPolicy": { 304 - "cancellationPolicyCode": "string", 305 - "noShowChargeValue": 0, 306 - "noShowChargeValueType": "string", 307 - "earlyDepartureChargeValue": 0, 308 - "earlyDepartureChargeValueType": "string", 309 - "conditions": [ 310 - { 311 - "timeunits": 0, 312 - "timeunitType": "string", 313 - "timeOffsetTypeName": "string", 314 - "chargeValue": 0, 315 - "chargeValueType": "string" 316 - } 317 - ] 318 - } 202 + ], 203 + "arrivalFlightInfo": { 204 + "flightNumber": "string", 205 + "terminalCode": "string", 206 + "date": "2024-04-11T05:03:16.796Z", 207 + "time": "string" 319 319 }, 320 - "flight": { 321 - "id": "string", 322 - "departureDate": "2023-12-26T12:55:59.433Z", 323 - "returnDate": "2023-12-26T12:55:59.433Z", 324 - "departureTicketsLeft": 0, 325 - "returnTicketsLeft": 0, 326 - "departureAvailabilityType": "OnRequest", 327 - "returnAvailabilityType": "OnRequest", 328 - "isTwoWay": true, 329 - "sameBaggageForAll": true, 330 - "totalBaggage": true, 331 - "departureSegments": [ 332 - { 333 - "airlineCode": "string", 334 - "airlineName": "string", 335 - "flightCode": "string", 336 - "class": "string", 337 - "lugageWeight": 0, 338 - "handLugageWeight": 0, 339 - "departureFlightDate": "2023-12-26T12:55:59.433Z", 340 - "departureCountryName": "string", 341 - "departureCityName": "string", 342 - "departureAirportCode": "string", 343 - "departureAirportName": "string", 344 - "departureTerminalCode": "string", 345 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z", 346 - "arrivalCountryName": "string", 347 - "arrivalCityName": "string", 348 - "arrivalAirportCode": "string", 349 - "arrivalAirportName": "string", 350 - "arrivalTerminalCode": "string", 351 - "flightDuration": "string" 352 - } 353 - ], 354 - "returnSegments": [ 355 - { 356 - "airlineCode": "string", 357 - "airlineName": "string", 358 - "flightCode": "string", 359 - "class": "string", 360 - "lugageWeight": 0, 361 - "handLugageWeight": 0, 362 - "departureFlightDate": "2023-12-26T12:55:59.433Z", 363 - "departureCountryName": "string", 364 - "departureCityName": "string", 365 - "departureAirportCode": "string", 366 - "departureAirportName": "string", 367 - "departureTerminalCode": "string", 368 - "arrivalFlightDate": "2023-12-26T12:55:59.433Z", 369 - "arrivalCountryName": "string", 370 - "arrivalCityName": "string", 371 - "arrivalAirportCode": "string", 372 - "arrivalAirportName": "string", 373 - "arrivalTerminalCode": "string", 374 - "flightDuration": "string" 375 - } 376 - ], 377 - "passengers": [ 378 - { 379 - "id": "string", 380 - "isAdult": true, 381 - "selectedForwardBaggageCode": "string", 382 - "selectedBackwardBaggageCode": "string", 383 - "forwardBaggages": [ 384 - { 385 - "baggageCode": "string", 386 - "description": "string", 387 - "price": 0, 388 - "currency": "string", 389 - "included": true 390 - } 391 - ], 392 - "backwardBaggages": [ 393 - { 394 - "baggageCode": "string", 395 - "description": "string", 396 - "price": 0, 397 - "currency": "string", 398 - "included": true 399 - } 400 - ] 401 - } 402 - ] 209 + "departureFlightInfo": { 210 + "flightNumber": "string", 211 + "terminalCode": "string", 212 + "date": "2024-04-11T05:03:16.796Z", 213 + "time": "string" 403 403 }, 404 - "extraServices": [ 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": [ 405 405 { 406 - "extraServiceCode": "string", 407 - "extraServiceTypeCode": "string", 408 - "isMandatory": 0, 409 - "extraServiceName": "string", 410 - "minimalServiceAmount": 0, 411 - "includedPriceCode": "string", 412 - "prices": [ 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": [ 413 413 { 414 - " extraServicePriceCode": "string",415 - " displayName": "string",416 - " restrictionInfo":"string",417 - " additionalInfo":"string",418 - "price": 0,419 - " extraPrice": 0,420 - "c urrency":"string"250 + "id": "string", 251 + "name": "string", 252 + "adultPlaces": 0, 253 + "childPlaces": 0, 254 + "perPersonPrice": true, 255 + "adultPrice": 0, 256 + "childPrice": 0 421 421 } 422 422 ] 423 423 } 424 424 ], 425 - "insurancePrice": { 426 - "name": "string", 427 - "price": 0, 428 - "priceSurcarge": 0, 429 - "actualStartDate": "2023-12-26T12:55:59.433Z", 430 - "actualEndDate": "2023-12-26T12:55:59.433Z", 431 - "optional": true, 432 - "includedInPackagePrice": true 433 - } 261 + "errorCode": "string", 262 + "errorMessage": "string", 263 + "description": "string" 434 434 } 435 435 ], 436 - "refreshPriceResult": "Success" 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 437 437 } 438 438 {{/code}} 439 439 ... ... @@ -787,138 +787,290 @@ 787 787 788 788 === Schema === 789 789 641 + 642 + 790 790 {{success}} 791 -C alcOnlyHotelPackageResponse{644 +CheckoutFormIn{ 792 792 793 -|error|boolean 794 -|errorCode|string 646 +|reservationId|string($uuid) 795 795 nullable: true 796 -|errorDescription|string 648 +|calcTourPackageRequests|[ 649 +nullable: trueCalcTourPackageRequest{((( 650 +|packageId|string 797 797 nullable: true 798 -|userErrorDescription|string 799 -nullable: true 800 -|package|OnlyHotelPackage{((( 652 +|extraServicePriceCodes|[ 653 +nullable: truestring] 654 +|flightPassengers|[ 655 +nullable: trueFlightPassengerIn{((( 801 801 |id|string 802 802 nullable: true 803 -| priceCurrency|string658 +|selectedForwardBaggageCode|string 804 804 nullable: true 805 -|totalPrice|number($double) 806 -|agentCommissionPercent|number($double) 807 -|agentCommissionAmount|number($double) 808 -|hotel|PackageHotel{((( 809 -|hotelPriceId|string 660 +|selectedBackwardBaggageCode|string 810 810 nullable: true 811 -|providerId|integer($int32) 812 -|hotelName|string 662 + 663 +}] 664 +))) 665 +|includeInsurance|boolean 813 813 nullable: true 814 -|hotelCode|string 667 +|refreshPrices|boolean 668 + 669 +}] 670 +))) 671 +|calcOnlyHotelPackageRequests|[ 672 +nullable: trueCalcOnlyHotelPackageRequest{((( 673 +|packageId|string 815 815 nullable: true 816 -|nigths|integer($int32) 817 -|mealPlan|string 675 +|extraServicePriceCodes|[ 676 +nullable: truestring] 677 +|includeInsurance|boolean 678 +|refreshPrices|boolean 679 + 680 +}] 681 +))) 682 +|calcOnlyAviaPackageRequests|[ 683 +nullable: trueCalcOnlyAviaPackageRequest{((( 684 +|packageId|string 818 818 nullable: true 819 -|hotelClass|string 686 +|refreshPrices|boolean 687 +|flightPassengers|[ 688 +nullable: trueFlightPassengerIn{((( 689 +|id|string 820 820 nullable: true 821 -|availabilityType|RoomAvailabilityTypeEnumstringEnum: 822 -[ OnRequest, FreeSale, StopSale ] 823 -|availableRoomsCount|integer($int32) 824 -|fewRooms|boolean 825 -|roomCategoryCode|string 691 +|selectedForwardBaggageCode|string 826 826 nullable: true 827 -| roomCategoryName|string693 +|selectedBackwardBaggageCode|string 828 828 nullable: true 829 -|placementTypeName|string 695 + 696 +}] 697 +))) 698 + 699 +}] 700 +))) 701 +|hotels|[ 702 +nullable: trueCheckoutHotelIn{((( 703 +|hotelPriceId|string 830 830 nullable: true 831 -| placementDescription|string705 +|agentConfirmationNumber|string 832 832 nullable: true 833 -|checkInDate|string($date-time) 834 -|checkOutDate|string($date-time) 835 -|adults|integer($int32) 836 -|children|integer($int32) 837 -|districtUID|string($uuid) 707 +|note|string 838 838 nullable: true 839 -|districtName|string 709 +|touristIds|[ 710 +nullable: truestring($uuid)] 711 + 712 +}] 713 +))) 714 +|tourists|[ 715 +nullable: trueCheckoutTouristIn{((( 716 +|id|string($uuid) 717 +|firstName|string 840 840 nullable: true 841 -| cityUID|string($uuid)719 +|lastName|string 842 842 nullable: true 843 -| cityName|string721 +|birthDate|string($date-time) 844 844 nullable: true 845 -| countryCode|string723 +|passportNumber|string 846 846 nullable: true 847 -| countryName|string725 +|passportExpiry|string($date-time) 848 848 nullable: true 849 -|hasAlcohol|boolean 850 -|hasFreeWifi|boolean 851 -|hasMetro|boolean 852 -|hasPool|boolean 853 -|hasMall|boolean 854 -|cancellationPolicyDescription|string 727 +|passportIssue|string($date-time) 855 855 nullable: true 856 -|cancellationPolicy|CancellationPolicyExchange{((( 857 -|cancellationPolicyCode|string 729 +|citizenship|string 858 858 nullable: true 859 -|n oShowChargeValue|number($double)731 +|tin|string 860 860 nullable: true 861 -| noShowChargeValueType|string733 +|isMale|boolean 862 862 nullable: true 863 -|earlyDepartureChargeValue|number($double) 735 +|flightIds|[ 736 +nullable: truestring] 737 +|arrivalFlightInfo|ManualFlightInfo{((( 738 +|flightNumber|string 864 864 nullable: true 865 -| earlyDepartureChargeValueType|string740 +|terminalCode|string 866 866 nullable: true 867 -|conditions|[ 868 -nullable: trueCancellationPolicyConditionExchange{((( 869 -|timeunits|integer($int32) 870 -|timeunitType|string 742 +|date|string($date-time) 871 871 nullable: true 872 -|time OffsetTypeName|string744 +|time|string 873 873 nullable: true 874 -|chargeValue|number($double) 746 + 747 +} 748 +))) 749 +|departureFlightInfo|ManualFlightInfo{((( 750 +|flightNumber|string 875 875 nullable: true 876 -| chargeValueType|string752 +|terminalCode|string 877 877 nullable: true 754 +|date|string($date-time) 755 +nullable: true 756 +|time|string 757 +nullable: true 878 878 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 + 879 879 }] 880 880 ))) 881 881 882 -} 773 +}] 883 883 ))) 775 +|note|string 776 +nullable: true 777 +|contactPhone|string 778 +nullable: true 884 884 885 885 } 886 -))) 887 -|extraServices|[ 888 -nullable: trueHotelExtraServiceBase{((( 889 -|extraServiceCode|string 781 +{{/success}} 782 + 783 + 784 + 785 +{{success}} 786 +CheckoutFormOut{ 787 + 788 +|error|boolean 789 +|errorCode|string 890 890 nullable: true 891 -|e xtraServiceTypeCode|string791 +|errorDescription|string 892 892 nullable: true 893 -|isMandatory|integer($int32) 894 -|extraServiceName|string 793 +|userErrorDescription|string 895 895 nullable: true 896 -|minimalServiceAmount|number($double) 897 -|includedPriceCode|string 795 +|priceCurrency|string 898 898 nullable: true 899 -|prices|[ 900 -nullable: trueHotelExtraServicePriceBase{((( 901 -|extraServicePriceCode|string 797 +|totalPrice|number($double) 798 +|agentCommissionPercent|number($double) 799 +|agentCommissionAmount|number($double) 800 +|requiredCitizenIdentifiers|[ 801 +nullable: trueCitizenIdentifier{((( 802 +|countryCode|string 902 902 nullable: true 903 -|displayName|string 804 +|identifierType|IdentifierTypeEnumstringEnum: 805 +[ TIN, FIN ] 806 + 807 +}] 808 +))) 809 +|hotels|[ 810 +nullable: trueCheckoutHotelOut{((( 811 +|hotelPriceId|string 904 904 nullable: true 905 -|restrictionInfo|string 813 +|touristIds|[ 814 +nullable: truestring($uuid)] 815 +|errorCode|string 906 906 nullable: true 907 -| additionalInfo|string817 +|errorMessage|string 908 908 nullable: true 909 -|price|number($double) 910 -|extraPrice|number($double) 911 -|currency|string 819 +|description|string 912 912 nullable: true 913 913 914 914 }] 915 915 ))) 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) 916 916 917 917 }] 918 918 ))) 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 919 919 920 -} 851 +}] 921 921 ))) 853 +|containsError|boolean 854 +|refreshPriceResult|RefreshPriceResultEnumstringEnum: 855 +[ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ] 856 +|reservationId|string($uuid) 857 +|reservationDetailsUnavailable|boolean 922 922 923 923 } 924 924 {{/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 +