BillCorrectly: A software tool to help psychiatrists bill E&M codes appropriately

Kevin J. Black, M.D. (ORCiD 0000-0002-6921-9567)

Departments of Psychiatry, Neurology, Radiology, and Neuroscience, School of Medicine, Washington University in St. Louis.

Address correspondence to Dr. Black at Campus Box 8134, 660 S. Euclid Ave., St. Louis, Missouri, USA, or

Creative Commons License
© 2016, Kevin J. Black. This work is licensed under a Creative Commons Attribution 4.0 International License.


Any physician who has dealt with "E&M coding" knows what I'm talking about, while anyone who hasn't won't believe it. Essentially, the Centers for Medicare & Medicaid Services (CMMS) created rules for physicians to use when deciding which of 5 levels of service a doctor should bill for a typical office visit.

"E&M" stands for Evaluation and Management Services, meaning "basically, what doctors do when no procedure is involved." A procedure means anything you do to a living human with a needle or scalpel. Or anesthesia or electricity. Or psychotherapy. Or … well, anyway, whatever CMMS says it is. And actually there are at least a dozen codes, not just 5 … but why complicate this introduction?

Theoretically the idea was to prevent doctors from ripping people off by billing a high price for putting on a bandaid,* and to minimize subjectivity in assessing how much work the doctor did for a given visit. In reality, it was a bureaucratic solution to a problem, and some bureaucrat apparently believed that doctors were there to follow flowcharts, whereas doctors had the odd idea that they were there to take care of the patient.

* Excuse me, I meant any bandage resembling a Band-Aid® brand bandage.

CMMS wrote a 90-page book to explain E&M billing to doctors. That right there should clue you in to the fact that E&M coding really does represent the nightmare it's starting to sound like. (Your tax dollars at work.) Apparently bureaucrats didn't realize that doctors weren't going to read a 90-page document every time they submitted a bill. Fortunately, trade organizations stepped in to summarize the key features. For instance, the two main psychiatry guilds produced a two-page guide. But honestly, I doubt that even with that 2-page summary anyone could figure out the correct billing code in less time than it would take actually to complete a Level 3 Established Patient Office Visit.

In the twenty-first century, of course, the obvious solution is to have the electronic medical record (EMR) do most of the work to figure out which code to bill, and apparently some EMR systems do just that. But there are administrators out there (read: legal counsel) who forbid this.* It may not surprise anyone that saving expensive physician time is not the goal, but apparently even getting the charge right is not the goal. That latter point is particularly hard for me to comprehend considering that CMMS can pursue criminal charges for underbilling as well as for overbilling.

* Really. I kid you not.

So I decided to save time and reduce errors by writing a program to calculate the correct charge for E&M visits. (See criterion 1 for OCPD.)


The program is written in Free Pascal using Lazarus. Both are available on Windows, Mac OS X, and Linux with a goal to "write once, compile anywhere". (Besides, I wanted to try out Lazarus.)


The user selects options to describe the visit (and its documentation) from a graphical user interface, and then clicks a button labeled "Show me what to bill." (See Fig. \ref{fig:visit_details}.) A pop-up window gives the code to be billed, some suggestions about documentation, and an explanation (in bureaucratese) of why the given billing level is supported. (See Fig. \ref{fig:billthisboth}.) After closing the pop-up window, the user can enter data for the next visit to be billed.

\label{fig:visit_details} The BillCorrectly GUI form on which the user describes the elements of the visit.