Selling treatment packages in a clinic app: packages vs scheduled sessions
The short answer
In a clinic app, a treatment package and an appointment are different things. A package is an entitlement to several services or sessions, such as a course of physiotherapy or a series of laser sessions; an appointment is a specific time with a specific doctor. The cleanest design lets the patient request a package, has the clinic review that request first, and then books each session later as a normal appointment linked to the package, so the patient can see what is included, used and still available.
Key takeaways
- A package is an entitlement; an appointment is a time slot. Model them separately and link them.
- Have the clinic review a package request before it becomes active, because suitability, availability and terms need a human decision.
- Book each session later as a normal appointment that carries the package reference, so cancellation rules and reminders work the same way.
- Show the patient the package status and, for each service, how many sessions are included, used and remaining.
- Never let a package request look like a confirmed visit.
What a treatment package is, and how it differs from an appointment
A treatment package is a bundle of services or sessions a patient commits to as a group, usually because the care is delivered over several visits. An appointment is one of those visits at a specific time. Mixing the two is a common mistake in clinic apps that sell packages.
Typical examples, described generically:
- Physiotherapy: a course of sessions with a physiotherapist, often spread over weeks and adjusted as the patient progresses.
- Dental: a set of related services, such as cleaning sessions or a staged treatment plan the dentist has agreed with the patient.
- Dermatology and laser: a series of sessions spaced apart, where the interval between sessions matters.
- Check-up bundles: several services offered together, sometimes with different practitioners.
In each case, buying the package does not tell the clinic when the patient will come, which doctor they will see, or whether every session will be needed. If the app treats "package purchased" as "appointments booked", the schedule fills with placeholder visits that may never happen, and patients assume times that were never agreed.
Why the clinic should review a package request first
A package request should go to the clinic for review before it becomes active, because whether a package suits a patient, and whether the clinic can deliver it, are decisions a person needs to make.
This is how Naqrah, the clinic booking platform FLUIDS designed and built for private clinics in Oman, handles packages. Requesting a package does not itself choose a doctor, date or appointment time. The clinic reviews the package request first, and the sessions are then booked as appointments. Naqrah gives no medical advice, and the review step keeps decisions about care with the clinic rather than with the app.
Reviewing first protects both sides:
- Suitability: the clinic may need to assess the patient before agreeing that a course of sessions is appropriate.
- Capacity: a package that needs a particular practitioner or device depends on their availability over the coming period.
- Terms: expiry, refunds and payment arrangements can be confirmed before the patient commits.
Package states vs session states: two linked lifecycles
A package and its sessions each have their own lifecycle, and the app should track them separately. The table below is a typical design; your clinic's states may differ, and the names should match how your staff talk.
| Package | Session (appointment) | |
|---|---|---|
| Starts as | Requested by the patient | Booked by the patient against an active package |
| Reviewed by | The clinic, before activation | No separate review; normal availability rules apply |
| Active means | Sessions may be booked within the allowance | A specific doctor, branch, date and time |
| Can change by | Clinic decision (approve, decline, adjust) | Reschedule, cancel, or clinic-proposed change |
| Ends when | Allowance used up, expired or closed by the clinic | Completed, cancelled or missed |
The link between them is a package reference on each session. In Naqrah, a session booked against a package carries the package reference, connecting the appointment to that package's allowance. That one field lets the clinic see which visits belong to which package and lets the patient see their remaining sessions.
How to book sessions against a package
Once a package is active, each session should be booked through the same flow as any other appointment, with the package selected as the source. Reusing the normal booking flow means availability, reminders, rescheduling and cancellation windows all work without special cases.
- The patient opens the active package and chooses a service that still has remaining sessions.
- The app offers real slots for that service, filtered to the practitioners and branches the package allows.
- The patient confirms, and the new appointment is saved with the package reference.
- The allowance updates according to the rule you chose (on booking or on completion).
- Changes follow normal rules: a reschedule keeps the package link; a timely cancellation returns the session to the allowance if your rule says so.
For treatments where spacing matters, such as laser series, consider showing the recommended interval as information the clinic enters, not as a medical recommendation the app generates. The clinic remains responsible for clinical timing; the app only displays what the clinic has set.
What the patient should see in the app
The patient's view of a package should answer three questions at a glance: what state is my package in, what does it include, and what have I used. In Naqrah, the patient can see package status and, for each service in the package, the allowance and the usage.
- Status in plain words: "Waiting for clinic review", "Active", "Declined" or "Completed", never a technical code.
- Per-service allowance: included, used and remaining sessions for each service.
- Linked appointments: upcoming and past sessions booked against the package, each opening the normal appointment details.
- Clear next step: a "Book a session" action only when the package is active and sessions remain.
The most important rule is negative: a package request must never look like a confirmed visit. A patient who sees a package in their account but has no appointment should understand immediately that they still need to book a time.
Commercial and regulatory questions to settle first
Packages raise questions that software cannot answer for you, and each answer becomes a rule the app must enforce. Settle them with the clinic's management, and where needed with counsel, before design.
- Expiry: does a package expire, and what happens to unused sessions?
- Refunds and transfers: can unused sessions be refunded or moved to another family member or service?
- Payment: paid in full at approval, in instalments, or per session? Each option changes the payment integration and the states above.
- Advertising: how packages are promoted in the app may fall under healthcare advertising and consumer protection rules in your market.
Package and session records also hold health-related personal data, since they reveal what treatment a patient is following. Apply the privacy law of each market, such as Saudi Arabia's PDPL or Oman's personal data protection law, and confirm obligations with qualified counsel.
FLUIDS designs and builds booking products with packages, loyalty and appointment workflows for clinics and service businesses in Saudi Arabia and the GCC. See how packages work in the Naqrah case study, how they fit the wider doctor appointment app feature set, and our booking app development service.
Frequently asked questions
Does buying a treatment package book my appointments?
Not in a well-designed app. In Naqrah, the package request is reviewed by the clinic first, and individual sessions are booked later as appointments with a service, doctor and time.
Why does the clinic need to review a package request?
Because suitability, practitioner availability and terms such as expiry or payment need a human decision before the patient commits to a course of sessions.
How does a patient know how many sessions are left?
The app should show, for each service in the package, how many sessions are included, used and remaining. Naqrah shows package status and the allowance and usage of its services.
Which clinics benefit most from packages in their app?
Clinics whose care is naturally delivered over several visits, such as physiotherapy, staged dental treatment, and dermatology or laser series. Single-visit clinics usually need packages less.
Can FLUIDS build package booking into our clinic app?
Yes. We model packages, sessions and the review step around your clinic's rules, then scope them into the app. Scope, price and timeline are confirmed in a written proposal before development.
Related development services
From the idea to a working product
Clinic & healthcare apps
Keep reading
Doctor appointment app features
Doctor appointment app features: a checklist from search to follow-up
Clinic loyalty programmes
Loyalty programs for private clinics: points on visits and in-app rewards
Reducing clinic no-shows
How a booking app helps reduce clinic no-shows: reminders, cancellation windows and rescheduling
Clinic booking apps
Clinic booking app development: what patients and private clinics actually need
Turn the idea into a written scope
A short call to understand your users and workflow, then a written proposal covering scope, timeline and price before development starts.
Start on WhatsApp