TourCMS, a leading online booking and channel management solution is operated by Palisis.

Contact Info

Palisis AG
Florastrasse 18A
8610 Uster
support@palisis.com
+41 44 533 40 40

Follow Us

home > marketplace > Viator



www.viator.com

Overview

Viator, a TripAdvisor company, is one of the worlds largest distributors of tours & activities. They contract directly with Suppliers for their offerings on Viator.com and their other websites.

If you are not currently a Viator Supplier, please complete Viator's New Supplier Survey (Viator's New Supplier Survey) and enter TourCMS under the reservation system section. Viator will review your submission and reply as appropriate if they are interested in adding your offerings to Viator.

The TourCMS connection to Viator:

  • Gives Viator access to your TourCMS availability
    When you close in TourCMS and it closes on Viator
  • Enables Viator to ask TourCMS "Can we sell XYZ on this date"?
    If TourCMS says no, Viator won't sell it
  • Receives bookings from Viator into TourCMS
    No more entering bookings yourself manually. This also immediately reduces your remaining availability on that date

Tour descriptions, images, prices and contract terms are not handled by Viator API at this time and so are not impacted by this TourCMS/Viator capability.

Note: TourCMS works with Viator using departures (in TourCMS), not freesale or hotel product types.


In more detail

Voucher redemption

The TourCMS voucher redemption validation tool (within the operational TourCMS ipad app) can scan Viator vouchers and confirm validity

Pickups

Viator do not send the time of selected hotel pickup so we have to currently bring a pickup as a pickup request rather than mapped to a route & time. This will likely be reviewed (by TourCMS and Viator) in the future.

An alternative, if you have a short list of hotel pickups, is that you can use tour grades; one tour grade per pickup point. These pickup points can have times. Probably only useful if you have five or fewer hotel pickup locations.

Cancellation

In most cases where Viator cancels a booking it will be automatically cancelled in TourCMS, TourCMS will also email / SMS any staff configured to receive booking cancellations

In some edge cases Viator Customer Service staff may still choose to send cancellations separately, additionally some legacy Viator systems are unable to send cancellations via API. In these situations Viator will send a cancellation notice via email which will need to be handled manually.

A booking cancelled in TourCMS does NOT automatically cancel in Viator. Please contact Viator customer services to initiate a cancellation and customer refund.

Adding & removing dates

Viator check every 12 hours for newly created / newly opened dates however a closing a date in TourCMS immediately takes it offsale on Viator.

Viator only tours

Tours set to Private in TourCMS can be mapped in Viator as with any other tour, there is no difference. This means you can have a tour bookable on Viator that is not in the TourCMS API

Importantly, this means that it is not possible to switch a tour off on Viator simply by setting it to "Private" in TourCMS, instead you should contact Viator and amend the mapping.

Troubleshooting

To see more information on exactly what Viator are sending go to the Audit trail on a booking in TourCMS, there you can see the full XML that Viator sent.


Setup

Project process

  1. You have a commercial deal with Viator to distribute your products via them (See information about becoming a new supplier, above)
  2. Contact TourCMS support saying you wish to route to Viator via TourCMS. If you have multiple channels please do also state which channel you would like to use
  3. TourCMS will request your API key and tour spreadsheet file from Viator Sydney office (not market managers) and connect your channel to Viator in the TourCMS Marketplace
  4. TourCMS will provide you with the Viator spreadsheet and ask that for each Viator tour you update the spreadsheet to add the correct TourCMS "Tour code" that should be used to connecting the two
  5. TourCMS will then set up the logic to map "slot" to "slot" (i.e. start time, transfer zone, lunch type, language of tour guide etc) using the logic explained at the bottom of this document, completing the Viator Excel document
  6. TourCMS will ask you the tour operator to check configuration
  7. Once checked, TourCMS will send to Viator (Sydney) who will configure on their end and go live

This process can take 3-10 days, largely depending upon how many tour you have, how complex the mapping is and - as there is some communication back and forth - where everyone is based timezone wise.

Important notes

Channel choice impacts:

  • Tour list (the tours Viator are selling)
  • Bookings will come in via this channel
  • Prices (when Viator start to take prices)

Exchange rate: Do ensure that there is an exchange rate configured in TourCMS for the currency that your you agreed commercials with Viator. i.e. if you have agreed terms in USD but you are trading in EUR, TourCMS needs to know your desired USD to EUR exchange rate

Travel agent connection: The bulk of the connection will be configured by TourCMS support, however you must ensure you leave the Viator agent as a Trusted travel agent so bookings come in immediately confirmed.

Email

  • Tour operator notifications (sent to you) - When Viator turn on sending to receive new bookings via API, they will no longer send new booking notifications to you via email. Add your email address to the Viator configuration screen (In TourCMS) to receive an email that is similar to the one Viator previously sent. Or if you just want the booking to appear in TourCMS (no notification), leave the field blank. NOTE all regular TourCMS notifications (flags) can be set just like any other bookings - e.g. SMS, Email, Flag - however that functionality does not distinguish between a Viator and a non Viator booking
  • Customer notifications (sent to your customers) - TourCMS has globally turned off the Viator travel agent from sending new booking notification emails TO YOUR CUSTOMERS. This is because Viator will send an email to your customers (sent via their own system), rather than you, and we don't want the customer to receive two emails at the same time

Product mapping

If you haven't done so already please do contact TourCMS support to kick off the mapping process.

Show/Hide product mapping detail

Mapping TourCMS tours against Viator tours is where most time for configuration will be needed

Primarily you configure a Viator product code on tour setup (per tour) on the operations/suppliers tab. (The field will only show if you have already set to configuration mode - in configuration & setup). TourCMS now knows what your product code is in Viator and what it is in TourCMS

If you follow the link to your tour availability overview page (from within the Viator Configuration & Setup section in TourCMS), an additional column shows the Viator product code. This can be helpful to see an overview as to what you have already configured. Once you have followed that link, the page retains that column for the duration of your login session

On rate tab (in tour setup, per tour), you can set the age categories for each rate. TourCMS supports all the Viator age bands (Adult, Youth, Child, Infant)

One start time per day (for a single tour)

TourCMS ideally wants to map 1 tour in Viator to 1 tour in TourCMS. If this is the case (e.g. you have just 1 departure per day) then put the Viator product code into TourCMS tour setup. You are finished

Multiple start times per day (for a single tour)

For tours where you have multiple departures per day, configuration is a little more complicated

Mapping to departure times: Viator can send requests for a certain time (e.g. 11:00AM). IF you have configured times in TourCMS per departure then we can use them to map against the time requested by Viator. In the product code box in TourCMS place SupplierProductCode|MAP_TIME where SupplierProductCode should be the Viator product code for the tour. [Technical note for Viator support: This maps to DepartureTime as an option]

Mapping to departure codes: Viator can send a SupplierOptionCode in their availability request. If (by chance) you have used these codes as your departure codes (in TourCMS) then we can map them directly. In the product code box in TourCMS place SupplierProductCode|MAP_SUPPLIER_OC_TO_DEPARTURE where SupplierProductCode should be the Viator product code for the tour

Mapping to supplier note: Viator can send a SupplierOptionCode in their availability request. Ideal if you are configuring language specific departures and need to map specifically to an individual departure on day, by language (Generally the supplier note in TourCMS is not shown to customers, unlike departure codes). In the product code box in TourCMS place SupplierProductCode|MAP_SUPPLIER_OC_TO_SUPPLIER where SupplierProductCode should be the Viator product code for the tour

Mapping to supplier note AND time: Similar to Mapping to supplier note above however TourCMS will additionally provide Viator with times, and filter booking requests by time. In this case use the following in the box in TourCMS: SupplierProductCode|MAP_SUPPLIER_OC_TO_SUPPLIER_PLUS_TIME where SupplierProductCode should be the Viator product code for the tour

Hopefully one of the solutions above will work for you. If not, ask TourCMS support for advice

Before you go live, each of your tours will be tested by Viator to confirm that the correct mapping is in place

Generally TourCMS will do the initial configuration. Subsequent adjustments (e.g. adding new tours) can be done by you or TourCMS

Edge cases

1 Viator tour code, multiple tour grades (On Viator) - Viator can sometimes setup 1 tour on Viator (with just one Viator tour code) that is several tours in your TourCMS account. In this situation, configure the REAL TourCMS tour level code as the supplier product code, rather than the Viator tour code

Several tour grades sharing the same availability - Sometimes you may have a tour with several Viator tour grades where the grade doesn't distinguish availablity. E.g. you could be using the tour grade to let the customer choose a hotel pickup location (if you have only a few start points). You may need this information operationally. The difficulty is that Viator will not send through the tour grade code data (at point of booking) UNLESS it is also sent at point of availability. If sent at point of availability, TourCMS will try to use it, and if no mapping exists, return no availability. The solution is that at the point the tour mapping takes place, Viator/TourCMS creat an additional value pair. This will be sent to TourCMS at point of availability (but ignored) and also sent to booking (and can be used for operational reporting)

Cruise shore excursions: Some tours are in Viator as a duplicate of existing tours, generally where they have been rewritten to work as cruise shore excursions. Viator will send availability requests and bookings as the original base tour, not the cruise shore excusion version of it (DO tell Viator that this is the case)

Combo tours (created by Viator): Occasionally Viator creates a 3rd tour as a combination of two existing tours. Currently the only TourCMS solution to this style is to create a 3rd tour in TourCMS as well

Upgrades: Viator is currently concerned with availability & bookings (not prices), so if an upgrade has the same availability as the base tour, even if Viator has created a second tour in their system, this should be OK in TourCMS

Viator specific tours - If you have a tour that you only give to Viator (and no one else), the tour may be set to PUBLIC or PRIVATE (rather than DISTRIBUTED). This will remove the tour off your own website. Viator will still be able to book it. CAUTION: Do not do this if its a duplicate tour such as a shore excursion (i.e. a second tour in Viator, that is the same as a tour already in your TourCMS account). Those situations can be fixed via mapping the second Viator tour to the single tour in TourCMS.

On request tours - Viator advise that "on request" tours should not be managed via their API