⏱️ Reminders, e.g., due for vaccination

4 Must-Do’s

1. Problem Description: Have you clearly defined the user problem(s) you intend to solve, and what value this creates? Write down a story, user insight, or quote about this problem (this is important because (1) this will motivate your team, and (2) without this your problem might not actually be a big problem for the users themselves).
2. User Stories: Have you clearly written at least 3 user stories and use cases
3. Market Analysis: Have you surveyed what the market is doing here (e.g. comparison to other EMRs, or paper approaches; and don’t forget about learning from historic/existing OMRS instances)? Have you written down any possible gaps in your understanding of your users or their workflows? Have you reviewed the topic in FHIR to see what requirements or fields the global community references? (Eg if working on insurance, should look here)
4. Technical Considerations & Dependencies: Have you outlined what you need from cross-functional areas for success of the feature? E.g. do you need the platform to support a new API call? Have you explained how you’ve addressed dev concerns, such as designs that may not be feasible, or will be extra time-intensive to implement? 

Optional/Encouraged

Sketches: Have you added a drawing or description of how the feature could work to solve the problem at hand? (Pictures of sketches are ok!) 
Project Management: Have you created the Epic and JIRA tasks so you can share work clearly? Roll-out plan: Do you have an idea whether this will be an experiment, gradual roll out, and when? Have you added this to the timeline view? Have you planned how you will promote and/or work with communications folks in order to help this feature reach the widest audience and have the biggest impact it can?

Later but should do

QA Plan: Have you mentioned the plan for QA, such as how you will discover and address edge cases? Does your team/squad have a plan for automated tests to be added to new components (unit tests) or workflows (e2e tests)?
Safety & Tech Risks: Is there any reason you could regret rolling out this feature? (e.g. possible patient harm, heavy tech debt like introducing an unsupported library) Have you thought through the risks for this particular solution? And, how to reduce/address those? 

This checklist was inspired by this article. Additional Business Analyst Resources here.

Summary:

  • OpenMRS needs a feature for patient reminders such as appointments, follow-ups, and medication refills. The feature will:

    • Notify providers of upcoming follow-ups, due vaccinations, and medication refills, ensuring timely patient care.

    • Flag overdue visits or missed vaccinations, enabling proactive follow-up.

    • Support customizable alerts and workflows that trigger reminders based on patient data, ensuring flexibility for different healthcare settings.

    • Allow integration with third-party SMS/email services (e.g., Ushauri) to enable users to send automated reminders.

  • Rather than building from scratch, OpenMRS will leverage and refine existing solutions to standardize reminder functionalities.

1. Problem statement

  • Missed appointments and delays in follow-up care contribute to inefficiencies in healthcare systems, resulting in wasted provider time, increased operational costs, and potential health complications for patients. On average, appointment no-shows cost physicians approximately $200 per missed visit, further straining healthcare resources.

  • For patients managing chronic conditions such as HIV, diabetes, or hypertension, adherence to medication regimens and scheduled follow-ups is crucial for disease management and preventing complications. However, many patients forget or postpone necessary visits, leading to disruptions in care and poorer health outcomes.

  • Similarly, timely immunizations are essential for disease prevention in children, yet many families struggle to keep up with vaccination schedules. Missed vaccinations not only put individual children at risk but also impact public health efforts aimed at disease control.

  • Manual tracking methods place a significant administrative burden on healthcare staff, making it difficult to efficiently monitor and follow up on overdue visits, lab tests, screenings, vaccinations, and medication refills. Without an automated reminder system, critical follow-ups may be overlooked, leading to gaps in care, preventable complications, and reduced treatment effectiveness.

  • Implementing an automated patient reminder system can address these challenges by streamlining appointment management, improving adherence to care plans, and reducing the workload on healthcare providers—ultimately enhancing patient outcomes and optimizing healthcare delivery.

Automated reminders—delivered via SMS, email, or in-app notifications — help ensure patients stay on track with their care, reduce missed appointments, alleviate administrative workload, and ultimately improve health outcomes. Integrating patient reminders within an EMR system ensures continuity of care, minimizes delays, and optimizes provider time.

2. User stories

  • Reminder for Vaccination Due Date:

    • As a healthcare provider,I want the EMR system to notify me when a patient is due for a vaccination, So that I can remind them to visit the clinic and complete their immunization.

  • Tracking Completed Actions

    • As a healthcare provider, I want the system to automatically update and remove reminders once a patient completes the required action, So that I don’t receive unnecessary alerts.

  • Configurable Reminder Rules

    • As a system administrator, I want to configure reminder rules based on different patient conditions (e.g., chronic illness, immunization schedules), So that the system can generate personalized and relevant reminders.

  • Report for Overdue Follow-Ups

    • As a clinic administrator, I want a report listing patients with overdue visits, checkups or treatments, so that I can prioritize follow-up actions and reduce missed care.

  • Automated Patient Notifications:

    • As a patient, I want to receive automated SMS or email reminders about my upcoming appointments or medication refills, So that I don’t miss important healthcare services.

  • Multiple Reminder Notifications

    • As a patient, I want to receive multiple reminders (e.g., a week before, a day before, and on the due date), So that I don’t forget important appointments.

  • Rescheduling Reminders

    • As a patient, I want to reschedule my appointment from the reminder notification, So that I can choose a more convenient time without missing my treatment.

3. Market Analysis

⑴ KenyaEMR Appointment Reminder (Ushauri)

  • Ushauri sends timely reminders to high-risk clients to ensure adherence to scheduled visits.

  • Clients receive personalized wellness messages to encourage continuous engagement in lifelong HIV treatment.

  • Ushauri Mobile App acts as a personal health journal with appointment tracking, viral load results, and a chatbot for health guidance.

 

image-20250328-123812.png
❶ Ushauri Features
image-20250328-122638.png
❷ Ushauri Appointment Reminder
image-20250328-122733.png
❸ Appointment Message Status
image-20250328-122910.png
❹ Ushauri Mobile Application for the Patients

Bahmni

⑶ Cerner EHR Automated Appointment Reminders:

  • Automates appointment reminders to improve attendance and minimize financial loss.

  • Sends customizable SMS or phone call reminders based on patient preferences.

  • Patients can confirm, cancel, or request rescheduling via SMS responses.

  • Updates appointment statuses in the EHR automatically for easy tracking.

  • Enables direct patient-staff calls for real-time rescheduling, reducing staff workload.

⑶ Dr. Chrono

https://youtu.be/SoLnaWvNjN0

  • Reminder Profiles: Create and customize bundled reminders (email, text, or call) for upcoming appointments.

  • Customization & Preview: Edit and preview messages before sending; add up to 140-character custom text.

  • Auto-Apply Reminders: Assign reminder profiles per patient and enable auto-reminders in account settings.

  • Follow-Up Reminders: Schedule automated reminders to prompt patients to book their next appointment.

  • Flexible Reminder Settings: Save follow-up dates via the calendar or patient chart and choose reminder type.

image-20250328-120015.png
❶ Reminder Profiles
image-20250328-120241.png
❷ Reminder Profiles
image-20250328-120330.png
❸ Email Message Preview
image-20250328-120446.png
❹ Email Message Edit
image-20250328-120919.png
❺ Reminder Profile Selection
image-20250328-121349.png
❻ Follow-up Reminder

 

4. Technical Considerations & Dependencies

🚩 Patient Flags:

  • Configurable Rules and Criteria →The system must support flexible rule configuration to define conditions that trigger flags, such as missed appointments

  • User Interface for Viewing Flags → The user interface for viewing flags must be designed for easy identification of flagged patients.

  • Reporting and Analytics →The system must provide reporting capabilities to generate lists of flagged patients for follow-up. These reports should be easily accessible and customizable based on flag types (e.g., missed appointments

📅 Task Scheduler:

  • Query Configuration and Management → The system must allow flexible configuration of database queries to identify patients for reminders (e.g., upcoming appointments, missed visits.

  • Task Scheduling and Automation → The Task Scheduler must be capable of running tasks at predefined intervals (e.g., daily, weekly) without manual intervention.

  • Performance and Scalability→ The system should be optimized to run scheduled tasks for large patient populations without causing performance degradation.

  • Notification Mechanisms→ Notifications (e.g., pop-ups, dashboard alerts) triggered by scheduled tasks must be clearly visible and easily actionable for healthcare workers.

  • User Interface for Notifications →The system should provide an intuitive user interface to display and interact with the reminders, allowing healthcare workers to easily view patient lists and take follow-up actions directly from the notifications.

  • Notification Handling and Tracking →The system should track whether reminders have been acknowledged or acted upon, and provide functionality for workers to mark reminders as "completed" or "pending," ensuring accountability.

  • Reporting and Analytics →The system should support the generation of reports summarizing the reminders sent out (e.g., missed appointments, upcoming visits) for review by clinic administrators or managers

5. Sketches and Design Ideas

🟡 First Iteration Proposal: Patient Reminders Without Third-Party SMS or Email Services

Even without connecting OpenMRS to an external SMS or email service, reminders can still be effectively managed within the system through built-in features and manual processes.

The initial proposal outlines a basic first iteration, focusing on simplicity and practical implementation.

Reminder Types Included:

  • Appointment Reminders e.g., for Upcoming Appointment.

  • Follow-Up Reminders e.g., for Missed Appointment.

Patient Flags:

  • Concept: Leverage the existing Patient Flags module to automate the identification of patients needing follow-up care. The system will automatically assign flags to patients based on configurable clinical and visit-related criteria, allowing health workers to easily identify and act on patients requiring attention.

  • Use Cases: Patients with missed appointments.

    • Other use cases may also include → Patients due for routine screenings or vaccinations, Patients due for medication refills and Patients with abnormal lab results requiring follow-up.

  • How It Works: The system automatically assigns flags based on predefined rules that have been configured. The health workers can view flagged patients directly within OpenMRS then conduct follow-up manually via phone calls, home visits etc.

  • Limitations: Manual follow-up is still required, adding to staff workload. This may be especially challenging to scale in high-volume settings without additional automation.

Patient Flagging Process → The Patient Flags module in OpenMRS uses configurable, rule-based criteria to automatically flag patients who meet certain conditions—such as missing an appointment. For example, if a patient misses a scheduled appointment (detected by the system at a given time), a "Missed Appointment" flag is applied to their record and included in a follow-up report for providers.

🎯 Appointment Scheduling: The provider schedules an appointment in the OpenMRS Appointment Module, which records the date, time, and expected visit type.

🎯 Appointment Date Monitoring: The system monitors the appointment date, marking it as completed if the patient checks in, or leaving it in scheduled status if they do not.

🎯 Missed Appointment Detection: The Patient Flags Module runs a scheduled task (e.g., nightly) to identify patients who did not check in for their appointments.

🎯 Apply Missed Appointment Flag: The system automatically assigns a "Missed Appointment" flag to the patient, which appears in their record and is included in a report listing patients for follow-up.

Scheduler for Internal Reminders:

  • Concept: Leverage the built-in Task Scheduler in OpenMRS to generate internal reminders for healthcare workers regarding upcoming patient appointments, medication pickups, and follow-ups without the need for third-party SMS or email services.

  • Use Cases: Reminders for upcoming appointments.

    • Other use cases may also include → Notifications for missed appointments, Alerts for patients due for medication refills and Reminders for scheduled tests or screenings (e.g., HIV viral load tests).

  • How It Works: The Task Scheduler runs predefined queries to identify patients requiring reminders, such as those with upcoming appointments or those due for follow-up. Notifications are triggered within the OpenMRS interface, appearing as pop-ups or alerts. Health workers can click on these notifications to review the patient list and take action.

  • Limitations: The system still requires manual follow-up from healthcare workers, adding to their workload. Scaling this system for high-volume environments may require additional automation.

Task Scheduler Process → The Task Scheduler runs scheduled database queries at defined intervals to detect events like overdue visits and generate alerts, such as pop-ups or dashboard notifications.

🎯Appointment Scheduling: A provider schedules an appointment in OpenMRS, which records the appointment date, time, and type, setting the status to "Scheduled."

🎯 Appointment Date Monitoring: The system monitors the appointment list, updating the status to "Completed" if the patient checks in, or leaving it as "Scheduled" if the patient misses the appointment.

🎯 Task Scheduler Runs Query for Missed Appointments: OpenMRS’s Task Scheduler runs nightly jobs to execute a query identifying patients with missed appointments based on past-dated, uncompleted appointments.

🎯 Generate System Notification for Missed Appointments: The system generates notifications for missed appointments, which appear in the provider dashboard or as part of an auto-generated follow-up report.

Reports for Manual Follow-Ups

  • Custom reports generation listing patients due for follow-ups (e.g., missed appointments).

  • Users can then review the report and manually contact patients using phone calls or in-person visits.

🔴 Second Iteration Proposal: Third-Party SMS or Email Services

SMS/Email Integration via External APIs:

  • This requires OpenMRS to connect to third-party SMS or email services such as:

    • Ushauri

    • Twilio (SMS)

    • Africa’s Talking (SMS)

    • SendGrid (Email)

  • This would require writing a module or using OpenMRS' REST API to trigger reminders.

Mobile-Based Reminders with USSD or Chatbots:

  • If internet connectivity is an issue, USSD-based solutions (e.g., using Africa’s Talking) can be used to allow patients to check appointment details.

    • A chatbot (WhatsApp/Facebook Messenger) can be integrated to send automated reminders.

6. QA Plan

7. Safety & Tech Risks

Related content