Medicare Billing of Special Procedures that require referring Doctor's name

cmswest wrote on Sunday, March 02, 2014:

look above for Kevin’s explanation of the “3 numbers in front…” which is the applicable qualifier which comes from the X12 specs

as he stated above this needs to be fixed in the gen_x12_837.inc.php

i’ll take a look at it today, are you a podiatrist so you need the 304 qualifier?

fsgl wrote on Sunday, March 02, 2014:

Download Notepad ++ if you don’t have it already.

Follow the path in the green header of the attachment to get to the file you need.

Line 470 substitute dateLastSeen for dateInitialTreatment (no spaces in between)
Line 472 Last Seen Date for Date of Initial Treatment
Line 473 304 for 454
Line 475 dateLastSeen for dateInitialTreatment (no spaces in between)
Line 479 Delete the word omitted.

I assume you will be working on a test copy of OpenEMR (not a production copy).

Compare the 837 with the changes in the script with that generated by PACE.

Stephen will probably need to offer refinements.

(The internet connection ran slower than a snail earlier, unable to attach the image before.)

cmswest wrote on Sunday, March 02, 2014:

shouldn’t this have the && !empty($tmp) so when there’s no date the qual isn’t being printed?

thanks Kevin

cmswest wrote on Sunday, March 02, 2014:

nice fsgl, i’m assuming your attachment would show the path to the test copy’s document root/openemr/library/gen_x12_837.inc.php?

cmswest wrote on Sunday, March 02, 2014:

i figured you didn’t forget to upload it fsgl, n’est pas un amateur

since there is no dateLastSeen variable associated with $claim the rewrite of line 470 won’t be able to grab a value

NewLife could just replace 504 with 304 knowing that his “initial treatment” is actually the last seen date

to accommodate all of the qualifiers that have been omitted from gen_837 could use field date_initial_treatment like Kevin has done in the gen_hcfa to store these other conditions

or could add a new field in the sql table for form_misc_billing_options called other_date as it’s called in the NUCC guide

or could rename field date_initial_treatment to other_date and rewrite the logic that is already there for initial treatment while adding these other conditions for box 15

yehster wrote on Sunday, March 02, 2014:

Good catch. Thanks.
I’ve updated the master branch.

fsgl wrote on Sunday, March 02, 2014:

Thanks for the explanation, Stephen.

I would vote for swapping 304 for 454. If it’s simple and elegant, it’s good.

cmswest wrote on Sunday, March 02, 2014:

nice, getting stuff done on sunday, nothing beats open source

van2010 wrote on Sunday, March 02, 2014:

Thanks fsgl and Stephen Waite.

Here is what I have to do to make my situation works:

  1. interface\forms\ misc_billing_options\new.php line 30, I’ve changed “Last Seen Date” for “Date of Initial Visit” as suggested by fsgl
  2. library\gen_x12_837.inc.php line 470, I’ve changed “dateInitialTeatment” for “onsetDateValid” (without this change, the x12 form generated without the 304 number and date because there is no onset date is on Misc Billing Options for HCFA-1500 form for input on box 14).
  3. library\gen_x12_837.inc.php line 473, I’ve changed “304” for "545 as suggested by Stephen Waite

I know this is the cheated way out of complicated codings, but the outcome is acceptable so it is justifiable!

I’ve just tried using the Demo version 4.1.3 and it has all needed functions in the Misc Billing Options for HCFA-1500 form and the x_12, and HCFA 1500 generate the dates correctly. My OpenEMR version is 4.1.2 does not…

I guess I’ve gone through a course of “DIY for OpenEMR Dummy user” after learning this modification!

Thank you all.

cmswest wrote on Sunday, March 02, 2014:

4.1.3 doesn’t have the x12 yet

really you’re at the tip of the development branch on the billing side and you brought attention to some code that was just updated and hopefully will get to the x12 soon, so not really dummy country

if you install the latest patch, http://open-emr.org/wiki/index.php/OpenEMR_Patches, you’ll just have to redo #3 from above

fsgl wrote on Sunday, March 02, 2014:

NewLife, if you don’t understand why doing 3 is simple and elegant, ask Stephen to explain further. I’m like you in that I deal with patients not codes.

bradymiller wrote on Sunday, March 02, 2014:

Should I place this in the next 4.1.2 patch?

cmswest wrote on Monday, March 03, 2014:

sure, i think there’s going to be a couple of other items too

i left a note for kevin

van2010 wrote on Monday, March 03, 2014:

Yes, I am a podiatrist.

van2010 wrote on Monday, March 03, 2014:

Stephen: thanks for the patch info and would you explain the “simple and elegant” for #3 above?

fsgl: Yes, seeing patients and dealing with the mandatory changes are difficult sometimes. However, like you, I’m try to learn to do as much as I can from server setup, networking, wire crimping and soft wares… The satisfaction is priceless though, and I don’t mind. I’m so thankful that you and others in the OpenEMR community are supporting my desire to learn. It is a blessing for me to keep practicing medicine in a fun and affordable way.

cmswest wrote on Tuesday, March 04, 2014:

sure, i don’t think you need onset date on the claim so revamping (2)

(1) is fine as it makes it appear that the form matches what you’ll be putting on the claim form but it is superficial

(2) once you upgrade to 4.1.2 patch 5 change line 470 in gen_x12_837 to:

if ($claim->dateInitialTreatment()) {

(3) change the value to ‘304’

fsgl wrote on Tuesday, March 04, 2014:

I have never cracked open an 837 data file before. From what I have gathered, it is analogous to the CMS 1500, which I have more experience with.

Box 15, both in the 837 and CMS 1500, does not requires the user to spell out in text form what the descriptor is; only to to put the descriptor in, before the date. The funny number in front of the date is the descriptor or the 304.

If the default descriptor 454 does not fit the bill, replacing it with 304 is all a user needs to do. No need to change initial/last date business because the text appears nowhere except in the codes. That is why Stephen’s solution is simple and elegant.

I agree that the OpenEMR DIY project gives one a wonderful sense of accomplishment. Because all of this occurs in an open source environment, it compliments what we were taught in medical school; namely that service to others is the highest aspiration.

yehster wrote on Tuesday, March 04, 2014:

The HCFA 1500 Qualifiers for Box 15 do correspond to valid DTP (date) field segments in the X12 Specification

It might be reasonable to change the code in X12 to used the new field for “Box 15” qualifier to change the date segment in gen_x12

See the 454 in the code linked below, changing that to be based on the “box15 qualifier” value from the claim class seems like it would work. It would “default” to 454 if unspecified (Stephen, that’s why I don’t like having “NONE” as an option for BOX 15 qualifier.)

454 Initial Treatment
304 Latest Visit or Consultation
453 Acute Manifestation of a Chronic Condition
439 Accident
455 Last X-ray
471 Prescription
090 Report Start (Assumed Care Date)
091 Report End (Relinquished Care Date)
444 First Visit or Consultation

cmswest wrote on Tuesday, March 04, 2014:

hi Kevin,

i wasn’t suggesting none for box 15 but for box 14 so that there’s a way to keep the report view clean for now and without writing a value to the field in the misc_billing table

from your github comment, i’m intrigued by your “have the claim class drive the report view” and am investigating

yehster wrote on Tuesday, March 04, 2014:

Understood, but I think that None for Box 14 Qualifier also has to potential to result in invalid claims to solve a largely cosmetic issue with the misc_billing_options “report.php” The basic issue is a pervasive design/UI limitation with OpenEMR, which is related information not being always and/or consistently presented.

Another option might be to move the “box 14 qualifier selector” on to the Encounter form (where the actual Box 14 date is specified.)

Or a reasonable/simple solution would be to only display the Box 14 qualifer in the Report View if it’s not the default.