Included in Client Retention Engine
The leak
Cancellations that become permanent because rescheduling required a phone call during business hours.
Login, visit history, receipts and self-service rescheduling — so the client who cannot make Thursday moves to Tuesday instead of disappearing.
Where this sits
This module is part of Client Retention Engine. It is not sold on its own, because the handoff between it and the module beside it is where revenue actually escapes.
Handoff · Follow-up
Medium leakUnowned: Depends on the visit being remembered.
Owned by this module: Client portal
What gets built
The deliverable, stated the way the contract states it
A logged-in area for your clients showing their history, upcoming appointments, receipts and saved payment methods, with rescheduling they can do themselves at 10pm.
At a glance
- Itemised value
- $1,800
- Build window
- Adds roughly 2 weeks to the build
- Sold inside
- Client Retention Engine
Yours at handover — domain, accounts, data and source code.
How it works
The mechanism, not the marketing
Trigger on the left, the rule the system applies in the middle, the consequence on the right. Read it as the logic your practice would otherwise be running in someone's head.
| Client action | Rule checked | Outcome |
|---|---|---|
| Cannot make Thursday | Notice period and availability rules you defined | Moves to Tuesday. The appointment is kept |
| Same request, inside the notice window | Rule fails | Routed to your team instead of becoming a cancellation |
| Needs last month's receipt | Own payment history | Answered without the front desk |
| Books the next visit | Card already on file | One action |
- Visit history
- Care-plan progress
- Receipts
- Saved payment methods
Capabilities
What it does, and why that matters commercially
Self-service rescheduling inside your rules
Clients move appointments within the notice period and availability you define. Outside those rules it still routes to your team.
Visit history and progress
Past visits, upcoming visits and — for care-plan practices — where the client is in a plan. Progress that is visible gets completed more often.
Receipts and payment history
Clients answer their own billing questions. Your front desk stops being an accounts department.
Saved payment methods
Card on file, managed by the client through Stripe. Rebooking becomes one action.
Implementation
How this gets built, and when it is done
Same standard as every module: a milestone you can verify yourself, not a status report.
Timeline
Adds roughly 2 weeks to the build
Definition of done
The build is accepted when the client can complete a live booking, receive a reminder, and complete a test payment without error.
Built on
- Next.js
- Auth layer
- PostgreSQL
- Stripe Customer Portal
Deployed on infrastructure registered in your name. You hold the accounts, the data and the source code when the build completes.
Who it matters most for
The practices where this leak is largest
Every practice loses something here. These are the ones where it is the dominant loss rather than a minor one.
Physiotherapy & chiropractic clinics
Cancellations concentrate mid-plan. The patient feels better around visit four, cancels visit five, and never reschedules the remaining seven.
Physio & Chiro systemsVeterinary practices
No-shows sit around 10–12% of booked appointments. Each one is a slot that was staffed, prepared and then paid for by nobody.
Veterinary systemsMed spas & aesthetic clinics
Deposit-less bookings walking away. High-value treatment slots held with nothing attached to them, then released hours before.
Med Spa & Wellness systems
This module on its own is a smaller answer
It closes one leak. The reason it is sold inside a tier is that the next leak sits immediately beside it, and an unowned handoff costs the same whether or not the module beside it is good.
Questions
Client portal, in detail
Will clients actually use a login?
They use it when it is the fastest way to do something they already want to do — move an appointment, find a receipt, rebook with a saved card. It is not a loyalty app; it is a shortcut.
What stops someone rescheduling into a slot we cannot staff?
The same availability rules that drive the public booking page. The portal cannot create a slot the system does not believe in.
Next step
Find out what your booking flow is costing you
Send the four numbers your practice already has. You get a written figure for the monthly revenue your current flow is leaking, and a recorded teardown of where it goes. Three business days, no obligation, no call required.
- 20 minutes discovery call, only if you want one
- 90-Day No-Show Recovery Guarantee
- 3 new practices a month