Contracts with Tоur Operators (TOs)

Modified on: Wed, 15 May, 2024 at 8:45 AM


The specialized module 'Contracts with TOs' is aimed at easing the price calculation in contracts with tour operators. Each contract is entered into the profile of the Company it refers to. This module requires the 'Vouchers' add-on activated for your subscription.

The contract has two main settings - 'Conditions' and 'Rates'. The first part covers the pricing conditions as they appear in the contract. The second part involves configuring how these conditions can be applied in bookings as selectable rates.


Each contract is associated with one Company, and the prices in that contract are in one currency only. Furthermore, each contract needs to have a name defined (e.g. TO-X-SUM22). These fields are required.

Defining the pricing conditions of the contract is done through the following categories: Room Types and Boards, Seasons, Age Groups, Base Positions, Extra Boards, Specific Accommodation, Free Nights, Price Discounts, City Tax.

City tax

For each contract, you can choose whether to add City Tax or not. Select the value in the contract name section. The possible options are in accordance with the standard settings:

  • As an additional, separate charge for each day.
  • No additional charge - no separate charge will be made, but a separate text will be visible in the documents describing the amount of City Tax included.

Room types and Boards

For each contract, you must specify the room and board types which it includes. Here you can set the room types and boards according to the terminology of the Tour Operator - as they are written in the contract. Using this terminology you have the following advantages:

  • The services on the invoice you provide to the Tour Operator will carry the terminology of the contract. This will make it clearer for the Tour Operator to interpret. For example, instead of having the PMS+ name of the room type, you can have the one set in the contract - e.g. DBSV. The same applies to meals (boards).
  • According to one condition of the contract, you can accommodate in different room types. For example: in the contract you can have one price for 'Double', which you can link to several different room types - 'Double Sea' and 'Double Park'.

Fill in the room types and boarding rooms in the upper left part of the contract.

In the example above, we have created two Room types - DBL and APP and 3 Boards - RO, BB, HB. 

All names are set as they are indicated in the actual contract.

Age groups

If the contract contains different prices for children, you need to define one or more age groups. For example: you can enter two groups - 'Children under 2' and 'Children under 12'. Use short but clear text for the group name. This text will appear in the charge description if it relates to a child. For each age group you must state the maximum age it covers. For correct calculation of prices, you need to fill in the age of the children in each booking.

In the example above, we have created 2 Age Groups - Infants with max age 2 and Child with max age 12.


Define the seasons in which you have different room prices. Give each season a short name and add the periods it covers. You can add multiple periods within a season. The periods of the seasons cannot overlap.

In the example above we have created 3 seasons - Low, Mid, High. However, the Low and Mid seasons span over two different periods each.

Base Positions

For each room type, set base prices for the seasons you have defined.

  • Board - select the board to which the base price applies. Start with the lowest board from the contract. For the prices of the other Boards, see the Extra Boards section below.
  • Price per Room or Bed - specify whether the prices you set in the base item apply to the entire room or to each guest (bed).
  • If you select 'Price per Bed', you can fill in different prices for each of the children's age groups. You can set the prices for children as a fixed amount, but you can also use a percentage discount from the base price.
  • Select the Charge Template if you wish to specify all the charge fields for this base item - Revenue Group and Category, Tax %, Additional Fields, etc. If you selected 'Price per Room' you will have one charge for each day, if you selected 'Price per Bed' you will have a separate charge per guest for each day.
  • Adjustments may be applied to the base rates set for different combinations of adults and children. See the Specific Accommodations section below for more information.

In the example above, we created a Base position for:

  • Room type - DBL
  • Board - RO
  • Price per bed
  • Prices for Adults - 45 in Low season; 50 in Mid; 55 in High
  • Price for Infant - 100% discount in all cases
  • Price for Child - 20% discount in all cases

This indicates that the base pricing for the DBL room type is for RO board. If there is a supplement option for BB or HB, it needs to be added as an extra board (see below).

Furthermore, we've created a position for APP as well, however, the base board is BB. This essentially means that in our contract with the TO, this is the 'lowest' board on offer for the APP and the only possible supplement is HB.

Extra Boards

Define here the prices of all other boards from your contract. If the base item is for a particular board, this means that it is included in the price and the calculation will not go through this section.

For example: you can have base items with different boards - DBL/RO and APP/BB, and a line in the Extra Boards section for BB. This means that the price of an APP room includes the BB and the price of a DBL room does not. The calculation for DBL will look up the price for BB from the row in the Extra Boards section.

For each row:

  • Select the board. If the Board is not listed, first add it in the Room Types and Boards section.
  • Prices for the Boards are set for each season. The price applies to each of the guests. Enter prices for an adult and each of the children's age groups.
  • Charge template - select a template to define the parameters to be used for the posting of this board. A separate charge will be created for each of the days and guests. The charge text shows both the name of the board and the age group of the child, if the charge is for a child.

Specific accommodations

Here you can define conditions to change the base price as well as the price of the Extra Boards. You can specify specific combinations of adults and children, as well as the position of the guest in the room to which the adjustment applies.

Tip: If you have single type discounts on various room types, you can describe them on a single row, enlisting all room types the discount refers to. For example, the third adult always pays 80% of the price for the main bed. This way, you can reduce the number of the rows being entered.

  • Text - The entered text will be added to the charge text to make it clear how the price of the night was formed.
  • Room type - which room type the condition applies to. The field is required, allows you to select more than one type.
  • Adults and children - What combination of adults and children the condition applies to. Required fields.
  • Which age group the condition applies to - adults or children of a specific age group. Required field.
  • To which guest in turn, whether adult or child, the condition applies - If left blank, the condition applies to all guests in the selected age group.
  • Prices or Discounts by Season - If you fill in a value, it will replace the price from the base item. If you fill in a percentage, it will be treated as a discount from the base price.
  • Accommodation Prices/Discounts - Only activated if the base item is defined as "Bed Price".
  • Prices/Discounts for Extra Boards - If the guest's board is calculated from the Extra Boards Table, this amount can be adjusted by specifying a fixed amount or discount.

In the example above, we created the following specific conditions:

  • For room type DBL we have set -50% discount on the price per night for a child staying with 2 adults. Discount for extra board is not set.
  • For the APP room type we have set different prices for the nights by season for the 4th and 5th adult. We have also added a -20% discount for extra board.

Free nights

Here you can define in which cases the reservation has free nights. You can specify how many and which days are to be free - those at the beginning or end of the stay.

  • Text - The entered text will be added to the charge text to make it clear how the price of the night was formed.
  • Filters - Which bookings the free nights apply to. Define the necessary filters, you can combine between minimum and maximum stays, room types, multiple periods for the voucher issue date, arrival date of the reservation, as well as a period in which the booking has at least one night (In Hotel).
  • Free nights at the beginning and/or at the end of the stay - You can fill in both fields. The price of the nights and boards, for the selected days, will be 0.
  • The free nights do not affect the city tax, if you have chosen to be charged one.

In the above example, we have created a 7=6 condition:

  • We have defined that the stay must be exactly 7 night through the Min/Max options.
  • Applicable to both room types part of the contract.
  • Applicable to reservations with voucher dates between 01 Jan and 31 Mar.
  • No restriction on when the arrival must be.
  • We indicated that the first night will be the discounted one.


Define any other discounts you provide on bookings.

  • Text - The entered text will be added to the charge text to make it clear how the nightly rate was formed.
  • Filters - Which bookings the discount applies to. Define the necessary filters, you can combine between minimum and maximum stays, room types, multiple periods for the voucher issue date, the arrival date of the booking as well as a period in which the booking has at least one night  (In Hotel).
  • What to Discount - Accommodation and/or Extra Boards.
  • Apply to - you can specify to which nights of the stay of these bookings the discount to be applied. Only the nights falling in the period are subject to price reduction.
  • Two methods for discounting are supported: 'Without accumulation' and 'With Accumulation'.

    • Without accumulation will calculate the discount on the base price calculated to date, without taking into account any other discounts applied. 
    • With Accumulation will calculate the discount by first subtracting the previously applied discounts and applying the discount percentage to the resulting amount. In this model, the consistency of the discount calculation is important, because each successive discount depends on the previous calculations. The sequence of discounts is determined by the 'Order Number' field
  • Discount percentage - set the % of the discount.


In the first part we looked at how to set the price conditions of the contract. In this part, we'll look at how to represent the contract as rates that can be selected in bookings. Save the contract and select the 'Rates' button (top right). For this step it is sufficient to have entered the room types and boards in the "Room Types and Boards" section. Based on these, the system will offer you the combinations of products (rates) to be created.

You will see a table in which all the room types and boards from the contract are combined. If the table is empty, it means that in the 'Room types and Boards' section of the contract, the necessary data have not been filled in. To create the rates, you have the following options:

  • Leave the 'Make suggestions on adding rates' check box selected and click 'Auto Add Rate'. The system will attempt to automatically create the correct rates, taking into account factors such as: previous contracts, common terms for the name of the boards, and matching room type names.
  • If the automatic option does not work well in your circumstances, do not use 'Make suggestions on adding rates'. The system will add rates for all blank items, and you must select the Room Type, Meals and Name of each rate.
  • You can use the '+' button to add a rate for a specific Room Type/Board combination. As a reminder, you can add multiple rates against a single Room Type/Board combination from the contract, for example for different room types (Double Sea/Double Park situation).
  • You can delete a rate by clicking the '-' button. This way it will not be selectable in the reservations. If the rate is already used in a booking, it will be deleted and removed from the booking.
  • With the 'Stop' button you can stop the rate from being sold, but keep it as available.

For each combination of room type DBL / Board, we have added up to two rates. We have created one rate for each of the double room types in a Double Park/Double Sea hotel.

Unsynchronized rates

If you have created rates for Room Types and Boards, and subsequently, remove such room type or board from the contract pricing conditions, a new section will appear with the rates for which there are no pricing terms. You can delete, stop or move such rates. With the Move button, you can select a new combination of room and board type to which this rate applies.

Save your changes once you are done with the rates.

In the reservations, select the Company (tour operator), Room Type and Meal. In the list of fares, the corresponding rate combination will be suggested. There can be more than one suggestion, in the case of the Double Sea/Double Park situation.

Copy contracts

You have the option to copy the conditions of your contract and create another one very quickly. This could be due to creating a contract with the same company for the new season or creating a contract for another company that has the same/similar conditions. At the bottom of the page, use the 'Save as copy' button which will open a window in which you can enter the new contract name and select the company.

Important: Only 'Conditions' are getting copied. 'Rates' are not being copied. Once you have created the new contact, edit it to create the new 'Rates'.

Contract Archiving

After the contract period has expired and you will no longer be using the associated rates, you can archive it. To do this:

  • From the navigation menu, select Settings -> Rate Plans;
  • From the bar at the bottom of the screen, choose More -> Rate Plans;
    Find the rate plan that matches the name of the contract and archive it.

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.

On this page