Wiki Spaces


Get Help from Others

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


Page tree
Skip to end of metadata
Go to start of metadata

Note: This module is now maintained by HISP India and can be found at


Billing is generally thought as a process which captures financial information, but the billing module we are building is more of a central workflow capturing module. The billing module works as a connector of information capture between different departments inside the hospital. It generates receipts of orders and involves generating bills of payment.


Create a module which will allow a clerk to capture the orders from the doctor pertaining to pharmacy, diagnostic tests, in-patient admission, discharge and any other types of order. These orders are generally written on a piece of paper or case sheet which the patient carries with himself/herself. This information does not get captured in the rush of a hospital at the doctor's table. This module will allow capturing this information and create a receipt of payment for the patient, which the patient then carries to the concerned department.


  1. The Billing module is not going to display the actions taken on the orders.
  2. Patient information or health records cannot be edited or viewed through this module.


The Billing module consists of 4 major parts:

*Interface to create bills with orders:

    • The billing module creates orders based on the concepts that can be part of an order.
    • The module separates parts that are financial and parts that are non-financial orders
    • The module should allow grouping of orders of a particular type and associate the orders with particular department

*The clerk should be able to create cost master for orders:

    • The clerk should be able to create a list of orders and cost of each order
    • This master should be able to create the bill when the orders are selected

*The clerk should be able to associate orders with a patient encounter:

    • The clerk will be able to view the current encounter of the patient (identified through bar code on patient summary) and add orders to this encounter
    • Each bill will be a summary of orders related to an encounter

*Aggregate bills for collections

    • Just like cohorts can be used to aggregate patients with encounters, demographics, attributes etc. the billing module should allow creating aggregates for orders
    • An extension of the cohort service should be created by the module to aggregate collections / orders from the billing module


The model classes for billing module:

    • This class contains ID, name, description, price of medical services such as XRay, Blood test, ultra sound.
    • This class comes with the OpenMRS core to present order issued by doctor with date, encounter
    • This class associates an Medical Service with an Order, with an extra property to capture the price of the service at the time of the order.
    • This class present bills issued by accountants to collect the expense of medical services which patient received through orders of doctors. One bill has a set of service orders.

Persistence - Hibernate mapping files

There are 3 mapping files for

    • MedicalService.hbm.xml: for persisting medical service such as Xray, blood/urine tests, CT scan, etc and for some extends could be operations, ambulance etc.
    • ServiceGroup.hbm.xml: medical services are classified into groups for better management.
    • Department.hbm.xml: one medical service is given in a certain department.
    • ServiceOrder.hbm.xml: this is for associating Service - Order. It is similar to Drug - Order assosiation.

Screen shots

Showing list of bills

Showing how to create a bill


  1. I am searching for the source code for this module. I find its not committed. Any plans?

  2. user-a471a

    Can the information on this page be updated to reflect some of the changes that have been made (

  3. I think HISP India has taken this in a different direction.

    1. Roger, anything further you can provide about taking this in a different direction? Or maybe Saptarshi Purkayastha? Would be nice to know the latest status of / plan for this module.

  4. It's all on the HISP India site.  While they still do some billing, it seems to have morphed into ambulance dispatching and some other weird stuff.

    I really don't know what we should do with the stuff that HISP India appears to have taken back – the code is in their github and has their licensing.

  5. where can i find this module for download?