Quarter-end went from 3 days of Excel to 4 minutes of clicking.
The messy thing
M M Nissim & Co. handles capital-gains filings for over 200 NRI clients each quarter. Each client's portfolio could span six brokerages, seven tax years, and hundreds of partial-lot trades. The job is straight FIFO — but FIFO across years, across split-adjusted shares, across reinvested dividends. In Excel.
A single complex client took 6–8 hours of senior CA time. A complex one with corporate actions could take a full day. Quarter-end weeks meant senior staff staying till 11pm, three days running. Mistakes happened. Rework happened. Their best people were doing arithmetic instead of advisory.
We didn't need a tax platform. We needed exactly one thing — FIFO, across years, no surprises. Every off-the-shelf tool we tried wanted to be the entire stack.
— Partner, M M Nissim & CoWhy nothing on the market fit
- Big tax suites wanted a 12-month rollout, $40k+ in licenses, and a workflow change for the whole firm.
- Indian accounting platforms handled the resident-Indian case but not multi-currency, multi-broker NRI quirks.
- Spreadsheet templates existed, but each new client’s data shape broke the template.
- “Just hire more juniors” was the de-facto status quo. It didn’t scale and it bored their best staff.
What they actually needed was a tiny, specific tool: ingest broker statements, run FIFO, output a clean ledger. That’s it. No CRM, no e-filing, no portal. Just the math.
What we built
One agency from our network — a 3-person AI-first team — won the brief in 5 days. Here's what the prototype looked like at week 1:
| Lot | Acquired | Sold | Qty | Cost basis | Proceeds | Gain / loss |
|---|---|---|---|---|---|---|
| L-1 | 2018-04-12 · Kotak | 2024-09-03 · ICICI | 50 | $2,180.00 | $5,420.00 | +$3,240.00 LT |
| L-2 | 2019-11-08 · Kotak | 2024-09-03 · ICICI | 80 | $4,360.00 | $8,672.00 | +$4,312.00 LT |
| L-3 | 2022-02-21 · HDFC | 2024-12-15 · ICICI | 40 | $3,840.00 | $3,520.00 | −$320.00 ST |
| L-4 | 2023-06-30 · HDFC | 2024-12-15 · ICICI | 40 | $4,200.00 | $3,520.00 | −$680.00 ST |
| Net realized · LT | +$7,552.00 | |||||
| Net realized · ST | −$1,000.00 | |||||
Three workflows, that’s it
- Ingest. Drag a broker CSV (Kotak, ICICI, HDFC, Zerodha, Interactive Brokers). Auto-normalize columns. Flag oddities — splits, bonus issues, ESOP unlocks — for the CA to confirm in 30 seconds.
- Compute. FIFO across years and brokers. Long-term vs short-term. Indexation where relevant. Output a deterministic, auditable lot ledger.
- Export. One PDF the CA signs off on. One CSV for the broker-ready statement. One zip of source-of-truth artifacts. Done.
Build timeline
Brief + prototype
3 agencies competed. Winning agency built a working FIFO prototype in 5 days.
Real data ingestion
Kotak + ICICI + HDFC adapters. CA partner ran 12 real clients through it.
Edge cases
Corporate actions, ESOP unlocks, currency conversion, partial-lot rounding.
Handover + 30-day hold
Code + repo to the firm. Senior code review. 30-day post-delivery hold on final 40%.
Before / after
Before
- 6–8 hrs of senior CA time per complex case
- 3 days of overtime each quarter-end
- Best staff doing arithmetic, not advisory
- Errors caught only at peer-review
- "We can take maybe 200 NRI clients, no more"
After
- 4 minutes per case · 96% reduction
- Quarter-end ends on Friday, like a normal week
- Three juniors freed up for advisory work
- Auditable lot-by-lot trail · zero-rework
- Capacity headroom for 1,000+ NRI clients
The first time we ran a real client through it, the partner just stared at the screen. The number matched the one we'd computed by hand the day before — and it took four minutes instead of four hours. That was the moment.
— Senior associate, M M Nissim & CoWhat it cost
- Total: $4,000 over 12 weeks
- Payment structure: 20/20/20/40 milestones · final 40% released 30 days after delivery
- Code: firm owns the repo, hosted on their AWS
- Ongoing: ~$200/month hosting · agency on retainer for new broker adapters at $40/hr
Payback was inside the first quarter — a single senior CA hour saved per case across 200 cases pays this back twice over.