← All clients
Client · System development

ATMS — Agila Tax Management System

An all-in-one operations platform for a Philippine tax and accounting firm — one system of record for sales, accounting, tax compliance, HR, payroll and field liaison work.

ATMS main dashboard showing all enterprise portals
ClientAgila Tax Management Services
IndustryTax, accounting & compliance
RoleLead developer · Feb – Jul 2026
146Screens across 10 portals
261API endpoints
118Database models
5Connected apps shipped

Inside the system

The challenge

Agila's teams ran leads, quotations, billing, BIR filings, payroll and government liaison runs across spreadsheets and a legacy PHP portal. Every department kept its own copy of client data, deadlines lived in people's heads, and management had no single view of what was due, paid or stuck.

The firm needed one platform where each department gets its own portal, every client has one record, and access is controlled per role and per app.

What I built

Sales & lead center

  • Leads, quotations, job orders and contracts
  • Monthly and one-time service plans, packages and promos
  • Commissions, after-sales and sales reports

Accounting & finance

  • Invoices, payments and allocations with auto-numbering
  • Chart of accounts, journal entries and client funds
  • Petty cash, cheque monitoring and financial reports

Tax compliance

  • Per-client VAT, percentage tax, EWT, compensation withholding and income tax
  • SSS, PhilHealth, Pag-IBIG, GIS and SEC AFS tracking
  • Sales and expense books with working papers

HR & payroll

  • Employee records, contracts and work schedules
  • Timesheets, leave, overtime and holidays
  • Payroll periods, PDF payslips, cash advances and government loans

Liaison & task management

  • Task templates with routed subtasks per department
  • Liaison dashboards and government-office directory
  • Task history, conversations and account-officer monitoring

Client gateway & IT

  • Client accounts, users and API keys
  • Announcements, notifications and full activity log
  • IT tickets, asset register and access-request approvals

The wider ecosystem

  • ATMS Hub — the first prototype (Feb–Mar 2026) that proved the portal model before the full rebuild.
  • Client Portal — lets Agila's clients manage their own employees, attendance, leave and payroll coordination.
  • Agila Business Academy — an internal learning platform with video series, exams, certificates and a leaderboard.
  • Operations Portal — team workspaces for BIR, mayor's permit and payroll engagements, with tickets, task dependencies and tax filing slots.
  • Liaison Task Order tracker — a lightweight app for creating task orders and looking up their status by number.

Engineering highlights

  • Modular monolith on the Next.js App Router, with each business module owning its own routes, API and components.
  • Role-based access with BetterAuth, plus per-employee app permissions, so each department only sees its own portals.
  • Zod validation on every API route and Prisma transactions for sequential codes like INV-YYYY-XXXX.
  • Domain-split Prisma schema on PostgreSQL covering accounting, HR, sales, compliance and services.
  • Non-blocking activity logging and notifications, PDF payslips and reports, Excel import/export and Cloudinary uploads.
  • Dockerised for local work and deployed on Vercel, with 540+ commits from a small team where I wrote the majority.

Tech stack

Next.js 16React 19TypeScriptPrismaPostgreSQLBetterAuthZodTailwind CSSRechartsReact-PDFCloudinaryDockerVercel

Internal system, not publicly accessible. Screenshots were taken from a local demo instance running on sample data. No real client information is shown.

Next client MQ Printing Services →