Changes for page 4. CalcCheckout
Last modified by Giorgi Mdivnishvili on 2024/04/11 16:59
From version 6.1
edited by Giorgi Mdivnishvili
on 2024/04/11 09:05
on 2024/04/11 09:05
Change comment:
There is no comment for this version
To version 10.3
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}} ... ... @@ -637,49 +637,102 @@ 637 637 638 638 === Schema === 639 639 641 + 642 + 640 640 {{success}} 641 -|error|boolean 642 -|errorCode|string 644 +CheckoutFormIn{ 645 + 646 +|reservationId|string($uuid) 643 643 nullable: true 644 -|errorDescription|string 648 +|calcTourPackageRequests|[ 649 +nullable: trueCalcTourPackageRequest{((( 650 +|packageId|string 645 645 nullable: true 646 -|userErrorDescription|string 652 +|extraServicePriceCodes|[ 653 +nullable: truestring] 654 +|flightPassengers|[ 655 +nullable: trueFlightPassengerIn{((( 656 +|id|string 647 647 nullable: true 648 -| priceCurrency|string658 +|selectedForwardBaggageCode|string 649 649 nullable: true 650 -|totalPrice|number($double) 651 -|agentCommissionPercent|number($double) 652 -|agentCommissionAmount|number($double) 653 -|requiredCitizenIdentifiers|[ 654 -nullable: trueCitizenIdentifier{((( 655 -|countryCode|[...] 656 -|identifierType|IdentifierTypeEnumstringEnum: 657 -[ TIN, FIN ] 660 +|selectedBackwardBaggageCode|string 661 +nullable: true 658 658 659 659 }] 660 660 ))) 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 +))) 661 661 |hotels|[ 662 -nullable: trueCheckoutHotel Out{(((702 +nullable: trueCheckoutHotelIn{((( 663 663 |hotelPriceId|string 664 664 nullable: true 665 -|touristIds|[ 666 -nullable: truestring($uuid)] 667 -|errorCode|string 705 +|agentConfirmationNumber|string 668 668 nullable: true 669 -| errorMessage|string707 +|note|string 670 670 nullable: true 671 -| description|string672 -nullable: true 709 +|touristIds|[ 710 +nullable: truestring($uuid)] 673 673 674 674 }] 675 675 ))) 676 676 |tourists|[ 677 -nullable: trueCheckoutTouristOut{((( 678 -|id|[...] 679 -|age|[...] 680 -|isAdult|[...] 681 -|flightIds|[...] 682 -|flights|[...] 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] 683 683 |arrivalFlightInfo|ManualFlightInfo{((( 684 684 |flightNumber|string 685 685 nullable: true ... ... @@ -704,78 +704,63 @@ 704 704 705 705 } 706 706 ))) 707 -|insurancePrice|InsurancePriceForTourist{((( 708 -|insuranceId|string($uuid) 709 -|insuranceServiceId|string($uuid) 710 -|insurancePriceId|string($uuid) 711 -|touristId|string($uuid) 712 -|insuranceName|string 713 -nullable: true 714 -|insuranceDescription|string 715 -nullable: true 716 -|contragentName|string 717 -nullable: true 718 -|contragentFullName|string 719 -nullable: true 720 -|actualStartDate|string($date-time) 721 -|actualEndDate|string($date-time) 722 -|costCurrencyCode|string 723 -nullable: true 724 -|costAmount|number($double) 725 -|priceCurrencyCode|string 726 -nullable: true 727 -|priceAmount|number($double) 728 -|coverageCurrencyCode|string 729 -nullable: true 730 -|coverageAmount|number($double) 731 - 732 -} 733 -))) 734 734 |selectedVisaId|string 735 735 nullable: true 736 736 |transfers|[ 737 -nullable: trueCheckoutTransfer Out{(((764 +nullable: trueCheckoutTransferIn{((( 738 738 |id|string 739 739 nullable: true 740 -|type|CheckoutTransferTypeEnumstringEnum: 741 -[ Arrival, Departure, HotelToHotel ] 742 -|flightId|string 767 +|selectedTransferPriceId|string 743 743 nullable: true 744 -|flightInfo|ManualFlightInfo{((( 745 -|flightNumber|string 769 + 770 +}] 771 +))) 772 + 773 +}] 774 +))) 775 +|note|string 746 746 nullable: true 747 -| terminalCode|string777 +|contactPhone|string 748 748 nullable: true 749 -|date|string($date-time) 750 -nullable: true 751 -|time|string 752 -nullable: true 753 753 754 754 } 755 -))) 756 -|checkInHotelId|string 781 +{{/success}} 782 + 783 + 784 + 785 + 786 + 787 + 788 +{{success}} 789 +CheckoutFormOut{ 790 + 791 +|error|boolean 792 +|errorCode|string 757 757 nullable: true 758 -| checkOutHotelId|string794 +|errorDescription|string 759 759 nullable: true 760 -|se lectedTransferPriceId|string796 +|userErrorDescription|string 761 761 nullable: true 762 -|transferPrices|[ 763 -nullable: trueCheckoutTransferPrice{((( 764 -|id|string 798 +|priceCurrency|string 765 765 nullable: true 766 -|name|string 800 +|totalPrice|number($double) 801 +|agentCommissionPercent|number($double) 802 +|agentCommissionAmount|number($double) 803 +|requiredCitizenIdentifiers|[ 804 +nullable: trueCitizenIdentifier{((( 805 +|countryCode|string 767 767 nullable: true 768 -|adultPlaces|integer($int32) 769 -|childPlaces|integer($int32) 770 -|perPersonPrice|boolean 771 -|adultPrice|number($double) 772 -|childPrice|number($double) 807 +|identifierType|IdentifierTypeEnumstringEnum: 808 +[ TIN, FIN ] 773 773 774 774 }] 775 775 ))) 776 - 777 -}] 778 -))) 812 +|hotels|[ 813 +nullable: trueCheckoutHotelOut{((( 814 +|hotelPriceId|string 815 +nullable: true 816 +|touristIds|[ 817 +nullable: truestring($uuid)] 779 779 |errorCode|string 780 780 nullable: true 781 781 |errorMessage|string ... ... @@ -785,6 +785,8 @@ 785 785 786 786 }] 787 787 ))) 827 +|tourists|[ 828 +nullable: trueCheckoutTouristOut{...}] 788 788 |visas|[ 789 789 nullable: trueServicePrice{((( 790 790 |prid|string($uuid) ... ... @@ -820,3 +820,70 @@ 820 820 821 821 } 822 822 {{/success}} 864 + 865 + 866 +== Descriptions == 867 + 868 + 869 +=== Request === 870 + 871 +Here's a table describing each parameter of the JSON request: 872 + 873 +(% class="table-bordered" %) 874 +|=Parameter|=Data Type|=Description 875 +|calcTourPackageRequests|Array|An array of objects, each representing a tour package request. 876 +|refreshPrices|Boolean|If true, the prices for the tour package will be refreshed. 877 +|packageId|String|A unique identifier for the tour package. 878 +|flightPassengers|Array|An array of objects, each representing a flight passenger. 879 +|id|String|A unique identifier for each flight passenger. 880 +|selectedForwardBaggageCode|String|The selected baggage option for the forward journey. there is two optoions "" 881 +|selectedBackwardBaggageCode|String|The selected baggage option for the backward journey. 882 +|extraServicePriceCodes|Array|An array of extra service price codes. If empty, no extra services are selected. 883 +|includeInsurance|Boolean|If true, insurance will be included in the tour package. 884 +|calcOnlyHotelPackageRequests|Array|An array of objects, each representing a hotel-only package request. If empty, no hotel-only packages are requested. 885 +|calcOnlyAviaPackageRequests|Array|An array of objects, each representing an avia-only package request. If empty, no avia-only packages are requested. 886 + 887 +=== Response === 888 + 889 +(% class="table-bordered" %) 890 +|=Parameter|=Data Type|=Description 891 +|priceCurrency|String|The currency code (ISO 4217) for all prices mentioned in the response. 892 +|totalPrice|Number|The total price of the booking. 893 +|agentCommissionPercent|Number|The commission percentage for the agent. 894 +|agentCommissionAmount|Number|The total commission amount for the agent in priceCurrency. 895 +|requiredCitizenIdentifiers[*].countryCode|String|The ISO 3166-1 alpha-2 country code. 896 +|requiredCitizenIdentifiers[*].identifierType|String|The type of identifier required (e.g., "TIN", "FIN"). **TIN (Taxpayer Identification Number) & FIN (Financial Identification Number)** 897 +|hotels[*].hotelPriceId|String|Unique identifier for the hotel price. 898 +|hotels[*].touristIds[*]|String|List of tourist IDs that are booked in this hotel. 899 +|hotels[*].description|String|A brief description of the hotel. 900 +|tourists[*].id|String|Unique identifier for the tourist. 901 +|tourists[*].isAdult|Boolean|Indicates if the tourist is an adult. 902 +|tourists[*].flightIds[*]|String|Identifiers for flights associated with the tourist. 903 +|tourists[*].flights[*].flightId|String|Unique identifier for the flight. 904 +|tourists[*].flights[*].note|String|Additional information about the flight, such as baggage allowance. 905 +|tourists[*].insurancePrice.insuranceId|String|Unique identifier for the insurance product. 906 +|tourists[*].insurancePrice.insuranceServiceId|String|Identifier for the insurance service provider. 907 +|...|...|Additional fields for insurancePrice as detailed previously. 908 +|tourists[*].transfers[*].id|String|Unique identifier for the transfer service. 909 +|tourists[*].transfers[*].type|String|The type of transfer (e.g., "Arrival", "Departure"). 910 +|tourists[*].transfers[*].flightId|String|Identifier of the flight associated with this transfer. 911 +|tourists[*].transfers[*].checkInHotelId|String|Hotel ID for check-in associated with this transfer (for arrival type). 912 +|tourists[*].transfers[*].checkOutHotelId|String|Hotel ID for check-out associated with this transfer (for departure type). 913 +|tourists[*].transfers[*].selectedTransferPriceId|String|The ID of the selected pricing option for the transfer. 914 +|tourists[*].transfers[*].transferPrices[*].id|String|Unique identifier for the transfer price option. 915 +|tourists[*].transfers[*].transferPrices[*].name|String|The name of the transfer service (e.g., "GROUP", "MINIVAN"). 916 +|...|...|Additional fields for transferPrices as detailed previously. 917 +|visas[*].prid|String|Unique identifier for the visa option. 918 +|visas[*].prName|String|The name of the visa option. 919 +|visas[*].prValue|Number|The cost associated with this visa option. 920 +|visas[*].sortingOrder|Number|Used to sort visa options in the response or UI. 921 +|terminals[*].terminalCode|String|The code representing the terminal. 922 +|terminals[*].cityUID|String|Unique identifier for the city where the terminal is located. 923 +|...|...|Additional fields for terminals as detailed previously. 924 +|containsError|Boolean|Indicates if the response contains any errors. 925 +|refreshPriceResult|String|The result of attempting to refresh the price (e.g., "Success"). 926 +|reservationId|String|Unique identifier for the reservation. 927 +|reservationDetailsUnavailable|Boolean|Indicates if the reservation details are currently unavailable. 928 +|error|Boolean|A generic error indicator, presumably redundant with containsError. 929 + 930 +