An Approval Matrix specifies who and when is responsible for making a decision. It generates and assigns approval tasks based on Levels, Rules, and Conditions that describe the business logic. It is used to ensure that the required decision-makers are involved in the approval process at the right time.
An Approval Matrix can have multiple Approval Levels, each Level can have multiple Approval Rules, each Rule can have multiple Conditions and an Outcome. The Outcome consists of the creation and assignment of one or more approval tasks, as well as sending notifications.
Each Level is evaluated in order. For each Level, each Rule is evaluated in order. For each Rule, its Conditions are evaluated and, if all conditions are true, its Outcomes are applied.
As an Outcome of Level Rules, special approval tasks can be generated and assigned to decision groups. Each such decision group can contain one or more users and must have one of the following three types of approval role:
Can approve/reject but their decision is only consultative and cannot cause the Approval Matrix to continue to the next Level
Can approve/reject. Once a user from each Approver decision groups has indicated their decision, the final group decision depends on decision type configured (singular or group). If it is Singular then any of the group members can decide on behalf of the group and if is a Group decision then multiple members must approve in order to continue the process.
The required number of approvals can be set manually or dynamically using data model attributes.
If any Overriders are declared, the approve/reject decision of any one Overrider counts as the final decision, regardless of the decisions of any other groups. Once an Overrider has indicated their decision all open tasks sent to Evaluators and Approvers will be closed.
If the rule is executed and we have Singular decision, all members of the decision group will receive the task but only one individual needs to indicate their decision in order for the final decision to be considered for that group.
If the rule is executed and we have Group decision and a static/dynamic approval threshold configured, all members of the decision group will receive the task and the final decision will take into consideration if the approval threshold is reached or not.
Once a final approve/reject decision has been reached for each configured decision groups, the Approval Matrix will advance to the next Level or exit, depending on the settings in Task Details, described below.
If the approval threshold is dynamic and it is stored in a data model attribute then you can configure it by clicking MOD selector inside the field that displays the number of approvals like in the screen below.
If the final decision of a level is to approve, the Approval Matrix continues to the next Level. If there are no further levels, the Approval Matrix exists with “Approve”.
If the final decision of a level is to reject, the “Continue to next level if rejected” toggle determines whether the Approval Matrix continues to the next Level or exists with “Reject”. This toggle can be set per Rule as well as per Level. The settings on the Rule which was evaluated as true overrides the settings on the Level.
If no user decision is taken, custom auto-accept or auto-reject behaviour may be specified for each Rule. This behaviour overrides the Expiration behaviour set per Level.