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
Change comment: There is no comment for this version
To version 10.5
edited by Giorgi Mdivnishvili
on 2024/04/11 16:58
Change comment: There is no comment for this version

Summary

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|string
658 +|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: trueCheckoutHotelOut{(((
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|string
707 +|note|string
670 670  nullable: true
671 -|description|string
672 -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,60 @@
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: trueCheckoutTransferOut{(((
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|string
777 +|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 +{{success}}
786 +CheckoutFormOut{
787 +
788 +|error|boolean
789 +|errorCode|string
757 757  nullable: true
758 -|checkOutHotelId|string
791 +|errorDescription|string
759 759  nullable: true
760 -|selectedTransferPriceId|string
793 +|userErrorDescription|string
761 761  nullable: true
762 -|transferPrices|[
763 -nullable: trueCheckoutTransferPrice{(((
764 -|id|string
795 +|priceCurrency|string
765 765  nullable: true
766 -|name|string
797 +|totalPrice|number($double)
798 +|agentCommissionPercent|number($double)
799 +|agentCommissionAmount|number($double)
800 +|requiredCitizenIdentifiers|[
801 +nullable: trueCitizenIdentifier{(((
802 +|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)
804 +|identifierType|IdentifierTypeEnumstringEnum:
805 +[ TIN, FIN ]
773 773  
774 774  }]
775 775  )))
776 -
777 -}]
778 -)))
809 +|hotels|[
810 +nullable: trueCheckoutHotelOut{(((
811 +|hotelPriceId|string
812 +nullable: true
813 +|touristIds|[
814 +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  )))
824 +|tourists|[
825 +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}}
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 +