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

Supplier Connectivity – Setup and Mapping - V3.1

Product Version:3.10.000
Document Version: 2.3
Last Updated: 11/09/2018
Author: Leigh Ingle, Paul Jackson

This white paper will help you to …

  • Prepare your system and users for supplier connectivity
  • Map your suppliers to suppliers in an external supplier system
  • Map your product to product in an external supplier system
  • Determine the selling price to use for external services

Overview

In order to be able to search for and book product in an External Supplier System from within Tourplan there are a number of steps that need to be completed. The first step is to have the External Supplier Adapter setup for you via the Tourplan Helpdesk.
Once that has been completed there are a number of settings that need to be made/checked in both the Code Maintenance and INI Maintenance applications to prepare your system for connectivity.
You will then need to map (link) the supplier(s) as they are loaded in Tourplan to the supplier(s) as they are loaded in the External Supplier System. For example, the 'Protea Hotel Balalaika' supplier code may be loaded as 'PHBALA' in your Tourplan system but referred to as 'BALA' in Protea's system.
You will further need to map (link) product you have loaded in Tourplan for that supplier to product in the External Supplier System. This can be done by directly mapping each Tourplan product to each external product or by use of wildcards and keywords to return only a subset of the data.

Pre-Requisites

In order to be able to use supplier connectivity:

  • You need to be on the Connectivity or Enterprise Editions of Tourplan iS and on version 2.77 or later. If you are unsure which Edition or Version you are on check with your local Tourplan Helpdesk.
  • The new Tourplan iS 'External Product Search' (EPS) scroll needs to be enabled. (Please see the 'fastBook – New Product Scroll (EPS)' WhitePaper).
  • A supplier connection setup. (Please see the 'supplierConnectivity – How Do I Connect?' WhitePaper).

Setup

Code Maintenance

The Tourplan Helpdesk will have created an entry of a Type 4 connection for you under the menu item System\External Services. The type 4 connection will link you to the TMP server (connection gateway) and in turn to the applicable supplier system. This entry should not be modified without the guidance of the Tourplan Helpdesk.
Take note of the 'Name' used for the connection, as this will be required for the ESA mapping later on.


Screenshot 1: External Supplier Connection (Name= Protea)

Note there will be a Type 4 connection specified for each External Supplier system you are connecting to.

 

Note Categories

Three note categories are required to store the mapping details and the external service line booking details.

  • Under the menu item Messaging\Notes – Insert an "External Supplier Details" Note Category, Type = Database Supplier.


Screenshot 2: External Supplier Details Note Category
 

  • Under the menu item Messaging\Notes – Insert an "External Option Details" Note Category, Type = Database.


Screenshot 3: External Option Details Note Category
 

  • Under the menu item Messaging\Notes – Insert an "External Service Details" Note Category, Type = Booking Service Line.


Screenshot 4: External Service Details Note Category
 

  • Optional (recommended). Under the menu item Messaging\Message Types – Insert an "External Services" Message Format. This will allow for a different message format to be used in the lines section of any messages to be used for External Services.


Screenshot 5: Message Format for External Services

This is important as when a service is booked externally a stay price is returned by the external system and we don't have the breakdown of the costs and quantities normally available for a Tourplan service. For example the per room rate, the per night rate, etc.

 

  • Optional (recommended). Under the menu item Bookings\Service Status – Insert a "Confirmed Externally" Service Status. This will allow for distinction between services confirmed externally and services confirmed off allocation or manually. Options should be set to: Voucherable, Include in Booking Total, Hold Allocation and Allow in PCM are NOT ticked.


Screenshot 6: Confirmed Externally Service Status
 

  • Optional (recommended). Under the menu item Bookings\Service Status – Insert a "Cancelled Externally" Service Status. This will allow for distinction between services cancelled externally and services cancelled manually. Options should be set to: Voucher, Include in Booking Total, Hold Allocation and Allow in PCM are NOT ticked.


Screenshot 7: Cancelled Externally Service Status

INI Maintenance

  • Under the 'Internet' Menu Item insert an ES_SUPPLIER_NOTE_CAT entry making sure this matches the corresponding Note Category you created above in Code Maintenance.
  • Under the 'Internet' Menu Item insert an ES_OPTION_NOTE_CAT entry making sure this matches the corresponding Note Category you created above in Code Maintenance.
  • Under the 'Internet' Menu Item insert an ES_SERVICE_LINE_NOTE_CAT entry making sure this matches the corresponding Note Category you created above in Code Maintenance.


Screenshot 8: Completed Note Category INI Flags
 

  • Optional. Under the 'Internet' Menu Item insert an ES_MESSAGE_FORMAT entry making sure this matches the corresponding Message Format you created above in Code Maintenance. This is the message format code that will then be used for services linked to External Systems, allowing you to have a different lines section for services that have been booked externally. If not supplied it will use the standard format of the option for the lines section in messaging.
  • Optional. Under the 'Internet' Menu Item insert an ES_ICOM_PRICE_SELECTION entry. This is the calculation method used to determine which price is returned via hostConnect. Traditionally hostConnect only ever returns one price for an option for a given stay. Once we are connected to an External Supplier System we have the potential of multiple rates being returned: Our internal rate from Tourplan and one or more rates being returned from the External Supplier System. Valid values are:
    • A Return the rate that provides the greatest margin amount
    • E Return all the rates
    • Return the rate that provides the lowest selling price
    • Return the rate that provides the greatest margin percentage.

Defaults to E (Return all the rates all rates).

Screenshot 9: Completed Internet INI Flags

Note a setting other than E is required for webConnectODP. webConnectODP cannot currently handle multiple rates being returned per option for a given stay.

 

  • Review the entry under the 'System' Menu Item for the ESI_EPS_SCROLLMODE flag. (See the 'fastBook – New Product Search/Scroll (EPS)' WhitePaper for more information on this flag).
  • Review the entry under the 'System' Menu Item for the ESI_EPS_INSERTMODE entry. (See the 'fastBook – New Product Search/Scroll (EPS)' WhitePaper for more information on this flag).
  • Under the 'System' Menu Item insert an ESI_EPS_ALLOWCANCEL entry. This determines whether the user is allowed to cancel services that are linked to an External Supplier System. Options are: 'Y' or 'N' and can be set for ALL USERS or by individual User Name.
    • If set to 'Y' when a user clicks on 'Delete' in fastBook an attempt will be made to cancel the service in the External Supplier System, if successful the service will be set to Cancelled Externally, if not successful the user will receive an message saying 'Unable to Cancel'.
    • If set to 'N' the user will be unable to cancel or delete the service.
  • Under the 'System' Menu Item insert an ESI_EPS_ALLOWCONFIRM entry. This determines whether the user is allowed to confirm existing internal services in external systems. Options are: 'Y' or 'N' and can be set for ALL USERS or by individual User Name.
    • If set to 'Y' you can book the product using your existing internal rate (to always use your preloaded STO rate and/or for quoting purposes, for example). Once the service is confirmed by the Agent/Client the Tourplan user can then attempt to externally confirm the service in the External Supplier System. If successful the service will be set to Confirmed Externally, if not successful the user will receive an message saying 'Unable to Confirm'.
    • If set to 'N' the user will be unable to externally confirm the service.


Screenshot 10: Completed Allow Cancel and Confirm INI Flags
 

  • Optional. Under the 'System' Menu Item insert an EXTERNAL_OK_STATUS entry making sure this matches the corresponding Service Status you created above in Code Maintenance. All services that are booked externally or confirmed externally (i.e. they have a link to an External Supplier System) will be set to this service status making it much easier to identify linked services. If omitted defaults to the SERVICE_OK_STATUS.
  • Optional. Under the 'System' Menu Item insert an EXTERNAL_XX_STATUS entry making sure this matches the corresponding Service Status you created above in Code Maintenance. All services that were booked externally or confirmed externally (i.e. they have a link to an External Supplier System) and subsequently cancelled will be set to this service status making it much easier to identify linked services that have been cancelled. If omitted defaults to the SERVICE_XX_STATUS.
  • For External Supplier Systems requiring an End Location. Some External Supplier Systems require the specification of both a start and end location – This is typical of Car Rental systems. If you are setting up a connection to such a system you will need to specify which Service Types will require an End Location. Under the 'Fastbook' Menu Item insert a SERVICE_HAS_ENDLOCATION entry specifying a comma-delimited list of service types requiring an end location.


Screenshot 11: Completed SERVICE_HAS_ENDLOCATION INI Flag for Service Types CR (Car Rental) and VH (Vehicle Hire)

The Tourplan supplierConnectivity initial setup should now be complete and ready to proceed to the Supplier, Option and Service Mapping.

Data Mapping

Tourplan Suppliers and Options will need mapping information recorded against them in order to:

  • Determine which External Supplier System to connect to; and
  • Identify the correct/equivalent product(s) in the External Supplier System.

This mapping information is available at 3 levels in Tourplan:

Master Supplier

Settings that are applied to all products being accessed for this Tourplan supplier's chain members.

Supplier

Settings that are applied to all products being accessed for this Tourplan supplier.

Option

Settings that are applied to all products being accessed for this Tourplan option.

The mapping information is currently being recorded in XML format in Tourplan note categories.
The type of data being recorded can be grouped into 3 high level XML node categories:

External

Top-level node describing data required to connect to the external system.

RatePlanDetails

Data describing how any particular rate plan code is to be used/translated by Tourplan.

Occupancy

Details describing occupancy information.

Mapping Elements

Element Name

Node Level

Description

ESA

External

Identifies which External Supplier System this supplier connects to. Needs to match the name defined for the Type 4 connection defined under System/External Services in Code Maintenance.
(Only applies at the Supplier or Master Supplier level)

SupplierID

External

Identifies the supplier ID in the External Supplier System
(Only applies at the supplier level)

OptionID

External

Identifies the Product ID in the External Supplier System. This will link the Tourplan Option to a specific product(s) in the External Supplier System.
(Only applies at the option level)

UseInternalRateExternal

'Y' value to ignore rates from the External Supplier System and use Internal Service Option Rates instead.

Availability will be taken from the External Supplier System.

(Only applies at the option level)

Note: Do not use in conjunction with <MatchId>*</MatchId>

** Important Note **

This mapping element is intended to be used for External Suppliers and \ or Channel Managers with NO rates or NO rates loaded for a particular product and \ or date range. ie. The External Supplier and \ or Channel Manager will only provide 'availability' and therefore the internal rate is to be used. This mapping element is NOT to be used for External Suppliers and \ or Channel Managers that are providing availability AND rates. 


RatePlanCode

RatePlanDetails

Specification of rate plan codes that can be used for this supplier or option.
Note:
Rate plan codes specified at the option level will override any rate plan codes specified at the supplier level.
What happens with Rate Plan Codes that are not specified will depend on the LimitToList property.
If no rate plan codes are specified (at either the supplier or option level) then all rates for the supplier/product from the External Supplier System will be available for scrolling and booking.

ContractRatePlanCode

External

Specification of a rate plan code that represents the contract rate. This is the rate plan code that will used when confirming an existing service in a booking.
Note: This needs to be specified in the mapping if you want to be able to Externally Confirm internal service that have been booked, For example, when converting from a quote to a booking.

LimitToList

RatePlanDetails

Either a 'Y' or 'N' value that determines whether:
Y – only rate plan code's that are specifically listed in the mapping data are returned; or
N – all rate plan codes are returned, even ones not specified.
Default value of N

Commission

RatePlanDetails

Ability to specify a rate plan code value and a commission level that will be used for calculating the cost value when that Rate Plan Code is returning a gross rate.
Note: This is not required for all systems you are connecting to.

Guarantee

RatePlanDetails

The method of guarantee that is to be used when using a particular rate plan code. Valid values are:
N – None required
P – Pre-payment via credit card
C – Credit Card Guarantee
Any other value that is specified in the guarantee string of the connection definition. In the examples used in this document this would be IATA, ARC or TIDS.
Note: This is not required for all systems you are connecting to.

PriceCodes

RatePlanCode

List of price codes that will be matched with the list of price codes against the agent to determine whether or not the agent can use the rate plan code.

PriceCode

PriceCodes

Individual Price Code in that list.

MaxAdultChild

Occupancy

The maximum number of adults and child + infants that can be booked through the interface.

MaxAdults

Occupancy

The maximum number of adults that can be booked through the interface.

ChildAllowed

Occupancy

Either a 'Y' or 'N' value to determine whether or not children can be booked through the interface.

InfantAllowed

Occupancy

Either a 'Y' or 'N' value to determine whether or not infants can be booked through the interface.

MatchIdExternal

Return all external product for options that have no <Optionid> mapping

MatchOnExternalD for Option Description or C for Option Comment
KeywordsExternalList of keywords to search external product on
KeywordKeywordsThe keyword to search the external product on
MinimumMatchExternal

Determines the minimum number of keywords needed so an external product is returned in the EPS scroll.

TaxationExternalSpecifies the taxes to be applied to the external price.  Prices can be treated as exclusive or inclusive.
TaxesTaxationContains all the taxes that apply from the date specified.
TaxCodeTaxesThe Tourplan tax code to be applied.
AgentRestrictionsExternalList agents that are either allowed to access or are blocked from accessing this external supplier.
AllowedAgentRestrictionsList of agents that are allowed to access the external supplier.  If specified then only agents in the list are allowed access, all other agents are stopped. If both blocked and allowed appear then the allowed list is ignored.
BlockedAgentRestrictionsList of agents that are NOT allowed to access the external supplier.  If specified then all agents are allowed access except for the agents specified in the blocked list. If both blocked and allowed appear then the allowed list is ignored.
AgentCodeAllowed or BlockedThe Tourplan agent code that is either allowed or blocked.

 

Mapping Examples

Listed below are some XML examples of the mapping data at each level.

Supplier or Master Supplier Mapping Examples

Example 1

Mapping examples that would be contained in the note category defined by the ES_SUPPLIER_NOTE_CAT INI switch.


Screenshot 12: Supplier Level Mapping

It is defining to Tourplan that this supplier is available through the 'Protea' connector and this supplier is identified as 'BALA' in External Supplier System. This is the minimum amount of data required in order to have the system connect. In this case all rate plan codes will be made available to all agents in the system.

Example 2

Supplier level mapping can also define the list of Rate Plan Codes we are interested in, and optionally any characteristics those rate plans may have. 
 

<External>

<Esa>PROTEA</Esa>

<SupplierId>BALA</SupplierId>

<RatePlanDetails>

<LimitToList>Y</LimitToList>

<RatePlanCode Code="L01"/>

<RatePlanCode Code="L02"/>

</RatePlanDetails>

</External>

In this example we are again going via the connector 'Protea' and are only interested in the rates known as L01 and L02, as the LimitToList property is set to 'Y'. Any other rates returned by the External Supplier System will be ignored.
In both of the above examples Tourplan will treat the rates returned by the External Supplier System as net.

Example 3

The Supplier level mapping can record other parameters about how a rate is to be used if the External Supplier System is not returning nett value.

<External>

<Esa>PROTEA</Esa>

<SupplierId>BALA</SupplierId>

<RatePlanDetails>

<LimitToList>Y</LimitToList>

<RatePlanCode Code="L01">

<Commission>20</Commission>

<Guarantee>C</Guarantee>

</RatePlanCode>

<RatePlanCode Code="L02">

<Commission>0</Commission>

<Guarantee>IATA</Guarantee>

</RatePlanCode>

</RatePlanDetails>

</External>

In this example we are again going via the connector 'Protea'. Further, we are only interested in rates that are known as L01 and L02 in that system, as the LimitToList property is set to Y. Any other rates returned by the External Supplier System will be ignored.
The L01 rate requires a credit card guarantee and is returned as a Gross rate from the External Supplier System, as described in the RatePlanDetails section. Its value will have 20% calculated and subtracted to arrive at a cost price. For example:

Gross Price $120.00
Less 20% Commission$24.00
Cost Price $96.00

The L02 rate is a standard Net rate that is to be guaranteed by the supply of an IATA number.

Example 4

Settings can be applied to all rate plan codes by not specifying a code in the RatePlanDetails definition.

<External>

<Esa>PROTEA</Esa>

<SupplierId>BALA</SupplierId>

<RatePlanDetails>

<RatePlanCode>

<Commission>0</Commission>

<Guarantee>C</Guarantee>

</RatePlanCode>

<RatePlanCode Code="L01">

<Commission>20</Commission>

<Guarantee>C</Guarantee>

</RatePlanCode>

</RatePlanDetails>

</External>


In this example we will display and book any rate plan code provided by the External Supplier System and all codes except L01 will be processed on a nett basis with an IATA guarantee. L01 will be processed on a gross basis with a credit card guarantee and 20% commission. 


Example 5

Rate Plan Codes can also be validated against the agent price code list by specifying a list of Price Codes, one of which must be attached to the agent for them to see the rate.

<External>

<Esa>Protea</Esa>

<SupplierId>CACA</SupplierId>

<RatePlanDetails>

<LimitToList>Y</LimitToList>

<RatePlanCode Code="L01">

<PriceCodes>

<PriceCode>Z1</PriceCode>

<PriceCode>Z2</PriceCode>

</PriceCodes>

</RatePlanCode>

<RatePlanCode Code="L02"/>

</RatePlanDetails>

</External>

In this example we are again going via the connector 'Protea' but this time to the supplier known as 'CACA' in the External Supplier System. Further, we are only interested in rates that are known as L01 and L02 in that system, as the LimitToList property is set to 'Y'.
The Rate Plan Code L01 is, however, only available to an agent who has either price code 'Z1' or 'Z2' attached to them. Rate Plan Code L02 is available to any agent as it has no Price Code limitations defined.

Example 6

Some External Supplier Systems will accept a room/pax configuration that does not match the value that they scroll/book. The expectation is that the traveller will be advised of this and expected to pay the difference direct to the hotel when travelling. Obviously in a wholesaler/tour operator environment this is not acceptable.
Mapping data will permit the specification of the maximum quantities to be scrolled/booked as follows: 

<External>

<Esa>Protea</Esa>

<SupplierId>CACA</SupplierId>

<Occupancy>

<MaxAdultChild>2</MaxAdultChild>

<MaxAdult>2</MaxAdult>

<ChildAllowed>N</ChildAllowed>

<InfantAllowed>N</InfantAllowed>

</Occupancy>

</External>


This setup would prevent more than 2 pax being booked through the interface.
 

If the External Supplier System can correctly price any number of pax specified and/or validate out incorrect configurations then an Occupancy level node is not required.

Example 7

Mapping all external product using a wildcard. Using this style of mapping will allow an external property to be matched and that it will return all available products for that external property.

<External>
   <Esa>TPM</Esa>
   <SupplierId>ABC-ZZZ</SupplierId>
   <MatchId>*</MatchId>
</External>

Example 8

Example mapping for a different tax to be applied to the rate returned based on service date, where the rate returned is a tax exclusive value.

<External>

   <MatchId>*</MatchId>

   <Taxation TreatRateAs="Exclusive">

      <Taxes ApplyFrom="2016-01-01">

         <TaxCode>GST</TaxCode>

      </Taxes>

      <Taxes ApplyFrom="2016-06-01">

         <TaxCode>G15</TaxCode>

      </Taxes>

   </Taxation>

</External>

Example 9

Example mapping to block multiple agents from accessing the external supplier.  There can be one or more <AgentCode>...</AgentCode> tags inside the <Blocked>...</Blocked> tag.

<External>
   <OptionId>DB</OptionId>
   <AgentRestrictions>
      <Blocked>
        <AgentCode>ANGTOU</AgentCode>
 <AgentCode>1001HO</AgentCode>
      </Blocked>
   </AgentRestrictions>
</External>

Option Level Mapping Examples

Mapping examples that would be contained in the note category defined by the ES_OPTION_NOTE_CAT INI switch. 

Easy Mapping at Option Level

Now At an Option Level the presence of the MatchId Element means that this particular option will be matched with search results by applying the matching Logic discussed below.

An External Option Mapping may contain a MatchId (With or without keywords) OR OptionId(s) but not currently both. Where OptionIds are found in an Option Level Mapping ,the MatchId / keywords will be thrown away in preference of the OptionIds based on the premise that OptionIds are the tighter control for the product.

By Default the matching Logic will use all the words in BOTH the Tourplan Option Description AND Comments.

Example : using the Tourplan Option in the screenshot matching will score any Search Result Keywords against

  • Deluxe
  • Garden
  • Suite
  • With
  • Breakfast

(Further examples of easy mapping are below)

Example 8


Screenshot 13: Option Level Mapping

The mapping defined in the Supplier or Master Supplier makes connection to the External Supplier System and once there we are mapping this option to the products 'NORT' and 'SOUT' in the External Supplier System. This means we are prepared to use either 'NORT' or 'SOUT' product from the External Supplier System when using this Tourplan option.

Example 9

<External>

<OptionId Single="1" Double="1">C1Q</OptionId>

<OptionId Single="1" Double="2" Twin="1">C2D</OptionId>

</External>

The mapping defined in the Supplier or Master Supplier makes connection to the External Supplier System and once there we are mapping the Tourplan Single and Double rooms to the product known as C1Q and Tourplan Single, Double and Twin rooms to the product known as C2D.

This means we are prepared to use the C1Q product from the supplier when booking either a single or a double room using this Tourplan option and C2D when booking a Single, Double or Twin.

The Single="1" and Double="2" syntax can be used to prioritize the mapping.

In this example when booking a double room Tourplan will use the C1Q product by choice and only if it is not available will it use C2D.

For single rooms we are saying we do not have a preference for which product is used.

Example 10

<External>

<OptionId Single="1" Double="1" Twin="1">B1K</OptionId>

<RatePlanDetails>

<LimitToList>Y</LimitToList>

<RatePlanCode Code="A01">

</RatePlanCode>

<RatePlanCode Code="A02">

</RatePlanCode>

</RatePlanDetails>

</External>

 This is a similar example to the previous one, but in addition is specifying that for this option we are only interested in Rate Plan Codes A01 and A02.

Rate Plan Details defined at the option level will override any Rate Plan Details defined at the Supplier or Master Supplier level.

The Occupancy nodes could also be specified at the option level if that information is to override any Occupancy defined at the Supplier or Master Supplier level.


Example 11

Using Easy mapping the supplier mapping note can be set to return all external product by including a <MatchId>* element where there is no external option note

Note :

  • If the option mapping element includes an OptionId this will be honoured instead of a wildcard search
  • If no external option note is needed then the note must be deleted, not simply the contents removed as this will cause an error in the connection

Supplier Mapping Notes

<External>

<Esa>Siteminder</Esa>

<SupplierId>AUS-SYD000250</SupplierId>

<MatchId>*</MatchId>

</External>

No option level mapping notes exists


Example 12

Using keywords to assist the wildcard search to return only a subset of the external product. The tourplan option Atrium room had keywords of Atrium and bistro inserted so that only external product matching those keywords are returned.

<External>

<Keywords>

<Keyword>Atrium</Keyword>

<Keyword>Bistro</Keyword>

</Keywords>

</External>

If no match is found but the external product is not limited to a keyword or Minimum Match element then the external product will be shown against all options for that supplier.

Example 13

Using External Level Element <UseInternalRate>Y</UseInternalRate>.

Availability will be taken from the External Supplier System.

Booking will be made based on Internal Service Option Rates; rates from External Supplier System will be ignored.

<External>

  <OptionId Single="1">STSGNN000</OptionId>

  <OptionId Double="1">STDBNN000</OptionId>

  <OptionId Twin="1">STTWNN000</OptionId>

  <OptionId Triple="1">STTRNN000</OptionId>

  <UseInternalRate>Y</UseInternalRate>

</External>

  • It is be important to map the Tourplan room types (SG, TW, DB, TR, QD) with the associated room types of the External Supplier System in order for the correct External Supplier Availability to be reduced.

For example, if you search for a Single Room you only want the Single Room External Availability to be returned.

  • This means you should not use <MatchId>*</MatchId> in conjunction with <UseInternalRate>Y</UseInternalRate>.

  • Please see ** Important Note ** above in relation to the mapping element: UseInternalRate before proceeding.

Mapping Precedence

Mapping data will be combined from the various levels allowing the definition of default information and then the ability to override it for specific scenarios. Mapping data at an option level will be used in preference to mapping data at a supplier level, which will be used in preference to mapping data at the master supplier.

Mapping data will be searched in the following groups and once found at any level then all sub-nodes at that level will be used:

  • ESA (specified at the Supplier or Master Supplier level)
  • RatePlanDetail
  • Occupancy
  • ContractRatePlanCode

For example, Tourplan will not attempt to take a MaxAdult setting from the option and combine it with a ChildAllowed setting from the supplier. The entire Occupancy node from the option will be used. It will however, combine a RatePlanDetail specified at the option level with the Occupancy supplied at a Supplier Master or Supplier level.
This would allow you to specify at the master supplier:

<RatePlanDetails>

<RatePlanCode>

<Commission>0</Commission>

<Guarantee>IATA</Guarantee>

</RatePlanCode>

</RatePlanDetails>

 
Meaning that all rates are Nett and guaranteed with the IATA number. Then for Supplier X in that chain, specify:
  

<RatePlanDetails>

<RatePlanCode Code=’L01’>

<Commission>20</Commission>

<Guarantee>C</Guarantee>

</RatePlanCode>

</RatePlanDetails>

 
Meaning that only rate plan code L01 would be available for this supplier, and it is a gross rate with 20% commission and guaranteed with a Credit Card.

Rate Guarantee

A rate guarantee is not required for all External Supplier Systems. Those External Supplier Systems that do not require a rate guarantee assume the payment is guaranteed.


Rate guarantees that could be requested are:

None

No guarantee required in order to access/book a rate with the supplier.

Industry Membership Number

Various types of membership/associations numbers, for example an IATA number.

Credit Card Details

Credit card details are required to secure the rate.

Pre-Payment

Payment via Credit Card is required to secure the rate.


If the correct guarantee information is not provided when booking then the External Supplier System will reject the booking. For most situations this will require the specification at a Supplier or Supplier Master level:

<RatePlanCode>

<Commission>0</Commission>

<Guarantee>N</Guarantee>

</RatePlanCode>

Some suppliers will vary the type of guarantee required on a rate-by-rate basis, in which it will need to be defined at a rate plan level.
Valid values for the Guarantee will be (N)one, (C)redit Card, (P)re-payment or any of the values specified in the Connection Information.
It is important to note that External Supplier Adapter is not a payment gateway and that any accounting transactions required to support bookings made through the interface will need to be performed using existing Tourplan accounting functions.

Selling Price Calculation

For a service being booked in an External Supplier System we typically only get the Cost value back from the External Supplier System.  When the cost price is returned there are options in terms of calculating the ‘Selling Price’.

  1. Use the standard Discount/Mark-up/Commission Matrix to calculate the selling price
  2. Use the new External Selling Price Matrix to Calculate the selling price
  3. A combination of the above.

Using the External Selling Price Matrix

When we receive the cost back from the External system there are 3 potential scenarios:

  • The External Cost is Greater than the Internal Cost
  • The External Cost is Less than the Internal Cost
  • The External Cost is Equal to the Internal Cost

For each of these scenarios you will need to specify how the sell price is to be calculated for use in the booking. 

This is controlled by the External Selling Price Matrix, which can be found under Code Maintenance. The External Selling Price matrix is similar in concept to the Markup/Discount/Commission Matrix.  It allows the specification of Database, Supplier, Booking and Agent filter criteria and then a date based specification of how the sell price is to be established. 

For each of the above three scenarios you can elect to:

  • Use External Cost – Apply no margin (markup) and use the cost price as the sell price.
  • Apply Our Margin – Apply the margin (markup) from the Tourplan Database that would have applied for the agent for this service, on this date, for this room configuration, for this length of stay if the Internal rate had been booked.
  • Use Our Selling Price – Apply the sell price from the Tourplan Database the agent would have got for this service, on this date, for this room configuration, for this length of stay if the Internal rate had been booked.



Screenshot 14: External Selling Price Matrix
 

If the External Cost is greater than the Internal Cost and Internal Sell Price has been selected then the system will sell at the either the sell price, or cost price, whichever is the highest. This will prevent services being sold at a loss.

If there are no matching entries in the matrix, then the External Cost Price will be used as the Sell Price.

Once the sell price has been found via the External Selling Price matrix the standard markup/discount/commission matrix entries, if any, will be applied to calculate the Retail and Agent values.

Retail and Agent Price Calculation

The discount/commission matrix has been enhanced to have the following additional parameters:

Rate Source

Ability to define whether an entry applies to external services only, internal services only or both internal and external services.

Rate Plan Code

Used only for external services, this is a text field available to set values for specific rate plan codes being booked. This will allow different percentages for different types of rates made available by the supplier.

Master Supplier

Ability to specify a Master supplier that will permit the definition of values for all suppliers in the chain.


Screenshot 15: Discount/Commission Matrix


Once the level of markup and commission that is to be applied has been calculated the markup and commission tax calculations will then apply as for standard services. The cost and sell tax calculations will be based on the tax setting against the supplier.

Car Rental Adapter Specific Settings

External Supplier Adapters for Car rental companies typically have a couple of additional parameters that need to be considered/take into account.

  • Typically the car rental companies have a central reservations and accounting office with multiple depot's (pick-up and drop-off points in Tourplan terms) where the vehicle can be collected or returned.
  • A vehicle may be hire with a collection at one depot and returned to a different depot (e.g. the vehicle may be hired in one city, driven to another city and returned in the second city, i.e. Two different Tourplan locations).
  • Different charges may apply depending on the depot where the vehicle is collected/returned (e.g. an airport surcharge).
  • We need to be able to specify which depot the vehicle will be collected from and which depot the vehicle will be returned to via the External Supplier Adapter.
  • Pick-up/Drop-off times can affect the price, potentially making the price quoted wrong. Example:
    • You request a car rental for 1 day – the rate displayed will be for 1-day;
    • You enter a pickup time of 08:00 on the first day and drop-off time of 09:00 the next day – the rate charged will be for 2-days (2 x 24-hour periods).

Service Defaults

'Service Defaults' (under 'Creditors\Setup') allows alternative locations and addresses to be entered against suppliers that can have multiple pick-up and drop-off locations. In the Product Database, the service(s) will be set up with the generic location, e.g. 'RSA' (South Africa). In bookings, the alternative locations can be used to find and book the service(s).


Screenshot 16: Supplier Service Details Screen
 

  • A list of available locations (as set up in 'CodeMaint') displays on the left of the screen. The suppliers' pick-up/drop-off locations can be highlighted (individually) and moved to the Replicated Locations column on the right by clicking the > button.
  • A replicated location will need to be defined for each location where the supplier has a depot(s) where the vehicle may be collected and/or returned that you wish to enable for booking via the External Supplier Adapter.

When all locations are added to the Replicated Locations list, click on the 'Pickup Points' tab to add pick-up / drop-off addresses.

The generic location of the Service Option (RSA in this example) must also be added to the replicated locations.



Screenshot 17: Replicated Locations Pick-up/Drop-off Details

Pick-up & Drop-off Points will need to be specified for each depot you wish to make available over the External Supplier Adapter.

  • Add locality addresses and indicate in the check boxes to the right of the Locality field whether the location is for Pick-up, Drop-off or both.
  • When searching for product via the External Supplier Adapter if you wish to return rates for this depot (Pick-up/Drop-Off point) check the 'External Search' box.
  • The 'Group Number' is a numeric number that allows the grouping of depots that have the same rate. Only one 'Locality' per group should have its 'External Search' box checked.
  • For the 'External Depot ID' enter the depot ID, as provided by the supplier you are connecting to, to map this Pick-up/Drop-off point in Tourplan to the corresponding Depot in the External Supplier System.

When the locality details have been added, click the Add button and the address will display in the 'Pick-up/Drop-off For This Location' column.

In some location/supplier combinations there can be a lot of depots resulting in a lot of different combinations and is likely to lead to a lot of duplicated rates.

Where there are multiple depots (pick-up/drop-off points) assigned to a replicated location a rate will be returned for each Pick-up/Drop-off point that has 'External Search' enabled. Typically the rates returned are the same and as such it would make more sense to only return one rate.

Use the Group number to Group all depots where the same price applies – if the rate is the same for all depots assign the number 1 as the group number for all. With only the most commonly used depot having its 'External Search' box checked.

In most cases there are only two variations of the rate – airport vs. non-airport. In this case you will want to return both the airport rate and the non-airport rate and as such will have 2 Pick-up/Drop-off points with the 'External Search' enabled. The depot with the Airport surcharge may be assigned to group number one and the other depots to group number 2 for example.



Screenshot 18: Depot Grouping