← Back to work

Filio

SaaSNext.js 15 · Supabase · Drizzle ORM2025

Practice management OS for CA firms — billing, clients, compliance

The compliance deadline problem

CA firms handle dozens of clients, each with ITR, GST, audit, and ROC deadlines that shift every quarter. Partners were maintaining shared Excel files — multiple versions, conflicting edits, no notifications when something was overdue. Missed deadlines meant penalty exposure for the firm and damaged client trust. DPDPA 2023 added a new layer: any client data stored digitally now required explicit consent tracking and deletion workflows.

Context

  • No single source of truth for client compliance status
  • Deadline tracking spread across emails, WhatsApp, and spreadsheets
  • Client billing reconciled manually each month
  • DPDPA 2023 requires consent tracking for all client data

Our approach

Key decisions

Schema-first with Drizzle ORM

Designed the full data model — clients, tasks, deadlines, billing — before any UI. Every schema change is tracked via migration files, not manual SQL.

DPDPA compliance by design

Client data consent, purpose limitation, and deletion workflows are built into the data layer from day one. Not a checkbox added at the end.

Automated recurring deadline engine

Compliance tasks are generated from each client's service profile. Partners see what's due this week without hunting through spreadsheets.

Razorpay billing tied to delivery

Invoices are generated automatically when a service milestone is marked complete. Month-end billing reconciliation went from 4 hours to zero.

Results

What we achieved

DPDPA

2023 compliant

16+

Compliance types tracked

0 hrs

Manual billing reconciliation

8 wks

Time to production

Stack used

Next.js 15SupabaseDrizzle ORMRazorpay

Next project

TapFlow

Start a project

Let's build something great

Drop your details below. We'll have it open in Gmail, ready to send — no copy-pasting.

or message on LinkedIn →