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 9.1
edited by Giorgi Mdivnishvili
on 2024/04/11 13:22
on 2024/04/11 13:22
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 ... ... @@ -788,8 +788,6 @@ 788 788 === Schema === 789 789 790 790 {{success}} 791 -CalcOnlyHotelPackageResponse{ 792 - 793 793 |error|boolean 794 794 |errorCode|string 795 795 nullable: true ... ... @@ -797,128 +797,245 @@ 797 797 nullable: true 798 798 |userErrorDescription|string 799 799 nullable: true 800 -|package|OnlyHotelPackage{((( 801 -|id|string 802 -nullable: true 803 803 |priceCurrency|string 804 804 nullable: true 805 805 |totalPrice|number($double) 806 806 |agentCommissionPercent|number($double) 807 807 |agentCommissionAmount|number($double) 808 -|hotel|PackageHotel{((( 654 +|requiredCitizenIdentifiers|[ 655 +nullable: trueCitizenIdentifier{((( 656 +|countryCode|[...] 657 +|identifierType|IdentifierTypeEnumstringEnum: 658 +[ TIN, FIN ] 659 + 660 +}] 661 +))) 662 +|hotels|[ 663 +nullable: trueCheckoutHotelOut{((( 809 809 |hotelPriceId|string 810 810 nullable: true 811 -|providerId|integer($int32) 812 -|hotelName|string 666 +|touristIds|[ 667 +nullable: truestring($uuid)] 668 +|errorCode|string 813 813 nullable: true 814 -| hotelCode|string670 +|errorMessage|string 815 815 nullable: true 816 -|nigths|integer($int32) 817 -|mealPlan|string 672 +|description|string 818 818 nullable: true 819 -|hotelClass|string 674 + 675 +}] 676 +))) 677 +|tourists|[ 678 +nullable: trueCheckoutTouristOut{((( 679 +|id|[...] 680 +|age|[...] 681 +|isAdult|[...] 682 +|flightIds|[...] 683 +|flights|[...] 684 +|arrivalFlightInfo|ManualFlightInfo{((( 685 +|flightNumber|string 820 820 nullable: true 821 -|availabilityType|RoomAvailabilityTypeEnumstringEnum: 822 -[ OnRequest, FreeSale, StopSale ] 823 -|availableRoomsCount|integer($int32) 824 -|fewRooms|boolean 825 -|roomCategoryCode|string 687 +|terminalCode|string 826 826 nullable: true 827 -| roomCategoryName|string689 +|date|string($date-time) 828 828 nullable: true 829 -| placementTypeName|string691 +|time|string 830 830 nullable: true 831 -|placementDescription|string 693 + 694 +} 695 +))) 696 +|departureFlightInfo|ManualFlightInfo{((( 697 +|flightNumber|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) 699 +|terminalCode|string 838 838 nullable: true 839 -|d istrictName|string701 +|date|string($date-time) 840 840 nullable: true 841 -| cityUID|string($uuid)703 +|time|string 842 842 nullable: true 843 -|cityName|string 705 + 706 +} 707 +))) 708 +|insurancePrice|InsurancePriceForTourist{((( 709 +|insuranceId|string($uuid) 710 +|insuranceServiceId|string($uuid) 711 +|insurancePriceId|string($uuid) 712 +|touristId|string($uuid) 713 +|insuranceName|string 844 844 nullable: true 845 -| countryCode|string715 +|insuranceDescription|string 846 846 nullable: true 847 -|co untryName|string717 +|contragentName|string 848 848 nullable: true 849 -|hasAlcohol|boolean 850 -|hasFreeWifi|boolean 851 -|hasMetro|boolean 852 -|hasPool|boolean 853 -|hasMall|boolean 854 -|cancellationPolicyDescription|string 719 +|contragentFullName|string 855 855 nullable: true 856 -|cancellationPolicy|CancellationPolicyExchange{((( 857 -|cancellationPolicyCode|string 721 +|actualStartDate|string($date-time) 722 +|actualEndDate|string($date-time) 723 +|costCurrencyCode|string 858 858 nullable: true 859 -|noShowChargeValue|number($double) 725 +|costAmount|number($double) 726 +|priceCurrencyCode|string 860 860 nullable: true 861 -|noShowChargeValueType|string 728 +|priceAmount|number($double) 729 +|coverageCurrencyCode|string 862 862 nullable: true 863 -|earlyDepartureChargeValue|number($double) 731 +|coverageAmount|number($double) 732 + 733 +} 734 +))) 735 +|selectedVisaId|string 864 864 nullable: true 865 -|earlyDepartureChargeValueType|string 737 +|transfers|[ 738 +nullable: trueCheckoutTransferOut{((( 739 +|id|string 866 866 nullable: true 867 -|conditions|[ 868 -nullable: trueCancellationPolicyConditionExchange{((( 869 -|timeunits|integer($int32) 870 -|timeunitType|string 741 +|type|CheckoutTransferTypeEnumstringEnum: 742 +[ Arrival, Departure, HotelToHotel ] 743 +|flightId|string 871 871 nullable: true 872 -|timeOffsetTypeName|string 745 +|flightInfo|ManualFlightInfo{((( 746 +|flightNumber|string 873 873 nullable: true 874 -| chargeValue|number($double)748 +|terminalCode|string 875 875 nullable: true 876 -| chargeValueType|string750 +|date|string($date-time) 877 877 nullable: true 752 +|time|string 753 +nullable: true 878 878 879 -}] 880 -))) 881 - 882 882 } 883 883 ))) 884 - 885 -} 886 -))) 887 -|extraServices|[ 888 -nullable: trueHotelExtraServiceBase{((( 889 -|extraServiceCode|string 757 +|checkInHotelId|string 890 890 nullable: true 891 -| extraServiceTypeCode|string759 +|checkOutHotelId|string 892 892 nullable: true 893 -|isMandatory|integer($int32) 894 -|extraServiceName|string 761 +|selectedTransferPriceId|string 895 895 nullable: true 896 -|minimalServiceAmount|number($double) 897 -|includedPriceCode|string 763 +|transferPrices|[ 764 +nullable: trueCheckoutTransferPrice{((( 765 +|id|string 898 898 nullable: true 899 -|prices|[ 900 -nullable: trueHotelExtraServicePriceBase{((( 901 -|extraServicePriceCode|string 767 +|name|string 902 902 nullable: true 903 -|displayName|string 769 +|adultPlaces|integer($int32) 770 +|childPlaces|integer($int32) 771 +|perPersonPrice|boolean 772 +|adultPrice|number($double) 773 +|childPrice|number($double) 774 + 775 +}] 776 +))) 777 + 778 +}] 779 +))) 780 +|errorCode|string 904 904 nullable: true 905 -| restrictionInfo|string782 +|errorMessage|string 906 906 nullable: true 907 -| additionalInfo|string784 +|description|string 908 908 nullable: true 909 -|price|number($double) 910 -|extraPrice|number($double) 911 -|currency|string 912 -nullable: true 913 913 914 914 }] 915 915 ))) 789 +|visas|[ 790 +nullable: trueServicePrice{((( 791 +|prid|string($uuid) 792 +|prName|string 793 +nullable: true 794 +|prValue|number($double) 795 +|sortingOrder|integer($int32) 916 916 917 917 }] 918 918 ))) 799 +|terminals|[ 800 +nullable: trueTerminal{((( 801 +|terminalCode|string 802 +nullable: true 803 +|cityUID|string($uuid) 804 +nullable: true 805 +|districtUID|string($uuid) 806 +nullable: true 807 +|terminalName|string 808 +nullable: true 809 +|countryCode|string 810 +nullable: true 811 +|note|string 812 +nullable: true 919 919 920 -} 814 +}] 921 921 ))) 816 +|containsError|boolean 817 +|refreshPriceResult|RefreshPriceResultEnumstringEnum: 818 +[ Success, HotelPriceNoMoreAvailable, FlightPriceNoMoreAvailable ] 819 +|reservationId|string($uuid) 820 +|reservationDetailsUnavailable|boolean 922 922 923 923 } 924 924 {{/success}} 824 + 825 + 826 +== Descriptions == 827 + 828 + 829 +=== Request === 830 + 831 +Here's a table describing each parameter of the JSON request: 832 + 833 +(% class="table-bordered" %) 834 +|=Parameter|=Data Type|=Description 835 +|calcTourPackageRequests|Array|An array of objects, each representing a tour package request. 836 +|refreshPrices|Boolean|If true, the prices for the tour package will be refreshed. 837 +|packageId|String|A unique identifier for the tour package. 838 +|flightPassengers|Array|An array of objects, each representing a flight passenger. 839 +|id|String|A unique identifier for each flight passenger. 840 +|selectedForwardBaggageCode|String|The selected baggage option for the forward journey. 841 +|selectedBackwardBaggageCode|String|The selected baggage option for the backward journey. 842 +|extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected. 843 +|includeInsurance|Boolean|If true, insurance will be included in the tour package. 844 +|calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested. 845 +|calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested. 846 + 847 +=== Response === 848 + 849 +(% class="table-bordered" %) 850 +|=Parameter|=Data Type|=Description 851 +|priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response. 852 +|totalPrice|Number|The total price of the booking. 853 +|agentCommissionPercent|Number|The commission percentage for the agent. 854 +|agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency. 855 +|requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code. 856 +|requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN"). 857 +|hotels[*].hotelPriceId|String|Unique identifier for the hotel price. 858 +|hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel. 859 +|hotels[*].description|String|A brief description of the hotel. 860 +|tourists[*].id|String|Unique identifier for the tourist. 861 +|tourists[*].isAdult|Boolean|Indicates if the tourist is an adult. 862 +|tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist. 863 +|tourists[*].flights[*].flightId|String|Unique identifier for the flight. 864 +|tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance. 865 +|tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product. 866 +|tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider. 867 +|...|...|Additional fields for insurancePrice as detailed previously. 868 +|tourists[*].transfers[*].id|String|Unique identifier for the transfer service. 869 +|tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure"). 870 +|tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer. 871 +|tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type). 872 +|tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type). 873 +|tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer. 874 +|tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option. 875 +|tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN"). 876 +|...|...|Additional fields for transferPrices as detailed previously. 877 +|visas[*].prid|String|Unique identifier for the visa option. 878 +|visas[*].prName|String|The name of the visa option. 879 +|visas[*].prValue|Number|The cost associated with this visa option. 880 +|visas[*].sortingOrder|Number|Used to sort visa options in the response or UI. 881 +|terminals[*].terminalCode|String|The code representing the terminal. 882 +|terminals[*].cityUID|String|Unique identifier for the city where the terminal is located. 883 +|...|...|Additional fields for terminals as detailed previously. 884 +|containsError|Boolean|Indicates if the response contains any errors. 885 +|refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success"). 886 +|reservationId|String|Unique identifier for the reservation. 887 +|reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable. 888 +|error|Boolean|A generic error indicator, presumably redundant with containsError. 889 + 890 +