Personal tools

OpenEMR ePrescribe

From OpenEMR Project Wiki

Revision as of 19:29, 21 December 2020 by SherwinGaddis (Talk | contribs)
Jump to: navigation, search



There are currently three known options for e-prescribing in OpenEMR.

Newcrop, a subscription service, is well integrated into OpenEMR.

Allscripts is quite good and requires no fees.

Weno Exchange a subscription service,is well integrated for narcotic/ECPS.

Meaningful Use

The Newcrop solution can be deployed to achieve Meaningful Use. The alternative is to add both the Allscripts website and the Greasemonkey script. The Weno Exchange can possibly be used for Meaningful Use if these policies are enacted again in the future.


This section describes the integration of the Allscripts ePrescribe website with OpenEMR.


  • Clicking the green button, with the question mark in the middle of it, navigates to the Help Section. This button is located at the bottom. The Help Section will give instructions regarding account acquisition and website use.
  • It is not necessary to pay for Deluxe Allscripts to use the Greasemonkey script. Choose Free Allscripts instead.

Firefox and Greasemonkey


Integration Script

  • The last step is the installation of the script, found here.
  • Click "Install this script".

  • A Greasemonkey Installation dialog will appear. Click the "Install" button.

  • Check the Add-ons Manager of Firefox to ensure that Allscripts IntegrationMM had been installed.

Using the Script

  • Go to the Patient Summary screen and click the "Allscripts" button at the top, to the right of the patient's age. If viewing with split screens, the Allscripts logon will appear in one of the two screens. If a check mark had been placed in the box between the patient's age and the "Allscripts" button, clicking the button will cause the Allscripts logon to appear in another tab.

  • If the Untrusted Connection warning appears in a split screen and an exception cannot be added, open Allscripts in another tab.

  • Click "I Understand the Risks" and add an exception.

  • After logging on, the patient data will populate automatically if an account had been created previously. If a new account needs to be established, click the "Add Patient" button.


  • In the Add New Patient screen, click the "Load from OpenEMR" button to import the data and click "Save".


If both the split screen login and the "Load From OpenEMR" button are non-functional; the cause stems from the fact that the version of Firefox, when first installed, pre-dated version 31.0. Firefox underwent major changes with 31.0. Upgrading to the latest version will not permit the script to work properly, thus the following steps are necessary.

  • Uninstall Greasemonkey and the script.
  • Browser customizations should be preserved with Sync.
  • Uninstall Firefox and reinstall the latest version.
  • Reinstall Greasemonkey and the Allscripts IntegrationMM script.


The author of this clever and exceedingly useful script is Kevin Yeh, M.D., of IntegralEMR.

Modifications were contributed by Marcin Matuszkiewicz.


A partnership of ZH Healthcare and Medical Information Integration, LLC (mi-squared) called ZMG created the NewCrop interface for e-prescribing.

NewCrop eRx Demo

Weno Exchange

Weno Exchange is an ePrescribing intermediary that competes with Surescripts. Weno supports US, International, narcotic/ECPS, and Veterinarian ePrescribing. Weno is well integrated into OpenEMR thanks to code contributed by Sherwin Gaddis. Go to to learn more about the OpenEMR API services. Weno contributes part of the revenue earned from OpenEMR clients back to the OpenEMR community.


JSE eRx: Activation - Download and follow the instructions in the readme file to install

You must have this version installed. before installing the patch. The patch requires that additional components be installed to function properly. This patch may NOT be backward compatible. It has not been tested.

Juggernaut Systems Express is providing an electronic prescribing solution within the OpenEMR native platform using the Weno Exchange service. The integration into the native interface gives the sending of prescriptions a clean workflow.

The information below is superseded by this.

Step One: Configure Globals

Watch these two videos together. The second video is an update to the first.

Full Screen

Full Screen

The Weno provider ID does not have a "C" in front of it any longer.

Create a prescription

Create a prescription

Step Two: Importing/Updating Pharmacies

Full screen

Resolve validation issue

Step Three: Review all the information need to complete Rx


In the video, I say C number and the new provider ID's do not begin with a C.

Transmitting prescription

Step Four: Sending the prescription and dealing with errors

Full screen

Resolving missing data schema validation errors

Final Review of Set up

full screen

Resolving missing data schema validation errors

How to enable service

  • Go Administration -> Globals -> Connectors

Go down to Enable JSeRx Service and place check in the box.


  • Set the patient pharmacy in the Choices section of the demographics.
  • Set the prescriptions to simplified because the information will be in the drug description.



If after clicking the Transmit button, you do not receive a message that says,

the schema does not validate.

You are missing some patient data in the prescription. Please review the video about all the data that needs to be in the patient's chart. If you are unable to locate the missing data. We will assist you in discovering what data is missing.

:*Make sure the patient demographics is complete with full address

:*Make sure that only the prescribing doctor is logged in and sending the prescription.

Support contact:

Support Site: - Create an account and open a support ticket

If you would like to self troubleshoot, follow these steps.

Create a folder inside the interface/weno/ and name it payload.

Open the transmitrx.php file.

find this line //file_put_contents("payload/".rand()."-payload.xml", $payloads); remove the // from infront of the line keeping everything else.

What this will do is drop a file on your server which is the data that is being transmitted.

Each one will have a unique ID. Open the file and copy the contents and go to

Paste the contents of that file into the validator.

It will tell you what data is missing.


Testing the system can be done after the credentials are received. The system has a two-stage process to send a prescription. Once you click transmit. It is not over. The Weno system has to validate the message to be sent. You will be taken to the Weno server to do the final review and sign off on their server. There is no need for a test account or test users. On the final review of the prescription on the Weno server, if the prescription is left unsigned, it stays on the Weno server. So, for testing don't sign the prescription until you are ready to send it to the pharmacy.