Patient Tracker Appointments, Encounters, Prescriptions and Billing for Clinics
Patients book online or at the front desk into a doctor's real session, split into time slots with a queue slip number. The doctor opens the appointment as an encounter, records diagnosis, vitals and observations, writes the prescription from a medicine database and prints it. Billing posts a receipt, and the whole visit stays on the patient's record for next time. Built by Xelent Solutions for clinics in Pakistan.
Is Your Clinic Still Run From a Phone and a Slip Pad?
Most clinics in Pakistan take appointments by phone, hand out numbered slips from a pad, and write prescriptions on a letterhead the patient takes home. It works on a quiet morning. It stops working when forty patients arrive for the same evening session and a returning patient asks what the doctor prescribed last month.
Appointments live on the receptionist's phone; when she is off, nobody knows who is coming at 6 pm or how many
Slip numbers come off a pad, so the same number is handed out twice and two patients argue at the door
The prescription goes home on a letterhead and comes back folded, torn or not at all — the doctor rewrites from memory
A patient who saw the doctor three times this year has three separate files, and none of them has last visit's vitals
Fees are collected in cash against a carbon-copy receipt; the owner totals the day from the counterfoils
A visiting consultant sits at two clinics; what each clinic earned on his patients is settled by a WhatsApp message at month-end
Everything hangs off the appointment.
Booking → Slip Number → Encounter → Prescription → Bill & Receipt → Patient History
Every Session Becomes Numbered Slots. Every Slot Is a Queue Slip.
Each doctor has sessions per day of the week — Monday 09:00 to 12:00, say — and a slot duration of their choosing. The system divides the session into slots, checks existing appointments, marks overlapping slots as booked and assigns each one a sequential slip number. The patient, the receptionist and the doctor all see the same slot and the same slip. Sessions that run past midnight are handled, and clinic weekly holidays, special holiday dates and the doctor's own leave are checked before a booking is accepted.
- Sessions per doctor per day of the week, each with its own slot duration
- Slots generated from the session automatically; booked ones marked from existing appointments
- Sequential slip numbers (queue tokens) assigned to every slot, printed on the appointment slip
- Clinic weekly holidays, special holiday dates and doctor leave block booking on those days
- Sessions spanning midnight (22:00–02:00) are split and handled correctly
- Consultation type (in-person, video, phone) and priority (normal, urgent, emergency) on every appointment
09:00 – 10:00
6 slots · 3 booked
09:00–09:10
Available
09:10–09:20
Ahmed R. · Normal
09:20–09:30
Available
09:30–09:40
Fatima K. · Video
09:40–09:50
Walk-in · Urgent
09:50–10:00
Available
10:00 – 11:00
6 slots · 3 booked · 1 selected
10:00–10:10
Hassan M. · Normal
10:10–10:20
Available
10:20–10:30
Selected
10:30–10:40
Zainab A. · Follow-up
10:40–10:50
Patient app · Normal
10:50–11:00
Available
11:00 – 12:00
6 slots · 1 booked
11:00–11:10
Available
11:10–11:20
Available
11:20–11:30
Usman T. · Phone
11:30–11:40
Available
11:40–11:50
Available
11:50–12:00
Available
Six Steps From a Booking to a Searchable History
Each step writes to the same appointment and the same patient record. The receptionist never re-types the patient, the doctor never asks what was prescribed last time, and the bill is already attached when the patient reaches the counter.
Book
Online through the patient app or at the front desk: pick a department, a doctor, a date and a live slot; add a service if needed; find a returning patient by phone number or register a new one; attach any reports.
Appointment created · slot marked booked
Slip
The slot carries a sequential slip number. The front desk prints the appointment slip; the patient app shows the same number, time and doctor. Upcoming appointments are listed for staff and patient alike.
One queue number · never handed out twice
Encounter
The doctor opens the appointment as an encounter: diagnosis, observations, blood pressure, RBS, SpO2, tests ordered, results, summary, notes, follow-up date, time spent and an emergency flag if needed.
One encounter per appointment · doctors only
Prescription
Medicines come from the clinic's medicine database, each with a schedule (3, 5, 7, 14, 30 days) and a timing code (OD, BD, TDS, QID, PRN, STAT). Lab reports and imaging attach to the encounter. Print the prescription, or the eye-prescription layout.
Printed and stored · attached to the visit
Bill
Consultation and service fees post to the appointment's bill. The receipt prints from the Appointments screen. For multi-clinic groups, the clinic commission on the visit is recorded against the doctor and clinic.
Receipt printed · commission recorded
History
Every appointment, encounter, prescription, document and bill sits on the patient record. Search by name, phone or email; the patient sees the same history in the app. Next visit starts from last visit.
One record per patient · across clinics
Twelve Modules. One Patient Record.
These are the admin screens the clinic staff actually use: Appointments, Clinics, Clinic Commissions, Departments, Doctors, Encounters, Medicines, Patients, Prescriptions, Services, Holidays and Reports, plus the API behind the patient app.
Appointments
- Department → doctor → date → slot → service → patient → documents → confirm
- Print appointment slip and print receipt from the same row
- Upcoming list, status (pending, complete, cancel), consultation type and priority
Encounters
- Diagnosis, observations, vitals, tests, results, summary, notes, follow-up
- One per appointment, created by doctors only; emergency flag
- Standard print, new print layout and eye-prescription print
Prescriptions & Medicines
- Searchable medicine database maintained by the clinic
- Medicine schedules (durations) and timings (OD, BD, TDS, QID, PRN, STAT) as configurable lists
- Multiple medicines per encounter, printed on the prescription
Patients
- Name, DOB, age, gender, blood group, marital status, photo
- Phone, email, encrypted address, city/state/country, emergency contact, height and weight
- Search by name, phone or email; find by phone during booking
Doctors & Departments
- Doctors with qualifications, departments and the services they offer
- Sessions per day of the week with a slot duration per doctor
- Doctor-specific holidays that block booking
Services
- Services by department and by doctor with fees
- Optional service selection at booking
- Services fetched live for the chosen doctor in the booking form
Billing & Receipts
- Bill against the appointment for consultation and services
- Printable receipt from the Appointments screen
- Earnings report by period
Clinics & Commissions
- Clinics with weekly holidays and special holiday dates
- Clinic Commissions recorded per doctor and clinic
- Cities, states and countries as shared reference data
Patient App & API
- Public registration and login via API
- Departments, doctors, sessions, slots and services exposed to the app
- Appointment history and upcoming visits in the patient's hands
Holidays
- Clinic weekly holidays (Monday to Sunday flags)
- Clinic special holiday dates
- Doctor leave dates checked at booking time
Notifications
- Real-time notifications to staff on new bookings
- Notifications screen in the admin panel
- Dashboard with live metrics and today's data
Reports, Roles & Users
- Daily patient list, daily summary, doctor performance, earnings, room utilisation
- Roles and permission roles; users with active/inactive toggle
- Rooms and tokens for clinics that assign consulting rooms
One Encounter per Appointment. The Prescription Comes Out of It.
An encounter can only be created by a doctor, only against an existing appointment, and only once per appointment. It carries the diagnosis, observations, vitals (blood pressure, random blood sugar, SpO2), additional tests ordered, test results, a consultation summary, notes, a follow-up date, time spent and an emergency flag. Medicines are picked from the clinic's medicine database with a schedule (3, 5, 7, 14 or 30 days) and a timing code (OD, BD, TDS, QID, PRN, STAT). Reports and lab results attach to the encounter. Then the prescription prints — including an eye-prescription layout for ophthalmology.
Appointment first, encounter second
An encounter needs an existing appointment that does not already have one. Only a doctor can open it. That keeps the day's list honest: an appointment that passed without an encounter shows as cancelled.
Vitals and findings in structured fields
Blood pressure, RBS and SpO2 are fields, not free text, alongside diagnosis, observations, tests ordered and results. All of them are encrypted before they are stored.
Medicines from the database
Pick from the clinic's medicine list; set a schedule and a timing code from the configured lists. The same spelling, the same abbreviations, on every prescription the clinic prints.
Attach, print, follow up
Upload reports and imaging to the encounter, print the prescription in the standard or eye layout, and set the follow-up date so the next booking is expected.
Ayesha Malik · F · 34 · B+ · Dr. Sana Riaz · 14 Dec 10:20
Blood pressure
120 / 80
RBS
104 mg/dL
SpO2
98%
Cetirizine 10 mg
Tablet · medicine database
Hydrocortisone 1% cream
Topical · thin layer on affected areas
Emollient lotion
Topical · after bathing
Paracetamol 500 mg
Tablet · if fever or pain
2 documents attached · clinical fields encrypted at rest
lab-report-cbc.pdf · forearm-photo.jpg
Patient creates an account with name, phone and basic profile. Staff can also create the record at the desk; both land in the same Patients list.
Department → doctor (with appointment counts) → date → available slots → optional service → upload reports → confirm. Holidays are refused with a clear message.
Slip number, time, doctor and clinic for every upcoming visit, matching exactly what the front desk printed.
Past visits with diagnosis, prescriptions and attached reports, so the patient does not need to keep the paper.
A booking from the app appears for the receptionist immediately; the dashboard metrics update with it.
Token management in the admin panel for the mobile app and any other integration the clinic authorises.
Patients Register, Book and See Their Own History
The same API that runs the admin panel is open to a patient mobile app. A patient registers once, picks a department, sees the doctors in it with their appointment counts, chooses a date, sees the live available slots, optionally picks a service, uploads any reports they already have and confirms. Their upcoming appointments, past encounters and prescriptions are visible to them without a phone call to the clinic. Staff see new bookings in real time.
- Public self-registration via API, or patient records created by staff
- Booking flow mirrors the front desk: department, doctor, date, slot, service, documents
- Returning patients found by phone number; no duplicate records at booking
- Upcoming appointments and past encounters visible to the patient
- Real-time notifications to staff; dashboard metrics and data endpoints
- API token management for the mobile app and integrations
Several Clinics, Visiting Doctors, One Commission Ledger
Clinics are first-class records with their own weekly holidays and special holiday dates. Doctors belong to departments and offer services; a consultant who sits at two clinics has sessions at each. The Clinic Commissions module records what each clinic earns on each doctor's visits, so the month-end split is a report, not an argument.
Daily Patient List
Who is booked today per doctor and clinic, with slip numbers, status and whether an encounter was recorded.
Daily Summary
Appointments taken, patients seen, cancellations and fees collected for the day, per clinic.
Doctor Performance
Appointments, encounters completed and time per patient by doctor over a date range.
Earnings
Consultation and service fees by period, doctor and clinic, next to the commission the clinic records on each.
Clinic Commissions
The commission recorded for each clinic on each doctor's visits, so the month-end split between clinic and consultant is already on screen.
Room Utilisation
For clinics that assign consulting rooms: how each room was used across sessions.
Each clinic is its own record
Own weekly holidays and special holiday dates, own address, city and country. Appointments and commissions carry the clinic.
Doctors across clinics
A consultant belongs to departments, offers services and has sessions; the same doctor can run sessions at more than one clinic with separate slot grids.
Roles decide who sees what
Roles and permission roles control which screens a user can open. Doctors create encounters; front-desk users book and bill; the owner sees the reports.
Clinical Notes and Addresses Are Encrypted Before They Reach the Database
Patient address fields are encrypted at rest. So are the clinical fields of every encounter: diagnosis, observations, additional tests, test results, consultation summary, notes, blood pressure, RBS and SpO2. Encryption uses Laravel's native encryption keyed to the application, so a database dump without the application key is unreadable. Access to screens is controlled by roles and permissions, and only users with the doctor role can create encounters.
- Patient address fields encrypted at rest
- Encounter diagnosis, observations, additional tests, test results, consultation summary and notes encrypted
- Blood pressure, RBS and SpO2 encrypted as well
- Laravel native encryption keyed to the application key
- Roles and permission roles gate every admin screen; encounters are doctor-only
- Document metadata (original name, MIME type, size) stored with each upload
Address
patients
Diagnosis
encounters
Observations
encounters
Blood pressure · RBS · SpO2
encounters
Tests · Results
encounters
Summary · Notes
encounters
Encrypted fields
10
Encounter authors
Doctors only
Access
Role-based
Built for Practices That Run on Appointments
The same system scales from one doctor with an evening session to a group with clinics in several cities. If you admit patients to wards, run a pharmacy counter and a lab, you want the Hospital Management System instead.
Single Clinics
One or two doctors, an evening session, a receptionist. You need slots, slips, a prescription that prints and a receipt — working on day one.
- Front-desk and phone bookings into real slots
- Printed slip and receipt in two clicks
- Patient history from the second visit
Specialist Practices
Dermatology, ENT, eye, paediatrics, gynaecology. You need structured vitals, tests and results, and a prescription layout that fits the specialty.
- Eye-prescription print layout
- Tests ordered and results on the encounter
- Follow-up dates driving return bookings
Multi-Clinic Groups
Several clinics, visiting consultants, one owner. You need each clinic's holidays and sessions kept separate and the commission split kept on record.
- Clinics with their own holidays
- Clinic Commissions per doctor
- Earnings and daily summary per clinic
Diagnostic Centres
Patients come with a referral, book a slot, and leave with a report. You need departments, services with fees, document upload and a receipt.
- Services with fees by department
- Reports attached to the encounter
- Daily patient list and earnings
Appointment options out of the box
An appointment whose date and time have passed without an encounter is shown as cancelled automatically, so the day's list only ever shows patients who were actually seen or are still to come.
Opening a new clinic or adding a visiting consultant?
Load departments, doctors, sessions and services before the first patient books, and start with numbered slots instead of a slip pad.
Frequently Asked Questions
What clinic owners, doctors and practice managers ask us first.
How are appointment slots and slip numbers generated?
Each doctor has sessions for each day of the week and a slot duration. For a chosen date, the system takes the sessions for that weekday, divides each into slots of that duration, checks existing appointments and marks the overlapping slots as booked, then assigns every slot a sequential slip number. A Monday 09:00 to 12:00 session with 10-minute slots produces 18 slots numbered 1 to 18. The patient app and the front desk see the same grid, so a slip number is never handed out twice. Sessions that cross midnight are split and handled correctly.
Can patients book themselves?
Yes. The API exposes public registration, login, departments, doctors with their appointment counts, doctor sessions, available slots and services, so a patient mobile app can register a patient and book without calling the clinic. Returning patients are matched by phone number so a second record is not created. Staff receive a real-time notification when a booking arrives, and the booking appears in the same Appointments screen as front-desk bookings.
What does the doctor record during a visit?
The doctor opens the appointment as an encounter and records primary and secondary diagnosis, observations, blood pressure, random blood sugar and SpO2, additional tests ordered, test results, a consultation summary, notes, a follow-up date, minutes spent and an emergency flag if needed. Medicines are added from the clinic's medicine database with a schedule and a timing code, reports and imaging are attached, and the prescription is printed. Only a doctor can create an encounter, and an appointment can have only one.
How is patient data protected?
Patient address fields and all clinical fields of an encounter (diagnosis, observations, additional tests, test results, consultation summary, notes, blood pressure, RBS and SpO2) are encrypted at rest using Laravel's native encryption with the application key, so a copy of the database alone does not expose them. Access to admin screens is controlled by roles and permission roles, and encounters can only be created by users with the doctor role.
Does it work for a group of clinics with visiting consultants?
Yes. Clinics are separate records with their own weekly holidays and special holiday dates. Doctors belong to departments, offer services and have sessions, and the Clinic Commissions module records the commission each clinic earns on a doctor's visits. The earnings and daily summary reports run per clinic, so the month-end split between the clinic and the consultant comes from the system rather than from memory.
How is this different from the Hospital Management System?
Patient Tracker is built around outpatient appointments: sessions, slots, slips, encounters, prescriptions and receipts for clinics and practices. It does not manage wards, admissions, a pharmacy counter or a laboratory. If you run a hospital with in-patients, pharmacy and lab, the Hospital Management System covers that, and we can advise on which fits your setup during the demo.
Know Who Is Booked, Who Was Seen and What Was Prescribed — Without Asking the Receptionist
Bring your doctors' timings, your fee list and one week of slips. We will load them into a demo instance and walk you from an online booking to a printed prescription and receipt in under an hour.
Built and run by Xelent Solutions in Faisalabad — a PSEB-registered software house.
What Our Clients Say
Trusted by businesses across industries. Here's what they say about working with Xelent.
"I am very happy to use this Laravel Site Builder. It is very powerful and easy to use. It save a lot of time for development. Everything is organized good and work very smooth. Bilal show strong technical skill and responsible attitude. He is serious and professional developer. I trust his work quality. I feel very satisfied with this project."
"I have worked with Bilal for close to twenty years. I trusted him then, and I trust him completely now, which in this industry says everything. Xelent delivers top-quality service across the board. Even as they've grown so much, the service has never slipped. Not even once. If you want a company that is dependable, forward-thinking, and consistently delivers at the highest level, Xelent is exactly that."
"Xelent has always doing incredible work for us, at a reasonable rate! We are most impressed with the communication and understanding of updates/changes that need to be done. We are a US based company, and have tried other developers overseas, but none of them have performed as well as Xelent. Working with Bilal is a pleasure, and we will continue to send website development projects their way. I'd recommend you have them bid your next project!"
"Its been a pleasure getting my work done by Xelent Solutions team. Highly understandable, least instructions given with most amount of work out put. Looking forward to work more in future as well."
"It's always a pleasure working with this team. A true professional, fast and on budget! Hired a couple times and will do it again."
"I couldn't be any happier about my experiences with Xelent Solutions. I had a very short, tight deadline, and they worked around the clock to get the job done - perfectly. Can't wait to work with them again!"
Trusted by businesses worldwide. See what our clients say about us.
