{"product_id":"slack-receipt-approval-to-xero-invoice-with-textract-openai","title":"Slack Receipt Approval to Xero Invoice with Textract \u0026 OpenAI","description":"\u003ch3\u003eAutomatically turn Slack receipt images into approved Xero ACCPAY invoices—using AWS Textract and OpenAI\u003c\/h3\u003e\n\u003cp\u003eThis n8n workflow captures expense receipt files shared in \u003cb\u003eSlack\u003c\/b\u003e, extracts vendor and totals with \u003cb\u003eAWS Textract\u003c\/b\u003e, confirms and categorizes them with \u003cb\u003eOpenAI\u003c\/b\u003e, pauses for manager approval in Slack, and then creates an \u003cb\u003eauthorised ACCPAY invoice in Xero\u003c\/b\u003e with the receipt attached—while logging outcomes to \u003cb\u003eGoogle Sheets\u003c\/b\u003e.\u003c\/p\u003e\n\n\u003ch3\u003eWhat this workflow does\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cb\u003eTriggers on Slack file shares\u003c\/b\u003e and downloads the shared attachment.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eFilters receipt uploads\u003c\/b\u003e and sends receipt images to \u003cb\u003eAWS Textract AnalyzeExpense\u003c\/b\u003e to extract \u003cb\u003evendor, total, date, and currency\u003c\/b\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eUses OpenAI for expense categorization\u003c\/b\u003e, assigning a \u003cb\u003esingle category from a fixed list\u003c\/b\u003e and normalizing extracted fields while checking \u003cb\u003eTextract confidence thresholds\u003c\/b\u003e.\u003c\/li\u003e\n  \u003cli\u003eIf extraction confidence is \u003cb\u003elow\u003c\/b\u003e, it posts a \u003cb\u003eSlack message\u003c\/b\u003e asking the uploader to resend a clearer photo.\u003c\/li\u003e\n  \u003cli\u003eIf extraction confidence is \u003cb\u003ehigh\u003c\/b\u003e, it posts a \u003cb\u003eSlack approval request\u003c\/b\u003e and \u003cb\u003epauses until a manager approves or rejects\u003c\/b\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eOn approval:\u003c\/b\u003e maps the category to a \u003cb\u003eXero account code\u003c\/b\u003e, creates an \u003cb\u003eauthorised Xero ACCPAY invoice\u003c\/b\u003e via the workflow’s Xero API routing, reattaches the original receipt image as an invoice attachment, and appends an \u003cb\u003e“approved”\u003c\/b\u003e entry to \u003cb\u003eGoogle Sheets\u003c\/b\u003e.\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eOn rejection:\u003c\/b\u003e notifies the original Slack user and appends a \u003cb\u003e“rejected”\u003c\/b\u003e entry to \u003cb\u003eGoogle Sheets\u003c\/b\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eUse cases\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003eExpense processing for teams that submit receipts in \u003cb\u003eSlack\u003c\/b\u003e.\u003c\/li\u003e\n  \u003cli\u003eApproval workflows where invoices must be \u003cb\u003eauthorised in Xero ACCPAY\u003c\/b\u003e only after manager review.\u003c\/li\u003e\n  \u003cli\u003eReducing manual data entry by extracting receipt fields with \u003cb\u003eAWS Textract\u003c\/b\u003e and categorizing with \u003cb\u003eOpenAI\u003c\/b\u003e.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eTechnical details\u003c\/h3\u003e\n\u003cul\u003e\n  \u003cli\u003e\n\u003cb\u003eSlack\u003c\/b\u003e (file_share handling, messaging, interactive approvals)\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eAWS Textract\u003c\/b\u003e (AnalyzeExpense extraction)\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eOpenAI\u003c\/b\u003e (category assignment from a fixed list)\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eXero\u003c\/b\u003e (creates authorised ACCPAY invoices + receipt attachment; routing via two API request paths)\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eGoogle Sheets\u003c\/b\u003e (logs approved\/rejected outcomes)\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003en8n nodes:\u003c\/b\u003e if, filter, code, switch, OpenAI, Slack\u003c\/li\u003e\n\u003c\/ul\u003e","brand":"N8N Commerce","offers":[{"title":"Default Title","offer_id":46114653110451,"sku":"N8N-20018","price":5.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0749\/6279\/6723\/files\/cBKdEYUFVi9qJiWyAZhdZ_jc8n4m43.png?v=1790586576","url":"https:\/\/buyflowscripts.com\/products\/slack-receipt-approval-to-xero-invoice-with-textract-openai","provider":"N8N Commerce","version":"1.0","type":"link"}