Related articles

DevelopersAPI guides

Additional conditions

Additional conditions are a feature in Trading Programs that allow you to configure a program line to start earning only when a condition or set of conditions are met. A program line with additional conditions will only begin to calculate rebate once all its additional conditions have been met, or the number of met conditions is at least the specified "pass rate".

To give examples of when additional conditions are useful, they can be used for program lines that should earn rebate when...

  • a certain event has been organized to promote new products.
  • the earnings for a particular set of products exceed a target of $100,000.
  • some exogenous event occurs; e.g., a particular horse wins the Kentucky Derby.
  • any 2 out of the above 3 conditions occur.

As a general heuristic, additional conditions are usually appropriate when at least one "on/off" rule underlies your rebate calculation.

Configure in Enable

Enable staff will configure your Trading Programs channel to allow additional conditions, which are configured on a per-mechanism basis. What this means is that if you only wish to have additional conditions on, say, fixed percentage program lines, then just that mechanism can be configured to allow additional conditions. This ensures that only program lines where you'd like to have additional conditions will display the configuration for them, keeping the interface neat.

There is no limit to the number of additional conditions you may have per program line. If you have multiple additional conditions then you can set a "pass rate" for them. This specifies a threshold for the number of met conditions at and above which the program line will calculate rebate.

At this time, you will not be able to use additional conditions if you have Client Members configured.

Types of additional conditions

There are two types of additional conditions:

  • Manual conditions
  • Transaction conditions

Manual conditions

Manual conditions are additional conditions that must be manually set as 'met' or 'not met'. From the example above, before the product promotion event had been organized, the additional condition would be set as 'not met' - after the event had been organized, the condition can be set as 'met'. This type of condition can be used in scenarios where the system cannot determine whether the condition is satisfied or not based on transactional data alone.

To create a manual condition, simply click the add button, set the type to 'Manual condition', provide a description, and set whether this condition has been met or not.

When setting whether or not the condition is met, you must also provide a comment which will be recorded in the activity log.

It is possible to change whether or not the condition has been met at any time, even after the trading program has been locked by automatic workflow. To make this change, simply click the slider, add a comment, and then click Save.

Manual conditions can now also be configured on a per-individual-basis, which is again associated with the particular mechanism. Per-individual additional conditions allow a given additional condition to be further stratified into toggles for specific dimension items or dimension item attributes. As an example, consider a company with international branches that only receives rebate if at least 9 of its 12 branches meet a sales goal. A single manual additional condition can be configured, and if branches are a dimension item or an attribute, this condition will display a breakdown of this goal by branch, each with its own 'met / not met' toggle. This supersedes the need to create 12 additional conditions individually (one for each branch).


Transaction conditions are those that involve either monetary or unitary targets. Until this target has been reached, the program line will not earn any rebate, so this type of condition can be used in scenarios where the system is able to determine whether or not the target has been met.

To create a transaction condition, simply click the add button, set the type to 'Transaction condition', and provide a description. Then to set the target for the condition, select which dimension and collection the target applies to, select whether the target is a value or in units, and provide a value for the target. Using the 'All', 'Inclusions' and 'Exclusions' tabs, you can select which dimension items will contribute towards this target, either by direct/indirect selection or by creating selection rules.

If desired, transaction conditions may be manually marked as met. This is useful if a trading partner is "close enough" to a threshold that you wish to consider the condition met.


If you would like to discuss additional conditions further, please book an appointment with a member of our Customer Success team.

Not useful
Very useful
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Still have questions?
Raise a ticket or contact our support team.