Approval Groups allow you to set up a rule by which each Transaction that fits the input conditions goes through multiple Approval levels. It needs to be approved by all of the assigned approvers in all of the Approval levels.
Use case: we want to set up that each invoice with a total amount higher than 10,000 USD will need to be approved by the Plant manager. If the total amount is higher than 20,000 USD, it will need to be approved by the Plant manager and then by all of the Senior controllers.
Difference between Approval groups and Workflows
One difference between Approval Groups and regular Workflows is that in Workflow, the first assignee that opens the Transaction can approve it. In Approval Groups, the Transaction is not approved until every one of the assignees does so (unless you set it up differently).
Another difference can be seen in a situation where a complicated structure of approvals is required. When using Workflows, the Transaction would need to go through many new Statuses and Workflows which you would have to manually create one by one. In Approval Groups, it is all handled in one table.
Creating Approval Group
Each Approval Group consists of the following attributes:
- Name – name of the Approval Group which will be shown when working in the tool, e.g. in Workflows
- Active? – the Approval Group will only be used if this checkbox is checked
- Pending status – Transactions will be waiting in this selected Pending status until they are approved in all of the approval levels (Pending status needs to be created first in Statuses)
- Rejected status – if one of the assignees rejects the Transaction, it will go to this selected Rejected status (Rejected status needs to be created first in Statuses). If you leave it empty, the approvers will not have the option to reject the Transaction.
- Approval e-mail template – E-mail Template which will be sent once the Transaction is fully approved (needs to be created first in E-mail Templates)
- Rejection e-mail template – E-mail Template which will be sent once the Transaction is rejected (needs to be created first in E-mail Templates)
- Template matcher
- Best match – selects only one E-mail Template version that matches the most conditions
- Match all – selects all E-mail Template versions that match the conditions
- Match all – join with line – selects all E-mail Template versions that match the conditions and puts a line between each version
- Match all reversed – selects all E-mail Template versions that match the conditions, but puts them in reversed order
- Match all reversed – join with line – selects all E-mail Template versions that match the conditions, but puts them in reversed order and puts a line between each version
- Approval type
- Everything – assign every approval item to a User (default)
- Auto-approve – assign only the first item, following items are auto-approved
- Skip to last – require only “last” approval. The first items are skipped.
Once the Approval group is created, you can define specific Approval levels by setting up the following attributes:
- Active? – only Approval levels marked as Active will be used in the approval process
- Input conditions – all of the Transactions that meet set conditions will need to be approved at this level
- Assign to – select Groups, Assignment Groups, or fields containing data about the Assignment that will be assigned to approve the Transaction at this level. Type in the minimal number of approvers, or leave it empty for all approvers assigned to approve it. If there is a minimum e.g. 1, other approvers are not required to approve it and the Transaction can move to the next level. If at least one approver rejects the Transaction, it will automatically be rejected at this level.
- Action design – select fields that the Users will have the possibility to fill in when approving the Transaction at this Approval level. We recommend adding at least the “Comment” and “Attachment” fields.
- Model callbacks – if any of the Model Callbacks needs to be run after this Approval level, select it here
- Transaction form behaviour configurations – if the Action design should be dynamic, select the corresponding Transaction form behaviour configuration here
- Default pending comment message – comment message that will be shown to assignees in the Transaction timeline
The Transaction will go through all of the approval levels top-down, stop on the one where it meets the input conditions, and wait for approval. Once it is approved, it will continue going lower and find another approval level with corresponding input conditions until it reaches the top bottom, which means that the Transaction is finally approved. The order of Approval levels can be changed with drag & drop.
Using Approval Groups
- Workflow type – select the “Approval Group” type
- Approval group – select the Approval Group you just created
- Filter transactions – you need to select at least Status – the one from which the Transaction should be sent into approval (the input Status of the Workflow) + the one which you filled into Pending status when creating Approval Group
- Output status – the status where the Transaction goes once it is approved on all of the approval levels
These Workflows are then marked with a red color in the Workflow Design.
In the timeline of the Transaction that is waiting for approval you will see a table consisting of:
- all Users who need to approve the Transaction
- the status of their approval
If you are one of the approvers, you will see two buttons after clicking to take the action – Approve and Reject. After clicking on any of them, you will have the chance to fill in the fields set up in the Action design of this Approval level.
If you approve the Transaction, it will be waiting for the approval of the remaining approvers. If you reject it, it will be automatically rejected and the other approvers will not be asked to take further action.