Building an approval workflow drivers (and auditors) actually love

Published: 25/4/2026 • Last reviewed: 25/4/2026 • 7 min read

Fast, low-friction approval without losing control. The workflow design that cuts friction by 60%.

The two failure modes

Approval workflows for mileage tend to fail in one of two ways:

1. Bottleneck: every trip queues for the manager's approval. Managers approve in batches once a week or once a month, drivers wait, the cycle stretches, late submissions accumulate. 2. Rubber-stamp: managers approve everything in one click without reading. The audit trail looks complete but no real review happened — and audit findings start showing up.

A workflow that drivers love and auditors trust avoids both. The trick is to differentiate between trips that need real review and trips that don't.

The 80/20 of trips

Across the Quilometragem customer base, ~80% of trips fall into a small number of patterns: regular client visits, recurring office-to-site routes, recurring inter-office travel. These trips don't need scrutiny — they're routine, the route is known, the purpose is the same week after week.

The other ~20% are non-routine: new clients, exceptional routes, longer-than-typical trips, trips outside business hours. These deserve a real look.

A good workflow auto-approves the 80% (with audit-quality recording) and routes the 20% to the manager. This is the *exception-based approval* pattern.

How auto-approval works without losing control

The auto-approval rule fires when a trip matches *all* of these:

- Origin and destination are in the driver's recurring-routes list. - Distance is within ±15% of the historical mean for that route. - The driver has no flagged trips in the last 90 days. - The trip duration is consistent with the route (not 4 hours for a 30-min drive). - Within working hours.

If any condition fails, the trip queues for manual approval. The manager sees only the queue, not the auto-approved 80%.

What the manager sees

The manager's queue should show, per pending trip, in one row:

- Driver, date, route map (with the proposed track). - Distance and reimbursement amount. - Why it's in the queue (which auto-approval condition failed). - A note field for any explanation the driver added. - One-tap approve / reject / request-info.

A queue with 5-15 trips a week per manager is the sweet spot. More than that suggests auto-approval rules are too tight.

What auditors see

The audit log should show, per trip:

- Driver, date, route, distance, amount. - Auto-approval status (auto vs manual). - If manual: approver identity and timestamp. - If auto: the rule that triggered.

Auditors care less about the human-in-the-loop status and more about the documentation completeness. As long as every trip has an auditable approval (auto or manual), audit findings stay clean.

Three patterns to reject

'Approve all' button: don't have one. It signals the manager isn't reading. Even if technically the same as approving each, it has different audit appearance.

Per-day approval: approving a day's worth of trips at once, with no per-trip review. Same problem as 'approve all'.

Approval after payroll: paying first and approving later. Even if the policy says approval is post-pay, the approval shows in the audit log with a timestamp after the payment, looking like ratification rather than review.

Three patterns to add

Driver-side flagging: drivers can flag their own trip with a note ('long lunch break, please review'). Flagged trips skip auto-approval and route to the manager with the note. This builds trust and surfaces issues early.

Approver delegation: when the primary approver is on leave, the workflow auto-routes to a delegate with one-day setup. Without this, vacations create approval backlogs.

Weekly digest for managers: even with exception-based approval, send the manager a Friday summary of the week — auto-approved count, manual approval count, total reimbursed. It keeps the manager in the loop without requiring per-trip attention.

Cadence interaction

The approval workflow plays with the submission cadence (post 105). Best combinations:

- On-the-fly submission + exception-based approval: lowest friction overall. Driver submits each trip, system auto-approves 80%, manager handles 20% within 24 hours. Reimbursement on the next pay run. - Weekly submission + exception-based approval: works for teams with smaller volumes. Manager spends 15-30 min weekly on the queue. - Monthly submission + exception-based approval: not recommended. Auto-approval at month end loses the immediacy benefit; manager queue spikes.

What to measure

- Auto-approval rate: target 70-85%. Above 85% suggests rules too loose; below 70% suggests too tight. - Manager approval lag: target <24h for the manual queue. - Driver satisfaction (NPS): target +50. - Audit findings: target zero per audit cycle.

Migration playbook

1. Audit the last 3 months of trips. Identify the recurring routes per driver. 2. Configure auto-approval rules using the 80/20 of those routes. 3. Pilot with one team for 30 days. Measure all four metrics. 4. Adjust rules to hit the auto-approval target band. 5. Roll out to remaining teams in 2-week waves. 6. Send a Friday digest to managers from week 1. 7. Communicate to drivers: 'Most trips approve instantly; the manager will look at the unusual ones.'

What changes for the manager

A manager who previously spent 90 minutes a week clicking through approvals now spends 15-20 minutes reviewing 5-15 unusual trips, with a richer view per trip. The same total time, much higher review quality, and the manager isn't a bottleneck for routine trips.

Drivers feel the difference too: most reimbursements clear in 24 hours instead of waiting for the weekly batch.

Bottom line

The workflow that drivers and auditors both love is exception-based: auto-approve the 80% routine trips with audit-quality recording, route the 20% non-routine to the manager with rich context. Friday digest keeps the manager informed without per-trip attention. NPS and audit findings move in the right direction together.