Route Expense Requests to the Right Manager for Approval in Slack
An n8n workflow that takes each submitted expense, routes it to the correct approver based on amount and department, and posts interactive Approve/Reject buttons in Slack — so reimbursements get decided in minutes instead of living in an email thread for a week.
- 1
Receive the expense
A
Webhooknode catches submissions from your form or expense tool. Capture submitter, amount, category, department and a receipt link. - 2
Pick the approver
A
Switchnode routes by amount and department to the correct approver's Slack ID — team lead, finance, or CFO for large amounts. - 3
Ask in Slack
A
Slacknode posts the expense with interactive Approve and Reject buttons, mentioning the approver so it hits their notifications. - 4
Record the decision
A second
Webhookreceives the button action, appends the outcome to aGoogle Sheetsledger, and DMs the submitter the result — closing the loop without a single email.
Frequently asked questions
How does routing decide the approver?
A Switch/IF node reads the amount and department: small expenses go to the team lead, larger ones escalate to finance, and anything over a threshold to the CFO. You define the thresholds once; every expense then finds its correct approver automatically.
How do the Approve/Reject buttons work?
The Slack message uses interactive buttons whose actions call back to a second n8n webhook. That webhook records the decision, notifies the submitter, and updates your log. It's the standard Slack interactivity pattern and keeps the whole loop inside chat.