POST
/
change
/
medicalnetwork
/
professionalclaims
/
v3
/
submission

This endpoint sends 837P (professional) claims to payers. Visit Submit claims for a full how-to guide.

  • 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 Healthcare (CHC) Claim Submission API.

Enable clearinghouse

Before you can send claims, you must enable the Stedi clearinghouse in your account. Go to EDI Settings and click Enable Stedi Clearinghouse.

Stedi automatically configures the necessary settings to send test and production claims and receive 277 and 835 payer responses.

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.

Therefore, even though it is technically an optional field, we strongly recommend including the provider control number as a unique identifier for each service line in your claim submission. This value appears in the 835 response as the lineItemControlNumber, allowing you to correlate the 835 response to the specific service lines from the original claim.

Test claims

To send test claims:

  • Set the Stedi-Partnership-Id header to local-clearinghouse-test. Stedi processes your payload as a test claim and doesn’t send it to the payer.
  • Set the Stedi-Transaction-Setting-Id header to 005010X222A1-837.
  • 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.

Authorizations

Authorization
string
headerrequired

API key authentication via the 'Authorization' header

Headers

Stedi-Partnership-Id
string
required

The partnership ID. Set this to local-clearinghouse for production claims or local-clearinghouse-test for test claims.

Stedi-Transaction-Setting-Id
string
required

The outbound transaction setting ID. Set this to 005010X222A1-837, unless support has specifically instructed you to use a different value.

Body

application/json
controlNumber
string

Not currently used.

tradingPartnerServiceId
string
required

This is the Payer ID. Visit the Payer Network for a complete list.

submitter
object
required

The entity submitting the healthcare claim. This can be either an individual or an organization, such as a doctor, hospital, or insurance company.

receiver
object
required

The entity responsible for the payment of the claim, such as an insurance company or government agency.

subscriber
object
required

The person or entity who is the primary policyholder for the insurance plan.

dependent
object

Dependents of the subscriber who received the medical care associated with the healthcare claim.

providers
object[]

Deprecated; please set all providers individually by type. For example, Referring.

claimInformation
object
required

Information about the healthcare claim.

payToAddress
object
payToPlan
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.

payerAddress
object
usageIndicator
string

The Interchange Usage Indicator (ISA-15) in the X12 EDI file. You only need to set this field if you want to be able to filter claims in the Stedi app by production or test data. By default, this field is set to P for production data. Use T to designate a file as test data.

billing
object
required

Information about the billing provider.

referring
object

Information about the referring provider.

rendering
object

Information about the person or company (laboratory or other facility) who rendered the care. Use this object for all types of rendering providers including laboratories. When a substitute provider (locum tenens) was used, enter that provider's information here.

ordering
object

Deprecated; please use ClaimInformation.serviceLines.orderingProvider instead.

supervising
object

The entity responsible for supervising the healthcare services provided. Applies when the rendering provider is supervised by a physician.

tradingPartnerName
string
required

This is the Payer ID. Visit the Payer Network for a complete list.

Response

200 - application/json
status
string

The status of the claim submission.

controlNumber
string

An identifier for the transaction.

tradingPartnerServiceId
string

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.

claimReference
object

Information about the claim.

errors
object[]

A list of errors. Currently not used.

httpStatusCode
enum<string>
Available options:
100 CONTINUE,
101 SWITCHING_PROTOCOLS,
102 PROCESSING,
103 CHECKPOINT,
200 OK,
201 CREATED,
202 ACCEPTED,
203 NON_AUTHORITATIVE_INFORMATION,
204 NO_CONTENT,
205 RESET_CONTENT,
206 PARTIAL_CONTENT,
207 MULTI_STATUS,
208 ALREADY_REPORTED,
226 IM_USED,
300 MULTIPLE_CHOICES,
301 MOVED_PERMANENTLY,
302 FOUND,
302 MOVED_TEMPORARILY,
303 SEE_OTHER,
304 NOT_MODIFIED,
305 USE_PROXY,
307 TEMPORARY_REDIRECT,
308 PERMANENT_REDIRECT,
400 BAD_REQUEST,
401 UNAUTHORIZED,
402 PAYMENT_REQUIRED,
403 FORBIDDEN,
404 NOT_FOUND,
405 METHOD_NOT_ALLOWED,
406 NOT_ACCEPTABLE,
407 PROXY_AUTHENTICATION_REQUIRED,
408 REQUEST_TIMEOUT,
409 CONFLICT,
410 GONE,
411 LENGTH_REQUIRED,
412 PRECONDITION_FAILED,
413 PAYLOAD_TOO_LARGE,
413 REQUEST_ENTITY_TOO_LARGE,
414 URI_TOO_LONG,
414 REQUEST_URI_TOO_LONG,
415 UNSUPPORTED_MEDIA_TYPE,
416 REQUESTED_RANGE_NOT_SATISFIABLE,
417 EXPECTATION_FAILED,
418 I_AM_A_TEAPOT,
419 INSUFFICIENT_SPACE_ON_RESOURCE,
420 METHOD_FAILURE,
421 DESTINATION_LOCKED,
422 UNPROCESSABLE_ENTITY,
423 LOCKED,
424 FAILED_DEPENDENCY,
425 TOO_EARLY,
426 UPGRADE_REQUIRED,
428 PRECONDITION_REQUIRED,
429 TOO_MANY_REQUESTS,
431 REQUEST_HEADER_FIELDS_TOO_LARGE,
451 UNAVAILABLE_FOR_LEGAL_REASONS,
500 INTERNAL_SERVER_ERROR,
501 NOT_IMPLEMENTED,
502 BAD_GATEWAY,
503 SERVICE_UNAVAILABLE,
504 GATEWAY_TIMEOUT,
505 HTTP_VERSION_NOT_SUPPORTED,
506 VARIANT_ALSO_NEGOTIATES,
507 INSUFFICIENT_STORAGE,
508 LOOP_DETECTED,
509 BANDWIDTH_LIMIT_EXCEEDED,
510 NOT_EXTENDED,
511 NETWORK_AUTHENTICATION_REQUIRED
meta
object

Metadata from Stedi about the request.

editStatus
string

Currently not used.

editResponses
object[]

Currently not used.

payer
object

Information about the payer for the submitted claim.

failure
object

Currently not used.