Access Keys:
Skip to content (Access Key - 0)

New Online Tariff – Configuration Guide

Product Version: 3.00.000
Document Version: 1
Last Updated: 21 December 2012
Author: Craig Gray

This guide will help you to …

  • Understand what the new Online tariff provides
  • Configure the new Online Tariff within your webConnect ODP site

Overview

webConnect ODP has always had an Online Tariff. However the new version of online Tariff released with Tourplan V3 has some major enhancements including:

  • A new style of tariff output that groups data by supplier. For example:

Supplier 1

Product 1
Product 2
Product 3

Supplier 2

Product 1
Product 2
Product 3

  • The ability to output both supplier level and product level notes on the Tariff
  • Search across all service types
  • Output of supplier address and contact details, plus analysis fields
  • Integration with supplier level More Information page
  • A revised excel export function which creates:
    • A separate worksheet for each supplier
    • An index page of suppliers with hyperlinks to the above

Installation:

Your local Tourplan helpdesk will install the new Online tariff component for you. Please liaise with your Tourplan helpdesk team to arrange installation.

The new online tariff can co-exist alongside the current version, however it is expected that the new online tariff will ultimately replace the current one. Whilst you are configuring the new tariff you are able to continue providing the current version to your agents until ready to 'go live' with the new version.

 

Pre-Requisites

New Online Tariff is a part of webConnect ODP, thus requires either 'Distribution Edition' or 'Enterprise Edition' of Tourplan Version 3 and above.

Configuration

Turning the new Online Tariff On

The original Online Tariff still exists. This new Online Tariff is additional rather than superseding the original, and is also referred to as 'Product Tariff'. In the …/site/webConnect.config file there is a new entry which turns on the new online tariff

                add key="enableProductTariff" value="Y"/>

 The Product Tariff menu item will appear in webConnect under Online Tariff:

Search Filters

In the new Online Tariff there is now the ability to search on All service types in the drop down.
All other search filters remain the same as previous versions. 

The Online Tariff Template

The layout for the new online tariff is mainly contained with the 'ProductTariffTemplates.xml' file, which is found in the site folder of your webConnect ODP instance.
There are many similarities to the original Online Tariff however there are additional mapping entries for supplier details and notes, and also new sections to configure these.

The sections below describe the new functionality in the new Online Tariff only. Please also see:

  • Appendix A for a full table of configurable items in the online Tariff (including this new V3 version)
  • The associated Sample Product Tariff.xml files also available in the myTourplan knowledgebase.

 

Supplier Info Section

The Product Tariff is designed to display Supplier details at the top of the Tariff including address, phone, fax and supplier analysis codes. This is configured in rows and columns and can include text output to label the fields. Also, the supplier name can be hyperlinked to open a supplier level "more information' product content page.
An example is below:

    <TariffResult>
      <Table>
        <InfoSection>
          <Row>
            <Column colspan="16">
              <Info name="suppliername" link="generatesupplier" />
            </Column>
          </Row>
          <Row>
            <Column colspan="2">
              <Text name="label">Address:</Text>
            </Column>
            <Column colspan="6">
              <Info name="supplieraddress1" inline="true" suffix=", " />
              <Text inline="true" >-</Text>
              <Info name="supplieraddress2" inline="true" suffix=", "/>
              <Text inline="true" >-</Text>
              <Info name="supplieraddress3" inline="true" suffix=", "/>
              <Text inline="true" >-</Text>
              <Info name="supplieraddress4" inline="true" suffix=", "/>
            </Column>
            <Column colspan="2">
              <Text name="label">Rating:</Text>
            </Column>
            <Column colspan="6">
              <Info name="class"/>
            </Column>
          </Row>
          <Row>
            <Column colspan="2">
              <Text name="label">Tel:</Text>
            </Column>
            <Column colspan="6">
              <Info name="supplierphone"/>
            </Column>
            <Column colspan="2">
              <Text name="label">Chain:</Text>
            </Column>
            <Column colspan="6">
              <Info name="supplier3"/>
            </Column>
          </Row>
          <Row>
            <Column colspan="2">
              <Text name="label">Fax:</Text>
            </Column>
            <Column colspan="6">
              <Info name="supplierfax"/>
            </Column>
            <Column colspan="2">
              <Text name="label">Location:</Text>
            </Column>
            <Column colspan="6">
              <Info name="locality"/>
            </Column>
          </Row>
        </InfoSection>
      </Table>

NOTE: link="generatesupplier" (row 6 above) can be removed if a Supplier ‘More Information’ page isn’t being used.


 The result of this configuration is below:

 

Option Info Section

The option section is similar to the original Online Tariff with some additional items in the info section.
The column section below hasn't changed, the configuration is based on which columns to output onto the tariff and their corresponding heading names:

<Options>
<TariffTemplate servicecode="AC" ratetype="room">
          <Table>
            <Heading>
              <Column id="1" type="name" heading=" " />
              <Column id="2" type="minscu" heading="Min Nights" />
              <Column id="3" type="staypay" heading="Stay/Pay" max="10" separator="/"/>
              <Column id="4" type="single" heading="Single" />
              <Column id="5" type="twin" heading="Twin" />
              <Column id="6" type="double" heading="Double" />
              <Column id="7" type="triple" heading="Triple" />
              <Column id="8" type="quad" heading="Quad" />
              <Column id="9" type="blank" heading="" />
              <Column id="10" type="generic" heading="Cancel Hours" map="cancelhours" />
            </Heading>
 The result of this configuration is below:

You can also output the following fields in the option info section

     "RateName"
     "RateText"
     Fields access via a path using type="generic" (refer to Appendix A for further details)

Outputting Notes

The Option Infosection now has the ability to output notes.
To do this enter the mapping for the note into the mapping section of the template. Use the variable below where the "map name" is the code to be used in the tariff configuration and the note category is from Codemaint (ensure that the note category has been internet enabled)
Eg:

 <Map name="MaxOcc" path="OptionNotes/OptionNote/NoteText" noteCategory="MAX" />
<Map name="Units" path="OptionNotes/OptionNote/NoteText" noteCategory="NOU" />
<Map name="TarifNote" path="OptionNotes/OptionNote/NoteText" noteCategory="REM" />

In the Option Info section these can be configured to display above or below the tariff table with a corresponding label along with other relevant fields.
Example:
 These fields will displayed above the tariff rates table for a product.

<InfoSection>
          <Row>
              <Column colspan="3">
                  <Info name="description" link="generated"/>
              </Column>
               <Column colspan="3">
                  <Text>No of Units: </Text>
                   <Info name="Units"/>
              </Column>
                  <Column colspan="2">
                  <Info name="optcode"/>
              </Column>
          </Row>
</InfoSection>

And these field(s) will display below the tariff table: 
 

<Detail>         
        <Info name="MaxOcc" label="MaxOccupancy: " inlinelabel="true" inline="true" collapsible="true"/> 
</Detail>

  In our example print screen above the Max Occupancy Label and note is shown below the tariff for each product…

Supplier Notes

Supplier Notes can be displayed at the bottom of the Product Tariff after all option information has been displayed.
These work in the same way as option notes. Create the mapping as below where the map name is the code to be used in the tariff configuration and the note category is from Codemaint (ensure that the note category has been internet enabled).
E.g.:
 

<Map name="cancelnote" path="Supplier/SupplierNotes/SupplierNote/NoteText" noteCategory="C4E" />

Then add the following to the base of the template:

 

<Map name="cancelnote" path="Supplier/SupplierNotes/SupplierNote/NoteText" noteCategory="C4E" />

 Then add the following to the base of the template:

 

<Detail>        
    <Info name="childpolicynote" label= “Child Policy: “ collapsible="true" />
</Detail>
<Detail>           
    <Info name="cancelnote" label= “Cancellation Policy: ” collapsible="true" />
</Detail> 

 

   

Export to Excel

The Excel export of the Product Tariff contains an index page and worksheet per supplier for ease of use. 

There is no configuration required for this as it will adopt the configuration of the Product Tariff itself. However, you can customise the output on the index page in your template file.

<ExcelOutputTemplate>

  <FileName value="ProductTariff.xls" />

  <IndexTabTemplate indextitle="Confidential Rates" headingBackground="#EEEDE9" >

    <Column name="Hotel Room" maptopath="supplierlink" />

    <Column name="Class" maptopath="class" />

    <Column name="Location" maptopath="location" />

  </IndexTabTemplate>

</ExcelOutputTemplate>

 

It is possible to add more columns to the index page by adding more <Column>-elements. The value in “maptopath”-attribute has to be defined in the <Mapping>-section, see Appendix A – Config.


Example below:



Clicking a Hotel name link on the Index page will show the worksheet for that hotel:

Appendix A: Full List of Online Tariff Parameters

The ProductTariffTemplates.xml and TariffTemplates.xml files are installed as part of the standard webConnect install and contain default settings which enable the Tariff to function without any immediate intervention. They can be edited with any text editor (eg Notepad or Wordpad).
Below is a list of parameters available in both the standard (current) Online Tariff (TariffTemplates.xml) and the new Online Tariff (ProductTariffTemplates.xml).

1. Config

This is the top section of the file in which the following can be customized:
Formats:

<Format name="date" value="yyyy/MM/dd"/>

Date format:
yyyy = Year
MM = Month
dd = Date
Examples: the default displays as 2010/04/30.
dd/MM/yyyy = 30/04/2010


<Format name="time" value="HH:mm:ss"/>

Time Format:
HH = Hour
mm = Minutes
ss = Seconds

<Format name="money" value="######0"/>

Money Format:
This defaults to zero decimal places.
Example: if cents are required:
value="######0.00"/>

Mapping:

<Mapping>
<Map name="supplier" path="OptGeneral/SupplierName" />
<Map name="optionId" path="OptionNumber" />
<Map name="optcode" path="Opt" />
<Map name="description" path="OptGeneral/Description" />
<Map name="comment" path="OptGeneral/Comment" />
<Map name="location" path="Opt" substring="0,3" />
<Map name="locality" path="OptGeneral/LocalityDescription" />
<Map name="class" path="OptGeneral/ClassDescription" />
<Map name="button" path="OptGeneral/ButtonName" />
<Mapping>

These settings display the name that has been mapped to the iCom name used in the Sorting/Grouping section. NOT TO BE CHANGED


Sorting <Config key="default">:

<Sorting>
<SortBy id="1" name="supplier" type="string" direction="ascending" />
<SortBy id="2" name="locality" type="string" direction="ascending" />
<SortBy id="3" name="class" type="string" direction="ascending" />
<SortBy id="4" name="twinSortRate" type="rate" direction="ascending" />

</Sorting>

Sorts the results into a particular order. The default is by supplier, locality, class, however any of the mapping variables (above) can be added eg optCode.
<Config key="default"> should not be changed
The id number represents the order
Can be sorted in "ascending" or "descending" order

Sorting by rate requires mapping to the desired rate, e.g. in the example twinSortRate would need to be defined as
<Map name="twinSortRate" path="OptDateRanges/OptDateRange[1]/RateSets/RateSet[1]/OptRate/RoomRates/TwinRate"/>


Grouping <Config key="default">:

<Grouping>
<GroupBy id="1" name="supplier"/>
<GroupBy id="2" name="locality" />
<GroupBy id="3" name="class" />
</Grouping>

                                                            

Groups the results into a user-friendly format. The default is by supplier, locality, class. I.e. It will group all options of the same supplier together and then group the same locality, and then the same class
Any of the mapping variables (above) can be added
The id number represents the order of the grouping


Sorting <Config key="searchall">:

<Sorting>
<SortBy id="1" name="supplier" type="string" direction="ascending" />
<SortBy id="2" name="location" type="string" direction="ascending" />
<SortBy id="3" name="button" type="string" direction="ascending" />
<SortBy id="4" name="locality" type="string" direction="ascending"/>
<SortBy id="5" name="class" type="string" direction="ascending" /> 

 
</Sorting>

Specifies the sorting required in the results when a particular supplier name is searched on and the entire database is interrogated across all service types
The default sorts by supplier – location – button – locality – class

Any of the mapping variables can be added to this list



Grouping <Config key="searchall">:

<Grouping>
<GroupBy id="1" name="supplier"/>
<GroupBy id="2" name="location"/>
<GroupBy id="3" name="button"/>
<GroupBy id="4" name="locality" />
<GroupBy id="5" name="class" />
</Grouping>
</Config>
</Configs>

                                                                 

Specifies the grouping required in the results when a particular supplier name is searched on and the entire database is interrogated across all service types

The default groups by supplier – location – button – locality – class.
Any of the mapping variables can be added to this list

2. ProductTariffTemplate Servicecode

This section is the main body of the Tariff Template which specifies how the tariff will be displayed per rate type and/or service code.

There are five rate types in the database, therefore as a minimum requirement Tariff requires the parameters for each of these. The Rate Types are set for each database option in the Cost Details screen of the Database module in Tourplan iS:

Room: All options with a service category of "Accommodation"

Apartment: All options with a service category of "Apartment"

Package: All options with a service category of "Package"

Pax: All options with a service category of "Non-Accommodation" and an MPFCU of 1

Group: All options with a service category of "Non-Accommodation" and an MPFCU > 1
An explanation of how to define these to display in the Tariff is below:

Room:

<TariffTemplate servicecode="default" ratetype="room">

This variable is specifying that it is for all database options with the rate type of "Room".
Alternatively, "default" can be replaced with a service code to break the room rate type down further.
Eg:
<TariffTemplate servicecode="AC" ratetype="room">
This example is including all database options with a rate type of room AND a service code of AC. There may be several different service codes used within the one rate type and a different layout is required for each. The "default" works as a catch-all for any service codes that don't have their own layout created.

<Heading>
<Column id="1" type="name" heading="Hotel/Room" />
<Column id="2" type="minscu" heading="Min Nights" />
<Column id="3" type="staypay" heading="Stay/Pay" />
<Column id="4" type="single" heading="Single" />
<Column id="5" type="twin" heading="Twin" />
<Column id="6" type="double" heading="Double" />
<Column id="7" type="triple" heading="Triple" />
<Column id="8" type="quad" heading="Quad" />
<Column id="9" type="blank" heading="" />
<Column id="10" type="currency" heading="$$" />
</Heading>

For each one of these variables:
Column id number: the column order
Type: The data field from the database
Heading: The label on the column. This can be renamed.

This is the default layout of the Tariff Template for room rate type. Any of these can be removed/re-ordered or re-labelled.
If a variable is removed the column id numbers should be adjusted to remain in sequence.

NB: Other variables can be added. Refer to Optional Variables on page 15

<InfoSection>
<Row>
<Info name="supplier" colspan="7" link="generated" />
<Info name="class" colspan="3" />
</Row>
<Row>
<Info name="description" colspan="5" />
<Info name="comment" colspan="5" />
</Row>
</InfoSection>
</TariffTemplate>

This determines the placement for various descriptions. Fields available are: Supplier, optionid, optcode, description, comment, location, locality, class, button.
"Colspan" refers to how many columns the variable extends over.
In the example image below the Supplier name spans over seven columns and the class spans three columns – they are both on the same row.
Description spans five columns and Comment spans five columns, both on the same row.
If Description and Comment were required on separate rows for example it could be entered as:
<Row>
<Info name="description" colspan="10" />
</Row>
<Row>
<Info name="comment" colspan="10" />
</Row>


Apartment:

<TariffTemplate servicecode="default" ratetype="apartment">

This variable is specifying that it is for all database options with the rate type of "Apartment".
Alternatively, "default" can be replaced with a service code to break the apartment rate type down further.

<Heading>
<Column id="1" type="name" heading="Apartment" />
<Column id="2" type="minscu" heading="Min Nights" />
<Column id="3" type="staypay" heading="Stay/Pay" />
<Column id="4" type="paxbreak1" heading="Pax 1" alt="Pax" />
<Column id="5" type="paxbreak2" heading="Pax 2" />
<Column id="6" type="paxbreak3" heading="Pax 3" />
<Column id="7" type="paxbreak4" heading="Pax 4" />
<Column id="8" type="paxbreak5" heading="Pax 5" />
<Column id="9" type="paxbreak6" heading="Pax 6" />
<Column id="10" type="currency" heading="$$" />
</Heading>

This is the default layout of the Tariff Template for apartment rate type. (See room rate type above for generic information on this section)
Columns are split into rates per pax numbers.
For the Pax 1 column, an alternative column heading is usually added (alt= "Pax). This means if there is only one pax break, the column heading will just display as "Pax" rather than "Pax1"


Package:

<TariffTemplate servicecode="default" ratetype="package">

This variable is specifying that it is for all database options with the rate type of "Package".Alternatively, "default" can be replaced with a service code to break the package rate type down further.

<Heading>
<Column id="1" type="name" heading="Package" />
<Column id="2" type="minscu" heading="Min Nights" />
<Column id="3" type="staypay" heading="Stay/Pay" />
<Column id="4" type="single" heading="Single" />
<Column id="5" type="twin" heading="Twin" />
<Column id="6" type="double" heading="Double" />
<Column id="7" type="triple" heading="Triple" />
<Column id="8" type="quad" heading="Quad" />
<Column id="9" type="blank" heading="" />
<Column id="10" type="paxbreak1" heading="" prefix="Pax " delimiter=" - " alt="Pax"/>
<Column id="11" type="paxbreak2" heading="" prefix="Pax " delimiter=" - "/>
<Column id="12" type="paxbreak3" heading="" prefix="Pax " delimiter=" - "/>
<Column id="13" type="paxbreak4" heading="" prefix="Pax " delimiter=" - "/>
<Column id="14" type="currency" heading="$$" />
</Heading>

This is the default layout of the Tariff Template for package rate type. (See room rate type above for generic information on this section)
Columns are split into both room configurations and pax ranges as as package options can have a mixture of both


Pax:

<TariffTemplate servicecode="default" ratetype="pax">

This variable is specifying that it is for all database options with the rate type of "Pax".
Alternatively, "default" can be replaced with a service code to break the pax rate type down further.

<Heading>
<Column id="1" type="name" heading="Supplier" />
<Column id="2" type="minscu" heading="Min SCU" />
<Column id="3" type="staypay" heading="Stay/Pay" />
<Column id="4" type="paxbreak1" heading="" prefix="Pax " delimiter=" - " alt="Per Adult"/>
<Column id="5" type="paxbreak2" heading="" prefix="Pax " delimiter=" - "/>
<Column id="6" type="paxbreak3" heading="" prefix="Pax " delimiter=" - "/>
<Column id="7" type="paxbreak4" heading="" prefix="Pax " delimiter=" - "/>
<Column id="8" type="child" heading="Per Child" />
<Column id="9" type="childages" heading="Child Ages" />
<Column id="10" type="currency" heading="$$" />
</Heading>

This is the default layout of the Tariff Template for package rate type. (See room rate type above for generic information on this section)
delimiter="-" means that the pax breaks will display with hyphens separating them. See example image below
alt="Per Adult"/> signifies an alternative for the heading. In this case if there is only one pax break the heading will display as "Per Adult" rather than "Pax". See example image below.
The Online Tariff can display up to 24 Pax breaks


Group:

<TariffTemplate servicecode="default" ratetype="group">

This variable is specifying that it is for all database options with the rate type of "Group".
Alternatively, "default" can be replaced with a service code to break the group rate type down further.

<Heading>
<Column id="1" type="name" heading="Supplier" />
<Column id="2" type="minscu" heading="Min SCU" />
<Column id="3" type="staypay" heading="Stay/Pay" />
<Column id="4" type="paxbreak1" heading="" prefix="Pax " delimiter=" - " alt="Per Group"/>
<Column id="5" type="paxbreak2" heading="" prefix="Pax " delimiter=" - " />
<Column id="6" type="paxbreak3" heading="" prefix="Pax " delimiter=" - " />
<Column id="7" type="paxbreak4" heading="" prefix="Pax " delimiter=" - " />
<Column id="8" type="paxbreak5" heading="" prefix="Pax " delimiter=" - " />
<Column id="9" type="paxbreak6" heading="" prefix="Pax " delimiter=" - " />
<Column id="10" type="currency" heading="$$" />
</Heading>

This is the default layout of the Tariff Template for group rate type. (See room type above for generic information on this section)

Optional variables

Within the tariff template there are optional variables available. These can be added into any of the rate type/service code sections. When doing so the info section may need to be adjusted to include the increase in the number of columns. These variables can be slotted into the existing tariff template by adjusting the column id numbers.
A number of these optional variables can be found in the sections above such as Child Age, Stay Pays, Pax Breaks and Currency. Others are below:

Extras:
Extras can be displayed as below:

<Column id="8" type="extras_adult1" heading=""/>
<Column id="9" type="extras_child1" heading=""/>
<Column id="10" type="extras_infant1" heading=""/>

These extras are displaying in columns 8 - 10 one being the extra rate for an adult, child and infant. The heading is blank which means that the heading is derived from the database itself. Ie: the description of the first extra in the product database

<Column id="8" type="extras_adult1" heading="" suffix=" Adult"/>
<Column id="9" type="extras_child1" heading="" suffix=" Child"/>

This is similar to above apart from a suffix has been added on which means that the heading will display as "(ExtraName) Adult" or (ExtraName) Child. See example below

<Column id="8" type="extras_adult1" heading="Cooked Breakfast"/>

If the Extras have been loaded in a consistent order in the product database the column can be labeled.


Blank Columns:

type="blank" heading="" />

This will insert a blank column into the Tariff


Stay Pays:

type="staypay" heading="Stay/Pay" />

Stay pays display as eg 5/4


Additional Adults:

type="extraadult" heading="Extra Adult" />

Will display the price for an additional adult if this is loaded in the Database


Generic fields:

type=”generic” heading=”Cancel Hours” map=”cancelhours”>

Using type “generic” makes it possible to add a field defined in the “map”- attribute which gets is path from the mapping table e.g. <Map name="cancelhours" path="RateSet/CancelHours" />

The path is directly related to the iCom name and existing mappings can be used. To access fields that are related to a specific rate set or date range use “RateSet/CancelHours” or “DateRange/RateName”. Other fields can be accessed using their absolute path e.g “Supplier/Name”.