Business rules
Business rules allow you to define different outcomes or actions, based on whether the conditions specified in the rule have been met. Business rules are typically applied in a flow to determine which path a flow should take if there are multiple outcomes available, but can also be implemented on a user interface, data, or validation.
Overview
Business rules are added to outcomes to define the path that a flow will take. See Outcomes.
If you have multiple outcomes from a step on the flow canvas, you can set up business rules on each outcome to define which outcome path a user will be directed along. This is done by configuring conditional statements in the business rule.

-
If no business rules are added to outcomes from a step, or when the business rules for more than one outcome match and are both satisfied, the flow will always progress along the outcome that is set to the highest order priority. For example, an outcome with an order set to '0' will be followed above an outcome with an order set to '1'.
-
Business rules can be configured as simple or fairly complex logical comparisons, with multiple nested rules and comparisons used to build up the conditional statement. Business rules are formed using
ANYandALLcomparison operators:-
ANY = Equivalent to an OR statement
-
ALL = Equivalent to an AND statement
For example, the following image shows a complex business rule that is met in the following scenario: 'IF the value of Company Car is False AND the Office Location is Chesterbrook __AND__ the selected Work Phone brand is either Apple OR Samsung'.

-
-
Business rules cannot be set up on outcomes that are rendered as buttons, as these outcomes are triggered by a user clicking the outcome button.
-
Business rules can only be set up on outcomes connected to decision, message or page steps.
Adding a business rule to an outcome
To add a business rule to an outcome:
-
Create an outcome from one step to another that allows business rules to be added (from a decision step to a presentation step for example).
-
On the Outcome panel, click Create Business Rules in the Business Rules section to open the Business Rules Editor.
-
Create new and nested business rule conditions by adding values and operators as required:

-
Any/All: Select what type of statement you wish to build.
-
Values: Click Select or create a new Value to select the relevant value(s) or create a new value that you wish to use in the conditional statement. When setting up a conditional statement, you will typically need to specify two values to compare.
-
Operators: Select the type of operator that you wish to use with the selected value from the standard types of logic operations, such as "Equals", "Greater than", and so on.
-
New Rule: Create a new business rule, including nesting a business rule inside another.
-
New Comparison: Create a new comparison condition for the business rule (ANY = equivalent to an OR statement, ALL = Equivalent to an AND statement).
-
-
Click Save to save the business rule and return to the Outcome panel. To edit an existing business rule on an outcome, click Edit Business Rules.
A worked example - using a business rule to define a flow path
In this example, a page step in an employee onboarding flow asks a user to indicate whether they require a company credit card or not, using a simple toggle component to return a boolean value of either '$True' or '$False'.

There are two possible outcomes:
-
If the user selects "Yes", the flow needs to be directed along the outcome that will initiate a credit card request for the employee.
-
If the user selects "No", the flow needs to be directed along a different outcome, for example, to the next stage in the flow that checks whether the user requires a seat assigned.
This routing logic is handled by setting up a business rule on the first possible outcome.
- The business rule checks whether the user answered "Yes", and if they did then the flow will proceed along that outcome.
- If the user answered "No", then the business rule is not met, and the flow will progress to the next outcome instead, directing the user to the seat assignment section of the flow.