Overview
The Billable Objects Module is an extension to the OpenHMIS Cashier Module. The module adds the concept of billable objects, which are OpenMRS objects (such as Encounter or DrugOrder) that have associated costs that need to be billed to a patient. A billable object implementation enables the storing of metadata indicating that an object should have an associated bill, and allowing that association. Billable objects work in conjunction with billing handlers, which provides a framework for implementing and configuring billing behaviour for billable objects. The main components of the module are:
- the IBillableObject interface, which can be implemented to allow mapping in the database between an OpenMRS object and a bill
- the IBillingHandler interface, by which implementations can define logic for generating appropriate bill line items for an object of a particular class.
Requirements
- OpenMRS 1.9.4
- Event Module 2.1
- REST Web Services Module 2.x
- OpenHMIS Commons Module
- OpenHMIS Backbone Forms Module 2.x
- OpenHMIS Inventory Module 1.x
- OpenHMIS Cashier Module 2.x
Download
Configuration
Once the module has been started, a Manage Billing Handlers link will be available on the administration screen, which allows for adding and editing of billing handlers. The module includes handlers for Encounter and DrugOrder. See the developer documentation for information on how to add other handlers.
Billable object metadata will only be saved for classes that have handler instances saved to the database.
Encounter Handler
Encounter handlers allow the association of a set of inventory items with an encounter of a particular type. For example, to associate a fee with an ADULTINITIAL encounter:
- Go to the Manage Billing Handlers screen, under Administration, Billable Objects Module
- Click Add Billing Handler
- Choose the EncounterHandler type
- Enter a name, and optionally a description
- Choose the appropriate encounter type, e.g. ADULTINITIAL
- Add one or more items from the inventory that should be billed for this encounter type
- Click Create Encounter Handler
Drug Order Handler
The Drug Order handler uses the ability of the OpenHMIS Inventory Module to associate items to drugs to find the appropriate item to bill for a Drug Order. Currently the Drug Order Handler has no configurable options; one Drug Order Handler will handle any Drug Order. To create:
- Go to the Manage Billing Handlers screen, under Administration, Billable Objects Module
- Click Add Billing Handler
- Choose the DrugOrderHandler type
- Enter a name, and optionally a description
- Click Create Drug Order Handler