Designing multi-level authorization in quote approval workflows: best practices and pitfalls

We’re redesigning our quote approval process in NetSuite 2023.2 and I’d like input on best practices for multi-level authorization. Currently, we have a simple two-tier approval (sales manager, then VP), but it’s causing bottlenecks and doesn’t account for deal complexity.

I’m considering a dynamic approval routing system where the approval chain adjusts based on quote characteristics: deal size, discount percentage, product mix, customer type, and regional factors. For example, a $500K deal with 25% discount in a new market segment might need finance approval, legal review, and executive sign-off, while a $50K renewal at standard pricing only needs the regional manager.

Key challenges I’m thinking through: How do you design escalation paths when approvers are unavailable? What’s the right balance between thorough review and sales velocity? How do you manage notification fatigue when multiple approvers are involved? Should approval steps run sequentially or can some run in parallel?

Interested in hearing how others have tackled complex approval routing and what patterns work well in SuiteFlow.

From the sales leadership perspective, the key is transparency. Make sure your workflow provides visibility into where a quote is in the approval chain and why it’s at each stage. We built a custom ‘Quote Approval Dashboard’ that shows all pending approvals with aging, approval history, and bottleneck analysis. Sales reps can see exactly who has their quote and how long they’ve had it. This accountability dramatically improved approval velocity-nobody wants to be the visible bottleneck on the dashboard.

For escalation paths, we use a delegate system. Each approver can designate a backup approver in their employee record. The workflow checks if the primary approver has been inactive for more than 48 hours (we track last login), and if so, automatically routes to their designated delegate. We also have a ‘Skip to Next Level’ option where if an approver doesn’t respond within their SLA window, the workflow escalates to the next approval level. This keeps deals moving even when people are out of office.

Sequential vs parallel approvals depend on the nature of the review. We use parallel for independent reviews (legal and finance can review simultaneously since they’re checking different things), but sequential when later approvers need context from earlier decisions. For example, the sales manager approves first and adds comments about deal context, then that goes to finance who needs that context to evaluate the discount request. Our workflow has both patterns depending on the approval stage.

Notification management is crucial. We implemented a digest system where instead of sending an email for every approval request, we batch them into a twice-daily digest for approvers who have multiple pending requests. The workflow tracks pending approvals in a custom record and a scheduled script generates the digest. For urgent approvals (deals over $250K or time-sensitive quotes), we still send immediate notifications. This reduced notification volume by 60% and actually improved approval response times because approvers weren’t overwhelmed.

I’ll share our comprehensive approach across all three key design areas:

Dynamic Approval Routing Implementation: Build a decision matrix using custom records rather than hardcoding logic. Create an ‘Approval Rule’ record type with fields for: minimum deal size, maximum deal size, discount threshold, product categories, customer types, and required approver roles. Each rule has a priority ranking. At workflow initiation, calculate the quote’s characteristics and query all matching rules, then apply the highest priority rule to determine the approval chain. Store the determined approval path in a custom field on the quote so approvers can see the full chain. This architecture lets you modify routing rules without touching the workflow code.

For the routing logic itself, use a scoring system where different quote attributes contribute points. Deal size over $100K adds 2 points, discount over 20% adds 2 points, new customer adds 1 point, international deal adds 1 point. Then map score ranges to approval chains: 0-2 points requires manager only, 3-4 points adds director, 5+ points requires VP and finance. This creates a graduated approval intensity that matches deal complexity.

Escalation Paths and Delegation: Implement a three-tier escalation system. First tier: if primary approver hasn’t responded within 24 hours, send a reminder notification. Second tier: after 48 hours, notify the approver’s manager and offer an ‘escalate to delegate’ option. Third tier: after 72 hours, automatically route to the next approval level with a note that the previous level timed out. Track these escalations in a custom ‘Approval SLA Violations’ record to identify chronic bottlenecks.

For delegation, add custom fields to employee records: ‘Primary Approval Delegate’ and ‘Out of Office Until Date’. The workflow checks these fields and automatically routes to delegates when the primary approver is marked out of office. Also implement role-based fallback where if an individual approver isn’t available, the workflow can route to anyone in their role above a certain level (e.g., any Director in Finance can approve if the CFO is unavailable).

Notification Management Strategy: Use smart notification logic to avoid fatigue. Implement notification preferences where approvers can choose: immediate notifications for deals over their threshold, daily digest for routine approvals, or weekly summary for FYI items. The workflow respects these preferences stored in custom fields. For the notifications themselves, use rich HTML emails that include all key quote details, approval buttons (approve/reject via email link), and a summary of previous approval decisions in the chain. This eliminates the need for approvers to log into NetSuite for routine approvals.

For parallel vs sequential, use this pattern: independent functional reviews (legal, finance, technical) run in parallel at the same approval stage, then once all parallel reviews complete, the workflow advances to the next sequential stage (e.g., executive approval). Build in workflow states for each parallel branch and use a ‘join’ state that waits for all branches to complete before proceeding.

Finally, implement approval analytics. Track metrics like average approval time by level, approval rate by approver, deals stuck in approval, and escalation frequency. Use this data to continuously optimize your routing rules and identify process improvements. We reduced our average quote approval time from 4.2 days to 1.8 days using this approach.