Templates / Approve Slack expense receipts and post invoices to Xero with Textract and OpenAI

Approve Slack expense receipts and post invoices to Xero with Textract and OpenAI

Needs changes

by Intuz ✓ · 3 views · created 2026-09-28 · Invoice Processing, AI Summarization

Needs changes. This template uses 1 thing(s) that n8n 3.0 removes: OpenAI (legacy). 1 breaking item(s) found. Static check, last run 2026-10-19.

What this workflow does

This workflow has 20 nodes and runs on Slack events. Along the way it connects Slack and Google Sheets. It also calls api.xero.com over HTTP.

How it runs

Trigger: On Slack events.

  1. Filter: keeps only the items that match a condition
  2. Textract Expense Analysis (AWS Textract): uses AWS Textract
  3. Extract Textract Data (Code): runs custom JavaScript code
  4. AI Expense Categorization (OpenAI): work with chat
  5. Normalize Expense Data (Code): runs custom JavaScript code
  6. Check Validation Confidence (If): checks a condition and branches into true / false
  7. Read Manager from Sheets (Google Sheets): uses Google Sheets
  8. Request Clearer Photo in Slack (Slack): uses Slack
  9. Request Approval via Slack (Slack): send and wait for a reply
  10. If: checks a condition and branches into true / false

…plus 9 more steps. See the full node list below.

Services it uses

SlackGoogle Sheets

HTTP calls to: api.xero.com

Before you upgrade to n8n 3.0

1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:

  • OpenAI (legacy) in AI Expense Categorization: replace with OpenAI node (AI section).
  • Also check Slack Trigger requires a signing secret on the Slack API credential.

Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).

Removed in 3.0Replace with
OpenAI (legacy)
AI Expense Categorization
OpenAI node (AI section)

Nodes used (10)

From the author

Quick overview This workflow captures expense receipt images shared in Slack, extracts key fields with AWS Textract, categorizes the spend with OpenAI, requests manager approval in Slack, then creates an authorised ACCPAY invoice in Xero with the receipt…

Excerpt from Intuz 's description on n8n.io.

View the original on n8n.io → Check your own copy

Get the weekly “what broke” email

New templates, newly broken ones, and n8n release changes. One short email a week.

Form not loading? Subscribe here.