Basic R+ settings
How to implement:
Insert the following code into your website:
<!-- Reservation PLUS start -->
<script type="text/javascript" src="https://booking.previo.app/iframe/"></script>
<iframe src="https://booking.previo.app/?hotId=123456" scrolling="no" frameborder="0"
width="727" height="2000" name="previo-booking-iframe" id="previo-booking-iframe"
allowTransparency="true"></iframe>
<!-- Reservation PLUS end -->
Obligatory parameters of SRC attribute iframe:
- hotId=123456 – ID of your hotel (you’ll find it in the Previo in the menu “Help -> About application”)
Optional parameters of SRC attribute iframe:
General parameters
- lang=en – marking individual language versions (CS = Czech, EN = English, DE = German, RU =
Russian, SK = Slovak, IT = Italian, FR = French, ES = Spanish, PL = Polish, ZH –
Chinese, RO = Romanian, SL = Slovenian, UK = Ukrainian) - currency=CZK – the currency (CZK = Czech crown, USD = US Dollar, EUR = Euro, GBP – British
pound, RUB – Russian ruble, PLN – Polish zloty, UAH – Ukrainian hryvnia, HUF – Hungarian
Forint) - hideCurrencies=EUR – is for hidding the currency you do not want to use in your IBE. E.g. in Previo you use CZK, USD and EUR but on your website you just want to sell only in CZK by using the parameter hideCurrencies=EUR-USD).
- showTabs=reservation-maps – display only selected sections (“reservation” – classic reservation,
“stay” – hotel stay packages, “review” – reviews of guests, “pricelist” – pricelist, “occupancy” –
availability, “map” – map, “coupon” – order form for gift vouchers, “hotels” – list of all hotels in group, “service” – separate reservation of hourly facilities without accommodation). The names of the individual tabs are separated by a dash. Order is determined by order of tabs in the parameter. - hideTabs=stay-review-pricelist-occupancy – hide the selected section (“reservation” – classic
reservation, “stay” – hotel stay packages, “review” – reviews of guests, “pricelist” – pricelist,
“occupancy” – availability, “map” – map). The names of the individual tabs are separated by a dash. - theme= color of the template – possible options are: dark, orange, red, green, gray, bordo, brown, purple, theme01, darkblue, black, darkbrown, lightorange, darkgreen, lightgreen, wine, violet, darkpink, gold, naturegreen, pink, darkmode-gold, darkmode-cyan, darkmode-gray, darkmode-pink, darkmode-blue, darkmode-orange, darkmode-green
- ga=UA-1234567-8 – Google Analytics account code (Property ID) for measuring traffic
- hotelDetail=1, shows details at the header (logo, name, number of stars, address, reviews, brief description and photos). Suitable especially if the form is in a new window, or when you refer to it from other sites.
- showHotels=XXX-YYY, using parameter you can select which hotels from group will be displayed in “List of facilities” and “Map” tab in IBE. After = just write down the profile IDs and if you want to display more than one profile, separate the IDs with dash. E.g: showHotels=730562-730700 (order is determined by the order of IDs in parameter).
- ratePlan=XXX using this parameter you can insert booking engine which uses different rateplan than the one you have set for general use in your IBE in Reservation systems settings. With this parameter R+ will use with prices, occupancy and restrictions of selected rateplan. ID of rateplan can be found in pricelist. It is also possible to combine this parameter with following nrrRatePlan parameter.
- nrrRatePlan=YYY see description above for ratePlan parameter. Example of both parameters used at the same time is following: https://booking.previo.app/?hotId=XXXX&ratePlan=1111&nrrRatePlan=2222
Reservation tab parameters
- guestFilter=1, displays filterfor number of guests. Can be used together with parameter “arrival”. Specific number of guests can be set by additional parameters numberOfAdults=X a childAges=X-Y. Without these parameters used we will automatically prefill 2 adults as most common option. Using this option there will be possibility to select meals during the room selection (if you dont want to display all the meal options in this step of booking engine, use parameter hideRoomMeals=1 and the meals will be selected in following step with extra services).
- showRoomType=546, reservation form will display only certain rooms (according to room IDs), if you want to display more rooms separate them with dash : showRoomType=12345-6543-8974. Roomtypes will be sorted according to the order you write them down in the parameter.
- highlightRoomType=546, selected room type will be highlighted in your IBE (replace 546 with room type ID number) Room will be moved to the first place of all rooms and its price detail will be automatically unrolled so rate options (nrr etc) will be visible right away.
- discountCoupon=ABC2017, automatically pre-fills discount coupon in first step of reservation form
- expandPrices=1 – show prices for all numbers of guests in the room in second step of booking
- expandServices=1, in third step of IBE in hotel services “All” tab will be displayed showing all unlisted services + all services in from groups of services will be displayed as well.
- hideSoldRooms=1 will hide sold out or closed to sale rooms from the list.
- hideBenefits=1 will hide text and graphic motivators in the first step of reservation process.
- everyGuestSameMeal=1 this parameter will disable option “different meal for each guest” if you offer more meal types. Meaning during booking you have to select only one type of meals for all guests.
Reservation final step parameters
- showGuestDetail=1, unrolls the form with guest informations in the last step of reservation form
- showNote=1, unrolls the Note in fourth step of reservation form.
- mandatoryData=name-address-country-passport-visa – sets mandatory informations which needs to be filled in by client in third step of reservation form. (“name” – full name, “country” – country, “address” – full address, “visa” – visa number)
- hideCompany=1, will hide checkbox for adding the customer company details.
- redirectUrl=http://www.mydomain.com/thank-you-for-reservation – URL, it will be redirected to
the last step of reservation form after submitting order. You can also use optional parameter redirectType=iframe/parent which will redirect you to selected page inside iframe or in parent site. If you don´t use this parameter, iframe option will be automatically selected. The following GET parameters will be send:
•pole comIds – numbers of just created reservations, with API functions (e.g. Hotels.searchBonuses) is
posibble to get more detailed informations.
•price – Total price
•currency – currency of reservation
•arrival – arrival date in the format YYYY-MM-DD
•departure – departure date in the format YYYY-MM-DD
•customerName – contact person
•customerEmail – email of contact person
Pricing/Occupancy tab parameters
- pricelistType=seasons(or rooms), “rooms” option is default in case you have more than 4 future price seasons. Using “Seasons” oldschool version of the pricelist will be displayed (chart with prices for all rooms and select for season). This version will be also displayed as default in case you have less than 4 price seasons in the future.
- numOfGuests=min/max/number – will preselect the number of guests in pricelist. Selecting “min” will always preselect 1 guest no matter the selected room capacity. If you select “max” the number of guests will be set to full occupancy of main beds (without extra beds).
- showOccupancyTabs=object/objectKind/object-objectKind – select which tabs will be displayed in Occupancy section. Object means occupancy of particular rooms, objectKind means occupancy of room types and using both parameters separated with dash will display both tabs.
- drawOccupancyBy=object/objectKind – sets default tab to be displayed in Occupancy sections. “object” – particular rooms occupancy”, “objectKind” – room type occupancy.
Stay package parameters
- showStays=987, reservation form will display only certain stay packages (according to selected stay package IDs), if you want to display more packages separate them with dash: showStays=123-456-789.
- stayPricesPerRoom=1, which displays stay packages charged for entire room with this information (price per room) and with this calculation logic without recalculation for the lowest price for person.
Coupon parameters
When using the parameters &showTabs=coupon&couponType=cash or &showTabs=coupon&couponType=stay it is possible to adjust the header picture using following parameter:
- couponHeader=1-5 (#1 is default nature picture, other options are more “neutral and giftlike”).
Parameters for separate sale of hourly services without accommodation (showTabs=service)
- serviceListType=XXX (list/tiles) – in default view there might be list or tiles displayed with the option to switch between these two options. Using this parameter you will preselect which option will be selected without the option to switch.
- showServices=12345-23456-34567 – Service tab will display only services with selected IDs (service ID is visible in list of services).
- showServicesGroup=222333 – will display only group of services with selected ID (service group ID is visible in service detail)
- serviceId=12345 – link for booking of specific service by ID (see showServices parameter above). Using the extra parameter &arrival=DD.MM.YYYY you can also preselect specific date. Arrival parameter is optional.
An example of the use of optional parameters:
Hide section occupancy and view the form in the English language:
<!-- Reservation PLUS start -->
<div class="previo-reservation-form">
<script type="text/javascript" src="https://booking.previo.app/iframe/"></script>
<iframe src="https://booking.previo.app/?hotId=123456&lang=en&hideTabs=occupancy" scrolling="no" frameborder="0" width="100%" height="2000" name="previo-booking-iframe" id="previo-booking-iframe" allowTransparency="true"></iframe>
</div>
<!-- Reservation PLUS end -->
Required attributes iframe:
- scrolling=”no” – do not show scrollbars inside an iframe (height of form is adjusted automatically)
- name=”previo-booking-iframe” – the name of the iframe
- id=”previo-booking-iframe” – ID iframe
Optional attributes iframe:
- width=”100%” – setting the form’s width
- height=”2000″ – setting the form’s height
- frameborder=”0″ – frame of iframe
- allowTransparency=”true” – enable transparent iframe
You can also pre-fill form using the GET parameters and redirect the user to the next step at a
time. For example you can pre-fill first step of reservation (to order a particular room):
Reservation tab for ordering one particular rooms:
As src of iframe use http://reservation.previo.cz/?hotId=123456 with the following parameters:
- showRoomType=123 – room type ID (obligatory)
- arrival=DD.MM.YYYY – arrival date (optional, default is set to todays date)
- departure=DD.MM.YYYY – departure date (optional, default is set to next day after arrival date)
Stay packages tab for ordering particular stay package::
As src of iframe use http://reservation.previo.cz/stay/?hotId=123456 with the following parameters:
- stayId=123 – ID of stay package (obligatory)
- arrival=DD.MM.YYYY – preselecting particular date (optional, default is set to first possible date)
Own tracking
You can adjust tracking according to your needs. You can for example send event to Google Analytics everytime someone finishes/passes another step in booking process.
There is almost unlimited scale of tracking. For this detailed tracking you should have at least some basic knowledge of webdesign.
There are 2 possible ways of own tracking:
1. Using url GET parameter redirectUrl
You have to add iframe parameter &redirectUrl=https://www.mywebsites.cz/thankyou-page into src parameter.
This parameter will redirect customer to selected page (in redirectUrl parameter) after finishing the reservation. Url can also contain parameters like reservationPrice etc which can be used for your own tracking.
Tracking data can be then obtained using JavaScript or PHP from URL and you can use them for further analysis.
2. Using JS function reservationPlusStepEvent
This option is smarter because it allows ou to track how clients pass through single steps in reservation process. After last step (finishing of booking) you will also get information about price etc.
Simply insert such function in your website and it will be triggered everytime some step of reservation process will be finished by customer. Perfect for tracking conversions / events into any tracking system.
How to do it:
Insert similar code into your websites:
/**
* @param JSON reservationInfo
*/
function reservationPlusStepEvent(reservationInfo) {
values = JSON.parse(reservationInfo);
// currentStep
let currentStep = values.step;
// If customer is in fifth (last) step,
// log reservation data in console
if(values.step == 5) {
console.log(values);
// here you can trigger any code for example for event tracking
}
}