How to Configure Approval Workflows in NetSuite

Approval workflows ensure proper oversight of financial transactions. This guide covers setting up purchase order approvals, expense report routing, multi-level approval chains, delegation rules, and best practices.

Approval workflows are essential for maintaining financial controls and ensuring that key transactions receive proper review before they're processed. Oracle NetSuite's SuiteFlow engine makes it possible to build sophisticated approval routing—from simple manager approvals to multi-level chains based on amounts, departments, or custom criteria.

Common Approval Scenarios

  • Purchase Order Approvals – Route POs to managers or procurement officers based on amount thresholds
  • Expense Report Approvals – Route employee expense reports to their managers for review
  • Sales Order Discounts – Require approval when discounts exceed a certain percentage
  • Journal Entry Approvals – Ensure journal entries are reviewed before posting
  • Vendor Bill Approvals – Route bills for approval before payment processing

Step 1: Enable Approval Features

Before building approval workflows, enable the relevant features at Setup > Company > Enable Features:

  • On the Accounting tab, check the relevant approval features (e.g., "Purchase Order Approvals")
  • Ensure the SuiteFlow feature is enabled on the SuiteCloud tab

Step 2: Design Your Approval Logic

Before building the workflow, document your approval rules:

  • Who approves? – The creator's manager, a specific role, a named person, or determined by the transaction amount?
  • What are the thresholds? – POs under $500 auto-approve, $500-$5,000 need manager approval, over $5,000 need director approval?
  • What happens on rejection? – Return to the creator for revision, or cancel the transaction?
  • Delegation – Can approvers delegate to someone else when they're unavailable?

Step 3: Build the Workflow

Navigate to Customization > Workflow > Workflows > New and create a workflow following the workflow building guide. For a typical PO approval:

States

  1. Draft – PO is being created/edited
  2. Pending Approval – Submitted for approval, locked from editing
  3. Approved – Approved and ready for processing
  4. Rejected – Sent back to creator with rejection notes

Key Actions

  • Entry to Pending Approval – Lock the record, send email notification to approver, add Approve/Reject buttons
  • Approve transition – Set the PO status to "Pending Receipt," unlock the record, send confirmation email
  • Reject transition – Add a mandatory "Rejection Reason" field, send notification to creator, unlock for editing

Step 4: Implement Amount-Based Routing

For multi-level approvals based on amount thresholds, use workflow conditions:

Amount RangeRequired Approver
Under $500Auto-approved (skip approval states)
$500 – $5,000Department Manager
$5,000 – $25,000Department Manager + Finance Director
Over $25,000Department Manager + Finance Director + CEO

Implement this by creating conditional transitions from the "Pending Approval" state. Use formula conditions like:

{total} > 5000 AND {total} <= 25000

Step 5: Set Up Email Notifications

At each approval state, add "Send Email" actions to notify the relevant parties:

  • Submission – Notify the approver that a PO is waiting for their review
  • Approval – Notify the creator that their PO was approved
  • Rejection – Notify the creator with the rejection reason
  • Reminder – If using a scheduled trigger, send reminders for POs pending approval for more than 48 hours

Step 6: Handle Delegation

For times when an approver is unavailable:

  • Create a custom field on the Employee record called "Approval Delegate"
  • In your workflow, check if the primary approver has a delegate set, and route the notification to the delegate instead
  • Alternatively, use NetSuite's built-in approval delegation feature (available in certain editions)

Best Practices

  • Keep approval chains short – More than 3 levels of approval slows down operations significantly
  • Set auto-approval thresholds – Low-value transactions shouldn't require manual approval
  • Include rejection reasons – Make the rejection reason mandatory so creators know what to fix
  • Add escalation rules – If an approval is pending for too long, escalate to the next level or send reminders
  • Audit your approval history – Use system notes to track who approved what and when, for compliance purposes
  • Test thoroughly – Walk through every possible path (approve, reject, resubmit, delegate) before releasing to production

Need help implementing approval workflows for your organization? Contact YRK Consulting for expert NetSuite workflow design.