Eligibility Checks & Clearinghouses

Let me straighten out the x12 partner then i’ll post a patch. Couple hours.

cool!
I am done for the day and catching up on office work. I test it when u post.
Thanks again for your hard work

@albanyeye
Try this patch.

  • The Payer NM1 comes from Insurance Company Payer ID. Must match OAs payer ids. I’ve attached pdf for you.
  • The Provider is the Providers NPI that is associated with the provider the appointment used to select this request was made against. Also if Medicare, NPI must be registered.
  • The Subscribers policy and dob must match what is on file with insurance.

If you hold your tongue just right and 270 is accepted, the result log will show EBs.
If something is wrong then see the following in logs.

  • AAA reject reasons will give clue. Usually something amiss with matching data.
  • 999 This means something is wrong with validations but doesn’t give good clues as to why.
  • Hard errors will throw exceptions.

It’s very difficult for me to test because I don’t have any real world good data. So I have to deduce a lot but i’m a tenacious sort and will hang in there with you.

Patch: eligibility-patch-4.zip (16.1 KB)

OA Payers: Real_Time_270_271_payerlist_20180626.pdf (161.9 KB)

batch is great because it’s free :slight_smile: as in free :money_mouth_face:

if you want to support just 0A real time for now

no one’s likely to use more than one clearinghouse so if you base it off the payer id…

are you including the pt id in the EJ? 1P is what works for medicaid providers vs FA

Jerry
I got this error and just a blank page
“Receiver Backend processing error”

That means something is missing ie do you have a provider npi in users? For the insurance company you are using, did you set a payer id from the OA payers pdf? Also do you use the facility NPI or your personal npi in OA Portal for provider?

Agreed, we’ll stick to batch and OA. I set the REF ‘EJ’ with pid for 270 and will match for either REF or DMG on 271 parse. I’m thinking we can use the facility npi with the provider nm1 ‘1P’.
We’ve got this once I can nail down exactly what OA wants for the NM1 loops. I’m pretty sure the 2100A will be with their payer ids. It’s the 2100B NM1 provider id. is it a 1P with the facility NPI or a 1P with the providers NPI?
OA is really crappy about documentation. Well labs too to be fair :slight_smile:

think it’s 1P for facility NPI

edit: for either NPI and use XX as the code qualifier :slight_smile:

1 Like

I use OA for my billing, so the CMS id is accurate.
I usually is my personal NPI on the OA portal

As you can see the 271 results can be extensive but that’s a good thing.
So we know it works and now I can finish the 271 parse and fixup UI. Also will nail down how our x12 partner will work.
Once I can get some batch results to test this will be good for production.

Excellent!
Yes the response is extensive
I think setting 2 separate X12 partners (both of the being OA ) will work

Okay i’m getting closer but could use guidance with presentation side of project.

I’ve uploaded two transaction log files. In these logs are the 271 response x12 followed by the parsed results. I’m looking for what/how we want to give to user and any additional info on codes. Inside log I placed the lookup arrays for all the codes I could hunt and pick from various sources. So please add to these list for me, especially add any DTP segment codes like 291,292,343 (they determine date scopes) etc list.

I’m thinking to report results one way to go is create a eligibility list where codes and nomenclature is made in to plain speak verbiage.
I’m sure there are those that are more knowledgeable than me in X12 speak so please add to this.

Sample batch 8 subscribers Thanks @stephenwaite very helpful.
medicaid-batch(1).txt (33.1 KB)

Realtime medicare 1 subscriber from OA w/data changes for privacy: Thanks @albanyeye for account access and testing(wasn’t the rosy path we anticipated).
medicare-realtime.txt (34.7 KB)

I plan to put up another patch later tonight with everything except UI changes.

btw: Tomorrow is my birthday and I still don’t own a yacht or Rolex and have plenty of ties so, take from that what you will! :slight_smile:

Turns out for OA you’re right. Either the Facility or Provider NPI can be used as long as the 1P and XX qualifier is used. But I also believe that both NPIs need to be registered with OA and/or Medicare.

Hey happy birthday…

1 Like

It’s now official! Happy Birthday @sjpadgett !!!

1 Like

:balloon: happy bday Jerry :birthday:

1 Like

Thanks everyone for the good wishes.
So everybody, i’m desperate to get these EB component codes completed so we keep patching them in to a min. The more complete, the better the reporting.
Please, anyone that can help add to the below list will greatly help the project. I’m concerned with the EB and DTP (determines date context) segments.

Blockquote
// EB03
$coverage_type = [
‘’ => “”,
‘1’ => xlt(‘Medical Care’),
‘30’ => xlt(‘Health Plan Benefit Coverage’),
‘33’ => xlt(‘Chiropractic’),
‘35’ => xlt(‘Dental’),
‘42’ => xlt(‘Home Health Care’),
‘47’ => xlt(‘Hospital’),
‘48’ => xlt(‘Hospital Inpatient’),
‘50’ => xlt(‘Hospital Outpatient’),
‘51’ => xlt(‘Hospital Emergency Accident’),
‘52’ => xlt(‘Emergency Room’),
‘86’ => xlt(‘Emergency Services’),
‘88’ => xlt(‘Pharmacy’),
‘98’ => xlt(‘Physician Office visit’),
‘AE’ => xlt(‘Physical and Speech Therapy’),
‘AL’ => xlt(‘Vision’),
‘MH’ => xlt(‘Mental Health’),
‘UC’ => xlt(‘Urgent Care’),
‘BY’ => xlt(‘Physician Visit Sick’),
‘BZ’ => xlt(‘Physician Visit Well’)
];
// EB04
$plan_type = [
‘’ => “”,
‘C1’ => xlt(‘Commercial’),
‘HM’ => xlt(‘HMO’),
‘HN’ => xlt(‘HMO Medicare Risk’),
‘OT’ => xlt(‘Other’),
‘PR’ => xlt(‘PPO’),
‘PS’ => xlt(‘POS’),
‘MA’ => xlt(‘Medicare Part A’),
‘MB’ => xlt(‘Medicare Part B’),
‘MC’ => xlt(‘Medicare Part C’),
‘IN’ => xlt(‘Indemnity’),
‘SP’ => xlt(‘Supplemental Policy’)
];
// EB06
$coverage_period = [
‘’ => “”,
‘7’ => xlt(‘Co-Insurance Days Co-Payment Amount’),
‘22’ => xlt(‘Service Year’),
‘23’ => xlt(’’),
‘26’ => xlt(‘Full Days Co-Payment Amount’),
‘27’ => xlt(‘Visit’),
‘29’ => xlt(’’),
‘32’ => xlt(‘Lifetime’),
‘33’ => xlt(‘Lifetime Rendering’),
‘36’ => xlt(‘Admission’)
];
//EB01 Time Period Qualifier
$benefit_type = [
‘’ => “”,
‘1’ => xlt(‘Active Coverage’),
‘6’ => xlt(‘Inactive’),
‘A’ => xlt(‘Co-insurance’),
‘B’ => xlt(‘Co-payment’),
‘C’ => xlt(‘Deductible’),
‘F’ => xlt(‘Limitation’),
‘G’ => xlt(‘Out of pocket’),
‘I’ => xlt(‘Non-covered’),
‘L’ => xlt(‘Primary Care Provider’),
‘P’ => xlt(‘Benefit disclaimer’),
‘R’ => xlt(‘Other payer information’),
‘X’ => xlt(‘Beneficiary is Medicare entitled’)
];
$aaa_rejected = [
‘’ => xlt(‘Unknown rejection code’),
‘41’ => xlt(‘Authorization/Access Restrictions’),
‘42’ => xlt(‘Unable to Respond at Current Time’),
‘43’ => xlt(‘Invalid Provider Status’),
‘57’ => xlt(‘Invalid/Missing Date(s) of Service’),
‘58’ => xlt(‘Invalid/Missing Date-of-Birth’),
‘60’ => xlt(‘Date of Birth Follows Date Of Service’),
‘63’ => xlt(‘Date of Service in Future’),
‘64’ => xlt(‘Invalid/Missing Patient ID’),
‘65’ => xlt(‘Invalid/Missing Patient Name’),
‘67’ => xlt(‘Patient Not Found’),
‘68’ => xlt(‘Duplicate Patient Id Number’),
‘71’ => xlt(‘Patient Birth Date Does Not Match That for the Patient on the Database’),
‘72’ => xlt(‘72 Invalid/Missing Subscriber/Insured ID’),
‘73’ => xlt(‘Invalid / Missing Subscriber / Insured Name’),
‘75’ => xlt(‘Subscriber/Insured Not Found’),
‘79’ => xlt(‘270 2100A NM103 or NM109 Source Invalid’)
];

wondering if all of these are payer specific or are in that expensive 5010 implementation guide,

http://store.x12.org/store/healthcare-5010-original-guides

you probably already saw this, https://www.cms.gov/Research-Statistics-Data-and-Systems/CMS-Information-Technology/HETSHelp/Downloads/R2018Q400HETS270271CompanionGuide.pdf

Awfully proud of that book, aren’t they. Certainly not on my reading list. I assume any payer specific would have to be in payers implementation guide otherwise they are standard to the spec(or maybe not, one can’t attach logic to this stuff).
I’ve attached a log report of the medicaid batch 271 you sent me so you can see how medicaid is even more confusing. You tell me if the user can glean useful info for it.
I will parse out the coverage types at least to the codes I know.
elig-batch_log_2019-03-04_23_13_02.txt (12.3 KB)

Okay PR is up here and maybe Brady will put up a demo if any wish to test. I’m not 100% happy nut it will get job done.

1 Like