# Introducing eligibility check IDs

> Stedi now generates and returns a universally unique ID (UUID) for every eligibility check. The check ID is returned in the id field of API responses.

Published Jan 15, 2026

Updated Nov 11, 2026

Category: Products

Note

This post's examples and links originally used the [Legacy Real-Time Eligibility Check JSON](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-legacy) endpoint. We've since updated them to use the redesigned [Real-Time Eligibility Check JSON](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check) endpoint.

We strongly recommend the [redesigned endpoint](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check) for new implementations. Its request and response shapes are more intuitive for both developers and AI agents, which speeds up integration. We still fix bugs in the legacy endpoint, but it's no longer under active development.

Stedi now generates and returns a universally unique ID (UUID) for every eligibility check.

The check ID is returned in the `id` field of the following API responses:

- [JSON Real-Time Eligibility Check](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check#response.id)

- [Legacy Real-Time Eligibility Check JSON](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-legacy#response.id)

- [X12 Real-Time Eligibility Check](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12#response.id)

- [Retrieve Batch Check Statuses](https://www.stedi.com/docs/healthcare/api-reference/get-healthcare-batch-eligibility-check-statuses#response.items.additionalInfo.eligibility.id)

- [Poll Batch Checks](https://www.stedi.com/docs/healthcare/api-reference/get-healthcare-polling-eligibility#response.items.id)

The check ID is a string that always starts with `ec_`. For example, in a [Real-Time Eligibility Check JSON](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check) response:

```jsonc
{
  "eligibilitySearchId": "01922a35-a177-7171-b868-cd4974dd54df",
  "id": "ec_550e8400-e29b-41d4-a716-446655440000", // Unique check ID, generated by Stedi
  "plans": [
    ...
  ],
  ...
}
```

For [SOAP Real-Time Eligibility Check API](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-soap) responses, the check ID is returned in the `stedi-id` HTTP response header:

```text
stedi-id: ec_550e8400-e29b-41d4-a716-446655440000
```

The check ID gives you a stable handle for a single eligibility check. You can use it to:

- Track eligibility checks for debugging and troubleshooting in your application

- [Search for specific checks in the Stedi portal](https://www.stedi.com/blog/introducing-eligibility-check-ids#search-by-check-id-in-the-stedi-portal)

- [Construct deep links to eligibility checks in the Stedi portal](https://www.stedi.com/blog/introducing-eligibility-check-ids#construct-deep-links-to-eligibility-checks-in-the-stedi-portal)

- Share a reference to a specific eligibility check with Stedi support

## Search by check ID in the Stedi portal

You can now search for eligibility checks by check ID in the Stedi portal:

[Watch the video](https://www.stedi.com/blog/media/introducing-eligibility-check-ids/search-by-check-id-in-the-stedi-portal.mp4)

## Construct deep links to eligibility checks in the Stedi portal

URLs for eligibility checks in the Stedi portal now follow this pattern:

```text
https://portal.stedi.com/app/healthcare/eligibility/<ELIGIBILITY_SEARCH_ID>/inspect/<CHECK_ID>
```

You can use the convention to construct your own deep links to eligibility checks in the portal. For example, if an eligibility check has:

- An eligibility search ID of `06956c88-a177-5252-b868-ju4974dd54gh`

- A check ID of `ec_550e8400-e29b-41d4-a716-446655440000`

Then the URL for the eligibility check in the Stedi portal will be:

```text
https://portal.stedi.com/app/healthcare/eligibility/06956c88-a177-5252-b868-ju4974dd54gh/inspect/ec_550e8400-e29b-41d4-a716-446655440000
```

When the URL resolves, the Stedi portal will automatically append `?account=<STEDI_ACCOUNT_ID>` . This scopes the URL to your Stedi account.

### Older eligibility check links

If you have existing bookmarks or saved links to eligibility checks in the Stedi portal, you’ll need to update them to use this new URL format.

Older links may no longer resolve correctly. In most cases, you can prepend `ec_` to the URL’s final path segment (the check ID).

## Differences with eligibility search IDs

Stedi returns an `eligibilitySearchId` for eligibility check responses in the [Stedi portal](https://www.stedi.com/docs/providers/providers-eligibility-checks) and Stedi’s [Eligibility APIs](https://www.stedi.com/docs/healthcare/send-eligibility-checks) (excluding the [SOAP API endpoint](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-soap)).

When you run an eligibility check in the [Stedi portal](https://www.stedi.com/docs/healthcare/eligibility-views), Stedi groups related checks – such as retries, re-runs, and follow-up checks – for the same patient into a single eligibility search. The `eligibilitySearchId` identifies that search.

We now return a check `id` anywhere you’d get an `eligibilitySearchId`.

The check `id` identifies the individual eligibility check. The `eligibilitySearchId` identifies the search, which can include multiple checks.

## Differences with outbound trace IDs

An outbound trace ID identifies a specific real-time eligibility check for tracing and debugging.

Both outbound trace IDs and check IDs let you track real-time checks, but there are some major differences:

| <br><br><br>                                                                                                                                       | **Check ID**                                                                                                | **Outbound trace ID**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| -------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Who generates it**                                                                                                                               | Always generated by Stedi.                                                                                  | Dependent on the API endpoint or submission method. For the [**JSON Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check) endpoint, the outbound trace ID is always generated by Stedi. For the [**X12 Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12), you specify the outbound trace ID using `BHT03` (Submitter Transaction Identifier) in the `X12` request payload. The outbound trace ID is not available in [**SOAP Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-soap) responses. For requests submitted using the Stedi portal, the outbound trace ID is always generated by Stedi. |
| **Scope**                                                                                                                                          | Universally unique across Stedi accounts                                                                    | Not guaranteed to be universally unique.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [**JSON Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check) **response field(s)**             | `[id](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check#response.id)`              | `[meta.outboundTraceId](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check#response.meta.outboundTraceId)``[meta.traceId](https://www.stedi.com/docs/healthcare/api-reference/post-eligibility-check#response.meta.traceId)`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [**X12 Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12) **response field(s)** | `[id](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12#response.id)` | `[meta.outboundTraceId](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12#response.meta.outboundTraceId)`, set using `BHT03` in the `X12` request payload.`[meta.traceId](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-raw-x12#response.meta.traceId)` set using `BHT03` in the `X12` request payload.                                                                                                                                                                                                                                                                                                                                                                                                      |
| [**SOAP Real-Time Eligibility API**](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-eligibility-soap) **response location**   | `stedi-id` HTTP response header                                                                             | Not available in SOAP responses.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

### Use check IDs going forward

We’re not deprecating or removing outbound trace IDs with this change. However, we recommend using check IDs instead of outbound trace IDs to track eligibility checks going forward.

Check IDs are the only ID for eligibility checks that are guaranteed to be universally unique and returned across JSON, X12, and SOAP.

## Differences with submitter transaction IDs in batch checks

A [batch eligibility check](https://www.stedi.com/docs/healthcare/batch-refresh-eligibility-checks) lets you run multiple eligibility checks asynchronously using a single request.

You can specify a [`submitterTransactionIdentifier`](https://www.stedi.com/docs/healthcare/api-reference/post-healthcare-batch-eligibility#body.items.submitterTransactionIdentifier) for each check in the batch. Stedi returns the `submitterTransactionIdentifier` in [Poll Batch Checks](https://www.stedi.com/docs/healthcare/api-reference/get-healthcare-polling-eligibility#response.items.submitterTransactionIdentifier) and [Retrieve Batch Check Statuses](https://www.stedi.com/docs/healthcare/api-reference/get-healthcare-batch-eligibility-check-statuses#response.items.additionalInfo.eligibility.submitterTransactionIdentifier) responses so you can match results to the check. For example, in the [Poll Batch Checks](https://www.stedi.com/docs/healthcare/api-reference/get-healthcare-polling-eligibility#response.items.submitterTransactionIdentifier) response:

```jsonc
{
  "items": [
    {
      "batchId": "01932c61-2d4f-7d22-85fa-c7db2e13e771",
      "id": "ec_550e8400-e29b-41d4-a716-446655440000", // Unique check ID, generated by Stedi
      "submitterTransactionIdentifier": "ABC123456789", // User-generated transaction identifier, submitted in the batch request
      "eligibilitySearchId": "06956c88-a177-5252-b868-ju4974dd54gh",
      ...
    },
    ...
  ],
  ...
}
```

Both the submitter transaction ID and check ID let you track checks in a batch, but there are some major differences:

| <br><br><br>                    | **Check ID**                                             | **Submitter transaction ID**   |
| ------------------------------- | -------------------------------------------------------- | ------------------------------ |
| **Who generates it**            | Generated by Stedi                                       | Generated by you (the user).   |
| **Scope**                       | Universally unique across Stedi accounts                 | Unique within a batch          |
| **Real-time and batch support** | Supported in both real-time and batch eligibility checks | Only supported in batch checks |

## Try it today

To get started with Stedi, [sign up](https://portal.stedi.com/auth/sign-up-intent) for a free account. It takes less than two minutes. No credit card is required.
