Tour Operator Commissions

Tour operator commissions allow cashiers to register a customer’s sales for a particular tour operator. From each sale the tour operator can receive a commission as an incentive for bringing in the customer. This motivates the tour operator to bring in more tour participants and support them in their purchases, which in the end will increase total turnover of the shop as well.

Database configuration

Parameters

  • UseTouroperatorCommissions (mandatory) - set to 1 to activate tour operators panel in sale screen
  • UseCommissionCrm (optional) – if set to 1, tour operators will be loaded from table CommissionCrm instead of default table Touroperators. Only records with ContactType = 1 will be loaded.
  • TouroperatorMaxCommission (optional) – maximum commission amount for a session can be specified per tour operator in format: operatorId1|maxCommission1,operatorId2|maxCommission2

Plugin

Configure and activate plugin CommissionSales.dll in Plugins table.

If installing plugin manually, copy plugin dlls CommissionSales.dll and UdpDiscovery.dll into C:\POS\Plugins directory.

Tour operators configuration

Tour operators need to be configured manually in POS database. By default, they are loaded from the table Touroperators.

Alternatively, they can be loaded from table CommissionCrm if parameter UseCommissionCrm is set. In such a case, table columns are almost identical.

Column name Values Description
OperatorId numeric ID of the tour operator, will be exported on posticket
OperatorName string Name of the tour operator, will be exported on posticket
CommissionAmountVisitor Not used
DefaultCommissionPercentage 0-100 Default commission percentage (only for CommissionRule = 0)
CommissionRule 0, 1, 2 Type of commission calculation
ScaleValues e.g., 0 - 7.50 = 5% | 7.50 -99999 = 7.5% Commission percentages specified for various total amounts (only for CommissionRule = 1)
IsOnAccountPayment bool Specifies whether tour operator is paid out immediately when visit ends or later on account

Data synchronization

All data related to tour operator commissions are automatically synchronized between all tills in the local network. This for example means that when a tour operator session is opened on one till, it will be automatically opened on other tills as well. Similarly, when the tour operator session is being closed and the commission for the tour operator is being calculated, transactions registered to this tour operator from all tills are aggregated. After closing the session, it is closed on all tills.

Data synchronization is performed via an underlying UDP connection. No configuration is necessary, POS automatically searches for other tills in the local network. IP addresses of discovered tills are stored in file C:\POS\Data\CommissionSalesIpAddresses.xml. To check the connection status of the POS, this file can be manually inspected.

Commission calculation

The commission is calculated at the end of the tour operator session. Commission amount is always calculated from total net amount of all sales registered on that tour operator during this session. Total commission amount is calculated using the formula below, the exact commission percentage depends on the tour operator setting in the CommissionRule column.

  • commissionAmount = totalNetAmount * commissionPercentage / 100

The maximum total amount of commission paid out for session can be limited per tour operator using the parameter TouroperatorMaxCommission.

CommissionRule = 0

Fixed commission percentage is taken from DefaultCommissionPercentage setting of the tour operator.

CommissionRule = 1

Commission percentage depends on the average total amount calculated over the tour operator group size:

  • averageTotal = totalNetAmount / groupSize

Then, the commission percentage is by default resolved as follows:

  • averageTotal < 7.5 => commissionPercentage = 5%
  • 7.5 <= averageTotal < 10 => commissionPercentage = 7.5%
  • 10 <= averageTotal < 15 => commissionPercentage = 10%
  • averageTotal >= 15 => commissionPercentage = 12.5%

Custom total amount ranges and commission percentage values can be specified in ScaleValues setting of the tour operator. If ```averageTotalv will not fit any range, the resulting commission will be 0%.

CommissionRule = 2

Commission percentage depends on the average total amount calculated over performed transactions:

  • averageTotal = totalNetAmount / totalTransactions

Then, the commission percentage is by default resolved as follows:

  • averageTotal < 7.5 => commissionPercentage = 0%
  • 7.5 <= averageTotal < 11 => commissionPercentage = 7.5%
  • 11 <= averageTotal < 14.5 => commissionPercentage = 10%
  • averageTotal >= 14.5 => commissionPercentage = 12.5%

This setting currently does not support custom ranges.

Commissions flow in POS4

To start the tour operator session, go to the sales screen and tap the magnifying glass icon on the tour operator panel to open the Tour Operator management screen.
R56 fig1

Start a new tour operator visit by tapping Start visit.
R56 fig2

Enter guide name, group size, select tour operator and confirm by pressing Start visit again. Group size is mandatory only for tour operators with CommissionRule = 1.
R56 fig3

The tour operator session is now open. Operator-commission-started transaction is created. Transaction ticket is not printed, it is visible only in BOS.
R56 fig4 R56 fig5

Multiple tour operator sessions can be opened, each tour operator can have only one session open at a time.
R56 fig6

To register the current sale to a tour operator, click on the tour operator icon. To not register the current sale to any tour operator, click on the User icon on the right side of the tour operator panel. The active tour operator can be identified by the green light and can be changed at any time.
R56 fig7

Once the sale is finished, no tour operator information is visible on the customer receipt. Tour operator information is visible only in Back Office.

Customer receipt: R56 fig8 Back Office: R56 fig9

To end the tour operator session, navigate to the tour operator management screen by tapping the magnifying glass button in tour operator panel in sale screen. Select the tour operator you want the session to end for and tap End visit.
R56 fig10

Once the session is closed, an operator-commission-ended transaction is created and the transaction receipt is printed. If the tour operator has IsOnAccountPayment set to 0, a copy of the transaction receipt is printed first with the Signature section.

A copy of the operator-commission-ended transaction receipt is printed only if the tour operator has IsOnAccountPayment = 0. This copy contains a Signature section:
R56 fig11

Standard operator-commission-ended transaction receipt, printed on each session closing:
R56 fig12

If the tour operator has IsOnAccountPayment set to 0, a cash out transaction is created as well to pay out the tour operator. A cash out ticket is printed.
R56 fig13

Finally, the tour operator is removed from the list of opened tour operator sessions.
R56 fig14

Export to BOS

When a tour operator session is opened or closed in POS, a ticket transaction of type OperatorCommissionStart or OperatorCommissionEnd is created. PosModuleExporter processes these transactions and creates/updates records in the BOS table PosTouroperatorCommission.

Note: Database patch creating table PosTouroperatorCommission seems to be missing and should be recreated. Only patch 279_PosTouroperatorCommission_Patch001.sql exists, adding additional columns.

Resolut Backoffice Client reports

There are two reports in Resolut Backoffice Client that work with the PosTouroperatorCommission table:

  • TouroperatorCommissionReport – report module, access key 4083
  • ManagementInfoCommissionReport – XtraReport document, access key 4087

These reports can be used when paying out commissions to tour operators with on account payment configured (IsOnAccountPayment set to 1).