Changelog

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.~

Claim edit: Invalid claim frequency code and patient status code combination

Stedi now rejects 837I institutional claims that contain a conflicting claim frequency code and patient status code combination.

How the edit works

In an institutional claim, the claim frequency code tells the payer whether a claim is an original claim, a correction, or part of an ongoing stay.

Claim frequency code

JSON API fieldX12 837I element
claimFrequencyCodeCLM05-3 (Health Care Service Location Information) of Loop 2300 (Claim Information)

The claim’s patient status code describes the patient's condition at the end of the claim’s billed period. It tells the payer whether the patient was discharged, transferred, or still admitted.

Patient status code

JSON API fieldX12 837I element
patientStatusCodeCL1-03 (Patient Status Code) of Loop 2300 (Claim Information)

The claim frequency code and patient status code must be compatible. For example, if a claim uses a claim frequency code of 1 (Admit thru Discharge Claim) – meaning the patient’s stay is finished – the patient status code shouldn’t be 30 (Still a Patient), which means the patient is still in the facility.

If the claim frequency code and patient status code are conflicting, the payer may reject the claim. That rejection can delay payment to 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:

{
  "errors": [
    {
      "code": "33",
      "description": "Invalid combination of claim frequency and patient status. The submitted patient status code 30 indicates the patient is still admitted, which conflicts with the claim frequency code 1 indicating a final bill. 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>535>QC*[DATE]*U*[AMOUNT]********Invalid combination of claim frequency and patient status. The submitted patient status code 30 indicates the patient is still admitted, which conflicts with the claim frequency code 1 indicating a final bill. Correct and resubmit.~

Claim edit: Invalid future dates

Stedi now rejects 837P professional, 837D dental, and 837I institutional claims that contain dates later than the claim’s transaction date.

How the edit works

Each claim includes a transaction date – the date the claim was submitted.

Providers always submit claims after care is provided. That means other dates in the claim, such as dates of service, statement periods, and accident dates, should always occur on or before the transaction date. Future dates indicate a data entry error.

If a claim contains a future date, the payer may reject the claim, which 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.

Dates covered by this edit

This edit validates date fields at the claim and service line level, including but not limited to:

  • Dates of service

  • Accident dates

  • Initial treatment dates

  • Prescription dates

  • Last seen dates

  • Discharge dates

This edit does not apply to dates of birth. Stedi validates those separately with the invalid date of birth edit.

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": "The submitted date(s) are invalid. The following dates cannot be later than the transaction date of 20260312: Service (20270101). 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*A8>510*[DATE]*U*[AMOUNT]******A7>727**The submitted date(s) are invalid. The following dates cannot be later than the transaction date of 20260312: Service (20270101). Correct and resubmit.~