Travelport / travelport-uapi-tutorial-php

The travelport-uapi-tutorial-php is a PHP project for Universal API that will help you connect and code a standard workflow including Air, Vehicle, and Hotel.
35 stars 47 forks source link

What is BookingTravelerRef or key in SearchPassenger #41

Open Jonny321 opened 7 years ago

Jonny321 commented 7 years ago

What is BookingTravelerRef or key in SearchPassenger ? I'm working with php code and when i tried this xml <?xml version="1.0"?>

then return response is given below Server.Business ER101 - UNABLE TO PRICE AS BOOKED OR BY LOW FARE FINDER 4484 AIRSVC Business Unable to price requested segments. 967661820A07643CC5F09ADAF9CCC385 trace And I have copied bookingtravelref code from travelport demo site. I'm using trial credentials for Travelport Universal API
NirandaG commented 7 years ago

Hi Jonny321,

Please find the below working XML request. ``xml

``xml If this does not work for you, please send me your UAPI credentials. The BookingTravellerRef: is the reference for each passenger you request for air pricing. It could be a string with any alpha numeric character combination. This reference will be returned in the AirPrice response. So this can be used to send AirCreate as well. Please note that you need to set references for each passenger if you send multiple passengers in your request. For ex: BookingTravelerRef="RXo3YUlkRmxBeXBCeEwzMg==" BookingTravelerRef="ANCSDdsRmxBeXBCeEwzMg==" Thank you, B.Rgds, Niranda
Jonny321 commented 7 years ago

Hi NirandaG,

i tried your solution but it's not working and response are given below: <?xml version="1.0"?>

Server.Security Agent has no privilege to perform Emulation. 319 SYSTEM Security Agent has no privilege to perform Emulation. 9A48007E0A07643B7EFA7C9CE163D240 And please share your email address so i would send my credentials on that email.
NirandaG commented 7 years ago

Hi Jonny321,

Please send them to niranda.gunaratna@gmail.com

Thank you, Niranda

rajeshtandukar commented 7 years ago

Hi Does BookingTravelerRef in SearchPassenger need to set by our shelf or it is reference to some key in LowFareSearchRsp xml which we have to use as BookingTravelerRef while sending AirPriceReq ?

Thank you Rajesh

rajeshtandukar commented 7 years ago

Also i would like to know is ClassOfService in AirPriceReq is optional since i didn't find this segment in my 'LowFareSearchRsp'.

Thank you Rajesh

vivekjyotipramanik commented 7 years ago

Hi rajeshtandukar,

The BookingTravalerRef can be used as any number of alphanumic string. After Pricing, in the pricing response you will receive the UAPI generated BookingTravelerRef and that can be used for Booking.

Regarding ClassOfService, it is the same as BookingCode in LowFareSearchResponse. For a particular segment, we can use the BookingCode value as ClassOfService in AirPriceReq. Even if you don't use it, in AirPriceRsp you will receive the correct ClassOfService.

Please let us know how it goes. Thanks.

rajeshtandukar commented 7 years ago

Hi vivekjyotipramanik,

I didn't get BookingTravalerRef in my AirPriceRsp.

AirPrice request xml <?xml version="1.0"?>

And response Taxes returned at the FareInfo level are for informational purposes only, and may differ from those returned at the Itinerary/Passenger Type levels. The FormOfPayment element was ignored for fee validation. Use CheckOBFees="All" or "FOPOnly" when including a FormOfPayment. No Merchandising optional services returned for Flight(s) [AI][216] No Merchandising optional services returned for Flight(s) [AI][215] Air India Air India 6UUVoSldxwhXsjodo9UZgcbKj3F8T9EyxsqPcXxP0TIjSPOlaHfQe5cuasWd6i8Dly5qxZ3qLwOXLmrFneovA5cuasWd6i8Dly5qxZ3qLwOXLmrFneovA9EuPpZ+OIsZM3ExqSoG052UHcuWlOZd4S4P1lfIG5EKVCulqMwbpNYRHrzWZukgtj7IcJ4glsGg92Lrg4qrFGJaOxvxXbSjgBll6FxyIC6cYuAWfcH2w92IEQfz1U0L7yxSkH+Q78A/Bb5nvKW9Fd/qkp0FEw0raOCbZ1nsUQQBcpOxbEEgV19fHL9HjPJ/hYuFsAExMoVlv4Xvb2u1Qx+/he9va7VDH7+F729rtUMfv4Xvb2u1Qx+/he9va7VDHzyxauAs+veBE308BFXsd7QPNqcmmS6r7B2WN4EjYakqFoIBP9iwkSLvu6OZxgADp1QLRIu3j2Gq5W4bRuwrrPA= 6UUVoSldxwhXsjodo9UZgcbKj3F8T9EyxsqPcXxP0TIjSPOlaHfQe5cuasWd6i8Dly5qxZ3qLwOXLmrFneovA5cuasWd6i8Dly5qxZ3qLwOXLmrFneovA9EuPpZ+OIsZM3ExqSoG051t6pQ3H42GcnEAAioJQz9xffAIozri2AARHrzWZukgtj7IcJ4glsGg92Lrg4qrFGKsnDhjAGY7khll6FxyIC6cYuAWfcH2w92IEQfz1U0L7yxSkH+Q78A/Bb5nvKW9Fd/vWpSmZkrE0eCbZ1nsUQQB4nuMQmz0N+9fHL9HjPJ/hYuFsAExMoVlv4Xvb2u1Qx+/he9va7VDH7+F729rtUMfv4Xvb2u1Qx+/he9va7VDHzyxauAs+veBE308BFXsd7QPNqcmmS6r7B2WN4EjYakqFoIBP9iwkSLvu6OZxgADp1QLRIu3j2Gq5W4bRuwrrPA= NPR2000.0 NPR1500.0 20K BAGGAGE DISCOUNTS MAY APPLY BASED ON FREQUENT FLYER STATUS/ ONLINE CHECKIN/FORM OF PAYMENT/MILITARY/ETC. 20K BAGGAGE DISCOUNTS MAY APPLY BASED ON FREQUENT FLYER STATUS/ ONLINE CHECKIN/FORM OF PAYMENT/MILITARY/ETC. GFB10101ADT00 01LE6MKTMD 010001#GFB200010101NADTV3008NPIN00200005993L# GFB10101ADT00 02LE6MKTMD 010002#GFB200010102NADTV3008NPIN00200005993L# Reagrds, Rajesh
vivekjyotipramanik commented 7 years ago

Hi rajeshtandukar,

Could you please confirm if you meant, BookingTravelerReef is not coming back in OptionalServices. Thanks.

rajeshtandukar commented 7 years ago

Hi vivekjyotipramanik, Yes even i didn't get OptionalService.

vivekjyotipramanik commented 7 years ago

Hi rajeshtandukar,

Optional service depends on the flight, Some AirSegment might return the optional service and some might not have any optional service. it is quite common and valid to not receive Optional Service in the AirPriceRsp. I can see there is a warning in your response saying, "No Merchandising optional services returned for Flight(s) [AI][216]". So, this AirSegment does not have any optional service. Could you please check with a different flight/AirSegment. Please let us know how it goes. Thanks.

rajeshtandukar commented 7 years ago

Hi vivekjyotipramanik,

Ok i got it, but the problem is when i request for AirCreateReservationReq i need 'BookingTravelerRef' as value for 'Key' attribute in

<BookingTraveler xmlns="http://www.travelport.com/schema/common_v41_0" Key="'................. " TravelerType="ADT" Age="40" DOB="1977-06-11" Gender="M" Nationality="US">

and in

<DeliveryInfo>
      <ShippingAddress Key="......... '">
      <Street>Via Augusta 59 5</Street>
      <City>Madrid</City>
      <State>IA</State>
      <PostalCode>50156</PostalCode>
      <Country>US</Country>
      </ShippingAddress>
    </DeliveryInfo>

so how these can be manage?

Regards, Rajesh

rajeshtandukar commented 7 years ago

Also, BookingTravelerRef is required for multiple passengers in PassengerType in AirCreateReservationReq.

<PassengerType Code="ADT" BookingTravelerRef="?????"/>
 <PassengerType Code="CNN" BookingTravelerRef="?????/>

Regards, Rajesh

rajeshtandukar commented 7 years ago

Hi vivekjyotipramanik,

As BookingTravelerRef as key of BookingTraveler segment, i define unique key fro each passenger and assign accordingly to BookingTravelerRef in

Now it is working. Is this correct, or still BookingTravelerRef should be from AirPriceResponse? If i am correct, then problem is solved.

One more question regarding FormOfPayment, since we are using our local payment gateways, does this segment nee to be set?

Thank you Rajesh

vivekjyotipramanik commented 7 years ago

Hi rajeshtandukar,

Regarding payment Gateway question, Please raise an ORS ticket. We need to use Cash in case you are using your local payment gateway, but it needs to be setup in BSP. As this is a business related question, please raise ORS or contact your account manager. Thanks.

boryashkin commented 5 years ago

:disappointed: The question about missing BookingTravelerRef's in AirPriceRsp is left unanswered.

I'm also have a problem with that, but on v45. Interesting part is that almost all my requests are working, but if AirPricingRsp returns air:OptionalService with <common_v45_0:ServiceData BookingTravelerRef="*******"> in it, then i geting errors in CreateReservationRsp. It happens because i use my own bookingTraveler Keys and Ref's which i put in AirPriceReq and in CreateReservationReq but in OptionalServices they are different. I didn't noticed them before and everything worked just fine, but then they appeared and caused "Key reference not found for BookingTraveler with key reference FGZuLb7Q2BKAKjbSAAAAAA== inside OptionalServiceData" error.