• AWS-native AI integration · ships in 6–10 weeks

Bookkeeping firm scales clients per FTE by 50%

  • Agentic Workflows · Accounting
  • Outsourced bookkeeping practice — ~40 staff, 220 SMB clients across QBO + Xero

The problem

Senior accountants were capped at ~22 clients each — same 18-step close on every client every month. The firm wanted to grow toward 350 clients without a proportional hiring plan.

Our approach

What we built

  • Per-client close as an AWS Step Functions graph, with an orchestrator agent dispatching to specialized sub-agents (reconciliation, coding review, accrual, narrative).
  • MCP servers wrapping QuickBooks Online and Xero so the agents see a uniform tool surface across the entire client base.
  • Coding-review agent that flags anomalous chart-of-accounts mappings versus that client’s history; queues for senior review with cited prior-period examples.
  • Variance-narrative agent producing management-report commentary — never sent without partner sign-off.
  • Three-layer eval suite covering each sub-agent independently; partner reviews 5 random close packets per week.

Caveats

The variance-narrative agent occasionally invented plausible-sounding explanations on clients with sparse history; narrative generation is now hard-gated on a minimum of six months of comparable data. Xero integration was harder than QBO — rate limits forced a queue-based ingestion design we hadn’t quoted for.

Stack. AWS Bedrock (Claude for reasoning, Haiku for routing) · Step Functions · QBO + Xero connectors via MCP · S3 · Langfuse self-hosted in the client VPC.

Outcome

Senior throughput moved from ~22 to 32–36 clients per FTE. Average human time per close fell from 6 hours to 2.5. Calendar time per close fell from 9 business days to 5.

32–36
clients per senior accountant (was 22)
60%
reduction in human time per close
$520K
deferred hiring cost in year 1