Batch Eligibility Check
Submit multiple eligibility checks for Stedi to process asynchronously
/eligibility-manager/batch-eligibility
You may want to periodically conduct asynchronous batch eligibility checks for your entire patient population or a subset of patients, such as those who have active care plans or who have future services scheduled. These data refreshes allow you to proactively reach out to patients when they lose or change coverage.
- Call this endpoint with a JSON payload containing one or more eligibility checks. You can submit up to 1,000 individual eligibility checks within a single batch, and you can submit as many batches as you need to process.
- The endpoint returns a synchronous response containing a
batchId
that you can use to retrieve the results of these checks later, using the Poll Batch Eligibility Checks endpoint. - Stedi translates each eligibility check included in the request to the X12 270 EDI format and sends it to the appropriate payer.
Visit Batch refresh checks for a complete how-to guide.
Start with real-time checks
Batch checks have a longer feedback cycle than real-time checks because you don’t receive the payer’s response immediately. That’s why we strongly recommend starting with real-time checks when integrating with a new payer or working with eligibility checks for the first time. To perform synchronous eligibility checks, use the Real-Time Eligibility Check endpoint.
A Stedi API Key for authentication.
Body
Each entry in this array represents a single eligibility check. You can submit up to 1,000 eligibility checks in a single request. Warning: If any of the individual checks contain invalid JSON data, such as missing required properties or invalid values, Stedi rejects the entire batch with a 400
status code and returns errors to help you correct the issues.
The name that Stedi will use when displaying this batch on the Eligibility check batches page. It must be unique within your Stedi account. If you don't specify a name, Stedi sets this property to the autogenerated batchId
returned in the response.
- Pattern:
^[a-zA-Z0-9-_]{1,100}$
Response
BatchEligibilityChecks 200 response
An identifier for this batch of eligibility checks. You can use this identifier to retrieve the results of this batch using the Poll Batch Eligibility Checks endpoint.
The date and time that the batch of eligibility checks was submitted to Stedi for processing.
- Format:
date-time
curl --request POST \
--url "https://manager.us.stedi.com/2024-04-01/eligibility-manager/batch-eligibility" \
--header "Authorization: <api_key>" \
--header "Content-Type: application/json" \
--data '{
"items": [
{
"controlNumber": "000022222",
"encounter": {
"serviceTypeCodes": [
"MH"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "ABC123456789",
"subscriber": {
"dateOfBirth": "19000101",
"firstName": "Jane",
"lastName": "Doe",
"memberId": "1234567890"
},
"tradingPartnerServiceId": "AHS"
},
{
"controlNumber": "333344444",
"encounter": {
"serviceTypeCodes": [
"78"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "DEF123456799",
"subscriber": {
"dateOfBirth": "19001021",
"firstName": "John",
"lastName": "Doe",
"memberId": "1234567892"
},
"tradingPartnerServiceId": "AHS"
}
],
"name": "march-2024-eligibility-batch"
}'
const body = JSON.stringify({
"items": [
{
"controlNumber": "000022222",
"encounter": {
"serviceTypeCodes": [
"MH"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "ABC123456789",
"subscriber": {
"dateOfBirth": "19000101",
"firstName": "Jane",
"lastName": "Doe",
"memberId": "1234567890"
},
"tradingPartnerServiceId": "AHS"
},
{
"controlNumber": "333344444",
"encounter": {
"serviceTypeCodes": [
"78"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "DEF123456799",
"subscriber": {
"dateOfBirth": "19001021",
"firstName": "John",
"lastName": "Doe",
"memberId": "1234567892"
},
"tradingPartnerServiceId": "AHS"
}
],
"name": "march-2024-eligibility-batch"
})
fetch("https://manager.us.stedi.com/2024-04-01/eligibility-manager/batch-eligibility", {
headers: {
"Authorization": "<api_key>"
},
body
})
package main
import (
"fmt"
"net/http"
"io/ioutil"
"strings"
)
func main() {
url := "https://manager.us.stedi.com/2024-04-01/eligibility-manager/batch-eligibility"
body := strings.NewReader(`{
"items": [
{
"controlNumber": "000022222",
"encounter": {
"serviceTypeCodes": [
"MH"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "ABC123456789",
"subscriber": {
"dateOfBirth": "19000101",
"firstName": "Jane",
"lastName": "Doe",
"memberId": "1234567890"
},
"tradingPartnerServiceId": "AHS"
},
{
"controlNumber": "333344444",
"encounter": {
"serviceTypeCodes": [
"78"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "DEF123456799",
"subscriber": {
"dateOfBirth": "19001021",
"firstName": "John",
"lastName": "Doe",
"memberId": "1234567892"
},
"tradingPartnerServiceId": "AHS"
}
],
"name": "march-2024-eligibility-batch"
}`)
req, _ := http.NewRequest("POST", url, body)
req.Header.Add("Authorization", "<api_key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
import requests
url = "https://manager.us.stedi.com/2024-04-01/eligibility-manager/batch-eligibility"
body = {
"items": [
{
"controlNumber": "000022222",
"encounter": {
"serviceTypeCodes": [
"MH"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "ABC123456789",
"subscriber": {
"dateOfBirth": "19000101",
"firstName": "Jane",
"lastName": "Doe",
"memberId": "1234567890"
},
"tradingPartnerServiceId": "AHS"
},
{
"controlNumber": "333344444",
"encounter": {
"serviceTypeCodes": [
"78"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "DEF123456799",
"subscriber": {
"dateOfBirth": "19001021",
"firstName": "John",
"lastName": "Doe",
"memberId": "1234567892"
},
"tradingPartnerServiceId": "AHS"
}
],
"name": "march-2024-eligibility-batch"
}
response = requests.request("POST", url, json = body, headers = {
"Authorization": "<api_key>",
"Content-Type": "application/json"
})
print(response.text)
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.time.Duration;
import java.net.http.HttpRequest.BodyPublishers;
var body = BodyPublishers.ofString("""{
"items": [
{
"controlNumber": "000022222",
"encounter": {
"serviceTypeCodes": [
"MH"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "ABC123456789",
"subscriber": {
"dateOfBirth": "19000101",
"firstName": "Jane",
"lastName": "Doe",
"memberId": "1234567890"
},
"tradingPartnerServiceId": "AHS"
},
{
"controlNumber": "333344444",
"encounter": {
"serviceTypeCodes": [
"78"
]
},
"provider": {
"npi": "1234567891",
"organizationName": "ACME Health Services"
},
"submitterTransactionIdentifier": "DEF123456799",
"subscriber": {
"dateOfBirth": "19001021",
"firstName": "John",
"lastName": "Doe",
"memberId": "1234567892"
},
"tradingPartnerServiceId": "AHS"
}
],
"name": "march-2024-eligibility-batch"
}""");
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10))
.build();
HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
.uri(URI.create("https://manager.us.stedi.com/2024-04-01/eligibility-manager/batch-eligibility"))
.header("Content-Type", "application/json")
.header("Authorization", "<api_key>")
.POST(body)
.build();
try {
HttpResponse<String> response = client.send(requestBuilder.build(), BodyHandlers.ofString());
System.out.println("Status code: " + response.statusCode());
System.out.println("Response body: " + response.body());
} catch (Exception e) {
e.printStackTrace();
}
{
"fieldList": [
{
"message": "string",
"path": "string"
}
],
"message": "string"
}
{
"code": "string",
"message": "string"
}
{
"code": "string",
"message": "string"
}
{
"code": "string",
"message": "string"
}
{
"code": "string",
"message": "string"
}
{
"code": "string",
"message": "string"
}