A multi-tenant gym ERP with three connected portals that replaced the spreadsheets, paper registers and scattered WhatsApp chats gyms run on.
A fitness-tech brand wanted a single product it could sell to many gyms at once. Each gym needed its own private workspace, its staff needed different levels of access, and members needed a reason to open the app between visits.
We designed and built a multi-tenant gym ERP with three connected portals, one for the platform owner, one for gym staff and one for members, all on one shared, secure backend.
Our role: product design, web app development and API integration, from prototype to launch-ready in about 10 weeks.
Most independent gyms and small chains in India run daily operations across a patchwork of tools that don't talk to each other.
No one was reminded when a membership was about to expire, so revenue quietly walked out the door.
UPI transfers were confirmed by screenshot and memory, which made month-end reconciliation slow.
Walk-ins and phone enquiries were never followed up in a consistent way.
Owners couldn't see revenue, occupancy or trainer performance without asking someone.
Shifts, leave, holidays, payroll and personal-trainer commissions were calculated by hand.
Members paid a fee and got a receipt, with no workout history, progress or nutrition support.
We split the product by who uses it. Each role signs in through its own entry point and sees only what it needs, while all three share one secure API: JWT sessions per role, OTP sign-in, per-gym data isolation and a full audit trail.
For the platform owner: onboard gyms, manage every user, broadcast notifications, review audit logs and track platform-wide analytics.
For gym owners and staff: members, billing, CRM, classes, personal training, the in-gym store, HR and payroll, with access controlled by role.
For members: join a gym, check in, log workouts, track nutrition and progress, and find a personal trainer. One login works across several gyms.
70+ screens across operations, people, revenue and member engagement.
Plans, sign-ups and a full member timeline. Freeze, unfreeze, extend or upgrade in a couple of clicks.
Invoices and payment tracking, with a review step so staff approve or reject each UPI transfer with a reason.
Every enquiry is captured as a lead and moved through a visible funnel.
WhatsApp, SMS or email messages on due dates, expiries, birthdays and missed attendance.
Catalogue, categories and orders for supplements and merchandise, with cash collection and UPI validation.
The most direct way a gym loses money is a membership that lapses without anyone noticing. We built a rules engine that lets owners decide what happens, when, and on which channel, without asking a developer. Each rule has a trigger, a timing condition, a channel and a message template, and can be switched on or off at any time.
| Trigger | When (example) | Channel |
|---|---|---|
| Payment due | 3 days before | |
| Payment overdue | 1 day after | SMS |
| Membership expired | On the day | |
| Member birthday | On the day | |
| New lead created | Immediately | |
| Attendance missing | After 7 days | SMS |
Every gym's members, payments and staff stay private to that gym, on one shared backend.
The versioned REST API is proxied through the web app, so its address is never exposed to browsers.
OTP sign-in with JWT sessions kept separate for each role, plus route protection.
Zod-validated forms with React Hook Form, and Recharts dashboards for owners.
Gyms moved from five disconnected tools to one system.
We design and build custom ERP, SaaS and portal products for growing businesses. Tell us how your team works today and we'll show you what it could look like.
Start a Conversation