Multi-patient checkout

Donate to this project

Development Project Status: Under Development

Total cost estimate (ex-Tax): 
Due date for completion of this stage: 
Current Percentage Funded: 
Project funding: 

You can donate money to this project by entering the amount above and clicking the 'Add to cart' button. In the Checkout process you can either choose to pay now (via Bank Transfer, Cheque or Pay Pal) or you can pledge the amount by choosing the 'Pledge a payment for a Development Project' method. If you make a pledge, then when we have 100% funding commitments, you will be notified by email and you can then action your payment. Note that development will not commence until all funds are received.

Project description: 


This project will allow all patients associated with a customer's current invoice to be checked out at once.

It will also enforce check-out when finalising invoices via Customers - Charges to ensure patients are correctly discharged.


At present, OpenVPMS provides a Check-Out workflow to automate the task of checking out a single patient. This

  1. optionally prompts to select one or more boarding appointments to Check-Out
  2. automatically charges any boarding fees
  3. displays the invoice
  4. prompts for payment, if the invoice is finalised
  5. optionally prints documents
  6. optionally creates a follow-up task
  7. optionally imports documents from Smart Flow Sheet
  8. sets the Appointment and Visit status to Completed
  9. sends HL7 discharge events to Cubex/IDEXX etc
  10. completes the Task, if Check-Out was launched from one


For multiple patients, users have several options:


  • run the Check-Out workflow multiple times, skipping invoice finalisation and payment to the last patient
  • perform each step manually, finalising the invoice via Customers - Charges

This latter approach means that users can forget to complete appointments and visits, effectively leaving patients checked in to the hospital.

To prevent this:

  • the Check-Out workflow will be updated to support multi-patient check-out
  • attempting to finalise an invoice with checked in patients will prompt to run the Check-Out workflow

Check-Out workflow


To support multiple patients, the Check-Out workflow will be changed to:


  1. locate all current appointments for the customer at the practice location.
    If there is:
    • more than one, it will prompt which patients to check-out
    • only one, or none, the workflow will run as it does now
      There can be none if Check-Out is run for a completed appointment or task.
  2. automatically charge any boarding fees for the selected patient(s)
  3. display the invoice
  4. prompt for payment, if the invoice is finalised
  5. optionally print documents for the selected patient(s)
  6. optionally create a follow-up task for the selected patient(s)
  7. optionally imports documents from Smart Flow Sheet for the selected patient(s)
  8. set the Appointment and Visit status to Completed for the selected patient(s)
  9. send HL7 discharge events to Cubex/IDEXX etc for the selected patient(s)
  10. completes the Task, if Check-Out was launched from one, and complete any Tasks linked to the appointments of the selected patient(s)

Finalising Invoices

When an Invoice is finalised in Customers - Charges, it will:

  1. Collect all patients in the invoice
  2. Locate their appointments and visits
  3. Display a confirmation to the user:

    "The following patients are currently checked in.
    Select the patients to check-out"

    The confirmation window will provide the following buttons:

  • OK - check out the selected patients
  • Cancel - cancel check-out and finalisation
  • Skip - skip checkout, perform finalisation

If any of the patients are checked in at a different practice location, they will be listed, along with the location, but will not be available for selection.

  1. If OK is selected, the Check-Out workflow will be run, from Step 2.
    The invoice will only be displayed again if boarding has not been charged.

Finalised Status

At present, the Invoice editor allows the Status to be changed to Finalised to finalise the invoice. This will be prevented if any of the patients referred to on the invoice have appointments that are not Pending, Cancelled, or Completed, and the invoice editing wasn't launched via the Check-Out workflow.




Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Multi-patient checkout

We will pledge 1/2 of the $2560 needed for this project.


Re: Multi-patient checkout

Thank you Alan for funding the whole project!

Syndicate content