Studio
Case study · Finance automation

A finance back office that reads its own post and supplier mail

A group of companies runs its books in Odoo. Paper post, supplier emails, marketplace payouts and contractor hours all ended up with the same small finance team. We built a set of n8n workflows that read, file and draft, and leave the decisions about money with people.

Reading and filing run on their own. Posting bills and paying people stay with the finance team.

Team
Finance
Built with
  • n8n
  • Odoo
  • Claude
  • Google Drive
  • Slack

The problem

Finance spent its week sorting, not checking.

Paper letters arrived for several companies in the group. Someone opened each scan, worked out which company it was for, and filed it. Supplier confirmations, shipping notes and invoices landed in a shared inbox and were typed into the purchasing and accounting tools by hand.

Marketplace returns needed credit notes, and payouts needed matching against invoices. Contractor hours were approved in one tool and paid from another, so every approval was copied across.

None of this needs judgment about money. It needs reading, matching and typing, and it kept the team from the checks that do need judgment.

What we built

Post that files itself

Paper post is scanned into a shared folder. Every 5 minutes, an n8n workflow sends new scans to Claude, which reads each letter and decides what it is. Invoices go to the invoice queue. Other letters are routed to the right company in the group, uploaded to Odoo Documents and announced in Slack.

Supplier mail turned into draft bills

Every hour, Claude reads supplier order confirmations, shipping updates and invoices from a shared inbox. The workflow updates the matching purchase orders and creates a draft vendor bill in Odoo with the PDF attached. A person checks and posts each bill.

Marketplace credit notes on a schedule

Once a month, marketplace returns are matched to their invoices, and the credit notes are created, posted and settled in Odoo. Every Monday, the week's payouts are reconciled. The result lands in a finance Slack channel.

Approvals carried to payroll

When a manager approves contractor hours in Odoo, the decision goes to the payroll platform, and the invoice it creates is stored back on the request. Each weekday morning, the workflow sends pay reminders, re-sends decisions that got lost and flags any sync stuck for 30 minutes or more.

An alert when bank details change

Every hour, the workflow fingerprints every bank account in Odoo and compares it with the last run. When an account is added or changed, finance gets a Slack message, so someone can check it before money is sent there.

Guardrails

What it will not do on its own

The workflows prepare the books. People still decide what is posted and paid.

  • Vendor bills are created as drafts, and a person posts them
  • Approvals start with a manager's decision in Odoo; the workflow only carries it out
  • A lock stops two runs from syncing the same approval
  • A dry-run mode tests changes without touching payroll
  • Sync errors are written back to the approval and its Slack thread
  • A bank detail change raises an alert; nothing is blocked or edited automatically

Why we built it this way

Drafts, not postings

Reading a PDF is where AI helps. Deciding to pay is where a person should stay. Draft bills split the work at that line.

Fingerprints, not copies

The bank watcher stores a fingerprint of each account, not the account details, so the alert works without keeping a second copy of sensitive data.

A sweep for what webhooks miss

Webhooks get lost now and then. A weekday sweep re-sends missed decisions and flags stuck ones, so a gap shows up the next morning, not at month end.

Measured

What finance can see

Every step leaves a trace where the team already works.

  • Every letter and where it was filed, announced in Slack
  • Draft bills waiting for review, with the source PDF attached
  • Credit notes and payout matches posted to a finance channel
  • Approvals stuck for 30 minutes or more
  • Every new or changed bank account

Still typing invoices into your accounting tool?

Tell us where your invoices and letters arrive. We'll tell you which ones an agent can read into draft bills, and what stays with your bookkeeper.

Book a 15-min call