Professional Claims FAQs



Medicare payers accept claims only for subscribers. If you want to submit a dependent claim with a Medicare payer, submit the dependent as a subscriber in the claim request.

How do I access the Professional Claims APIs?

Providers use the Professional Claims APIs to submit their medical procedure claims to their payers.

The /validation endpoint does not send your transaction to the payer. It checks for the correct well-formed syntax of your submission. It does not check the accuracy of the information included in your submission, so you must separately ensure that the claim is complete and accurate before submission.



The /validation and /submission endpoints use the same request model. Avoid sending any claims until you have tested your submission process and validated your claim!

What information goes in the API Request header?

See example in API request header information.

How do I check the Operating Status of the API?

Our /professionalclaims/v3/healthcheck endpoint checks the operating status of the Professional Claims API engine. See example in API Health Check.

Do you have a sandbox that I can test with before signing a contract?

Yes, we do. See Sandbox FAQs and API environments.

What does a typical Professional Claims API request look like?

The Professional Claims API uses a POST request. Responses to our Medical Network APIs can be lengthy due to the many data points that a payer or trading partner provides in the query response. Professional claims can have up to fifty line items (Loop 2400) in the claimInformation object (Loop 2300 in the EDI spec), each of which, reflects payer decisions on payment.

Our APIs translate back-and-forth between JSON and X12 EDI when the information departs into and returns from the medical network. All fields and JSON objects conform to the EDI 837p transaction standard.

Professional Claims API request example

Please see example in Prof. Claims Request and Response.

Example Claim JSON objects

Please see example in Prof. Claims Request and Response.

What do Professional Claims Validation API responses look like?

Please see example in Prof. Claims Request and Response.

What is the claimReference field in the Submission response?

The claimReference field is an object containing the list of identifiers that you can use to track a claim. If questions arise about a claim, you can provide the information listed in the claimReference object to Optum support for troubleshooting purposes. It appears in all submission responses for claims. The list of identifiers may differ depending on the context for the response. Please see example in ClaimReference Field in Submission Response.

claimReference object fields

Please see in ClaimReference Field in Submission Response.

If the Primary claims are sent electronically, will the Secondary/Tertiary claims be sent electronically as well all the time?

For the secondary claim to be paid electronically, the primary payer must accept secondary claim.

These payers can be reviewed in the Payer Finder tool npd or cap. The ‘Accepts Secondary’ column is not automatically displayed. Please see example in Primary, Secondary, and Tertiary Claims.

Do you bill for a failed claim due to technical error?

Every transaction that makes it to the clearinghouse is billable. All errors at the API level, and some errors at the ingress of the clearinghouse, are considered non-billable.

What's the difference between a Professional claim and an Institutional claim?

  • Professional billing typically uses the 837p transaction (or the CMS-1500 form in hard copy)
  • Institutional billings use the 837i transaction

We support both types of electronic claims and transactions. Institutional billing also sometimes encompasses collections while professional claims and billing typically do not.

Professional billing controls the billing of claims generated for work performed by physicians, suppliers, and other non-institutional providers for both outpatient and inpatient services. One commonality: our APIs help support and automate insurance coding for both Institutional and Professional Claims.

A provider has two different teams; one enters the claim and the other verifies and submits it. Before submitting, can they enter the claim, save it and have it released when ready?

Our APIs do not have a caching/drafting feature. Customers can develop and automate this feature. Customers should hold the claims at their end, and programmatically set up a console to separate working on claims from submitting them.

How many line items can be on a single claim?

A single professional claim supports up to 50 service line items (serviceLine).

Are there guidelines for predicting the rate of unique claims submitted for a practice?

Rates of unique claims are isolated to each individual provider. Every provider is different. Whenever you render a medical service, file a claim.

Where can we include the information about the primary claim on the API request for the secondary claim?

Send any payer-specific information in the otherPayerName object. Use otherSubscriberInformation to convey details for the member specifically. For more information Professional Claims JSON-to-EDI Contents.

Are there any other fields in the request body of the Professional Claims to be aware of?

Yes, we have included examples of (Prof. Claims request contents) and Response Contents - Professional Claims.

How to send an EOB from the primary payer with the claim?

Secondary claim information goes in to loop 2320. We do not have any documentation on what is required for secondary claims since that is a billing-specific question. Also, if you want to send the EOB to the payer you need to work with them directly to determine how you want those submitted. To learn more about Billing or Invoice Assistance, check out the last page of the Support & Escalation Guide.

What would be the correct co-insurance amount for Professional (Physician) Visit — Office, for example, for Professional (Physician) Visit — Office but one says 0% and the other says 10%?

Service Types: Professional (Physician) Visit — Office is the correct amount. The other serviceType codes are not Professional Visit and would have a higher percentage based on that payer's response.

Why is the Claim Submission API giving 400 error for the test values?

Error 400 means, there is a missing or invalid data or parameters in the request. Here is a listing of HTTP error responses.

Does Change Healthcare support appeals for denials? Are there any APIs through which these appeals can be submitted?

If a claim is denied or partially paid by a payer, a corrected claim should be sent for additional review. Submitting a corrected claim would require the claim frequency code '7', and the payer claim controlNumber must be included on the claim in the claimControlNumber field in the claimSupplementalInformation.

The claimControlNumber is the number assigned by the payer to identify a claim. Once submitted, the payer will review the claim and make any changes based on their internal review. The claimControlNumber is found on the payer 277 report.

Please see example in Submit Rejected Claims.

How do you re-submit a claim that was denied – Appeal & Denial

Please see example in Submit Rejected Claims.

Is it possible to submit multiple claims at once, in batches?

We do offer batch submissions through SFTP only, our current API does not allow for batch submissions. These would have to be 5010-compliant EDI files. Please reach out to your sales representative to discuss pricing options for SFTP submissions.

When a claim is submitted via the API, the API returns a Change Healthcare claim ID. What API can I use to fetch the payer's claim number before we receive the ERA, ideally the next day after the claim is submitted successfully?

The payer-assigned claim ID would be returned through the SF and SD reports we provide through the responses and reports API. Additionally, you may be able to check the provider portal for the payer for this information.

Can we make multiple claims in one API call? If so, which endpoint should we use?

This is not possible through the current APIs. Only single submission is allowed. You can submit batch through SFTP but the batch file would need to be in X12 formats. Here is documentation that describes the available reports.

I am developing an application that will replace the old paper forms and start using the Professional Claim API. I cannot find the Prior Authorization Number.

Please see example in Find Prior Authorization Number.

How to handle multiple authorization numbers per claim?

If the Institutional Claims required multiple authorization numbers, multiple claims need to be submitted. Submission through the Professional API allows for prior authorization information to be submitted at both the claim and line level Institutional Claims APIs allows for prior authorization information to be submitted at the claim level only. Please see example in Handle Multiple Authorization Numbers per Claim.

I sometimes get back errors from the payer like: "Loop 2310B (rendering provider name) is missing, it is expected to be used when loop 2420A is used with the same value in every loop 2400". How can I send the rendering provider in loop 2310B?

See Provider object in Request Body Parameters.

For EDI claims, where can I put the session times in Loop 2400 for each individual line in the claim request when using the claims API?

In the developers portal's JSON-to-EDI mapping, scroll down to Loop 2400 to view different SV segments.

How to avoid the error "Other Payer Primary ID# is Missing or Invalid" when the other payer doesn't have a payer ID and for which the claims are set up to be sent by paper?

Please see error example in Other Payer Primary ID is Missing or Invalid.

What is Professional Claims API and what is it used for?

Please see Professional Claims V3 Getting Started.

I am trying to test out a scenario where the clinic would enter a specific service type code and want to get patient benefits for that specific service code?

All of our Sandbox API Values and Test Responses are real payer responses that have been de-identified and emulated. The only value that affects the response in sandbox is the tradingPartnerServiceId. You can receive different responses by switching that out, but the responses will not vary if you change other values, such as the serviceTypeCode.

Is a list of Eligibility AAA errors with a description available?

Yes, here is a list of AAA error codes.

Does the Revenue Performance Advisor work with claims submitted with the API as well as claims submitted through the revenue advisor interface?

Only the Eligibility API works with Revenue Performance Advisor. Our claims APIs currently route to another one of our switches, this will be considered for a future enhancement.

My client would be billing her clients for the visit which is not a professional/specialist visit but more like evaluation and management services that come under CPT 99214. Other than 98 (Professional physician visit-office), any other code I can use?

Include serviceTypeCode 30 to pull back all benefit information.

What is the Claim submission flow in Change Healthcare?

Please see example in Claim Submission Workflow.

Do we need to use same control ID for a claim in submission and checking its claim status?

The controlNumber should be unique for each individual submission.

How can I add modifiers to the services/procedures/other codes of a claim? How can you express that a CPT code had to be added to a claim so that the payer have sufficient support or their adjudication?

Please example in Prof. Claims Add Modifiers to Services/Procedures/other Codes of a Claim.

Can the modifier code be added to the first submission or I need to submit another claim with frequency code 7, just to add the modifier?

We are not able to say if a code would be 'required'; it will vary from payer-to-payer. However, you can add a modifier to the initial claim in the professionalService object from the Professional Claims JSON-to-EDI Mapping Guide's procedureModifier.

Provide the source to obtain the master list related to CMS1500/UB04 Claims forms.

  • 1500 is a medical claim (Professional)
  • UB04 is hospital claim (Institutional)
  • 837P is a 1500 Medical Claims
  • 837I is a UB04 Hospital claims

When paper is sent, a 1500 form is used for Medical claims and UB04 for Hospital. We do not have a master list of information. The information is common across the medical industry and there are many crosswalks or sites you can find, which map the paper claim locations to a 837.

Is there any field other than the patient_control_number field in claims payload that can associate the Claims to the ERA? I need the field to come back in the ERA.

The patientControlNumber is typically the main identifier, which is used in tracking claims through to payment. The Patient Control number can be up to 38 alphanumeric characters, and should be unique per submission. Additionally, you can submit a providerControlNumber (API KEY)/LINE ITEM CONTROL NUMBER (5010 X12). The providerControlNumber must be unique within a patient control number. Payers are required to return this number in the remittance advice transaction (835) if the provider sends it to them in the 837. However, please note this is dependent on the claim adjudication being done on a service line level basis.

Are the address1 and City fields, which are part of the payerAddress object necessary when submitting the claim? Where can the address information be obtained for the payers listed in the ConnectCenter Payer list?

The payer address is not required when submitting claims electronically. The payer address information is required only if a claim was intended to be submitted through paper. We route transactions based on the CPID, which is the tradingPartnerServiceId submitted in the request.

Is the usageIndicator field validated by the clearinghouse and/or payers? Is submitting real data with a "T" usageIndicator value a valid way to test production data without actually submitting it for processing? How is this field interpreted?

Yes, sending a claim with the "T" usageIndicator is a valid way to test production data without submitting for processing. For more information, see Test Production Data without Submitting for Processing.

Invoking the submission API shows "invalid_request" as response.

Please make sure that the API you are trying to test is added to your sandbox entitlement/credentials. And please remember that within the sandbox environment, you can only test with our predefined values and responses. With claims, you can do more thorough testing with live data being sent to the production endpoint, but be sure to specify the usage indicator to 'T' (test). The JSON would be: usageIndicator: "T". This way, it will not go to the payers.

Either organizationName is null Or lastName and firstName is null. If lastName and firstName is not null, middleName may or may not be null?

This issue might be due to either the organization or individual provider information being sent on a transaction. Only one of these sets is allowed per provider object, you would need to send either the organization or individual provider (first name, last name) not both for the same provider object.

Is there a page that shows how to generate different error responses while using professional claim validation API and professional claim submission API?

The /validation endpoint does not send your transaction to the payer. It checks for the correct well-formed syntax of your submission. It does not check the accuracy of the information included in your submission, so you must separately ensure that the claim is complete and accurate before submission. The /submission endpoint would be the primary method of test claim data. If you submit usageIndicator: "T", the production transition will be flagged as a test claim and will not be sent to the payer.

What is diagnosisCodePointers in compositeDiagnosisCodePointers object in professional claim validation API?

The Diagnosis Pointer relates to the reason for which the service was performed. This first pointer designates the primary diagnosis for this EQ segment. Remaining diagnosis pointers indicate declining level of importance to the EQ segment. Acceptable values are 1 through 8, and correspond to Composite Data Elements 01 through 08 in the Health Care Diagnosis Code HI segment in loop 2100C. A maximum of four diagnosis pointers may be entered per line. For example, in the following snippet: "compositeDiagnosisCodePointers": {"diagnosisCodePointers": ["1", "2"], the first pointer designates the primary diagnosis for this service line and the remaining diagnosis pointers indicate declining level of importance to service line. Up to 8 CPT codes can be sent.

You can find more information here.

Related Topics