mojApteczka
Blog

Last updated: 2026-04-25

Offline medication dispensing — doses always saved, even without signal

At a patient's home, in a hospital, in a basement on the side away from the cell tower. That is exactly when you need to dispense medicine — and exactly when the signal tends to vanish.

Since version 1.7.0, mojApteczka saves a dose confirmation instantly on the device — no waiting for the server, no spinning loader. Pending dispenses queue up locally and automatically sync to the cloud the moment you come back online. Even closing the app or a dead phone battery will not lose a recorded dose.

How to dispense a medicine without internet

The process is identical to online dispensing — a missing signal does not block any step:

  1. open the medicine card in your kit,
  2. tap the dispense icon,
  3. choose the dose (fractional is supported too) and the recipient,
  4. confirm — the screen responds instantly, stock updates locally,
  5. when signal returns (or you open the app online), the queue automatically flushes pending dispenses to the cloud.

You do not have to click, resume, or "remember for later". An operation leaves the pending list only when the server confirms receipt.

What happens to pending dispenses

The key difference between mojApteczka 1.7.0 and a typical online-first app: the queue of pending operations is persistent. It is not a RAM variable that disappears on process kill — it is a disk-backed store inside the operating-system sandbox, encrypted at rest.

In practice:

  • Closed the app during the visit? The queue lives on disk, waiting for the next launch.
  • Phone died in the car? Charge, open mojApteczka — the queue resumes syncing as soon as there is signal.
  • Drove through a dead zone for 20 minutes? Quietly, in the background, the queue sends operations in batches.
  • Using a shared kit? Your offline dispenses become visible to other family members only after your device syncs — but they appear without conflicts, even if someone else dispensed the same medicine in the meantime.

Why local-first, not "everything on the server"

The classic online-first model ships every operation to the server and waits for acknowledgement — it works great as long as the internet works. But when caring for a patient, the internet often does not work: old houses, basements, brick-walled hospitals, long drives between towns. Waiting for the server in that moment means one of two bad outcomes:

  • a spinning loader — the caregiver has no idea if the dose was recorded,
  • lost operations — after a timeout the app gives up, and the dose vanishes from history.

Neither is acceptable for medication tracking. So in mojApteczka a confirmation saves locally first — fast, reliably, regardless of network — and cloud sync is a background process that finishes when it can.

Surviving app kill and a dead battery

The Facebook 1.7.0 announcement promised: "no lost dose — closed the app? dead battery? pending dispenses send themselves later." That is not a marketing flourish; it is a consequence of the architecture:

  • the queue is persisted to disk immediately on confirmation (write-ahead),
  • OS restart / device reboot does not touch the queue data,
  • reopening the app reads and continues the queue,
  • if background connectivity is available, syncing resumes without your intervention.

In other words: the only scenario in which a pending operation is lost is uninstalling the app before sync. If you see an operation with "queued" status in history, simply open the app online for a moment — it will flush to the server.

Privacy — pending operations stay on the device

While an operation is in the queue, it does not leave your phone. That is a direct consequence of the local-first model — what you dispensed, to whom and when, sits inside the OS sandbox, protected by biometric screen lock (Face ID / Touch ID). Only a successful sync moves the operation to the mojApteczka cloud in the EU (Frankfurt, AWS).

If you lose a phone without signal, even the last minutes of dispensing (still un-synchronised) remain encrypted inside the iOS sandbox. That is the same protection standard we apply to offline SPC documentation and the pharmacy map.

Availability

Offline mode for dispensing is currently available in the mojApteczka iOS app (from version 1.7.0). The Android version is planned — the same local-queue model will ship there in subsequent releases. The web version is inherently server-connected; if you need offline behaviour, use the mobile app.

How it connects with other features

Offline dispensing is one of the three pillars of "mojApteczka works without internet":

Important limitation

The pending-dispense queue does not survive an app uninstall. If you have un-synchronised operations and need to change phones or reinstall mojApteczka, open the app with active connectivity before uninstalling — a brief moment online is enough for the queue to flush. After reinstalling, sign back in, and your dispense history (already in the cloud) will be available on the new device.

Note: the dispense feature is a tool for recording doses. It does not replace a doctor's or pharmacist's advice on dosing, frequency, or administration method — offline just as much as online.


Offline dispensing in mojApteczka turns the moment "at the patient's, no signal" from a potential trap into something you stop thinking about. The screen responds instantly, the queue syncs itself, no dose is lost — regardless of whether you are at home, in a hospital, or on the road.

Frequently asked questions

Can I dispense a medicine without internet in mojApteczka?
Yes. Since version 1.7.0, a dose confirmation saves instantly on the device even without connectivity. Pending dispenses are stored safely in a queue and automatically synchronised to the cloud when the connection returns.
What happens if I close the app with a pending dose?
Nothing gets lost. The queue of pending dispenses is persisted to disk on the device. Re-opening the app — even the next day — resumes the queue, and the dispenses will flow to the cloud as soon as you have signal.
What if my phone dies while a sync is pending?
No recorded dispense is lost. The queue data lives on disk (not in RAM), so a restart after charging has no effect on history completeness. Synchronisation resumes when signal returns.
Can I see which operations are still un-synchronised?
Yes. In the dispense history, pending operations carry a clear status marker ("queued" or similar). When the sync succeeds, the marker disappears.
How long can an operation wait in the queue?
There is no hard time limit. The queue can hold pending dispenses for days or weeks and will sync as soon as signal returns. In practice, though, it is worth syncing as early as possible so that PDF reports and shared kits reflect the current history.
Can I use a shared kit offline?
You can dispense medicines and save operations locally. Other members of a shared kit will see those dispenses only after your device syncs to the cloud. Once both sides sync, all operations are reconciled — even if two people dispensed the same medicine in parallel.
What happens if I uninstall the app before syncing?
Uninstalling the app removes local data, including the pending queue. If you have unsynced dispenses, open the app with an active connection before reinstalling — a brief moment online is enough for the queue to flush.
Which devices support offline mode?
Offline dispensing is currently available in the mojApteczka iOS app (from version 1.7.0). The Android version is planned. The web version is inherently server-connected, but in the mobile app you can confirm doses anywhere.
Try offline dispensing in mojApteczka

Download the iOS app and record doses even without signal

See pricing plans →

Other Features

AI Recognition

Scan a medicine package with your camera and add it instantly. AI extracts the name, dosage, expiry date, and barcode automatically.

Expiry Tracking

Track medicine expiry dates automatically. Get notifications before they expire so you never take an outdated medicine.

Shared Family Kit

A shared medicine kit for the whole family. Invite loved ones, create dependent profiles, and keep one current medicine list.

Medicine Substitutes

✓ Find cheaper medicine alternatives in your kit — free. Compare active substances by ATC class and discover substitutes you already have at home.

Search by Indication

Type a symptom like 'headache' or 'fever' and find which medicines in your kit match. Powered by ATC therapeutic classification.

Medicine Interactions

✓ Free drug interaction checker for your medicine kit. Severity-sorted warnings flag dangerous combinations. Powered by DDInter 2.0. Start in 30 seconds.

Pediatric Classification

Instantly see if a medicine is safe for children. Pediatric labels separate child-friendly products from adult-only medications.

Medicine Reminders

Set up pill reminders with flexible schedules. Get notifications, confirm doses with one tap, and track your medication adherence.

Medicine Leaflets

Quick access to patient leaflets and SmPC documents from official sources. Check dosage, contraindications, and side effects.

Medicine Grouping

Group medicines by kit, storage location, or family member. Find the right product faster and keep your home medicine inventory organised.

Notes

Add notes to each medicine: dosage instructions, doctor recommendations, warnings, and practical details. Everything in one place.

Caregiver Role

Manage medications for dependants — children, seniors, or anyone needing care. Full control over their medicine kits from your account.

PDF Report for Doctor

Generate a PDF report with your current medicine list and share it with your doctor during a visit. No more guessing or forgetting.

Low Stock List

See which medicines are running low and build a ready shopping list for the pharmacy. Set refill thresholds and never run out of important medicines.

Medicine QR Sharing

Share your regular medicines via QR code. A doctor or pharmacist scans it and sees your medicine list instantly — no account needed.

Dispense Medicine

Dispense medicine from the inventory card with one tap. Fractional and liquid dose support, recipient tracking. Works offline — confirmations save instantly, even without signal.

Duplicate Detection

Scanning a medicine you already own? mojApteczka detects the duplicate and offers to restock instead of creating a new entry.

Schedule Export

Copy your treatment schedule with doses, times, and therapy progress. Share with your doctor or caregiver in one tap — no PDF, no login required.

Offline SPC Docs

8,000+ medicines with full offline SPC documentation — indications, dosage, contraindications, side effects. Works in airplane mode after first sync.

Medicine Search

Search the entire NFZ medicine registry without leaving the app. See which medicines you already own and buy what you need with one tap.

Reminder Backup

Medication reminders automatically synced to the cloud. Restored instantly after changing phones or reinstalling the app.

Pharmacy Locator

Find the nearest pharmacy open right now. 24/7 filter, closing-soon warning, Polish public holidays included. Works offline after the first sync.