HIPAA

HIPAA-004010 is an X12 version for health care transaction exchanges that follows national guidelines for EDI (Electronic Data Interchange) established for this purpose.

HIPAA is the acronym for Health Insurance Portability and Accountability Act. This act was created to improve productivity of the American health care system. It encourages development of information systems that are based on the exchange of standard management and financial data using EDI.

The HIPAA implementation guidelines introduce a new concept to the X12 standard. That is, there are two different transaction sets that are called 278 and three different transaction sets that are called 837. This creates a challenge to the system to parse these messages correctly. Two or more message types cannot be used with the same identifier. They cannot be defined in one version of a message format or its variant. In other words, there cannot be two 278 messages defined in HIPAA-004010.

To solve this problem, there is a pre-defined HIPAA variant concept.

The HIPAA-004010 message format has messages for:

  • 270: Eligibility, Coverage, or Benefit Inquiry
  • 271: Eligibility, Coverage, or Benefit Information
  • 276: Health Care Claim Status Request
  • 277: Health Care Claim Status Notification
  • 820: Payment Order/Remittance Advice
  • 834: Benefit Enrollment and Maintenance
  • 835: Health Care Claim Payment/Advice

Pre-defined variants

The first pre-defined variant called HIPAA-004010 v1 has additional messages for:

  • 278: Health Care Services Review: Request for Review
  • 837: Health Care Claim: Professional

The second pre-defined variant called HIPAA-004010 v2 has additional messages for:

  • 278: Health Care Services Review: Response to Request for Review
  • 837: Health Care Claim: Dental

The third pre-defined variant called HIPAA-004010 v3 has an additional message for 837: Health Care Claim: Institutional

When a new site is initialized, there are three X12 HIPAA-004010 variants created automatically. The division of these variants to contain different message types is arbitrary. Implementers can rearrange different message types to create new variants based on their application requirements.