Skip to content
Switch branches/tags
Go to file
Cannot retrieve contributors at this time

MOTECH's Current Capabilities

The latest version of MOTECH is 1.0. We recognize that open source projects rapidly develop with many contributors adding a piece at a time. This document focuses on the capabilities of MOTECH right now and will remain updated regardless of the current release. We're keeping a list of future features on our roadmap .

Below is a list of features currently available in MOTECH:

  • Administration
    • Manage modules through the user interface. MOTECH is a modular system that allows you to add specific features and connections through modules. Administrators are able to install, configure and manage modules through the user interface.
    • Role based access controls, audit logs, password requirements and many other security and auditing capabilities
    • Create user defined entities (MySQL database tables, lookups and relationships) through the user interface
  • Tasks
    • Wire up events in MOTECH through the UI with the tasks module
    • The tasks module is the primary method to act on events in MOTECH. Each interaction raises an event in MOTECH which can trigger a task and perform a corresponding action.
    • Run tasks on a user defined schedule, configurable through the UI.
    • Interact with systems over intermittent internet connections:
      • Push button retries allow administrators to retry a task when they know the other system is available
      • Users are now able to define retry schedules. For example, if the system is down now, a user can try to retry it on 6, 12 and 24 hour increments.
      • Users are now able to naming triggers, datasources and actions which is more user friendly.
    • Query and Update any MDS table by task action.
  • Interfaces
    • Web Browser
      • End users can directly interact with the MOTECH interface through a web browser
      • End users can collect form data in Enketo, which posts to an xform based system (, KoBo Toolbox or ODK Aggregate), which then forwards to MOTECH.
    • Commcare two-way integration
      • Configure multiple connections to Commcare projects
      • Receive and act on forwarded forms and cases from CommCare
      • Import historical forms
      • Import forms/cases by ID
      • Connect to Commcare's data, fixture and location APIs to supplement tasks
      • Interact with supply quantities in CommCare supply
      • Create/Update case properties from MOTECH
      • Post forms from a MOTECH Task action to CommCare (currently support simple forms without logic)
    • Mobile Data Collection
      • Collect data on Android phones using ODK Collect, ODK Scan or Ona Collect. The data is forwarded from, Kobo Toolbox or ODK Aggregate to MOTECH
    • SMS Integration
      • Send and receive SMS from MOTECH through integration with an SMS aggregater with predefined configurations for popular systems including:
      • Create a JSON SMS template to easily connect to a specific Mobile Network Operator
      • Integration with RapidPro allowing us to create, update and delete contacts as well as initiate flows and respond to webhooks.
    • IVR Integration
      • Initiate outgoing calls from MOTECH by integrating with a mobile network operator
      • Integration with RapidPro allowing us to create, update and delete contacts as well as initiate flows and respond to webhooks.
  • Modules
    • OpenMRS Integration through their REST API
      • Create/Update Patients and Program Enrollment in OpenMRS
      • Create Order, Observation groups by Create Encounter action, Encounters and Observations
      • Update Patient Identifiers
      • Query Patient, Person, Program, Observation, Relationships, Program Enrollments from OpenMRS
      • Sync Patient and program information between OpenMRS and another system (CommCare, DHIS2,, etc.)
      • Fetch Patient and Encounter atom feeds with the given page IDs declared in OpenMRS Configuration.
    • Perform Message Campaigns
      • MOTECH is able to perform SMS, voice and email message campaigns directly to communities and front line workers
    • Pill Reminder System
      • Enroll users in a custom pill regimen and send per-user reminders for their specific medication
    • mTraining (remote training over SMS/IVR)
      • Conduct structured courses through basic phones using SMS and IVR technologies
      • Quiz participants and achieve milestones as they work through your curriculum
      • Print lists of participants who have completed the curriculum
    • Consume Facility, Provider and Organization information based on the IHE Care Services Discovery profile
      • Connect to a CSD provider such as OpenInfoMan via REST or SOAP and store the data in the MOTECH Data Services system.
  • Reporting
    • DHIS2 one-way push integration
      • Configure a single connection to a DHIS2 server
      • Create tracked entity instances
      • Enroll tracked entities in DHIS2 programs
      • Push program stage events
      • Send aggregate data values and value sets
    • Collect live metrics with GraphiteJS
      • MOTECH can interact with a GraphiteJS server, allowing you to collect live metrics and create dashboards to determine how your implementation is performing.
    • ETL Connections to Pentaho and Jasper Reports