The Approval Chain & Actions

Once a step is submitted, the assigned approver must take action to progress or correct the workflow. Let's learn about approvals, rejections, delegation, and expiration.

Approvals CRUD Operations & Inbox Filters

The Approvals Inbox holds all requests pending your authorization. Below are the CRUD buttons and filter options available:

Action / Filter Interface Element Who Can Use? Description & Function
Create (C) System Auto-Generated System Trigger Generated automatically when a staff member submits a step for review.
Read (R) Accordion expand arrow All Roles Expands row to view historical comments trail, step name, and request path.
Update (U) Respond button Assigned Approver Saves decision (Approve/Reject) and changes request state to complete or reverted.
Delete / Expire (D) Expire button Admin Only Manually expires/de-links stale requests. Prevents duplicate tasks.
Inbox Search Search by Customer / ID All Roles Performs real-time queries to find approvals by customer name or step name.
Approval Status Filter Status Toggle buttons All Roles Switches lists to show only PENDING, APPROVED, REJECTED, or EXPIRED items.

1. Approving a Step

When you are assigned as the Approver for the current active step, the workflow will appear in your Approvals Inbox. To approve:

  1. Open the approval request from the table.
  2. Review the fields filled by the staff.
  3. Add any comments under Approval Comments.
  4. Select the Next Step's Approver (if this is not the final step).
  5. Click Approve. The system will advance the instance to the next step.
Approver Inbox: Approver Inbox Dashboard
Response Slide-Over Panel: Decision Response Panel

2. Rejecting & Reverting a Step

If there is a mistake in the data or if document checks fail, you should reject the step:

Why Rejections Revert Steps

Reverting allows the previous actor to correct their inputs. The system keeps all original rejection comments in the Approval Chain Trail so everyone knows why the request was sent back.

Rejection Sendback Step Auto-Routing

3. Delegating or Transferring a Step

If you are unavailable or if a request needs review by a different specialist, you can use the Transfer option:

4. Manual Expiration (De-linking Requests)

If an approval request is no longer valid (for example, if the service contract was cancelled or if the approval was submitted by mistake):

Backend Cronjobs & Triggers Logic

Behind the scenes, the approval engine coordinates requests using schedules and triggers:

  • SLA Expiry Cronjob (Scheduler): A background job executes every hour to inspect active pending requests. If a request is open longer than the template's specified SLA (e.g. 7 days), the cronjob transitions the status to EXPIRED and dispatches an escalation email alert to the Branch Manager.
  • Step Transition Triggers: When a step is marked APPROVED, a database trigger executes:
    • Creates a final archive history log.
    • Queries the database for the next sequential step config.
    • Generates a new pending approval task and assigns it to the designated user.
  • Reversion & Clean-Up Triggers: When a step is marked REJECTED, a trigger automatically sets the current step status to REJECTED, sets the previous step status to IN_PROGRESS, and cancels/expires all other concurrent pending approvals to ensure a clean state.