Developer Integration Information
The complete guide to integrating the Bookeasy Destination Management Solution into your website.
Before You Get Started
This page will allow you to understand
- What is Bookeasy?
- What are beGadgets
- Building Operator Pages
- Recommended Parameters
- Styling
- The Bookeasy API
- Getting Your Site Live
Wordpress Integration
The beGadgets can be integrated with Wordpress and other Content Management Systems however, it is important to note that these are not plugins. As such, a decent level of development knowledge is required, including Javascript, PHP, and API Integration.
ATDW Integration
ATDW integration is possible, however a consideration must first be made as to whether you wish to pull and manage the content from ATDW directly, or import your content into Bookeasy and then display from there. You can find further information on ATDW integration within this page should you require more details.
API Integration Bookeasy do not allow direct "push" connections to our API. We simply provide an option which allows you to call our system for information. We have also included a suggested path to follow. If you choose to go outside of these bounds, we will not support errors or conflicts you may receive.
Operator Pages The operator pages must include content. When integrating the gadgets, we will not provide content for you.
StylingYou, as the website developer, will be responsible for the styling of the beGadgets. The gadgets do have a default styling, however this will not work when implemented within your site.
Project BriefPlease ensure that you have obtained a clear project brief before you start the integration. We also recommend that you organise a meeting with Impart Media to discuss your project plan, and ensure you have not missed any key steps.
If you have any questions, or need further information not contained in this document, please email support@impartmedia.comUnderstanding Bookeasy
Bookeasy is the leading destination management system for the Tourism Industry. The system is currently being used by over 200 destinations encompassing Visitor Information Centres, National Parks, Property Managers, and Specialised Tourism Providers across Australia, New Zealand, and Asia. We also have over 45,000 active tourism operator consoles currently being used, making it one of Australia's largest content providers for the tourism industry.
In order for destinations to be able to book local and national operators the operator has a "Bookeasy Member Console" where they load rates/availability and content. This is displayed internally to the destination via their "Bookeasy Staff Console" and via the destination website, where you will be tasked with integrating the technology.
Bookeasy allows a destination to access the system from an Operator’s perspective, and is broken up into six major objects:
Below should allow for you to get a high level understanding of the hierarchy of data in Bookeasy
Booking Centre
The booking centre is the source of all the data. Each centre has a unique identifier that is used in various places. The identifier is usually displayed in the source code as q=XXXX EG "q=1234"
The Booking Centre also creates all of the configuration for operators, including: categories, business types, locations, facilities.
Operators
Operator consoles are created by the Booking Centre and the operator is assigned various configurations such as: operator category, business types, locations etc; this then allows a web developer to display them on the website effectively.
Operators are also responsible for loading their bookable product into Bookeasy to display via the beGadgets. The operator console is also where they load images/descriptions. Each operator in Bookeasy contains a unique property ID which is important throughout the integration.
Bookeasy also have 4 main bookable operator types. Accommodation, Tours, Car Hire, and Tickets (aka Events)
If operators are not mapped to one of these types then that type will not require the beGadget integration built into the operator page, as they are a non-bookable operator.
Events
When referring to 'events' we are refering to a simple 'Whats On' event list. These often include events such as markets or community events and are not Bookable.
Credentials Required
- Staging domains
- VCID (q=1234)
- Auth Key for gadgets
- Test operators (Accommodation, Tours, Events, Car Hire)
- Gadget documentation
- Ensure the beConsole configuration has been completed
The client must have also submitted the following:
- beGadget Supply Agreement
To obtain this information please contact Impart Media via email: support@impartmedia.com
What are the beGadgets?
There is help documentation on the beGadgets available here.
There are technically 5 gadgets to integrate; however there is a process flow which is contained below
The Search Gadget
This is the gadget which is on the homepage of the website. This is the main call to action on the homepage of the website and should be front and centre so the website user knows that bookings can be made on the site. The documentation for the search gadget is found here.
WA Holiday Guide
Hobart Travel Centre
The Region Gadget
The Region Gadget displays a list of properties produced by a search. This includes one type of product grouped together. For example, Accommodation, Tours, Car Hire, or Events.
Examples have been included below: Discover Renmark
WA Holiday Guide
WA Holiday Guide
Parameters can also be set in the javascript code that interacts with this gadget. This can include things such as: the default sort order, types to display, number of nights, and number of people.
The Gadget documentation for the region gadget can be found here
The Item Detail Gadget
The Item Detail Gadget is the gadget which sits on the operator page. This gadget shows the operators Bookable product. If the operator is not of a Bookable type then a gadget is not required on the operator page.
Examples have been included so you can see how these are displayed on the operator page, included with the operator content
The Gadget Documentation can be viewed here
The Booking Gadget is where the customer enters their customer and credit card details. Please note there is no staging option available of this gadget. If you wish to make a test booking, the destination will need to provide a test operator and live credit card details.
This gadget must be included on https and only allows for minimum interactions through javascript.
The documentation on this step can be found here
The Confirmation Gadget
The Confirmation Gadget is the page that notifies you of your bookings success and provides a PDF summary of their booking. From the previous gadget, you could direct users to your own confirmation page if required.
Please ensure you read all the supplied documentation through carefully before requesting assistance in managing beGadget functionality for your development. There is an allocation of time included in the beGadgets licence for technical assistance, however this does not extend to items that are already documented. Assistance provided for elements clearly documented may incur charges.
Examples
The "beGadget" (Bookeasy Gadget) is the 'out-of-the box' booking engine that can be integrated and styled on destination websites.
The gadgets leverage the data provided via Bookeasy's API.
The beGadgets come with a generic/standard styling that can be restyled using CSS. There are 5 main gadgets that make up the process of a booking, each with their unique specific function. Each gadget also includes a number of "parameters" that can be introduced in order to enhance the user experience.
The Search Gadget
Simply put, this is the gadget that can "kick off" a search, generally found on a homepage and other generic pages.
The Region Gadget
This is the gadget that displays search results for all tourism operators of a specific category (i.e. accommodation/tours). Search results are either displayed as a direct result of search parameters entered via the Search Gadget, or due to default parameters set for when a guest lands directly on this page.
The Item Details and Cart Gadgets
The Item Details Gadget displays a tourism operator's specific product, and also allows the guest to add a product item to the shopping cart. As a result, the Item Details gadget requires the presence of the Cart Gadget, which is the gadget that can display items in a guest's shopping cart.
The Booking Gadget
This is the gadget that summarises a guest's cart items and allows them to finalise their sale by entering in their personal information and credit card details.
The Confirmation Gadget
If used, the Confirmation Gadget is a gadget that allows for the display of a a summary PDF and "thank you" messaging.
Best practice for the beGadgets
- Position the Search Gadget in a prominent position within the first fold of the homepage, ensuring a strong and clear 'call to action'
- Implement a Search Gadget on most if not all pages within your site (this should always be within the first fold of the page to attract action).
- Ensure the beGadgets are styled to best complement your site's theme (I.e. filters pane, action buttons, styling, borders, colour palette, etc) to provide a seamless experience for your users.
- Default the Results Gadget's sort order to 'Instant'. I.e. Gold Operators over Request Based. This will entice real-time bookings from your consumers, and will entice your Operators to transition from '24hr' to 'Instant'.
- Operator Profiles should not display the Operator PHONE | EMAIL | WEBSITE details if they have bookable product. Doing so is proven to be a large hindrance for a destination to generate online bookings. If required, we strongly suggest these details require an action to prompt their display.
- Ensure the operator pages are clear, informative, and have the Items Gadget located in a prominent position on the page, as with operator imagery (which is a proven feature to selling more). We also advise that you load SEO friendly URLS Eg. www.bookeasy.com/operator-name and avoid having URL's like www.bookeasy.com/page/subpage/pagename.aspx#/accom/1234
- Set your site's default search nights to 3, 5 or 7 depending on how they render. This produces a 'grid view' that is deemed industry common. Doing so should entice longer stays, as well as generate more bookings due to increased transparency.
- Be wary of other elements such as 'Site Search' and 'Business Directories' when integrating the booking engine. It is imperative to avoid duplicate Operator Profiles and ensure a seamless user experience.
- To ensure the beGadgets propagate on your website, ensure that you redirect your website's non-www domain URL to the www domain URL (or vice versa, depending on which domain URL version you have been provisioned a beGadget Authorisation Key for). For example, if beDigital has provisioned a beGadget Authorisation Key for www.yourdomain.com, ensure that you redirect yourdomain.com to www.yourdomain.com. If you don't, then anyone landing on the yourdomain.com version of your website will not see the beGadgets displayed and will be unable to make bookings. This will also assist your website's SEO and search engine indexing.
Recommended Parameters
showAll
showAllAccom | showAllTours | showAllEvents should be applied to both the REGION and ITEM Gadgets.
This should be applied so in the event that a user visits an operator profile directly, or further inspects an operator that does not have availability for all dates selected, they will not see the message: Sorry, no results match your search criteria. Please change your dates and options and try searching again.
bookingStatusThis is nice customisable feature that allows you to modify the default 'Sold' term to something more enticing to promote more bookings. Terms such as Enquire | Request | or even the VIC's Contact Number are encouraged instead of the default. Inline parameters
These are parameters that will enable the display of the operator's descriptions to show inline, rather than a hover, which is far more mobile friendly and strongly encouraged. This would be a default feature, however cannot at present due to some clients interpretation of the gadgets styling. Region:
• showRoomDetails: true
• showRoomDetailsInline: true
• showHoverInline: true Item:
• descriptionHovershow: true
• hoverInline: true showRoomDetails
At the Region Gadget level, you can apply a parameter that allows the user to view the Operator's product on the same page, rather than having to drill down to the Operator Profile and perhaps back again.
When applied, and should the user select Book Now against the product itself, the user will bypass the Operator Profile altogether and be taken directly to the Booking Gadget, meaning reduced steps to actually make a reservation.
If they want more information, the user can select the Operator Name and be taken to the Operator Profile as per the default process. To be deemed an optional feature, perhaps worth trialling initially or seeking a business decision.
Styling the Gadgets
Ensure the beGadgets are styled to best complement your site's theme (i.e. filters pane, action buttons, styling, borders, colour palette, etc) to provide a seamless experience for your users. One of the primary advantages of inserted gadgets such as these is that you, the implementor, can use CSS on your site to change and mould the appearance of the gadgets to suit your site. The majority of styling requirements can be achieved only using CSS. There are also a number of alternatives for those with more complex needs. beGadgets are highly customisable by using only CSS styling. Responsiveness can be achieved in the same manner as Bootstrap, by using the same breakpoints (eg. http://getbootstrap.com/css/#grid-options To make it easy to figure out what CSS selector you need to address a particular part of a gadget, make a test page, then use Firefox and the add-on Firebug (the HTML tab). This tool is invaluable for figuring out what the DOM looks like after the gadget is running. Chrome, Safari, Opera and IE also have good developer tools. We've created a sample CSS file that highlights the things you may want to re-style. This file is primarily a guide and only covers a few elements in each gadget, so if you're looking to restyle something that isn't in this file, check above for developer tools. You can download the sample css file here: View sample gadget restyling CSS file If you wish to create your own styling of the gadgets you can load the beGadgets with minimal CSS or no CSS at all and build your own styling from scratch. Simply insert the below script above your gadget insertion on the page. *Note we have included spaces at the start of the opening and closing script tags, so that they show on the page.
< script type="text/javascript">
BEcssOverride = "none";
< /script> Or < script type="text/javascript">
BEcssOverride = "minimal";
< /script>
Some samples of different beGadgets styling are below:
Echuca Moama
Parks Victoria
Discover Renmark
iSites New Zealand
Alluxia
Ministry of Villas
Building operator pages
Some examples of great operator pages can viewed below: Alluxia
Ministry Of Villas
Discover Central Australia
As you can see, these operator pages make great use of images and content and utilise the beGadgets to proceed with a booking.
We would also recommend that you ensure that clients are sure of the design of the operator pages before proceeding with the development.
To pull data from Bookeasy you will require to call the Bookeasy API. This has been covered in detail in this documentation.
Requirements using API
If you are unsure which VCID to use, consult Impart Media
If you are unsure about the WebAPI, ask Impart Media and we can supply a key
The WebAPI key should be used by making a GET request to a WebAPI HTTPS url, supplying the key in a header, e.g.
curl -X GET --header 'Accept: application/json' --header 'apiKey: 7edd898e69a14170b469fbf1eea98d41' 'https://webapi.bookeasy.com.au/api/getAccomAttributes?q=4'
Note: if you are using PHP, see an example of this in our Sample Web API class
https://webapi.bookeasy.com.au/swagger/index.html > Visitor Centre > getVcOperatorIds
This call will get you a list of all the latest active / bookable operators in your system for that ID. You can use this to determine if there is a new operator or an operator has been removed as well.
Step Three: Check for modified dates
https://webapi.bookeasy.com.au/swagger/index.html > Operators > getOperatorModDates This call will give you a list you a list of operators that have had their images / static data changed. This data will also need to be stored in your system, so you can pick up changes. The date format should be amended each time you poll for a list of updates.
We also suggest polling Bookeasy for changes to the data.
Polling for changes can be done every 10 minutes or so. This will mean that your static data will be 5 mins or so out of date. That being said static data very rarely changes and we have some VC's that only poll once a day without issue.
Step Four: Obtaining operator data
https://webapi.bookeasy.com.au/swagger/index.html > Operators > getOperatorsInformation (Cap at 15 per string)
We ask for capping the amount of data in the string due to the potenital size this call can be. If this is a major problem you could try to use the following call.
https://webapi.bookeasy.com.au/swagger/index.html > Operators > getOperatorsDetailsShort This call is much faster, however, contains less operator information than is contained in the full report.
ATDW Integration
If the centre wishes to use ATDW operator content on their website, this is possible via a direct ATDW integration. The client will need to become a ATDW Distributor and sign an agreement.
It is possible to code directly to the ATDW API to pull content. The client will need to provide ATDW with a list of operator IDs and operator names from Bookeasy.For further information on this, please speak with ATDW directly.
Getting the Site Live
Once you feel the development has been completed, please submit the certification form. Please note that this form must be submitted no later than 10 business days prior to your intended release date.
Click here to complete the form.
Help and Support
If Impart Media developers need to investigate external code due to errors, this time will be charged to the enquiring digital agency. Developer time is charged at $170 per hour.
To get in touch with us please email support@impartmedia.com or call 07 5668 2543