Changelog

UPMC Health Plan is now one-click enrollment

Healthcare payer UPMC Health Plan (Payer ID: 23281) now supports one-click transaction enrollment for Electronic Remittance Advice (ERAs).

About one-click enrollment

Transaction enrollment is the process of registering a provider to exchange specific healthcare transactions with a payer. Payers always require transaction enrollment for ERAs.

Transaction enrollment requirements vary by payer. Some payers may require the submitter to sign PDFs or complete tasks in the payer's portal.

With one-click transaction enrollment, you only need to submit an enrollment request. There are no follow-up steps. Stedi handles everything else.

You can check whether a payer supports one-click enrollment using the Stedi Payer Network or the Payer APIs.

Claim edit: Duplicate diagnosis codes

Stedi now rejects 837P professional, 837D dental, and 837I institutional claims that contain duplicate diagnosis codes.

How the edit works

A claim’s diagnosis codes describe what’s wrong with the patient. For example, in 837P professional or 837I institutional claims, M54.50 is the ICD-10-CM diagnosis code for “Low back pain, unspecified."

A claim can include multiple diagnosis codes, listed in order of importance. The primary diagnosis code is in position 1, the next is in position 2, and so on. All codes after position 1 make up the secondary diagnosis list.

Each diagnosis code on the claim must be unique. You can’t submit the same code twice.

Submitting the same diagnosis code more than once does not provide additional clinical information to the payer. It may lead to confusion during processing or review.

Diagnosis codes for 837P professional and 837D dental claims

For 837P professional and 837D dental claims, all diagnosis codes appear in the same array field. The first entry is the primary diagnosis. Subsequent entries are secondary diagnoses.

Claim typeJSON API fieldX12 element
837P professionalclaimInformation.healthCareCodeInformationHI-01 through HI-12 (Diagnosis Code) of Loop 2300 (Claim Information)
837D dentalclaimInformation.healthCareCodeInformationHI-01 through HI-04 (Diagnosis Code) of Loop 2300 (Claim Information)

Diagnosis codes for 837I institutional claims

For 837I institutional claims, the primary and secondary diagnosis codes are in separate fields.

Claim typeDiagnosis code typeJSON API fieldX12 element
837I institutionalPrimary diagnosis codeclaimInformation.principalDiagnosis.principalDiagnosisCodeHI-01 (Principal Diagnosis Code) of Loop 2300 (Claim Information)
Secondary diagnosis codesclaimInformation.otherDiagnosisInformationList[][].otherDiagnosisCodeHI-02 through HI-12 (Other Diagnosis Code) of Loop 2300 (Claim Information)

If a diagnosis code appears more than once in a claim, the payer may reject the claim.

This edit catches the issue before the claim reaches the payer. It prevents payer rejections, which are slower and delay payment for the provider.

Rejection errors

This edit has two conditions, each producing a different error.

The primary diagnosis code appears in the secondary diagnosis list

If you submit a claim using Stedi's Claim Submission API endpoints and the claim fails the edit, you'll get back an error response in real time. The response includes details in the errors array:

If you submit a claim using SFTP and the claim fails the edit, Stedi will reject the claim with a 277CA claim acknowledgment. The acknowledgment will include a related claim status category code, claim status code, and error message:

STC*A7>254*[DATE]*U*[AMOUNT]********Duplicate Diagnosis Code. The primary diagnosis code, F329, must be unique and cannot also be reported in the secondary diagnosis list. Correct and resubmit.~

The same diagnosis code appears more than once among secondary diagnoses

If you submit a claim using Stedi's Claim Submission API endpoints and the claim fails the edit, you'll get back an error response in real time. The response includes details in the errors array:

{
  "errors": [
    {
      "code": "33",
      "description": "Duplicate Diagnosis Code. Diagnosis code(s) F329 are incorrectly duplicated. Diagnosis codes must be unique within the claim. Correct and resubmit.",
      "followupAction": "Please Correct and Resubmit"
    }
  ]
}

If you submit a claim using SFTP and the claim fails the edit, Stedi will reject the claim with a 277CA claim acknowledgment. The acknowledgment will include a related claim status category code, claim status code, and error message:

STC*A7>255*[DATE]*U*[AMOUNT]********Duplicate Diagnosis Code. Diagnosis code(s) F329 are incorrectly duplicated. Diagnosis codes must be unique within the claim. Correct and resubmit.~

Tip: Update your diagnosis pointers

If you remove a duplicate diagnosis code in an 837P professional or 837D dental claim, update any diagnosis pointers on the claim's service lines to avoid mismatched pointers.

Diagnosis pointers link each service line of a claim to a diagnosis code. Diagnosis pointers are positional. Each pointer refers to the index position of a diagnosis code on the claim. For example:

  • If a service line uses diagnosis pointer 2, it refers to the diagnosis code in position 2.

  • If a service line uses diagnosis pointer 3, it refers to the diagnosis code in position 3.

Removing a code can shift the positions of remaining codes. This would make existing pointers incorrect and can result in payer rejections.

Diagnosis pointers

Claim typeJSON API fieldX12 element
837P professionalclaimInformation.serviceLines[].professionalService.compositeDiagnosisCodePointersSV1-07 (Composite Diagnosis Code Pointer) of Loop 2400 (Service Line)
837D dentalclaimInformation.serviceLines[].dentalService.compositeDiagnosisCodePointersSV3-11 (Composite Diagnosis Code Pointer) of Loop 2400 (Service Line)

Claim edit: Missing insurance type code when Medicare is a non-primary payer

Stedi now rejects 837P professional and 837D dental claims where Medicare appears as a non-primary payer and the insurance type code is missing.

How the edit works

In coordination of benefits (COB) scenarios, a claim may list multiple payers. For example, a patient may have a commercial payer as their primary payer and Medicare as their secondary payer. You indicate whether a payer is primary, secondary, tertiary, and so on using a payment responsibility sequence number code, also called a payment responsibility level code.

Payment responsibility level

Claim typeJSON API fieldX12 element
837P professionalclaimInformation.otherSubscriberInformation[].paymentResponsibilityLevelCodeSBR-01 (Payer Responsibility Sequence Number Code) of Loop 2320 (Other Subscriber Information)
837D dentalclaimInformation.otherSubscriberInformation[].paymentResponsibilityLevelCodeSBR-01 (Payer Responsibility Sequence Number Code) of Loop 2320 (Other Subscriber Information)

Any non-primary payers on a claim must have a claim filing indicator. The indicator tells you what type of payer or plan it is. For example, CI is for a commercial insurance company.

Claim filing indicator

Claim typeJSON API fieldX12 element
837P professionalclaimInformation.otherSubscriberInformation[].claimFilingIndicatorCodeSBR-09 (Claim Filing Indicator Code) of Loop 2320 (Other Subscriber Information)
837D dentalclaimInformation.otherSubscriberInformation[].claimFilingIndicatorCodeSBR-09 (Claim Filing Indicator Code) of Loop 2320 (Other Subscriber Information)

If Medicare is a non-primary payer on the claim, the claim filing indicator must be MA (Medicare Part A) or MB (Medicare Part B). In these cases, an insurance type code is also required.

The insurance type code indicates why Medicare isn't the primary payer. For example, code 12 means the patient has an employer group health plan.

Insurance type code

Claim typeJSON API fieldX12 element
837P professionalclaimInformation.otherSubscriberInformation[].insuranceTypeCodeSBR-05 (Insurance Type Code) of Loop 2320 (Other Subscriber Information)
837D dentalclaimInformation.otherSubscriberInformation[].insuranceTypeCodeSBR-05 (Insurance Type Code) of Loop 2320 (Other Subscriber Information)

If the insurance type code is missing, the payer may reject the claim.

This edit catches the issue before the claim reaches the payer. It prevents payer rejections, which are slower and delay payment for the provider.

Rejection errors

If you submit a claim using Stedi's Claim Submission API endpoints and the claim fails the edit, you'll get back an error response in real time. The response includes details in the errors array:

{
  "errors": [
    {
      "code": "33",
      "description": "Missing required insurance type code. Insurance type code (Loop 2320 SBR05) is required when the payer is Medicare and Medicare is not the primary payer. Correct and resubmit.",
      "followupAction": "Please Correct and Resubmit"
    }
  ]
}

If you submit a claim using SFTP and the claim fails the edit, Stedi will reject the claim with a 277CA claim acknowledgment. The acknowledgment will include a related claim status category code, claim status code, and error message:

STC*A6:578*[DATE]*U*[AMOUNT]********Missing required insurance type code. Insurance type code (Loop 2320 SBR05) is required when the payer is Medicare and Medicare is not the primary payer. Correct and resubmit.~

Introducing 999 acknowledgment settings for SFTP users

If you use Stedi’s SFTP server, you’ll now receive negative 999 Implementation Acknowledgments from Stedi for claims with invalid X12 syntax or implementation guide errors.

You can also opt in to receive positive 999 acknowledgments, which are returned for claims with valid X12 syntax.

You’ll receive 999 acknowledgments in the from-stedi directory for claims submitted through SFTP, the Claim Submission API, or the Stedi portal. The acknowledgments arrive within minutes of submission.

What is a 999 acknowledgment?

A 999 Implementation Acknowledgment is a standard X12 transaction set. It confirms whether a submitted functional group and its transaction sets use valid X12 syntax. It is not used for application-level validation.

Negative 999 acknowledgments

A negative 999 acknowledgment means Stedi rejected at least one transaction in the X12 file due to a structural error, such as a malformed segment or a missing required element. Rejected transactions are not further processed by Stedi or forwarded to the payer.

The AK9 (Functional Group Response) segment summarizes the result for the functional group. AK9-01 (Functional Group Acknowledge Code) is set to R if all transactions were rejected, or P if the group was partially accepted:

AK9*P*3*3*1~    ← Partially accepted: 3 transactions submitted, 3 received, 1 accepted (2 rejected)

For each rejected transaction, IK5-01 (Transaction Set Acknowledgment Code) is set to R. The IK3 (Error Identification) and IK4 (Implementation Data Element Note) segments identify where the error occurred. For example:

AK2*837*0002~      ← Responding to transaction 0002
IK3*CLM*22**8~CLM segment at position 22 has element errors
IK4*2*782*1~       ← Element 2 is missing a mandatory value
IK5*R*5~           ← Transaction rejected

If you receive a negative 999, you must correct the errors and resubmit the claim.

Positive 999 acknowledgments

A positive 999 acknowledgment confirms that all transactions in a functional group were accepted for further processing. IK5-01 returns A (Accepted), and AK9 returns A (Accepted). For example:

AK2*837*0001~
IK5*A~           ← Transaction accepted
AK9*A*1*1*1~     ← All accepted: 1 transaction submitted, 1 received, 1 accepted

Interpreting 999 acknowledgments

For more tips on interpreting 999 acknowledgments, see our SFTP docs.

How to update your 999 acknowledgment settings

You can opt in to receive positive 999 acknowledgments using the Stedi portal:

  1. Go to the SFTP setup page in your account settings.

  2. Under 999 settings, select All 999s to receive 999 acknowledgments for every transaction. Leave the default to receive negative acknowledgments.

For more information, see our SFTP docs.

El Paso First Health Plans Premier Plan Star Medicaid HMO is now one-click enrollment

Healthcare payer El Paso First Health Plans Premier Plan Star Medicaid HMO (Payer ID: EPF02) now supports one-click transaction enrollment for Electronic Remittance Advice (ERAs).

About one-click enrollment

Transaction enrollment is the process of registering a provider to exchange specific healthcare transactions with a payer. Payers always require transaction enrollment for ERAs.

Transaction enrollment requirements vary by payer. Some payers may require the submitter to sign PDFs or complete tasks in the payer's portal.

With one-click transaction enrollment, you only need to submit an enrollment request. There are no follow-up steps. Stedi handles everything else.

You can check whether a payer supports one-click enrollment using the Stedi Payer Network or the Payer APIs.

Claim edit: Invalid name for a non-person entity

Stedi now rejects 837P professional, 837D dental, and 837I institutional claims that include a first name, middle name, or suffix for a non-person entity.

How the edit works

In a claim, each entity – such as the submitter or billing provider – is marked as either a person or a non-person. Non-person entities include hospitals, billing organizations, and similar groups.

In X12, the entity type is set using the NM1-02 qualifier: 1 for a person, 2 for a non-person entity.

For non-person entities, you should only provide an organization name. The organization name goes where the last name would for an individual. In X12, this is the NM1-03 element.

If a claim includes a non-person entity with a first name, middle name, or suffix, the payer may reject the claim.

This edit catches the issue before the claim reaches the payer. It prevents payer rejections, which are slower and delay payment for the provider.

Rejection errors

If you submit a claim using Stedi's Claim Submission API endpoints and the claim fails the edit, you'll get back an error response in real time. The response includes details in the errors array:

{
  "errors": [
    {
      "code": "33",
      "description": "Invalid Name Elements. When the Billing Provider entity is not a person, as identified by the entity type qualifier 2, then the following name elements should not be submitted: [first name, middle name, suffix]. Correct and resubmit.",
      "followupAction": "Please Correct and Resubmit"
    }
  ]
}

If you submit a claim using SFTP and the claim fails the edit, Stedi will reject the claim with a 277CA claim acknowledgment. The acknowledgment will include a related claim status category code, claim status code, entity identifier code, and error message:

STC*A7>505>85*[DATE]*U*[AMOUNT]*******Invalid Name Elements. When the Billing Provider entity is not a person, as identified by the entity type qualifier 2, then the following name elements should not be submitted: [first name, middle name, suffix]. Correct and resubmit.~

Independence Blue Cross is now one-click enrollment

Independence Blue Cross (Payer ID: 54704) now supports one-click transaction enrollment for Electronic Remittance Advice (ERAs).

What is transaction enrollment?

Transaction enrollment is the process of registering a provider to exchange specific healthcare transactions with a payer. Payers always require transaction enrollments for ERAs.

You can submit and track enrollments using Stedi's transaction enrollment API, the Stedi portal, or a bulk CSV.

One-click enrollment

Enrollment requirements vary by payer. Some payers may require the submitter to sign PDFs or complete tasks in the payer's portal.

If a payer supports one-click enrollment, you only need to submit the enrollment request. There are no follow-up steps. Stedi handles everything else.

You can check whether a payer requires enrollment – and supports one-click enrollment – for ERAs and other transaction types using the Stedi Payer Network or the Payer APIs.

For details, see our transaction enrollment docs.

Inland Empire Health Plan is now one-click enrollment

Inland Empire Health Plan (Payer ID: IEHP1) now supports one-click transaction enrollment for Electronic Remittance Advice (ERAs).

What is transaction enrollment?

Transaction enrollment is the process of registering a provider to exchange specific healthcare transactions with a payer. Payers always require transaction enrollments for ERAs.

You can submit and track enrollments using Stedi's transaction enrollment API, the Stedi portal, or a bulk CSV.

One-click enrollment

Enrollment requirements vary by payer. Some payers may require the submitter to sign PDFs or complete tasks in the payer's portal.

If a payer supports one-click enrollment, you only need to submit the enrollment request. There are no follow-up steps. Stedi handles everything else.

You can check whether a payer requires enrollment – and supports one-click enrollment – for ERAs and other transaction types using the Stedi Payer Network or the Payer APIs.

For details, see our transaction enrollment docs.

Sun Life is now one-click enrollment

Sun Life (Payer ID: 70408) now supports one-click transaction enrollment for Electronic Remittance Advice (ERAs).

What is transaction enrollment?

Transaction enrollment is the process of registering a provider to exchange specific healthcare transactions with a payer. Payers always require transaction enrollments for ERAs.

You can submit and track enrollments using Stedi's transaction enrollment API, the Stedi portal, or a bulk CSV.

One-click enrollment

Enrollment requirements vary by payer. Some payers may require the submitter to sign PDFs or complete tasks in the payer's portal.

If a payer supports one-click enrollment, you only need to submit the enrollment request. There are no follow-up steps. Stedi handles everything else.

You can check whether a payer requires enrollment – and supports one-click enrollment – for ERAs and other transaction types using the Stedi Payer Network or the Payer APIs.

For details, see our transaction enrollment docs.

Claim edit: Invalid submitter ID

Stedi now rejects 837P professional, 837D dental, and 837I institutional claims when the submitter ID doesn't match the payer's required format.

How the edit works

In a claim, the submitter ID tells the payer who submitted the claim.

This submitter isn't necessarily the provider who rendered care or is being paid for the claim. It could be a billing service or other vendor acting on the provider's behalf.

Claim typeJSON API fieldX12 segment
837P professionalsubmitter.submitterIdentificationNM109 (Submitter Identification Number) of Loop 1000A (Submitter Name)
837D dentalsubmitter.submitterIdentificationNM109 (Submitter Identification Number) of Loop 1000A (Submitter Name)
837I institutionalsubmitter.taxIdNM109 (Submitter Identification Number) of Loop 1000A (Submitter Name)

Payer-assigned submitter IDs

Most payers accept standard submitter IDs, such as an Employer Identification Number (EIN) or other Tax Identification Number (TIN).

Some payers, including some Medicare Administrative Contractors (MACs) and state Medicaid programs, require submitters to use a specific payer-assigned submitter ID instead.

Payer-assigned submitter IDs are issued during transaction enrollment and tend to follow payer-specific formats. For example, a required prefix followed by a fixed number of digits.

If you submit a claim to one of these payers and don’t use a payer-assigned submitter ID, the payer may reject the claim. This can delay payment for the provider.

This edit – the industry term for an automated validation rule – catches the issue before the claim reaches the payer.

Rejection errors

If you submit a claim using Stedi's Claim Submission API endpoints and the claim fails the edit, you'll get back an error response in real time. The response includes details in the errors array.

The exact error message varies by payer and includes guidance on how to fix the submitter ID. For example:

{
  "errors": [
    {
      "code": "33",
      "description": "Invalid Submitter Identifier. This payer requires a specific-assigned identifier that begins with AZ followed by 5 or 6 numbers. The submitted value 921545753 does not follow this format and must be confirmed with the payer. Correct and resubmit.",
      "followupAction": "Please Correct and Resubmit"
    }
  ]
}

If you submit a claim using SFTP and the claim fails the edit, Stedi will reject the claim with a 277CA claim acknowledgment. The acknowledgment will include a related claim status category code, claim status code, and error message:

STC*A7>478*[DATE]*U*[AMOUNT]******A7>733>41**Invalid Submitter Identifier. This payer requires a specific-assigned identifier that begins with AZ followed by 5 or 6 numbers. The submitted value 921545753 does not follow this format and must be confirmed with the payer. Correct and resubmit.~