Checkout marking encouters as billed again

hitechelp wrote on Friday, January 25, 2013:

Hi everyone, 

We’re on 4.1.1 (9)  and we have discovered some “anomalies” we think you should know about.

It seems “Checkout” is back to marking encounters as “Billed” when a Co-pay of less than the total due is included whereas “Payment” doesn’t exhibit the offending behavior.
This was fixed in 4.1.1 (8) and was working fine until patch 9.

The only customization we have in this area is our “interface/patient/front_payment.php” which was preventing us from entering reference numbers in the Check/Ref field on the “Checkout” sheet  after upgrade to 4.1.1
Below is a link to the fix provided by Kevin Yeh which restored our ability to add ref numbers to the “Check/Ref” field.  

https://github.com/yehster/openemr/commit/b317565cb85afcc40ebecead692d2cc928243032

I’m sure this fix was not impacting “Checkout” until we applied patch 9. (We had to put Kevin’s fix back in after patch 9)

Apparently the “Check/Ref” field was disabled for anything other than a check number without regard to the “Reference” use for that field.  At the same time, we also lost the hover feature that revealed payment details on the “Past Encounters” screen which was nearly as unfortunate.  The payment details hover was an extremely useful feature that we really miss.  Now we must leave the screen and open the “Batch Payments” screen and then search for payment details that were formerly available on both "Past Encounters  and “EOB Posting Invoice”.  (May we please have that back?)

We have also discovered we can no longer search specifically for and find claims in which our biller corrected a service code on the fee sheet by checking the delete box on the wrong code, then entering and justifying the correct CPT4 code.

In order to accomplish the code change we had to first re-open the claims and then back out the co-pay by editing the payment to remove the payment distribution then redistribute the payment to the correctly coded encounter.  Although this method did not provide a way to indicate it was a copay, it was far easier than deleting and re-entering the entire payment.

Now these claims will not show up on any criteria specific search using a combination of insurance, a DOS range and either billed or unbilled.  The claims appear to be open (selecting their checkbox does not activate the Billing Manager “Reopen” button)  and expanding them reveals one line reading; “This encounter has been coded”

The only way they will appear is in a “Date of Service” range only search.  They will not show up if the “insurance”, or “Billing status” is also specified.

Thanks for all your hard work and dedication.

Regards,

David

bradymiller wrote on Saturday, January 26, 2013:

Hi David,

The new changes in patch 9 didn’t make any new changes to the billing code, so this sounds a bit odd.

The above link to Kevin’s fix is broken, so unable to see what the code changes were.

Can you test these things on the 4.1.1(9) demo and get back to us with the testing. This will help to identify whether it’s a bug in the official codebase or if you are having local issue. The 4.1.1(9) demo is here:
http://www.open-emr.org/wiki/index.php/Development_4.1.1_Demo

thanks,
-brady
OpenEMR

hitechelp wrote on Monday, January 28, 2013:

Brady,

This first part duplicates on the demo.

Patient checkout marks encounter as billed.
Pay Status when using “Search Payments” reads “Fully Paid”
In billing manager selecting the check box activates the “Reopen” button.
Searching for “Unbilled” returns no results.
Searching for the patient’s “Insurance” returns no results.

These steps were used in data entry;
Created a new encounter
Coded   (can’t justify due to lack of ICD9 code database)
Partial payment entered using “Checkout”
Default Search in billing manager or for “Unbilled” or patients “Insurance” returns no results.

Now here is where the weirdness begins;
While attempting to duplicate the problem of being unable to search for claims that had been corrected, initially the demo behaved the same as our system however, during confirmation tests (I did the test a second time just to be sure) the searches worked!.  FYI - I deleted the entire encounter and re-entered a new one after the first test. (not done on ours)

A difference with the Demo test is there are no IDC9 codes loaded.  I’m unsure if that affects my tests or not.

On our system if a CPT4 line was deleted from the fee sheet without first removing the payment, the deleted payment would appear highlighted in red in the Past Encounters list.  The demo also exhibits the same behavior.

On the Demo,
With payments entered using “Payments”, when the billing manager is initially called, the test claim will appear with the default criteria however, subsequent searches do not produce results for patient’s insurance with or without other criteria.

These are the steps followed in data entry;
Created a new encounter
Coded 
Patent co-pay payment entry made in  “Checkout” or “Payment” (Makes no difference)
Payment search used to find and remove the Payment Distribution.  
Original CPT4 code removed by checking “Delete” box on fee sheet and refreshing.
New CPT4 entered and fee sheet saved.
Payment search used to find and redistribute original payment to revised claim.
Search for claim in billing manger by insurance alone or with any additional criteria returns no results.
Claim can be found using criteria “Date of Entry” and “Date of Service”  or “Unbilled”.

Here are the Code modification for “front_payment.php” file which
removed lines 613 through 624 and edited line 937 (new line 925 after removing the 12 lines above)

function CheckVisible(MakeBlank)
{//Displays and hides the check number text box.
   if(document.getElementById(‘form_method’).options.value==‘check_payment’ ||
     document.getElementById(‘form_method’).options.value==‘bank_draft’  )
   {
document.getElementById(‘check_number’).disabled=false;
   }
   else
   {
document.getElementById(‘check_number’).disabled=true;
   }
}

Line 937  was edited as follows;

Original
<select name=“form_method” id=“form_method”  class=“text” onChange=‘CheckVisible(“yes”)’>

Modified
<select name=“form_method” id=“form_method”  class=“text”>

I hope this helps you nail this one down.

Regards,

David

bradymiller wrote on Tuesday, January 29, 2013:

Hi David,

Thanks for the detailed testing. I’ll place this in my queue and look into it if no else does.

thanks,
-brady
OpenEMR