← All insights
18CA Firm Automation · 7 min read

The month-end close, line by line: 8 hours collapsed to 45 minutes per client

Every step of a 4-partner Hyderabad CA firm's monthly reconciliation workflow, mapped side-by-side against the same firm after the ca-firm-toolkit is installed. Real hours from real time-tracking.

01

The before — 7 sequential manual steps

  • 0.5h · Client emails Excel + GSTR-2B JSON; junior opens inbox and reformats columns
  • 3.5h · Manual VLOOKUP on GSTIN + invoice number — breaks on amended invoices
  • 1.0h · Flag mismatches, classify reason (amount / invoice / amended / vendor-not-filed)
  • 2.5h · Phone + email chase to vendors for missing GSTR-1 — 3-8 calls per client, weekly until filing
  • 0.5h · Consolidate findings into Excel for partner review
  • 0.5h · Partner reads through, edits, signs
  • 0.5h · File return + invoice the client
  • Total — 8h per client per month. ₹12,000 labour cost per client at ₹1,500/hr loaded rate
02

The after — 4 parallel lanes

  • 0h · Client WhatsApps the files; automatic intake writes into ~/.ca-firm/
  • <30s · Recon engine matches GSTIN × invoice × amount with tolerance + rapidfuzz on invoice number
  • Parallel: <5s/invoice · OCR scans any photo'd invoice, produces Tally XML draft
  • Automatic · 5-sheet Excel ready; WhatsApp sent to missing-invoice vendors via Meta-approved templates
  • 20 min · Partner reviews flagged items only (ITC-at-risk > ₹10K, OCR confidence < 90%)
  • 33 min · Partner files return + invoices the client — the one step we deliberately don't touch
  • Total — 45 min per client per month. ₹1,125 labour cost per client at the same rate
03

Where the 7+ hours went

  • Manual VLOOKUP (3.5h) collapses to 30 seconds — 99.9% time saved on the single biggest bucket
  • Vendor phone chase (2.5h) collapses to 0h — WhatsApp templates queued, fired after one-tap operator approval
  • Summary drafting (0.5h) eliminated — 5-sheet Excel IS the summary
  • Classification (1h) automated — every flagged row carries its own reason code from the recon engine
  • Partner review (0.5h) stays but shifts from read-through to exception handling (12 min vs 30 min)
04

What the break-even math looks like

  • Margin recovered per client per month: 7h 15min × ₹1,500/hr = ~₹10,900
  • For a 40-client firm: ₹10,900 × 40 = ₹4,36,000/month of billable capacity back
  • Toolkit retainer: ₹18,000/month — covers maintenance + OCR API cost + support
  • Break-even: first two clients in the first week. Net: ₹4,18,000/month from month two onward
  • Option A: bank the margin. Option B: sell the recovered capacity as 8-12 more clients with the same team
05

Where humans stay in the loop

  • Partner sign-off on every return — automation never files without a green light
  • WhatsApp vendor sends gated behind dry-run view — operator scans the list, clicks Send
  • OCR below 90% confidence never auto-posts to Tally — ends up in a Needs Review queue
  • Every Autopilot action in ~/.ca-firm/audit.jsonl with timestamp + operator + outcome — reversible
06

Why this collapses in the specific ways it does

  • GSTR-2B is structured JSON, Tally exports are quasi-structured — the bottleneck was humans bridging the schema gap
  • WhatsApp API changed the economics of vendor chase from 'one call at a time' to 'templated broadcast, tracked'
  • Tally ODBC + XML import means journal entries go in via an API, not someone retyping them
  • OCR is only now production-viable on invoice layouts because vision models finally match Indian paper and font variations

Apply it

We'll run this on your most recent month's data — free of charge — before any commitment.