Price API
The Price API is used to fetch the final price of the selected rooms/rates from the RoomRates API response before proceeding with the booking. This API is crucial because the rate information for a particular hotel is fetched dynamically, and there is a chance that the price may be updated at the hotel end. Therefore, it is essential to update the user with the latest price before proceeding with the booking.
Price API Details:
HTTP Method: GET
Endpoint: {baseEndpoint}/api/hotel/{hotelId}/{token}/price/recommendation/{recommendationId}
FAQs
Do I need to make the Price API call before the booking step?
Yes, this step is mandatory before the book API call.
Does the price get updated everytime we make this API call?
It depends upon the supplier/provider as stated earlier all the calls made via the ZentrumHub API to the supplier are dynamic and we do not cache any data.
Why do I need to use the recommendationId instead of the rateIds to make the pricing call?
As you would observe the rateIds in the recommendation in case of multi-room search, each recommendation contains rateIds from a single supplier only as we do not support pricing on multi-suppliers and also there is a scenario where the supplier does not support combining the different rateIds for performing a book. We have exclusively taken care of this in our recommendation building logic.
How can I use the recommendationId to fetch the pricing response?
Steps to Use the Price API:
1.Fetch Details: Obtain the recommendationId, token, and hotelId from the RoomRates API response.
2.Call Price API: Pass the above details to the Price API endpoint as route parameters.
What should I do if I receive more than one rateId in the pricing response?
You should display the total price by summing up the prices of all the received rates to your users.
Is it mandatory to show content from the same supplier for which rates are returned in the Price API?
Yes, it is mandatory to display content from the same supplier whose rates are returned via the Price API on the checkout page.
This ensures consistency between pricing and property details, and helps avoid discrepancies during booking.
How do I get content from the same supplier as the one used in the Price API, using the getHotelContent
API?
To fetch content from the same supplier that provided the rates, follow these steps:
1.Extract providerName
from the rate
object of the RoomRates API.
2.Pass the providerName
as the value for the providerPrefs
parameter in the getHotelContent
API request.
This overrides the default
ContentPreference
configured at the channel level, ensuring the content shown on the checkout page matches the rate source.
Error Codes
Error Code | Error Message |
---|---|
4001 | Invalid data in request - Please refer to the fields[] for more details. |
4004 | The hotel you selected is sold out |
4005 | Price for the selected room(s) has changed |
4006 | The rate you tried to book has expired. Please try again with a new search. |
5000 | Your request failed due to an unknown system error. Please contact support team with the correlationId. |
5001 | Your request failed due to an unknown error returned by the supplier. Please contact support team with the correlationId. |
Updated 6 days ago
Please visit the following link:
https://zentrumhub-hotel-api.readme.io/reference/get_api-hotel-hotelid-token-price-recommendation-recommendationid