Invoice Auto-Forward to Accounting
Automatically forward vendor invoices to accounting and log them in your expense tracker
Gmail integration that detects invoices (by PDF, keywords, and sender), forwards them to accounting email, and logs them in a spreadsheet. Streamline accounts payable.
Nora monitors incoming emails for invoices using Gmail queries for keywords or attachments. It reads the email to extract the vendor, amount, date, and invoice number. Nora forwards the message to the accounting address with a summary note. It then logs the details as a new row in a designated expense tracking Google Sheet and applies a specific Gmail label to the original thread.
The finance manager reviews the Google Sheet periodically to check categorized expenses and pay the bills. They decide when an invoice is actually paid and update the status column. If a new vendor requires a specific category rule or a forwarded invoice was a false positive, the manager tells Nora via chat to adjust the instructions.
Runs real-time as invoices arrive using Gmail, run by your Finance Manager.
How it works
- Trigger on incoming invoices — Nora uses Gmail search queries to monitor the inbox for incoming messages containing terms like invoice or receipt, specific vendor domains, or PDF attachments. This runs continuously via the Gmail integration.
- Extract invoice details — Nora reads the full email content and any attachment text using the get email capability. It identifies the vendor name, total amount due, invoice date, and the unique invoice number.
- Categorize the expense — Nora maps the vendor to an expense category based on instructions provided in chat. For example, AWS goes to cloud hosting and Stripe goes to payment processing.
- Forward to accounting — Nora sends a new email to the designated accounting address. The message includes the original invoice as an attachment and a short text summary of the extracted details in the body.
- Log in spreadsheet — Nora adds a new row to the expense tracker Google Sheet. It populates the columns for Date, Vendor, Amount, Category, Invoice Number, and sets the initial Status to pending.
- Handle ambiguous emails — If an email matches the search query but lacks clear invoice details, Nora leaves it unlogged and unforwarded. It applies a Needs Review label in Gmail for the finance manager to check manually.
- Apply processed label — Once successfully forwarded and logged, Nora applies a specific label to the original Gmail thread. This indicates the automation has handled the message and prevents duplicate processing.
What this replaces
Finance managers or founders monitor a shared inbox or their personal email for vendor bills. They open the email, download the PDF, open a new email window, attach the PDF, write a quick note, and forward it to the bookkeeper. Then they open a separate spreadsheet and type out the date, vendor, and amount.
- Scan inbox for vendor emails and attachments
- Download PDF invoices to local storage
- Draft a forwarding email and attach the PDF
- Type invoice details into an expense tracking spreadsheet
Rough estimate rather than a measured figure: about 15 minutes a day, assuming 10 invoices that take 90 seconds each to process and log.
What it needs to run
Accounts and plans
- Google Workspace account with Gmail enabled
- Google Sheets account for the expense tracker
Access it asks for
- mcp__gmail__search_emails to find new invoices matching criteria
- mcp__gmail__get_email to read the message body and attachments
- mcp__gmail__send_email to forward the invoice to accounting
- mcp__gmail__list_labels to check and apply processed tags
What Nora reads
- Incoming email subjects, bodies, and attachments
- List of existing Gmail labels
What Nora writes
- New emails sent to the accounting address
- New rows appended to the Google Sheet
- Labels applied to the original email threads
When it goes wrong
- The email contains a password-protected PDF Nora cannot extract the vendor, amount, or invoice number. It leaves the email unforwarded, skips the spreadsheet update, and applies a Manual Review label to the thread in Gmail.
- A vendor sends a receipt missing a total amount Nora detects the missing required field. It logs the invoice in the Google Sheet with a blank amount cell and adds a note in the forwarded email asking accounting to verify the total.
- The Gmail API rate limits are exceeded Nora pauses execution upon receiving the rate limit error. It waits for the quota to reset based on the API response headers, then resumes processing the remaining unread invoices.
- An email contains the word invoice but is a query Nora reads the context and determines it is not a payable bill. It ignores the email, takes no action, and moves on to the next message in the query queue.
Who this is for
Worth it if
- Founders at 5-15 person companies handling daily vendor receipts
- Finance managers receiving 20+ invoices daily across multiple team member inboxes
- Agencies managing dozens of freelance contractors who submit monthly PDF invoices
Not worth it if
- Businesses processing fewer than five invoices a month where manual entry takes minutes
- Teams using dedicated accounts payable software that provides its own inbound email parsing
- Companies where every invoice requires complex manual approval routing before reaching accounting
A worked example
A 20-person architecture firm receives about 15 vendor bills a day. Nora is instructed to monitor the main inbox, forward invoices to their external bookkeeper, and log them in a shared AP Tracker Google Sheet.
Forwarded Email Body: Vendor: Blueprints Inc. Amount: $450.00 Date: Oct 12, 2023 Invoice #: INV-8821 Category: Printing Supplies [Attached: blueprints_oct_invoice.pdf] Google Sheet Row Appended: Date: 2023-10-12 | Vendor: Blueprints Inc. | Amount: $450.00 | Category: Printing Supplies | Invoice #: INV-8821 | Status: Pending
Frequently asked questions
How does Nora know which emails are actually invoices?
Nora uses Gmail search queries to find messages containing typical keywords, known vendor domains, or PDF attachments. Once it opens an email, it reads the content to confirm it contains billing details like a total amount and an invoice number. If it looks like a regular conversation, Nora ignores it.
What happens if Nora miscategorizes an expense?
You tell Nora in chat that the category is wrong. For example, you can say 'Move the recent Adobe invoice to Software Subscriptions and apply that rule going forward.' Nora updates its instructions and will use the new category for that vendor next time. You update the spreadsheet row yourself.
Will this mark my unread emails as read in Gmail?
No, Nora reads the email content via the API using the message ID. Unless you specifically instruct Nora to mark processed invoices as read, it leaves their read status unchanged. It only applies a specific label to indicate the invoice was logged and forwarded.
Can I review the forwarded emails before they go to accounting?
Yes. You can instruct Nora to create draft emails instead of sending them immediately. Nora will prepare the summary and attach the PDF, saving it in your Gmail Drafts folder. You can then review, edit, and send them to the bookkeeper on your own schedule.
Connects to
Related automations
- Sales Activity Auto-Logger — Automatically log all sales emails (sent, received, replies) into a CRM activity timeline
- Lead Scoring & Qualification — Automatically score leads based on company size, engagement, and fit, surfacing hot prospects
- Deal Pipeline Auto-Advance — Automatically move deals through pipeline stages based on actions (proposal sent, demo completed, etc.)
- Contact Sync from Email & Forms — Automatically create HubSpot contacts from email senders and form submissions, no data entry
- Xero Invoice Reminder Automation — Automatically send friendly invoice payment reminders before they become overdue.
- Xero Overdue Invoice Summary Report — Get a daily summary of overdue invoices with aging breakdown and collection priority.
- FreshBooks Invoice Reminder Automation — Send automatic payment reminders when invoices are near due, then escalate if overdue.
- FreshBooks Overdue Invoice Summary — Daily digest of overdue invoices with customer contact info and collection priority.