A patient app and stock availability system for your pharmacy

The same question comes over the counter all day: “Do you have this medicine?” The patient calls, a staff member checks the pharmacy software, and if it isn't there the patient goes elsewhere. And when a chronic patient's box runs out, if you aren't the first pharmacy they think of, that repeat prescription gets filled next door. An app is built to close those two leaks — not to sell medicine.

How many separate apps does this need?

  • 01

    Patient mobile app (iOS + Android)

    Look up a medicine by prescription number or a photo of the prescription, reserve it at the pharmacy, search generic equivalents, get repeat reminders for chronic medication, and see opening hours and on-call (night duty) days.

  • 02

    In-pharmacy staff app (tablet)

    Shows incoming reservations as a queue; datamatrix scanning, flagging of cold-chain and controlled items, ready notifications and handover records all run from here.

  • 03

    Web admin panel

    Stock sync status, undelivered reservations, dermocosmetic and OTC sales reporting, staff permissions, prescription image access logs and notification templates.

What the app includes

  • Search by active ingredient when the brand name is misspelled
  • Hold timer on reserved packs, automatic return to shelf
  • In-app camera sends the prescription photo without saving it to the gallery
  • Run-out date calculated from pack count and daily dose
  • Expiry alert for the health report that covers a chronic prescription
  • Equivalent lookup limited to same-ingredient items actually on the shelf
  • Only the pharmacist account can close red and green prescription items
  • One-time pickup code when a relative collects the medicine
  • Out-of-stock queries roll up into a wholesaler order list
  • Tablet-based goods receipt: scan the wholesaler delivery note line by line
  • Stripped-down staff screen with audible queue alerts on night-duty shifts
  • Dermocosmetics kept in a separate storefront and payment flow from medicines

State of the sector

In community pharmacy, competition doesn't happen on price — medicine prices are already fixed. It happens in the few seconds when a patient decides which pharmacy to call. Chains and larger pharmacies have already moved stock enquiries onto the phone; patients don't set out until they can see the medicine is ready. A pharmacy without an app never sees that traffic, so it can't measure what it loses either: the item that couldn't be found is never recorded, the chronic patient quietly moves elsewhere, and dermocosmetic sales stay entirely dependent on counter footfall. The loss doesn't show up in revenue — it accumulates in patients who don't come back.

Metrics that matter here

  • Collection rate for reserved prescriptions — Shows the boxes that were prepared, waited under the counter and went back; notification timing and holding periods are tuned from this.
  • Number of enquiries for out-of-stock medicines — Lists the items patients looked for and couldn't find; ordering from the wholesaler against this list reduces missed prescriptions.
  • Return rate of patients from chronic medication reminders — Measures whether the same patient fills their repeat prescription with you again; it is the real indicator of the pharmacy's loyal customer base.
  • Cold-chain deliveries completed within the window — Confirms that items like insulin arrive without leaving their temperature range; exceeded windows point to a process failure.

Common mistakes in this sector

  • Trying to turn the app into medicine e-commerce Building cart, price and promotion screens for human medicinal products breaks the regulations and also gets caught in app store review. The right approach is to keep the medicine side in a reservation flow and leave payment and handover to the pharmacy.
  • Leaving stock updates to staff by hand Nobody can update a second screen while dozens of boxes are going out during the day. The app says “in stock”, the shelf is empty, the patient comes for nothing and never asks again. Stock must flow automatically from the pharmacy management software.
  • Leaving the on-call rota out of the app entirely Reservations that arrive outside duty hours sit unanswered until morning, while on a duty night the whole demand piles onto one person. If opening hours and the on-call rota aren't wired to the form's open/closed logic, the app loses the patient's trust.
  • Putting the medicine name in the notification text A notification reading “Your insulin is ready” shows the patient's diagnosis to whoever is standing next to them, on the lock screen. Health data is never exposed in a notification; the text stays neutral and the detail appears inside the app after verification.

Regulation and compliance

A pharmacy app is designed within the framework of Law No. 6197 on Pharmacists and Pharmacies and the Regulation on Pharmacies and Pharmacy Services: human medicinal products cannot be sold online, medicines cannot be advertised to the public, and handover takes place in the pharmacy under the pharmacist's responsibility. Datamatrix movements are reported to İTS (Turkey's national pharmaceutical track-and-trace system), and reimbursement for SGK (Turkey's social security institution) prescriptions runs through Medula. Under KVKK (Turkey's data protection law, aligned with GDPR), prescription and medication data is special-category health data; it requires explicit consent, encrypted storage, access logging and deletion at the end of the retention period. Sales of dermocosmetics and non-prescription products trigger an e-Arşiv invoicing obligation under Turkey's mandatory e-invoicing system.

The real challenges in this sector

  • Separating datamatrix scanning from the İTS reporting flow

    Every box carries a unique datamatrix code, and a sale, return or goods-receipt is not complete until it is reported to İTS (Turkey's national pharmaceutical track-and-trace system). Rather than sending the scanned code straight to the service, the app should hand it to the pharmacy software's reporting flow as a queued job. When connectivity drops, scanned codes are queued on the device and processed in order once the connection returns, and the same box can never be reported twice.

  • Prescription medicines cannot be sold; the flow has to be reservation-based

    Online sale and consumer advertising of human medicinal products is not permitted in Turkey. So the app is not built around a cart-and-checkout flow but around a reservation flow: the patient sends a prescription number or an image and finds out whether the medicine is ready at the pharmacy. Payment and handover are completed in the pharmacy, in the pharmacist's presence. Product screens show only a ready / not ready status instead of prices, promotions or advertising language.

  • Keeping cold-chain items in a separate delivery queue

    Insulin and similar products must be transported between 2 and 8 degrees Celsius, so they cannot sit in the same list as ordinary address deliveries. Items carrying a cold-chain flag drop into a separate queue; a timestamp and a delivery window are recorded when the box leaves, and the carrier is forced through an ice-pack check step. If the window is exceeded, the job closes automatically and the product goes back on the shelf.

  • Locking controlled prescriptions out of the courier flow

    For products on red, green and purple prescriptions, ID and the original prescription are required at handover, and releasing them to a relative requires a separate record. The app flags these items at the moment of reservation and blocks them from dispatch, makes identity verification a mandatory field on the staff screen, and records the relationship if the person collecting is not the patient. If these steps can be skipped, the app puts the pharmacy at risk.

  • Treating the prescription image as special-category data

    A prescription image uploaded by a patient reveals the medicine they take and therefore their diagnosis; that is special-category data requiring explicit consent and additional safeguards. The image is never left in the device gallery, it is stored encrypted on the server behind role-based access, and it is deleted automatically once the reservation closes. Which staff member viewed which prescription and when is logged, and medicine names are masked on support screens.

Required integrations

  • İTS (Turkey's national pharmaceutical track-and-trace system) — datamatrix verification and sale/return reporting
  • Stock synchronisation with pharmacy management software (Farmakod, Eczanem, Novaeczane and similar)
  • Prescription number and SGK (Turkey's social security institution) co-payment data aligned with Medula pharmacy reimbursement screens
  • GİB (Turkish Revenue Administration) e-Fatura / e-Arşiv (Turkey's mandatory e-invoicing system) — documenting dermocosmetic and OTC sales
  • iyzico or PayTR (Turkish payment providers) or a bank virtual POS — online collection for non-medicine products only
  • WhatsApp Business API and SMS — medicine-ready, on-call hours and repeat reminder notifications

Who this page is for

  • Single neighbourhood pharmacy

    Closing the lost phone traffic is enough: reservation, a stock mirror from the pharmacy software, ready-for-pickup notifications and the night-duty rota. Scanning, cold chain and dermocosmetics payment wait for later phases; the opening scope stays deliberately narrow.

  • High-traffic pharmacy opposite a hospital or clinic

    Queue handling and dispensing speed come first: pre-picking from the prescription number, ticket numbers in the staff queue, datamatrix scanning and goods receipt counting belong in phase one. With a high share of report-backed and controlled items, role separation is built in from the start.

  • Newly opened pharmacy or a group with several branches

    Cross-branch stock visibility and one admin panel decide it: the patient sees which branch has the pack ready, stock moves between branches, and staff permissions and notification templates are managed centrally. The identity and role model must be designed for multiple sites from day one.

A phased plan that splits the budget

  1. 1

    Phase 1 — Reservation core that takes pressure off the counter 5-7 hafta

    Ships the patient app and the staff queue: reservation from a prescription number or photo, one-way stock mirroring from the pharmacy software, a ready-for-pickup notification, and opening hours plus the night-duty rota deciding when the form accepts requests. It already cuts phone traffic and stands on its own.

  2. 2

    Phase 2 — Datamatrix scanning, controlled items and cold chain 4-6 hafta

    Adds camera scanning of the pack datamatrix, a queued notification flow to Turkey's İTS drug tracking system with offline buffering, goods receipt counting, ID verification and pickup codes for controlled prescriptions, and a separate cold-chain queue with a delivery window. These risk-bearing flows come second so they can be field-tested against real patient traffic on a stable core.

  3. 3

    Phase 3 — Returning patients and non-medicine sales 3-5 hafta

    Turns on run-out date calculation with neutrally worded refill reminders, health-report expiry alerts, the dermocosmetics storefront with online payment and e-Arşiv invoicing (Turkey's electronic archive invoice), plus reporting on missed items and pickup rates. It only becomes meaningful once the first two phases have accumulated real data.

Typical scope and timeline

Typical scope: patient app (native iOS and Android), in-pharmacy staff screen and web admin panel. Reservation by prescription number or image, stock synchronisation from your pharmacy management software, datamatrix scanning, separate flows for controlled and cold-chain items, chronic medication reminders, on-call rota and notification infrastructure. UI/UX design, store assets, testing and release to the App Store and Google Play are included.

Estimated timeline: 10-16 weeks

Off-the-shelf or custom build?

Topic Off-the-shelf Custom build
Connecting to the pharmacy software Packaged products ship ready-made connectors for a handful of common pharmacy systems; if yours is on the list, setup really is fast and upkeep stays with the vendor. For systems that are not on that list or expose no interface, a small bridge service runs on the counter PC and stock fields are mapped to your own product records.
How the reservation flow is shaped Most off-the-shelf tools are built on a retail cart; if you switch the medicine side off and sell only non-medicine products, that structure is more than enough. On the prescription side you need reservation instead of checkout, a delivery lock on controlled items and a separate cold-chain queue — these are the flow itself, not settings bolted on later.
Monthly subscription versus one-off investment A subscription means a low first-month threshold and an easy exit; if you first want to test whether the demand exists at all, it is a reasonable starting point. Per-user or per-notification pricing makes cost unpredictable exactly on the busy nights; with custom development the cost is concentrated up front and then stays fixed.
Ownership and portability of prescription data The provider carries data-protection compliance and infrastructure security itself; for a small pharmacy, handing that responsibility over is a genuine advantage. Prescription images and the patient list sit on the provider's servers; when the contract ends, access logs and reminder records usually cannot be exported, whereas a custom setup lets you define retention and deletion rules yourself.

Sector glossary

Equivalent (muadil)
A different brand carrying the same active ingredient at the same dose. At the counter, saying an equivalent is available means the pharmacist can dispense that alternative instead of the prescribed pack, still covered by Turkey's social security scheme SGK.
Provizyon (SGK approval)
The instant approval from Medula, the social security system, confirming that a prescription is reimbursed. No pack leaves the counter without it, and when a patient is kept waiting the problem is usually the approval screen, not the medicine.
Kupür (pack coupon)
The barcoded strip cut from the pack and glued onto the prescription. A missing one at the end of the billing period means an unpaid prescription, so pharmacies track which pack went with which prescription.
Mal fazlası (bonus goods)
Free extra packs granted on a wholesaler order, quoted as “10+1”. Because of it the counted stock and the invoiced quantity never match, so bonus packs have to be flagged separately in the app's stock mirror.
Under-counter shelf
Where packs set aside for a named patient wait until pickup. While a reservation is open the pack is deducted from sellable stock, and if it is never collected it must be pulled back from there and released for sale again.

Frequently asked questions

Let us talk about your project

A free 30-minute call to scope it out, then an itemised quote within 48 hours.

Get a Free Quote

This page explains the problems an app must solve in this sector. We share references and comparable projects during the call.

Other sectors

All sectors →