Skip to content

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.

StateDescription
Not StartedApproval has not been initiated for this document.
In ProgressThe approval process is active and signatures are being collected.
CompletedAll required signatures have been collected.
Approved - Pending TrainingApprovals are complete but the training completion threshold has not been met.
EffectiveThe document has been made effective and is in use.
  1. On the left sidebar, select Documents.
  2. Select a document in Draft status to open it.
  3. Select Start Approval in the toolbar.
  4. The document status changes to Under Review.

Alternatively, start the approval from the Document Preview Panel:

  1. On the document detail page, select the Approvals tab.
  2. In the Actions card, select Start Approval Process.

Configure approval requirements before or during the approval process.

  1. On the document detail page, select the Approvals tab.
  2. Scroll to the Configure Approval Settings section.
  3. Set the following options:
SettingDescriptionRange
SignersSearch and select users who need to sign this document.At least 1 required
Required SignaturesNumber 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 signatureSend notifications when each individual signature is collected.Checkbox
Notify on completionSend a notification when all required signatures are collected.Checkbox
  1. Select Save.
  1. On the document detail page for a Draft document, select Configure Approval in the toolbar.
  2. Set the Required Signatures count (1 to 10).
  3. Set the Training Threshold percentage (0 to 100). Set to 0 if no training is required.
  4. Use the Select Approvers search to find and add approvers.
  5. Select Save.
  1. On the left sidebar, select Documents.
  2. Select a document in Under Review status to open it.
  3. Select Approve in the toolbar.
  4. In the electronic signature modal, confirm your approval with your signature.
  5. 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:

  1. On the document detail page, select the Approvals tab.
  2. Review the current approval status: Signatures (collected vs. required), Workflow State, and Training Ready.
  3. Select Sign & Approve.
  4. In the electronic signature modal, confirm your approval.

After all approvals are collected and the training threshold is met, make the document effective.

  1. On the document detail page, verify that:
    • All required signatures show a green checkmark.
    • The training threshold shows “Ready”.
  2. Select Make Effective in the toolbar.
  3. The document status changes to Effective.
  1. On the document detail page for a document in Under Review or Approved - Pending Training status, select Reject in the toolbar.
  2. In the rejection modal, enter a reason for the rejection.
  3. Select Reject to confirm.

If something was missed during approval, an approver can return an approved document to Under Review so it can be amended and re-approved.

  1. On the document detail page for a document in Approved, Approved - Pending Training, or Training status, select Revert to Review in the toolbar.
  2. In the modal, enter a reason for reverting the approval. The reason is recorded in the audit trail.
  3. 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.

InnoQualis EQMS uses two related-but-distinct admin objects, both surfaced under Admin in the sidebar:

Admin tabWhat it controlsExample
Document TemplatesThe 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 TemplatesThe 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.

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:

ToggleWhen off
Allow revert approvalThe Revert to Review button is hidden on documents using this workflow, and the API rejects revert requests with 403.
Allow reject after approvalThe Reject button is hidden once the document reaches a post-approval state, and post-approval rejection requests are rejected with 403.

To configure:

  1. On the left sidebar, select AdminWorkflow Templates.
  2. Open the workflow you want to change (Edit, or Create a new one).
  3. In the Approval policy section of the modal, toggle the checkboxes.
  4. Save. Changes apply live to all documents governed by that workflow — including documents that were already mid-flight.

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.

FlagMeaningUnlocks
InitialThe state a new document starts in.Document creation.
TerminalNo outbound transitions; lifecycle is finished.(closes the workflow)
Allows editThe author can edit document content.Edit button on the document detail page.
Allows new versionThe author can branch a new version.New Version button.
Requires approvalApprove / reject signatures are required to leave the state.Approve, Reject buttons.
DraftAuthoring pre-approval phase.Start Approval button, edits, version creation.
ReviewApproval-collection phase.Approve, Reject buttons (mirrors Requires approval but is read by frontend gates).
Post-approvalApproved but not yet effective.Revert to Review, post-approval Reject.
TrainingTraining-stage holding pen.Auto-assign training, Make Effective via training-threshold check.
EffectiveLive and in use.Mark Obsolete, New Version, supersession.
Periodic reviewScheduled re-evaluation; document remains effective but is flagged.Periodic review queues.
ArchivedLifecycle 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:

  1. The current workflow state has is_post_approval = true, and
  2. The document’s workflow template’s allow_revert_approval policy is true (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.

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.

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.

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.

When a document is rejected, a Rejection Discussion panel appears with a threaded conversation.

Message TypeColorDescription
RejectionRedThe initial rejection with reason and comments
ResponseBlueResponses from the document owner or other participants
EscalationOrangeRequests to escalate the discussion to management
ResolutionGreenFinal resolution marking the discussion as closed
  1. In the Rejection Discussion panel, type your response in the Add Response text area.
  2. Select Send Message.

If you cannot resolve the rejection through discussion:

  1. Below the discussion thread, select Escalate to Management.
  2. In the dialog, enter the reason for escalation.
  3. Select Escalate.
  4. The escalation appears as an orange-highlighted message in the thread.

Once the rejection issues have been addressed:

  1. Below the discussion thread, select Mark as Resolved.
  2. Enter the resolution details describing how the rejection was addressed.
  3. Select Mark Resolved.
  4. The discussion thread becomes read-only with a “Resolved” badge.
  1. On the left sidebar, select Documents.
  2. Select the checkboxes next to the documents you want to approve.
  3. 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.

  1. The QA Specialist uploads BR-101 and opens the document detail page.
  2. On the Approvals tab, under Configure Approval Settings, they add three signers: the QA Manager, the Production Director, and the Validation Lead.
  3. They set Required Signatures to 3, Threshold to 100, and Reminder Interval to 3 days.
  4. They check both Notify on each signature and Notify on completion, then select Save.
  5. They select Start Approval Process — all three approvers receive an email notification.
  6. The QA Manager opens the document, reviews it, selects Sign & Approve, and confirms with their electronic signature.
  7. The Production Director does the same the next day. The Validation Lead is traveling and receives an automated reminder after 3 days.
  8. After the Validation Lead signs, all signatures are collected and the training threshold shows “Ready” (no training was required for this template).
  9. 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.

ActionRequired Role / Permission
Start approval processAdmin, QA Team
Configure approval settingsdocuments.approve permission
Sign and approvedocuments.approve permission
Make document effectivedocuments.release permission
Reject documentAdmin, QA Team
Revert approval (Approved → Under Review)Admin, QA Team (documents.approve); subject to workflow policy
Configure workflow approval policyAdmin
Manage document templates (file blueprints)Admin (Word/PDF uploads, version history, approval lifecycle)
Bulk approveAdmin, QA Team