Blog Detail Title

Short Content Here

by Author Name

Date Published


Upsell Integration Guide

Benjamin Schmid January 20, 2019
This guide explains how you can connect your upselling application, and offer extra services or room upgrades to guests. If you are new to apaleo APIs, head over to the quick-start guide, and learn how you can implement the apaleo connect flow. There are many variants to upselling, and not all steps might be relevant for you. If something seems strange or irrelevant, just ignore it, and skip to the next paragraph.

Upselling APIs

Browse all apaleo APIs on For most upselling integrations, the Core APIs are the only ones needed. Switch between different modules using the dropdown in the top right corner. The Rate Plan APIs let you retrieve all available rate plans and extras the hotel set up in apaleo. Use these to initially configure your upselling paths and options, directly after the hotel connects your app with apaleo. Note that each rate plan is always connected to exactly one unit group (or 'room type'). This might be different from what you are used to by other systems.
GET /rateplan/v1/rate-plans
GET /rateplan/v1/services
You can let hotels set up their own upselling services in your application, and then push them over to apaleo. This is useful, if you want to model room upgrades as extra services, instead of changing the price for the room rate for the reservation.
POST /rateplan/v1/services
The Booking API is where the magic happens. Here you can get the reservation you want to modify.
GET /booking/v1/reservations/{id}
For upgrading a reservation, retrieve all alternative offers for this one reservation, and find the offer that matches best. Find the one with the same cancellation policies and guarantees, or anything else that makes sense to you. This is your expertise, not ours.
GET /booking/v1/reservations/{id}/offers
PUT /booking/v1/reservation-actions/{id}/amend
You can also ask to get offers which would normally not be available (for example, because the advanced booking or other restrictions are violated). Simply add the parameter IncludeUnavailable to true. If you do this, be sure to check the validation messages in the offer response and ensure that you do not overbook the hotel. To book an offer with validation messages you need to force the system to accept it by using the $force endpoint.
GET /booking/v1/reservations/{id}/offers?includeUnavailabe=true
PUT /booking/v1/reservation-actions/{id}/amend/$force
Adding extra services can be done in a similar way. Request all services that are available for a reservation, and then add them to the reservation.
GET /booking/v1/reservations/{id}/service-offers
PUT /booking/v1/reservation-actions/{id}/book-service


The following list of examples is not exhaustive, but gives you some guidance on how to upsell with apaleo APIs. For details on the exact payloads, see the examples and model definitions in swagger.

Extend stay

Arrive a day earlier? Stay for the weekend? Extending the stay is a very standard amend use-case. Get the alternative offers for a reservation, and either wait for user input to choose one, or use your magic to determine the best. When getting the alternative offers, be sure to change the arrival and/or departure dates of the reservation, so that the new offer covers the additional days. Then, call amend. Use the data from the offers endpoint to construct the input for the call. The amend functionality is pretty powerful, and constructing the input from scratch is complex.

Upgrade room

Upgrading a room is following the same pattern: get alternative offers, pick one, amend. This time, when getting the offers, be sure to not change any of the core parameters, but set the requote flag to true. As you do not want to offer cheaper rooms, you can filter the results by the ones with higher prices, or using any hierarchy or upselling models in your application. There is no 'ordering' of room types in apaleo, and you cannot retrieve from the rate-plan API, which rooms are better than others.

Late check-out or early check-in

Late check-out or early check-in can be modelled by changing the departure or arrival time of a reservation, and increasing the price. Ask for alternative offers for the reservation you want to adjust and specify the desired departure or arrival time. Use the response to construct the payload for the amend and add the additional price for the late check-out or early check-in to the last or first time night respectively. You could also instead of increasing the price book a pre-defined extra for the respective night.

Bid on room upgrades / Set your own price

Similar to the late check-out, setting your own price can be done by amending a reservation, and passing prices in the timeslices / nights. Just like above, you can also add extra services instead of changing the price. It it not possible to set a price for the entire reservation, you always have to adjust each and every time slice / night.

Add extra services

To add extra services, the first step is getting offers for services that are available for the reservation you want to change. Display the result, or a filtered subset, to the user, and add them as extra services to the whole reservation, or specific nights.
Benjamin Schmid

Posted by

Benjamin Schmid
Benjamin Schmid is a co-founder at apaleo. He’s spent more than a decade leading teams to build software that help businesses run smoothly, from ERP systems to SaaS products at SAP hybris. For the last four years, he has taken his product knowledge to the hospitality industry, building up hetras’s API and app platform and now creating apaleo’s open hospitality cloud. When he’s not busy building cool products, Benjamin can be found relaxing in the quietness of the alps or playing sports.


by Andrea Stubbe


UI Integration Guide

This guide explains how you can include your views into the apaleo user interface. This allows users to see information or even trigger actions in your ...

by Andrea Stubbe


Revenue Management Integration Guide

This guide explains how you can connect your revenue or rate management application (RMS) to apaleo. If you are new to apaleo APIs, head over to ...


Subscribe to our a-list for all the fun:

  • Keep up to date with hotel trends
  • Understand what matters most to hotel clients
  • Sweet gifs and special offers

Get it in your inbox every Monday ;)

By entering your email you expressly consent to receive our newsletter every week and other material related to...