A CRM for law firms with case tracking must cover 4 critical dimensions: 360 client profile, case file with procedural deadlines and documents, billable-hours timesheet per attorney, and billing with variable fee structures. In a documented build for a platform with a 6-tab client profile and automatic dedup by NIT, we assembled 85 ERP schema tables with 17 RBAC roles and sub-30-second response time in a native WhatsApp system. Convergence is real diagnosis.
Why a generic CRM doesn't work for a law firm
Because legal operations have 5 dynamics that commercial CRMs don't capture cleanly:
- Peremptory procedural deadlines: missing them costs the case and your reputation
- Conflict of interest: the system must detect when two cases have opposing parties
- Multimodal documents: briefs, exhibits, audio recordings, evidence photos
- Variable fees: hourly, retainer, success fee, mixed packages
- Legal auditability: every change must be immutable so you can defend it
Pipedrive or HubSpot handles all of these poorly. Off-the-shelf legal software (Tribunia, JusticiaApp, Lexnet) does better but locks you into licenses with no technical ownership.
Architecture of a custom legal CRM
| Module | Function |
|---|---|
| 360 Client Profile | Personal data, RFC, open cases, historical cases, documents |
| Dedup by NIT/RFC | One person, one record — no fragmentation |
| Conflict of Interest | Automatic cross-check against full database at intake |
| Cases | Cover sheet, subject matter, court level, parties, procedural deadlines |
| Tasks & SLA | Assignment by attorney with priority and due date |
| Timesheet | Hours logged by attorney, case, and activity |
| Document Management | Versioned storage, full-text search, OCR |
| Billing | CFDI 4.0 with multiple fee structures |
| Audit Log | Immutable hash chain of every action |
| Role Dashboard | Partner, associate, paralegal, reception |
How procedural deadlines are handled
This is the most critical piece. Every case has peremptory legal deadlines — miss them and the right is lost. The system:
- At case intake, captures process type, court level, and start date
- Automatically calculates key deadlines (answer, closing arguments, appeals)
- Counts business days using the current judicial calendar
- Triggers escalating reminders (15 days out, 5 days out, 1 day out)
- Notifies via WhatsApp, email, and dashboard to the responsible attorney
- If no one marks it as completed, it escalates to the supervising partner
Judicial business days in Mexico vary by jurisdiction (federal, local, civil, commercial, amparo). The calculation function lives in auditable code with the applicable jurisdiction baked in.
Variable fees: why the code matters
A typical firm handles 4 billing structures:
- Hourly: attorney timesheet by the minute, rate by level (partner $4,000 MXN/hr, associate $1,800, paralegal $600)
- Retainer: fixed monthly fee for ongoing services
- Success fee: percentage of case outcome (typically 15–30%)
- Package: flat rate by service type (company formation, express divorce)
A single case can combine both: monthly retainer plus success fee on collection. Earned-fee calculations must be deterministic in TypeScript code — not manual estimates. At month-end, the system generates an earned-fees report by attorney and by client with zero human error.
The real build: ERP with dedup and a 6-tab client profile
In a documented project, the technical setup was:
- 85 ERP schema tables with 17 RBAC roles
- 6-tab client profile with automatic dedup by NIT
- Twilio webhook with sub-30-second response time
- Real-time chat with no third parties (home-built on Postgres Realtime)
- RLS policies applied by role and by tenant
- Immutable audit log with SHA-256 hash
The pattern maps directly to law firms: mandatory dedup to prevent conflicts of interest, granular RBAC so paralegals can't view senior partner cases, immutable audit log to defend before INAI or internal audit.
Document management with OCR
Law firms handle thousands of PDFs: briefs, official notices, responses, exhibits, rulings. The system must:
- Centralized storage by case with granular permissions
- Automatic OCR of scanned PDFs (Vision API)
- Full-text search by content, not just file name
- Versioning: every change logged with author and timestamp
- Tags: document type, procedural phase, priority
- External sharing with expiration: client link with no system access
Without this, attorneys spend 15% of their day searching for documents. With OCR and full-text search, it takes seconds.
Compliance: attorney-client privilege and LFPDPPP
Law firms have a dual obligation: attorney-client privilege (Article 36 of the Attorney Code of Ethics) and LFPDPPP for client personal data. The system must:
- Data on the firm's own infrastructure (Supabase, S3, GCS under the client's accounts)
- Encryption at rest with AES-256 and in transit with TLS 1.3
- Immutable audit log of every access to the case file
- Documented ARCO rights procedure
- Privacy notice at client intake
- Retention policy: how long closed-case files are kept
With Catalizadora, the infrastructure lives in your account. No third parties holding a copy of your data, no locked-in licenses, code in your name.
Why not Tribunia, Iuris, or off-the-shelf software?
Legal software products charge between $50 and $400 USD per attorney per month, or per firm with hard limits. For a 5–20 attorney firm that's $3,000–$96,000 USD per year in licenses with rigid workflows.
With MAGIA / Core, the system is yours for $15,000 USD, one time. Workflows tailored to your practice area (corporate, tax, labor, criminal). No retainers, no locked-in licenses.
Next steps
If your firm has between 5 and 50 attorneys and your current system doesn't show you billable hours by case, real-time procedural deadlines, or automatic conflict-of-interest checks, the first step is a 30-minute call to review your practice and current stack.
Learn about MAGIA / Core for $15,000 USD in 12 weeks or the full process in five phases.