Back to portfolio
Bazavar — Patient Recall for Clinics

Bazavar — Patient Recall for Clinics

Most clinics sit on years of patient records, and many of those patients never left — their next check-up simply passed and nobody called. Bazavar imports the clinic's existing Excel export, applies a treatment protocol to each record, and works out who is due for a cleaning, an implant check or a filler top-up. Each due patient gets a short sequence of personal messages with a booking link, and the moment they book, visit, reply or opt out, they drop out of the sequence. At the end of the month the clinic gets one number: how many patients came back and how much revenue that was.

// Architecture

A standalone FastAPI and SQLAlchemy backend on PostgreSQL, with a Next.js 14 RTL panel, deployed with Docker next to the other Orv SaaS apps and billed through Orv Pay. A nightly engine enrolls due patients, advances sequence steps and queues messages; every message goes through the same gate for opt-outs, a monthly per-patient cap, the clinic's sending hours and public holidays. Sending sits behind a channel layer: the live default is a manual outbox the receptionist sends from, with SMS provider adapters written but switched off until a line is in place.

// Key capabilities

Protocols with sources

A built-in library of 33 dental and aesthetic protocols, each with a recall interval, a clinical note and its source (NICE, ADA, AAE and others), plus 86 ready message templates the clinic can edit.

Never message someone who just came in

A booking, visit, reply or opt-out ends every live sequence for that patient and cancels their queued messages, so nobody who came in yesterday is asked where they have been.

Conservative attribution

A visit only counts as recovered if a message actually reached the patient within the attribution window and matches the treatment; when the amount is missing, the average price is used and shown as an estimate.

Import from what the clinic has

The import wizard recognises Persian and English column names, normalises mobile numbers and Persian digits, reads Jalali dates and merges duplicates on mobile number.

// Technology stack

  • Python / FastAPI
  • PostgreSQL
  • Next.js
  • Jalali calendar
  • Orv Pay
  • Docker

// Inside the project

Bazavar — Patient Recall for Clinics — Inside the project 1Bazavar — Patient Recall for Clinics — Inside the project 2Bazavar — Patient Recall for Clinics — Inside the project 3Bazavar — Patient Recall for Clinics — Inside the project 4

// Next step

Need something like Bazavar — Patient Recall for Clinics?

Tell us what you're building. We'll reply with how we'd approach it, a rough timeline and the first step.

Start a similar project

Orv Team (Orv) is a software development studio. We design and build web, mobile and AI products, and support them after launch.

// Contact
Have a project in mind?|

Tell us what you're building, and we'll get back to you.

orv:~$new-project --like recall
or reach us directly
Telegram@OrvTeam
GitHub@ItsOrv
Email
orv© 2026