Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question: Workflow till reservation in Flight #87

Closed
MyDcode opened this issue Aug 8, 2017 · 5 comments
Closed

Question: Workflow till reservation in Flight #87

MyDcode opened this issue Aug 8, 2017 · 5 comments

Comments

@MyDcode
Copy link

MyDcode commented Aug 8, 2017

Once again Thank you very much for the Amadeus library.

I been using your library for my development and I could manage to retrieve and display recommendations (200) by using FareMasterPricerTbSearch class.

Since I am not from the travel background I am learning while development all this concepts.

At the moment I wanted your help to further carry-on with the development, please help me on this below points.

  1. Now that I have listed all the recommendation how to select a particular recommendation to prepare to get the PNR?

  2. After FareMasterPricerTbSearch which classes/ function to use to obtain a PNR.

  3. Using this requested PNR how to reserve a particular recommendation.

Please pardon me if you have answered this already, I would much appreciate if you can suggest me some steps to be taken to achieve my target. and once again excuse me to ask your valuable time to answer such basic question.

Thanks in advance.

@MyDcode
Copy link
Author

MyDcode commented Aug 10, 2017

Dear @DerMika, I totally understand that this has to be discussed with the Amadeus support but our local support is not that much helpful.

If you can spend minimum time of yours to support it will be a great support for not only for me it will be to others as well I hope.

If you can recommend the classes and functions which performs

  1. Search recommendations: FareMasterPricerTbSearch fareMasterPricerTravelBoardSearch
  2. Pass the recommendation's reference:
  3. Set user information for PNR:
  4. Create PNR:
  5. Reservation:

would be more than enough. Thank you very much and please excuse for the trouble. @bimusiek your input will help me on this as well.

Thank you.

@DerMika
Copy link
Collaborator

DerMika commented Aug 10, 2017

Hi,

The best resource of how to implement a booking engine using the web services is the guide "Amadeus WBS Implementation Guide - Internet Booking Engine with Master Pricer" which you can download on the Amadeus WS Extranet when you look at the documentation for the Fare_MasterPricerTravelBoardSearch message (look under "Implementation Guide").

In that guide you will see which messages are needed to perform specific actions on the Amadeus Web Services. To find out how to call this message in my library, you can look in the source of the Amadeus\Client class and do a search for the message name. You will then find the method needed. Also, I have written docs with examples for each message which show a number of examples per message. If you don't find a sample of how to perform a certain action, you can look at the unittests where usually every message option the library supports is tested with a sample.

As you can see in the above mentioned implementation guide:

  • To book a recommendation from the Fare_MasterPricerTravelBoardSearch reply, you can use Air_SellFromRecommendation. There are plenty more messages that can be used in between to know more about a given recommendation before booking it, (Fare_InformativePricingWithoutPNR, Fare_InformativeBestPricingWithoutPNR, MiniRule_GetFromPricing, Fare_CheckRules, Air_FlightInfo, Air_RetrieveSeatMap, etc). Whether you want to implement these will depend on which features you need. These messages are all explained in the implementation guide.
  • To add PNR data you will now need to call PNR_AddMultiElements. Minimum required information to be able to save a PNR is: Passenger name, Ticketing element, Contact element, and a Received From element. Add more elements as you need to implement features.
  • Then you'll need to price the PNR, which will give you a pricing offered by the airline for the flights you've booked. This can be done with one of the pricing messages, usually you use Fare_PricePNRWithBookingClass.
  • Now you need to create a TST (Transactionally Stored Ticket) from the pricing to be able to hold the given reservation at a guaranteed price for a given amount of time (usually around 24 hours, depends on the airline and other variables) for the pricing you just received. This can be done with Ticket_CreateTSTFromPricing.
  • Now you'll need to save the updates you made to the PNR with PNR_AddMultiElements.
  • Now you can do some other things such as placing the PNR on a queue for a travel agent (Queue_PlacePNR) to process it, or print a ticket (DocIssuance_IssueTicket) (when you're sure you will receive the money from the booker, because cancelling a ticket may not be cheap)

This is a basic booking flow in which you can implement extra features as you need them.

Again, all of this is explained in more detail in the implementation guide, I really recommend you read it.

If you have access to anyone who can explain you how Amadeus works, please use them as a resource, because to develop on the Amadeus Web Services you need to understand the Amadeus system, how PNR's work and the booking process to some degree. If not, ask for help with your Amadeus support contact.

I hope this helps you to get started.

@MyDcode
Copy link
Author

MyDcode commented Aug 10, 2017

@DerMika Thank you very much for your detailed reply and patients towards my question.

Actually I was with Amadeus support person (as you always recommends) on phone and he also gave the same info as you mentioned above some details not as much you provided above and also he gave me some Work flow diagrams which is lot easier than any other resources available.

Those diagrams are in simple Flow chart design and easy to understand, so any developer need the work flow simply request it. I am not sure I am allowed to share those documents here, therefore I am not sharing it here.

With those flow chart, working along with your Library is lot easier because your documentation/ library and the flow chart is aligned perfectly with each others.

Once again Thank you very much for your support.

And with that I can happily close this threat!

@MyDcode MyDcode closed this as completed Aug 10, 2017
@MyDcode MyDcode changed the title Question: Workflow till reservation Question: Workflow till reservation in Flight Aug 10, 2017
@DerMika
Copy link
Collaborator

DerMika commented Aug 10, 2017

Hi, no, as far as I am aware those documents may only be shared to people who have signed an agreement with Amadeus, they cannot be disclosed publicly.

Happy to hear that you were able to get started.

@MyDcode
Copy link
Author

MyDcode commented Aug 10, 2017

Yes, figured it out!

Once again thank you for your support.

atomy pushed a commit to mlamm/amadeus-ws-client that referenced this issue Nov 26, 2018
…letePricing to master

* commit '2f43bebbe8ceaed4cbe955c16419237850238b66':
  delete pricing - response ok if no TST exist
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants