Approval Workflow
The approval workflow controls how documents move from Draft through review, approval, training verification, and into effect. InnoQualis EQMS supports configurable multi-signer approval chains with electronic signatures, training threshold gates, and structured rejection discussions.
Approval states
Section titled “Approval states”| State | Description |
|---|---|
| Not Started | Approval has not been initiated for this document. |
| In Progress | The approval process is active and signatures are being collected. |
| Completed | All required signatures have been collected. |
| Approved - Pending Training | Approvals are complete but the training completion threshold has not been met. |
| Effective | The document has been made effective and is in use. |
Start the approval process
Section titled “Start the approval process”- On the left sidebar, select Documents.
- Select a document in Draft status to open it.
- Select Start Approval in the toolbar.
- The document status changes to Under Review.
Alternatively, start the approval from the Document Preview Panel:
- On the document detail page, select the Approvals tab.
- In the Actions card, select Start Approval Process.
Configure approval settings
Section titled “Configure approval settings”Configure approval requirements before or during the approval process.
From the Approvals tab
Section titled “From the Approvals tab”- On the document detail page, select the Approvals tab.
- Scroll to the Configure Approval Settings section.
- Set the following options:
| Setting | Description | Range |
|---|---|---|
| Signers | Search and select users who need to sign this document. | At least 1 required |
| Required Signatures | Number of signatures needed to complete approval. | 0 or more (cannot exceed the number of configured signers) |
| Threshold (%) | Percentage of signers required for approval. | 1 to 100 |
| Reminder Interval (days) | Days between automated reminders for pending signatures. | 1 or more |
| Notify on each signature | Send notifications when each individual signature is collected. | Checkbox |
| Notify on completion | Send a notification when all required signatures are collected. | Checkbox |
- Select Save.
From the document detail toolbar
Section titled “From the document detail toolbar”- On the document detail page for a Draft document, select Configure Approval in the toolbar.
- Set the Required Signatures count (1 to 10).
- Set the Training Threshold percentage (0 to 100). Set to 0 if no training is required.
- Use the Select Approvers search to find and add approvers.
- Select Save.
Sign and approve a document
Section titled “Sign and approve a document”- On the left sidebar, select Documents.
- Select a document in Under Review status to open it.
- Select Approve in the toolbar.
- In the electronic signature modal, confirm your approval with your signature.
- After signing, the signatures count updates. When all required signatures are collected, the state advances to Completed or Approved - Pending Training.
Alternatively, sign from the Document Preview Panel:
- On the document detail page, select the Approvals tab.
- Review the current approval status: Signatures (collected vs. required), Workflow State, and Training Ready.
- Select Sign & Approve.
- In the electronic signature modal, confirm your approval.
Make a document effective
Section titled “Make a document effective”After all approvals are collected and the training threshold is met, make the document effective.
- On the document detail page, verify that:
- All required signatures show a green checkmark.
- The training threshold shows “Ready”.
- Select Make Effective in the toolbar.
- The document status changes to Effective.
Reject a document
Section titled “Reject a document”- On the document detail page for a document in Under Review or Approved - Pending Training status, select Reject in the toolbar.
- In the rejection modal, enter a reason for the rejection.
- Select Reject to confirm.
Revert an approval
Section titled “Revert an approval”If something was missed during approval, an approver can return an approved document to Under Review so it can be amended and re-approved.
- On the document detail page for a document in Approved, Approved - Pending Training, or Training status, select Revert to Review in the toolbar.
- In the modal, enter a reason for reverting the approval. The reason is recorded in the audit trail.
- Select Revert to Review to confirm.
The document moves back to Under Review, all current approval signatures are invalidated (the audit trail is preserved), and the document owner is notified. After the document is amended, it must go through the full signature process again.
Document templates vs. workflow templates
Section titled “Document templates vs. workflow templates”InnoQualis EQMS uses two related-but-distinct admin objects, both surfaced under Admin in the sidebar:
| Admin tab | What it controls | Example |
|---|---|---|
| Document Templates | The starting file an author downloads when creating a new document — a Word .docx (or .pdf) blueprint with structured sections. | ”SOP-Template-v2.docx” with pre-filled Purpose / Scope / Procedure sections. |
| Workflow Templates | The approval lifecycle the document moves through — states, transitions, approval rules, and post-approval policy. | ”Standard SOP Workflow” with states draft → review → approved → training → effective and a QA Manager required at review. |
A real document ends up with both: it is created from a Document Template (the file shape) and governed by a Workflow Template (the approval process). They are configured independently — any file template can be paired with any workflow.
Per-workflow approval policy
Section titled “Per-workflow approval policy”Admins can lock down post-approval actions per workflow template. This is useful for highly regulated workflows (for example a clinical-protocol master) where rolling an approval back must go through a stricter alternative process.
Each workflow template exposes two toggles, both on by default so existing workflows retain current behavior:
| Toggle | When off |
|---|---|
| Allow revert approval | The Revert to Review button is hidden on documents using this workflow, and the API rejects revert requests with 403. |
| Allow reject after approval | The Reject button is hidden once the document reaches a post-approval state, and post-approval rejection requests are rejected with 403. |
To configure:
- On the left sidebar, select Admin → Workflow Templates.
- Open the workflow you want to change (Edit, or Create a new one).
- In the Approval policy section of the modal, toggle the checkboxes.
- Save. Changes apply live to all documents governed by that workflow — including documents that were already mid-flight.
State capability flags
Section titled “State capability flags”Workflow states can be named anything (in any language), but the document lifecycle still has standard phases that the rest of the system needs to understand: drafting, review, post-approval, training, effective, periodic review, archived. Each workflow state declares which phase(s) it represents via capability flags. The flags drive every UI button and every backend gate — so a state named “Senior Quality Lead Review” works exactly like one named “under_review”, as long as it has is_review ticked.
| Flag | Meaning | Unlocks |
|---|---|---|
| Initial | The state a new document starts in. | Document creation. |
| Terminal | No outbound transitions; lifecycle is finished. | (closes the workflow) |
| Allows edit | The author can edit document content. | Edit button on the document detail page. |
| Allows new version | The author can branch a new version. | New Version button. |
| Requires approval | Approve / reject signatures are required to leave the state. | Approve, Reject buttons. |
| Draft | Authoring pre-approval phase. | Start Approval button, edits, version creation. |
| Review | Approval-collection phase. | Approve, Reject buttons (mirrors Requires approval but is read by frontend gates). |
| Post-approval | Approved but not yet effective. | Revert to Review, post-approval Reject. |
| Training | Training-stage holding pen. | Auto-assign training, Make Effective via training-threshold check. |
| Effective | Live and in use. | Mark Obsolete, New Version, supersession. |
| Periodic review | Scheduled re-evaluation; document remains effective but is flagged. | Periodic review queues. |
| Archived | Lifecycle ended (obsolete, superseded, withdrawn). | Suppress from default lists / dashboards. |
Flags are not mutually exclusive — a training state typically has both is_post_approval and is_training ticked. The editor’s Validation panel flags conflicting combinations (e.g. is_draft && is_effective) and required ones (e.g. requires_approval with no matching approval rule).
How the Revert button decides when to appear
Section titled “How the Revert button decides when to appear”The detail page reads capabilities.can_revert_approval from the document response. That flag is true when:
- The current workflow state has
is_post_approval = true, and - The document’s workflow template’s
allow_revert_approvalpolicy istrue(the per-workflow toggle from the previous section).
Both conditions are evaluated live on every page load — no schema migration is needed when an admin re-tags a state. The custom-state-name workflow case works the same way: tick is_post_approval on the relevant custom state and the Revert button appears.
Workflow design canvas (desktop)
Section titled “Workflow design canvas (desktop)”On desktop, the Workflow Templates create/edit modal opens to a full-screen canvas where the workflow is built directly:
- States are draggable cards — color-coded by capability (green for effective, blue for post-approval, orange for training, etc.). Drag them around to lay out the diagram however you like.
- Click a state to edit it — the side panel on the right opens with the full state form: internal name, display name, description, color, lifecycle phase checkboxes, and (when the state requires approval) the approval rules for that state.
- Drag from one state’s right edge to another’s left edge to create a transition. The transition’s edit panel opens automatically so you can name it.
- Click an existing transition (the arrow) to edit it.
- Hover a state and click the trash icon to delete it.
- Add State button sits in the top-left corner of the canvas; the empty state offers an Add First State CTA.
The validation panel below the canvas surfaces structural issues live (no initial state, conflicting flag combinations, transitions referencing missing states, etc.) and disables Save when there are errors.
Mobile fallback
Section titled “Mobile fallback”On screens narrower than 1024 px the canvas is too cramped for direct manipulation. Mobile keeps the previous list-of-cards layout: a read-only mini-diagram followed by separate States, Transitions, and Approval Rules sections you scroll through and edit individually.
Document templates: file formats
Section titled “Document templates: file formats”The Document Templates admin tab accepts Word documents (.doc, .docx) and PDFs (.pdf). PDFs are useful for read-only blueprints (regulatory references, fixed boilerplate) where authors should not be able to alter the master.
Respond to a rejection
Section titled “Respond to a rejection”When a document is rejected, a Rejection Discussion panel appears with a threaded conversation.
| Message Type | Color | Description |
|---|---|---|
| Rejection | Red | The initial rejection with reason and comments |
| Response | Blue | Responses from the document owner or other participants |
| Escalation | Orange | Requests to escalate the discussion to management |
| Resolution | Green | Final resolution marking the discussion as closed |
- In the Rejection Discussion panel, type your response in the Add Response text area.
- Select Send Message.
Escalate a rejection
Section titled “Escalate a rejection”If you cannot resolve the rejection through discussion:
- Below the discussion thread, select Escalate to Management.
- In the dialog, enter the reason for escalation.
- Select Escalate.
- The escalation appears as an orange-highlighted message in the thread.
Resolve a rejection
Section titled “Resolve a rejection”Once the rejection issues have been addressed:
- Below the discussion thread, select Mark as Resolved.
- Enter the resolution details describing how the rejection was addressed.
- Select Mark Resolved.
- The discussion thread becomes read-only with a “Resolved” badge.
Approve multiple documents at once
Section titled “Approve multiple documents at once”- On the left sidebar, select Documents.
- Select the checkboxes next to the documents you want to approve.
- Select the bulk approve action in the toolbar.
Practical example: approving a batch record template
Section titled “Practical example: approving a batch record template”Scenario: A new batch record template (BR-101) for tablet manufacturing needs approval from three department heads before production can use it.
- The QA Specialist uploads BR-101 and opens the document detail page.
- On the Approvals tab, under Configure Approval Settings, they add three signers: the QA Manager, the Production Director, and the Validation Lead.
- They set Required Signatures to
3, Threshold to100, and Reminder Interval to3days. - They check both Notify on each signature and Notify on completion, then select Save.
- They select Start Approval Process — all three approvers receive an email notification.
- The QA Manager opens the document, reviews it, selects Sign & Approve, and confirms with their electronic signature.
- The Production Director does the same the next day. The Validation Lead is traveling and receives an automated reminder after 3 days.
- After the Validation Lead signs, all signatures are collected and the training threshold shows “Ready” (no training was required for this template).
- The QA Specialist selects Make Effective to make BR-101 available for production use.
If the document is rejected: The Production Director selects Reject and enters “Section 4.2 missing hold time specification.” The QA Specialist sees the rejection discussion, responds with a revised section, and selects Mark as Resolved once the issue is addressed. The approval process restarts.
Permissions
Section titled “Permissions”| Action | Required Role / Permission |
|---|---|
| Start approval process | Admin, QA Team |
| Configure approval settings | documents.approve permission |
| Sign and approve | documents.approve permission |
| Make document effective | documents.release permission |
| Reject document | Admin, QA Team |
| Revert approval (Approved → Under Review) | Admin, QA Team (documents.approve); subject to workflow policy |
| Configure workflow approval policy | Admin |
| Manage document templates (file blueprints) | Admin (Word/PDF uploads, version history, approval lifecycle) |
| Bulk approve | Admin, QA Team |