Approvals technical architecture
Technical reference covering data models, ORM inheritance, security groups, automated crons, and API endpoints.
This page provides the technical specifications for smarterp_approval and its bridge modules.

Data Model Specifications#
| Model Name | Technical Identifier | Purpose |
|---|---|---|
smarterp.approval.type | Approval Template | Defines code, category, policy, SLA hours, and sequence. |
smarterp.approval.stage | Routing Stage | Stage sequence, approval mode (all, any, quorum), and amount boundaries. |
smarterp.approval.request | Approval Transaction | The submitted transaction record holding amount, state, requester, and route. |
smarterp.approval.line | Routing Line | Individual approver assignment, status (pending, approved, refused), and timestamp. |
smarterp.approval.delegation | Delegation Record | Principal, delegate, start/end dates, and active status. |
smarterp.approval.authority | Authority Cap | User/Role monetary approval ceiling in ETB. |
Security Access Groups#
smarterp_approval.group_approval_user: Standard Employee (Create and view own requests, approve assigned requests).smarterp_approval.group_approval_manager: Department Manager (View department requests, reassign stalled requests, view reports).smarterp_approval.group_approval_admin: System Administrator (Full configuration of Approval Types, Stages, and Authority Limits).
Scheduled Actions & Crons#
smarterp.approval.sla.cron: Runs every 60 minutes. Scans pending requests, computes working-hour SLA elapsed time, posts warnings, and triggers manager escalation activities.smarterp.approval.delegation.cron: Runs daily at 00:01. Activates pending delegations and auto-archives expired delegations.
Last updated: 2026-10-16