Institutional Claims
This is a BETA endpoint. We may make backwards incompatible changes.
This endpoint sends 837I (institutional) claims to payers.
- Call this endpoint with a JSON payload.
- Stedi translates your request to the 837 X12 EDI format and sends it to the payer.
- The endpoint returns a response from Stedi in JSON format containing information about the claim you submitted and whether the submission was successful.
This endpoint is a direct replacement for the Change/Optum Institutional Claim Submission API.
Send test claims
All claims you submit through this endpoint are sent to the payer as production claims unless you explicitly designate them as test data.
To send test claims, set the usageIndicator
field in the test claim to T
. This allows you to filter for test claims on the Transactions page in the Stedi app.
Note that you will receive a 277 Claim Acknowledgment in response to test claims, allowing you to test your workflow end to end, but you will not receive a test 835 (ERA) response.
Basic claim submission
The content of your claim submission depends on your use case and the payer’s requirements. However, a basic claim submission includes the following information in the request body:
Information | Description | |
---|---|---|
tradingPartnerServiceId | This is the Payer ID. Visit the Payer Network for a complete list. You can also use the same payer IDs you used for CHC eligibility checks. | |
submitter object | Information about the entity submitting the healthcare claim. This is an organization, such as a hospital or other treatment center. | |
receiver object | Information about the entity responsible for the payment of the claim, such as an insurance company or government agency. | |
subscriber and/or dependent objects | Information about the patient who received the medical services. Note that if a dependent has their own, unique member ID for their health plan, you should submit their information in the subscriber object and omit the dependent object from the request. You can check whether the dependent has a unique member ID by submitting an Eligibility Check to the payer for the dependent. The payer will return the member ID in the dependents.memberId field, if present. | |
claimInformation object | Information about the claim, such as the claim filing code (identifies the type of claim), claim charge amount, and place of service code. It also includes information about each individual service line included in the claim. | |
Billing provider | You must supply information about the billing provider in either the providers or billing object. This includes the provider’s NPI, name, and other information. |
Character restrictions
Don’t include the following characters in your request data: ~
, *
, :
and ^
. They are reserved for delimiters in the resulting X12 EDI transaction, and X12 doesn’t support using escape sequences to represent delimiters or special characters. Stedi returns a 400
error if you include these restricted characters in your request.
Identify service lines
A claim can contain multiple service lines. Since the payer may accept, reject, or pay a subset of those lines, you can receive an 835 response that references a patientControlNumber
, but only pertains to some of the service lines.
However, the claimInformation.serviceLines.lineItemControlNumber
serves as a unique identifier for each service line in your claim submission. This value appears in the 277CA and 835 ERA responses as the lineItemControlNumber
, allowing you to correlate these responses to specific service lines from the original claim. We strongly recommend setting the lineItemControlNumber
to a ULID or other unique identifier for each service line. We recommend using a ULID instead of a UUID because the property has a max of 30 characters.
Conditional requirements
Note that objects marked as required are required for all requests, while others are conditionally required depending on the circumstances. When you include a conditionally required object, you must include all of its required properties.
For example, you must always include the subscriber
object in your request, but you only need to include the supervising
object when the rendering provider is supervised by a physician.
Authorizations
A Stedi API Key for authentication.
Headers
The outbound transaction setting ID. This option only needs to be specified if you're using a non-default release of the Institutional Claims guide.
Body
A nine-digit number that uniquely identifies the transaction. You must use exactly nine numbers in this property - letters or other types of characters return an error. Stedi autogenerates a control number for you if you don't set one.
This is the Payer ID. Visit the Payer Network for a complete list. You can send requests using the Primary Payer ID, the Stedi Payer ID, or any alias listed in the payer record.
The entity submitting the healthcare claim. This is an organization, such as a hospital or other treatment center.
The entity responsible for the payment of the claim, such as an insurance company or government agency.
The person or entity who is the primary policyholder for the health plan or a dependent with their own member ID. When a dependent has a unique, payer-assigned member ID, treat them as the subscriber for the claim submission - include their information here and omit the dependent
object from the request.
Dependent who received the medical care associated with the claim. Note that if the dependent has their own member ID for the health plan, you should include the dependent's information in the subscriber
object instead. To check whether a dependent has a member ID, submit an Eligibility Check to the payer. The payer returns the dependent's member ID in the dependents.memberId
property in the response, if present.
Another way to send information for each provider relevant to the claim. This object overwrites the information you send in the billing
, referring
, rendering
, and attending
objects. Note that your request must include information about the billing provider either here or within the billing
object.
Use for subrogation payment requests. If you include this information, you must also set the claimInformation.otherSubscriberInformation.payerPaidAmount
to the amount the payer (for example, Medicaid) actually paid.
Use when the address for payment is different than that of the billing provider for this claim.
Information about the individual with primary responsibility for performing the surgical procedure(s) listed in the claim. Required when a surgical procedure code is listed on the claim. Use this object for operating physicians that apply to the entire claim.
Information about any other operating physician involved in the surgical procedures listed in the claim. Required when another operating physician is involved in the surgical procedures listed in the claim. Use this object for physicians that apply to the entire claim.
Information about the healthcare claim. Note that the objects and properties marked as required are required for all claims, while others are conditionally required, depending on type of claim and claim circumstances. For example, you must always provide the claimChargeAmount
, but you only need to provide the otherSubscriberInformation
object in coordination of benefits scenarios. When you include a conditionally required object, you must provide all of its required properties.
Address information for the entity responsible for payment of the claim, listed in the receiver
object.
Whether you want to send a test or production claim. This property also allows you to filter claims in the Stedi app by production or test data. By default, this property is set to P
for production data. Use T
to desginate a claim as test data.
Information about the billing provider. For tax identification, you must include either the provider's Social Security Number (SSN) or their Employer Identification Number (EIN), but not both. Note that the provider's 10-digit National Provider Identifier (NPI) is also required, if one is assigned.
Information about the provider who referred the patient for care. Include this object only when the referring provider is different than the provider listed in the attending
object. Use this object for providers that apply to the entire claim.
Information about the provider who delivered the medical services or non-surgical procecures listed in the claim. Include this object when the rendering provider is different than the provider listed in the attending
object AND when state or federal regulatory requirements call for a combined claim. A combined claim includes both facility and professional components, such as a Medicaid clinic bill or a critical access hospital claim. Use this object for providers that apply to the entire claim.
Information about the individual who has overall responsibility for the patient's medical care and treatment reported in the claim. This object is required when the claim contains any services other than non-scheduled transportation claims.
This is the payer's business name, like Cigna or Aetna.
Response
The status of the claim submission.
An identifier for the transaction.
An ID for the payer you identified in the original claim. This value may differ from the tradingPartnerServiceId
you submitted in the original request because it reflects the payer's internal concept of their ID, not necessarily the ID Stedi uses to route requests to this payer.
Information about the claim.
A list of errors. Currently not used.
A 200
response indicates that Stedi successfully generated the X12 EDI claim format required by the payer. It does not indicate whether the payer has accepted the claim - the payer will respond later with a 277CA containing this information. Learn more about 277CAs. A 400
response indicates one or more problems with the claim data in the request. Examples include missing required fields, invalid values, or incorrect data types. The response includes a message describing the problem.
200 OK
, 400 BAD_REQUEST
Metadata from Stedi about the request.
Currently not used.
Currently not used.
Information about the payer for the submitted claim.
Currently not used.
Was this page helpful?