

Sub-account fees & commissions
Use this when you're a Main Agency and want to charge a sub-account a service fee, or pay it a commission, on every ticket it issues. You'll set up a rule in 5 steps.
Overview
The Service Fee and Commission Configuration lets a Main Agency define charging and reward rules for each of its Sub Accounts. The rules run automatically at ticketing, reissue and void. The resulting entries appear in the Statement of Account (SOA) for both the Main Agency and the Sub Account.
Each Sub Account has two independent rules:
- Service Fee: debits the Sub Account for each ticket issued (revenue for the Main Agency).
- Commission: credits the Sub Account for each ticket issued (cost to the Main Agency).
You can turn on either, both or neither for any Sub Account.
Set up a rule
The flow is the same for Service Fee and Commission. The steps below use Service Fee as the example.
Step 1: Open the sub-account's Account tab
- In Agency Admin, open the Sub Accounts menu.
- Select the sub agency you want to configure.
- On the sub agency's page, open the Account tab.
- Scroll down to the SERVICE FEE SETUP and COMMISSION SETUP sections. You configure each section separately.


Step 2: Turn on the section
Check the SERVICE FEE SETUP checkbox to activate the section.
An unchecked section does nothing. While the box is unchecked, the rule is inactive and no SOA entries are created, whatever is saved in the formula field.
Step 3: Write the formula
Enter the formula in the Formula to use field. A formula is a math expression made of predefined tokens and arithmetic operators: +, -, *, parentheses, and % for percentages.
An example formula is shown below the field: [PerTicket] * ([BaseFare] + [YQ]) % 2. For the full list of tokens, click the Learn more about formulas link to the right of the example, or see Tokens below.


Step 4: Test the formula
- Click Test formula. This checks the formula's syntax and previews the result with sample values.
- In the pop-up, edit the value of each token the formula uses to check the math against a known scenario.

You can't save until the test passes. The Save Formula button stays disabled until the formula has been tested successfully. If you edit the formula after testing, Save Formula is disabled again and you must test again.
Step 5: Save the formula
- Click Save Formula. A confirmation prompt shows the formula to be saved.
- Confirm the save.

The section collapses into a summary view. It shows the saved formula in a read-only field, an Active status badge and the time of the last update.

Tokens
You can use these tokens in formulas.
| Token | Title | Meaning |
|---|---|---|
[BaseFare] | Base fare amount | The base fare amount of the ticket |
[YQ] | YQ tax amount | The YQ tax component of the ticket |
[YR] | YR tax amount | The YR tax component of the ticket |
[FirstIssue] | Applies on first issue | 1 when the ticket is first issued, 0 otherwise |
[ReIssue] | Applies on reissue | 1 when the ticket is reissued, 0 otherwise |
[PerSegment] | Number of segments | Number of segments on the ticket |
[PerTicket] | Applies on every ticket | Always 1; use it for fixed per-ticket amounts |
[FirstIssue] and [ReIssue] are never both 1 at the same time. On void, they reflect the ticket's last state before cancellation.
Example formulas
| Use case | Formula |
|---|---|
| Flat 10 QAR on first issue | [FirstIssue] * [PerTicket] * 10 |
| Flat 5 QAR on reissue | [ReIssue] * [PerTicket] * 5 |
| 5% of base fare on first issue | [FirstIssue] * [BaseFare] % 5 |
| 2% of base fare on reissue | [ReIssue] * [BaseFare] % 2 |
| 5% of (base fare + YQ) on first issue | [FirstIssue] * ([BaseFare] + [YQ]) % 5 |
| 2% of (base fare + YQ + YR) on first issue | [FirstIssue] * ([BaseFare] + [YQ] + [YR]) % 2 |
| 1% of base fare plus 2% of (YQ + YR) on first issue | [FirstIssue] * ([BaseFare] % 1 + ([YQ] + [YR]) % 2) |
| 2 QAR per segment on first issue | [FirstIssue] * [PerSegment] * 2 |
Statement of Account
When a Service Fee or Commission rule is active, the SOA entries are written automatically when a ticket is issued, reissued or voided.
Two transaction types appear in the SOA:
- COMMISSION: credit for the Sub Account, debit for the Main Agency.
- FEE: debit for the Sub Account, credit for the Main Agency.
Each entry shows the original ticket number and PNR in the Transaction column, and the sector in the Pax & Sector column.
Hover over the info icon next to an entry to see the calculation details: the formula and the component values used. These details don't appear in downloaded exports.
Behaviour on reissue and void
The same formula runs on every transaction type. Only the token values change with the transaction.
Reissue
The formula runs again with [ReIssue] = 1 and [FirstIssue] = 0. A new SOA entry is written for any result that isn't zero.
Void
A void automatically reverses the original Service Fee and Commission in full. The agent doesn't need to enter any values. The reversals appear as separate rows on the SOA.
Editing a rule
- Click Edit next to the saved formula. The section opens in edit mode with the current formula filled in.
- Change the formula.
- Click Test formula again. You must test before you can save the updated formula.
- Click Save Formula.
Disabling and removing a rule
Disable: uncheck the section's checkbox. The rule becomes inactive, but the saved formula is kept. Check the box again to reactivate the same formula without re-entering it.
Remove: click Discard next to the saved formula, then confirm the prompt. The formula is permanently deleted.

Discarding a formula can't be undone. If you only want to pause the rule, uncheck the section instead.
Important notes
Conjunction tickets
When a journey spans more than one ticket document (a main ticket plus one or more conjunction tickets), the formula runs only on the ticket that carries the fare and segment data. Conjunction tickets with no fare and no segments are skipped, so the SOA doesn't get duplicate or partial fee entries.
Currency rounding
Amounts are rounded with standard rounding (not round-up):
- 2 decimals for most currencies (QAR, USD, EUR, etc.)
- 3 decimals for OMR, BHD and KWD
Agency hierarchy
When a ticket is issued lower in the agency hierarchy (for example, a Sub-Sub Agency under a Sub Agency under a Main Agency), the rules cascade up the chain. Each tier's Sub Account rule applies only to its own relationship:
- The Sub-Sub Agency's rule applies to its relationship with the Sub Agency.
- The Sub Agency's own rule applies to its relationship with the Main Agency.
Each tier uses the rate set on its own Sub Account, not the rate from the tier below.
Balance impact
A Service Fee may push the Sub Account's balance below zero. Issuance is not blocked when this happens; the negative balance is allowed by design.
Activation timing
Changes to a rule take effect as soon as you save them. Tickets issued before the change keep the formula that was active when they were sold, including for any later void.