How the Approval Workflow Works

Modified on Tue, 18 Nov at 1:39 PM

How the Approval Workflow Works

Introduction

The ARMOR Order Management system includes a flexible approval workflow that allows organizations to enforce financial controls, review major expenditures, and ensure that orders align with business policies before they're sent to vendors. The approval system operates on a rule-based logic that evaluates each order against automation rules and vendor-specific approval requirements, determining whether an order can proceed immediately or requires managerial review.

Understanding the approval workflow is essential for administrators configuring approval policies, managers responsible for reviewing orders, and users who create orders and need to know what approvals their orders might require. This article explains how approval logic works, how approvals are triggered, how approvers are notified, and how to manage the approval process effectively.

The Approval Decision Logic

When Are Approvals Required?

ARMOR evaluates each order at the moment of creation to determine whether approval is required. The decision is based on three potential approval sources, which can be combined or used individually:

Approval Source Description Configuration Location
Rule-Based Approval Automation rules specify approval requirements based on order type, asset tags, or other criteria Order Management > Automation Rules > [Rule] > Approval Settings
Vendor-Based Approval Individual vendors are configured to always require approval for orders sent to them Order Management > Vendors > [Vendor] > Require Approval checkbox
Order Type Default Account-level settings require approval for specific order types (e.g., all capital orders) Account Settings > Order Management > Default Approval Rules

The system evaluates these sources using the following logic (from the Go source code decideApproval function):

  1. Rule-Based Check: If an automation rule triggered the order (or if a matching rule exists), check whether the rule requires approval.
    • If rule.RequiresApproval == true, approval is required.
    • Approvers are taken from the rule's Approvers list.
  2. Vendor-Based Check: Check if the selected vendor has RequiresApproval == true.
    • If yes, approval is required.
    • Approvers are taken from the vendor's Approvers list.
  3. Combined Logic: If both rule-based and vendor-based approval are configured:
    • Approval is required.
    • The approver list is merged (union of rule approvers and vendor approvers).
    • Only one approver needs to approve the order (OR logic).
  4. Order Type Default: If neither rule nor vendor requires approval, check account-level defaults (e.g., all capital orders require approval).
  5. No Approval Required: If none of the above conditions apply, the order bypasses approval and is sent directly to the vendor.

Approval Logic Examples

Example 1: Rule-Based Approval Only

  • Automation Rule: "Service orders for generators tagged 'Critical' require approval."
  • Approvers in rule: manager@example.com
  • Order: Service order for a generator tagged "Critical"
  • Result: Approval required from manager@example.com

Example 2: Vendor-Based Approval Only

  • Vendor: "Premium CAT Service"
  • Vendor setting: Requires Approval = true
  • Approvers in vendor: finance@example.com
  • Order: Service order sent to "Premium CAT Service"
  • Result: Approval required from finance@example.com

Example 3: Combined Rule + Vendor Approval

  • Automation Rule: "Service orders over $5,000 estimated value require approval" (Approvers: manager@example.com)
  • Vendor: "Emergency Repair Vendor" (Requires Approval = true, Approvers: emergency-coordinator@example.com)
  • Order: Service order for estimated $6,000 sent to "Emergency Repair Vendor"
  • Result: Approval required from EITHER manager@example.com OR emergency-coordinator@example.com (whichever approves first)

Example 4: No Approval Required

  • Order: Routine parts order ($200) for a non-critical generator sent to standard vendor
  • No automation rule matches.
  • Vendor does not require approval.
  • Result: Order sent directly to vendor without approval

Configuring Approval Requirements

Rule-Based Approval Configuration

Automation rules provide the most flexible approval configuration. You can require approval based on:

  • Asset characteristics (tags, manufacturer, model)
  • Order type (parts, service, capital)
  • Estimated order value
  • Site or organizational unit
  • Time of day or day of week

To Configure Rule-Based Approval:

  1. Navigate to Order Management > Automation Rules.
  2. Create a new rule or edit an existing rule.
  3. In the rule configuration form, locate the Approval Settings section.
  4. Check the box Requires Approval.
  5. In the Approvers field, add one or more email addresses:
    • Type an email address and press Enter to add it to the list.
    • You can add multiple approvers (e.g., manager@example.com, supervisor@example.com).
    • Only ONE approver needs to approve the order (OR logic).
  6. Save the rule.

Best Practices for Rule-Based Approvals:

  • Use Role-Based Emails: Instead of individual emails (john.smith@example.com), use role-based aliases (maintenance-manager@example.com, finance-approver@example.com) to ensure continuity when personnel change.
  • Prioritize Critical Assets: Require approval for assets tagged "Critical" or high-value equipment.
  • Set Monetary Thresholds: If your ARMOR configuration supports estimated value fields, require approval for orders exceeding a certain amount (e.g., >$1,000).
  • Separate Capital Orders: Create a specific rule for capital orders with multi-level approval (e.g., manager AND finance director).

Vendor-Based Approval Configuration

Vendor-level approval is useful when specific vendors always require pre-authorization, regardless of the order details.

To Configure Vendor-Based Approval:

  1. Navigate to Order Management > Vendors.
  2. Select the vendor you want to configure (or create a new vendor).
  3. In the vendor edit form, locate the Requires Approval checkbox.
  4. Check the box to enable approval requirement.
  5. In the Approvers field, add one or more email addresses of people who can approve orders for this vendor.
  6. Save the vendor configuration.

When to Use Vendor-Based Approval:

  • High-cost vendors (e.g., specialized consultants, premium service providers)
  • New or unproven vendors (require approval until trust is established)
  • Vendors with contractual approval requirements (e.g., vendor relationship requires manager sign-off)
  • Emergency vendors (to control usage and ensure genuine emergencies)

Order Type Default Approvals

Some ARMOR accounts have system-wide defaults that require approval for specific order types:

Order Type Common Default Rationale
Parts Orders No approval required (low cost, routine) Parts orders are typically small-value and don't warrant approval overhead
Service Orders Optional approval (depends on rules/vendors) Service costs vary widely; use rules to require approval for high-value services
Capital Orders Approval required by default Capital expenditures are significant and require financial oversight

Account-level defaults are configured by your ARMOR system administrator and apply globally unless overridden by specific rules or vendor settings.

The Approval Process: Step-by-Step

Step 1: Order Creation and Submission

When a user creates an order (via web portal or mobile app):

  1. The user fills out the order form (asset, vendor, description, etc.).
  2. The user clicks Submit Order.
  3. ARMOR evaluates the approval logic as described above.
  4. If approval is required:
    • The order status is set to Pending.
    • The order is NOT sent to the vendor yet.
    • Approval notification emails are sent to the designated approvers.
  5. If no approval is required:
    • The order status is set to Approved (or skips directly to Sent).
    • The order email is sent to the vendor immediately.

Step 2: Approver Notification

When an order requires approval, ARMOR sends an email to each approver in the approver list. The email includes:

  • Subject: "Order Approval Required: [ORDER-ID] - [Asset Name]"
  • Order Summary:
    • Order ID (e.g., SVC-127)
    • Order Type (Parts, Service, Capital)
    • Asset Name, Manufacturer, Model
    • Site/Location
    • Vendor Name and Contact
    • Order Description
    • Priority Level
    • Estimated Cost (if available)
    • Created By (user who created the order)
    • Created Date/Time
  • Action Buttons:
    • Approve Order: Green button that links to an approval URL
    • Reject Order: Red button that links to a rejection URL
  • Attached Images: If the order included photos, they may be embedded or attached to the email (depending on configuration).

The email template is designed for quick decision-making, allowing approvers to approve or reject without logging into the web portal.

Step 3: Approver Reviews the Order

The approver reviews the order details in the email and decides whether to approve or reject based on organizational policies:

Approval Criteria (Examples):

  • Is the order justified and necessary?
  • Does the order align with the current budget?
  • Is the vendor appropriate for this order?
  • Is the estimated cost reasonable?
  • Does the order description provide sufficient detail?
  • Is this an emergency that warrants expedited approval?

Step 4: Approver Takes Action

Option A: Approve via Email Link

  1. The approver clicks the Approve Order button in the email.
  2. Their web browser opens to a confirmation page showing order details.
  3. The approver clicks Confirm Approval on the page.
  4. The order status changes to Approved.
  5. ARMOR immediately sends the order to the vendor.
  6. The order creator receives a notification: "Your order [ORDER-ID] has been approved."

Option B: Reject via Email Link

  1. The approver clicks the Reject Order button in the email.
  2. Their web browser opens to a rejection form.
  3. The approver enters a rejection reason (required): "Insufficient budget approval" or "Incorrect vendor selected" or "Need more details in order description."
  4. The approver clicks Confirm Rejection.
  5. The order status changes to Rejected.
  6. The vendor is NOT contacted.
  7. The order creator receives a notification: "Your order [ORDER-ID] has been rejected. Reason: [rejection reason]."

Option C: Approve or Reject via Web Portal

  1. The approver logs into the ARMOR web portal.
  2. Navigates to Order Management > Pending Approvals (or Orders filtered by status "Pending").
  3. Clicks on the order to view full details.
  4. Reviews all order information, attachments, and internal notes.
  5. Clicks Approve or Reject button on the order detail page.
  6. If rejecting, enters a rejection reason.
  7. Confirms the action.

The web portal method is preferred when approvers need to review additional context (e.g., asset history, previous orders, vendor performance) before deciding.

Step 5: Post-Approval Actions

If Approved:

  1. Order status changes from "Pending" to "Approved."
  2. ARMOR generates the vendor notification email (see How Vendors Receive Orders).
  3. The email is sent to the vendor's contact address.
  4. Order status changes to "Sent."
  5. The order creator and any other stakeholders receive a notification of approval and vendor notification.
  6. The order proceeds through the normal lifecycle (Sent → In Progress → Complete).

If Rejected:

  1. Order status changes to "Rejected."
  2. The vendor is NOT contacted.
  3. The order creator receives an email with the rejection reason.
  4. The order remains in the system with "Rejected" status for audit purposes.
  5. The order creator can:
    • Review the rejection reason and address the issue.
    • Create a new, revised order that addresses the approver's concerns.
    • Contact the approver to discuss the rejection and potentially resubmit.

Approval Scenarios and Examples

Scenario 1: Emergency Service Order with Fast Approval

Situation: A critical generator fails. A technician creates an emergency service order. The organization requires approval for all emergency vendor orders.

Workflow:

  1. Technician creates emergency service order via mobile app at 10:15 AM.
  2. Order requires approval per vendor configuration (Emergency Vendor requires approval).
  3. Approver: emergency-coordinator@example.com
  4. Order status: Pending
  5. Approval email sent at 10:16 AM to emergency coordinator.
  6. Coordinator reviews email on phone, clicks "Approve Order" at 10:18 AM.
  7. Order approved at 10:18 AM.
  8. Vendor notified immediately at 10:18 AM.
  9. Total approval time: 2 minutes.

Key Insight: Email-based approval enables rapid response for emergencies without requiring approvers to log into the portal.

Scenario 2: Capital Order with Multi-Level Review

Situation: A site manager requests a quote for a new $150,000 generator (capital order). The organization requires approval from both the operations manager and the finance director.

Workflow:

  1. Site manager creates capital order on November 15 at 9:00 AM.
  2. Automation rule: "Capital orders over $100K require approval."
  3. Approvers: operations-manager@example.com, finance-director@example.com
  4. Order status: Pending
  5. Approval emails sent to both approvers at 9:01 AM.
  6. Operations manager reviews and approves on November 15 at 2:00 PM.
  7. Order status: Pending (still awaiting finance director).
  8. Note: In the current OR-logic system, only ONE approver is required. If your organization requires ALL approvers to approve (AND logic), this must be configured at the account level or enforced manually.
  9. Finance director approves on November 16 at 10:00 AM (assuming AND logic is enforced manually or via custom configuration).
  10. Order approved at 10:00 AM on November 16.
  11. Vendor (equipment supplier) notified at 10:00 AM.

Key Insight: For critical or high-value orders, approvers may need more time to review. Setting expectations with order creators about approval timelines is important.

Scenario 3: Rejection Due to Insufficient Detail

Situation: A technician creates a service order with a vague description: "Generator needs service." The manager rejects the order for lack of detail.

Workflow:

  1. Technician creates service order at 11:00 AM.
  2. Description: "Generator needs service."
  3. Order requires approval per automation rule (all service orders for generators).
  4. Approver: maintenance-manager@example.com
  5. Approval email sent at 11:01 AM.
  6. Manager reviews order at 11:30 AM and finds description insufficient.
  7. Manager clicks "Reject Order."
  8. Manager enters rejection reason: "Order description is too vague. Please specify: What type of service? Is this PM or repair? Any known issues or error codes?"
  9. Order rejected at 11:32 AM.
  10. Technician receives rejection email at 11:32 AM.
  11. Technician creates a new order at 12:00 PM with detailed description: "Perform 500-hour preventive maintenance per manufacturer schedule. Includes oil/filter change, coolant check, belt inspection, battery test, load bank test (1 hour at 75% load)."
  12. New order submitted and approved at 12:15 PM.

Key Insight: Rejection reasons help order creators understand what's needed, improving future order quality.

Scenario 4: No Approval Required (Standard Parts Order)

Situation: A technician orders routine air and oil filters for a generator (low-value parts order).

Workflow:

  1. Technician creates parts order at 2:00 PM.
  2. Order type: Parts
  3. Estimated value: $150
  4. No automation rule matches (no rule for low-value parts orders).
  5. Vendor does not require approval.
  6. Approval decision: No approval required.
  7. Order status changes directly to "Sent" at 2:00 PM.
  8. Vendor receives order email at 2:00 PM.
  9. Total time from creation to vendor notification: <1 minute.

Key Insight: For routine, low-value orders, bypassing approval streamlines operations and reduces administrative overhead.

Managing Approvals: Administrator View

Viewing Pending Approvals

Approvers and administrators can view all orders awaiting approval:

  1. Log in to the ARMOR web portal.
  2. Navigate to Order Management > Orders.
  3. Use the Status Filter dropdown and select Pending.
  4. The list displays all orders in "Pending" status, showing:
    • Order ID
    • Order Type
    • Asset Name
    • Created By
    • Created Date
    • Approvers (who can approve)
  5. Click an order to view full details and approve/reject.

Approver Dashboard (If Available)

Some ARMOR configurations include a dedicated Approver Dashboard that shows:

  • Count of pending approvals assigned to the logged-in user
  • Total value of pending orders (if cost estimates are available)
  • Average time to approval (performance metric)
  • Oldest pending order (to highlight delays)

This dashboard helps approvers prioritize their work and ensures timely reviews.

Bulk Approval (Advanced Feature)

For organizations with high order volumes, some ARMOR configurations support bulk approval:

  1. Navigate to Order Management > Pending Approvals.
  2. Select multiple orders using checkboxes.
  3. Click Approve Selected or Reject Selected.
  4. Confirm the action.
  5. All selected orders are approved or rejected simultaneously.

Bulk actions are useful for approving multiple routine orders at once (e.g., weekly PM orders for multiple assets).

Troubleshooting Approval Issues

Issue: Approver Never Received Approval Email

Symptoms:

  • An order is in "Pending" status, but the approver claims they never received the approval email.

Diagnosis:

  1. Check the approver's spam/junk folder.
  2. Verify that the approver's email address is correct in the automation rule or vendor configuration.
  3. Check the order detail page in the web portal for email delivery logs (if available).

Resolution:

  • Resend the approval email: Some ARMOR configurations allow administrators to click Resend Approval Request from the order detail page.
  • Whitelist ARMOR notification emails: Add the ARMOR system email address (e.g., noreply@armordata.com) to the approver's email whitelist or safe sender list.
  • Approve via web portal: The approver can log in and approve the order manually without waiting for the email.

Issue: Order Stuck in "Pending" for Days

Symptoms:

  • An order remains in "Pending" status for an unusually long time (3+ days for non-capital orders, 7+ days for capital orders).

Diagnosis:

  • The approver is unavailable (vacation, out of office, left the organization).
  • The approver forgot to approve the order.
  • The approver is waiting for additional information before deciding.

Resolution:

  • Reminder Email: Send a manual reminder to the approver: "Order [ORDER-ID] is still pending your review."
  • Escalation: If the primary approver is unavailable, contact an alternate approver (if configured) or an administrator who can approve on their behalf.
  • Edit Approver List: If an approver is no longer with the organization, update the automation rule or vendor configuration to remove them and add a replacement.
  • Bypass Approval (Emergency): Administrators with sufficient permissions can manually change the order status from "Pending" to "Approved" to bypass the approval process in genuine emergencies.

Issue: Wrong Person Listed as Approver

Symptoms:

  • An order requires approval from someone who should not be approving that type of order (e.g., a finance person approving a technical service order).

Diagnosis:

  • The automation rule or vendor configuration has incorrect approvers listed.
  • The rule logic is too broad and matching orders it shouldn't.

Resolution:

  • Review and edit the automation rule or vendor configuration to correct the approver list.
  • Refine rule matching criteria to ensure the rule only applies to appropriate orders.
  • For the current order, manually reassign the approver (if your ARMOR configuration supports this) or ask an administrator to approve on behalf of the correct person.

Issue: Order Approved But Not Sent to Vendor

Symptoms:

  • Order status shows "Approved" but the vendor never received the order email.

Diagnosis:

  • Vendor email address is invalid or incorrect.
  • Email delivery failed due to network or server issues.
  • Vendor's email server rejected the email (spam filter, full mailbox).

Resolution:

  • Check the vendor's email address in the vendor configuration: Order Management > Vendors > [Vendor] > Contact Email.
  • Verify email delivery logs in the order detail page (if available).
  • Manually forward the order to the vendor via your own email client as a workaround.
  • Contact ARMOR support if email delivery failures are recurring—there may be a server-side issue.

Best Practices for Approval Workflows

For Administrators Configuring Approvals

  • Use Role-Based Approvers: Configure approvers using role-based email aliases (manager@, finance@, operations@) rather than individual names to ensure continuity.
  • Balance Control and Speed: Require approval only for orders that genuinely need oversight (high-value, critical assets, new vendors). Over-requiring approval creates bottlenecks.
  • Set Clear Approval Criteria: Document what should be approved vs. rejected so approvers can make consistent decisions.
  • Monitor Approval Times: Track average approval times and identify slow approvers. Provide training or escalation processes as needed.
  • Test Approval Emails: Periodically test that approval emails are delivered correctly and that approve/reject links work.

For Approvers

  • Respond Promptly: Aim to approve or reject orders within 24 hours (or within 1 hour for emergencies).
  • Provide Clear Rejection Reasons: When rejecting, explain specifically what's wrong and what's needed for approval. Generic reasons like "Denied" are unhelpful.
  • Set Up Email Filters: Create email filters to flag ARMOR approval emails as high-priority or move them to a dedicated folder for quick access.
  • Approve on Mobile: Approval emails are designed to work on mobile devices—approve orders even when away from your desk.
  • Communicate Absences: If you'll be unavailable (vacation, conference), notify your administrator so they can temporarily reassign approvals or designate a backup.

For Order Creators

  • Provide Complete Information: The more detailed and clear your order description, the faster approval will be.
  • Attach Photos: Visual evidence (damage, part labels) helps approvers understand the need.
  • Indicate Urgency Accurately: Don't mark every order as "Emergency"—this dilutes the priority system. Use "Emergency" only for genuine emergencies.
  • Follow Up on Pending Orders: If an order is pending for more than 24-48 hours (non-emergency), send a polite reminder to the approver.
  • Learn from Rejections: If your orders are frequently rejected, review rejection reasons and adjust your order creation habits accordingly.

Approval Workflow and Automation Rules

Approval logic is tightly integrated with automation rules. When an automation rule automatically creates an order (e.g., based on a maintenance schedule or sensor alert), the approval requirement is determined by the rule's configuration:

  • If rule.RequiresApproval == true, the automatically created order goes into "Pending" status and awaits approval before being sent to the vendor.
  • If rule.RequiresApproval == false, the order is sent to the vendor immediately without human intervention.

This allows organizations to automate routine orders (e.g., quarterly PM orders) while still maintaining oversight of critical or high-value automated orders.

For detailed information on automation rules, see the article What Are Order Automation Rules?

Related Topics

Summary

The ARMOR approval workflow evaluates each order against rule-based, vendor-based, and account-level approval requirements to determine whether managerial review is needed before sending orders to vendors. Approvers receive email notifications with approve/reject links for quick decision-making. Approvals use OR logic by default (only one approver needs to approve), but can be configured for multi-level review. Administrators should balance control with operational speed by requiring approval only for orders that genuinely need oversight. Approvers should respond promptly and provide clear rejection reasons. Order creators should provide complete information to facilitate fast approval. The approval system integrates with automation rules to maintain oversight of automatically generated orders while streamlining routine workflows.

For assistance with approval workflow configuration, contact the ARMOR Support Team.

Tags: orders, approval, workflow, automation rules, vendors, decision logic, management, oversight

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article