Replace Your Bookkeeper With Claude Code in 90 Minutes

You're paying $400-$800 a month for a bookkeeper who still sends you a spreadsheet on the 5th asking what 47 transactions are. Then you spend Sunday night categorizing bank exports and writing awkward "just checking in" emails to clients who haven't paid. The fix isn't another SaaS — it's one folder on your laptop and about 80 lines of plain English.
This is the exact setup I deploy for clients through bizflowai.io and run on my own agency books. No subscriptions, no AIOS, no scheduled Zapier zaps that break silently. Just Claude Code, a CSV, and a markdown file that knows your business.
The Folder That Replaces a Bookkeeper
Claude Code reads files on demand. That single design decision is why this works at all — you don't need a vector DB, you don't need to chunk anything, and you don't hit context limits. You point it at a folder and it grabs what it needs when it needs it.
Setup is fifteen minutes, and most of that is exporting CSVs from your bank:
# install (one command, paste it)
npm install -g @anthropic-ai/claude-code
# scaffold the finance brain
mkdir -p ~/finance/{bank,invoices,reports,templates}
cd ~/finance
touch CLAUDE.md clients.md
# drop your data in
# bank/ → last 3 months of transactions as CSV
# invoices/ → last 50 invoice PDFs
# templates/ → your invoice template (.docx or .pdf)
That's the whole filesystem. Three months of bank CSVs is roughly 600 transactions for a typical solopreneur — enough for Claude to learn your patterns, small enough to process in under a minute.
Why the folder beats every SaaS I've tested
- No upload limits — your CSVs sit on disk, Claude opens them like a developer would
- No vendor lock-in — it's just markdown and CSV, you can move it to any laptop in 30 seconds
- No integrations to break — your bank export workflow is one button you already use
CLAUDE.md: The 80-Line Brain
This file is the difference between a chatbot and a CFO. It's the system prompt your finance agent runs against every time you invoke it. Mine is roughly 80 lines in production. Here's the structure I use, sanitized:
# CFO Agent — Operating Rules
## 1. Business Context
Solo digital agency, registered in Serbia (PAUŠAL tax regime).
Currency: EUR primary, RSD secondary. Fiscal year = calendar year.
VAT: not registered. Revenue tracked on cash basis.
## 2. Categorization Rules
- Stripe / Wise / PayPal fees → "Payment processing"
- Google Workspace, Microsoft, GitHub, Anthropic → "Software"
- Hetzner, Cloudflare, domain registrars → "Infrastructure"
- Restaurants <€50, Mon-Fri, 12:00-14:00 → "Client meals"
- Restaurants outside those bounds → FLAG for review
- Any transfer to my personal IBAN → "Owner draw" (not expense)
- Unknown vendor with single charge <€20 → "Misc, low priority"
- Unknown vendor recurring monthly → FLAG as possible subscription
## 3. Red Flags — Always Surface
- Duplicate charges within 7 days from same vendor
- New recurring subscription not in approved list
- Any single charge >€500
- Income gap >14 days (possible client churn)
## 4. Output Format
P&L table: category | count | total EUR | % of expenses
Always sort descending by total.
Flagged items in a separate section at the bottom.
Reports go in /reports/YYYY-MM-DD-name.md
The categorization rules section grows over time. You start with maybe 10 patterns. After two months of corrections, mine has 34. After that, the flag rate drops to under 5% of transactions per month.
Expense Categorization: 200 Transactions in 47 Seconds
This is where the math gets real. With CLAUDE.md in place, the actual run is one prompt:
Read bank/2024-11.csv. Categorize every transaction using the rules
in CLAUDE.md. Flag anything ambiguous with a one-line question.
Output a P&L table to reports/2024-11-pnl.md.
On a typical month — around 200 transactions — Claude finishes in under a minute. On my last run it was 47 seconds for 213 lines. Every transaction gets a category. Ambiguous ones come back as questions:
FLAGGED (5 items, need your call):
- 2024-11-04 TAXIFY OU €23.40 → ride to client meeting or personal?
- 2024-11-12 AMAZON.DE €89.00 → office supplies or personal?
- 2024-11-18 RESTAURANT BELGRADE €67.00 → over €50 threshold, client meal?
- 2024-11-22 UNKNOWN SEPA €450.00 → no vendor match, what is this?
- 2024-11-29 REVOLUT TOPUP €1000.00 → owner transfer or business?
You answer once, you add the rule to CLAUDE.md, and that pattern is auto-categorized next month. After two months of teaching, my production clients hit 100% auto-categorization rate. The "teaching" loop is maybe 5 minutes a month.
Compare that to the old workflow:
| Task | Bookkeeper Workflow | Claude Code Workflow |
|---|---|---|
| Monthly categorization | 2 hours manual review | 47 seconds + 5 min answering flags |
| P&L generation | Wait for accountant | Instant, on demand |
| New vendor rules | Re-explain every month | Add one line to CLAUDE.md |
| Cost | €400-800/month | ~€15/month in API tokens |
Invoice Drafting and the /chase Slash Command
The invoice side is where most solopreneurs leak the most money — not from fraud, from forgetting. You sent the invoice, the client didn't pay, you didn't follow up, three weeks later it's awkward.
Drop your template in /templates/invoice.docx and a clients file:
# clients.md
## Acme GmbH
Email: finance@acme.de
Payment terms: Net 14
Notes: Always CC ops@acme.de. PO number required on every invoice.
## Beta Studio
Email: julia@betastudio.io
Payment terms: Net 30
Notes: Pays from Wise, sometimes late by 3-5 days, do not chase before day 35.
Now you can say: "Draft an invoice for Acme for €3,400 referencing the November retainer." Claude reads the template, fills it from clients.md, outputs a PDF.
The bigger win is the /chase slash command. Drop this file at .claude/commands/chase.md:
Scan /invoices for all invoices issued in the last 90 days.
Cross-reference clients.md for payment terms.
For each invoice past its due date by 1+ days:
- draft a polite follow-up email
- tone: professional, no guilt-tripping
- reference invoice number, amount, original due date
- respect any "do not chase before" notes in clients.md
Output drafts to /reports/chase-YYYY-MM-DD.md as a list.
Do not send anything — I review and send manually.
Run /chase every Monday. Review the drafts in 30 seconds. Send the ones that look right. In production for one client this loop pulled in €4,200 of overdue invoices in the first month — money that was sitting there because nobody remembered to ask.
What I learned letting it draft emails
- Always review before sending — Claude sometimes mis-reads the "do not chase" notes if they're vague
- Keep the tone instructions explicit, otherwise you get corporate-speak nobody actually writes
- Add a "respect timezone" rule if you have clients in different regions
The Monday Cash Report
Last piece. Create one more slash command at .claude/commands/monday.md:
Generate the Monday cash report.
1. Read the most recent bank CSV in /bank — get current balance.
2. Scan /invoices for sent invoices with due dates in the next 7 days.
3. Scan /bank recent history for recurring outgoing bills due this week.
4. Calculate runway: (cash on hand) / (avg monthly burn from last 3 months).
5. Output exactly this format:
---
CFO Update — [date]
Cash on hand: €X
Expected in (7d): €Y from N invoices
Expected out (7d): €Z across M bills
Net position end of week: €(X+Y-Z)
Runway at current burn: W weeks
Watch: [one line, anything unusual, or "nothing flagged"]
---
Type /monday. Ten seconds later you have a five-line email you send to yourself or your partner. That's your CFO update. No dashboard, no login, no SaaS to remember.
The first time I ran this on my own books I caught a €34/month subscription I'd been paying for 11 months for a tool I stopped using in February. That one flag paid for the entire month of API usage.
Cost Breakdown — Real Numbers
For a solopreneur with ~200 transactions/month and ~40 invoices/month:
| Operation | Frequency | Tokens (avg) | Cost (Sonnet) |
|---|---|---|---|
| Monthly categorization | 1x/month | ~80k in, 15k out | €0.45 |
| /chase weekly | 4x/month | ~20k in, 5k out | €0.30 |
| /monday weekly | 4x/month | ~15k in, 2k out | €0.20 |
| Invoice drafts | ~10x/month | ~5k in, 3k out | €0.25 |
| Total | ~€1.20/month |
Add the Claude Code Pro plan (€17/month) if you don't already have it. Total cost: under €20/month, replacing €400-800/month of bookkeeper time, and cutting your own involvement from 6 hours to roughly 30 minutes.
Two caveats I'll be honest about:
- Your accountant still files taxes. This replaces the categorization and chasing work, not the actual tax filing or year-end accounts. Keep your accountant for the regulated stuff, fire the bookkeeping retainer.
- The first two months are noisier. You'll answer 15-20 flag questions in month one. By month three it's down to 3-5. That's the cost of teaching the system your business.
Why bizflowai.io helps with this
The 90-minute setup above is the open recipe — you can build it yourself this afternoon. Where we come in at bizflowai.io is the production hardening: bank API integrations instead of CSV exports, scheduled runs on a home server or VPS so /monday lands in your inbox before you wake up, multi-entity setups for clients with two or three businesses, and the messy edge cases (VAT registrations, multi-currency, mixed personal/business accounts). The core loop is the same one in this post. We just remove the last manual touches and run it as infrastructure for clients who'd rather not maintain a CLAUDE.md themselves.
Frequently asked questions
What is a Claude Code CFO setup for solopreneurs?
A Claude Code CFO setup is a local folder on your laptop that replaces the manual parts of bookkeeping. It contains subfolders for bank CSVs, invoices, and reports, plus a CLAUDE.md file defining categorization rules, red flags, and report formats. Claude Code reads these files on demand to categorize transactions, draft invoices, and chase unpaid clients — no SaaS, subscription, or upload limits required.
How do I set up a finance folder for Claude Code?
Install Claude Code from Anthropic's site, then create a folder called finance with three subfolders: bank, invoices, and reports. Export the last three months of bank transactions as CSV into bank, and drop your last fifty invoice PDFs into invoices. Add a CLAUDE.md file in the root describing your business context, categorization rules, red flags, and output format. Setup takes about fifteen minutes.
Why does the CLAUDE.md file matter for automating bookkeeping?
CLAUDE.md is the brain of the CFO subagent — a plain text file containing the rules Claude follows. It defines business context (VAT status, fiscal year, currency), vendor-to-category mappings, red flags like duplicate charges or forgotten subscriptions, and the exact output format for reports. A production-grade CLAUDE.md is about 80 lines and ensures every Monday's report looks consistent.
How do I automate invoice follow-ups with Claude Code?
Inside your invoices folder, add your invoice template and a clients.md file listing clients, emails, payment terms, and notes. Then create a slash command like /chase that scans the folder, identifies past-due invoices based on payment terms, and drafts polite follow-up emails for each. You review them in thirty seconds and send. This converts mental to-dos into a reliable weekly habit.
How much time and money does replacing a bookkeeper with Claude Code save?
Most solopreneurs pay $400–$800 monthly for a bookkeeper and still spend six to ten hours a month answering categorization questions, exporting bank data, and chasing invoices. A Claude Code finance folder eliminates the manual cycle: categorizing 200 transactions takes under a minute, invoice chases run weekly, and the entire setup takes about 70 minutes once and runs on your own laptop.
Want more like this?
I publish practical AI automation, GenAI engineering, and faceless content workflows on YouTube every week.
Subscribe to bizflowai.io on YouTube — never miss a new tutorial.
Planning an AI automation project or need a second opinion on your architecture?
Connect with me on LinkedIn — Lazar Milicevic, GenAI Engineer & bizflowai.io Founder.
Visit bizflowai.io for our services, case studies, and AI consulting.
Frequently asked questions
What is a Claude Code CFO setup for solopreneurs?
A Claude Code CFO setup is a local folder on your laptop that replaces the manual parts of bookkeeping. It contains subfolders for bank CSVs, invoices, and reports, plus a CLAUDE.md file defining categorization rules, red flags, and report formats. Claude Code reads these files on demand to categorize transactions, draft invoices, and chase unpaid clients — no SaaS, subscription, or upload limits required.
How do I set up a finance folder for Claude Code?
Install Claude Code from Anthropic's site, then create a folder called finance with three subfolders: bank, invoices, and reports. Export the last three months of bank transactions as CSV into bank, and drop your last fifty invoice PDFs into invoices. Add a CLAUDE.md file in the root describing your business context, categorization rules, red flags, and output format. Setup takes about fifteen minutes.
Why does the CLAUDE.md file matter for automating bookkeeping?
CLAUDE.md is the brain of the CFO subagent — a plain text file containing the rules Claude follows. It defines business context (VAT status, fiscal year, currency), vendor-to-category mappings, red flags like duplicate charges or forgotten subscriptions, and the exact output format for reports. A production-grade CLAUDE.md is about 80 lines and ensures every Monday's report looks consistent.
How do I automate invoice follow-ups with Claude Code?
Inside your invoices folder, add your invoice template and a clients.md file listing clients, emails, payment terms, and notes. Then create a slash command like /chase that scans the folder, identifies past-due invoices based on payment terms, and drafts polite follow-up emails for each. You review them in thirty seconds and send. This converts mental to-dos into a reliable weekly habit.
How much time and money does replacing a bookkeeper with Claude Code save?
Most solopreneurs pay $400–$800 monthly for a bookkeeper and still spend six to ten hours a month answering categorization questions, exporting bank data, and chasing invoices. A Claude Code finance folder eliminates the manual cycle: categorizing 200 transactions takes under a minute, invoice chases run weekly, and the entire setup takes about 70 minutes once and runs on your own laptop.