Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


    1. Create a schedule of when providers are available to see patients
    2. Schedule appointments for patients based on provider schedule
    3. Manage the patient queue through the clinic when the patients arrive for their appointments.

Documentation / How-To

Adding appointments on this module can be confusing for first time users of this module as it's not straightforward. So, to help you get started using this module, here are the steps you need to take in order to add an appointment -

  1. Inside Appointment Scheduling Module, click on Manage Provider Schedules. You should see a calendar. 
  2. Click on a date, select a location, add a provider (optional), select service type, start time and end time for the appointment. Save your entry. It should now be visible on the calendar when you have the right location selected.
  3. On the module home page, click on Manage Appointments and search for the patient whose appointment you want to add.
  4. After clicking on the patient's info, under Schedule a New Appointment, select the service type that you previously added appointment for and search.
  5. Select your appointment and save.

In January 2015, a demo was given on the OpenMRS Developers call showcasing the latest features of the module. Links to a recording of that call can be found here:

2015-01-08 Developers Forum


Below an OpenMRS University how-to on YouTube (below) that explains how to use an earlier version of the module. This video explains the basics of the module from version 0.2.

Widget Connector




Privilege Without it the user won’t be able to…
View Appointment Types ? View “Appointment Types” link below the main header
? Enter Appointment Type list form via url
Manage Appointment Types ? View “Add” button in appointment type list form
? View appointment types names as hyperlink
? Access appointment types form via url
View Appointment Blocks ? View “Provider Scheduling” link below the main header
? Access appointment block list form via url
Manage Appointment Blocks ? View “Add/Edit/Remove” buttons below the blocks list table
? Access appointment blocks form via url
View Appointments ? View the “Appointments” link on the main header
? Access appointments list form via url
Schedule Appointments ? View the “Schedule Appointment” button on appointment list
form nor patient dashboard appointment tab
? View the Schedule Walk-In Appointment button
? Access appointment form via url
Update Appointment Status ? View the states buttons in appointment list form
? View the “End-Consultation” button on the patient’s dashboard
? View the “Start Consultation” button on the dialog in the
appointment list form
Squeezing Appointments ? View the “Show full timeslots” checkbox on schedule
appointment form nor walk in appointment form
View Patient Appointment
? View appointment tab on the patient’s dashboard


Because the module relies on other aspects of OpenMRS users will need the following privileges:




View Providers



The Appointment Scheduling Module uses OpenMRS's User Capabilities to control access to the module for individual users.  These capabilities can be modified under System Administration → Manage Accounts.

By default, Admin users will have all available capabilities. Many capabilities provided by OpenMRS do not affect the Appointment Scheduling Module. Below you will find a list of all capabilities which affect

access to this module, and the functionality they provide to the user.

The following capabilities provide access to the associated pages inside the module - 

Schedules Appointments
  • Manage Appointments
  • Daily Appointments
  • Appointment Requests

Configures Appointment Scheduling

  • Manage Service Types
 Manages Provider Schedules
  • Manage Provider Schedule 
Schedules and Overbooks Appointments
  • Manage Appointments
  • Daily Appointments
  • Appointment Requests
Sees Appointment Schedule
  • Manage Appointments
  • Daily Appointments

Here's a brief description of what each page does:

 Manage Service TypesView, add, edit and remove types of services that are provided in an appointment. 
Manage Provider ScheduleView, add, edit and delete appointment blocks of providers.
 Manage AppointmentsSearch for a patient by ID or name and add or remove appointment(s) for him/her.
 Daily AppointmentsView scheduled appointment for the specified date and location. 
 Appointment RequestsAccept appointment requests made by others. 


  • OpenMRS 1.9 with visits enabled enabled



Manage Service TypesImage AddedManage Provider SchedulesImage AddedManage AppointmentsImage AddedDaily AppointmentsImage AddedDaily Appointments - Scheduling New AppointmentsImage AddedDaily Appointments - Viewing Scheduled AppointmentsImage AddedAppointment RequestsImage Added

Release Notes


This module was developed by Ben Gurion University of the Negev students Tobin Greensweig (medicine), Yonatan Grinberg, and Adam Lauz (both Information Systems Engineering) in collaboration with MigrantHealth:IL and the Tel Aviv Refugee Clinic. The OpenMRS community contributed to the design and early development. The module was built based on the specifications and input from all parties involved so we hope it will be generalizable and usable by many organizations!


The OpenMRS Project page:  Appointment Module