AI Bookkeeper Chat Expense Assistant
Store expenses from Gmail and chat, optionally keep receipt links, answer spending questions from Sheets/Airtable memory, estimate future spend from that history (with disclaimers), and return chart images for trend asks. Use Credential Setup Coach to connect Gmail, Sheets, OpenAI, Slack, Telegram, Twilio, and Airtable one step at a time.
Who it's for
Freelancers, founders, small teams, and households that want a private AI bookkeeper they can message. Built for receipt capture, no-receipt expense logging, searchable spending answers, history-based spend estimates with disclaimers, chart images, and optional receipt proof links.
What it does
This workflow watches a dedicated or labeled Gmail inbox and accepts Telegram/WhatsApp/Slack/custom chat webhook messages. It normalizes every input, optionally transcribes voice notes, uses OpenAI to route expense vs spending question vs ignore, extracts structured expenses, applies privacy settings, skips duplicates, logs to Google Sheets and/or Airtable, optionally stores receipt/source links, answers spending questions from stored memory, estimates future spend from history averages with an explicit disclaimer, and can return QuickChart images for trend asks.
Defaults (same as Gumroad listing)
EXPENSE_MEMORY = sheets(options:sheets|airtable|both)- Gmail query:
label:Bookkeeper newer_than:7d - Chat intake: universal webhook for Telegram, WhatsApp, Slack, or custom forms
PRIVACY_MODE = standard(options:minimal|standard|audit)LINE_ITEM_MODE = summary(options:off|summary|full)RECEIPT_STORAGE_MODE = source_link(options:none|source_link|google_drive)GOOGLE_DRIVE_FOLDER_ID = your-google-drive-folder-id(required forgoogle_drivemode)- Duplicate window: 60 days
- Query row cap: 0 (no cap; set a number only if Sheets reads get too slow)
- Dedicated Gmail recommended: true
How it works
- Bookkeeper Gmail Trigger watches a strict Bookkeeper label/query and downloads attachments
- Universal Chat App Webhook receives Telegram, WhatsApp, Slack, or custom chat payloads
- Normalize Bookkeeper Intake converts all channels into one common message shape
- AI Route Bookkeeper Message classifies input as expense, question, or ignore
- AI Extract Expense extracts merchant, total, category, tax hints, item summary, optional line items, and receipt/source links
- Expense memory lookup skips duplicate expenses by message ID and transaction hash
- Google Drive receipt upload (optional) stores the receipt file when
RECEIPT_STORAGE_MODE = google_drive - Create Expense Record applies privacy mode and writes to Sheets/Airtable
- AI Plan Spending Query turns questions into filters for category, merchant, item, date range, receipt lookup, or chart/trend
- Answer Spending Query filters and aggregates stored rows, then replies in the same channel when possible
Setup steps
- Import the workflow JSON into n8n
- Strongly recommended: use Credential Setup Coach to connect Gmail, Google Sheets, Google Drive (if archiving receipts), OpenAI, and any chat/memory destinations first
https://solutionsprecision.gumroad.com/l/xdgmnz
- Create a dedicated Gmail inbox or a strict
BookkeeperGmail label - Choose memory destination: Google Sheets, Airtable, or both (
EXPENSE_MEMORY) - Create the Expenses and optional Expense Items schemas using the sample files
- Choose privacy mode, line-item mode, and receipt storage mode (
none/source_link/google_drive) - If using
google_drive: create a Drive folder, setGOOGLE_DRIVE_FOLDER_ID, and attach Google Drive OAuth on Upload Receipt to Google Drive - Configure Telegram, WhatsApp, Slack, or custom app webhooks to call the universal chat webhook
- Attach the credentials created with Credential Setup Coach
- Test manual expense, spending question, receipt lookup, voice-note, and ignored-message scenarios
Requirements (optional form fields - add one line each)
n8n Cloud or self-hosted n8n instance Dedicated/labeled Gmail account for receipts and bookkeeper emails OpenAI API key configured in n8n Google Sheets OAuth2 and/or Airtable Personal Access Token Telegram Bot API, Slack app, WhatsApp/Twilio, or another webhook-capable chat app Recommended: Credential Setup Coach for connection walkthroughs
Customization (optional form fields - add one line each)
Set EXPENSE_MEMORY to sheets, airtable, or both Set PRIVACY_MODE to minimal, standard, or audit Set LINE_ITEM_MODE to off, summary, or full Adjust GMAIL_QUERY and use a dedicated Gmail inbox to reduce cost and privacy exposure Add approved chat user IDs to restrict who can message the bookkeeper Tune the AI extraction and query planning prompts for your categories and currency
Additional info (optional - paste as one block)
This template is positioned as a private AI bookkeeper, not tax/legal/financial advice. It stores expenses, optionally stores receipt/source links, answers spending questions from memory, estimates future spend from history averages with an explicit disclaimer, and can return QuickChart images for trend requests. For credential setup, buyers are encouraged to use Credential Setup Coach at https://solutionsprecision.gumroad.com/l/xdgmnz. Users should review outputs before using them for accounting, tax filing, reimbursement, or audit purposes.
Stuck connecting credentials? Our Credential Setup Coach walks you through 60+ provider connections step by step.