Case study · Manufacturing · Legal-tech

Section 138 case management,
built in six weeks.

How we built a deadline-engine for a Pune-based manufacturing distributor that had been losing recoverable cheque amounts to missed statutory windows. Shipped in six weeks. Running in production for 14 months.

Client
Manufacturing · anonymized
Industry
Distribution · interiors
Duration
6 weeks · kickoff → prod
Team
2 engineers · 1 designer
0
missed deadlines
in 14 months since launch
₹40L+
recoverable tracked
vs ~₹18L lost in 2023
3 days
saved per ops person
every month
6 wks
kickoff to production
with weekly demos
The problem

Spreadsheets, missed deadlines, lost recoveries.

The client distributes flooring, panels, and furniture across three branches in Western India. Roughly one in fifty of their B2B cheques bounce, usually for insufficient funds or signature mismatch.

Under Section 138 of the Negotiable Instruments Act, 1881, every bounced cheque starts a strict three-stage clock:

  • Cheque must have been deposited within 6 months of issue.
  • After bounce, a statutory legal notice must be sent within 30 days.
  • If unpaid within 15 days of notice, the case must be filed within 30 days of the notice window closing.

Miss any of those windows and the case is legally barred. The money is gone.

Pre-engagement: the ops team tracked cases in a shared Excel sheet. In 2023 they missed four deadlines and wrote off ~₹18 lakh in recoverable amounts.

cheque_register.xlsx · beforerisk: 4 missed in 2023
DrawerBounceNotice dueStatus
Acme Traders12 Apr??open
Mehta Group--lost
Crest Interiors08 Mar07 Apr ⚠filed late
Northline01 Apr-no notice
Verde Build14 Apr--
!No deadline math. No reminders. No audit trail. Notices missed silently.
The solution

A single source of truth, with a deadline engine.

Deadline engine

Every bounced cheque triggers auto-computation of all three statutory dates. A daily cron recalculates and flags anything inside 7 days.

Daily digests + instant alerts

Admin-tunable digest at 9 AM IST listing at-risk cases by stage. Real-time email on new-case creation, fire-and-forget so it never blocks the API.

Field-level audit log

Every change is snapshotted with diffs. Roll back to any prior point. Soft-delete recycle bin with restore.

Power Automate hooks

API-key-protected endpoints for downstream flows: legal team approvals, document generation, escalations to senior partners.

Dual SSO + RBAC

Zoho OAuth for ops, Microsoft for legal counsel. Role-based access per field, so sensitive amounts stay hidden from junior staff.

Notice document generation

Statutory notice drafts auto-populated from case data. Lawyer reviews and signs in Outlook before sending: 30 minutes per notice down to 5.

The approach

Six one-week sprints. One demo every Friday.

Week 1

Discovery

  • Sat with ops + legal team across three branches
  • Mapped the actual workflow, not the policy doc
  • Identified the four 2023 misses + root causes
Week 2

Schema + auth

  • Postgres schema for cases, parties, notices, audit
  • Zoho + Microsoft OAuth → HttpOnly JWT cookies
  • First case-create UI in production
Week 3

Deadline engine

  • Statutory date computation (6mo / 30d / 30d)
  • Daily cron + risk flags (overdue, within-7-days)
  • Field-level audit log with rollback
Week 4

Notifications + flows

  • Microsoft Graph + Zoho Mail digest emails
  • Power Automate webhook for legal approvals
  • Notice template auto-fill via Word merge
Week 5

Admin + UAT

  • Admin panel: users, roles, reminder rules
  • Recycle bin + soft delete
  • User acceptance testing with the ops team
Week 6

Production

  • Railway deploy · single service · Postgres
  • Training session for ops + legal
  • First production case logged end-to-end
In production

Case detail · live in the ops team's hands.

cheque-bounce.client.app/case/CB-2024-00188
Notice due · 4 daysCB-2024-00188

Acme Traders

HDFC · Pune · cheque #44128 · returned 12 Apr 2024
Amount
₹4,85,000
Bounce reason
Insufficient funds
Lawyer notice by
11 May
Filing deadline
26 Jun
Timeline
  1. Bounce logged
  2. Internal notice
  3. Lawyer's notice
  4. Case filed
  5. Judgment
Audit log · last 5 changes
System · crontoday 09:00
Risk flagged: notice deadline within 7 days
Anjali R.yesterday 16:42
Stage → "Lawyer notice drafted"
Rohit (lawyer)yesterday 16:38
Notice template signed via Outlook
System12 Apr 11:04
Case created from Power Automate flow
Bank webhook12 Apr 10:58
Return memo · insufficient funds
"They didn't just build software. They redesigned how our ops team works. We haven't missed a Section 138 deadline since launch. Every cheque we used to write off is now a recoverable asset, with a clock and an owner."
AR
Anjali R.
Head of Operations · Manufacturing client
14-month retainer
What's next

The roadmap is the client's, not ours.

Court bundle generation

Auto-compile filings, evidence, and exhibits into a court-ready PDF bundle.

Multi-state legal templates

Jurisdictional variants for notices and filings beyond Maharashtra.

Trust accounting module

Client-fund ledger with separate compliance trail for legal fees.

Have a similar problem?

Bring the problem.
We'll bring the prototype.