NAV Navbar
cURL Python Ruby C# Java Swift

Overview

The PokitDok API allows you to transmit X12 transactions, schedule appointments into a number of EMRs, as well as search our curated databases of healthcare providers, procedure pricing, medical procedure codes, and more. The API is designed according to REST (Representational State Transfer) principles. The API uses JavaScript Object Notation (JSON) for requests and responses, and also allows batch processing of ASC X12 5010 compatible EDI files. All API traffic is encrypted over HTTPS and authentication is handled with OAuth2.

Client Libraries

To simplify authorization and access to the PokitDok API, we provide client libraries for a number of programming languages. These libraries offer full access to the PokitDok API with a minimum of code, usually just a few lines. These libraries are hosted on PokitDok’s Github repo.

Fully Supported Languages  
Python pokitdok-python
Ruby pokitdok-ruby
Java pokitdok-java
C# pokitdok-csharp
Available languages  
PHP pokitdok-php
NodeJS pokitdok-nodejs
Swift pokitdok-swift
Salesforce Apex pokitdok-apex

The following sections go into further detail on the underlying details of connecting directly to the PokitDok API. This is of use if you’re implementing the APIs in a programming language for which we currently don’t have a client library.

Available API Endpoints

Activities

Example fetching activities for the current application:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" https://platform.pokitdok.com/api/v4/activities/
client.activities()
client.activities
client.activities();
client.activities();
try client.activities()

Example response:

[
  {
    "units_of_work": 1,
    "_type": "PlatformActivityModel",
    "name": "activities",
    "remaining_transitions": [
      "process",
      "complete"
    ],
    "_uuid": "c0aadbbc-c51f-472f-9bfe-4dc2789c2d70",
    "state": {
      "name": "init",
      "title": "Initializing"
    },
    "trading_partner_id": "PokitDok",
    "id": "5745bbdd0640fd3a8186d5d6",
    "transition_path": [
      "process",
      "complete"
    ]
  }
]

Example fetching information for a specific activity:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" https://platform.pokitdok.com/api/v4/activities/5317f51527a27620f2ec7533
client.activities(activity_id='5362b5a064da150ef6f2526c')
client.activities({activity_id: '5362b5a064da150ef6f2526c'})
client.activities("5362b5a064da150ef6f2526c");
HashMap<String, String> params = new HashMap<String, String>();
params.add("activity_id", "5362b5a064da150ef6f2526c");
client.activities(params);
try client.activities(activityId: "5362b5a064da150ef6f2526c")

Example response:

{
  "units_of_work": 1,
  "_type": "PlatformActivityModel",
  "name": "activities",
  "_uuid": "4c309a6b-1330-40d7-850b-19246a753162",
  "state": {
    "name": "completed",
    "title": "Completed"
  },
  "trading_partner_id": "PokitDok",
  "id": "5745e9920640fd7aa95935f5",
  "transition_path": [
    "process",
    "complete"
  ],
  "history": [
    {
      "record_dt": "2016-05-25T18:06:11.239000",
      "name": "init",
      "title": "Initializing"
    },
    {
      "record_dt": "2016-05-25T18:06:11.239000",
      "name": "processing",
      "title": "Processing transactions"
    }
  ]
}

Example to cancel an existing activity:

curl -XPUT -i -H "Content-Type: application/json"
-H "Authorization: Bearer $ACCESS_TOKEN"
-d '{"transition": "cancel"}' https://platform.pokitdok.com/api/v4/activities/5317f51527a27620f2ec7533
url = '/activities/574749250640fd22d719e13f'
client.put(url, data={'transition': 'cancel'})
url = '/activities/5776759b0640fd278d20ce8e'
results = client.request(url, 'PUT', nil, {transition: 'cancel'})
string endpoint = "/activities/574da3720640fd092ca61b24";
string method = "PUT";
Dictionary<string, object> data = new Dictionary<string, object> {
  { "transition", "cancel" }
};
client.request(endpoint, method, data);
// Currently not supported in this language.
let data = ["transition": "cancel"] as [String: Any]
try client.activities(activityId: "5362b5a064da150ef6f2526c", params: data)

Example response:

{
  "_type": "PlatformActivityModel",
  "_uuid": "bca3cca7-ad83-43a0-8ca6-adcb1222487a",
  "history": [
    {
      "name": "init",
      "record_dt": "2016-05-26T19:06:13.798000",
      "title": "Initializing"
    },
    {
      "name": "scheduled",
      "record_dt": "2016-05-26T19:07:07.693892",
      "title": "Scheduled for next available transmission to Trading Partner"
    },
    {
      "name": "canceled",
      "record_dt": "2016-05-26T19:07:07.695615",
      "title": "Canceled"
    }
  ],
  "id": "574749250640fd22d719e13f",
  "name": "claims",
  "parameters": {
    "async": true,
    "billing_provider": {
      "address": {
        "address_lines": [
          "8311 WARREN H ABERNATHY HWY"
        ],
        "city": "SPARTANBURG",
        "state": "SC",
        "zipcode": "29301"
      },
      "first_name": "Elizabeth",
      "last_name": "Blackwell",
      "npi": "1234567893 ",
      "tax_id": "123456789",
      "taxonomy_code": "207Q00000X"
    },
    "claim": {
      "claim_frequency": "original",
      "direct_payment": "y",
      "information_release": "informed_consent",
      "place_of_service": "office",
      "plan_participation": "assigned",
      "provider_signature": true,
      "service_lines": [
        {
          "charge_amount": "60.0",
          "diagnosis_codes": [
            "487.1"
          ],
          "procedure_code": "99213",
          "service_date": "2014-06-01",
          "unit_count": "1.0",
          "unit_type": "units"
        }
      ],
      "total_charge_amount": "60.0",
      "value_information": [
        {
          "value": "99999999999999999",
          "value_type": "service_furnished_location_number"
        }
      ]
    },
    "correlation_id": "6bdf5dc0-6840-4466-a802-18056fe41aee",
    "generate_pdf": false,
    "payer": {
      "id": "MOCKPAYER",
      "organization_name": "MOCKPAYER"
    },
    "receiver": {
      "id": "MOCKRECEIVER",
      "organization_name": "MOCKRECEIVER"
    },
    "submitter": {
      "email": "support@pokitdok.com",
      "id": "POKITDOKTEST",
      "organization_name": "POKITDOK TESTING"
    },
    "subscriber": {
      "address": {
        "address_lines": [
          "123 N MAIN ST"
        ],
        "city": "SPARTANBURG",
        "state": "SC",
        "zipcode": "29301"
      },
      "birth_date": "1977-01-01",
      "first_name": "John",
      "gender": "male",
      "last_name": "Doe",
      "member_id": "W000000001",
      "payer_responsibility": "primary"
    },
    "trading_partner_id": "MOCKPAYER",
    "transaction_code": "chargeable"
  },
  "state": {
    "name": "canceled",
    "title": "Canceled"
  },
  "trading_partner_id": "MOCKPAYER",
  "transition_path": [
    "schedule",
    "generate",
    "store",
    "transmit",
    "wait",
    "receive",
    "process",
    "complete"
  ],
  "units_of_work": 1,
  "callback_error": "Unable to POST data to the specified callback_url: https://testcallback/claims. Error: ('Connection aborted.', BadStatusLine(\"''\",))"
}

Available modes of operation: real-time

The Activities endpoint is used to track the life cycle of a transaction. Results returned will follow the states through which an Activity flows in the PokitDok platform. Long-running operations are performed asynchronously. Upon initiating those operations via an API endpoint, activity tracking information is returned to the caller, which can be used to query the status of the activity later on.

Endpoint Description

Available Activity Endpoints:

Endpoint HTTP Method Description
/activities/ GET List current activities. A query string parameter ‘parent_id’ may also be used with this API to get information about sub-activities that were initiated from a batch file upload.
/activities/{id} GET Return detailed information about the specified activity. API applications will receive an activity ID in the API response for all operations that are asynchronous.
/activities/{id} PUT Used for canceling activities that a client application no longer wishes to execute. This functionality cannot be used for activities after they have left a scheduled state and been transmitted to the trading partner.

Response

The /activities/ response includes the following fields:

Field Type Description
callback_url {string} The URL that will be invoked to notify the client application that this Activity has completed. You must use https for callback URLs used by your application. For added security, a callback URL can be defined in the application.
callback_error {string} Displays the error information associated with a failed callback attempt.
created_date {string} The date/time that the activity was created on the platform.
history {object array} Historical status of the progress of this Activity.
history.record_dt {datetime} The date time associated with the history. In ISO8601 format (YYYY-MM-DDThh:mm:ss.ssssss).
history.name {string} State name associated with the history.
history.title {string} State title associated with the history.
id {string} ID of this Activity.
last_updated_date {string} The date/time that the activity was last updated by the platform.
name {string} Activity name.
trading_partner_id {string} Unique id for the intended trading partner, as specified by the Trading Partners endpoint.
parent_id {string} Id only present on sub-activities that were initiated via a batch file upload of activities.
parameters {dict} The parameters that were originally supplied to the activity.
remaining_transitions {array} The list of remaining state transitions that the activity has yet to go through.
result {dict} The result of the activity processing. This will be populated with the latest response from a trading partner.
result_history {object array} A list of result values that have been received from a trading partner. This list will be present when a request results in more than one response from a trading partner. The most recent response will always be available in the result field for convenience.
result_history.result {dict} The result associated with the result.
result_history.record_dt {datetime} The date time associated with the result. In ISO8601 format (YYYY-MM-DDThh:mm:ss.ssssss).
state {dict} Current state of this Activity.
transition_path {array} The list of state transitions that will be used for this Activity.
units_of_work {int} The number of ‘units of work’ that the activity is operating on. This will typically be 1 for real-time requests like /eligibility/.
tracking_description {string} A value that summarizes the tracking/outcome of long running transactions like claims. It’s currently only supported on claims activities. Possible values can be found in the Tracking Descriptions table
payment_id {string} A unique identifier used to reference payment details associated with the Platform Activity. This value is supported on claims activities where claim payments, or ERAs, are processed. The payment_id may be used to lookup payment details using the /payments API.

Additional Object Tables

Throughout processing, activities may transition through the following states:

State Description
init The activity is initializing.
queued The activity is in queue waiting to start/resume.
scheduled The activity is scheduled for the next available transmission to the trading partner.
generating The activity is generating X12 transactions.
processing The activity is processing X12 transactions that have been received.
fallback The activity is enacting fallback action.
transmitting The activity is transmitting X12 transactions to the trading partner.
waiting The activity is waiting on a trading partner response.
receiving The activity is receiving X12 transactions from a trading partner.
paused The activity is paused.
notifying The activity is notifying the client application about activity results if a callback url was defined in the request.
stored The activity has stored uploaded batch transactions for later processing.
completed The activity has received acknowledgement by the trading partner. Completed activities may receive additional responses.
canceled The activity was canceled by the client application.
failed The activity was unable to process successfully.
rejected The activity has been rejected by the trading partner for reasons outlined in the response.
rejected_reviewed The activity has been rejected by the trading partner and reviewed for errors by the PokitDok team.

Tracking Description Table

Tracking descriptions summarize the tracking/outcome of claims:

Tracking Description Description
submitting Claim is in the process of being submitted to payer
waiting Claim is awaiting response from payer
acknowledged Payer has acknowledged receipt of claim
paid Claim has been at least partially paid by payer
paid_in_full Total amount of claim has been paid by the payer
adjudicated Payer has indicated that claim has been adjudicated, but the payment amount is $0
denied Payer has indicated that the claim has been denied
paid_forwarded Claim has been at least partially paid by payer and forwarded to another entity
paid_in_full_forwarded Total amount of claim has been paid by payer and forwarded to another entity
adjudicated_forwarded Payer has indicated that claim has been adjudicated, but the payment amount is $0 and the claims has been forwarded to another entity
reversal_of_previous Previous claim has been reversed
claim_forwarded The patient/subscriber is unknown and the claim is not adjudicated, but other payers are known and claim has been forwarded to them
predetermination_pricing ERA was only sent for predetermination pricing purposes, and no payment is forthcoming
acknowledged_forwarded Claim has been acknowledged and forwarded to another entity
accepted_for_adjudication claim has been accepted into adjudication system
rejected Claim has been rejected
claim_not_found Claim cannot be found in payer’s adjudication system
acknowledged_split Claim has been split upon acceptance into adjudication system
claim_pended No remittance has been issued, or only part of the claim has been paid
pending_adjudication Claim is in payer’s system and is pending adjudication
pending_additional_information Claim is waiting for additional information from submitter
finalized The claim cycle has been completed and no additional action will be taken
finalized_revised Adjudication info has been changed
finalized forwarded Claim processing is complete. Claim has been forwarded to a different entity
adjudicated_not_paid No payment is forthcoming
additional_information_requested Additional information has been requested by the payer
processing_error Error in the payer’s system
response_received Default tracking description once response has been received for a claim, check result for more detailed information

Information concerning the activity’s progression through the system is also available via the API Dashboard.

App Registrations

Example POST request:

curl -s -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json"
    -XPOST -d '{
        "address_lines": ["123 MAIN ST"],
        "city": "San Mateo",
        "claims_roles": ["billing"],
        "first_name": "Jane",
        "last_name": "Doe",
        "npi": "1234567893"
        "state": "CA",
        "tax_id": ["123456789"],
        "trading_partner_id": "MOCKPAYER",
        "transaction_set_name": "eligibility",
        "zipcode": "99401"
    }' https://platform.pokitdok.com/api/v4/appregistrations
params = {
    'address_lines': ['123 MAIN ST'],
    'city': 'San Mateo',
    'claims_roles': ['billing'],
    'first_name': 'Jane',
    'last_name': 'Doe',
    'npi': '1234567893'
    'state': 'CA',
    'tax_id': ['123456789'],
    'trading_partner_id': 'MOCKPAYER',
    'transaction_set_name': 'eligibility',
    'zipcode': '99401'
}
response = pd.post('/appregistrations/', data=params)
string endpoint = "/appregistrations/";
string method = "POST";
List<string> tax_id = new List<string>;
tax_id.Add("123456789");
List<string> address_lines = new List<string>;
address_lines.Add("123 MAIN ST");
List<string> claims_roles = new List<string>;
claims_roles.Add("billing");
Dictionary<string, object> data = new Dictionary<string, object> {
    {"address_lines": address_lines},
    {"city": "San Mateo"},
    {"claims_roles": claims_roles},
    {"first_name": "Jane"},
    {"last_name": "Doe"},
    {"npi": "1234567893"}
    {"state": "CA"},
    {"tax_id": tax_id},
    {"trading_partner_id": "MOCKPAYER"},
    {"transaction_set_name": "eligibility"},
    {"zipcode": "99401"}
    };
client.request(endpoint, method, data);
client.request('/appregistrations/', method='post', params={
    address_lines: ['123 MAIN ST'],
    city: 'San Mateo',
    claims_roles: ['billing'],
    first_name: 'Jane',
    last_name: 'Doe',
    npi: '1234567893'
    state: 'CA',
    tax_id: ['123456789'],
    trading_partner_id: 'MOCKPAYER',
    transaction_set_name: 'eligibility',
    zipcode: '99401'
})
let data = [
    "address_lines": ["123 MAIN ST"],
    "city": "San Mateo",
    "claims_roles": ["billing"],
    "first_name": "Jane",
    "last_name": "Doe",
    "npi": "1234567893"
    "state": "CA",
    "tax_id": ["123456789"],
    "trading_partner_id": "MOCKPAYER",
    "transaction_set_name": "eligibility",
    "zipcode": "99401"
] as [String:any]
try client.request(path: "/appregistrations", method: "POST", params: data)

Example response:

{
    "data": {
        "_uuid": "2f201868-47f4-11e8-a91a-0242ac12000a",
        "address_lines": ["123 Main ST"],
        "app_name": "<app_name>",
        "city": "San Mateo",
        "claims_roles": ["billing"],
        "client_id": "<client_id>",
        "first_name": "Jane",
        "last_name": "Doe",
        "npi": "1234567893",
        "state": "CA",
        "tax_id": ["123456789"],
        "trading_partner_id": "MOCKPAYER",
        "transaction_set_name": "eligibility",
        "zipcode": "94401"
    },
    "meta": {
        "...": "..."
    }
}

The App Registrations endpoint allows user to manage the NPI registrations associated with their account. These endpoints can be used to create, edit, and delete registrations.

Endpoint Description

Available Endpoints:

Endpoint HTTP Method Description
/appregistrations GET List current app registrations.
/appregistrations/{uuid} GET Retrieve the app registration with the given UUID.
/appregistrations POST Create an app registration.
/appregistrations/{uuid} PUT Edit the app registration with the given UUID.
/appregistrations/{uuid} DELETE Delete the app registration with the given UUID.
/appregistrations/{uuid}/undelete POST Undelete the app registration with the given UUID.

Parameters

The POST /appregistrations/ and PUT /appregistrations/ endpoints accept the following parameters:

Parameter Type Description Presence
address_lines {list} List of strings representing the street address (e.g. [“123 Main ST.”, “Suite 4”]). Required
claims_roles {list} List of roles (e.g. ‘billing’ or 'rendering’). Required
city {string} The city component of an address (e.g. 'SAN MATEO’). Required
first_name {string} Provider’s first name. This field should be omitted when sending organization_name. Situational
last_name {string} Provider’s last name. This field should be omitted when sending organization_name. Situational
npi {string} The provider’s NPI. Required
organization_name {string} The provider’s organization name. This field should be omitted when sending first_name and last_name. Situational
state {string} The state component of an address (e.g. 'CA’). Required
tax_id {list} List of federal tax ids for the provider. For individual providers, this may be the tax id of the medical practice or organization where a provider works. Required
trading_partner_id {string} Unique ID for the intended trading partner, as specified by the Trading Partners endpoint. Required
transaction_set_name {string} Transaction this app registration is to be used for (e.g. 'eligibility’, 'claims’, or 'claim_status’). Required
zipcode {string} The zip/postal code (e.g. “94401”). Required

Response

The /appregistrations/ response contains the following fields:

Field Type Description
_uuid {string} The unique ID for this app registration.
address_lines {list} List of strings representing the street address. (e.g. [“123 Main ST.”, “Suite 4”]).
app_name {string} The name of the app associated to the app registration.
claims_roles {list} List of roles (e.g. 'billing’ or 'rendering’).
city {string} The city component of an address (e.g. 'SAN MATEO’).
client_id {string} The client ID of the app associated to the app registration.
first_name {string} Provider’s first name.
last_name {string} Provider’s last name.
npi {string} The provider’s NPI.
organization_name {string} The provider’s organization name.
state {string} The state component of an address (e.g. 'CA’).
tax_id {list} List of federal tax ids for the provider. For individual providers, this may be the tax id of the medical practice or organization where a provider works.
trading_partner_id {string} Unique ID for the intended trading partner, as specified by the Trading Partners endpoint.
transaction_set_name {string} Transaction this app registration is to be used for (e.g. 'eligibility’, 'claims’, or claim_status).
zipcode {string} The zip/postal code (e.g. “94401”).

Cash Prices

Example fetching cash price information:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" https://platform.pokitdok.com/api/v4/prices/cash?cpt_code=99385&zip_code=29412
client.cash_prices(zip_code='29412', cpt_code='99385')
client.cash_prices({ zip_code: '29412', cpt_code: '99385'})
client.cashPrices(
    new Dictionary<string, string> {
        { "zip_code", "29412" },
        { "cpt_code", "99385" }
});
HashMap<String, String> query = new HashMap<String, String>();
query.put("zip_code", "29412");
query.put("cpt_code", "99385");

Map<String, Object> results = client.cashPrices(query);
try client.cashPrices(cptCode: "99385", zipCode: "29412")

Example response:

[
    {
      "high_price": 233.42479280373698,
      "cpt_code": "99385",
      "procedure_description": "Annual Physical Exam",
      "standard_deviation": 15.016994378560673,
      "average_price": 187.76838048263573,
      "pokitdok_procedure_urn": "urn:pokitdok:procedure:annual_physical_exam",
      "geo_zip_area": "294",
      "low_price": 120.62963537852661,
      "median_price": 190.01923076923077
    },
    {
      "high_price": 251.83022827001753,
      "cpt_code": "99385",
      "procedure_description": "Well Woman Exam",
      "standard_deviation": 16.2527628493356,
      "average_price": 202.86013582521684,
      "pokitdok_procedure_urn": "urn:pokitdok:procedure:well_woman_exam",
      "geo_zip_area": "294",
      "low_price": 130.14122556829363,
      "median_price": 206.2905376344086
    }
]

Available modes of operation: real-time

The Cash Prices endpoint allow access to our internal collection of pricing data. The data comes from actual providers selling actual services. For a location where a cash price has not been collected, a price is estimated using a multivariate model.

While the endpoint requires a five-digit zip code, only the first three digits are significant. This is because the index is only granular to the first three digits of the zip code, commonly called a “geozip” or a “ZIP Code Prefix”. These three digits refer to the geographical regions surrounding major cities or metropolitan areas. There are approximately 900 “geozips” in the United States.

Endpoint Description

Endpoint HTTP Method Description
/prices/cash GET Return a list of prices for a given procedure (by CPT Code) in a given region (by ZIP Code)

Parameters

The /prices/cash endpoint accepts the following parameters:

Parameter Type Description Presence
cpt_code {string} The CPT code of the procedure in question Required
zip_code {string} Zip code in which to search for procedures Required

Response

The /prices/cash response contains the following fields:

Field Type Description Presence
average_price {decimal} The average cash price for the procedure Required
cpt_code {string} The CPT code of the procedure Required
pokitdok_procedure_urn {string} A URN that uniquely identifies the procedure Required
procedure_description {string} The description of the procedure Required
geo_zip_area {string} The three character zip code tabulation area code Required
high_price {decimal} The maximum price for the procedure Required
low_price {decimal} The lowest price for the procedure Required
median_price {decimal} The median price for the procedure Required
standard_deviation {decimal} The standard deviation, or variation measure, of prices for the procedure Required

Additional Object Tables

Currently the Cash Prices endpoint only supports the top fifty procedures. A list of these procedures and their corresponding cpt_codes can be seen below.

Procedure cpt_code
Allergy Testing 95017
Annual Physical Exam 99385
Blepharoplasty (Eyelid) 15822
Botox Injections 64612
Breast Augmentation 19325
Cardiac Stress Test 93015
Carotid Duplex Ultrasound 93880
Cataract Surgery 66984
Cesarean Section 59510
Chiropractic Visit 98940
Colonoscopy 45378
CT Scan (Chest) 71250
Desensitization/ Immune Therapy 95115
Echocardiogram 93306
EKG 93000
Facelift (forehead) 15824
Flu Shot 90658
Gastric Bypass 43846
Holter Monitor (24 hour) 93224
In-vitro Fertilization 58970
Lap Band Surgery 43770
Lasik Surgery - Double Eye 65760
Lipid Profile 80061
Lithotripsy (Kidney Stone) 50590
Mammogram 77051
MRI (Knee) 73721
Myringotomy Tubes (Ear Tubes) 69436
Pap Smear/ Gynecological Exam 88142
Physical Therapy Session 97001
Polysomnogram (Sleep Study) 95810
Prenatal Example 59426
PSA Blood Test & DRE Exam (Prostate Cancer Screening) 84153
Psychiatric Consultation 90791
Reclast Infusion 96365
Rotator Cuff Surgery 29827
Septorhinoplasty (Nasal Obstruction) 30420
Shoulder Scope 29805
Skin Tag Removal 11200
Testosterone/ Erectile Dysfunction Evaluation 84402
Total Hip Replacement 27130
Total Knee Replacement 27447
Trigger Point Injection 20552
Ultrasound Abdomen Complete 76700
Ultrasound Right Upper Quadrant (Gallbladder) 76705
Urgent Care Visit 99203
Wart Removal 17110
X-ray (Lumbar spine) 72100

Claims

Sample Claims request:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
}` https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
})
client.claims({
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 60.0,
        service_lines: [
            {
                procedure_code: "99213",
                charge_amount: 60.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "J10.1"
                ],
                service_date: "2016-01-25"
            }
        ]
    }
});
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 60.0},
            {"service_lines", new Object[] {
                new Dictionary<string, object> {
                    {"procedure_code", "99213"},
                    {"charge_amount", 60.0},
                    {"unit_count", 1.0},
                    {"diagnosis_codes", new string[] {"J10.1"}},
                    {"service_date", "2016-01-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();
buf.append("{");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"J10.1\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-01-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 60.0,
        "service_lines": [
            [
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample PokitDok response to initial claim submission that passes validation checks:

{
  "_type": "PlatformActivityModel",
  "_uuid": "baaf7704-9719-4f7e-92cd-f489b5fd0679",
  "history": [
    {
      "name": "init",
      "record_dt": "2016-06-25T13:42:07.834940",
      "title": "Initializing"
    }
  ],
  "id": "575037af0640fd518fe64c36",
  "name": "claims",
  "parameters": {
    "async": false,
    "billing_provider": {
      "address": {
        "address_lines": [
          "8311 WARREN H ABERNATHY HWY"
        ],
        "city": "SPARTANBURG",
        "state": "SC",
        "zipcode": "29301"
      },
      "first_name": "Elizabeth",
      "last_name": "Blackwell",
      "npi": "1234567893",
      "tax_id": "123456789",
      "taxonomy_code": "207Q00000X"
    },
    "claim": {
      "claim_frequency": "original",
      "direct_payment": "y",
      "information_release": "informed_consent",
      "place_of_service": "office",
      "plan_participation": "assigned",
      "provider_signature": true,
      "service_lines": [
        {
          "charge_amount": "60.0",
          "diagnosis_codes": [
            "J10.1"
          ],
          "procedure_code": "99213",
          "service_date": "2016-01-25",
          "unit_count": "1.0",
          "unit_type": "units"
        }
      ],
      "total_charge_amount": "60.0"
    },
    "correlation_id": "0e6ade93-5672-4abd-8d36-ba23cda627bd",
    "generate_pdf": false,
    "payer": {
      "id": "MOCKPAYER",
      "organization_name": "MOCKPAYER"
    },
    "receiver": {
      "id": "MOCKRECEIVER",
      "organization_name": "MOCKRECEIVER"
    },
    "submitter": {
      "email": "support@pokitdok.com",
      "id": "POKITDOKTEST",
      "organization_name": "POKITDOK TESTING"
    },
    "subscriber": {
      "address": {
        "address_lines": [
          "123 N MAIN ST"
        ],
        "city": "SPARTANBURG",
        "state": "SC",
        "zipcode": "29301"
      },
      "birth_date": "1970-01-25",
      "first_name": "Jane",
      "gender": "female",
      "last_name": "Doe",
      "member_id": "W000000000",
      "payer_responsibility": "primary"
    },
    "trading_partner_id": "MOCKPAYER",
    "transaction_code": "chargeable"
  },
  "remaining_transitions": [
    "generate",
    "store",
    "transmit",
    "wait",
    "receive",
    "process",
    "complete"
  ],
  "state": {
    "name": "scheduled",
    "title": "Scheduled for next available transmission to Trading Partner"
  },
  "trading_partner_id": "MOCKPAYER",
  "transition_path": [
    "schedule",
    "generate",
    "store",
    "transmit",
    "wait",
    "receive",
    "process",
    "complete"
  ],
  "units_of_work": 1
}

Sample trading partner response for claim acknowledgement (this response will complete a claims activity):

{
    "client_id": "ASDFBOI87234CSDEAR",
    "correlation_id": "575037af0640fd518fe64c36",
    "trading_partner_id": "MOCKPAYER",
    "clearinghouse": {
        "name": "MOCK CLEARINGHOUSE",
        "transmitter_id": "12345678",
        "date_received": "2016-12-05",
        "date_processed": "2016-12-05"
    },
    "submitter": {
        "organization_name": "POKITDOK TESTING",
        "id": "1234567890",
        "tracking_id": "20161205123456789",
        "statuses": [
            {
                "action": "accept",
                "status_category": "Acknowledgement/Receipt-The claim/encounter has been received. This does not mean that the claim has been accepted for adjudication.",
                "status_category_code": "A1",
                "status_effective_date": "2016-12-05",
                "status_code": "Accepted for processing.",
                "total_claim_amount": {
                    "amount": "60.0",
                    "currency": "USD"
                }
            }
        ],
        "accepted_quantity": "1",
        "amount_in_process": {
            "amount": "60.0",
            "currency": "USD"
        }
    },
    "providers": [
        {
             "first_name": "Elizabeth",
             "last_name": "Blackwell",
             "npi": "1234567893",
             "tax_id": "123456789",
             "trace_number": "0",
             "accepted_quantity": "1",
             "amount_in_process": {
                "amount": "60.0",
                "currency": "USD"
            }
        }
    ],
    "patient": {
        "last_name": "DOE",
        "first_name": "JANE",
        "id": "W000000000",
        "claim_level_info": {
            "statuses": [
                {
                    "action": "accept",
                    "status_category": "Acknowledgement/Receipt-The claim/encounter has been received. This does not mean that the claim has been accepted for adjudication.",
                    "status_category_code": "A1",
                    "status_effective_date": "2016-12-05",
                    "status_code": "Accepted for processing.",
                    "total_claim_amount": {
                        "amount": "60.0",
                        "currency": "USD"
                    }
                }
            ],
            "claim_id_number": "NA",
            "service_date": "2016-11-01",
            "service_end_date": "2016-11-02",
            "tracking_id": "ASDFBOI87234CSDEAR"
        }
    }
}

Sample trading partner response for claim payment (835):

{
    "claim_payments": [
        {
            "assigned_number": 654654,
            "control_number": "20161205123456789",
            "facility_type": "hospital_inpatient_part_a",
            "claim_frequency": "original",
            "filing_indicator": "health_maintenance_organization",
            "patient_control_number": "20161205123456789",
            "payment_amount": {
                "amount": "0",
                "currency": "USD"
            },
            "patient_responsibility_amount": {
                "amount": "0",
                "currency": "USD"
            },
            "services": [
                {
                    "adjustments": [
                        {
                            "amount": {
                                "amount": "60.0",
                                "currency": "USD"
                            },
                            "group": "contractual_obligations",
                            "reason": "Exact duplicate claim/service",
                            "reason_code": "18"
                        }
                    ],
                    "adjudicated_procedure_code": "26740",
                    "adjudicated_procedure_code_qualifier": "health_care",
                    "adjudicated_procedure_modifier_codes": [
                                "GT"
                            ],
                    "charge_amount": {
                        "amount": "60.0",
                        "currency": "USD"
                    },
                    "provider_payment_amount": {
                        "amount": "0",
                        "currency": "USD"
                    },
                    "service_units_paid": 1,
                    "service_units_submitted": 1,
                    "service_date": "2016-11-01",
                    "control_number": "20161205123456789",
                    "remarks": [
                       {
                          "description": "Service denied because payment already made for same/similar procedure within set time frame.",
                          "code": "M86"
                        }
                    ]
                }
            ],
            "status": "processed_as_primary",
            "total_charge_amount": {
                "amount": "60.0",
                "currency": "USD"
            }
        }
    ],
    "financial_information": {
        "check_eft_trace_number": "EFT2016120798749874",
        "transaction_type": "credit",
        "effective_date": "2016-12-05",
        "originating_company_id": "121212123",
        "payment_amount": {
            "amount": "3210.10",
            "currency": "USD"
        },
        "payment_method": "automated_clearing_house",
        "transaction_handling": "remittance_information_only"
    },
    "payee": {
        "name": "POKITDOK INC",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "npi": "1234567890",
        "tax_id": "987654321"
    },
    "payer": {
        "name": "MOCKPAYER",
        "address": {
            "address_lines": [
                "P.O. BOX 12345"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "294011234"
        },
        "contacts": [
            {
                "function": "business",
                "contact_methods": [
                    {
                        "type": "phone",
                        "value": "8431111111"
                    },
                    {
                        "type": "phone",
                        "value": "8001111111"
                    }
                ]
            },
            {
                "function": "technical",
                "contact_methods": [
                    {
                        "type": "url",
                        "value": "WWW.HELP.COM"
                    }
                ]
            }
        ]
    },
    "patient": {
        "last_name": "DOE",
        "first_name": "JANE",
        "id": "W000000000"
    },
    "production_date": "2016-12-05",
    "transaction_type": "remittance_information_only",
    "meta": {
       "transaction_created_date": "2016-12-08"
    }
}

Sample Claims request where the patient is not the subscriber:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
"transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "patient": {
        "first_name": "John",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1971-01-25",
        "gender": "male",
        "relationship" : "child"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 100.0,
        "service_lines": [
            {
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
}' https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "patient": {
        "first_name": "John",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1971-01-25",
        "gender": "male",
        "relationship": "child"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 100.0,
        "service_lines": [
            {
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
})
client.claims({
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    patient: {
        first_name: "John",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1971-01-25",
        gender: "male",
        relationship: "child"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 100.0,
        service_lines: [
            {
                procedure_code: "99201",
                procedure_modifier_codes: ["GT"],
                charge_amount: 100.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "J10.1"
                ],
                service_date: "2016-01-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"patient", new Dictionary<string, object> {
            {"first_name", "John"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1971-01-25"},
            {"gender", "male"},
            {"relationship" , "child"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 100.0},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99201"},
                {"procedure_modifier_codes", new string[] {"GT"}},
                {"charge_amount", 100.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"J10.1"}},
                {"service_date", "2016-01-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();
buf.append("{");
buf.append("\"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"patient\": {");
buf.append("        \"first_name\": \"John\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1971-01-25\",");
buf.append("        \"gender\": \"male\",");
buf.append("        \"relationship\": \"child\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 100.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99201\",");
buf.append("                \"procedure_modifier_codes\": [\"GT\"],");
buf.append("                \"charge_amount\": 100.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"J10.1\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-01-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "patient": [
        "first_name": "John",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1971-01-25",
        "gender": "male",
        "relationship": "child"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 100.0,
        "service_lines": [
            [
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample Claims request that includes custom application data for easy handling of asynchronous responses:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "application_data": {
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    },
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "293010000"
        },
       "payment_address": {
            "address_lines": [
                "123 ABC LANE"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "294010000"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
}' https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "application_data": {
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    },
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "payment_address": {
            "address_lines": [
                "123 ABC LANE"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "294010000"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            }
        ]
    }
})
client.claims({
    application_data: {
        patient_id: "ABC1234XYZ",
        location_id: 123,
        transaction_uuid: "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    },
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 60.0,
        service_lines: [
            {
                procedure_code: "99213",
                charge_amount: 60.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "J10.1"
                ],
                service_date: "2016-01-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"application_data", new Dictionary<string, object> {
            {"patient_id", "ABC1234XYZ"},
            {"location_id", 123},
            {"transaction_uuid", "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"}
        }},
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 60.0},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99213"},
                {"charge_amount", 60.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"J10.1"}},
                {"service_date", "2016-01-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"application_data\": {");
buf.append("        \"patient_id\": \"ABC1234XYZ\",");
buf.append("        \"location_id\": 123,");
buf.append("        \"transaction_uuid\": \"93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf\"");
buf.append("    },");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"J10.1\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-01-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "application_data": [
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    ],
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 60.0,
        "service_lines": [
            [
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "J10.1"
                ],
                "service_date": "2016-01-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample Claims Request using the patient paid amount to report a cash payment encounter for contributing toward a member’s deductible:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "1703 John B White Blvd, Unit A"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "JOHN",
        "last_name": "DOE",
        "member_id": "W199000000",
        "address": {
            "address_lines": ["123 MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "male"
    },
    "claim": {
        "place_of_service": "office",
        "total_charge_amount": 150.0,
        "patient_paid_amount": 150.0,
        "service_lines": [
            {
                "procedure_code": "11100",
                "charge_amount": 150.00,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "L90.9"
                ],
                "service_date": "2016-03-25"
            }
        ]
    }
}' https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "1703 John B White Blvd, Unit A"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "JOHN",
        "last_name": "DOE",
        "member_id": "W199000000",
        "address": {
            "address_lines": ["123 MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "male"
    },
    "claim": {
        "place_of_service": "office",
        "total_charge_amount": 150.0,
        "patient_paid_amount": 150.0,
        "service_lines": [
            {
                "procedure_code": "11100",
                "charge_amount": 150.00,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "L90.9"
                ],
                "service_date": "2016-03-25"
            }
        ]
    }
})
client.claims({
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "1703 John B White Blvd, Unit A"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "JOHN",
        last_name: "DOE",
        member_id: "W199000000",
        address: {
            address_lines: ["123 MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "male"
    },
    claim: {
        place_of_service: "office",
        total_charge_amount: 150.0,
        patient_paid_amount: 150.0,
        service_lines: [
            {
                procedure_code: "11100",
                charge_amount: 150.00,
                unit_count: 1.0,
                diagnosis_codes: [
                    "L90.9"
                ],
                service_date: "2016-03-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"1703 John B White Blvd, Unit A"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
        }},
        {"tax_id", "123456789"}
    }},
    {"subscriber", new Dictionary<string, object> {
        {"first_name", "JOHN"},
        {"last_name", "DOE"},
        {"member_id", "W199000000"},
        {"address", new Dictionary<string, object> {
            {"address_lines", new string[] {"123 MAIN ST"}},
            {"city", "SPARTANBURG"},
            {"state", "SC"},
            {"zipcode", "29301"}
        }},
        {"birth_date", "1970-01-25"},
        {"gender", "male"}
    }},
    {"claim", new Dictionary<string, object> {
        {"place_of_service", "office"},
        {"total_charge_amount", 150.0},
        {"patient_paid_amount", 150.0},
        {"service_lines", new Object[] {new Dictionary<string, object> {
            {"procedure_code", "11100"},
            {"charge_amount", 150.0},
            {"unit_count", 1.0},
            {"diagnosis_codes", new string[] {"L90.9"}},
            {"service_date", "2016-03-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"1703 John B White Blvd, Unit A\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"JOHN\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"member_id\": \"W199000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"male\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"place_of_service\": \"office\",");
buf.append("        \"total_charge_amount\": 150.0,");
buf.append("        \"patient_paid_amount\": 150.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"11100\",");
buf.append("                \"charge_amount\": 150.00,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"L90.9\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-03-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "1703 John B White Blvd, Unit A"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "JOHN",
        "last_name": "DOE",
        "member_id": "W199000000",
        "address": [
            "address_lines": ["123 MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "male"
    ],
    "claim": [
        "place_of_service": "office",
        "total_charge_amount": 150.0,
        "patient_paid_amount": 150.0,
        "service_lines": [
            [
                "procedure_code": "11100",
                "charge_amount": 150.00,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "L90.9"
                ],
                "service_date": "2016-03-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample Claims request when using procedure modifier codes. This example uses the “GT” modifier (“via interactive audio and video telecommunications systems”) which would be suitable for telehealth applications:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 100.0,
        "service_lines": [
            {
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W51.XXXA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
}' https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 100.0,
        "service_lines": [
            {
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W51.XXXA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
})
client.claims({
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 100.0,
        service_lines: [
            {
                procedure_code: "99201",
                procedure_modifier_codes: ["GT"],
                charge_amount: 100.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "W51.XXXA"
                ],
                service_date: "2016-05-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 100.0},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99201"},
                {"procedure_modifier_codes", new string[] {"GT"}},
                {"charge_amount", 100.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"W51.XXXA"}},
                {"service_date", "2016-05-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 100.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99201\",");
buf.append("                \"procedure_modifier_codes\": [\"GT\"],");
buf.append("                \"charge_amount\": 100.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"W51.XXXA\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-05-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 100.0,
        "service_lines": [
            [
                "procedure_code": "99201",
                "procedure_modifier_codes": ["GT"],
                "charge_amount": 100.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W51.XXXA"
                ],
                "service_date": "2016-05-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample Claims request submitting a claim with an application’s callback_url specified:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "callback_url": "https://yourapp.com/claims/status",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W53.21XA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
}' https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "callback_url": "https://yourapp.com/claims/status",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W53.21XA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
})
client.claims({
    callback_url: "https://yourapp.com/claims/status",
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 60.0,
        service_lines: [
            {
                procedure_code: "99213",
                charge_amount: 60.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "W53.21XA"
                ],
                service_date: "2016-05-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"callback_url", "https://yourapp.com/claims/status"},
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 60.0},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99213"},
                {"charge_amount", 60.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"W53.21XA"}},
                {"service_date", "2016-05-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"callback_url\": \"https://yourapp.com/claims/status\",");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"W53.21XA\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-05-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "callback_url": "https://yourapp.com/claims/status",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 60.0,
        "service_lines": [
            [
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W53.21XA"
                ],
                "service_date": "2016-05-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Claims request registering a callback_url and requesting a mock claim payment callback. Your application will receive two callbacks. The first will contain a claims acknowledgement result. The second will contain a mock claim payment where 85% of the charged amount is paid, 5% is adjusted due to contractual obligations and 10% is left to be paid by the patient.

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "callback_url": "https://your-application.com/callback/1234",
    "application_data": {
        "mock_claim_payment": true
    },
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W56.22XA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
}` https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "callback_url": "https://your-application.com/callback/1234",
    "application_data": {
        "mock_claim_payment": True
    },
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W56.22XA"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
})
client.claims({
    callback_url: "https://your-application.com/callback/1234",
    application_data: {
        mock_claim_payment: true
    },
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 60.0,
        service_lines: [
            {
                procedure_code: "99213",
                charge_amount: 60.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "W56.22XA"
                ],
                service_date: "2016-05-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"callback_url", "https://your-application.com/callback/1234"},
        {"application_data", new Dictionary<string, object> {
            {"mock_claim_payment", True}
        }},
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 60.0},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99213"},
                {"charge_amount", 60.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"W56.22XA"}},
                {"service_date", "2016-05-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"callback_url\": \"https://your-application.com/callback/1234\",");
buf.append("    \"application_data\": {");
buf.append("        \"mock_claim_payment\": true");
buf.append("    },");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"W56.22XA\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-05-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "callback_url": "https://your-application.com/callback/1234",
    "application_data": [
        "mock_claim_payment": True
    ],
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 60.0,
        "service_lines": [
            [
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "W56.22XA"
                ],
                "service_date": "2016-05-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Claims request containing information for rendering provider.

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "rendering_provider": {
              "npi": "1234567893",
              "first_name": "JANE",
              "last_name": "DOE",
              "taxonomy_code": "207N00000X"

 },
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "V91.35"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
}` https://platform.pokitdok.com/api/v4/claims/
client.claims({
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
        "rendering_provider": {
              "npi": "1234567893",
              "first_name": "JANE",
              "last_name": "DOE",
              "taxonomy_code": "207N00000X"

 },
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "V91.35"
                ],
                "service_date": "2016-05-25"
            }
        ]
    }
})
client.claims({
    transaction_code: "chargeable",
    trading_partner_id: "MOCKPAYER",
    billing_provider: {
        taxonomy_code: "207Q00000X",
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893",
        address: {
            address_lines: [
                "8311 WARREN H ABERNATHY HWY"
            ],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        tax_id: "123456789"
    },
    subscriber: {
        first_name: "Jane",
        last_name: "Doe",
        member_id: "W000000000",
        address: {
            address_lines: ["123 N MAIN ST"],
            city: "SPARTANBURG",
            state: "SC",
            zipcode: "29301"
        },
        birth_date: "1970-01-25",
        gender: "female"
    },
    claim: {
        total_charge_amount: 60.0,
        rendering_provider: {
              npi: "1234567893",
              first_name: "JANE",
              last_name: "DOE",
              taxonomy_code: "207N00000X"

 },
        service_lines: [
            {
                procedure_code: "99213",
                charge_amount: 60.0,
                unit_count: 1.0,
                diagnosis_codes: [
                    "V91.35"
                ],
                service_date: "2016-05-25"
            }
        ]
    }
})
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
            {"taxonomy_code", "207Q00000X"},
            {"first_name", "Elizabeth"},
            {"last_name", "Blackwell"},
            {"npi", "1234567893"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"tax_id", "123456789"}
        }},
        {"subscriber", new Dictionary<string, object> {
            {"first_name", "Jane"},
            {"last_name", "Doe"},
            {"member_id", "W000000000"},
            {"address", new Dictionary<string, object> {
                {"address_lines", new string[] {"123 N MAIN ST"}},
                {"city", "SPARTANBURG"},
                {"state", "SC"},
                {"zipcode", "29301"}
            }},
            {"birth_date", "1970-01-25"},
            {"gender", "female"}
        }},
        {"claim", new Dictionary<string, object> {
            {"total_charge_amount", 60.0},
            {"rendering_provider", new Dictionary<string, string> {
                {"npi", "1234567893"},
                {"first_name", "JANE"},
                {"last_name", "DOE"},
                {"taxonomy_code", "207N00000X"}
            }},
            {"service_lines", new Object[] {new Dictionary<string, object> {
                {"procedure_code", "99213"},
                {"charge_amount", 60.0},
                {"unit_count", 1.0},
                {"diagnosis_codes", new string[] {"V91.35"}},
                {"service_date", "2016-05-25"}
        }}}}}
    });
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"rendering_provider\": {");
buf.append("              \"npi\": \"1234567893\",");
buf.append("              \"first_name\": \"JANE\",");
buf.append("              \"last_name\": \"DOE\",");
buf.append("              \"taxonomy_code\": \"207N00000X\"");
buf.append("");
buf.append(" },");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"V91.35\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-05-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": [
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": [
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "tax_id": "123456789"
    ],
    "subscriber": [
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": [
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        ],
        "birth_date": "1970-01-25",
        "gender": "female"
    ],
    "claim": [
        "total_charge_amount": 60.0,
        "rendering_provider": [
              "npi": "1234567893",
              "first_name": "JANE",
              "last_name": "DOE",
              "taxonomy_code": "207N00000X"

        ],
        "service_lines": [
            [
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "V91.35"
                ],
                "service_date": "2016-05-25"
            ]
        ]
    ]
] as [String:Any]
try client.claims(params: data)

Sample Claims request for sending service date range, using service date and service end date with a claim note:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "taxonomy_code": "207Q00000X",
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893",
        "address": {
            "address_lines": [
                "8311 WARREN H ABERNATHY HWY"
            ],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "tax_id": "123456789"
    },
    "subscriber": {
        "first_name": "Jane",
        "last_name": "Doe",
        "member_id": "W000000000",
        "address": {
            "address_lines": ["123 N MAIN ST"],
            "city": "SPARTANBURG",
            "state": "SC",
            "zipcode": "29301"
        },
        "birth_date": "1970-01-25",
        "gender": "female"
    },
    "claim": {
        "total_charge_amount": 60.0,
    "note": {
            "reference_code": "additional_information",
            "note": "this is a note"
            },
        "service_lines": [
            {
                "procedure_code": "99213",
                "charge_amount": 60.0,
                "unit_count": 1.0,
                "diagnosis_codes": [
                    "X35.XXXD"
                ],
                "test_results": [
                     {
                        "measurement": "height",
                        "reference_id": "test_results",
                        "value": "61"
                      }
               ], 
                "service_date": "2016-04-25",
                "service_end_date": "2016-05-25"
            }
        ]
    }
}` https://platform.pokitdok.com/api/v4/claims/
client.claims({
  "transaction_code": "chargeable",
  "trading_partner_id": "MOCKPAYER",
  "billing_provider": {
    "taxonomy_code": "207Q00000X",
    "first_name": "Elizabeth",
    "last_name": "Blackwell",
    "npi": "1234567893",
    "address": {
      "address_lines": [
        "8311 WARREN H ABERNATHY HWY"
      ],
      "city": "SPARTANBURG",
      "state": "SC",
      "zipcode": "29301"
    },
    "tax_id": "123456789"
  },
  "subscriber": {
    "first_name": "Jane",
    "last_name": "Doe",
    "member_id": "W000000000",
    "address": {
      "address_lines": [
        "123 N MAIN ST"
      ],
      "city": "SPARTANBURG",
      "state": "SC",
      "zipcode": "29301"
    },
    "birth_date": "1970-01-25",
    "gender": "female"
  },
  "claim": {
    "total_charge_amount": 60.0,
    "service_lines": [
      {
        "procedure_code": "99213",
        "charge_amount": 60.0,
        "unit_count": 1.0,
        "diagnosis_codes": [
          "X35.XXXD"
        ],
        "test_results": [
           {
             "measurement": "height",
             "reference_id": "test_results",
             "value": "61"
            }
        ], 
        "service_date": "2016-04-25",
        "service_end_date": "2016-05-25"
      }
    ]
  }
})
client.claims({
  transaction_code: "chargeable",
  trading_partner_id: "MOCKPAYER",
  billing_provider: {
    taxonomy_code: "207Q00000X",
    first_name: "Elizabeth",
    last_name: "Blackwell",
    npi: "1234567893",
    address: {
      address_lines: [
        "8311 WARREN H ABERNATHY HWY"
      ],
      city: "SPARTANBURG",
      state: "SC",
      zipcode: "29301"
    },
    tax_id: "123456789"
  },
  subscriber: {
    first_name: "Jane",
    last_name: "Doe",
    member_id: "W000000000",
    address: {
      address_lines: [
        "123 N MAIN ST"
      ],
      city: "SPARTANBURG",
      state: "SC",
      zipcode: "29301"
    },
    birth_date: "1970-01-25",
    gender: "female"
  },
  claim: {
    total_charge_amount: 60.0,
    service_lines: [
      {
        procedure_code: "99213",
        charge_amount: 60.0,
        unit_count: 1.0,
        diagnosis_codes: [
          "X35.XXXD"
        ],
        service_date: "2016-04-25",
        service_end_date: "2016-05-25"
      }
    ]
  }
})
client.claims(
    new Dictionary<string, object> {
        {"transaction_code", "chargeable"},
        {"trading_partner_id", "MOCKPAYER"},
        {"billing_provider", new Dictionary<string, object> {
                {"taxonomy_code", "207Q00000X"},
                {"first_name", "Elizabeth"},
                {"last_name", "Blackwell"},
                {"npi", "1234567893"},
                {"address", new Dictionary<string, object> {
                        {"address_lines", new string[] {"8311 WARREN H ABERNATHY HWY"}},
                        {"city", "SPARTANBURG"},
                        {"state", "SC"},
                        {"zipcode", "29301"}
                    }},
                {"tax_id", "123456789"}
            }},
        {"subscriber", new Dictionary<string, object> {
                {"first_name", "Jane"},
                {"last_name", "Doe"},
                {"member_id", "W000000000"},
                {"address", new Dictionary<string, object> {
                        {"address_lines", new string[] {"123 N MAIN ST"}},
                        {"city", "SPARTANBURG"},
                        {"state", "SC"},
                        {"zipcode", "29301"}
                    }},
                {"birth_date", "1970-01-25"},
                {"gender", "female"}
            }},
        {"claim", new Dictionary<string, object> {
                {"total_charge_amount", 60.0},
                {"service_lines", new Object[] {new Dictionary<string, object> {
                            {"procedure_code", "99213"},
                            {"charge_amount", 60.0},
                            {"unit_count", 1.0},
                            {"diagnosis_codes", new string[] {"X35.XXXD"}},
                            {"service_date", "2016-04-25"},
                            {"service_end_date", "2016-05-25"}
                        }}}
            }}
    }
);
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"transaction_code\": \"chargeable\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"billing_provider\": {");
buf.append("        \"taxonomy_code\": \"207Q00000X\",");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [");
buf.append("                \"8311 WARREN H ABERNATHY HWY\"");
buf.append("            ],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"tax_id\": \"123456789\"");
buf.append("    },");
buf.append("    \"subscriber\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"member_id\": \"W000000000\",");
buf.append("        \"address\": {");
buf.append("            \"address_lines\": [\"123 N MAIN ST\"],");
buf.append("            \"city\": \"SPARTANBURG\",");
buf.append("            \"state\": \"SC\",");
buf.append("            \"zipcode\": \"29301\"");
buf.append("        },");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"gender\": \"female\"");
buf.append("    },");
buf.append("    \"claim\": {");
buf.append("        \"total_charge_amount\": 60.0,");
buf.append("        \"service_lines\": [");
buf.append("            {");
buf.append("                \"procedure_code\": \"99213\",");
buf.append("                \"charge_amount\": 60.0,");
buf.append("                \"unit_count\": 1.0,");
buf.append("                \"diagnosis_codes\": [");
buf.append("                    \"X35.XXXD\"");
buf.append("                ],");
buf.append("                \"service_date\": \"2016-04-25\",");
buf.append("                \"service_end_date\": \"2016-05-25\"");
buf.append("            }");
buf.append("        ]");
buf.append("    }");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claims(query);
let data = [
  "transaction_code": "chargeable",
  "trading_partner_id": "MOCKPAYER",
  "billing_provider": [
    "taxonomy_code": "207Q00000X",
    "first_name": "Elizabeth",
    "last_name": "Blackwell",
    "npi": "1234567893",
    "address": [
      "address_lines": [
        "8311 WARREN H ABERNATHY HWY"
      ],
      "city": "SPARTANBURG",
      "state": "SC",
      "zipcode": "29301"
    ],
    "tax_id": "123456789"
  ],
  "subscriber": [
    "first_name": "Jane",
    "last_name": "Doe",
    "member_id": "W000000000",
    "address": [
      "address_lines": [
        "123 N MAIN ST"
      ],
      "city": "SPARTANBURG",
      "state": "SC",
      "zipcode": "29301"
    ],
    "birth_date": "1970-01-25",
    "gender": "female"
  ],
  "claim": [
    "total_charge_amount": 60.0,
    "service_lines": [
      [
        "procedure_code": "99213",
        "charge_amount": 60.0,
        "unit_count": 1.0,
        "diagnosis_codes": [
          "X35.XXXD"
        ],
        "service_date": "2016-04-25",
        "service_end_date": "2016-05-25"
      ]
    ]
  ]
] as [String:Any]
try client.claims(params: data)

Sample Coordination of Benefits Claim Request (example includes 2 payers, with COB as a dict).

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "correlation_id": "CLAIM1158654",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "address": {
            "address_lines": [
                "25 RAINBOW ROW"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "npi": "1487640231",
        "organization_name": "MEDCO MEDICAL INC",
        "payment_address": {
            "address_lines": [
                "PO BOX 123"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29401"
        },
        "tax_id": "123456789",
        "taxonomy_code": "777B12345X"
    },
    "claim": {
        "claim_frequency": "original",
        "direct_payment": "y",
        "information_release": "signed_statement",
        "place_of_service": "home",
        "plan_participation": "assigned",
        "prior_authorization_number": "P00171408ABCDEF",
        "provider_signature": true,
        "service_facility": {
            "address": {
                "address_lines": [
                    "300 RIVERS AVE"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29412"
            },
            "organization_name": "MEDCITY"
        },
        "service_lines": [
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "28.22",
                            "group": "patient_responsibility",
                            "reason": "2"
                        },
                        {
                            "amount": "26.79",
                            "group": "contractual_obligations",
                            "reason": "45"
                        }
                    ],
                    "amount": "40.66",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "T4529",
                    "procedure_qualifier": "HC",
                    "quantity": "246"
                },
                "charge_amount": "95.67",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": false,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "T4529",
                "provider_control_number": "900001",
                "service_date": "2017-03-20",
                "unit_count": "246",
                "unit_type": "units"
            },
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "72",
                            "group": "other_adjustments",
                            "reason": "96"
                        }
                    ],
                    "amount": "0",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "A4554",
                    "procedure_qualifier": "HC",
                    "quantity": "120"
                },
                "charge_amount": "72",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": false,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "A4554",
                "provider_control_number": "900002",
                "service_date": "2017-03-20",
                "unit_count": "120",
                "unit_type": "units"
            }
        ],
        "total_charge_amount": "167.67"
    },
    "coordination_of_benefits": {
        "payer": {
            "id": "777654",
            "organization_name": "BCBSSC"
        },
        "payer_amount_paid": "40.66",
        "subscriber": {
            "address": {
                "address_lines": [
                    "100 CALHOUN"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29407"
            },
            "authorize_payment_to_billing_provider": "yes",
            "claim_filing_code": "commercial_insurance_co",
            "first_name": "EMMIE",
            "group_number": "888754",
            "last_name": "DOE",
            "member_id": "987654321",
            "payer_responsibility": "primary",
            "relationship": "self",
            "release_of_information_code": "signed_statement"
        }
    },
    "payer": {
        "address": {
            "address_lines": [
                "PO BOX 301404"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "id": "12345",
        "organization_name": "CHARLESTON HEALTH PLAN"
    },
    "receiver": {
        "id": "EMPORIUM",
        "organization_name": "X12 FLAT FILE EMPORIUM"
    },
    "submitter": {
        "contacts": [
            {
                "contact_methods": [
                    {
                        "type": "phone",
                        "value": "8431114444"
                    }
                ],
                "name": "BOB DOE"
            }
        ],
        "id": "55512",
        "organization_name": "MEDCO MEDICAL INC"
    },
    "subscriber": {
        "address": {
            "address_lines": [
                "100 CALHOUN"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "birth_date": "2015-01-05",
        "claim_filing_code": "commercial_insurance_co",
        "first_name": "EMMIE",
        "gender": "female",
        "last_name": "DOE",
        "member_id": "987654321",
        "payer_responsibility": "secondary"
    }
}' https://platform.pokitdok.com/api/v4/claims/

client.claims({
    "correlation_id": "CLAIM1158654",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "address": {
            "address_lines": [
                "25 RAINBOW ROW"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "npi": "1487640231",
        "organization_name": "MEDCO MEDICAL INC",
        "payment_address": {
            "address_lines": [
                "PO BOX 123"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29401"
        },
        "tax_id": "123456789",
        "taxonomy_code": "777B12345X"
    },
    "claim": {
        "claim_frequency": "original",
        "direct_payment": "y",
        "information_release": "signed_statement",
        "place_of_service": "home",
        "plan_participation": "assigned",
        "prior_authorization_number": "P00171408ABCDEF",
        "provider_signature": True,
        "service_facility": {
            "address": {
                "address_lines": [
                    "300 RIVERS AVE"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29412"
            },
            "organization_name": "MEDCITY"
        },
        "service_lines": [
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "28.22",
                            "group": "patient_responsibility",
                            "reason": "2"
                        },
                        {
                            "amount": "26.79",
                            "group": "contractual_obligations",
                            "reason": "45"
                        }
                    ],
                    "amount": "40.66",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "T4529",
                    "procedure_qualifier": "HC",
                    "quantity": "246"
                },
                "charge_amount": "95.67",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": False,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "T4529",
                "provider_control_number": "900001",
                "service_date": "2017-03-20",
                "unit_count": "246",
                "unit_type": "units"
            },
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "72",
                            "group": "other_adjustments",
                            "reason": "96"
                        }
                    ],
                    "amount": "0",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "A4554",
                    "procedure_qualifier": "HC",
                    "quantity": "120"
                },
                "charge_amount": "72",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": False,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "A4554",
                "provider_control_number": "900002",
                "service_date": "2017-03-20",
                "unit_count": "120",
                "unit_type": "units"
            }
        ],
        "total_charge_amount": "167.67"
    },
    "coordination_of_benefits": {
        "payer": {
            "id": "777654",
            "organization_name": "BCBSSC"
        },
        "payer_amount_paid": "40.66",
        "subscriber": {
            "address": {
                "address_lines": [
                    "100 CALHOUN"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29407"
            },
            "authorize_payment_to_billing_provider": "yes",
            "claim_filing_code": "commercial_insurance_co",
            "first_name": "EMMIE",
            "group_number": "888754",
            "last_name": "DOE",
            "member_id": "987654321",
            "payer_responsibility": "primary",
            "relationship": "self",
            "release_of_information_code": "signed_statement"
        }
    },
    "payer": {
        "address": {
            "address_lines": [
                "PO BOX 301404"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "id": "12345",
        "organization_name": "CHARLESTON HEALTH PLAN"
    },
    "receiver": {
        "id": "EMPORIUM",
        "organization_name": "X12 FLAT FILE EMPORIUM"
    },
    "submitter": {
        "contacts": [
            {
                "contact_methods": [
                    {
                        "type": "phone",
                        "value": "8431114444"
                    }
                ],
                "name": "BOB DOE"
            }
        ],
        "id": "55512",
        "organization_name": "MEDCO MEDICAL INC"
    },
    "subscriber": {
        "address": {
            "address_lines": [
                "100 CALHOUN"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "birth_date": "2015-01-05",
        "claim_filing_code": "commercial_insurance_co",
        "first_name": "EMMIE",
        "gender": "female",
        "last_name": "DOE",
        "member_id": "987654321",
        "payer_responsibility": "secondary"
    }
})
client.claims({
    "correlation_id": "CLAIM1158654",
    "transaction_code": "chargeable",
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "address": {
            "address_lines": [
                "25 RAINBOW ROW"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "npi": "1487640231",
        "organization_name": "MEDCO MEDICAL INC",
        "payment_address": {
            "address_lines": [
                "PO BOX 123"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29401"
        },
        "tax_id": "123456789",
        "taxonomy_code": "777B12345X"
    },
    "claim": {
        "claim_frequency": "original",
        "direct_payment": "y",
        "information_release": "signed_statement",
        "place_of_service": "home",
        "plan_participation": "assigned",
        "prior_authorization_number": "P00171408ABCDEF",
        "provider_signature": true,
        "service_facility": {
            "address": {
                "address_lines": [
                    "300 RIVERS AVE"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29412"
            },
            "organization_name": "MEDCITY"
        },
        "service_lines": [
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "28.22",
                            "group": "patient_responsibility",
                            "reason": "2"
                        },
                        {
                            "amount": "26.79",
                            "group": "contractual_obligations",
                            "reason": "45"
                        }
                    ],
                    "amount": "40.66",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "T4529",
                    "procedure_qualifier": "HC",
                    "quantity": "246"
                },
                "charge_amount": "95.67",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": false,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "T4529",
                "provider_control_number": "900001",
                "service_date": "2017-03-20",
                "unit_count": "246",
                "unit_type": "units"
            },
            {
                "adjudication": {
                    "adjustments": [
                        {
                            "amount": "72",
                            "group": "other_adjustments",
                            "reason": "96"
                        }
                    ],
                    "amount": "0",
                    "amount_owed": "0",
                    "claim_paid_date": "2017-04-04",
                    "payer_id": "62308",
                    "procedure_code": "A4554",
                    "procedure_qualifier": "HC",
                    "quantity": "120"
                },
                "charge_amount": "72",
                "diagnosis_codes": [
                    "N184"
                ],
                "is_emergency": false,
                "ordering_provider": {
                    "first_name": "STEVEN",
                    "last_name": "DOE",
                    "npi": "1912301953",
                    "state_license_number": "SC12345"
                },
                "procedure_code": "A4554",
                "provider_control_number": "900002",
                "service_date": "2017-03-20",
                "unit_count": "120",
                "unit_type": "units"
            }
        ],
        "total_charge_amount": "167.67"
    },
    "coordination_of_benefits": {
        "payer": {
            "id": "777654",
            "organization_name": "BCBSSC"
        },
        "payer_amount_paid": "40.66",
        "subscriber": {
            "address": {
                "address_lines": [
                    "100 CALHOUN"
                ],
                "city": "CHARLESTON",
                "state": "SC",
                "zipcode": "29407"
            },
            "authorize_payment_to_billing_provider": "yes",
            "claim_filing_code": "commercial_insurance_co",
            "first_name": "EMMIE",
            "group_number": "888754",
            "last_name": "DOE",
            "member_id": "987654321",
            "payer_responsibility": "primary",
            "relationship": "self",
            "release_of_information_code": "signed_statement"
        }
    },
    "payer": {
        "address": {
            "address_lines": [
                "PO BOX 301404"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "id": "12345",
        "organization_name": "CHARLESTON HEALTH PLAN"
    },
    "receiver": {
        "id": "EMPORIUM",
        "organization_name": "X12 FLAT FILE EMPORIUM"
    },
    "submitter": {
        "contacts": [
            {
                "contact_methods": [
                    {
                        "type": "phone",
                        "value": "8431114444"
                    }
                ],
                "name": "BOB DOE"
            }
        ],
        "id": "55512",
        "organization_name": "MEDCO MEDICAL INC"
    },
    "subscriber": {
        "address": {
            "address_lines": [
                "100 CALHOUN"
            ],
            "city": "CHARLESTON",
            "state": "SC",
            "zipcode": "29407"
        },
        "birth_date": "2015-01-05",
        "claim_filing_code": "commercial_insurance_co",
        "first_name": "EMMIE",
        "gender": "female",
        "last_name": "DOE",
        "member_id": "987654321",
        "payer_responsibility": "secondary"
    }})
        var cobClaimRequest = new Dictionary<string, object>();
        cobClaimRequest.Add("correlation_id", "CLAIM1158654");
        cobClaimRequest.Add("transaction_code", "chargeable");
        cobClaimRequest.Add("trading_partner_id", "MOCKPAYER");

        cobClaimRequest.Add("billing_provider", new Dictionary<string, object> {
            {"address", new Dictionary<string, object> {
                {"address_lines", new object[] {"25 RAINBOW ROW"}},
        {"city", "CHARLESTON"},
        {"state", "SC"},
        {"zipcode", "29407"}}},
        {"npi", "1487640231"},
        {"organization_name", "MEDCO MEDICAL INC"},
        {"payment_address", new Dictionary<string, object>{
            {"address_lines", new object[] {"PO BOX 123"}},
            {"city", "CHARLESTON"},
            {"state", "SC"},
            {"zipcode", "29401"}}},
        {"tax_id", "123456789"},
        {"taxonomy_code", "777B12345X"}});

      cobClaimRequest.Add("claim", new Dictionary<string, object> {
        {"claim_frequency", "original"},
        {"direct_payment", "y"},
        {"information_release", "signed_statement"},
        {"place_of_service", "home"},
        {"plan_participation", "assigned"},
        {"prior_authorization_number", "P00171408ABCDEF"},
        {"provider_signature", true},
        {"total_charge_amount", "167.67"}});

      cobClaimRequest["service_facility"] = new Dictionary<string, object> {
        {"address", new Dictionary<string, object>{
            {"address_lines", new object[] {"300 RIVERS AVE"}},
            {"city", "CHARLESTON"},
            {"state", "SC"},
            {"zipcode", "29412"}}},
          {"organization_name", "MEDCITY"}};

     cobClaimRequest["service_lines"] = new object[] {
         new Dictionary<string, object>{
                {"charge_amount", "95.67"},
                {"diagnosis_codes", new string[] {"N184"}},
                {"is_emergency", false},
                {"ordering_provider", new Dictionary<string, object>{
                    {"first_name", "STEVEN"},
                    {"last_name", "DOE"},
                    {"npi", "1912301953"},
                    {"state_license_number", "SC12345"}}},
                {"procedure_code", "T4529"},
                {"provider_control_number", "900001"},
                {"service_date", "2017-03-20"},
                {"unit_count", "246"},
                {"unit_type", "units"},
                {"adjudication", new Dictionary<string, object>{
                    {"amount", "40.66"},
                    {"amount_owed", "0"},
                    {"claim_paid_date", "2017-04-04"},
                    {"payer_id", "62308"},
                    {"procedure_code", "T4529"},
                    {"procedure_qualifier", "HC"},
                    {"quantity", "246"},
                    {"adjustments", new object[]{
                        new Dictionary<string, object>{
                            {"amount", "28.22"},
                            {"group", "patient_responsibility"},
                            {"reason", "2"}},
                        new Dictionary<string, object>{
                        {"amount", "28.22"},
                        {"group", "patient_responsibility"},
                        {"reason", "2"}}
                    }}
                }}
            },
            new Dictionary<string, object>{
                {"charge_amount", "72"},
                {"diagnosis_codes", new string[] {"N184"}},
                {"is_emergency", false},
                {"ordering_provider", new Dictionary<string, object>{
                    {"first_name", "STEVEN"},
                    {"last_name", "DOE"},
                    {"npi", "1912301953"},
                    {"state_license_number", "SC12345"}}},
                {"procedure_code", "A4554"},
                {"provider_control_number", "900002"},
                {"service_date", "2017-03-20"},
                {"unit_count", "120"},
                {"unit_type", "units"},
                {"adjudication", new Dictionary<string, object>{
                    {"amount", "0"},
                    {"amount_owed", "0"},
                    {"claim_paid_date", "2017-04-04"},
                    {"payer_id", "62308"},
                    {"procedure_code", "A4554"},
                    {"procedure_qualifier", "HC"},
                    {"quantity", "120"},
                    {"adjustments", new object[]{
                        new Dictionary<string, object>{
                            {"amount", "72"},
                            {"group", "other_adjustments"},
                            {"reason", "96"}}
                    }}
                }}
            }
         };

    cobClaimRequest.Add("coordination_of_benefits",  new Dictionary<string, object>{
        {"payer_amount_paid", "40.66"},
        {"authorize_payment_to_billing_provider", "yes"},
        {"claim_filing_code", "commercial_insurance_co"},
        {"first_name", "EMMIE"},
        {"group_number", "888754"},
        {"last_name", "DOE"},
        {"member_id", "987654321"},
        {"payer_responsibility", "primary"},
        {"relationship", "self"},
        {"release_of_information_code", "signed_statement"},
        {"payer", new Dictionary<string, object>{
            {"id", "777654"},
            {"organization_name", "BCBSSC"}
        }},
        {"subscriber", new Dictionary<string, object>{
            {"address", new Dictionary<string, object>{
                {"address_lines", new string[] {"100 CALHOUN"}},
                {"city", "CHARLESTON"},
                {"state", "SC"},
                {"zipcode", "29407"}
            }}
        }}
    });

    cobClaimRequest.Add("payer", new Dictionary<string, object>{
        {"id", "12345"},
        {"organization_name", "CHARLESTON HEALTH PLAN"},
        {"address", new Dictionary<string, object>{
            {"address_lines", new string[] {"PO BOX 301404"}},
            {"city", "CHARLESTON"},
            {"state", "SC"},
            {"zipcode", "29407"}
        }}
    });

    cobClaimRequest.Add("receiver", new Dictionary<string, object>{
        {"id", "EMPORIUM"},
        {"organization_name", "X12 FLAT FILE EMPORIUM"}
    });

    cobClaimRequest.Add("submitter", new Dictionary<string, object>{
        {"id", "55512"},
        {"organization_name", "MEDCO MEDICAL INC"},
        {"contacts", new object[] {new Dictionary<string, object>{{"name", "BOB DOE"}}}}
    });

    cobClaimRequest.Add("subscriber", new Dictionary<string, object>{
        {"birth_date", "2015-01-05"},
        {"claim_filing_code", "commercial_insurance_co"},
        {"first_name", "EMMIE"},
        {"gender", "female"},
        {"last_name", "DOE"},
        {"member_id", "987654321"},
        {"payer_responsibility", "secondary"},
        {"address", new Dictionary<string, object>{
            {"address_lines", new string[] {"100 CALHOUN"}},
            {"city", "CHARLESTON"},
            {"state", "SC"},
            {"zipcode", "29407"}}}
    });

client.claims(cobClaimRequest);
let data = [
  "correlation_id": "CLAIM1158654",
  "transaction_code": "chargeable",
  "trading_partner_id": "MOCKPAYER"
  "billing_provider": [
      "address": [
          "address_lines": [
              "25 RAINBOW ROW"
          ],
          "city": "CHARLESTON",
          "state": "SC",
          "zipcode": "29407"
      ],
      "npi": "1487640231",
      "organization_name": "MEDCO MEDICAL INC",
      "payment_address": [
          "address_lines": [
              "PO BOX 123"
          ],
          "city": "CHARLESTON",
          "state": "SC",
          "zipcode": "29401"
      ],
      "tax_id": "123456789",
      "taxonomy_code": "777B12345X"
  ],
  "claim": [
      "claim_frequency": "original",
      "direct_payment": "y",
      "information_release": "signed_statement",
      "place_of_service": "home",
      "plan_participation": "assigned",
      "prior_authorization_number": "P00171408ABCDEF",
      "provider_signature": true,
      "service_facility": [
          "address": [
              "address_lines": [
                  "300 RIVERS AVE"
              ],
              "city": "CHARLESTON",
              "state": "SC",
              "zipcode": "29412"
          ],
          "organization_name": "MEDCITY"
      ],
      "service_lines": [
          [
              "adjudication": [
                  "adjustments": [
                      [
                          "amount": "28.22",
                          "group": "patient_responsibility",
                          "reason": "2"
                      ],
                      [
                          "amount": "26.79",
                          "group": "contractual_obligations",
                          "reason": "45"
                      ]
                  ],
                  "amount": "40.66",
                  "amount_owed": "0",
                  "claim_paid_date": "2017-04-04",
                  "payer_id": "62308",
                  "procedure_code": "T4529",
                  "procedure_qualifier": "HC",
                  "quantity": "246"
              ],
              "charge_amount": "95.67",
              "diagnosis_codes": [
                  "N184"
              ],
              "is_emergency": false,
              "ordering_provider": [
                  "first_name": "STEVEN",
                  "last_name": "DOE",
                  "npi": "1912301953",
                  "state_license_number": "SC12345"
              ],
              "procedure_code": "T4529",
              "provider_control_number": "900001",
              "service_date": "2017-03-20",
              "unit_count": "246",
              "unit_type": "units"
          ],
          [
              "adjudication": [
                  "adjustments": [
                      [
                          "amount": "72",
                          "group": "other_adjustments",
                          "reason": "96"
                      ]
                  ],
                  "amount": "0",
                  "amount_owed": "0",
                  "claim_paid_date": "2017-04-04",
                  "payer_id": "62308",
                  "procedure_code": "A4554",
                  "procedure_qualifier": "HC",
                  "quantity": "120"
              ],
              "charge_amount": "72",
              "diagnosis_codes": [
                  "N184"
              ],
              "is_emergency": false,
              "ordering_provider": [
                  "first_name": "STEVEN",
                  "last_name": "DOE",
                  "npi": "1912301953",
                  "state_license_number": "SC12345"
              ],
              "procedure_code": "A4554",
              "provider_control_number": "900002",
              "service_date": "2017-03-20",
              "unit_count": "120",
              "unit_type": "units"
          ]
      ],
      "total_charge_amount": "167.67"
  ],
  "coordination_of_benefits": [
      "payer": [
          "id": "777654",
          "organization_name": "BCBSSC"
      ],
      "payer_amount_paid": "40.66",
      "subscriber": [
          "address": [
              "address_lines": [
                  "100 CALHOUN"
              ],
              "city": "CHARLESTON",
              "state": "SC",
              "zipcode": "29407"
          ],
          "authorize_payment_to_billing_provider": "yes",
          "claim_filing_code": "commercial_insurance_co",
          "first_name": "EMMIE",
          "group_number": "888754",
          "last_name": "DOE",
          "member_id": "987654321",
          "payer_responsibility": "primary",
          "relationship": "self",
          "release_of_information_code": "signed_statement"
      ]
  ],
  "payer": [
      "address": [
          "address_lines": [
              "PO BOX 301404"
          ],
          "city": "CHARLESTON",
          "state": "SC",
          "zipcode": "29407"
      ],
      "id": "12345",
      "organization_name": "CHARLESTON HEALTH PLAN"
  ],
  "receiver": [
      "id": "EMPORIUM",
      "organization_name": "X12 FLAT FILE EMPORIUM"
  ],
  "submitter": [
      "contacts": [
          [
              "contact_methods": [
                  [
                      "type": "phone",
                      "value": "8431114444"
                  ]
              ],
              "name": "BOB DOE"
          ]
      ],
      "id": "55512",
      "organization_name": "MEDCO MEDICAL INC"
  ],
  "subscriber": [
      "address": [
          "address_lines": [
              "100 CALHOUN"
          ],
          "city": "CHARLESTON",
          "state": "SC",
          "zipcode": "29407"
      ],
      "birth_date": "2015-01-05",
      "claim_filing_code": "commercial_insurance_co",
      "first_name": "EMMIE",
      "gender": "female",
      "last_name": "DOE",
      "member_id": "987654321",
      "payer_responsibility": "secondary"
  ]
] as [String:Any]
try client.claims(params: data)

Sample Coordination of Benefits Claim Request (example includes 3 payers, with COB as a list).

client.claims({
    "trading_partner_id": "MOCKPAYER",
    "billing_provider": {
        "address": {
            "address_lines": [
                "25 RAINBOW ROW"
            ], 
            "city": "CHARLESTON", 
            "state": "SC", 
            "zipcode": "29407"
        }, 
        "npi": "1487640231", 
        "organization_name": "MEDICO MEDICAL INC", 
        "payment_address": {
            "address_lines": [
                "PO BOX 123"
            ], 
            "city": "CHARLESTON", 
            "state": "SC", 
            "zipcode": "29401"
        }, 
        "tax_id": "123456789", 
        "taxonomy_code": "777B12345X"
    }, 
    "claim": {
        "claim_frequency": "original", 
        "direct_payment": "y", 
        "information_release": "signed_statement", 
        "place_of_service": "home", 
        "plan_participation": "assigned", 
        "provider_signature": true, 
        "service_lines": [
            {
                "charge_amount": "570", 
                "diagnosis_codes": [
                    "Z930"
                ], 
                "is_emergency": false, 
                "ordering_provider": {
                    "first_name": "STEVEN", 
                    "last_name": "DOE", 
                    "npi": "1912301953"
                }, 
                "procedure_code": "A4605", 
                "provider_control_number": "992443", 
                "service_date": "2017-01-24", 
                "unit_count": "30", 
                "unit_type": "units"
            }
        ], 
        "total_charge_amount": "570"
    }, 
    "coordination_of_benefits": [
        {
            "payer": {
                "id": "123456", 
                "organization_name": "AETNA HEALTH PLANS"
            }, 
            "subscriber": {
                "address": {
                    "address_lines": [
                        "100 Calhoun Street"
                    ], 

                    "city": "CHARLESTON", 
                    "state": "SC", 
                    "zipcode": "29407"
                }, 
                "authorize_payment_to_billing_provider": "yes", 
                "claim_filing_code": "commercial_insurance_co", 
                "first_name": "EMMIE", 
                "group_number": "47672912001", 
                "last_name": "DOE", 
                "member_id": "W128675309", 
                "payer_responsibility": "secondary", 
                "relationship": "self", 
                "release_of_information_code": "signed_statement"
            }
        }, 
        {
            "payer": {
                "id": "MCAIDSC", 
                "organization_name": "MEDICAID SC"
            }, 
            "subscriber": {
                "address": {
                    "address_lines": [
                        "100 Calhoun Street"
                    ], 
                    "city": "CHARLESTON", 
                    "state": "SC", 
                    "zipcode": "29407"
                }, 
                "authorize_payment_to_billing_provider": "yes", 
                "claim_filing_code": "medicaid", 
                "first_name": "EMMIE", 
                "last_name": "DOE", 
                "member_id": "519108745", 
                "payer_responsibility": "tertiary", 
                "relationship": "self", 
                "release_of_information_code": "signed_statement"
            }
        }
    ], 
    "correlation_id": "C0200000000001150965", 
    "payer": {
        "address": {
            "address_lines": [
                "PO BOX 301404"
            ], 
            "city": "CHARLESTON", 
            "state": "SC", 
            "zipcode": "29407"
        }, 
        "id": "12345", 
        "organization_name": "CHARLESTON MEDICARE PLAN"
    }, 
    "receiver": {
        "id": "EMPORIUM", 
        "organization_name": "X12 FLAT FILE EMPORIUM"
    }, 
    "submitter": {
        "contacts": [
            {
                "contact_methods": [
                    {
                        "type": "phone", 
                        "value": "8431114444"
                    }
                ]
            }
        ], 
        "id": "55512", 
        "organization_name": "MEDICO MEDICAL INC"
    }, 
    "subscriber": {
        "address": {
            "address_lines": [
                "100 Calhoun Street"
            ], 
            "city": "CHARLESTON", 
            "state": "SC", 
            "zipcode": "29403"
        }, 
        "birth_date": "1930-11-26", 
        "claim_filing_code": "medicare_part_b", 
        "first_name": "EMMIE", 
        "gender": "male", 
        "last_name": "DOE", 
        "member_id": "86753090020", 
        "payer_responsibility": "primary"
    }, 
    "transaction_code": "chargeable"
})

Available modes of operation: batch/async

Following the standard X12 837 format, the Claims endpoint allows applications to easily submit claims to designated trading partners. A Claim is submitted to the trading partner to report services completed and request compensation. To understand how the Claims endpoint works, reference our Claims workflow.

The Claims endpoint gives clients the ability to submit Professional (837P) claims. Professional format claims are submitted using the CMS-1500 parameters by physicians, suppliers and other non-institutional providers. To review which trading partners support claim transactions, visit our trading partners list.

Once a claim has been submitted, status can be tracked through PokitDok’s system using the Activities endpoint. There is also an option to supply a callback_url in the claim request which indicates that your application should be notified when the asynchronous processing is complete and a claim acknowledgement has been received from the trading partner. In order to track status in the trading partner’s adjudication system, please utilize the Claim Status endpoint.

A trading partner’s first response lets you know if the request has been accepted (or rejected) by their claims validation system. Once your claim submission is accepted by the trading partner, it will enter their adjudication system. A tracking id or claim control number will be assigned after passing the validation stage, which can then be used in claims status requests to track the claim. A claim can be monitored via a Claims Status request once the claim has been accepted in the trading partner’s adjudication system. The speed at which a claim is adjudicated is dependent on the trading partner. On average it takes 5-7 days for a claim to enter a payer’s adjudication system, thus it is recommended to wait at least a week after submitting a claim to check its status. Once adjudication is complete, the trading partner will return an electronic remittance advice or ERA (if registered to receive ERAs), otherwise a paper remittance advice is sent with final adjudication information. Review our claim payments reference for additional information.

A special trading_partner_id called MOCKPAYER is available for use to test different claims scenarios. See MOCKPAYER claims testing for details.

The Payments endpoints may be used as a companion to the Claims endpoint to search and retrieve claim payment information including the raw X12 835 data. Individual claim payment objects will be assigned to the matching claims activity’s result. The Payments endpoints are useful when the application has a need to review a summary of payment information or match deposits back up with the claims activities that were bundled in a single payment.

Endpoint Description

Endpoint HTTP Method Description
/claims/ POST Submit a claim to the specified trading partner.

Parameters

The /claims/ endpoint accepts the following parameters:

Parameter Description CMS 1500
billing_provider Required: A dictionary of information for the provider that is billing for services. Uses the provider object below. 33: Billing Provider Info
claim Dictionary of information representing a claim for services that have been performed by a health care provider for the patient.
claim.claim_frequency Used to identify if a claim is original, corrected or canceled. Defaults to original. A full list of possible values can be found below. If submitting a corrected claim, claim.original_reference_number is required.
claim.provider_signature Whether a provider signature is associated with the claim. Defaults to true.
claim.plan_participation Whether there is plan participation associated with the claim. Defaults to assigned. Possible values are assigned, lab, and n/a.
claim.direct_payment Whether the claim was a direct payment to the provider. Possible values are y, n, and n/a. Selecting y indicates patient signature included on CMS 1500 form box 13 and payment sent to provider.
claim.information_release Information release informatin associated with the claim. Possible values are informed_consent and signed_statement.
claim.medical_record_number The patient’s medical record number.
claim.clinical_laboratory_improvement_amendment_number The Clinical Laboratory Improvement Amendment (CLIA) number for the facility.
claim.onset_date Optional: the date of first symptoms for the illness. In ISO8601 format (YYYY-MM-DD). 14: Date of current illness OR injury OR pregnancy
claim.place_of_service The location where services were performed (e.g. office). A full list of possible values is included below. 24b: Place of service
claim.patient_paid_amount Optional: The amount the patient has already paid the provider for the services listed in the claim. When reporting cash payment encounters for the purpose of contributing those amounts toward the member’s deductible, the patient_paid_amount will equal the total_charge_amount. 29: Amount Paid
claim.patient_signature_on_file Boolean indicator for whether or not a patient’s signature is on file to authorize the release of medical records. Defaults to true if not specified. 12: Patient’s or authorized person’s signature
claim.statement_date The (start) date of this statement. In ISO8601 format (YYYY-MM-DD).
claim.statement_end_date The end date of this statement. In ISO8601 format (YYYY-MM-DD).
claim.note Claim Note object.
claim.note.reference_code Reference codes associated with claim note. Possibilities are additional_information (ADD), goals_rehab_discharge (DCP), certification_narrative (CER), diagnosis_description (DGN), third_party_organization_notes (TPO).
claim.note.note Message text for claim note.
claim.service_lines List of services that were performed as part of this claim.
claim.service_lines.charge_amount The amount charged for this specific service. (e.g. 100.00) 24f: Charges
claim.service_lines.diagnosis_codes A list of diagnosis codes related to this service. (e.g. 487.1) 21: Diagnosis or nature of illness or injury
claim.service_lines.procedure_code The CPT code for the service that was performed 24d: Procedures, Services, or Supplies
claim.service_lines.procedure_modifier_codes Optional: List of modifier codes for the specified procedure. (e.g. [“GT”]) Some trading partners may require explicit placement of specific modifier codes within this list. When a partner mandates this, you may use "" to advance to the next slot in the list. (e.g. ["", "GT"] when the partner indicates GT must be sent as the second modifier and no other modifiers are to be included.) 24d: Procedures, Services, or Supplies
claim.service_lines.provider_control_number The provider’s control number.
claim.service_lines.note Service Line Note object.
claim.service_lines.note.reference_code Reference codes associated with service line note. Possibilities are additional_information (ADD) and goals_rehab_discharge (DCP).
claim.service_lines.note.note Message text for service line note.
claim.service_lines.service_date The date the service was performed. In ISO8601 format (YYYY-MM-DD). 24a: Date(s) of service (from)
claim.service_lines.service_end_date Optional: The end date for the service. Use this to utilize a date range for the service date. In ISO8601 format (YYYY-MM-DD). 24a: Date(s) of service (to)
claim.service_lines.place_of_service The location where services were performed (e.g. office). A full list of possible values is included below. 24b: Place of service
claim.service_lines.initial_treatment_date The initial treatment date of this claim. In ISO8601 format(YYYY-MM-DD).
claim.service_lines.last_seen_date The date that the patient was seen by attending or supervising physician for the qualifying medical condition related to the services performed. In ISO8601 format (YYYY-MM-DD).
claim.service_lines.unit_count Number of units of this service. (e.g. 1.0) 24g: Days or Units
claim.service_lines.unit_type The type of unit being described for this particular service’s unit count. Possible values include: units, days
claim.service_lines.procedure_description The procedure description of the service.
claim.service_lines.sales_tax The sales tax of a service.
claim.service_lines.is_emergency Boolean of whether the service is an emergency.
claim.service_lines.begin_therapy_date The start date of therapy associated to a service. In ISO8601 format (YYYY-MM-DD).
claim.service_lines.certification_revision_date Date of revision for Durable Medical Equipment Certification. In ISO8601 format (YYYY-MM-DD).
claim.service_lines.last_certification_date Date of last certification for Durable Medical Equipment. In ISO8601 format (YYYY-MM-DD).
claim.service_lines.ambulance_patient_count The ambulance patient count associated with the service. Required if more than one patient is transported in the same vehicle.
claim.service_lines.test_results Used to communicate measurements or counts for tests.
claim.service_lines.test_results.reference_id Code which identifies the category for the measurement. Available options are original or test_results.
claim.service_lines.test_results.measurement Qualifier for the type of measurement. Available options are height, hemoglobin, hematocrit, epoetin_starting_dosage, and creatinine.
claim.service_lines.test_results.value Numerical value associated with the measurement.
claim.service_lines.rendering_provider Rendering provider associated with the service. Used if the claim’s billing provider is not the health care provider that provided this particular service. Uses the provider object below.
claim.service_lines.purchased_service_provider Provider associated with the purchased service. Used if the service reported in the service line item is a purchased service. Uses certain parameters available in the provider object below. Tax id, taxonomy code and address are not to be submitted for a purchased service provider.
claim.service_lines.supervising_provider The supervising provider associated with this claim. Used if the claim’s rendering provider is supervised by a physician. The supervising provider must be an individual, not an organization. Uses certain parameters available in the provider object below. Tax id, taxonomy code and address are not to be submitted for a supervising provider.
claim.service_lines.ordering_provider Ordering provider associated with the service. Used if the claim’s ordering provider is different than the rendering provider for this service line. The ordering provider must be an individual, not an organization. Uses certain parameters available in the provider object below. Tax id, taxonomy code are not to be submitted for an ordering provider.
claim.service_lines.referring_provider Referring provider associated with the service. Used if the claim involves a referral. The referring provider must be an individual, not an organization. Uses certain parameters available in the provider object below. Tax id, taxonomy code and address are not to be submitted for a referring provider.
claim.service_lines.drug Information regarding the drug associated with a service.
claim.service_lines.drug.code_type The code type associated to the drug.
claim.service_lines.drug.code The code associated to the drug.
claim.service_lines.drug.unit_type The unit or system used to measure the drug. A full list of possible values can be found below.
claim.service_lines.drug.quantity The quantity associated with the drug.
claim.service_lines.drug.precription_number The prescription number associated to the drug.
claim.service_lines.dme_certification Information regarding the durable medical equipment certification.
claim.service_lines.dme_certification.type The type of certification associated with the DME. Possible values are initial, renewal, revised.
claim.service_lines.dme_certification.months Number of months associated with the durable medical equipment certification.
claim.service_lines.paperwork Supplemental claim information (paperwork traveling separate from the claim transaction).
claim.service_lines.paperwork.report_type The report type associated with the paperwork.
claim.service_lines.paperwork.transmission_method The transmission method of the paperwork (e.g. email, fax).
claim.service_lines.paperwork.control_number The control number associated with the paperwork.
claim.service_lines.forms Supporting documentation associated with a service.
claim.service_lines.forms.form_type Type associated with a form. Possible values are form_type_code and cms_dmerc_cmn.
claim.service_lines.forms.identifier The form identifier.
claim.service_lines.forms.questions.question_number The question number.
claim.service_lines.forms.questions.yes_no_response The yes or no response to the question
claim.service_lines.forms.questions.text_response The text response to the question
claim.service_lines.forms.questions.date_response The date response to the question
claim.service_lines.forms.questions.percent_decimal_response The percent decimal response to the question
claim.service_lines.referral_number The referral number for the service line claim
claim.service_line.adjudication Provides previous payer adjudication information for the claim service line. below
claim.state_or_province_code For claims related to auto accident, the two-letter state abbreviation code in which the automobile accident occurred.
claim.disability_period_start Required on claims involving disability where, in the judgment of the provider, the patient was or will be unable to perform the duties normally associated with his/her work. Disability start date in ISO8601 format (YYYY-MM-DD).
claim.disability_period_end Required on claims involving disability where, in the judgment of the provider, the patient was or will be unable to perform the duties normally associated with his/her work. Disability end date in ISO8601 format (YYYY-MM-DD).
claim.admission_date The patient’s admission date. In ISO8601 format (YYYY-MM-DD).
claim.discharge_date Required for inpatient claims when the patient was discharged from the facility and discharge date is known. In ISO8601 format (YYYY-MM-DD).
claim.last_seen_date The date that the patient was seen by attending or supervising physician for the qualifying medical condition related to the services performed. In ISO8601 format (YYYY-MM-DD).
claim.project_code The demonstration project identifier for the claim.
claim.report_start_date Required to indicate assumed care date when providers share post-operative care (global surgery claims). In ISO8601 format (YYYY-MM-DD).
claim.report_end_date Required to indicate relinquished care date when providers share post-operative care (global surgery claims). In ISO8601 format (YYYY-MM-DD).
claim.care_plan_oversight_number The number of the home health agency or hospice providing Medicare covered services to the patient for the period during which CPO services were furnished.
claim.paperwork Supplemental claim information (paperwork traveling separate from the claim transaction).
claim.paperwork.report_type The report type associated with the paperwork.
claim.paperwork.transmission_method The transmission method of the paperwork (e.g. email, fax).
claim.paperwork.control_number The control number associated with the paperwork.
claim.total_charge_amount The total amount charged/billed for the claim. (e.g. 100.00) 28: Total Charge
claim.initial_treatment_date The initial treatment date of this claim. In ISO8601 format (YYYY-MM-DD).
claim.acute_manifestation_date The acute manifestation date of this claim. In ISO8601 format (YYYY-MM-DD).
claim.last_x_ray_date The last x-ray date associated with this claim. In ISO8601 format (YYYY-MM-DD).
claim.accident_date The accident date associated with this claim. In ISO8601 format (YYYY-MM-DD).
claim.referring_provider Referring provider associated with the service. Used if the claim involves a referral. The referring provider must be an individual, not an organization. Uses certain parameters available in the provider object below. Tax id, taxonomy code and address are not to be submitted for a referring provider.
claim.rendering_provider The rendering provider associated with this claim. Used if the top level billing provider is not the health care provider that provided services. Uses the provider object below.
claim.supervising_provider The supervising provider associated with this claim. Used if the claim’s rendering provider is supervised by a physician. The supervising provider must be an individual, not an organization. Uses certain parameters available in the provider object below. Tax id, taxonomy code and address are not to be submitted for a supervising provider.
claim.related_causes_code Codes specifying a cause associated with the claim. Possibilities are auto_accident (AA), employment (EM), and other_accident (OA). Used if the top level billing provider is not the health care provider that provided services.
claim.original_reference_number The original reference number of the claim. Required if claim.claim_frequency is “corrected”.
claim.ambulance Ambulance information associated with the claim.
claim.patient_weight The weight of the patient.
claim.ambulance.reason_code The reason for ambulance transportation. Possibilities can be seen below.
claim.ambulance.transport_distance The distance the patient was transported in the ambulance.
claim.ambulance.round_trip_purpose_description The purpose description for a round trip.
claim.ambulance.stretcher_purpose_description The purpose description for stretcher use.
claim.ambulance.applicable_conditions Conditions associated with reasons for ambulance transport. Possibilities can be seen below.
claim.ambulance.not_applicable_conditions Conditions associated with reason not for ambulance transport. Possibilities can be seen below.
claim.ambulance.pickup_location The pickup location for the ambulance. Uses an address object.
claim.ambulance.dropoff_location The dropoff location for the ambulance. Uses an address object.
claim.chiropractic Chiropractic information associated with the claim.
claim.chiropractic.spinal_condition Chiropractic condition associated with the claim. Possibilities can be seen below.
claim.chiropractic.description Description of the chiropractic information associcated with the claim.
claim.service_facility Service facility associated with the claim.
claim.service_facility.organization_name Organization name of the service facility.
claim.service_facility.npi NPI of the service facility.
claim.service_facility.address Address of the service facility. Uses an address object.
claim.prior_authorization_number Prior authorization number associated with the claim. This value is assigned by the payor.
claim.referral_number The referral number for the claim
patient Information about the patient that received services outlined in the claim. Patient information is only required when the patient is not the insurance subscriber.
patient.address Required: The patient’s address information. Uses the address object. 5: Patient’s address
patient.birth_date The patient’s birth date as specified on their policy. In ISO8601 format (YYYY-MM-DD). 3: Patients Birth Date
patient.first_name Required: The patient’s first name. 2: Patient’s Name
patient.gender The patient’s gender. 3: The patient’s sex
patient.death_date The patient’s date of death. In ISO8601 format (YYYY-MM-DD).
patient.suffix The suffix of the patient.
patient.phone The patient’s phone number.
patient.ssn The patient’s ssn.
patient.member_id Required: The patient’s member identifier.
patient.middle_name Optional: The patient’s middle name.
patient.last_name Required: The patient’s last name. 2: Patient’s Name
patient.pregnant Patient pregnancy indicator. Defaults to false.
patient.relationship Required: The patient’s relationship to the subscriber. A full list of possible values is included below. 6: Patient’s relationship to the insured
subscriber Information about the insurance subscriber as it appears on their policy. Uses the subscriber object.
trading_partner_id Required: Unique id for the intended trading partner, as specified by the Trading Partners endpoint.
transaction_code Required: The type of claim transaction that is being submitted (e.g. “chargeable”). A full list of possible values is included below.
coordination_of_benefits Required for Secondary Claims: Information related to the coordination of benefits for additional payers. object
generate_pdf Use of this parameter will not generate a PDF version of a claims submission. This parameter will default to a value of false, and is for PokitDok’s internal use.

A claim goes through an entire lifecycle after its transmission to a payer. For details on this process, and how the Claims Status Endpoint ties in, see our claims API workflow.

Response

The /claims/ response contains an activity and thus returns the same object as the activity endpoint. This object can be seen under the activities endpoint documentation above. The only difference between the activities and claims response is the data returned via the ‘parameters’ field. The following objects/fields are attached internally and can be accessed via the parameters object:

Field Description
submitter The submitter of the claims request.
submitter.first_name The first name of the submitter.
submitter.middle_name The middle name of the submitter.
submitter.last_name The last name of the submitter.
submitter.organization_name The organization name of the submitter.
submitter.id The unique id of the submitter.
submitter.email The email of the submitter.
submitter.contacts A list of contacts associated with submitter.
submitter.contacts.name The name of the contact.
submitter.contacts.contact_methods A list of contact methods assoicated with the contact.
submitter.contacts.contact_methods.type The type of contact method. Possibilities are email, fax, phone, phone_extensions, and url.
submitter.contacts.contact_methods.value The value assoicated with a contact type (e.g. a phone number).
receiver The receiver of the claims request.
receiver.id The unique id of the receiver.
receiver.organization_name The organization name of the receiver.
receiver.email The email of the receiver.

Additional Object Tables

Subscriber object:

Field Description CMS 1500
address The subscriber’s address information as specified on their policy. Uses an address object. 7: Insured’s address
birth_date The subscriber’s birth date as specified on their policy. In ISO8601 format (YYYY-MM-DD). 11a: Insured’s date of birth
claim_filing_code Indicates the type of payment for the claim. It is an optional field and when left blank or not passed in the request, defaults to “mutually_defined”. A full list of possible values is included below.
first_name Required: The subscriber’s first name as specified on their policy.
suffix The suffix if any used by the subscriber.
middle_name The subscriber’s middle name as specified on their policy.
phone The subscriber’s phone number.
gender The subscriber’s gender as specified on their policy. 11a: Insured’s sex
group_number Optional: The subscriber’s group or policy number as specified on their policy. 11: Employer’s policy number or group number
group_name Optional: The subscriber’s group name as specified on their policy. 11b: Employer’s name or school name
member_id Required: The subscriber’s member identifier. 1a: Insured’s ID number
last_name Required: The subscriber’s last name as specified on their policy. 4: Insured’s name
ssn The subscriber’s ssn name as specified on their policy.
payer_responsibility Determines the position of the payer with regards to coordination of benefits. Defaults to primary. List of possibilities can be seen below.
relationship Used for coordination of benefits subscriber only. The patient’s relationship to the subscriber. A full list of possible values is included below. 6: Patient’s relationship to the insured
authorize_payment_to_billing_provider Used for coordination of benefits subscriber only. Values: [no, default: yes]
patient_signature_source Used for coordination of benefits subscriber only. Values: [other, default: patient]
release_of_information_code Used for coordination of benefits subscriber only. Values: [signed_statement, default: informed_consent]

Provider object:

Field Description CMS 1500
taxonomy_code The taxonomy code for the provider. (e.g. “207Q00000X”) 24i: ID Qualifier
first_name The first name of the provider. Required when the provider is an individual.
middle_name The middle name of the provider. Required when the provider is an individual.
last_name The last name of the provider. Required when the provider is an individual.
suffix The suffix of the provider.
organization_name The provider’s name when the provider is an organization. first_name and last_name should be omitted when sending organization_name.
npi The National Provider Identifier for the provider. 33a: Billing Provider NPI
state_license_number The state license number for the provider. 33a: Billing Provider NPI
tax_id The federal tax id for the provider. For individual providers, this may be the tax id of the medical practice or organization where a provider works. 25: Federal tax ID Number (SSN EIN)
provider_commercial_number A proprietary number assigned to a provider by the destination payer.
upin A unique physician identification number which was replaced by the use of NPI.
location_number A location number assigned to a provider.
address The provider’s address. Uses an address object.
payment_address The provider’s payment address to be used when the address for payment is different than that of the billing provider. Parameter is placed under the billing provider and uses an address object.
contacts A list of contacts associated with the provider.
contacts.name The name of the contact.
contacts.contact_methods A list of contact methods associated with the contact.
contacts.contact_methods.type The type of contact method. Possibilities are email, fax, phone, phone_extensions, and url.
contacts.contact_methods.value The value assoicated with a contact type (e.g. a phone number).

Address object:

Field Description
address_lines List of strings representing the street address. (e.g. [“123 MAIN ST.”, “Suite 4”])
city The city component of a address. (e.g. “SAN MATEO”)
state The state component of a address. (e.g. “CA”)
zipcode The zip/postal code. (e.g. “94401”)
country The country component of a address.

Coordination of Benefits object: The coordination of benefits object can be either a list or a dict. If two payers are included in the claim (one payer in COB), COB will be a dict. If three or more payers are included (two+ payers in COB), COB will be a list.

Field Description
subscriber Required: The subscriber of the policy for the additional payer(s). May be the same as the original payer with some additional field requirements. Uses the Subscriber object.
adjustments List of claim adjustments (maximum of five). Support varies by trading partner. Uses the adjustment below.
payer_amount_paid Amount paid on the claim after claim has been adjudicated by the primary payer.
amount_owed Remaining liability amount to be paid after adjudication by the primary payer.
payer Required: The payer information to communicate to the top level payer for coordination of benefits. Uses the payer object.

Claim Adjustment object: Adjustments are used to balance the original submitted billing amounts, monetary and service units, against the primary payer, secondary payer, and patient’s payment amounts and responsibility.

Field Description
group Required: The adjustment group code. Identifies the payment adjustment category. object
reason Required: The adjustment reason code as defined in HCFA CPCS 139 (Claim Adjustment Reason Codes). Identifies the reason the adjustment was made.
amount Required: Adjusts a claim total or service line monetary amount.
quantity Adjusts the number of service units used in the claim or on within a specific service line.

Full list of possible values that can be used in the adjustment.group field:

adjustment.group Values
'contractual_obligations’
'other_adjustments’
'payor_initiated_reductions’
'patient_responsibility’
'corrections_and_reversals’

Claim Adjudication object: Tracks previous payments and adjustments made to a service line within a Coordination of Benefits transaction.

Field Description
amount Required: The amount paid for the service line.
procedure_code Required: The service line procedure code (HCPCS/CPT).
procedure_modifiers List of modifier codes for the service line procedure (maximum of 4)
quantity The service line quantity
adjustments List of claim service line adjustments (maximum of 5). Uses the adjustment object
claim_paid_date Required: The date the service line was paid. In ISO8601 format (YYYY-MM-DD).
amount_owed The remaining patient liability amount for the service line.

Payer object:

Field Description
organization_name Required: Name information for the coordination of benefits payer.
id Required: Numerical payer id value associated with coordination of benefits payer.
address Address information for the coordination of benefits payer. Uses an address object.

Full list of possible values that can be used in the claim.claim_frequency parameter on the claim:

claim_frequency Values
nonpayment original
interim_first_claim interim_continuing_claims
interim_last_claim late_charges
adjustment corrected
cancel final_claim_home_health

Full list of possible values that can be used in the claim.service_lines.drug.unit_type parameter on the claim:

unit_type Values
international gram
milligram milliliter
unit

Full list of possible values that can be used in the claim.ambulance.reason_code parameter on the claim:

reason_code Values
nearest_or_residential_facility (A) preferred_physician (B)
family_proximity © specialist (D)
rehab_facility (E)

Full list of possible values that can be used in the claim.ambulance.applicable_conditions and claim.ambulance.not_applicable_conditions parameter on the claim:

condition Values
admitted_to_hospital moved_by_stretcher
unconscious_in_shock emergency_transport
physically_restrained visible_hemorrhaging
ambulance_medically_necessary patient_confined_bed_chair

Full list of possible values that can be used in the claim.chiropractic.spinal_condition parameter on the claim:

spinal_condition Values
acute_condition chronic_condition
non_acute non_life_threatening
routine symptomatic
acute_manifestation_chronic_condition

Full list of possible values that can be used in the claim.place_of_service parameter on the claim:

place_of_service Values
ambulance_air_or_water nursing
ambulance_land off_campus_outpatient_hospital
ambulatory_substance_abuse office
assisted_living other
birthing_center outpatient_hospital
custodial outpatient_rehab
end_stage_renal pharmacy
er_hospital prison
federal_qualified psych_partial_hospital
group_home psych_residential
home public_clinic
hospice residential_substance_abuse
ihs_freestanding rural_clinic
ihs_provider school
immunization shelter
independent_clinic skilled_nursing
independent_lab surgical_center
inpatient_hospital telehealth
inpatient_psych temp_lodging
inpatient_rehab tribal_638_freestanding
mental_health_center tribal_638_provider
mentally_retarded urgent_care
military walkin_clinic
mobile_unit worksite

Full list of possible values that can be used in the patient.relationships parameter on the claim:

relationship Values
cadaver_donor organ_donor
child other_relationship
employee spouse
life_partner unknown

Full list of possible values that can be used in the subscriber.filing_code parameter on the claim:

filing_code Values
automobile_medical medicaid
blue_cross_blue_shield medicare_part_a
champus medicare_part_b
commercial_insurance_co mutualy_defined
dental_maintenance_organization other_federal_program
disability other_non_federal_program
epo pos
federal_employee_program ppo
hmo title_v
hmo_medicare_risk veterans_affairs_plan
indemnity_insurance workers_compensation_health_claim
liability_medical

Full list of possible values that can be used in the transaction_code parameter on the claim:

transaction_code Values
subrogation_demand
chargeable
reporting

Full list of possible values that can be used in the claim.admission_source parameter on the claim:

admission_source Values
clinic immediate_care_facility
emergency_room law_enforcement
health_care_facility not_available
hospice_transfer physician_referral
hospital_transfer surgery_center

Full list of possible values that can be used in the claim.admission_type parameter on the claim:

admission_type Values
elective newborn
emergency trauma_center
information_not_available urgent

Full list of possible values that can be used in the claim.facility_type parameter on the claim:

facility_type Values
clinic_corf hospital_inpatient_part_b
clinic_ersd hospital_other_part_b
clinic_opt hospital_outpatient_asc
clinic_rural_health hospital_outpatient
community_mental_health_center hospital_swing_bed
critical_access_hospital nonhospital_based_hospice
federally_qualified_health_center religious_nonmedical_institution
home_health_part_b skilled_nursing_inpatient_part_b
home_health skilled_nursing_inpatient
hospital_based_hospice skilled_nursing_outpatient
hospital_inpatient_part_a skilled_nursing_swing_bed

Full list of possible values that can be used in the claim.patient_status parameter on the claim:

patient_status Values
expired_at_home transferred_to_hospice_at_home
expired_in_medical_facility transferred_to_hospice_medical_facility
expired_place_unknown transferred_to_inpatient_rehab
expired transferred_to_intermediate_care_facility
inpatient_at_this_hospital transferred_to_long_term_care_hospital
left_against_medical_advice transferred_to_nursing_facility_not_medicare_certified
routine_discharge transferred_to_other_health_care_institution
still_patient transferred_to_psychiatric_hospital
transferred_to_cancer_center transferred_to_short_term_hospital
transferred_to_critical_access_hospital transferred_to_skilled_nursing_facility
transferred_to_federal_hospital transferred_to_swing_bed
transferred_to_home_with_home_health_service

Full list of possible values that can be used in the claim.occurrence_information.occurrence_type parameter on the claim:

occurrence_type Values
accident_employment_related guarantee_of_payment
accident_medical_coverage home_iv_therapy_started
accident_no_medical_coverage hospice_certification
accident_tort_liability inpatient_hospital_discharge_non_covered_transplant_patient
active_care_ended inpatient_hospital_discharge_transplant_patient
admission_scheduled insurance_denied
beneficiary_notified_of_intent_to_bill_accomodations last_menstrual_period
beneficiary_notified_of_intent_to_bill_procedures last_therapy
benefits_exhausted_payer_a no_fault_insurance_involved
benefits_exhausted_payer_b occupational_therapy_started
benefits_exhausted_payer_c onset_for_chronically_dependent_individual
benefits_terminated_primary_payer onset_of_symptoms
birth_date_insured_a outpatient_occupational_therapy_plan_reviewed
birth_date_insured_b outpatient_physical_therapy_plan_reviewed
birth_date_insured_c outpatient_speech_pathology_plan_reviewed
canceled_surgery_scheduled physical_therapy_started
cardiac_rehab_started pre_admission_testing
comprehensive_outpatient_rehab_plan_reviewed retirement_spouse
cost_outlier_status_begins retirement
crime_victim snf_bed_became_available
discharge speech_therapy_started
discharged_on_continuous_course_iv_therapy split_bill_date
effective_date_insured_a start_coordination_period_for_esrd_beneficiaries
effective_date_insured_b start_infertility_treatement_cycle
effective_date_insured_c ur_notice_received
election_of_extended_care_facilities

Full list of possible values that can be used in the claim.value_information.value_type parameter on the claim:

value_information.value_type
accident_hour medicare_blood_deductible
any_liability_insurance medicare_coinsurance_amount_first_year
arterial_blood_gas medicare_coinsurance_amount_second_year
black_lung medicare_lifetime_reserve_amount_first_year
blood_deductible_pints medicare_lifetime_reserve_amount_second_year
blood_pints_furnished medicare_new_technology_add_on_payment
blood_pints_replaced medicare_spend_down_amount
cardiac_rehab_visits most_common_semi_private_rate
catastrophic multiple_patient_ambulance_transport
chiropractic_services_offset_patient_payment_amount new_coverage_not_implemented_by_managed_care_plan
coinsurance_days newborn_birth_weight
coinsurance_payer_a no_fault_insurance
coinsurance_payer_b non_covered_days
coinsurance_payer_c occupational_therapy_visits
conventional_provider_payment_amount_non_demonstration_claims operating_disproportionate_share_amount
copayment_payer_a operating_indirect_medical_education_amount
copayment_payer_b operating_outlier_amount
copayment_payer_c other_assessments_payer_a
covered_days other_assessments_payer_b
covered_self_administrable_drugs_diagnostic_study other_assessments_payer_c
covered_self_administrable_drugs_emergency other_medical_services_offset_patient_payment_amount
covered_self_administrable_drugs_not_self_administrable oxygen_saturation
deductible_payer_a part_a_demonstration_payment
deductible_payer_b part_b_coinsurance
deductible_payer_c part_b_demonstration_payment
dental_services_offset_patient_payment_amount patient_estimated_responsibility
disabled_beneficiary_under_65_with_lghp patient_height
eligibility_threshold_charity_care patient_liability_amount
epo_units_provided patient_weight
esrd_beneficiary_in_medicare_coordination_period_with_eghp peritoneal_dialysis
esrd_network_funding phs
estimated_responsibility_payer_a physical_therapy_visits
estimated_responsibility_payer_b podiatric_services_offset_patient_payment_amount
estimated_responsibility_payer_c prescription_drugs_offset_patient_payment_amount
flat_rate_surgery_charge professional_charges_included_and_billed_separately
grace_days provider_amount_agreed_to_accept_primary_payer
health_insurance_premiums_offset_patient_payment_amount providers_interim_rate
hearing_ear_services_offset_patient_payment_amount recurring_monthly_income
hematocrit_reading regulatory_surcharges_payer_a
hemoglobin_reading regulatory_surcharges_payer_b
hh_reimbursements_part_a regulatory_surcharges_payer_c
hh_reimbursements_part_b service_furnished_location_number
hh_visits_part_a skilled_nurse_home_visit_hours
hh_visits_part_b special_zip_code_reporting
hha_branch_msa speech_therapy_visits
home_health_aide_home_visit_hours state_charity_care_percent
hospital_no_semi_private_rooms surplus
inpatient_professional_charges_combined_billed veterans_affairs
interest_amount vision_eye_services_offset_patient_payment_amount
lifetime_reserve_days workers_compensation
medicaid_rate_code working_age_beneficiary_spouse_with_eghp
medicaid_rate_code working_age_beneficiary_spouse_with_eghp

Full list of possible values that can be returned in the subscriber.payer_responsibility field on the claim:

payer_responsibility Values
four five
six seven
eight nine
ten eleven
primary secondary
tertiary unknown

MOCKPAYER Additional Details

The MOCKPAYER trading partner id supports a couple different testing scenarios to help API client applications verify their handling of different claims activity results. Similar to some payment processors, special member id values may be used in a MOCKPAYER claims API request to simulate a rejection for that claim.

The 00001234 member id value may be used to simulate a claim being rejected due to an invalid date of service. This will often happen when a claim is submitted for a date of service prior to the date that member became active for coverage.

The 00009999 member id value may be used to simulate a claim being rejected due to an invalid date of birth for the subscriber/patient. This can often happen if the eligiblity API is not utilized prior to submitting a claims API request to verify the member’s information with the trading partner.

When MOCKPAYER claims requests are submitted for processing, they’ll enter a scheduled state if they’re valid claims requests. About 5 minutes or so after submission, those MOCKPAYER claims will be processed. If any of the above values are included in the claims request data, it will be rejected. Otherwise, it will be accepted for further processing.

Claims Convert

Example claims convert request using a local X12 837 test file

cat test_claim.837
ISA*00*          *00*          *01*9012345720000  *01*9088877320000  *151004*2235*U*00501*000000007*0*T*:~GS*HC*901234572000*908887732000*20151004*2235*7*X*005010X222~ST*837*0001~BHT*0019*00*2KYXDRE61GU20TFMBPA*20151004*2231*CH~NM1*41*2*Pokitdok, Inc.*****46*12345~PER*IC**EM*x12info@pokitdok.com~NM1*40*2*MOCKPAYER*****46*12345~HL*1**20*1~PRV*BI*PXC*207Q00000X~NM1*85*1*Blackwell*Elizabeth****XX*1234567893~N3*8311 WARREN H ABERNATHY HWY~N4*SPARTANBURG*SC*293010000~REF*EI*123456789~HL*2*1*22*0~SBR*P*18*******ZZ~NM1*IL*1*Doe*Jane****MI*W000000000~N3*123 N MAIN ST~N4*SPARTANBURG*SC*29301~DMG*D8*19700101*F~NM1*PR*2*MOCKPAYER*****PI*12345~CLM*0f17b46dd39a4bb0add152e99633adbc*60***11:B:1*Y*A*Y*I~HI*BK:4871~LX*1~SV1*HC:99213*60*UN*1.0***1~DTP*472*D8*20140601~SE*24*0001~GE*1*905~IEA*1*000000905~
curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -XPOST -F file=@test_claim.837 https://platform.pokitdok.com/api/v4/claims/convert
client.claims_convert('test_claim.837')
client.claims_convert('test_claim.837')
client.claimsConvert('test_claim.837')
client.claimsConvert("test_claim.837");
try client.claimsCovert(x12ClaimsFilePath: "test_claim.837")

Example claims convert response when a single claim is included in the uploaded X12 837 file

{
    "claims_request": {
        "billing_provider": {
            "address": {
                "address_lines": [
                    "8311 WARREN H ABERNATHY HWY"
                ],
                "city": "SPARTANBURG",
                "state": "SC",
                "zipcode": "293010000"
            },
            "first_name": "Elizabeth",
            "last_name": "Blackwell",
            "npi": "1234567893",
            "tax_id": "123456789",
            "taxonomy_code": "207Q00000X"
        },
        "claim": {
            "claim_frequency": "original",
            "direct_payment": "y",
            "information_release": "informed_consent",
            "place_of_service": "office",
            "plan_participation": "assigned",
            "provider_signature": true,
            "service_lines": [
                {
                    "charge_amount": "60",
                    "diagnosis_codes": [
                        "J101"
                    ],
                    "procedure_code": "99213",
                    "service_date": "2014-06-25",
                    "unit_count": "1.0",
                    "unit_type": "units"
                }
            ],
            "total_charge_amount": "60.0"
        },
        "payer": {
            "id": "12345",
            "organization_name": "MOCKPAYER"
        },
        "receiver": {
            "id": "12345",
            "organization_name": "MOCKPAYER"
        },
        "submitter": {
            "email": "x12info@pokitdok.com",
            "id": "12345",
            "organization_name": "Pokitdok, Inc."
        },
        "subscriber": {
            "address": {
                "address_lines": [
                    "123 N MAIN ST"
                ],
                "city": "SPARTANBURG",
                "state": "SC",
                "zipcode": "29301"
            },
            "birth_date": "1970-01-25",
            "claim_filing_code": "mutually_defined",
            "first_name": "Jane",
            "gender": "female",
            "last_name": "Doe",
            "member_id": "W000000000",
            "payer_responsibility": "primary"
        },
        "trading_partner_id": "MOCKPAYER",
        "transaction_code": "chargeable"
    },
    "converted_edi": "ISA*00*          *00*          *01*9012345720000  *01*9088877320000  *151004*2237*U*00501*000000007*0*T*:~GS*HC*901234572000*908887732000*20151004*2237*7*X*005010X222~ST*837*0001*005010X222~BHT*0019*00*2KYXEO9NJXIZOWBF8WB*20151004*2237*CH~NM1*41*2*Pokitdok, Inc.*****46*12345~PER*IC**EM*x12info@pokitdok.com~NM1*40*2*MOCKPAYER*****46*12345~HL*1**20*1~PRV*BI*PXC*207Q00000X~NM1*85*1*Blackwell*Elizabeth****XX*1234567893~N3*8311 WARREN H ABERNATHY HWY~N4*SPARTANBURG*SC*293010000~REF*EI*123456789~HL*2*1*22*0~SBR*P*18*******ZZ~NM1*IL*1*Doe*Jane****MI*W000000000~N3*123 N MAIN ST~N4*SPARTANBURG*SC*29301~DMG*D8*19700101*F~NM1*PR*2*MOCKPAYER*****PI*12345~CLM*6edff387-bb86-458d-a4a0-1cac77785c21*60***11:B:1*Y*A*Y*I~HI*ABK:J101~LX*1~SV1*HC:99213*60*UN*1.0***1~DTP*472*D8*20140601~SE*24*0001~GE*1*7~IEA*1*000000007~",
    "diagnosis_mappings": [
        {
            "approximate": true,
            "combination": false,
            "destination_scenarios": [
                {
                    "choice_lists": [
                        [
                            {
                                "description": "Influenza due to other identified influenza virus with other respiratory manifestations",
                                "system": "icd10",
                                "value": "J101"
                            },
                            {
                                "description": "Influenza due to unidentified influenza virus with other respiratory manifestations",
                                "system": "icd10",
                                "value": "J111"
                            }
                        ]
                    ]
                }
            ],
            "source_code": {
                "description": "Influenza with other respiratory manifestations",
                "system": "icd9",
                "value": "4871"
            }
        }
    ]
}

Available modes of operation: real-time and batch/async

The Claims Convert endpoint allows a client application to easily convert a X12 837 claims file into claims request models. When a claims file is submitted with ICD-9 diagnosis codes, those claims will be mapped to corresponding ICD-10 codes. If multiple mappings are possible for the ICD-9 code, the first matching ICD-10 code is used in the converted claim. The mapping information that was used during the claim conversion is also returned in the response so that the mapping may be reviewed prior to submitting converted claims to a trading partner. This endpoint operates in a real-time mode when the supplied claims file only includes a single claim. If the claims file includes multiple claims, the endpoint will operate in a batch mode. When multiple claims are detected, a platform activity will be returned to the client application so that it may use the activities endpoint to track the claims conversion process. For each claim detected in the file, a child activity will be created that may be used to track the conversion of individual claims within the file. The activity result for a converted claim will contain a claims_request value that is suitable for submission to the claims endpoint. The activity result will also contain a converted_edi string value that represents the converted X12 837 transaction for that claim. A list of diagnosis_mappings is also included so that the client application may review the scenarios and choices that were utilized to map ICD-9 to ICD-10.

Endpoint Description

Endpoint HTTP Method Description
/claims/convert POST Submit a X12 837 file for conversion

Parameters

The /claims/convert endpoint accepts the following parameters:

Parameter Description
file a X12 837 file

Response

The /claims/convert response contains the following fields:

Field Description
claims_request a JSON object representing the converted claims data that’s suitable for use with the claims endpoint
converted_edi a string representing a converted X12 837 transaction with ICD-9 mapped to ICD-10. The X12 envelope (ISA and GS segments) is preserved from the original X12 file.
diagnosis_mappings a list of diagnosis mapping information that was used to convert ICD-9 to ICD-10 for this claim
diagnosis_mappings.destination_scenarios a list of mapping scenarios that apply for the matched ICD-9 code
diagnosis_mappings.destination_scenarios.choice_lists a list of codes that represent a destination scenario for diagnosis mapping
diagnosis_mappings.destination_scenarios.choice_lists.description a string representing a description of the source ICD-9 code
diagnosis_mappings.destination_scenarios.choice_lists.value a string containing the ICD-9 code value
diagnosis_mappings.destination_scenarios.choice_lists.system a string representing the code system (icd9)
diagnosis_mappings.source_code.description a string representing a description of the source ICD-9 code
diagnosis_mappings.source_code.system a string representing the code system (icd9)
diagnosis_mappings.source_code.value a string containing the ICD-9 code value
diagnosis_mappings.approximate a boolean of whether or not the mapping from ICD-9 to ICD-10 was direct or more of an approximation.
diagnosis_mappings.combination a boolean of whether or not multiple ICD-9 values were combined and mapped to fewer ICD-10 values.

Claims Status

Example claim status request when the patient is also the subscriber on the insurance policy:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/claims/status
client.claims_status({
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
})
client.claimsStatus(
            new Dictionary<string, object> {
                {"patient", new Dictionary<string, object> {
                        {"id", "W000000000"},
                        {"birth_date", "1970-01-25"},
                        {"first_name", "Jane"},
                        {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                        {"npi", "1234567893"},
                        {"last_name", "BLACKWELL"},
                        {"first_name", "ELIZABETH"}
                    }},
                {"service_date", "2014-01-25"},
                {"trading_partner_id", "MOCKPAYER"}
            });
client.claims_status({
    patient: {
        birth_date: "1970-01-25",
        first_name: "JANE",
        last_name: "DOE",
        id: "1234567890"
    },
    provider: {
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893"
    },
    service_date: "2014-01-25",
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"patient\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"JANE\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"id\": \"1234567890\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"service_date\": \"2014-01-25\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claimsStatus(query);
let data = [
    "patient": [
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    ],
    "provider": [
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    ],
    "service_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.claimsStatus(params: data)

Example claim status request when the patient is not the subscriber on the insurance policy:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "patient": {
        "birth_date": "2000-01-25",
        "first_name": "JOHN",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/claims/status
client.claims_status({
    "patient": {
        "birth_date": "2000-01-25",
        "first_name": "JOHN",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "trading_partner_id": "MOCKPAYER"
})
client.claimsStatus(new Dictionary<string, object> {
    {"patient", new Dictionary<string, string> {
        {"birth_date", "2000-01-25"},
        {"first_name", "JOHN"},
        {"last_name", "DOE"},
        {"id", "1234567890"}
    }},
    {"provider", new Dictionary<string, string> {
        {"first_name", "Elizabeth"},
        {"last_name", "Blackwell"},
        {"npi", "1234567893"}
    }},
    {"service_date", "2014-01-25"},
    {"subscriber", new Dictionary<string, string> {
        {"birth_date", "1970-01-25"},
        {"first_name", "JANE"},
        {"last_name", "DOE"},
        {"id", "1234567890"}
    }},
    {"trading_partner_id", "MOCKPAYER"}
});
client.claims_status({
    patient: {
        birth_date: "2000-01-25",
        first_name: "JOHN",
        last_name: "DOE",
        id: "1234567890"
    },
    provider: {
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893"
    },
    service_date: "2014-01-25",
    subscriber: {
        birth_date: "1970-01-25",
        first_name: "JANE",
        last_name: "DOE",
        id: "1234567890"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"patient\": {");
buf.append("        \"birth_date\": \"2000-01-25\",");
buf.append("        \"first_name\": \"JOHN\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"id\": \"1234567890\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"service_date\": \"2014-01-25\",");
buf.append("    \"subscriber\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"JANE\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"id\": \"1234567890\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claimsStatus(query);
let data = [
    "patient": [
        "birth_date": "2000-01-25",
        "first_name": "JOHN",
        "last_name": "DOE",
        "id": "1234567890"
    ],
    "provider": [
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    ],
    "service_date": "2014-01-25",
    "subscriber": [
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.claimsStatus(params: data)

Example claim status request when the claim service period covers several days:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "service_end_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/claims/status
client.claims_status({
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "service_end_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
})
client.claimsStatus(new Dictionary<string, object> {
    {"patient", new Dictionary<string, string> {
        {"birth_date", "1970-01-25"},
        {"first_name", "JANE"},
        {"last_name", "DOE"},
        {"id", "1234567890"}
    }},
        {"provider", new Dictionary<string, string> {
        {"first_name", "Elizabeth"},
        {"last_name", "Blackwell"},
        {"npi", "1234567893"}
    }},
    {"service_date", "2014-01-25"},
    {"service_end_date", "2014-01-25"},
    {"trading_partner_id", "MOCKPAYER"}
});
client.claims_status({
    patient: {
        birth_date: "1970-01-25",
        first_name: "JANE",
        last_name: "DOE",
        id: "1234567890"
    },
    provider: {
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893"
    },
    service_date: "2014-01-25",
    service_end_date: "2014-01-25",
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"patient\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"JANE\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"id\": \"1234567890\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"service_date\": \"2014-01-25\",");
buf.append("    \"service_end_date\": \"2014-01-25\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claimsStatus(query);
let data = [
    "patient": [
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    ],
    "provider": [
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    ],
    "service_date": "2014-01-25",
    "service_end_date": "2014-01-25",
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.claimsStatus(params: data)

Example claim status request using a claim tracking id to refine the search:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "tracking_id": "ABC12345",
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/claims/status
client.claims_status({
    "patient": {
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    },
    "provider": {
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    },
    "service_date": "2014-01-25",
    "tracking_id": "ABC12345",
    "trading_partner_id": "MOCKPAYER"
})
client.claimsStatus(new Dictionary<string, object> {
    {"patient", new Dictionary<string, string> {
        {"birth_date", "1970-01-25"},
        {"first_name", "JANE"},
        {"last_name", "DOE"},
        {"id", "1234567890"}
    }},
    {"provider", new Dictionary<string, string> {
        {"first_name", "Elizabeth"},
        {"last_name", "Blackwell"},
        {"npi", "1234567893"}
    }},
    {"service_date", "2014-01-25"},
    {"tracking_id", "ABC12345"},
    {"trading_partner_id", "MOCKPAYER"}
});
client.claims_status({
    patient: {
        birth_date: "1970-01-25",
        first_name: "JANE",
        last_name: "DOE",
        id: "1234567890"
    },
    provider: {
        first_name: "Elizabeth",
        last_name: "Blackwell",
        npi: "1234567893"
    },
    service_date: "2014-01-25",
    tracking_id: "ABC12345",
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"patient\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"JANE\",");
buf.append("        \"last_name\": \"DOE\",");
buf.append("        \"id\": \"1234567890\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"Elizabeth\",");
buf.append("        \"last_name\": \"Blackwell\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"service_date\": \"2014-01-25\",");
buf.append("    \"tracking_id\": \"ABC12345\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.claimsStatus(query);
let data = [
    "patient": [
        "birth_date": "1970-01-25",
        "first_name": "JANE",
        "last_name": "DOE",
        "id": "1234567890"
    ],
    "provider": [
        "first_name": "Elizabeth",
        "last_name": "Blackwell",
        "npi": "1234567893"
    ],
    "service_date": "2014-01-25",
    "tracking_id": "ABC12345",
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.claimsStatus(params: data)

Example claims status response when the trading partner is unable to locate any matching claims:

{
    "client_id": "<client_id>",
    "patient": {
        "claims": [
            {
                "applied_to_deductible": false,
                "claim_control_number": "NOT APPLICABLE",
                "claim_payment_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "service_date": "2014-01-25",
                "service_end_date": "2014-01-25",
                "statuses": [
                    {
                        "claim_payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "status_category": "Acknowledgement/Not Found-The claim/encounter can not be found in the adjudication system.",
                        "status_category_code": "A4",
                        "status_code": "Claim/encounter not found.",
                        "status_code_value": "35",
                        "status_effective_date": "2014-07-25",
                        "total_claim_amount": {
                            "amount": "0",
                            "currency": "USD"
                        }
                    }
                ],
                "total_claim_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "tracking_id": "47635D71-B08B-47D9-9C11-4630F5"
            }
        ],
        "first_name": "JANE",
        "id": "W100000000",
        "last_name": "DOE"
    },
    "payer": {
        "id": "MOCKPAYER",
        "name": "MOCKPAYER"
    },
    "providers": [
        {
            "first_name": "Elizabeth",
            "last_name": "Blackwell",
            "npi": "1234567893"
        }
    ],
    "submitter": {
        "first_name": "Elizabeth",
        "id": "1234567893",
        "last_name": "Blackwell"
    },
    "trading_partner_id": "MOCKPAYER"
}

Example claims status response when there is an error in the formatting of the provider’s NPI or name, and they are unable to find a match:

{  
    "client_id": "<client_id>",
    "payer":{  
        "name":"MOCKPAYER",
        "id":"MOCKPAYER"
    },
    "providers":[  
        {  
            "trace_number":"0",
            "first_name":"Elizabeth",
            "last_name":"Blackwell",
            "npi":"123456789",
            "statuses":[  
                {  
                    "status_code":"Entity's National Provider Identifier (NPI).",
                    "status_code_value": "562",
                    "status_category":"Data Search Unsuccessful - The payer is unable to return status on the requested claim(s) based on the submitted search criteria.",
                    "status_category_code":"D0",
                    "status_effective_date":"2015-09-25"
                }
            ]
        }
    ],
    "correlation_id":"37045a41-634a-4439-a555-d8d6cbb445ce",
    "trading_partner_id":"MOCKPAYER",
    "submitter":{  
        "first_name":"Elizabeth",
        "last_name":"Aye-Ay",
        "id":"MOCKPAYER"
    }
}

Example claims status response when adjudication is finalized and the claim has been paid:

{
    "client_id": "<client_id>",
    "patient": {
        "claims": [
            {
                "adjudication_finalized_date": "2014-06-25",
                "applied_to_deductible": false,
                "check_number": "08608-000000000",
                "claim_control_number": "EV30000WY00",
                "claim_payment_amount": {
                    "amount": "156",
                    "currency": "USD"
                },
                "remittance_date": "2014-06-25",
                "service_date": "2014-06-25",
                "service_end_date": "2014-06-25",
                "services": [
                    {
                        "charge_amount": {
                            "amount": "20",
                            "currency": "USD"
                        },
                        "cpt_code": "D1206",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2014-06-25",
                        "service_end_date": "2014-06-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_category_code": "F2",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "72",
                            "currency": "USD"
                        },
                        "cpt_code": "D1110",
                        "payment_amount": {
                            "amount": "72",
                            "currency": "USD"
                        },
                        "service_date": "2014-06-25",
                        "service_end_date": "2014-06-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Payment-The claim/line has been paid.",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_category_code": "F1",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "29",
                            "currency": "USD"
                        },
                        "cpt_code": "D0431",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2014-06-25",
                        "service_end_date": "2014-06-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_category_code": "F2",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "52",
                            "currency": "USD"
                        },
                        "cpt_code": "D0274",
                        "payment_amount": {
                            "amount": "48",
                            "currency": "USD"
                        },
                        "service_date": "2014-06-25",
                        "service_end_date": "2014-06-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Payment-The claim/line has been paid.",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_category_code": "F1",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "41",
                            "currency": "USD"
                        },
                        "cpt_code": "D0120",
                        "payment_amount": {
                            "amount": "36",
                            "currency": "USD"
                        },
                        "service_date": "2014-06-25",
                        "service_end_date": "2014-06-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Payment-The claim/line has been paid.",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_category_code": "F1",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    }
                ],
                "statuses": [
                    {
                        "adjudication_finalized_date": "2014-06-25",
                        "check_number": "08608-000000000",
                        "claim_payment_amount": {
                            "amount": "156",
                            "currency": "USD"
                        },
                        "remittance_date": "2014-06-25",
                        "status_category": "Finalized/Payment-The claim/line has been paid.",
                        "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                        "status_code_value": "107",
                        "status_category_code": "F1",
                        "status_effective_date": "2014-07-25",
                        "total_claim_amount": {
                            "amount": "214",
                            "currency": "USD"
                        }
                    }
                ],
                "total_claim_amount": {
                    "amount": "214",
                    "currency": "USD"
                },
                "tracking_id": "B82A26AE-984A-480B-9B20-81DD3E"
            }
        ],
        "first_name": "JANE",
        "id": "W199000000",
        "last_name": "DOE"
    },
    "payer": {
        "id": "MOCKPAYER",
        "name": "MOCKPAYER"
    },
    "providers": [
        {
            "first_name": "ADAM",
            "last_name": "SMITH",
            "npi": "1320000000"
        }
    ],
    "submitter": {
        "first_name": "ADAM",
        "id": "1326000000",
        "last_name": "SMITH"
    },
    "trading_partner_id": "MOCKPAYER"
}

Example claims status response when adjudication is finalized and the claim has been denied:

{
    "client_id": "<client_id>",
    "patient": {
        "claims": [
            {
                "adjudication_finalized_date": "2013-07-25",
                "applied_to_deductible": false,
                "claim_control_number": "EM000000000",
                "claim_payment_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "remittance_date": "2013-07-25",
                "service_date": "2013-07-25",
                "service_end_date": "2013-07-25",
                "services": [
                    {
                        "charge_amount": {
                            "amount": "375",
                            "currency": "USD"
                        },
                        "cpt_code": "D9220",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",                                                                     
                                "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "460",
                            "currency": "USD"
                        },
                        "cpt_code": "D7240",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",
                                "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "140",
                            "currency": "USD"
                        },
                        "cpt_code": "D7140",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",                                
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",
                                "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    }
                ],
                "statuses": [
                    {
                        "adjudication_finalized_date": "2013-07-25",
                        "claim_payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "remittance_date": "2013-07-25",
                        "status_category": "Finalized/Denial-The claim/line has been denied.",
                        "status_category_code": "F2",
                        "status_code": "Subscriber and subscriber id not found.",
                        "status_code_value": "33",                        
                        "status_effective_date": "2014-07-25",
                        "total_claim_amount": {
                            "amount": "975",
                            "currency": "USD"
                        }
                    }
                ],
                "total_claim_amount": {
                    "amount": "975",
                    "currency": "USD"
                },
                "tracking_id": "D92BD44D-9F9F-4DE1-890B-61EF86"
            },
            {
                "adjudication_finalized_date": "2013-08-25",
                "applied_to_deductible": false,
                "claim_control_number": "EH000000000",
                "claim_payment_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "remittance_date": "2013-08-25",
                "service_date": "2013-07-25",
                "service_end_date": "2013-07-25",
                "services": [
                    {
                        "charge_amount": {
                            "amount": "375",
                            "currency": "USD"
                        },
                        "cpt_code": "D9220",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",    
                                "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "460",
                            "currency": "USD"
                        },
                        "cpt_code": "D7240",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",
                                 "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "140",
                            "currency": "USD"
                        },
                        "cpt_code": "D7140",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2013-07-25",
                        "service_end_date": "2013-07-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F2",
                                "status_code": "Subscriber and subscriber id not found.",
                                "status_code_value": "33",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    }
                ],
                "statuses": [
                    {
                        "adjudication_finalized_date": "2013-08-25",
                        "claim_payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "remittance_date": "2013-08-25",
                        "status_category": "Finalized/Denial-The claim/line has been denied.",                        
                        "status_category_code": "F2",
                        "status_code": "Subscriber and subscriber id not found.",
                        "status_code_value": "33",
                        "status_effective_date": "2014-07-25",
                        "total_claim_amount": {
                            "amount": "975",
                            "currency": "USD"
                        }
                    }
                ],
                "total_claim_amount": {
                    "amount": "975",
                    "currency": "USD"
                },
                "tracking_id": "D92BD44D-9F9F-4DE1-890B-61EF86"
            }
        ],
        "first_name": "JANE",
        "id": "W100000000",
        "last_name": "SMITH"
    },
    "payer": {
        "id": "MOCKPAYER",
        "name": "MOCKPAYER"
    },
    "providers": [
        {
            "first_name": "JOHN",
            "last_name": "DOE",
            "npi": "1234567890"
        }
    ],
    "submitter": {
        "first_name": "JOHN",
        "id": "1234567890",
        "last_name": "DOE"
    },
    "trading_partner_id": "MOCKPAYER"
}

Example claims status response when adjudication is finalized, the claim has been denied (not paid) and the charges are applied to the deductible:

{
    "client_id": "<client_id>",
    "patient": {
        "claims": [
            {
                "adjudication_finalized_date": "2014-04-25",
                "applied_to_deductible": true,
                "check_number": "814000000000000",
                "claim_control_number": "E6Y0C7NQG00",
                "claim_payment_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "remittance_date": "2014-04-25",
                "service_date": "2014-03-25",
                "service_end_date": "2014-03-25",
                "services": [
                    {
                        "charge_amount": {
                            "amount": "137",
                            "currency": "USD"
                        },
                        "cpt_code": "99213",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2014-03-25",
                        "service_end_date": "2014-03-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F1",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    },
                    {
                        "charge_amount": {
                            "amount": "290",
                            "currency": "USD"
                        },
                        "cpt_code": "76830",
                        "payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "service_date": "2014-03-25",
                        "service_end_date": "2014-03-25",
                        "statuses": [
                            {
                                "status_category": "Finalized/Denial-The claim/line has been denied.",
                                "status_category_code": "F1",
                                "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                                "status_code_value": "107",
                                "status_effective_date": "2014-07-25"
                            }
                        ]
                    }
                ],
                "statuses": [
                    {
                        "adjudication_finalized_date": "2014-04-25",
                        "check_number": "814000000000000",
                        "claim_payment_amount": {
                            "amount": "0",
                            "currency": "USD"
                        },
                        "remittance_date": "2014-04-25",
                        "status_category": "Finalized/Denial-The claim/line has been denied.",
                        "status_category_code": "F1",
                        "status_code": "Processed according to contract provisions (Contract refers to provisions that exist between the Health Plan and a Provider of Health Care Services)",
                        "status_code_value": "107",
                        "status_effective_date": "2014-07-25",
                        "total_claim_amount": {
                            "amount": "427",
                            "currency": "USD"
                        }
                    }
                ],
                "total_claim_amount": {
                    "amount": "427",
                    "currency": "USD"
                },
                "tracking_id": "4AAA5F0D-986E-4C69-A428-67DA60"
            }
        ],
        "first_name": "JANE",
        "last_name": "DOE"
    },
    "payer": {
        "id": "MOCKPAYER",
        "name": "MOCKPAYER"
    },
    "providers": [
        {
            "first_name": "JOHN",
            "last_name": "DOE",
            "npi": "1700000000"
        }
    ],
    "submitter": {
        "first_name": "JOHN",
        "id": "1700000000",
        "last_name": "DOE"
    },
    "trading_partner_id": "MOCKPAYER"
}

Available modes of operation: batch/async or real-time

The claims status endpoint allows an application to request information from a trading partner about previously submitted claims. You may send a request to a trading partner to determine where the claim is in their adjudication system and the status of the claim. The Claims Status endpoint can be used to query the status of multiple claims. The claims status endpoint can be used to check the status of claims in the trading partners’ system regardless of the submitter or means of submission. Claims status DOES NOT offer insight into where a claim is in PokitDok’s system (for more info on monitoring PokitDok’s processing of your claims, please see our activities endpoint and callback url).

The speed at which a claim is adjudicated is dependent on the trading partner. On average it takes 5-7 days for a claim to enter a payer’s adjudication system, thus it is recommended to wait at least a week after submitting a claim to check its status.

To understand how the Claims and Claims Status Endpoints work together, see the claims API workflow.

Endpoint Description

Endpoint HTTP Method Description
/claims/status POST Submit a claim status request to the specified trading partner.

Parameters

The /claims/status endpoint accepts the following parameters:

Parameter Description
claim_charge_amount Total claim charge amount.
patient The patient associated with the claim. Uses the member object.
provider.first_name The provider’s first name when the provider is an individual.
provider.middle_name The provider’s middle name when the provider is an individual.
provider.last_name The provider’s last name when the provider is an individual.
provider.suffix The provider’s suffix when the provider is an individual.
provider.tax_id The provider’s tax identifier.
provider.npi The NPI for the billing provider.
provider.organization_name The provider’s name when the provider is an organization. first_name and last_name should be omitted when sending organization_name.
provider.service_provider_number May be used when no Tax ID or NPI are available, and Service Provider ID has been assigned by the Trading Partner who is receiving the request.
service_date The date services were performed or started for the claim service period. In ISO8601 format (YYYY-MM-DD).
service_end_date Optional: The date services ended for the claim service period. In ISO8601 format (YYYY-MM-DD).
subscriber Optional: The subscriber associated with the claim. Specify when the patient is not the subscriber. Uses the member object.
tracking_id Optional: The payer’s claim tracking id. Specify this value to refine the search criteria for a claim. If a payer claim control number was returned on the claim submission, this number should be used in the tracking id field for the greatest chance of returning valid claim status information.
trading_partner_id Unique id for the intended trading partner, as specified by the Trading Partners Endpoint.
payer Information associated with the payer of the claim.
payer.organization_name The organization name of the payer.
payer.id The unique identifier of the payer.
receiver Information associated with the submitter of the claim status request.
receiver Information associated with the submitter of the claim status request.
receiver.first_name The receiver’s first name when the receiver is an individual.
receiver.middle_name The receiver’s middle name when the receiver is an individual.
receiver.last_name The receiver’s last name when the receiver is an individual.
receiver.id The unique identifier of the receiver.
receiver.organization_name The receiver’s name when the receiver is an organization. first_name and last_name should be omitted when sending organization_name.
pharmacy_prescription_number The pharmacy prescription number associated with the claim

Response

The /claim/status response contains the following fields:

Field Description
client_id The unique identifier associated with the client making the claims status request.
trading_partner_id Unique id for the intended trading partner, as specified by the Trading Partners endpoint.
payer Information associated with the payer of the claim.
payer.name The name of the payer
payer.id The unique identifier of the payer.
submitter Information associated with the submitter of the claim status request.
submitter.first_name The submitter’s first name when the submitter is an individual.
submitter.middle_name The submitter’s middle name when the submitter is an individual.
submitter.last_name The submitter’s last name when the submitter is an individual.
submitter.id The unique identifier of the submitter.
submitter.organization_name The submitter’s name when the submitter is an organization.
submitter.tracking_id The tracking identifier associated with the submitter.
submitter.statuses A list of statuses associated with the submitter. Uses the status information object.
submitter.accepted_quantity # of units being accepted.
submitter.rejected_quantity # of units being rejected.
submitter.amount_in_process The monetary amount of claims currently in process. Uses the monetary amount object.
submitter.amount_returned The monetary amount returned based on claims. Uses the monetary amount object.
providers List of providers associated with the claim status request.
providers.first_name The provider’s first name when the provider is an individual.
providers.middle_name The provider’s middle name when the provider is an individual.
providers.last_name The provider’s last name when the provider is an individual.
providers.suffix The provider’s suffix when the provider is an individual.
providers.tax_id The unique tax identifier of the provider.
providers.npi The provider’s NPI.
providers.service_provider_number The service provider number assigned by the trading partner.
providers.trace_number The trace number associated with the provider.
providers.secondary_id Secondary identifiers for the provider.
providers.secondary_id.id_qualifier Qualifier associated with the provider’s secondary identifier.
providers.secondary_id.id The actual id associated with the provider’s secondary identifier.
providers.organization_name The provider’s name when the providers is an organization.
providers.statuses A list of statuses associated with the provider. Uses the status information object.
providers.accepted_quantity # of units being accepted.
providers.rejected_quantity # of units being rejected.
providers.amount_in_process The monetary amount of claims currently in process. Uses the monetary amount object.
providers.amount_returned The monetary amount returned based on claims. Uses the monetary amount object.
patient Information about a patient including any matching claims.
patient.claims A list of matching claims returned by the trading partner for a claims status request.
patient.claims.adjudication_finalized_date The date adjudication was finalized for the claim. In ISO8601 format (YYYY-MM-DD).
patient.claims.applied_to_deductible Boolean that indicates whether or not claim charges are applied to the deductible.
patient.claims.patient_control_number The control number associated with a patient. This number is assigned by the payer.
patient.claims.claim_id_number The id number associated with a claim.
patient.claims.bill_type_id The bill type id associated with a claim.
patient.claims.pharmacy_prescription_number The pharmacy prescription number associated with a claim.
patient.claims.tracking_id The patient’s claim tracking id.
patient.claims.status_code Indicates the status of the service on the claim.
patient.claims.check_number The check or EFT trace number for a claim payment.
patient.claims.claim_control_number The Payer’s Claim Control Number.
patient.claims.claim_payment_amount The amount that’s been paid on the claim. Uses the monetary amount object.
patient.claims.remittance_date The date the check was issued or EFT funds became available. In ISO8601 format (YYYY-MM-DD).
patient.claims.service_date The date services were performed or started for the claim service period. In ISO8601 format (YYYY-MM-DD).
patient.claims.service_end_date The date services ended for the claim service period. In ISO8601 format (YYYY-MM-DD).
patient.claims.services A list of services linked to the claim.
patient.claims.services.charge_amount The amount charged for a particular service on the claim. Uses the monetary amount object.
patient.claims.services.cpt_code The CPT code indicating the type of service that was performed.
patient.claims.services.payment_amount The amount paid for a particular service on the claim. Uses the monetary amount object.
patient.claims.services.service_date The date the service was performed or started for the claim service period. In ISO8601 format (YYYY-MM-DD).
patient.claims.services.service_end_date The date the service ended for the claim service period. In ISO8601 format (YYYY-MM-DD).
patient.claims.services.statuses A listing of status information for the claim. Uses the status information object.
patient.claims.services.line_item_control_number The line item control number associated with a patient’s service.
patient.claims.services.pharmacy_prescription_number The pharmacy prescription number associated with a service.
patient.claims.statuses A listing of status information for the claim. Uses the status information object.
patient.claims.total_claim_amount The total charges submitted for the claim. Uses the monetary amount object.
patient.first_name The patient’s first name as specified on their policy.
patient.middle_name The patient’s middle name as specified on their policy.
patient.id The patient’s member identifier.
patient.last_name The patient’s last name as specified on their policy.
patient.suffix The patient’s suffix.

Additional Object Tables

Member object:

Field Description
birth_date The members’s birth date as specified on their policy. In ISO8601 format (YYYY-MM-DD).
gender The member’s gender (Male, Female, Unknown)
last_name The member’s last name as specified on their policy.
first_name The member’s first name as specified on their policy.
middle_name The member’s middle name as specified on their policy.
suffix The suffix for the member
id The member identifier.

Status Information object:

Field Description
status_category A verbose message about the general category of the claim’s status (e.g. accepted, rejected, etc.). This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
status_category_code The code indicating the general category of the claim’s status. The status category code is more appropriate for use by the software using the claims status API to categorize the information. A full listing of codes can be found here.
status_effective_date The effective date associated with a claim’s status. In ISO8601 format (YYYY-MM-DD).
secondary_status_category A verbose message about the general category of the claim’s status (e.g. accepted, rejected, etc.). This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
secondary_status_category_code The code indicating the general category of the claim’s status. The status category code is more appropriate for use by the software using the claims status API to categorize the information. A full listing of codes can be found here.
secondary_status_code Indicates the status of the claim. This status code provides more detail to support the status category. This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
tertiary_status_category A verbose message about the general category of the claim’s status (e.g. accepted, rejected, etc.). This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
tertiary_status_category_code The code indicating the general category of the claim’s status. The status category code is more appropriate for use by the software using the claims status API to categorize the information. A full listing of codes can be found here.
tertiary_status_code Indicates the status of the claim. This status code provides more detail to support the status category. This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
adjudication_finalized_date Date that the claim is paid or declined. In ISO8601 format (YYYY-MM-DD).
remittance_date The date the check was issued or EFT funds became available. In ISO8601 format (YYYY-MM-DD).
status_code Indicates the status of the claim. This status code provides more detail to support the status category. This value is suitable for display to users of a system utilizing the claims status API. A full listing of possible values can be found here.
status_code_value Indicates the raw status code value returned in the X12 277 claim status response. This value may be helpful to API clients that previously worked with X12 277 data directly and wish to continue to operate on the status code value while using the claims status API’s JSON response format. A full listing of possible values can be found here.
total_claim_amount The total monetary amount of the claim. Uses the monetary amount object.
claim_payment_amount The amount that’s been paid on the claim. Uses the monetary amount object.
check_number The check or EFT trace number for a claim payment.

Monetary amount object:

Field Description
amount The value amount for this item.
currency The currency used in the amount.

Claims Drafts

Endpoint Description

The drafts endpoint allows a user to create and upload claims that are not ready for submission or are intended to be submitted at a later date. Once the drafts are uploaded, Claims Management App users can view the drafts in their app and submit them as 837 claims once they are complete. Since a draft that is uploaded to our system does not pass through our 837 validation, the draft can be submitted while it is still in an incomplete state. The Claims Drafts API is only available to Claims Management App users. For more information about the Claims Management App, please visit our product page: https://pokitdok.com/business/claims-management/ or contact your local biz-dev representative: https://pokitdok.com/contact/

Endpoint HTTP Method Description
/claims/drafts/ POST Submit a new claim object for storage.
/claims/drafts/ GET Fetch an index listing of current claim drafts that have been stored.
/claims/drafts/id GET Fetch an existing Claim Draft object that was previously stored.
/claims/drafts/id PUT Update an existing claim draft object.
/claims/drafts/id DELETE Remove a claim draft from the system.
/claims/validate/ POST Validate a claims request based on the X12 837 specifications.
/claims/drafts/id/validate GET Fetch a claim draft’s validation status.

Parameters

The /claims/validate/ endpoint accepts the same parameters as the Claims endpoint here.

The /claims/drafts endpoint accepts the folowing parameter:

Parameter Description
draft The claim draft.

Response

The /claims/drafts response contains the following fields:

Parameter Description
id The ID of the draft.
draft The claim draft.
validation_result The result of the validation if requested.

Eligibility

Example eligibility request to determine general health benefit coverage using the primary_search_option:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"id", "W000000000"},
                    {"birth_date", "1970-01-25"},
                    {"first_name", "Jane"},
                    {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"service_types", new string[] { "health_benefit_plan_coverage" }},
                {"trading_partner_id", "MOCKPAYER"}
        });
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request to determine general health benefit coverage using the no_first_name_search search option:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"id", "W000000000"},
                    {"birth_date", "1970-01-25"},
                    {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"service_types", new string[] { "health_benefit_plan_coverage" }},
                {"trading_partner_id", "MOCKPAYER"}
        });
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request to determine general health benefit coverage using the no_birth_date_search search option:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"id", "W000000000"},
                    {"first_name", "Jane"},
                    {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"service_types", new string[] { "health_benefit_plan_coverage" }},
                {"trading_partner_id", "MOCKPAYER"}
        });
client.eligibility({
    member: {
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request to determine general health benefit coverage using the no_name_search search option:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"id", "W000000000"},
                    {"birth_date", "1970-01-25"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"service_types", new string[] { "health_benefit_plan_coverage" }},
                {"trading_partner_id", "MOCKPAYER"}
        });
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request to determine general health benefit coverage using the no_id_search search option:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"birth_date", "1970-01-25"},
                    {"first_name", "Jane"},
                    {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"service_types", new string[] { "health_benefit_plan_coverage" }},
                {"trading_partner_id", "MOCKPAYER"}
        });
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request to determine general health benefit coverage when a member has a specific group number value assigned:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000",
        "group_number": "123456"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000",
        "group_number": "123456"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER"
})
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000",
        group_number: "123456"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER"
})
client.eligibility(
    new Dictionary<string, object> {
        {"member", new Dictionary<string, string> {
                {"birth_date", "1970-01-25"},
                {"first_name", "Jane"},
                {"last_name", "Doe"},
                {"id", "W000000000"},
                {"group_number", "123456"}
            }},
        {"provider", new Dictionary<string, string> {
                {"first_name", "ELIZABETH"},
                {"last_name", "BLACKWELL"},
                {"npi", "1234567893"}
            }},
        {"trading_partner_id", "MOCKPAYER"}
    }
);
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\",");
buf.append("        \"group_number\": \"123456\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000",
        "group_number": "123456"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Some trading partners support eligibility requests using specific service type codes. Here’s an example using a service type code to request eligibility information:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "service_types": [ "emergency_services" ],
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "service_types": [ "emergency_services" ],
    "trading_partner_id": "MOCKPAYER"
})
client.eligibility(
    new Dictionary<string, object> {
        {"member", new Dictionary<string, string> {
                {"birth_date", "1970-01-25"},
                {"first_name", "Jane"},
                {"last_name", "Doe"},
                {"id", "W000000000"}
            }},
        {"provider", new Dictionary<string, string> {
                {"first_name", "ELIZABETH"},
                {"last_name", "BLACKWELL"},
                {"npi", "1234567893"}
            }},
        {"service_types", new string[] { "emergency_services" }},
        {"trading_partner_id", "MOCKPAYER"}
    }
);
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    "service_types": [ "emergency_services" ],
    "trading_partner_id": "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"service_types\": [\"emergency_services\"],");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "service_types": [ "emergency_services" ],
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Some trading partners support eligibility requests using a CPT code. Here’s an example using a CPT code to request eligibility information:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "cpt_code": "81291",
    "trading_partner_id": "MOCKPAYER"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "cpt_code": "81291",
    "trading_partner_id": "MOCKPAYER"
})
client.eligibility(
    new Dictionary<string, object> {
        {"member", new Dictionary<string, string> {
                {"birth_date", "1970-01-25"},
                {"first_name", "Jane"},
                {"last_name", "Doe"},
                {"id", "W000000000"}
            }},
        {"provider", new Dictionary<string, string> {
                {"first_name", "ELIZABETH"},
                {"last_name", "BLACKWELL"},
                {"npi", "1234567893"}
            }},
        {"cpt_code", "81291"},
        {"trading_partner_id", "MOCKPAYER"}
    }
);
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    cpt_code: "81291",
    trading_partner_id: "MOCKPAYER"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"cpt_code\": \"81291\",");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "cpt_code": "81291",
    "trading_partner_id": "MOCKPAYER"
] as [String:Any]
try client.eligibility(params: data)

Example medicare_national eligibility request including HCPCS code:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "procedure_id": "G0120",
    "procedure_id_qualifier": "hcpcs",
    "trading_partner_id": "medicare_national"
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "procedure_id": "G0120",
    "procedure_id_qualifier": "hcpcs",
    "trading_partner_id": "medicare_national"
})
 client.eligibility (
            new Dictionary<string, object> {
                {"member", new Dictionary<string, object> {
                    {"id", "W000000000"},
                    {"birth_date", "1970-01-25"},
                    {"first_name", "Jane"},
                    {"last_name", "Doe"}
                    }},
                {"provider", new Dictionary<string, object> {
                    {"npi", "1234567893"},
                    {"last_name", "BLACKWELL"},
                    {"first_name", "ELIZABETH"}
                    }},
                {"procedure_id", "G0120"},
                {"procedure_id_qualifier", "hcpcs"},
                {"trading_partner_id", "medicare_national"}
        });
client.eligibility({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    procedure_id: "G0120",
    procedure_id_qualifier: "hcpcs",
    trading_partner_id: "medicare_national"
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"procedure_id\": \"G0120\",");
buf.append("    \"procedure_id_qualifier\": \"hcpcs\",");
buf.append("    \"trading_partner_id\": \"medicare_national\"");
buf.append("}");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "procedure_id": "G0120",
    "procedure_id_qualifier": "hcpcs",
    "trading_partner_id": "medicare_national"
] as [String:Any]
try client.eligibility(params: data)

Example eligibility request using custom application data for easy handling of asynchronous responses:

curl -i -H "Authorization: Bearer $ACCESS_TOKEN" -H "Content-Type: application/json" -XPOST -d '{
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER",
    "application_data": {
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    }
}' https://platform.pokitdok.com/api/v4/eligibility/
client.eligibility({
    "member": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "trading_partner_id": "MOCKPAYER",
    "application_data": {
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    }
})
client.eligibility(
    new Dictionary<string, object> {
        {"member", new Dictionary<string, string> {
                {"birth_date", "1970-01-25"},
                {"first_name", "Jane"},
                {"last_name", "Doe"},
                {"id", "W000000000"}
            }},
        {"provider", new Dictionary<string, string> {
                {"first_name", "ELIZABETH"},
                {"last_name", "BLACKWELL"},
                {"npi", "1234567893"}
            }},
        {"trading_partner_id", "MOCKPAYER"},
        {"application_data", new Dictionary<string, object> {
                {"patient_id", "ABC1234XYZ"},
                {"location_id", 123},
                {"transaction_uuid", "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"}
            }}
);
client.eligiblity({
    member: {
        birth_date: "1970-01-25",
        first_name: "Jane",
        last_name: "Doe",
        id: "W000000000"
    },
    provider: {
        first_name: "ELIZABETH",
        last_name: "BLACKWELL",
        npi: "1234567893"
    },
    trading_partner_id: "MOCKPAYER",
    application_data: {
        patient_id: "ABC1234XYZ",
        location_id: 123,
        transaction_uuid: "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    }
})
StringBuffer buf = new StringBuffer();

buf.append("{");
buf.append("    \"member\": {");
buf.append("        \"birth_date\": \"1970-01-25\",");
buf.append("        \"first_name\": \"Jane\",");
buf.append("        \"last_name\": \"Doe\",");
buf.append("        \"id\": \"W000000000\"");
buf.append("    },");
buf.append("    \"provider\": {");
buf.append("        \"first_name\": \"ELIZABETH\",");
buf.append("        \"last_name\": \"BLACKWELL\",");
buf.append("        \"npi\": \"1234567893\"");
buf.append("    },");
buf.append("    \"trading_partner_id\": \"MOCKPAYER\",");
buf.append("    \"application_data\": {");
buf.append("        \"patient_id\": \"ABC1234XYZ\",");
buf.append("        \"location_id\": 123,");
buf.append("        \"transaction_uuid\": \"93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf\"");
buf.append("    }");
buf.append("");

JSONObject query = (JSONObject) JSONValue.parse(buf.toString());
Map<String, Object> results = client.eligibility(query);
let data = [
    "member": [
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "last_name": "Doe",
        "id": "W000000000"
    ],
    "provider": [
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    ],
    "trading_partner_id": "MOCKPAYER",
    "application_data": [
        "patient_id": "ABC1234XYZ",
        "location_id": 123,
        "transaction_uuid": "93f38f1b-b2cd-4da1-8b55-c6e3ab380dbf"
    ]
] as [String:Any]
try client.eligibility(params: data)

Example eligibility response when the trading partner is unable to respond at this time:

{   
    "client_id": "<client_id>",
    "coverage": {
        "active": false
        },
    "follow_up_action": "resubmission_allowed",
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "reject_reason": "unable_to_respond_now",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "gender": "unknown",
        "id": "W000000000",
        "last_name": "Doe"
    },
    "trading_partner_id": "MOCKPAYER",
    "valid_request": true
}

Example eligibility response when the trading partner is unable to find the member specified in the eligibility request:

{
    "client_id": "<client_id>",
    "coverage": {
        "service_date": "2014-06-25"
    },
    "follow_up_action": "correct_and_resubmit",
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "reject_reason": "subscriber_insured_not_found",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "id": "W000000000",
        "last_name": "Doe"
    },
    "trading_partner_id": "MOCKPAYER",
    "valid_request": false
}

Example eligibility response when the trading partner is able to find a member based on the eligibility request, but the specified birth date does not match their records:

{
    "client_id": "<client_id>",
    "coverage": {
        "service_date": "2014-06-25"
    },
    "follow_up_action": "correct_and_resubmit",
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "reject_reason": "patient_birth_date_mismatch",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "id": "W000000000",
        "last_name": "Doe"
    },
    "trading_partner_id": "MOCKPAYER",
    "valid_request": false
}

Example eligibility response when the trading partner cannot process eligibility requests using a CPT code:

{
    "client_id": "<client_id>",
    "coverage": {
        "service_date": "2014-06-25"
    },
    "follow_up_action": "resubmission_not_allowed",
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "reject_reason": "unable_to_respond_now",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "id": "W000000000",
        "last_name": "Doe"
    },
    "trading_partner_id": "MOCKPAYER",
    "valid_request": false
}

Example eligibility response when the trading partner returns multiple reject reason codes and cannot process the request:

{
    "client_id": "<client id>",
    "coverage": {
        "active": false,
        "cannot_process": [
            {
                "messages": [
                    {
                        "message": "Payer cannot process the specified service types."
                    }
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ],
                "service_type_codes": [
                    "30"
                ]
            }
        ]
    },
    "follow_up_action": "correct_and_resubmit",
    "reject_reason": "provider_not_on_file",
    "subscriber": {
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "id": "W000000000",
        "last_name": "Doe",
        "rejections": [
            {
                "valid_request": false,
                "reject_reason": "invalid_date_of_service",
                "follow_up_action": "correct_and_resubmit"
            },
            {
                "valid_request": false,
                "reject_reason": "patient_birth_date_mismatch",
                "follow_up_action": "correct_and_resubmit"
            },
            {
                "valid_request": false,
                "reject_reason": "death_precedes_date_of_service",
                "follow_up_action": "resubmission_not_allowed"
            }
        ]
    },
    "valid_request": false,
    "trading_partner_id": "MOCKPAYER",
    "pharmacy": {
        "is_eligible": false
    }
}

Sample eligibility response for a successfully executed eligibility request:

{   
    "client_id": "<client_id>", 
    "summary": {
         "deductible": {
             "individual": {
                  "in_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "16.43"
                     },
                      "limit": {
                          "currency": "USD",
                          "amount": "3000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "2983.57"
                      }
                    },
                  "out_of_network": {
                       "applied": {
                          "currency": "USD",
                          "amount": "16.43"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "6000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "5983.57"
                      }
                  }
              },
              "family": {
                 "in_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "43.91"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "6000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "5956.09"
                      }
                 },
                  "out_of_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "43.91"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "12000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "11956.09"
                      }
                  }
              }
          },
          "out_of_pocket": {
              "individual": {
                  "in_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "16.43"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "3000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "2983.57"
                      }
                  },
                  "out_of_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "16.43"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "12500"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "12483.57"
                      }
                  }
              },
              "family": {
                  "in_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "43.91"
                      },
                     "limit": {
                          "currency": "USD",
                          "amount": "6000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "5956.09"
                      }
                 },
                  "out_of_network": {
                      "applied": {
                          "currency": "USD",
                          "amount": "43.91"
                      },
                      "limit": {
                          "currency": "USD",
                          "amount": "25000"
                      },
                      "remaining": {
                          "currency": "USD",
                          "amount": "24956.09"
                      }
                  }
              }
          }
      },

    "coverage": {
        "coinsurance": [
            {
                "benefit_percent": 0.0,
                "authorization_required": "yes",
                "coverage_level": "employee_and_spouse",
                "in_plan_network": "yes",
                "messages": [],
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "professional_physician_visit_office"
                ]
            },
            {
                "benefit_percent": 0.5,
                "coverage_level": "employee_and_spouse",
                "in_plan_network": "no",
                "messages": [],
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "professional_physician_visit_office"
                ]
            }
        ],
        "copay": [
            {
                "authorization_required": "yes",
                "copayment": {
                    "amount": "0",
                    "currency": "USD"
                },
                "coverage_level": "employee_and_spouse",
                "in_plan_network": "yes",
                "messages": [
                    {
                        "message": "PRIMARY OFFICE"
                    }
                ],
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "professional_physician_visit_office"
                ]
            },
            {
                "copayment": {
                    "amount": "0",
                    "currency": "USD"
                },
                "coverage_level": "employee_and_spouse",
                "in_plan_network": "not_applicable",
                "messages": [
                    {
                        "message": "GYN OFFICE VS"
                    },
                    {
                        "message": "GYN VISIT"
                    },
                    {
                        "message": "SPEC OFFICE"
                    },
                    {
                        "message": "SPEC VISIT"
                    },
                    {
                        "message": "PRIME CARE VST"
                    },
                    {
                        "message": "Plan Requires PreCert"
                    },
                    {
                        "message": "Commercial"
                    },
                    {
                        "message": "Plan includes NAP"
                    },
                    {
                        "message": "Pre-Existing may apply"
                    }
                ],
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "professional_physician_visit_office"
                ]
            }
        ],
    "benefit_related_entities": [
           {
             "address": {
                 "address_lines": [
                     "123 TEST ROAD"
                 ], 
                 "city": "LITTLE TOWN", 
                 "state": "CA", 
                 "zipcode": "12345"
             }, 
             "contacts": [
                 {
                     "phone": "8001234567"
                 }
             ], 
             "entity_identifier_code": "primary_care_provider", 
             "entity_type": "organization", 
             "first_name": "JANET", 
             "middle_name": "E", 
             "organization_name": "DOE",
             "provider_code": "admitting"
           }, 
           {
             "contacts": [
                 {
                     "name": "PAYERC BENEFITS HOTLINE", 
                     "phone": "8006762583"
                 }
             ], 
             "entity_identifier_code": "plan_sponsor", 
             "entity_type": "organization", 
             "organization_name": "PAYERC"
           }
        ], 
        "deductibles": [
            {
                "benefit_amount": {
                    "amount": "6000",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "eligibility_date": "2013-01-25",
                "in_plan_network": "yes",
                "messages": [],
                "time_period": "calendar_year"
            },
            {
                "benefit_amount": {
                    "amount": "5956.09",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "yes",
                "messages": [],
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "3000",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "eligibility_date": "2013-01-25",
                "in_plan_network": "yes",
                "messages": [],
                "time_period": "calendar_year"
            },
            {
                "benefit_amount": {
                    "amount": "2983.57",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "yes",
                "messages": [],
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "12000",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "eligibility_date": "2013-01-25",
                "in_plan_network": "no",
                "messages": [],
                "time_period": "calendar_year"
            },
            {
                "benefit_amount": {
                    "amount": "11956.09",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "no",
                "messages": [],
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "6000",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "eligibility_date": "2013-01-25",
                "in_plan_network": "no",
                "messages": [],
                "time_period": "calendar_year"
            },
            {
                "benefit_amount": {
                    "amount": "5983.57",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "no",
                "messages": [],
                "time_period": "remaining"
            }
        ],
        "eligibility_begin_date": "2012-02-25",
        "policy_effective_date": "2016-01-01",
        "group_description": "MOCK INDIVIDUAL ADVANTAGE PLAN",
        "group_number": "000000000000013",
        "level": "employee_and_spouse",
        "out_of_pocket": [
            {
                "benefit_amount": {
                    "amount": "3000",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "yes"
            },
            {
                "benefit_amount": {
                    "amount": "2983.57",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "yes",
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "6000",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "yes"
            },
            {
                "benefit_amount": {
                    "amount": "5956.09",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "yes",
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "12500",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "no"
            },
            {
                "benefit_amount": {
                    "amount": "12483.57",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "no",
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "25000",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "no"
            },
            {
                "benefit_amount": {
                    "amount": "24956.09",
                    "currency": "USD"
                },
                "coverage_level": "family",
                "in_plan_network": "no",
                "messages": [],
                "time_period": "remaining"
            }
        ],
        "plan_begin_date": "2013-02-25",
        "plan_number": "0000000",
        "service_date": "2013-08-25",
        "service_type_codes": [
            "98"
        ],
        "service_types": [
            "professional_physician_visit_office"
        ]
    },
    "payer": {
        "id": "MOCKPAYER",
        "name": "MOCK PAYER INC"
    },
    "provider": {
        "first_name": "ELIZABETH",
        "last_name": "BLACKWELL",
        "npi": "1234567893"
    },
    "service_type_codes": [
        "98"
    ],
    "service_types": [
        "professional_physician_visit_office"
    ],
    "subscriber": {
        "address": {
            "address_lines": [
                "123 MAIN ST"
            ],
            "city": "SAN MATEO",
            "state": "CA",
            "zipcode": "94401"
        },
        "birth_date": "1970-01-25",
        "first_name": "Jane",
        "id": "W000000000",
        "last_name": "Doe"
    },
    "trading_partner_id": "MOCKPAYER",
    "valid_request": true
}

Sample medicare_national eligibility response for a member with Medicare Part D coverage. Notice that medicare members with part D coverage will have pharmacy.is_eligible set to true and the pharmacy.plan_number will contain their medicare part D plan number:

{
    "client_id": "<client_id>",
    "coverage": {
        "active": true,
        "coinsurance": [
            {
                "benefit_percent": 0.2,
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ]
            },
            {
                "benefit_percent": 0.0,
                "service_type_codes": [
                    "98"
                ],
                "service_types": [
                    "alcoholism",
                    "smoking_cessation",
                    "home_health_care"
                ]
            }
        ],
        "deductibles": [
            {
                "benefit_amount": {
                    "amount": "1288",
                    "currency": "USD"
                },
                "insurance_type": "medicare_part_a",
                "service_type_codes": [
                    "30"
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ],
                "time_period": "episode"
            },
            {
                "benefit_amount": {
                    "amount": "1288",
                    "currency": "USD"
                },
                "insurance_type": "medicare_part_a",
                "service_type_codes": [
                    "30"
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ],
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "insurance_type": "medicare_part_a",
                "service_type_codes": [
                    "45",
                    "42"
                ],
                "service_types": [
                    "hospice",
                    "home_health_care"
                ],
                "time_period": "episode"
            },
            {
                "benefit_amount": {
                    "amount": "166",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "unknown",
                "insurance_type": "medicare_part_b",
                "service_type_codes": [
                    "30"
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ],
                "time_period": "calendar_year"
            },
            {
                "benefit_amount": {
                    "amount": "166",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "unknown",
                "insurance_type": "medicare_part_b",
                "service_type_codes": [
                    "30"
                ],
                "service_types": [
                    "health_benefit_plan_coverage"
                ],
                "time_period": "remaining"
            },
            {
                "benefit_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "coverage_level": "individual",
                "in_plan_network": "unknown",
                "insurance_type": "medicare_part_b",
                "service_type_codes": [
                    "AJ",
                    "67",
                    "42"
                ],
                "service_types": [
                    "alcoholism",
                    "smoking_cessation",
                    "home_health_care"
                ],
                "time_period": "calendar_year"
            }
        ],
        "insurance_type": "medicare_part_b",
        "non_covered": [
            {
                "benefit_amount": {
                    "amount": "0",
                    "currency": "USD"
                },
                "service_type_codes": [
                    "54",
                    "41"
                ],
                "service_types": [
                    "long_term_care",
                    "routine_preventive_dental"
                ]
            }
        ],
        "other_payers": [
            {
                "coordination_of_benefits": "primary_payer",
                "name": "UNITEDHEALTHCARE INSURANCE COMPANY",
                "service_type_codes": [
                    "88"
                ],
                "service_types": [
                    "pharmacy"
                ]
            }
        ],
        "plan_begin_date": "2016-01-25",
        "plan_end_date": "2016-12-25",
        "service_type_codes": [
            "30",
            "UC",
            "DM",
            "BV",
            "BU",
            "BT",
            "AL",
            "AK",
            "AJ",
            "AI",
            "A8",
            "A6",
            "A4",
            "98",
            "86",
            "83",
            "76",
            "73",
            "69",
            "67",
            "53",
            "52",
            "51",
            "50",
            "42",
            "40",
            "39",
            "38",
            "37",
            "36",
            "33",
            "3",
            "28",
            "27",
            "26",
            "25",
            "24",
            "23",
            "2"
        ],
        "service_types": [
            "health_benefit_plan_coverage",
            "urgent_care",
            "medical_equipment",
            "obstetrical_gynecological",
            "obstetrical",
            "gynecological",
            "vision_optometry",
            "drug_addiction",
            "alcoholism",
            "substance_abuse",
            "psychiatric_outpatient",
            "psychotherapy",
            "psychiatric",
            "professional_physician_visit_office",
            "emergency_services",
            "infertility",
            "dialysis",
            "diagnostic_medical",
            "maternity",
            "smoking_cessation",
            "hospital_ambulatory_surgical",
            "hospital_emergency_medical",
            "hospital_emergency_accident",
            "hospital_outpatient",
            "home_health_care",
            "oral_surgery",
            "prosthodontics",
            "orthodontics",
            "dental_accident",
            "dental_crowns",
            "chiropractic",
            "consultation",
            "adjunctive_dental_services",
            "maxillofacial_prosthetics",
            "endodontics",
            "restorative",
            "periodontics",
            "diagnostic_dental",
            "surgical"
        ]
    },
    "pharmacy": {
        "benefits_manager": {
            "name": "UNITEDHEALTHCARE INSURANCE COMPANY",
            "phone": "8778423210",
            "url": "www.AARPMedicareRx.com"
        },
        "is_eligible": true,
        "plan_number": "S5820 003"
    },
    "service_type_codes":