Home/Systems/Dental Clinic
Healthcare & Clinics

The chair only earns when it's booked.

A dental clinic's whole operation on one system: the website patients find, the software the front desk lives in, and a rules engine that decides who is due back, whose treatment plan has stalled, and whose balance has aged, before anyone gets in at 8.

Powered by 27th Marketing
yourclinic.ph
THE DENTAL STUDIO
ServicesDentistsPricesVisit us
Book online
β€” Open Mon to Sat

Dentistry that
remembers you.

Book in 30 seconds. We'll remind you the day before, and again when you're due for the next clean.

🦷
Cleaningfrom β‚±1,200
✨
Whiteningfrom β‚±8,500
πŸͺ₯
Bracesplan available
clinic front desk
Front desk
DashboardInboxSchedulePatientsRecallsPlansMoneyReports
Today3 chairs
Booked18
Chair use82%
Recalls due24
Aged 90dβ‚±38K
Automations, ran 07:00
Recall due24 patients Β· reminders queuedDone
Plan stalled6 plans idle past 14 daysReview
Balance past 309 accounts Β· notice draftedQueued
Sector
Dental clinic, multi-chair
Scope
Website Β· Front desk Β· Rules engine Β· Reporting
Stack
React Β· Node/Express Β· FastAPI Β· PostgreSQL Β· Docker
Automations
9 nightly jobs, dry-run by default
The problem

Clinics don't lose
patients. They lose
the follow-up.

Almost nobody quits a dentist. They just never get asked back. Six months passes, the six-month clean isn't booked, and a patient the clinic already paid to acquire quietly stops being one.

Recalls diarised by hand, or not at all
Treatment plans accepted, then forgotten halfway
Balances aging quietly with nobody watching the clock
A website that lists a phone number instead of taking a booking
What we changed

The front desk marks a cleaning complete. That's it. The rules engine sets the recall date, picks the reminder date and the channel, and files it. Nobody diarised anything. Months later the 7am job picks it up and the reminder goes out on time, whether or not anyone remembered.

React + ViteExpress + SequelizeFastAPI + SQLAlchemyPostgreSQLDockerRole-based access
Runs before you open

Nine jobs, every
morning, on their own.

Get a walkthrough β†’
πŸ”Recall due

Finds who's due for the next visit and sends the reminder on the date it chose months ago.

⏸️Plan stalled

A treatment plan idle past the threshold gets flagged before the patient drifts off it.

πŸ’³Instalment due

Payment plans chased on schedule, so the arrangement holds without a phone call.

πŸ“…Appointment reminder

The day-before nudge that turns a booking into a person in the chair.

πŸ“„Claim SLA

Insurance claims that have sat too long, surfaced before they go stale.

πŸ’€Dormant reactivation

Patients long past due, reached with a message written for exactly that gap.

⭐Review request

Asked at the right moment after a good visit, not at random.

πŸŽ‚Birthday

The small touch that costs nothing and gets remembered.

🧾Balance past 30

Ageing accounts flagged by bucket, so collections happen while they're still collectable.

πŸ›‘οΈDry run first

Every automation records its run without sending, until you've watched a week of output and flipped it live.

Where the day happens

One screen the front
desk can actually live in.

πŸ—“οΈ

Schedule & chairs

The day by chair, with utilisation calculated for you. Gaps are visible as gaps, not discovered at 4pm.

πŸ’¬

Inbox

Patient threads in one place, tied to the record, so whoever picks it up has the whole history.

πŸ“

Patient record

Visits, plans, balances, documents and messages on one page, instead of four tabs and a folder.

🦷

Treatment plans

Proposed, accepted, in progress, complete, with the stalled ones raised automatically.

πŸ’°

Money

Payments, instalments and ageing buckets, so the clinic knows what it's owed and how old it is.

πŸ“Š

Reports

Production, chair utilisation and recall performance, calculated once by the engine and read by everyone.

πŸ‘₯

Staff, payroll & attendance

The register, the hours and the pay run, kept in the same system as the work they came from.

πŸ”

Roles that mean something

The owner sees everything. Front desk sees the day. A dentist sees only their own patients and threads.

βš™οΈ

Automations page

Every rule visible, every run logged, and thresholds that are settings, not code changes.

Why it holds up

Three apps.
One database.
One source of truth.

The write path and the think path are separate on purpose. One service records what happened; another decides what it means. Neither guesses on the other's behalf.

βœ“The API owns writes: bookings, payments, records
βœ“The engine owns rules: recall dates, stalls, ageing, rollups
βœ“The browser never talks to the engine directly
βœ“When the engine is down, the app says so instead of inventing a number
Every money rule is a tested function

The recall interval, the stall threshold and the ageing bucket are pure functions with tests around them, not logic buried in a screen. That's why the same system can run a derma clinic or a vet practice by changing configuration values rather than rewriting the product, and why "configuration, not a rebuild" is true in the code, not just in the pitch.

9Automationsrunning before opening
14Front-desk screensinbox through payroll
3Access levelsowner Β· front desk Β· dentist
0Recalls diarised by handthe engine sets the date
How it got built

Careful with clinics.
Careful with money.

01

Sit at the desk

We map the real day, walk-ins, no-shows, the notebook nobody admits to, before designing a screen.

02

Write the rules down

Recall interval, stall threshold, ageing buckets, agreed as numbers and locked in with tests.

03

Run it dry

Automations log every run without sending, so the clinic watches a full week of output before anything goes out.

04

Go live, then tune

Flip to live, watch the first cycle with you, and adjust thresholds from settings, not from code.

Designed, built and powered by 27th Marketing.

Clinic website, front-desk software and the automation behind both, from one team that stays on after launch.

27th Marketing
More systems

How many patients are
quietly overdue right now?

Book a call and we'll walk your clinic's numbers, then scope the site and the system around them.