Is OpenMRS supports multi-operational branches?


I have 2 more branches for my hospital and operations are running differently. Is it possible to configure a OpenMRS system to use multi branch hospital?, meaning that hospital name is common and it having 2 more branches around my state.

I would like to make reports on branch wise.


Assuming you want to share the medical records across the branches, then this is possible with the OpenMRS platform, though it will take a lot of configuration work.

A few points (assuming you’re talking about the OpenMRS Reference Application):

  • you would need to have two top-level Locations in OpenMRS representing your two branches. Both of these would need to be tagged as a “Visit Location”.
  • It’s also possible to configure the dashboard links (e.g. for specific forms) to only display for certain login locations.

I don’t want to transfer records, its completely different branch meaning that there is a branch and operations are running over there are same like here only. Moreover CEO must have a privillege like to see the what is happening at end of the day/month/year on branches. He is there at one of their branch.

My point of interest on OpenMRS is Dental Hospital.


@kiranraju seems like you need to build a multi-tenant architecture of OpenMRS.

@themoonraker13 Exactly. So, Didn’ i get that by using existing architecture?


It’s possible but you’ll have to add few entities in the data model and add a virtual access layer logic to filter/isolate data (among branches).

@kiranraju, what @themoonraker13 says is correct, but since he’s an intrepid developer who doesn’t mind hacking code, let me frame it in a different way.

OpenMRS does not support multi-tenant installations. Typically you would do one OpenMRS installation for each facility, and as part of your deployment process you’d ensure that each installation is configured with the same metadata.

If you go beyond the realm of configuration, and add-on modules, and you’re willing to modify the openmrs-core codebase, you could implement this functionality on top of OpenMRS, but it would be a significant amount of custom dev work.

1 Like