I had a question around OPD / patient flow management in OpenMRS.
In many hospitals, patients end up waiting blindly in OPD without knowing their position in the queue or expected wait time. I wanted to understand whether OpenMRS already supports something like a patient queue or OPD queue management system.
Specifically:
Is there an existing module or O3 app that handles patient/service queues?
How are queues typically managed in real OpenMRS implementations ?
Are there known gaps or ongoing work around improving patient waiting experience?
I’m exploring this as a real-world problem and would love to learn from existing solutions or community experience.
The O3 app has patient queues for services; however, these queues tend to display information that probably shouldn’t be displayed to patients (i.e., the names of everyone waiting, their triage level, etc.). I think some implementations have customizations and extensions to implement a patient ticketing system where instead of such details, they just display a list of ticket numbers in the order they will be seen. This is, however, not available out of the box.
Hey @ibacher . Thanks for pointing this out. Do you know of the link where this was customized such that i can take alook at it because am also finding a way to add it in current openmrs 03 setup i didnt know it exist somewhere.
I’ve been exploring the gap around privacy-friendly patient ticket displays in O3. While service queues exist, there doesn’t seem to be a built-in option for a public token-style display. Would shaping a dedicated OPD queue/token display module into a GSoC 2026 proposal make sense? I’d love to know if this aligns with the roadmap or if similar work already exists.
hii @ibacher I noticed the Service Queues Improvements idea. Would improving the service queue UI and possibly adding a privacy-friendly OPD token display for waiting rooms fit within the scope of that project?
There are currently two queue implementations in OpenMRS: Patient Queues and Service Queues. Both try to solve the problem of organizing queues in a clinic or hospital, but they take different approaches.
The O3 reference application adopts Service Queues, while many Uganda implementations of OpenMRS have more commonly used Patient Queues.
From our side, we have been building on the Patient Queue approach to solve the blind waiting process through a Queue Management application that runs outside OpenMRS but uses OpenMRS APIs. The application supports both patients and non-patients, with features such as kiosk check-in, provider queue management, waiting-area display screens, and queue tracking across service points.
One important aspect is that it offers a unified queue workflow. Patients and non-patients are identified differently at entry, but once they are in the system, they are handled the same way in the queue flow. It also keeps the same queue number across service transitions while creating a movement trail for each step, which is useful for traceability and reporting.
We are also working toward moving this capability into the mainstream Patient Queue module so that it can be available for broader community use.
Hi! I’m Vivek Tarun, applying for GSoC 2026 on the Service Queues project.
@slubwama The unified queue workflow with token-based display from UgandaEMR sounds really impressive — especially keeping the same queue number across service transitions.
Quick question: Is there a Jira ticket tracking the move into the mainstream Patient Queue module? Would love to follow that work.
Thanks for sharing this context — very useful for my proposal research!