NAV Navbar
Shell C# Java PHP Postman

Introduction

pVerify's Real-Time Exchange System facilitates the secure exchange of health care Eligibility and related transactions, supporting one-to-one real-time transactions. One-to-one real-time transactions require customers to post a request, via REST to a designated URL address. Once a request is received by the Service an immediate response is sent for each request posted. Note that first a token must be generated using Oauth2.

The production URL is https://api.pverify.com

For example, the token call is: https://api.pverify.com/Token

The EligibilityInquiry call is: https://api.pverify.com/API/EligibilityInquiry

For quick and easy testing, see the testing page

Postman Documentation

Click here to view the Postman API Collection for Production Call

Click here to view the Postman API Collection for Test Call

For a very quick and simple integration, consider using our EasyEligibility Endpoint

Available Endpoints

Endpoint HTTP Method Description
/Token POST Obtain authorization to pVerify REST API.
/API/EligibilityInquiry POST Facilitate the secure exchange of health care Eligibility and related transactions.
/API/GetEligibilityResponse/{id} GET Get Eligibility result by unique transaction id.
/API/EligibilitySummary POST Populate data based on practice type.
/API/GetEligibility/{key}/{id} GET Use Transaction ID from EligibilityInquiry or EligibilitySummary to get any single field, for example Status.
/API/GetPayers GET Get pVerify payer list.
/API/GetPendingInquiries GET Get inquiries that are still being processed by pVerify back office.
/API/EstimateCalculation POST Returns fee estimate from Medicare given Zip code, CPT code, and other info.
/API/EasyEligibility POST Returns the Eligibility Status of a requested provider in just one step.
/API/EasyEligibilitySummary POST Returns the Eligibility Summary of a request in just one step.
/API/CancelTransaction POST Cancels a back office request.
/API/GetPayerStatus Get Gets payer status.
/API/SameOrSimilarInquiry POST Runs Same or Similar inquiry endpoint.
/API/GetSameOrSimilarResponse GET Gets the transaction result from SorS later using unique request id.
/API/ClaimStatusInquiry POST Obtain claim status information using subscriber demographic information
/API/GetClaimStatusResponse GET Used to obtain claim status transaction result later.

Help - Which endpoint/fields do I need?

At pVerify we know that Patient Eligibility is confusing and you may not be an expert in the field, as we are. We have identified some common scenarios and uses cases for you so you can readily get the needed information. Please see our guidance here.

For more information, consider taking a look at the following pages:

pVerify for DME

pVerify for Radiology

pVerify for Chiro/PT

Testing

Token Request

URL: 
https://api.pverify.com/Test/Token

Headers:
Content-Type: application/x-www-form-urlencoded

Body:
username=pverify_demo&password=pverify@949&grant_type=password

Token Response

{
    "access_token": "SwK_jgpPz028ievs06Uch7tcl...",
    "token_type": "bearer",
    "expires_in": 28799
}

Testing can be done in a HIPAA compliant manner by using the below endpoints with one of a small list of payers. This combination of endpoint and payer will give a response with same format as a normal patient, but in a HIPAA complaint manner for testing purposes.

We have test methods designed to test interfaces, it has unchanged data that is HIPAA compliant and only a few payers work with it. See the testing section below regarding these payers and the test API.

Test URL: https://api.pverify.com/Test

*Please see our Postman collection for all of the Test API calls. *

The fields of the EligibilityInquiry Response object are described on this page as well as on this PDF.

Endpoint HTTP Method Description
/Test/Token POST Obtain authorization to pVerify REST API
/Test/API/EligibilityInquiry POST Facilitate the secure exchange of healthcare Eligibility and related transactions
/Test/API/GetEligibilityResponse/{id} GET Get Eligibility result by unique transaction id
/Test/API/GetPayers GET Get pVerify Payers list

user / password: pverify_demo / pverify@949

It is very important to realize that only this user/password will work in the test environment

For testing, one of the following payer Ids must be used (as they are the only ones with the canned HIPAA compliant test result).

Payer list:

a ) AETNA (pVerify® Payer-Id 00001)

b ) United Healthcare (pVerify® Payer-Id 00192)

c ) Medicare Part A & B (pVerify® Payer-Id 00007)

d ) Ohio Medicaid (pVerify® Payer-Id 00165)

e ) BCBS of Texas (pVerify® Payer-Id 00220)For examples, click the endpoint of interest on the table of contents (left) and view the example on the right.

For example an example of token calls and requests, see the right panel:

Medicare HCPCS codes

Sample ServiceTypeDetailInfo for Medicare HCPCS codes

"ServiceTypeName": "[servicetypename]",
            "ServiceTypeSections": [
                {
                    "Label": "HCPCS|G0297",
                    "ServiceParameters": [
                        {
                            "Key": "Professional Eligible Date",
                            "Value": "02/05/2015",
                            "Message": null,
                            "OtherInfo": null
                        },
                        {
                            "Key": "Technical Eligible Date",
                            "Value": "02/05/2015",
                            "Message": null,
                            "OtherInfo": null
                        },
                        {
                            "Key": "Visit Co-Insurance ",
                            "Value": "0%",
                            "Message": null,
                            "OtherInfo": null
                        },
                        {
                            "Key": "Calendar Year Deductible ",
                            "Value": "$0.00",
                            "Message": null,
                            "OtherInfo": null
                        },
                        {
                            "Key": "Used",
                            "Value": "$0.00",
                            "Message": null,
                            "OtherInfo": null
                        }
                    ]
                }
            ]
        },

For the EligibilityInquiry, GetEligibilityResponse, and EligibilitySummary calls, we can return Medicare preventative service information. You can either populate the preventative service codes in the request or as a one time set up, use our portal at Premium.Pverify.com -> Admin/Profile -> Settings -> Medicare HCPCS Codes. These settings in the UI will be used if the request HCPCS codes are blank.

For example you can add this to the request:

"HCPCSCodes": [ "G0297" ],

And it will return the code to the right under ServiceTypeDetailInfo - for this patient they were eligible for this code on 2/5/2015.

Medicare SNF and Other Information

MedicareInfoSummary Response Object

    "MedicareInfoSummary": {
        "HospiceQty": null,
        "HospiceDate": null,
        "HomeHealthCareStartDate": null,
        "HomeHealthCareEndDate": null,
        "SkilledNursingCareStartDate": null,
        "SkilledNursingCareEndDate": null,
        "AdvantagePayerName": null,
        "AdvantageCOBDate": null,
        "AdvantagePolicyType": null,
        "PharmacyPayerName": "SILVERSCRIPT INSURANCE COMPANY",
        "PharmacyPayerPlanNumber": "S5601",
        "PharmacyPayerPlanNetworkID": "034",
        "WCAutoInjuryLiabilityPayerName": null,
        "WCAutoInjuryLiabilityCOBDate": null,
        "WCAutoInjuryLiabilityPolicyType": null,
        "QMBPolicyType": null,
        "Part_A_Deductible": null,
        "Part_A_Deductible_Remaining": "$1364.00",
        "Part_B_Deductible": "$185.00",
        "Part_B_Deductible_Remaining": "$0.00",
        "OT_UsedAmount": null,
        "PT_SLP_UsedAmount": null
    },

Using EligibilitySummary or EasyEligibilitySummary, for Medicare, you can obtain details in a new section "MedicareInfoSummary". The response object is to the right and returns SNF information, MCA information, Pharmacy payer, and other Medicare specific information.

OtherPayerInfo Response Object

    "OtherPayerInfo": {
        "PrimaryPayer": null,
        "Payer": null,
        "SecondaryPayer": null,
        "PlanSponsor": null,
        "IndependentPhysiciansAssociation_IPA": null,
        "WorkersCompensation": null,
        "ContractedServiceProvider": null
    },

Further under the OtherPayerInfo section you can find Third Party Administrators and other information.

Backoffice Payers

An important concept to understand with pVerify eligibility endpoints is the concept of a "back office" payer. To support 99% of available payers we need to connect to some payers via non-electronic means. These payers will not work with a real-time API with a immediate response expected.

EDI Payer Workflow

1) Generate Token

2) Call EligibilityInquiry to submit request to our queue and get elgRequestID

Backoffice Payer Workflow

1) Generate Token

2) Call EligibilityInquiry to submit request to our queue and get elgRequestID

3) After a period of 24 hours, call GetEligibilityResponse using elgRequestID above.

We have two methods available for back-office queue management:

1) GetPendingInquiries this shows a list of your inquiries that are still in Pending state

2) CancelTransaction to set the state to Cancel and remove it from our queue.

Client Libraries and Sample Code

To simplify authorization and access to the pVerify API, we provide sample code in C# and libraries in Java. These libraries offer full access to the pVerify API with a minimum of code.

C# Sample Code Java Sample Code

Security and Authorization

pVerify requires client authentication and authorization prior to allowing the request being processed. Authentication is a means used to verify your identity as a legitimate trading partner to pVerify. Authorization refers to those actions you are permitted to perform once you are authenticated.

pVerify allows access to the Real-time Exchange System through the use of a username and password. These must be requested from pVerify and are sent to you through a secure email system. The username and password are used for the Token call, while the Token and username are used for subsequent calls. Please see the demo video for an example.

Token

Sample Token Request: (POST) https://api.pverify.com/Token

POST /Token HTTP/1.1
Host: api.pverify.com

Headers:
Content-Type: "application/x-www-form-urlencoded"

Body:
{
  "username=pverify_demo&password=pverify@949&
  grant_type=password"
}

OR

{
"Client_Id=[clientid]&client_secret=[clientSecret]&grant_type=client_credentials"
}


var request = new RestRequest("Token", Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddHeader("content-type", 
"application/x-www-form-urlencoded");
request.AddParameter("application/x-www-form-urlencoded", 
"username=" + XXX + "&password=" + XXX + "&grant_type=password", ParameterType.RequestBody);
IRestResponse response = Execute(request);

if (response.StatusCode == HttpStatusCode.OK){
    dynamic token = JsonConvert.DeserializeObject(response.Content);
    string tkn = token.access_token;
    int time = Convert.ToInt32(token.expires_in);
}

OR

var client = new RestClient("https://api.pverify.com/Token");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddParameter("application/x-www-form-urlencoded", "Client_Id=[clientID]&client_secret=[clientSecret]&grant_type=client_credentials", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
//Using OKHttp Client


import java.io.IOException;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;


public class GetToken {

    OkHttpClient client = new OkHttpClient();
    MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
    RequestBody body = RequestBody.create(mediaType, "username=XXX&password=XXX&grant_type=password");

public String run(String url) throws IOException{
        Request request = new Request.Builder().url(url)
      .post(body)
      .addHeader("content-type", "application/x-www-form-urlencoded")
      .build();
        try(Response response = client.newCall(request).execute()){
            return response.body().string();
        }
    }





public static void main(String[] args) throws IOException {
        GetToken token = new GetToken();
        String response = token.run("https://api.pverify.com/Test/Token");
        System.out.println(response);
    }
    }



OR

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "Client_Id=[clientID]&client_secret=[clientSecret]&grant_type=client_credentials");
Request request = new Request.Builder()
  .url("https://api.pverify.com/Token")
  .post(body)
  .addHeader("content-type", "application/x-www-form-urlencoded")
  .build();

Response response = client.newCall(request).execute();


<?php
 "https://api.pverify.com/Test/Token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "username=XXX&password=XXX&grant_type=password",
  CURLOPT_HTTPHEADER => array(
    "content-type: application/x-www-form-urlencoded",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

OR

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/Token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "Client_Id=[clientID]&client_secret=[clientSecret]&grant_type=client_credentials",
  CURLOPT_HTTPHEADER => array(
    "content-type: application/x-www-form-urlencoded"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X POST -H "Content-Type: text/plain" 
--data "username=XXX&password=XXX&grant_type=password" 
https://api.pverify.com/Test/Token


OR


curl --request POST \
  --url https://api.pverify.com/Token \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data 'Client_Id=[clientID]&client_secret=[clientSecret]&grant_type=client_credentials'

Sample Token Response

{
    "access_token": "ObwRbRDiaNQaeYgAoeAMs...",
    "token_type": "bearer",
    "expires_in": 3599,
    "ClientUserID": "[ID]",
    "ClientID": "[id]"
}

The first step to using the system is a call to the Token endpoint at /Token. It will return a token when you use in the subsequent calls.

Token Authorization Request

Header Description
Method POST
URL https://api.pverify.com/Token
Content-Type application/x-www-form-urlencoded
URL Params None
Body Description
Data Params* "username=" + username + "&password=" + password + "&grant_type=password" OR "Client_Id=" + clientID + "&client_secret=" + ClientSecret + "&grant_type=client_credentials"

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

The /Token response includes the following fields:

Field Type Description
access_token {string} Authorization token unique to you which is used to verify your authorization for subsequent calls.
token_type {string} this is the token type which will be included before the access token in your subsequent method calls.
expires_in {int} This is the amount of time that your token is valid for (in seconds).

Eligibility API Endpoints

EligibilityInquiry

Sample EligibilityInquiry Request: (POST) https://api.pverify.com/API/EligibilityInquiry

POST /api/EligibilityInquiry HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Client-Password: "[password]"
Content-Type: "application/json"


Body:



  {
      "payerCode": "00007",
      "payerName": "Medicare",

   "provider": {
        "firstName": "",
        "middleName": "",
        "lastName": " test name",
        "npi": "0000000000"

   },
      "subscriber": {
        "firstName": "FirstName",
        "dob": "01/01/1950",
        "lastName": "LastName",
        "memberID": "1234567890"
    },
    "dependent": null,

    "isSubscriberPatient": "True",
    "doS_StartDate": "01/24/2017",
    "doS_EndDate": "01/24/2017",
    "serviceCodes": [
        "30"
    ],
    "HCPCSCodes": [
    "G0297"
    ],
        "requestSource": "RestAPI",
        "IsHMOPlan": true,
        "IncludeTextResponse": true,
        "referenceId": "1234",
        "Location": "Nowhere"
}




Using Rest Sharp Rest Client
var request = new RestRequest(uri, method);
string username = new S
request.AddHeader("authorization", "Bearer " + token);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", [username]);
request.AddHeader("content-type", method == Method.GET ?
 "application/x-www-form-urlencoded" : "application/json");

request.AddBody(data);
IRestResponse response =  Execute(request);
//Using OKHttp Client


import java.io.IOException;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

public class EligibilityInquiry {
    OkHttpClient client = new OkHttpClient();
    MediaType mediaType = MediaType.parse("");
    RequestBody body = RequestBody.create(mediaType, "{    \"payerCode\": \"00192\",\r\n    \"provider\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \" last name vaue\",\r\n        \"npi\": \"1234567890\",\r\n    },\r\n    \"subscriber\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \"\",\r\n        \"memberID\": \"913619424\",\r\n    },\r\n    \"dependent\": {\r\n        \"patient\": {\r\n            \"firstName\": \"\",\r\n            \"middleName\": \"\",\r\n            \"lastName\": \"\",\r\n            \"dob\": \"07/04/1985\",\r\n            \"gender\": \"\",\r\n        },\r\n        \"relationWithSubscriber\": \"\"\r\n    },\r\n    \"isSubscriberPatient\": \"False\",\r\n    \"doS_StartDate\": \"01/24/2017\",\r\n    \"doS_EndDate\": \"01/24/2017\",\r\n    \"serviceCodes\": [\r\n        \"30\"\r\n    ],\r\n\r\n \"HCPCSCodes\": [\r\n        \"G0297\"\r\n    ],\r\n\r\n    \"requestSource\": \"RestAPI\"\r\n    \"IsHMOPlan\": true\r\n}\r\n");

    public String run(String url, String token) throws IOException{
        Request request = new Request.Builder()
      .url(url)
      .post(body)
      .addHeader("content-type", "application/json")
      .addHeader("authorization", "Bearer " + token)
      .addHeader("Client-User-Name", "XXX")
      .build();
        try(Response response = client.newCall(request).execute();){
            return response.body().string();
        }
    }

    public static void main(String[] args) throws IOException {
        EligibilityInquiry inquiry = new EligibilityInquiry();
        String response = inquiry.run("https://api.pverify.com/API/EligibilityInquiry", "rfhPfKNUD1niSd34...");
        System.out.println(response);
    }
}
<?php
 "https://api.pverify.com/API/EligibilityInquiry",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n      \"payerCode\": \"00007\",\r\n      \"payerName\": \"Medicare\",\r\n\r\n   \"provider\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \" test name\",\r\n        \"npi\": \"0000000000\"\r\n    \r\n   },\r\n      \"subscriber\": {\r\n        \"firstName\": \"John\",\r\n        \"dob\": \"01/01/1950\",\r\n        \"lastName\": \"Doe\",\r\n        \"memberID\": \"913619424\"\r\n    },\r\n    \"dependent\": null,\r\n        \r\n    \"isSubscriberPatient\": \"True\",\r\n    \"doS_StartDate\": \"01/24/2017\",\r\n    \"doS_EndDate\": \"01/24/2017\",\r\n    \"serviceCodes\": [\r\n        \"30\"\r\n    ],\r\n \"HCPCSCodes\": [\r\n        \"G0297\"\r\n    ],\r\n        \"requestSource\": \"RestAPI\",\r\n        \"IsHMOPlan\": true\r\n}",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXX",
    "Client-User-Name: XXX",
    "content-type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X POST \
  https://api.pverify.com/API/EligibilityInquiry
EligibilityInquiry \
  -H 'authorization: Bearer ya9On51ZiIMBv...' \
  -H 'Client-User-Name:XXX' \
  -H 'content-type: application/json' \
  -d '{
      "payerCode": "00007",
      "payerName": "Medicare",

   "provider": {
        "firstName": "",
        "middleName": "",
        "lastName": " test name",
        "npi": "0000000000"

   },
      "subscriber": {
        "firstName": "",
        "dob": "01/01/1950",
        "lastName": "",
        "memberID": "1234567890"
    },
    "dependent": null,

    "isSubscriberPatient": "True",
    "doS_StartDate": "01/24/2017",
    "doS_EndDate": "01/24/2017",
    "serviceCodes": [
        "30"
    ],
    "HCPCSCodes": [
    "G0297"
    ],
        "requestSource": "RestAPI",
        "IsHMOPlan": true
}'

Eligibility Inquiry Response

Example:
Code : 200
{
    "ElgRequestID": 584569207,
    "EDIErrorMessage": null,
    "VerificationStatus": "Processed",
    "VerificationMessage": null,
    "IsPayerBackOffice": "FALSE",
    "Status": "Active",
    "PayerName": "AETNA INC",
    "VerificationType": "Subscriber Verification",
    "DOS": "12/14/2017 - 12/14/2017",
    "Plan": "POS",
    "ExceptionNotes": "",
    "AdditionalInformation": "AETNA CHOICE POS II5000.004391.54",
    "OtherMessage": null,
    "ReportURL": "https://www.pverify.com/premium/elg_view.aspx?id=5WIxderty8X96vwFSW%2fg%3d%3d",
    "EligibilityPeriod": {
        "Label": null,
        "EffectiveFromDate": "01/01/2017",
        "ExpiredOnDate": ""
    },
    "DemographicInfo": {
        "Subscriber": {
            "Address1": "addresss 1",
            "Address2": "",
            "City": "ASTORIA",
            "CommunicationNumber": null,
            "Date": null,
            "DOB_R": "04/13/1982",
            "Firstname": "First Name",
            "Gender_R": "",
            "Identification": [
                {
                    "Code": " last Name",
                    "Type": "Lastname_R ",
                    "Name": null
                },
                {
                    "Code": " First name",
                    "Type": "Firstname ",
                    "Name": null
                },
                {
                    "Code": " Group Name",
                    "Type": "Group Name ",
                    "Name": null
                },
                {
                    "Code": " 12/14/2017",
                    "Type": "Service ",
                    "Name": null
                },
                {
                    "Code": "W1234567990",
                    "Type": "Member ID",
                    "Name": null
                }
            ],
            "Lastname_R": "Last Name",
            "Middlename": "A",
            "State": "NY",
            "Suffix": null,
            "Zip": "11105"
        },
        "Dependent": null
    },
    "NetworkSections": [
        {
            "Identifier": "Deductible",
            "Label": "Deductible",
            "InNetworkParameters": [
                {
                    "Key": "Annual",
                    "Value": "400.00",
                    "Message": null,
                    "OtherInfo": null
                },
                {
                    "Key": "Remaining",
                    "Value": "0.00",
                    "Message": null,
                    "OtherInfo": null
                }
            ],
            "OutNetworkParameters": [
                {
                    "Key": "Annual",
                    "Value": "800.00",
                    "Message": null,
                    "OtherInfo": null
                },
                {
                    "Key": "Remaining",
                    "Value": "400.00",
                    "Message": null,
                    "OtherInfo": null
                }
            ]
        }
    ],
    "HealthBenefitPlanCoverageServiceType": {
        "ServiceTypeName": "Health Benefit Plan Coverage",
        "ServiceTypeSections": [
            {
                "Label": "",
                "ServiceParameters": [
                    {
                        "Key": " Employee Only  Primary Care Provider POS  ",
                        "Value": null,
                        "Message": [],
                        "OtherInfo": null
                    },

The EligibilityInquiry endpoint is the main method used get an eligibility report for a specific subscriber / dependent. This requires customers to post a request, via REST to a designated URL address. Once a request is received by the service an immediate response is sent for each request posted. To use this or any other method, you must first generate a token via the Token endpoint (see above Token method).

Payers return many formats for the eligibility report, which we parse to put into a JSON object format. Critical to the successful parsing of this information is the concept of our pVerify exclusive payer and client specific parsing logic, stored in NetworkSections in the response. See below for more information.

An example of a successful authorization response can be found in the code to the right. Please note you MUST use the pVerify payerCode. We also recommend passing the payer name.

Also note the body of the EligibilityInquiry is populated differently depending on if it is a subscriber query or a dependent query. See examples to the right.

EligibilityInquiry Request

Type Description
URL https://api.pverify.com/API/EligibilityInquiry
Method POST
Headers Description
Authorization Token from Step 1 Above (if you are using Postman be sure to put Token Type Bearer before the token.)
Client-User-Name* Username from step one
Content-Type application/json
Body Description
Data Params See below and examples to the right

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

EligibilityInquiry Request Object

See subscriber and dependent examples to the right

EligibilityInquiry Request Fields

The EligibilityInquiry request includes the following fields:

Property Name Data Type Required Description
payerCode String Yes pVerify Payer Code(ie Aetna 00001)
payerName String No Payer Name
provider.firstName String No Provider First Name
provider.middleName String No Provider First Name
provider.lastName String Yes Provider Last Name
provider.npi String Yes 10-Digit NPI Value
provider.pin String No PIN
provider.taxonomy String No Taxonomy
subscriber.firstName String Conditional First Name of subscriber required for self inquiry
subscriber.lastName String Conditional Last Name of subscriber required for self inquiry
subscriber.memberId String Yes Member Id required for both type inquiries(self,dependent)
subscriber.dob String Conditional Required for self-inquiry for better matching result. (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber.ssn String No SSN of Subscriber
isSubscriberPatient String Yes True for self and False for Dependent Query
doS_StartDate String Yes Date of service start date (Expected format: MM/dd/YYYY ie 01/01/2000)
doS_EndDate String Yes Date of service end date (Expected format: MM/dd/YYYY ie 01/01/2000)
serviceCodes String Array Yes Services codes to run inquiry. If no service codes are passed then service code 30 will be assigned.
requestSource String Yes the request Source for ex: RestAPI
dependent Object Conditional Required for dependent inquiry
IncludeTextResponse Boolean No Indicates whether to return the full text of the eligibility response
referenceId String Yes Patient MRN or account Number
Location String Yes Location is the practice location. Note by setting this, you will lock the patient to one location, so that users that login in via our portal who are not authorized to see that location will not see the patient.

EligibilityInquiry Response Fields

The Eligibility response includes the following fields:

Name Type Description
ElgRequestID int Identification of Eligibility Request
Status String The eligibility status (active or inactive)
PayerName String Name of company satisfying the claim
payerCode String pVerify Payer Code
VerificationType String Specifies whether the patient verification was a Subscriber Verification or a Dependent Verification
isPayerBackOffice boolean False - Non-EDI payer. True - EDI Payer
verificationStatus String Status of the verification - Processed, pending, etc - See Table below
verificationMessage String Message from Backoffice
DOS String Date of Service (Expected format: MM/dd/YYYY ie 01/01/2000)
Plan String Denotes the health care plan that the individual has
ExceptionNotes String Notes concerning exceptions to the above fields
AdditionalInformation String Any further information
EDIErrorMessage String Error message from clearinghouse
OtherMessage String Processing message - ie Allowed, insufficient Funds
reportURL String URL for the full eligibility report (via pVerify portal)
doB_R String Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
eligibilityPeriod Object Eligibility dates
eligibilityPeriod.effectiveFromDate String Date the coverage is effective from
eligibilityPeriod.expiredOnDate String Date coverage expired
DemographicInfo Object Demographics
DemographicInfo.Subscriber Object Subscriber demographics
DemographicInfo.Subscriber.Address1 String Subscriber Address1
DemographicInfo.Subscriber.Address2 String Subscriber Address2
DemographicInfo.Subscriber.City String Subscriber City
DemographicInfo.Subscriber.State String Subscriber state
DemographicInfo.Subscriber.Zip String Subscriber zip code
DemographicInfo.Subscriber.DOB_R String Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
DemographicInfo.Subscriber.Firstname String Subscriber first name
DemographicInfo.Subscriber.Lastname_R String Subscriber last name
DemographicInfo.Subscriber.Gender_R String Subscriber gender
DemographicInfo.Subscriber. Identification Object Has member ID, group #, group name
DemographicInfo.Subscriber. Identification.Code String ie: "JOHN"
DemographicInfo.Subscriber. Identification.Type String ie: "FirstName"
DemographicInfo.Subscriber. Identification.Name String Name of identification
DemographicInfo.Dependent Object Dependent Demographics (See subscriber for fields common to both)
relationship String Dependent relationship to client
NetworkSections Object Contains copay, deductible, etc. Based on custom result field settings (per payer)
NetworkSections.identifier String ie: "Deductible"
NetworkSections.label String ie: "Deductible"
NetworkSections.inNetworkParameters Object In network details = Deductible, outofPocket, Copay, Coins
NetworkSections.inNetworkParameters.key String ie: "Annual" (Annual Deductible)
NetworkSections.inNetworkParameters.value String ie: "600.00"
HealthBenefitPlanCoverageServiceType Object From eligibility response from clearinghouse, will contain string data with copay, etc.
HealthBenefitPlanCoverageServiceType. serviceTypeName String ie: "Health Benefit Plan Coverage"
HealthBenefitPlanCoverageServiceType. serviceTypeSections Array List of service type info
HealthBenefitPlanCoverageServiceType. serviceTypeSections.label String ie: "In Plan-Network Status"
HealthBenefitPlanCoverageServiceType. serviceTypeSections.serviceParameters Object Service Parameters
HealthBenefitPlanCoverageServiceType. serviceTypeSections.serviceParameters.key String Description of field ie Family Calendar Year Deductible
HealthBenefitPlanCoverageServiceType. serviceTypeSections.serviceParameters.value String Value of field (note most payers are passing info via message, below) ie 1800.00
HealthBenefitPlanCoverageServiceType. serviceTypeSections.serviceParameters.message String Description of value ie ("MED DENT,MAXIMUM SAVINGS")
HealthBenefitPlanCoverageServiceType. serviceTypeSections.serviceParameters.otherInfo Array More details about the key - in key/value/message/otherInfo
ServiceTypes Object Full list of returned service types from clearinghouse
ServiceTypeName String ie Chiropractic
ServiceTypeSection Object data regarding service type coverage in key/value/message/otherInfo
isHMOPlan boolean True of plan type is known to be HMO

EligibilityInquiry returns verificationStatus which is the status of the inquiry (not the status of the patients eligibility, which is the Status field) according to the table below:

Status Text Meaning
Processed We received a valid response from the clearinghouse
Rejected The transaction is rejected due to bad data (ie: missing memberId)
Pending+ The transaction is for back office payer and has been queued
Canceled The transaction has been canceled via API endpoint

+: Status Code 15 Pending is returned when the payer is non-EDI -- pVerify uses manual process (phone/web-login) to get results or in some cases uses screen scraping technology to fetch the eligibility and benefits for such payers -- the delay in getting the results can be anywhere from 1 min. to 12 hours based on payer and agreed terms. These "Delayed Payers" have prefix of either BO or PL, you can either automatically refresh results using the Unique ID every few hours or have a "Get Pending Results" button on your eligibility screen.

Parsing the Key Eligibility Fields As the response object is complex, below is a guide to where the key eligibility fields are.

Demographics This is in demographicInfo.subscriber. For example, the first name of the subscriber is demographicInfo.subscriber.firstname

Copay/Coinsurance: The copay and coinsurance depends on the service type. For physician office visits, it may be in network section (see below for more information), and will be in the physician office visit area.

Network Selections JSON Example


{
    "identifier": "Specialist",
    "label": "Specialist",
    "inNetworkParameters": [
        {
            "key": "Co-Ins",
            "value": " 0",
            "message": null,
            "otherInfo": null
        },
        {
            "key": "Co-Pay",    
            "value": " 75.00",
            "message": null,
            "otherInfo": null
        }
    ],
    "outNetworkParameters": null
}

1) Network Sections: look for identifier == "Specialist" the key is "Co-Pay" and the value returns the copay.

See the right panel for an example.

Service Types Example

 "serviceTypeName": "Professional (Physician) Visit - Office",
            "serviceTypeSections": [
                {
                    "label": "In Plan-Network Status",
                        {                   
                            "key": "Family Co-Payment ",                        
                            "value": "$25.00",                      
                            "message": [                        
                                "MAXIMUM SAVINGS,CUSTOMER DESIGNATED PROVIDERS",                            
                                "PRIMARY CARE VISIT OR EVALUATION IN OFFICE,COPAY NOT INCLUDED IN OOP",                            
                                "MAXIMUM SAVINGS,PATIENT'S PRIMARY CARE PHYSICIAN",                           
                                "GYN VISIT WHEN PERFORMED IN AN OFFICE,COPAY NOT INCLUDED IN OOP"                        
                            ],

2) In serviceTypes look for "serviceTypeName": "Professional (Physician) Visit Office" label "In Plan-Network Status" serverParameters key: "Family Co-Payment" value "$75.00" And look at the message field to determine if specialist or not.

Similarly co-insurance is in "key": "Family Co-Insurance"

See the right panel for an example:

OOP Example

    "healthBenefitPlanCoverageServiceType": {
        "serviceTypeName": "Health Benefit Plan Coverage",
        "serviceTypeSections": [
            "label": "In Plan-Network Status",
            "serviceParameters": [
                {
                    "key": "Family Calendar Year Deductible ",                   
                    "value": "$1800.00",

Out of Pocket (OOP) and Deductible This is in network sections as well as healthBenefitPlanCoverageServiceType

See the right panel for an example:

Network Sections Example

 "networkSections": [
        {
            "identifier": "Deductible",
            "label": "Deductible",           
            "inNetworkParameters": [           
                {                
                    "key": "Annual",                    
                    "value": " 600.00",                    
                    "message": null,                    
                    "otherInfo": null
                },              
                {                
                    "key": "Remaining",                    
                    "value": " 600.00",                    
                    "message": null,                    
                    "otherInfo": null                
                }               
            ],          
            "outNetworkParameters": null        
        },       
        {        
            "identifier": "OutOfPocket",        
            "label": "Out-Of-Pocket",           
            "inNetworkParameters": [           
                {               
                    "key": "Maximum",                   
                    "value": " 2000.00",                    
                    "message": null,                    
                    "otherInfo": null                
                },              
                {                    
                    "key": "Remaining",                    
                    "value": " 2000.00",                    
                    "message": null,                   
                    "otherInfo": null               
                }
            ],                     
            "outNetworkParameters": null       
        },      
        {        
            "identifier": "Specialist",          
            "label": "Specialist",            
            "inNetworkParameters": [           
                {                  
                    "key": "Co-Ins",                   
                    "value": " 0",                   
                    "message": null,                   
                    "otherInfo": null              
                },              
                {                   
                    "key": "Co-Pay",                  
                    "value": " 75.00",                 
                    "message": null,                 
                    "otherInfo": null             
                }           
            ],                      
            "outNetworkParameters": null       
        }   
    ],

Network Sections pVerify uses a customized approach to attempt to return the key information in a easily identifiable format. This is used by use in our Dashboard, and can be consumed by our API customers as well. For this to work, we must map per payer the custom result fields, so it is not guaranteed that we will correctly parse the eligiblity data, or have any data. So view this as a best attempt at a value add.

There are four network sections and the example is below. Note it is possible for this object to be null if nothing was set up for that payer as discussed above.

You can parse any of the four sections ("Primary Care", "Specialist", "Deductible", "OutOfPocket") they all have the same object structure. Note in this case there is no "Primary Care" as this is designed for a specialist clinic.

GetEligibilityResponse

Sample GetEligibilityResponse Request: (GET) https://api.pverify.com/API/GetEligibilityResponse/2428

GET /api/GetEligibilityResponse HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"


Body:
None

Using Rest Sharp Rest Client
var request = new RestRequest(uri, method);
string username = new S
request.AddHeader("authorization", "Bearer " +  token);
request.AddHeader("Client-User-Name", username);
request.AddHeader("content-type", method == Method.GET ?
 "application/x-www-form-urlencoded" : "application/json");
IRestResponse response =  Execute(request);
//Using OKHttp Client


import java.io.IOException;



import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

public class GetEligibility {

OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");

public String run(String url, String urlCode, String token ) throws IOException{
Request request = new Request.Builder()
  .url(url.concat(urlCode))
  .get()
  .addHeader("content-type", "application/json")
  .addHeader("authorization", "Bearer " + token)
  .addHeader("Client-User-Name", "XXX")
  .build();

    try(Response response = client.newCall(request).execute()){
        return response.body().string();
    }

}


public static void main(String[] args) throws IOException {
    GetEligibility eligibility = new GetEligibility();
    String response = eligibility.run("https://api.pverify.com/API/GetEligibilityResponse/", "2428", "rfhPfKNUD1niSd34T...");
    System.out.println(response);
}
}
<?php
  "https://api.pverify.com/API/GetEligibilityResponse/2428",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXX",
    "content-type: application/json"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X GET \
  https://api.pverify.com/API/GetEligibilityResponse/2428 \
  -H 'authorization: Bearer XXX' \
  -H 'Client-User-Name:XXX' \

Get Eligibility Response Sample Response (For full response see EligibilityInquiry)

{
  {
      "payerCode": "00007",
      "payerName": "Medicare", 

      "provider": {
        "firstName": "",
        "middleName": "",
        "lastName": " test name",
        "npi": "0000000000"
   },

      "subscriber": { 
        "firstName": "",    
        "dob": "01/01/1950",    
        "lastName": "", 
        "memberID": "1234567890"
    },
    "dependent": null, 
    "isSubscriberPatient": "True",
    "doS_StartDate": "01/24/2017",
    "doS_EndDate": "01/24/2017",
    "serviceCodes": [
        "30"
    ],
        "requestSource": "RestAPI"
        "IsHMOPlan": true,
        "IncludeTextResponse": true,
        "referenceId": "1234",       
        "Location": "Nowhere"
}

This GET method is similar to the Eligibility Inquiry except that it is a GET call with the Eligibility Request ID as a parameter. This call allows you to get the eligibility verification result by a unique transaction ID. It is designed for use with non-EDI (back office) payers which require human intervention and are thus time delayed in the response.

GetEligibilityResponse Request

Key Value
URL https://api.pverify.com/API/GetEligibilityResponse/{id}
Method GET
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

A successful GetEligibilityResponse call will have the same format as the Eligibility Inquiry response (above). In the case of backoffice payer, many sections will be null including Demographic Info and HealthBenefitPlanCoverageServiceType. The important data returned (copay, coins, etc) is typically in the NetworkSections object, and IsPayerBackOffice is always true. In the case of electronic payers the response object (format and data) is identical to that of EligibilityInquiry.

EligibilitySummary

EligibilitySummary Sample Call: (POST) https://api.pverify.com/API/EligibilitySummary

GET API/EligibilitySummary HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"


Body:

{
      "payerCode": "00007",
      "payerName": "Medicare",

   "provider": {
        "firstName": "",
        "middleName": "",
        "lastName": " test name",
        "npi": "0000000000"

   },
      "subscriber": {
        "firstName": "FirstName",
        "dob": "01/01/1950",
        "lastName": "LastName",
        "memberID": "1234567890"
    },
    "dependent": null,

    "isSubscriberPatient": "True",
    "doS_StartDate": "01/24/2017",
    "doS_EndDate": "01/24/2017",
    "serviceCodes": [
        "30"
    ],
    "HCPCSCodes": [
    "G0297"
    ],
        "requestSource": "RestAPI",
        "IsHMOPlan": true,
        "IncludeTextResponse": true,
        "referenceId": "1234",
        "Location": "Nowhere"
}

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n      \"payerCode\": \"00001\",\r\n   \"provider\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \" test name\",\r\n        \"npi\": \"123456789\"\r\n    \r\n   },\r\n      \"subscriber\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \"\",\r\n        \"dob\": \"\",        \r\n        \"memberID\": \"xxx\"\r\n    },\r\n    \"dependent\": {\r\n        \"patient\": {\r\n            \"firstName\": \"Jane\",\r\n            \"middleName\": \"\",\r\n            \"lastName\": \"Doe\",\r\n            \"dob\": \"01/01/2000\",\r\n            \"gender\": \"\"\r\n        },\r\n        \"relationWithSubscriber\": \"\"\r\n    },\r\n    \"isSubscriberPatient\": \"False\",\r\n    \"doS_StartDate\": \"01/24/2017\",\r\n    \"doS_EndDate\": \"01/24/2017\",\r\n    \"serviceCodes\": [\r\n        \"30\"\r\n    ],\r\n   \r\n \"HCPCSCodes\": [\r\n        \"G0297\"\r\n    ],\r\n   \r\n     \"requestSource\": \"RestAPI\",\r\n\t \"PracticeType\":\"PhysicalTherapy\",\r\n     \"referenceId\":\"Pat MRN\",\r\n     \"Location\":\"Any location Name\",\r\n     \"IncludeTextResponse\":false\r\n}");
Request request = new Request.Builder()
  .url("https://api.pverify.com/API/EligibilitySummary")
  .post(body)
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Content-Type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var client = new RestClient("https://api.pverify.com/API/EligibilitySummary");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
request.AddParameter("undefined", "{\r\n      \"payerCode\": \"00001\",\r\n   \"provider\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \" test name\",\r\n        \"npi\": \"123456789\"\r\n    \r\n   },\r\n      \"subscriber\": {\r\n        \"firstName\": \"\",\r\n        \"middleName\": \"\",\r\n        \"lastName\": \"\",\r\n        \"dob\": \"\",        \r\n        \"memberID\": \"xxx\"\r\n    },\r\n    \"dependent\": {\r\n        \"patient\": {\r\n            \"firstName\": \"Jane\",\r\n            \"middleName\": \"\",\r\n            \"lastName\": \"Doe\",\r\n            \"dob\": \"01/01/2000\",\r\n            \"gender\": \"\"\r\n        },\r\n        \"relationWithSubscriber\": \"\"\r\n    },\r\n    \"isSubscriberPatient\": \"False\",\r\n    \"doS_StartDate\": \"01/24/2017\",\r\n    \"doS_EndDate\": \"01/24/2017\",\r\n    \"serviceCodes\": [\r\n        \"30\"\r\n    ],\r\n   \r\n \"HCPCSCodes\": [\r\n        \"G0297\"\r\n    ],\r\n   \r\n     \"requestSource\": \"RestAPI\",\r\n\t \"PracticeType\":\"PhysicalTherapy\",\r\n     \"referenceId\":\"Pat MRN\",\r\n     \"Location\":\"Any location Name\",\r\n     \"IncludeTextResponse\":false\r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
<?php

$request = new HttpRequest();
$request->setUrl('https://api.pverify.com/API/EligibilitySummary');
$request->setMethod(HTTP_METH_POST);

$request->setHeaders(array(
  'Content-Type' => 'application/json',
  'Client-User-Name' => 'XXX',
  'Authorization' => 'Bearer XXX'
));

$request->setBody('{
      "payerCode": "00001",
   "provider": {
        "firstName": "",
        "middleName": "",
        "lastName": " test name",
        "npi": "123456789"

   },
      "subscriber": {
        "firstName": "",
        "middleName": "",
        "lastName": "",
        "dob": "",        
        "memberID": "xxx"
    },
    "dependent": {
        "patient": {
            "firstName": "Jane",
            "middleName": "",
            "lastName": "Doe",
            "dob": "01/01/2000",
            "gender": ""
        },
        "relationWithSubscriber": ""
    },
    "isSubscriberPatient": "False",
    "doS_StartDate": "01/24/2017",
    "doS_EndDate": "01/24/2017",
    "serviceCodes": [
        "30"
    ],
    "HCPCSCodes": [
    "G0297"
    ],
     "requestSource": "RestAPI",
     "PracticeType":"PhysicalTherapy",
     "referenceId":"Pat MRN",
     "Location":"Any location Name",
     "IncludeTextResponse":false
}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
curl --request POST \
  --url https://api.pverify.com/API/EligibilitySummary \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-Type: application/json' \
  --data '{\r\n      "payerCode": "00001",\r\n   "provider": {\r\n        "firstName": "",\r\n        "middleName": "",\r\n        "lastName": " test name",\r\n        "npi": "123456789"\r\n    \r\n   },\r\n      "subscriber": {\r\n        "firstName": "",\r\n        "middleName": "",\r\n        "lastName": "",\r\n        "dob": "",        \r\n        "memberID": "xxx"\r\n    },\r\n    "dependent": {\r\n        "patient": {\r\n            "firstName": "Jane",\r\n            "middleName": "",\r\n            "lastName": "Doe",\r\n            "dob": "01/01/2000",\r\n            "gender": ""\r\n        },\r\n        "relationWithSubscriber": ""\r\n    },\r\n    "isSubscriberPatient": "False",\r\n    "doS_StartDate": "01/24/2017",\r\n    "doS_EndDate": "01/24/2017",\r\n    "serviceCodes": [\r\n        "30"\r\n    ],\r\n   \r\n "HCPCSCodes": [\r\n        "G0297"\r\n    ],\r\n   \r\n     "requestSource": "RestAPI",\r\n    "PracticeType":"PhysicalTherapy",\r\n     "referenceId":"Pat MRN",\r\n     "Location":"Any location Name",\r\n     "IncludeTextResponse":false\r\n}'

EligibilitySummary Sample Response

{
    "RequestID": [requestID],
    "APIResponseCode": "0",
    "APIResponseMessage": "Processed",
    "IsPayerBackOffice": false,
    "PayerName": "AETNA INC",
    "VerificationType": "Dependent Verification",
    "DOS": "05/08/2019 - 05/08/2019",
    "ExceptionNotes": "",
    "IsHMOPlan": false,
    "AddtionalInfo": null,
    "Location": null,
    "ReferenceId": null,
    "OtherPayerInfo": null,
    "PlanCoverageSummary": {
        "Status": "Active",
        "EffectiveDate": "01/01/2019",
        "ExpiryDate": null,
        "PlanName": "OPEN ACCESS AETNA SELECT",
        "PolicyType": "Exclusive Provider Organization",
        "GroupNumber": "[group number]",
        "GroupName": "DUKE UNIVERSITY",
        "PlanNetworkID": null,
        "PlanNetworkName": null,
        "SubscriberRelationship": "Spouse",
        "PlanNumber": "[plan number]",
        "HRAorHSALimitationsRemaining": null
    },
    "PCPAuthInfoSummary": {
        "PrimaryCareProviderName": null,
        "PrimaryCareProviderPhoneNumber": null,
        "HBPCAuthorizationInfo": null,
        "UtilizationManagementOrganizationName": null,
        "CapitationFacilityName": null
    },
    "HBPC_Deductible_OOP_Summary": {
        "IndividualDeductibleInNet": "$600.00",
        "IndividualDeductibleOutNet": "$600.00",
        "IndividualDeductibleRemainingInNet": "$514.50",
        "IndividualDeductibleRemainingOutNet": "$514.50",
        "FamilyDeductibleInNet": "$1800.00",
        "FamilyDeductibleOutNet": "$1800.00",
        "FamilyDeductibleRemainingInNet": "$1714.50",
        "FamilyDeductibleRemainingOutNet": "$1714.50",
        "IndividualOOP_InNet": "$2000.00",
        "IndividualOOP_OutNet": "$2000.00",
        "IndividualOOPRemainingInNet": "$2000.00",
        "IndividualOOPRemainingOutNet": "$2000.00",
        "FamilyOOPInNet": "$6000.00",
        "FamilyOOPOutNet": "$6000.00",
        "FamilyOOPRemainingInNet": "$6000.00",
        "FamilyOOPRemainingOutNet": "$6000.00"
    },
    "MedicareInfoSummary": null,
    "MiscellaneousInfoSummary": {
        "RemainingSpendDown": null,
        "IsNPIInNetwork": null
    },
    "PracticeTypeSummary": {
        "CoPayInNet": null,
        "CoInsInNet": null,
        "CoPayOutNet": null,
        "CoInsOutNet": null,
        "AuthorizationInfo": null,
        "IndividualDeductibleInNet": null,
        "IndividualDeductibleOutNet": null,
        "IndividualDeductibleRemainingInNet": null,
        "IndividualDeductibleRemainingOutNet": null,
        "FamilyDeductibleInNet": null,
        "FamilyDeductibleOutNet": null,
        "FamilyDeductibleRemainingInNet": null,
        "FamilyDeductibleRemainingOutNet": null,
        "IndividualOOP_InNet": null,
        "IndividualOOP_OutNet": null,
        "IndividualOOPRemainingInNet": null,
        "IndividualOOPRemainingOutNet": null,
        "FamilyOOPInNet": null,
        "FamilyOOPOutNet": null,
        "FamilyOOPRemainingInNet": null,
        "FamilyOOPRemainingOutNet": null
    },
    "DisclaimerMessage": null,
    "DemographicInfo": {
        "Subscriber": {
            "Address1": null,
            "Address2": null,
            "City": null,
            "CommunicationNumber": null,
            "Date": null,
            "DOB_R": null,
            "Firstname": "[firstName]",
            "Gender_R": "",
            "Identification": [
                {
                    "Code": "[lastName]",
                    "Type": "Lastname_R",
                    "Name": null
                },
                {
                    "Code": "[firstName]",
                    "Type": "Firstname",
                    "Name": null
                },
                {
                    "Code": "[memberId]",
                    "Type": "Member ID",
                    "Name": null
                },
                {
                    "Code": "[groupNumber]",
                    "Type": "Group Number",
                    "Name": null
                },
                {
                    "Code": "DUKE UNIVERSITY",
                    "Type": "Group Name",
                    "Name": null
                }
            ],
            "Lastname_R": "[lastname]",
            "Middlename": "",
            "State": null,
            "Suffix": null,
            "Zip": null,
            "MilitaryPersonnelInfo": null,
            "FullName": "[fullname]"
        },
        "Dependent": {
            "DependentInfo": {
                "Address1": "[address]",
                "Address2": null,
                "City": "[city]",
                "CommunicationNumber": null,
                "Date": [
                    {
                        "Date": "01/01/2017",
                        "Type": "Plan Begin"
                    },
                    {
                        "Date": "05/08/2019",
                        "Type": "Service"
                    },
                    {
                        "Date": "01/01/2017",
                        "Type": "Eligibility Begin"
                    }
                ],
                "DOB_R": "[dob]",
                "Firstname": "[name]",
                "Gender_R": "",
                "Identification": [
                    {
                        "Code": "Spouse",
                        "Type": "Relationship",
                        "Name": null
                    },
                    {
                        "Code": "[number]",
                        "Type": "Plan Number",
                        "Name": null
                    }
                ],
                "Lastname_R": "[lastName]",
                "Middlename": null,
                "State": "",
                "Suffix": null,
                "Zip": "[zip]",
                "MilitaryPersonnelInfo": null,
                "FullName": "[FullName]"
            },
            "Relationship": "Spouse"
        }
    },
    "ServiceTypeDetailInfo": [
        {
            "ServiceTypeName": "Health Benefit Plan Coverage",
            "ServiceTypeSections": [
                {
                    "Label": "",
                    "ServiceParameters": [
                        {
                            "Key": "Family Active Coverage (OPEN ACCESS AETNA SELECT)",
                            "Value": null,
                            "Message": null,
                            "OtherInfo": [
                                {
                                    "Key": "Policy Type",
                                    "Value": "Exclusive Provider Organization",
                                    "Message": null,
                                    "OtherInfo": null
                                }
                            ]
                        },...............

Eligibility summary allows you to populate data based on the Practice Type. While most of the objects are similar to other eligibility calls, there is a new object which is specific to practice type. EligibilitySummary is not supported for back office payers.

Headers

Key Value
URL https://api.pverify.com/API/EligibilitySummary
Method POST
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username
Client-API-Id API ID provided by pVerify
Content-Type application/json

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

Body

Property Name Data Type Required Description
payerCode String Yes pVerify Payer Code(ie Aetna 00001)
payerName String No Payer Name
provider.firstName String No Provider First Name
provider.middleName String No Provider First Name
provider.lastName String Yes Provider Last Name
provider.npi String Yes 10-Digit NPI Value
provider.pin String No PIN
provider.taxonomy String No Taxonomy
subscriber.firstName String Conditional First Name of subscriber required for self inquiry
subscriber.lastName String Conditional Last Name of subscriber required for self inquiry
subscriber.memberId String Yes Member Id required for both type inquiries(self,dependent)
subscriber.dob String Conditional Required for self-inquiry for better matching result. (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber.ssn String No SSN of Subscriber
isSubscriberPatient String Yes True for self and False for Dependent Query
doS_StartDate String Yes Date of service start date (Expected format: MM/dd/YYYY ie 01/01/2000)
doS_EndDate String Yes Date of service end date (Expected format: MM/dd/YYYY ie 01/01/2000)
serviceCodes String Array Yes Services codes to run inquiry. If no service codes are passed then service code 30 will be assigned.
requestSource String Yes the request Source for ex: RestAPI
dependent Object Conditional Required for dependent inquiry
IncludeTextResponse Boolean No Indicates whether to return the full text of the eligibility response
referenceId String Yes Patient MRN or account Number
Location String Yes Location is the practice location. Note by setting this, you will lock the patient to one location, so that users that login in via our portal who are not authorized to see that location will not see the patient.

EligibilitySummary Response Fields

Key Type Description
RequestID Int Request ID Value
APIResponseCode String Response code value
APIResponseMessage String Value associated with response code
IsPayerBackOffice Boolean Boolean value to determine if it is a back office payer
PayerName String Name of Payer
VerificiationType String Type of eligibility verification
DOS String Date of Service in MM/DD/YYYY
ExceptionNotes String Notable exceptions returned
IsHMOPlan Boolean Determines if is HMOPlan
AdditionalInfo String Additional Info
Location String Location
ReferenceID String Reference ID
OtherPayerInfo String Other Payer Info
PlanCoverageSummary Object Summary of Plan coverage
PlanCoverageSummary.Status String Status of Plan
PlanCoveragesummary.EffetiveDate String Start date of plan coverage in MM/DD/YYYY format
PlanCoverageSummary.ExpiryDate String Expiration date of plan coverage
PlanCoverageSummary.PlanName String Name of plan
PlanCoverageSummary.PolicyType String Policy type for plan
PlanCoverageSummary.GroupNumber String Plan Group Number
PlanCoverageSummary.GroupName String Plan Group Name
PlanCoverageSummary.PlanNetworkId String Network Id of plan
PlanCoverageSummary.PlanNetworkName String Network Name of Plan
PlanCoverageSummary.SubscriberRelationship String Subscriber relationship
PlanCoverageSummary.PlanNumber String Plan Number
PlanCoverageSummary. HRAorHSALimitationsRemaining String Limitations Remaining
PCPAuthInfoSummary Object PCP Authorization Info Summary
PCPAuthInfoSummary.PrimaryCareProviderName String Primary Care Provider Name
PCPAuthInfoSummary. PrimaryCareProviderPhoneNumber String Provider Phone Number
PCPAuthInfoSummary.HBPCAuthorizationInfo String HBCP Authorization Info
PCPAuthInfoSummary. UtilizationManagementOrganizationName String Management Org Name
PCPAuthInfoSummary.CapitationFacilityName String Capitation Facility Name
HBPC_Deductible_OOP_Summary Object OOP Summary for HBPC Deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleInNet String Individual In Net Deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleOutNet String Individual Deductible out of Net
HBPC_Deductible_OOP_Summary. IndividualDeductibleRemainingInNet String Remaining in net deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleRemainingOutNet String Remaining out net deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleInNet String Family In Net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleOutNet String Family Out Net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleRemainingInNet String Remaining in net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleRemainingOutNet String Remaining out net deductible
HBPC_Deductible_OOP_Summary. IndividualOOP_InNet String Individual OOP In Net
HBPC_Deductible_OOP_Summary. IndividualOOP_OutNet String Individual OOP Out Net
HBPC_Deductible_OOP_Summary. IndividualOOPRemainingInNet String Individual OOP Remaining In net
HBPC_Deductible_OOP_Summary. IndividualOOPRemainingOutNet String Individual OOP Remaining Out Net
HBPC_Deductible_OOP_Summary. FamilyOOPInNet String Family OOP in Net
HBPC_Deductible_OOP_Summary. FamilyOOPOutNet String Family OOP out Net
HBPC_Deductible_OOP_Summary. FamilyOOPRemainingInNet String Family OOP Remaining in Net
HBPC_Deductible_OOP_Summary. FamilyOOPRemainingOutNet String Family OOP remaining out net
MedicareInfoSummary String Medicare Info Summary
DisclaimerMessage String Disclaimer
DemographicInfo Object Demographic Info on Subscriber and Dependent
DemographicInfo.Subscriber Object Demographic Info on Subscriber
DemographicInfo.Subscriber. Address1 String Line one address of subscriber
DemographicInfo.Subscriber. Address2 String Line two address of subscriber
DemographicInfo.Subscriber. City String Subscriber city location
DemographicInfo.Subscriber. CommunicationNumber String Communication Number for subscriber
DemographicInfo.Subscriber. Date String[] Array of dates showing when certain events began
DemographicInfo.Subscriber. Date.Date String Shows date in MM/DD/YYYY Format
DemographicInfo.Subscriber. Date.Type String Significance of Date Above
DemographicInfo.Subscriber. DOB_R String Date of Birth in MM/DD/YYYY
DemographicInfo.Subscriber. FirstName String Subscriber First Name
DemographicInfo.Subscriber. Gender_R String Subscriber Gender
DemographicInfo.Subscriber. Identification String[] Series of fields related to identification of subscriber
DemographicInfo.Subscriber. Identification.Code String Value associated with identification
DemographicInfo.Subscriber. Identification.Type String Key associated with Value above
DemographicInfo.Subscriber. Identification.Name String Name Associated with identification
DemographicInfo.Subscriber. LastName_R String Last Name of Subscriber
DemographicInfo.Subscriber. Middlename String Middle Name of Subscriber
DemographicInfo.Subscriber. State String State of residence for subscriber
DemographicInfo.Subscriber. Suffix String Subscriber suffix
DemographicInfo.Subscriber. Zip String Subscriber Zip Code
DemographicInfo.Subscriber. MilitaryPersonnelInfo String Military Personnel Info
DemographicInfo.Subscriber. FullName String Subscriber Full Name
DemographicInfo.Dependent Object Demographic Info on Dependent
DemographicInfo.Dependent. Address1 String Line one address of Dependent
DemographicInfo.Dependent. Address2 String Line two address of Dependent
DemographicInfo.Dependent. City String Dependent city location
DemographicInfo.Dependent. CommunicationNumber String Communication Number for Dependent
DemographicInfo.Dependent. Date String[] Array of dates showing when certain events began
DemographicInfo.Dependent. Date.Date String Shows date in MM/DD/YYYY Format
DemographicInfo.Dependent. Date.Type String Significance of Date Above
DemographicInfo.Dependent. DOB_R String Date of Birth in MM/DD/YYYY
DemographicInfo.Dependent. FirstName String Dependent First Name
DemographicInfo.Dependent. Gender_R String Dependent Gender
DemographicInfo.Dependent. Identification String[] Series of fields related to identification of Dependent
DemographicInfo.Dependent. Identification.Code String Value associated with identification
DemographicInfo.Dependent. Identification.Type String Key associated with Value above
DemographicInfo.Dependent. Identification.Name String Name Associated with identification
DemographicInfo.Dependent. LastName_R String Last Name of Dependent
DemographicInfo.Dependent. Middlename String Middle Name of Dependent
DemographicInfo.Dependent. State String State of residence for Dependent
DemographicInfo.Dependent. Suffix String Dependent suffix
DemographicInfo.Dependent. Zip String Dependent Zip Code
DemographicInfo.Dependent. MilitaryPersonnelInfo String Military Personnel Info
DemographicInfo.Dependent. FullName String Dependent Full Name
DemographicInfo.Relationship String Dependent RelationShip to Subscriber
ServiceTypeDetailInfo Object[] Details Relating to Service Type
ServiceTypeDetailInfo.ServiceTypeName String Name of Service Type
ServiceTypeDetailInfo.ServiceTypeSections Object[] Service Type Sections Information
ServiceTypeDetailInfo.ServiceTypeSections. Label String Identifier for Service Type Section
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters Object[] Service Parameters
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Key String Name for Service Type
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Value String Value of service Type
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Message String Message
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.OtherInfo Object[] Contains additional Key, Value, Message and OtherInfo Fields if necessary

GetEligibility

GetEligibility Sample Call: (GET) https://api.pverify.com/API/GetEligibility/{key}/{id}

GET API/GetEligibility/{key}/{id} HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"


Body:
None
}

curl --request GET \
  --url https://api.pverify.com/API/GetEligibility/Status/5444 \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \

OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.pverify.com/API/GetEligibility/Status/5444")
  .get()
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Client-User-Name", "XXX")
  .build();

Response response = client.newCall(request).execute();
var client = new RestClient("https://api.pverify.com/API/GetEligibility/Status/5444");
var request = new RestRequest(Method.GET);
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
IRestResponse response = client.Execute(request);
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/GetEligibility/Status/5444",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer XXX",
    "Client-User-Name: XXX",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

GetEligiblity is a new series of endpoints that are RESTful so you can get the key you want. For example calling https://api.pverify.com/API/GetEligibility/Status/5444 after a POST using EligiblitySummary or EligiblityInquiry will get you only the status "Active".

Key Value
URL https://api.pverify.com/API/GetEligibility/{key}/{id}
Method GET
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name Client User Name
Key Type Description
isParsed boolean determines if data is parsed
key String Identifier
value String Information associated with identifier
errorMessage String Message if error occurred

GetEligibilitySingleValueAPIKeys

GetEligibilitySingleValueAPIKeys Sample Call: (GET) https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys?Dos=MM-DD-YYYY

GET API/GetEligibilitySingelValueAPIKeys?Dos=MM-DD-YYYY HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

URL Parameters: "DOS=MM-DD-YYYY"

Body:
None
}

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys?Dos=05-08-2019",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Accept: */*",
    "Authorization: Bearer XXX",
    "Client-User-Name: XXX",
    "Content-Type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys?Dos=05-08-2019")
  .get()
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Content-Type", "application/json")
  .build();

Response response = client.newCall(request).execute();
var client = new RestClient("https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys?Dos=05-08-2019");
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
IRestResponse response = client.Execute(request);
curl --request GET \
  --url 'https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys?Dos=05-08-2019' \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-Type: application/json' 

GetEligibilitySingleValueAPIKeys Sample Response


{
    "key": "Additional Info",
    "supportsMedicare": true
},
{
    "key": "Effective Date",
    "supportsMedicare": true
},
{
    "key": "Expired Date",
    "supportsMedicare": true
},
{
    "key": "Group Name",
    "supportsMedicare": true
},
{
    "key": "Group Number",
    "supportsMedicare": true
},
{
    "key": "HRA or HSA Limitations Remaining",
    "supportsMedicare": true
},

This endpoint will retrieve a list of supported keys by single value API.Key in this list only need to be sent in the URL of Single value API /{Key}/{Request Id} = /Plan Name/5444

Key Value
URL https://api.pverify.com/API/GetEligibilitySingelValueAPIKeys
Method GET
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username
Content-Type application/json
URL Params Date of Service (form of mm-dd-yyyy)

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

Response fields

Field Type Description
Key String Identifier
supportsMedicare Boolean T/F value to determine if Key supports medicare

Note: Response has two values, one is supported key and key supported by Medicare Payer. If it is Medicare inquiry then use only Medicare supported keys

GetPayers

Sample GetPayers Request: (GET) https://api.pverify.com/API/GetPayers

GET /api/GetPayers HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

Body:
None

Using Rest Sharp Rest Client
var request = new RestRequest(uri, method);
request.AddHeader("authorization", "Bearer " +  token);
request.AddHeader("Client-User-Name", username);
request.AddHeader("content-type", method == Method.GET ?
 "application/x-www-form-urlencoded" : "application/json");
IRestResponse response =  Execute(request);
//Using OKHttp Client

import java.io.IOException;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;


public class GetPayers {
    OkHttpClient client = new OkHttpClient();
    MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");


public String run(String url, String token) throws IOException {
    Request request = new Request.Builder()
      .url(url)
      .get()
      .addHeader("content-type", "application/json")
      .addHeader("authorization", "Bearer " + token)
      .addHeader("Client-User-Name", "XXX")
      .build();
    try(Response response = client.newCall(request).execute()){
        return response.body().string();
    }

}
    public static void main(String[] args) throws IOException {
        GetPayers payers = new GetPayers();
        String response = payers.run("https://api.pverify.com/API/GetPayers", "<token>");
        System.out.println(response);
    }
}
<?php
  "https://api.pverify.com/API/GetPayers",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXX",
    "content-type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X GET \
  https://api.pverify.com/API/GetPayers \
  -H 'authorization: Bearer ya9On51ZiIMBvf3pDB_F3oMxjfFkX8t9vfSn' \
  -H 'Client-User-Name:XXX' \
  -H 'Content-Type:application/json'

Get Payers Sample Response


[
  {
    "payerID": [id],
    "payerName": "[name]",
    "payerCode": "[code]",
    "allowedNoOfServiceCodes": 8,
    "isFreePayer": true,
    "isAvailableForDemo": false,
    "total": 0
  },
  {
    "payerID": [id],
    "payerName": "[name]",
    "payerCode": "[code]",
    "allowedNoOfServiceCodes": 3,
    "isFreePayer": false,
    "isAvailableForDemo": false,
    "total": 0
  },
  {
    "payerID": [id],
    "payerName": "[name]",
    "payerCode": "[code]",
    "allowedNoOfServiceCodes": 3,
    "isFreePayer": true,
    "isAvailableForDemo": true,
    "total": 0
  }, (etc)
]

Returns the list of current pVerify payers (pVerify payer code & pVerify Payer Name). Note backoffice (non-EDI) payers are denoted with a payer code prefix of BO. For example BO00018

GetPayers Request

Key Value
URL https://api.pverify.com/API/GetPayers
Method GET
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username
Content-Type application/json

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

GetPayers Response

Key Value
payerID Payer id
payerName Payer Name
payerCode Payer Code
allowedNoOfServiceCodes Allowed number of service codes
isFreePayer Boolean determines if payer is free
isAvailableForDemo Boolean to see if payer is available for demo
total Total

GetPendingInquiries

GetPendingInquiries Sample Call: (GET) https://api.pverify.com/API/GetPendingInquiries?DOS=01-01-2018

GET /api/GetPendingInquiries?DOS=MM-DD-YYYY HTTP/1.1
Host: api.pverify.com

Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"

URL Parameters:
"DOS=MM-DD-YYYY"

Body:
None
var client = new RestClient("https://api.pverify.com/API/GetPendingInquiries?DOS=01-01-2018");
var request = new RestRequest(Method.GET);
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
IRestResponse response = client.Execute(request);
//Using OKHttp Client

import java.io.IOException;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;


public class GetPendingInquiries {
    OkHttpClient client = new OkHttpClient();

    MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
    private String pending;
    private StringToJsonPending json = new StringToJsonPending();


public void setJson(String url, String token) throws IOException {
    Request request = new Request.Builder()
              .url(url)
              .get()
              .addHeader("authorization", "Bearer " + token)
              .addHeader("Client-User-Name", "XXX")
              .build();
    try(Response response = client.newCall(request).execute()){
        pending = response.body().string();
        json.convert(pending);


    }

}
}
<?php
   "https://api.pverify.com/API/GetPendingInquiries?DOS=01-01-2018",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXX",
    "content-type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X GET \
  'https://api.pverify.com/API/GetPendingInquiries?DOS=01-01-2018' \
  -H 'authorization: Bearer XXX' \
  -H 'Client-User-Name: XXX' \

Get Pending Inquiries Sample Response

[
    {
        "Status": "Pending",
        "TransactionId": 2356,
        "MemberId": "25xxxxxxxxxxx",
        "PatientFirstName": "Sxxxxxxxx",
        "PatientLastName": "Axxxxxxxxxxx",
        "PatientDOB": null,
        "ProviderLastName": null,
        "ProviderNPI": null,
        "IsDependentVerification": false,
        "DOS_StartDate": "2018-01-01T00:00:00"
    },
    {
        "Status": "Pending",
        "TransactionId": 2358,
        "MemberId": "27xxxxxxxxxxx",
        "PatientFirstName": "Sxxxxxxxx",
        "PatientLastName": "Axxxxxxxxxxx",
        "PatientDOB": null,
        "ProviderLastName": null,
        "ProviderNPI": null,
        "IsDependentVerification": false,
        "DOS_StartDate": "2018-01-01T00:00:00"
    },

]

This endpoint will retrieve a list of pending transactions. It is intended to show which back office eligibility transactions are not complete yet, given the DOS as an input.

GetPendingInquiries Request

Key Value
URL https://api.pverify.com/API/GetPendingInquiries?DOS=01-01-2018
Method GET
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name Your pVerify username
URL Parameters Date of Service (format is MM-DD-YYYY)

Estimate Calculation

EstimateCalculation Sample Call: (POST) https://api.pverify.com/api/EstimateCalculation

POST /api/EstimateCalculation HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Content-Type: "application/json"
Client-User-Name: "[username]"

Body:
{
"zipCode": "27713",
    "cptCodes":["10061","0191T", "33300"],
    "coPay":"20",
    "coinsPercentage":"30",
    "deductibleRemaining":"40",
    "outofPocketRemaining": "",
    "isCopayIncludeInDeductible":false,
    "isSecondryStatusActive":false
   }
var client = new RestClient("https://api.pverify.com/API/CancelTransaction");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "[name]");
request.AddHeader("Authorization", "Bearer XXX");
request.AddParameter("undefined", "{\r\n\"transactionId\":12345455\r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
//Using OKHttp Client

package estimateCalculation;

import java.io.IOException;


import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;

public class EstimateCalculation {
    OkHttpClient client = new OkHttpClient();

    MediaType mediaType = MediaType.parse("application/json");
    RequestBody body = RequestBody.create(mediaType, "{\r\n \"zipCode\": \"27713\",\r\n    \"cptCodes\":[\"10061\",\"0191T\", \"33300\"],\r\n    \"coPay\":\"20\",\r\n    \"coinsPercentage\":\"30\",\r\n    \"deductibleRemaining\":\"40\",\r\n    \"outofPocketRemaining\": \"\",\r\n    \"isCopayIncludeInDeductible\":false,\r\n    \"isSecondryStatusActive\":false\r\n}");

    private String estimate;
    private StringToJsonEstimate json = new StringToJsonEstimate();


public void setJson(String url, String token) throws IOException {
    Request request = new Request.Builder()
              .url(url)
              .post(body)
              .addHeader("authorization", "Bearer " + token)
              .addHeader("content-type", "application/json")
              .addHeader("Client-User-Name", "XXX") // Test credentials unavailable for EstimateCalculation
              .build();
    try(Response response = client.newCall(request).execute()){
        System.out.println(response.toString());
        estimate = response.body().string();
        json.convert(estimate);


    }   
}


public StringToJsonEstimate getJson() {
    return json;

}
}

<?php
"https://api.pverify.com/api/EstimateCalculation",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n \"zipCode\": \"27713\",\r\n    \"cptCodes\":[\"10061\",\"0191T\", \"33300\"],\r\n    \"coPay\":\"20\",\r\n    \"coinsPercentage\":\"30\",\r\n    \"deductibleRemaining\":\"40\",\r\n    \"outofPocketRemaining\": \"\",\r\n    \"isCopayIncludeInDeductible\":false,\r\n    \"isSecondryStatusActive\":false\r\n}",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXXX",
    "content-type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X POST \
  https://api.pverify.com/api/EstimateCalculation \
  -H 'authorization: Bearer XXX' \
  -H 'Client-User-Name: XXX' \
  -H 'content-type: application/json' \
  -d '{
 "zipCode": "27713",
    "cptCodes":["10061","0191T", "33300"],
    "coPay":"20",
    "coinsPercentage":"30",
    "deductibleRemaining":"40",
    "outofPocketRemaining": "",
    "isCopayIncludeInDeductible":false,
    "isSecondryStatusActive":false
}'

Estimate Calculation Sample Response


{
    "patientResponsibility": "$809.41",
    "copay": "$20",
    "coInsPercentage": "30.00%",
    "coInsAmount": "$769.41",
    "estimatedAllowable": "$2,604.70",
    "deductibleRemaining": "$40",
    "outOfPocketRemaining": "",
    "amountPayable": "$809.41",
    "selectedCPTs": [
        {
            "procedure": "10061-Drainage of skin abscess",
            "allowedAmount": "$200.58",
            "unit": 1
        },
        {
            "procedure": "0191T-Insert ant segment drain int",
            "allowedAmount": "$0.00",
            "unit": 1
        },
        {
            "procedure": "33300-Repair of heart wound",
            "allowedAmount": "$2,404.12",
            "unit": 1
        }
    ],
    "zipCode": "27713",
    "apiResponseCode": 0,
    "apiResponseMessage": "Calculated Successfully."
}

This POST call will get an estimated price from CMS (Medicare) non-facility price index. In order for you to use this, we must add the estimator service (which is free) to your account. Additionally, for the Zip code, use 0 for national pricing, and you can send an array of CPT codes per the Postman example. Please note, due to the nature of the EstimateCalculation call, no test credentials are available.

EstimateCalculation Request

Key Value
URL https://api.pverify.com/api/EstimateCalculation
Method POST
Headers Description
Client-User-Name* Your pVerify username
Content-Type application/json
Body Description
Data Parameters See fields to the right

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

EstimateCalculation Fields

Field Type Description
zipCode String Zip code of your location. Use 0 for national pricing.
cptCodes String Array of CPT codes needed for estimate. If there is a modifier include it as a dash. For example, 93024-TC would be the cardiac drug stress test technical component.
coPay String Dollar amount of patient copay.
coinsPercentage String In percent, coinsurance
deductibleRemaining String Dollar amount of deductible remaining
outofPocketRemaining String Out of pocket remaining- if this is blank we will not include this in the calculation.
isCopayIncludeInDeductible Boolean Add copay to coinsurance or not.
isSecondaryStatusActive Boolean If patient has secondary insurance- if this is true then patient responsibility is zero.

EstimateCalculation Response

Field Description
patientResponsibility The amount the patient owes.
copay Patient copay.
coInsPercentage Coinsurance percentage.
coInsAmount Coinsurance Amount.
estimatedAllowable THe sum of the charges (note: not all charges are approved by CMS)
deductibleRemainging Amount of deductible remaining.+
outOfPocketRemaining Amount remaining for out of pocket.++
amountPayable Amount Payable
selected CPTs Selected CPT codes
zipCode Zip code returned
apiResponseCode API response code
apiResponseMessage API response message

+The deductible must be met before insurance applies. For example, if the deductible remaining is 1000, then the patient will have to pay out of pocket $1000 for next procedure as long as the procedure amount > $1000. ++This is typically a high number. Once it reaches zero, the patient responsibility is zero. It is designed for catastrophic coverage ie: major surgery or chemotherapy.

EasyEligibility

EasyEligibility Sample Call: (POST) https://api.pverify.com/api/EasyEligibility

POST /api/EasyEligibility HTTP/1.1
Host: api.pverify.com

Client-User-Name: "[username]"
Client-Password: "[password]"
Content-Type: "application/json"

Body:
{
    "payerCode": "00001",
    "provider_lastname":"[name]", 
    "provider_npi": "[npi]",
    "Patient_First":"[name]",
    "Patient_Last":"[name]",
     "memberID": "[id]",
     "patient_DOB":"12/26/1976",

     "date_Of_Service": "08/08/2018",
     "serviceCodes":"30"

}
var client = new RestClient("https://api.pverify.com/api/EasyEligibility");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-Password", "[password]");
request.AddHeader("Client-User-Name", "[username]");
request.AddParameter("undefined", "{\r\n    \"payerCode\": \"00001\",\r\n    \"provider_lastname\":\"[name]\", \r\n    \"provider_npi\": \"[npi]\",\r\n     \"memberID\": \"[id]\",\r\n     \"patient_DOB\":\"[dob]\",\r\n    \r\n     \"date_Of_Service\": \"08/08/2018\",\r\n     \"serviceCodes\":\"30\"\r\n    \r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
//Using OKHttp Client

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n    \"payerCode\": \"00001\",\r\n    \"provider_lastname\":\"[name]\", \r\n    \"provider_npi\": \"[npi]\",\r\n     \"memberID\": \"[id]\",\r\n     \"patient_DOB\":\"12/26/1976\",\r\n    \r\n     \"date_Of_Service\": \"08/08/2018\",\r\n     \"serviceCodes\":\"30\"\r\n    \r\n}");
Request request = new Request.Builder()
  .url("https://api.pverify.com/api/EasyEligibility")
  .post(body)
  .addHeader("content-type", "application/json")
  .addHeader("Client-User-Name", "XXX")
  .addHeader("client-password", "XXX")
  .build();

Response response = client.newCall(request).execute();

<?php
 "https://api.pverify.com/api/EasyEligibility",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n    \"payerCode\": \"00001\",\r\n    \"provider_lastname\":\"[name]\", \r\n    \"provider_npi\": \"[npi]\",\r\n     \"memberID\": \"[id]\",\r\n     \"patient_DOB\":\"12/26/1976\",\r\n    \r\n     \"date_Of_Service\": \"08/08/2018\",\r\n     \"serviceCodes\":\"30\"\r\n    \r\n}",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXXX",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --location --request POST "https://api.pverify.com/api/EasyEligibility" \
  --header "Client-User-Name: [name]" \
  --header "Client-Password: [password]" \
  --header "Content-Type: application/json" \
  --data "{
    \"payerCode\": \"00001\",
    \"provider_lastname\":\"[lastname]\", 
    \"provider_npi\": \"[npi]\",
     \"memberID\": \"[ID]\",
     \"patient_DOB\":\"[DOB]\",

     \"date_Of_Service\": \"08/08/2018\",
     \"serviceCodes\":\"30\"

}"

Easy Eligibility Sample Response

{
    "transactionStatus": "Processed",
    "transactionMessage": "",
    "ediErrorMessage": null,
    "eligibilityStatus": "Active",
    "eligibilityResult": "[textual eligibility report]",
   "referenceId": null,
    "location": "[location]"
}

This POST call will return the Eligibility Status of a requested provider. The EasyEligibility endpoint is designed to facilitate easy access to Eligibility Information in just one step.

Key Value
URL api.pverify.com/api/EasyEligibility
Method POST
Header Description
Client-User-Name* Your pVerify username
Client-Password Your pVerify password
Body See the data parameters to the right

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

EasyEligibility Fields

Field Type Description
payerCode String pVerify payer code
provider_lastname String Provider Last Name
provider_npi String NPI number of provider
Patient_First String Patient First Name
Patient_Last String Patient Last Name
memberID String Payer Member ID
patient_DOB String Patient date of birth (Expected format: MM/dd/YYYY ie 01/01/2000)
date_Of_Service String Date of Service (Expected format: MM/dd/YYYY ie 01/01/2000)
serviceCodes String pVerify service code

EasyEligibility Response

Field Type Description
transactionStatus String Status of transaction
transactionMessage String Additional information regarding transaction
ediErrorMessage String Error message
eligibilityStatus String Status of eligibility
eligibilityResult String Final information regarding eligibility
referenceId String Patient MRN or account Number
location String Location is the practice location. Note by setting this, you will lock the patient to one location, so that users that login in via our portal who are not authorized to see that location will not see the patient.

EasyEligibilitySummary

Easy Eligibility Summary Sample Calls: (POST) https://api.pverify.com/API/EasyEligibilitySummary

POST API/EasyEligibilitySummary HTTP/1.1
Host: api.pverify.com

Headers:
Content-Type: "application/json"
Client-Password: "[password]"
Client-User-Name: "[username]"

Body:
{
      "payerCode": "00001",
      "payerName": "Aetna",

        "Provider_LastName": "test",
        "Provider_NPI": "[npi]",

        "Patient_First": "test",
        "Patient_DOB": "[dob]",
        "Patient_Last": "",
        "memberID": "[memberid]",

         "Date_Of_Service": "06/11/2019",
         "ServiceCodes": "30",


        "referenceId":"",
        "Location":"",

         "PracticeType":"PhysicalTherapy",
        "IncludeTextResponse":true
}

var client = new RestClient("https://api.pverify.com/API/EasyEligibilitySummary");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-type", "application/json");
request.AddHeader("Client-Password", "XXX");
request.AddHeader("Client-User-Name", "XXX");
request.AddParameter("undefined", "{\r\n      \"payerCode\": \"00001\",\r\n      \"payerName\": \"Aetna\",\r\n    \r\n        \"Provider_LastName\": \"test\",\r\n        \"Provider_NPI\": \"XXX\",\r\n\r\n        \"Patient_First\": \"XXX\",\r\n        \"Patient_DOB\": \"XXX\",\r\n        \"Patient_Last\": \"XXX\",\r\n        \"memberID\": \"XXX\",\r\n   \r\n         \"Date_Of_Service\": \"06/11/2019\",\r\n         \"ServiceCodes\": \"30\",\r\n    \r\n       \r\n        \"referenceId\":\"\",\r\n        \"Location\":\"\",\r\n        \r\n         \"PracticeType\":\"PhysicalTherapy\",\r\n        \"IncludeTextResponse\":true\r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/octet-stream");
RequestBody body = RequestBody.create(mediaType, "{\r\n      \"payerCode\": \"00001\",\r\n      \"payerName\": \"Aetna\",\r\n    \r\n        \"Provider_LastName\": \"test\",\r\n        \"Provider_NPI\": \"XXX\",\r\n\r\n        \"Patient_First\": \"XXX\",\r\n        \"Patient_DOB\": \"XXX\",\r\n        \"Patient_Last\": \"XXX\",\r\n        \"memberID\": \"XXX\",\r\n   \r\n         \"Date_Of_Service\": \"06/11/2019\",\r\n         \"ServiceCodes\": \"30\",\r\n    \r\n       \r\n        \"referenceId\":\"\",\r\n        \"Location\":\"\",\r\n        \r\n         \"PracticeType\":\"PhysicalTherapy\",\r\n        \"IncludeTextResponse\":true\r\n}");
Request request = new Request.Builder()
  .url("https://api.pverify.com/API/EasyEligibilitySummary")
  .post(body)
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Client-Password", "XXX")
  .addHeader("Content-type", "application/json")
  .build();

Response response = client.newCall(request).execute();

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/EasyEligibilitySummary",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n      \"payerCode\": \"00001\",\r\n      \"payerName\": \"Aetna\",\r\n    \r\n        \"Provider_LastName\": \"test\",\r\n        \"Provider_NPI\": \"XXX\",\r\n\r\n        \"Patient_First\": \"XXX\",\r\n        \"Patient_DOB\": \"XXX\",\r\n        \"Patient_Last\": \"XXX\",\r\n        \"memberID\": \"XXX\",\r\n   \r\n         \"Date_Of_Service\": \"06/11/2019\",\r\n         \"ServiceCodes\": \"30\",\r\n    \r\n       \r\n        \"referenceId\":\"\",\r\n        \"Location\":\"\",\r\n        \r\n         \"PracticeType\":\"PhysicalTherapy\",\r\n        \"IncludeTextResponse\":true\r\n}",
  CURLOPT_HTTPHEADER => array(
    "Client-User-Name: XXX",
    "Client-Password: XXX"
    "Content-type: application/json"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

curl --request POST \
  --url https://api.pverify.com/API/EasyEligibilitySummary \
  --header 'Client-Password: XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-type: application/json' \
  --data '{\r\n     
  "payerCode": "00001",\r\n     
  "payerName": "Aetna",\r\n    \r\n        
  "Provider_LastName": "test",\r\n       
  "Provider_NPI": "XXX",\r\n\r\n   
  "Patient_First": "XXX",\r\n       
  "Patient_DOB": "XXX",\r\n      
  "Patient_Last": "XXX",\r\n      
  "memberID": "XXX",\r\n   \r\n   
  "Date_Of_Service": "06/11/2019",\r\n    
  "ServiceCodes": "30",\r\n    \r\n       \r\n     
  "referenceId":"",\r\n      
  "Location":"",\r\n        \r\n      
  "PracticeType":"PhysicalTherapy",\r\n    
  "IncludeTextResponse":true\r\n}'

Easy Eligibility Summary Sample Response

{
    "RequestID": [requestID],
    "APIResponseCode": "0",
    "APIResponseMessage": "Processed",
    "IsPayerBackOffice": false,
    "PayerName": "AETNA INC",
    "VerificationType": "Dependent Verification",
    "DOS": "05/08/2019 - 05/08/2019",
    "ExceptionNotes": "",
    "IsHMOPlan": false,
    "AddtionalInfo": null,
    "Location": null,
    "ReferenceId": null,
    "OtherPayerInfo": null,
    "PlanCoverageSummary": {
        "Status": "Active",
        "EffectiveDate": "01/01/2019",
        "ExpiryDate": null,
        "PlanName": "OPEN ACCESS AETNA SELECT",
        "PolicyType": "Exclusive Provider Organization",
        "GroupNumber": "[group number]",
        "GroupName": "DUKE UNIVERSITY",
        "PlanNetworkID": null,
        "PlanNetworkName": null,
        "SubscriberRelationship": "Spouse",
        "PlanNumber": "[plan number]",
        "HRAorHSALimitationsRemaining": null
    },
    "PCPAuthInfoSummary": {
        "PrimaryCareProviderName": null,
        "PrimaryCareProviderPhoneNumber": null,
        "HBPCAuthorizationInfo": null,
        "UtilizationManagementOrganizationName": null,
        "CapitationFacilityName": null
    },
    "HBPC_Deductible_OOP_Summary": {
        "IndividualDeductibleInNet": "$600.00",
        "IndividualDeductibleOutNet": "$600.00",
        "IndividualDeductibleRemainingInNet": "$514.50",
        "IndividualDeductibleRemainingOutNet": "$514.50",
        "FamilyDeductibleInNet": "$1800.00",
        "FamilyDeductibleOutNet": "$1800.00",
        "FamilyDeductibleRemainingInNet": "$1714.50",
        "FamilyDeductibleRemainingOutNet": "$1714.50",
        "IndividualOOP_InNet": "$2000.00",
        "IndividualOOP_OutNet": "$2000.00",
        "IndividualOOPRemainingInNet": "$2000.00",
        "IndividualOOPRemainingOutNet": "$2000.00",
        "FamilyOOPInNet": "$6000.00",
        "FamilyOOPOutNet": "$6000.00",
        "FamilyOOPRemainingInNet": "$6000.00",
        "FamilyOOPRemainingOutNet": "$6000.00"
    },
    "MedicareInfoSummary": null,
    "MiscellaneousInfoSummary": {
        "RemainingSpendDown": null,
        "IsNPIInNetwork": null
    },
    "PracticeTypeSummary": {
        "CoPayInNet": null,
        "CoInsInNet": null,
        "CoPayOutNet": null,
        "CoInsOutNet": null,
        "AuthorizationInfo": null,
        "IndividualDeductibleInNet": null,
        "IndividualDeductibleOutNet": null,
        "IndividualDeductibleRemainingInNet": null,
        "IndividualDeductibleRemainingOutNet": null,
        "FamilyDeductibleInNet": null,
        "FamilyDeductibleOutNet": null,
        "FamilyDeductibleRemainingInNet": null,
        "FamilyDeductibleRemainingOutNet": null,
        "IndividualOOP_InNet": null,
        "IndividualOOP_OutNet": null,
        "IndividualOOPRemainingInNet": null,
        "IndividualOOPRemainingOutNet": null,
        "FamilyOOPInNet": null,
        "FamilyOOPOutNet": null,
        "FamilyOOPRemainingInNet": null,
        "FamilyOOPRemainingOutNet": null
    },
    "DisclaimerMessage": null,
    "DemographicInfo": {
        "Subscriber": {
            "Address1": null,
            "Address2": null,
            "City": null,
            "CommunicationNumber": null,
            "Date": null,
            "DOB_R": null,
            "Firstname": "[firstName]",
            "Gender_R": "",
            "Identification": [
                {
                    "Code": "[lastName]",
                    "Type": "Lastname_R",
                    "Name": null
                },
                {
                    "Code": "[firstName]",
                    "Type": "Firstname",
                    "Name": null
                },
                {
                    "Code": "[memberId]",
                    "Type": "Member ID",
                    "Name": null
                },
                {
                    "Code": "[groupNumber]",
                    "Type": "Group Number",
                    "Name": null
                },
                {
                    "Code": "DUKE UNIVERSITY",
                    "Type": "Group Name",
                    "Name": null
                }
            ],
            "Lastname_R": "[lastname]",
            "Middlename": "",
            "State": null,
            "Suffix": null,
            "Zip": null,
            "MilitaryPersonnelInfo": null,
            "FullName": "[fullname]"
        },
        "Dependent": {
            "DependentInfo": {
                "Address1": "[address]",
                "Address2": null,
                "City": "[city]",
                "CommunicationNumber": null,
                "Date": [
                    {
                        "Date": "01/01/2017",
                        "Type": "Plan Begin"
                    },
                    {
                        "Date": "05/08/2019",
                        "Type": "Service"
                    },
                    {
                        "Date": "01/01/2017",
                        "Type": "Eligibility Begin"
                    }
                ],
                "DOB_R": "[dob]",
                "Firstname": "[name]",
                "Gender_R": "",
                "Identification": [
                    {
                        "Code": "Spouse",
                        "Type": "Relationship",
                        "Name": null
                    },
                    {
                        "Code": "[number]",
                        "Type": "Plan Number",
                        "Name": null
                    }
                ],
                "Lastname_R": "[lastName]",
                "Middlename": null,
                "State": "",
                "Suffix": null,
                "Zip": "[zip]",
                "MilitaryPersonnelInfo": null,
                "FullName": "[FullName]"
            },
            "Relationship": "Spouse"
        }
    },
    "ServiceTypeDetailInfo": [
        {
            "ServiceTypeName": "Health Benefit Plan Coverage",
            "ServiceTypeSections": [
                {
                    "Label": "",
                    "ServiceParameters": [
                        {
                            "Key": "Family Active Coverage (OPEN ACCESS AETNA SELECT)",
                            "Value": null,
                            "Message": null,
                            "OtherInfo": [
                                {
                                    "Key": "Policy Type",
                                    "Value": "Exclusive Provider Organization",
                                    "Message": null,
                                    "OtherInfo": null
                                }
                            ]
                        },.............

The Easy Eligibility Summary call is intended to generate an Eligibility Summary Response in just one step. With EasyEligibilitySummary, simply pass your credentials (no need to generate a token) and the body parameters (specified below) to return an Eligibility Summary Response in just one step.

Key Value
Method POST
Header Description
Client-User-Name pVerify username
Client-Password pVerify password
Content-Type application/json
Body See below

EasyEligibilitySummary Fields

Field Type Description
payerCode String Payer Code
payerName String PayerName
Provider_LastName String Provider last name
Provider_NPI String Provider NPI
Patient_First String Patient First Name
Patient_DOB String Patient Date of Birth (in format MM-DD-YYYY)
Patient_Last String Patient Last Name
memberID String Member ID
Date_Of_Service String Date of Service (in format MM-DD-YYYY)
ServiceCodes String Service Codes
referenceId String Patient MRN or account Number
Location String Location is the practice location. Note by setting this, you will lock the patient to one location, so that users that login in via our portal who are not authorized to see that location will not see the patient.
PracticeType String Practice Type
IncludeTextResponse Boolean Boolean value to determine if text response should be included

EasyEligibilitySummary Response Fields

Key Type Description
RequestID Int Request ID Value
APIResponseCode String Response code value
APIResponseMessage String Value associated with response code
IsPayerBackOffice Boolean Boolean value to determine if it is a back office payer
PayerName String Name of Payer
VerificiationType String Type of eligibility verification
DOS String Date of Service in MM/DD/YYYY
ExceptionNotes String Notable exceptions returned
IsHMOPlan Boolean Determines if is HMOPlan
AdditionalInfo String Additional Info
Location String Location
ReferenceID String Reference ID
OtherPayerInfo String Other Payer Info
PlanCoverageSummary Object Summary of Plan coverage
PlanCoverageSummary.Status String Status of Plan
PlanCoverageSummary.EffectiveDate String Start date of plan coverage in MM/DD/YYYY format
PlanCoverageSummary.ExpiryDate String Expiration date of plan coverage
PlanCoverageSummary.PlanName String Name of plan
PlanCoverageSummary.PolicyType String Policy type for plan
PlanCoverageSummary.GroupNumber String Plan Group Number
PlanCoverageSummary.GroupName String Plan Group Name
PlanCoverageSummary.PlanNetworkId String Network Id of plan
PlanCoverageSummary.PlanNetworkName String Network Name of Plan
PlanCoverageSummary.SubscriberRelationship String Subscriber relationship
PlanCoverageSummary.PlanNumber String Plan Number
PlanCoverageSummary. HRAorHSALimitationsRemaining String Limitations Remaining
PCPAuthInfoSummary Object PCP Authorization Info Summary
PCPAuthInfoSummary.PrimaryCareProviderName String Primary Care Provider Name
PCPAuthInfoSummary. PrimaryCareProviderPhoneNumber String Provider Phone Number
PCPAuthInfoSummary.HBPCAuthorizationInfo String HBCP Authorization Info
PCPAuthInfoSummary. UtilizationManagementOrganizationName String Management Org Name
PCPAuthInfoSummary.CapitationFacilityName String Capitation Facility Name
HBPC_Deductible_OOP_Summary Object OOP Summary for HBPC Deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleInNet String Individual In Net Deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleOutNet String Individual Deductible out of Net
HBPC_Deductible_OOP_Summary. IndividualDeductibleRemainingInNet String Remaining in net deductible
HBPC_Deductible_OOP_Summary. IndividualDeductibleRemainingOutNet String Remaining out net deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleInNet String Family In Net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleOutNet String Family Out Net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleRemainingInNet String Remaining in net Deductible
HBPC_Deductible_OOP_Summary. FamilyDeductibleRemainingOutNet String Remaining out net deductible
HBPC_Deductible_OOP_Summary. IndividualOOP_InNet String Individual OOP In Net
HBPC_Deductible_OOP_Summary. IndividualOOP_OutNet String Individual OOP Out Net
HBPC_Deductible_OOP_Summary. IndividualOOPRemainingInNet String Individual OOP Remaining In net
HBPC_Deductible_OOP_Summary. IndividualOOPRemainingOutNet String Individual OOP Remaining Out Net
HBPC_Deductible_OOP_Summary. FamilyOOPInNet String Family OOP in Net
HBPC_Deductible_OOP_Summary. FamilyOOPOutNet String Family OOP out Net
HBPC_Deductible_OOP_Summary. FamilyOOPRemainingInNet String Family OOP Remaining in Net
HBPC_Deductible_OOP_Summary. FamilyOOPRemainingOutNet String Family OOP remaining out net
MedicareInfoSummary String Medicare Info Summary
PracticeTypeSummary Object Practice Type Summary
PracticeTypeSummary.CoPayInNet String In net copay
PracticeTypeSummary.CoInsInNet String In net coinsurance
PracticeTypeSummary.CoPayOutNet String Out of net copay
PracticeTypeSummary.CoInsOutNet String Out of net coinsurance
PracticeTypeSummary.AuthorizationInfo String Authorization Info
PracticeTypeSummary.TherapyVisitsLimitationsInNet String Therapy Visits Limitations in Net
PracticeTypeSummary.TherapyVisitsLimitationsOutNet String Therapy Visits limitations out of net
PracticeTypeSummary.TherapyVisitsRemainingInNet String Therapy visits remaining in net
PracticeTypeSummary.TherapyVisitsRemainingOutNet String Therapy visits remaining out of net
PracticeTypeSummary.TherapyAmountLimitationsInNet String Therapy Amount Limitations in net
PracticeTypeSummary.TherapyAmountLimitationsOutNet String Therapy Amount Limitations Out of Net
PracticeTypeSummary.TherapyAmountRemainingInNet String Therapy Amount Remaining in Net
PracticeTypeSummary.TherapyAmountRemainingOutNet String Therapy Amount Remaining out Net
PracticeTypeSummary. IndividualDeductibleInNet String Individual In Net Deductible
PracticeTypeSummary. IndividualDeductibleOutNet String Individual Deductible out of Net
PracticeTypeSummary. IndividualDeductibleRemainingInNet String Remaining in net deductible
PracticeTypeSummary. IndividualDeductibleRemainingOutNet String Remaining out net deductible
PracticeTypeSummary. FamilyDeductibleInNet String Family In Net Deductible
PracticeTypeSummary. FamilyDeductibleOutNet String Family Out Net Deductible
PracticeTypeSummary. FamilyDeductibleRemainingInNet String Remaining in net Deductible
PracticeTypeSummary. FamilyDeductibleRemainingOutNet String Remaining out net deductible
PracticeTypeSummary. IndividualOOP_InNet String Individual OOP In Net
PracticeTypeSummary. IndividualOOP_OutNet String Individual OOP Out Net
PracticeTypeSummary. IndividualOOPRemainingInNet String Individual OOP Remaining In net
PracticeTypeSummary. IndividualOOPRemainingOutNet String Individual OOP Remaining Out Net
PracticeTypeSummary. FamilyOOPInNet String Family OOP in Net
PracticeTypeSummary. FamilyOOPOutNet String Family OOP out Net
PracticeTypeSummary. FamilyOOPRemainingInNet String Family OOP Remaining in Net
PracticeTypeSummary. FamilyOOPRemainingOutNet String Family OOP remaining out net
DisclaimerMessage String Disclaimer
DemographicInfo Object Demographic Info on Subscriber and Dependent
DemographicInfo.Subscriber Object Demographic Info on Subscriber
DemographicInfo.Subscriber. Address1 String Line one address of subscriber
DemographicInfo.Subscriber. Address2 String Line two address of subscriber
DemographicInfo.Subscriber. City String Subscriber city location
DemographicInfo.Subscriber. CommunicationNumber String Communication Number for subscriber
DemographicInfo.Subscriber. Date String[] Array of dates showing when certain events began
DemographicInfo.Subscriber. Date.Date String Shows date in MM/DD/YYYY Format
DemographicInfo.Subscriber. Date.Type String Significance of Date Above
DemographicInfo.Subscriber. DOB_R String Date of Birth in MM/DD/YYYY
DemographicInfo.Subscriber. FirstName String Subscriber First Name
DemographicInfo.Subscriber. Gender_R String Subscriber Gender
DemographicInfo.Subscriber. Identification String[] Series of fields related to identification of subscriber
DemographicInfo.Subscriber. Identification.Code String Value associated with identification
DemographicInfo.Subscriber. Identification.Type String Key associated with Value above
DemographicInfo.Subscriber. Identification.Name String Name Associated with identification
DemographicInfo.Subscriber. LastName_R String Last Name of Subscriber
DemographicInfo.Subscriber. Middlename String Middle Name of Subscriber
DemographicInfo.Subscriber. State String State of residence for subscriber
DemographicInfo.Subscriber. Suffix String Subscriber suffix
DemographicInfo.Subscriber. Zip String Subscriber Zip Code
DemographicInfo.Subscriber. MilitaryPersonnelInfo String Military Personnel Info
DemographicInfo.Subscriber. FullName String Subscriber Full Name
DemographicInfo.Dependent Object Demographic Info on Dependent
DemographicInfo.Dependent. Address1 String Line one address of Dependent
DemographicInfo.Dependent. Address2 String Line two address of Dependent
DemographicInfo.Dependent. City String Dependent city location
DemographicInfo.Dependent. CommunicationNumber String Communication Number for Dependent
DemographicInfo.Dependent. Date String[] Array of dates showing when certain events began
DemographicInfo.Dependent. Date.Date String Shows date in MM/DD/YYYY Format
DemographicInfo.Dependent. Date.Type String Significance of Date Above
DemographicInfo.Dependent. DOB_R String Date of Birth in MM/DD/YYYY
DemographicInfo.Dependent. FirstName String Dependent First Name
DemographicInfo.Dependent. Gender_R String Dependent Gender
DemographicInfo.Dependent. Identification String[] Series of fields related to identification of Dependent
DemographicInfo.Dependent. Identification.Code String Value associated with identification
DemographicInfo.Dependent. Identification.Type String Key associated with Value above
DemographicInfo.Dependent. Identification.Name String Name Associated with identification
DemographicInfo.Dependent. LastName_R String Last Name of Dependent
DemographicInfo.Dependent. Middlename String Middle Name of Dependent
DemographicInfo.Dependent. State String State of residence for Dependent
DemographicInfo.Dependent. Suffix String Dependent suffix
DemographicInfo.Dependent. Zip String Dependent Zip Code
DemographicInfo.Dependent. MilitaryPersonnelInfo String Military Personnel Info
DemographicInfo.Dependent. FullName String Dependent Full Name
DemographicInfo.Relationship String Dependent RelationShip to Subscriber
ServiceTypeDetailInfo Object[] Details Relating to Service Type
ServiceTypeDetailInfo.ServiceTypeName String Name of Service Type
ServiceTypeDetailInfo.ServiceTypeSections Object[] Service Type Sections Information
ServiceTypeDetailInfo.ServiceTypeSections. Label String Identifier for Service Type Section
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters Object[] Service Parameters
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Key String Name for Service Type
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Value String Value of service Type
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.Message String Message
ServiceTypeDetailInfo.ServiceTypeSections. ServiceParameters.OtherInfo Object[] Contains additional Key, Value, Message and OtherInfo Fields if necessary
EligibilityResult String Full eligibility result of query

CancelTransaction

Cancel Transaction Sample Call: (POST) https://api.pverify.com/api/CancelTransaction


POST /api/CancelTransaction HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

Body:
{
    "transactionId":15049658
}
var client = new RestClient("https://api.pverify.com/api/CancelTransaction");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "XXX");
request.AddParameter("undefined", "{\r\n    \"payerCode\": \"[code]\",\r\n    \"provider_lastname\":\"[lastname]\", \r\n    \"provider_npi\": \"[npi]\",\r\n     \"memberID\": \"[ID]\",\r\n     \"patient_DOB\":\"[DOB]\",\r\n    \r\n     \"date_Of_Service\": \"08/08/2018\",\r\n     \"serviceCodes\":\"30\"\r\n    \r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
//Using OKHttp Client

import java.io.IOException;

import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;


public class CancelTransaction {
    OkHttpClient client = new OkHttpClient();

    MediaType mediaType = MediaType.parse("application/json");
    RequestBody body = RequestBody.create(mediaType, "{\r\n\t\"transactionId\":15049658\r\n}\r\n");
    private String cancel;
    private StringToJsonCancel json = new StringToJsonCancel();


public void setJson(String url, String token) throws IOException {
    Request request = new Request.Builder()
              .url(url)
              .post(body)
              .addHeader("content-type", "application/json")
              .addHeader("authorization", "Bearer " + token)
              .addHeader("Client-User-Name", "pverify_demo")
              .build();
    try(Response response = client.newCall(request).execute()){
        cancel = response.body().string();
        json.convert(cancel);


    }

}
}
<?php
  "https://api.pverify.com/API/CancelTransaction",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n\t\"transactionId\":15049658\r\n}\r\n",
  CURLOPT_HTTPHEADER => array(
    "authorization: Bearer XXXX",
    "Client-User-Name: XXX",
    "content-type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl -X POST \
  https://api.pverify.com/API/CancelTransaction \
  -H 'authorization: Bearer eTPLo2g3Ejr6adjYu...' \
  -H 'Client-User-Name: XXX' \
  -H 'content-type: application/json' \
  -d '{
    "transactionId":15049658
}'

This POST call will cancel a transaction. It is intended for use with back office transactions, to cancel a transaction that is not able to be completed in time for the patients visit.

CancelTransaction Request

Key Value
URL https://api.pverify.com/API/CancelTransaction
Method POST
Headers Description
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username
Content-Type application/json
Body Description
transactionId Transaction ID for transaction you wish to cancel

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

GetPayerStatus

Get Payer Status Sample Call: (GET) http://api.pverify.com/api/GetPayerStatus


GET /api/GetPayerStatus HTTP/1.1
Host: api.pverify.com

URL Params: 
payerStatus: "[payerstatus]"

Headers:
None

Body:
None


var client = new RestClient("http://api.pverify.com/api/GetPayerStatus");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
//Using OKHttp Client

OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("http://api.pverify.com/api/GetPayerStatus")
  .get()
  .build();

Response response = client.newCall(request).execute();
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "http://api.pverify.com/api/GetPayerStatus",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(

  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --request GET \
  --url http://api.pverify.com/api/GetPayerStatus \

Get Payer Status Sample Response

[
    {
        "payerName": "AARP (A United HealthCare Insurance Company)",
        "payer_Code": "[code]",
        "payerStatus": "Payer active"
    },
    {
        "payerName": "Absolute Total Care",
        "payer_Code": "[code]",
        "payerStatus": "Payer active"
    },
    {
        "payerName": "Access Medicare",
        "payer_Code": "[code]",
        "payerStatus": "Payer ok"
    },
    {
        "payerName": "ACS Benefit Services",
        "payer_Code": "[code]",
        "payerStatus": "Payer ok"
    },
    {...

This GET call will return the status of all pVerify payers. You can call this endpoint with an optional parameter of payerStatus and it will return payers from that status. By default the endpoint returns all payers and statuses. This API call does not require authentication.

GetPayerStatus Request

Key Value
URL http://api.pverify.com/api/GetPayerStatus
Method GET
URL Params Description
GetPayerStatus Allows you to return specific payer status from response
Headers None (this API call does not require authentication)
Body None

URL Parameters Description

Name Description
Payer ok We show this payer as active but do not have recent data from it.
Payer active We show this payer as active and we have recent data from it.
Payer inactive This is marked as inactive in our system.
Payer Down This is marked as active but has within the last 1 hour returned data showing that it down

GetPayerStatus Response

Key Value
payerName Name of payer
payer_Code Payer code
payerStatus Payer Status (see URL parameters description)

Same Or Similar API Endpoints

pVerify has two RESTful API end points to give Same or Similar HCPCS(L code) Status information,

This workflow is:

1) Get Token via Token call,

2) Call SameOrSimilarInquiry and pass the token along with demographic information.

3) Call GetSameOrSimilarResponse/{requestId} later to get the results and pass the token.

Note : Same Token can be used in subsequent inquiries.

The JSON Viewer URL

Credentials To use these calls, you will need to set up an account and be given a username & password. Please contact the pVerify team for this information.

Run Same or Similar Inquiry

SameOrSimilarInquiry Sample Call: (POST) https://api.pverify.com/API/SameOrSimilarInquiry

POST API/SameOrSimilarInquiry HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

Body:
{
    "memberId": "xxx",
    "patientFirstName": "xxx",
    "patientLastName": "xxx",
    "patientDOB": "01/01/1900",
    "patientStateCode": "NJ",
    "hcpcsCodes": "L3960",

    "dosStart": "03/19/2019",
    "dosEnd": "03/19/2019",
    "requestSource": "API",
    "Location": "location Name"
}
var client = new RestClient("https://api.pverify.com/API/SameOrSimilarInquiry");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/Json");
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
request.AddParameter("undefined", "{\n    \"memberId\": \"xxx\",\n    \"patientFirstName\": \"xxx\",\n    \"patientLastName\": \"xxx\",\n    \"patientDOB\": \"01/01/1900\",\n    \"patientStateCode\": \"NJ\",\n    \"hcpcsCodes\": \"L3960\",\n\n    \"dosStart\": \"03/19/2019\",\n    \"dosEnd\": \"03/19/2019\",\n    \"requestSource\": \"API\",\n    \"location\": \"location Name\"\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
//Using OKHttp Client

OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/Json");
RequestBody body = RequestBody.create(mediaType, "{\n    \"memberId\": \"xxx\",\n    \"patientFirstName\": \"xxx\",\n    \"patientLastName\": \"xxx\",\n    \"patientDOB\": \"01/01/1900\",\n    \"patientStateCode\": \"NJ\",\n    \"hcpcsCodes\": \"L3960\",\n\n    \"dosStart\": \"03/19/2019\",\n    \"dosEnd\": \"03/19/2019\",\n    \"requestSource\": \"API\",\n    \"location\": \"location Name\"\n}");
Request request = new Request.Builder()
  .url("https://api.pverify.com/API/SameOrSimilarInquiry")
  .post(body)
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Content-Type", "application/Json")
  .build();

Response response = client.newCall(request).execute();
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/SameOrSimilarInquiry",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\n    \"memberId\": \"xxx\",\n    \"patientFirstName\": \"xxx\",\n    \"patientLastName\": \"xxx\",\n    \"patientDOB\": \"01/01/1900\",\n    \"patientStateCode\": \"NJ\",\n    \"hcpcsCodes\": \"L3960\",\n\n    \"dosStart\": \"03/19/2019\",\n    \"dosEnd\": \"03/19/2019\",\n    \"requestSource\": \"API\",\n    \"location\": \"location Name\"\n}",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer XXX",
    "Client-User-Name: XXX",
    "Content-Type: application/Json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --request POST \
  --url https://api.pverify.com/API/SameOrSimilarInquiry \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-Type: application/Json' \
  --data '{\n    "memberId": "xxx",\n    "patientFirstName": "xxx",\n    "patientLastName": "xxx",\n    "patientDOB": "01/01/1900",\n    "patientStateCode": "NJ",\n    "hcpcsCodes": "L3960",\n\n    "dosStart": "03/19/2019",\n    "dosEnd": "03/19/2019",\n    "requestSource": "API",\n    "location": "location Name"\n}'

Same or Similar Inquiry Data Parameters


{
    "memberId": "xxx",
    "patientFirstName": "xxx",
    "patientLastName": "xxx",
    "patientDOB": "01/01/1900",
    "patientStateCode": "NJ",
    "hcpcsCodes": "L3960",

    "dosStart": "03/19/2019",
    "dosEnd": "03/19/2019",
    "requestSource": "API",
    "location": "location Name"
}
Key Value
URL https://api.pverify.com/API/SameOrSimilarInquiry
Method POST
Headers Description
Content-Type application/json
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username
Body Description
Data Parameters See Right Panel

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

SameOrSimilarInquiry Request fields

Property Name Data Type Usage Description
memberId String Required Patient's member ID (HICN/MBI).
patient.FirstName String Required Patient First Name.
patientLastName String Required Patient Last Name.
patientDOB String Required Patient DOB (Expected format: MM/dd/YYYY ie 01/01/2000).
patientStateCode String Required Patient State Code ex: AL.
hcpcsCodes String Required HCPCS -L codes only. Multiple codes can be sent by separating with a comma (,).
dosStart String Optional Date of service start date (Expected format: MM/dd/YYYY ie 01/01/2000). Default value is 5 years before date to current date.
dosEnd String Optional Date of service end date (Expected format: MM/dd/YYYY ie 01/01/2000). Default value is current date (Today's date).
location String Optional Location name and the default is client user's location or client's location.
requestSource String Optional The request source (ie: API).

SameOrSimilarInquiry Response


{
    "requestId": [id],
    "isDataError": false,
    "errorMessage": null,
    "claims": null,
    "message": null,
    "status": "Pending",
    "apiResponseCode": 3,
    "apiResponseMessage": "Inquiry has been received and assigned Request Id is [id].\r\nExpected Response Time : 1 mins.\r\nPlease search for the results using Request Id in the search page after the expected response time is over. "
}

Response JSON Processing Steps

Step 1: Check the value of the API Response Code property. If the API Response Code is 3 (Pending) then the request is pending and the Request ID can be extracted.

Step 2: Save the data

Note: The Same or Similar API always returns API response code as 3 (pending)

Get Same or Similar Response Using Unique Request ID

GetSameOrSimilarResponse Sample Call: (GET) https://api.pverify.com/API/GetSameOrSimilarResponse/{requestId}

GET API/GetSameOrSimilarResponse/{requestId} HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

Body:
None
var client = new RestClient("https://api.pverify.com/API/GetSameOrSimilarResponse/{requestId}");
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "XXX");
request.AddHeader("Authorization", "Bearer XXX");
IRestResponse response = client.Execute(request);
//Using OKHttp Client

OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.pverify.com/API/GetSameOrSimilarResponse/{requestId}")
  .get()
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Content-Type", "application/json")
  .build();

Response response = client.newCall(request).execute();
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/GetSameOrSimilarResponse/{requestId}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer XXX",
    "Client-User-Name: XXX",
    "Content-Type: application/json"

  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --request GET \
  --url 'https://api.pverify.com/API/GetSameOrSimilarResponse/{requestId}' \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-Type: application/json' 

GetSameOrSimilarResponse Sample Response

{
    "RequestId": [id],
    "Processed": true,
    "IsDataError": false,
    "ErrorMessage": null,
    "ClaimsCount": 13,
    "Claims": [
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/10/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 4,
            "CategoryName": "Wrist Brace"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/07/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 11,
            "CategoryName": "Foot Orthotics(Repositioning) "
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/07/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 10,
            "CategoryName": "Others"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/07/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 10,
            "CategoryName": "Others"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/07/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 6,
            "CategoryName": "Ankle/Knee/Foot Brace"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/02/2019",
            "DOSEnd": null,
            "Unit": "2",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 4,
            "CategoryName": "Wrist Brace"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 10,
            "CategoryName": "Others"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 10,
            "CategoryName": "Others"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 1,
            "CategoryName": "Knee Braces"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 1,
            "CategoryName": "Knee Braces"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 2,
            "CategoryName": "Back Braces"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "01/10/2019",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 3,
            "CategoryName": "Shoulder Brace"
        },
        {
            "Id": 0,
            "HCPCS": "[hcpcs]",
            "DOSStart": "12/28/2018",
            "DOSEnd": null,
            "Unit": "1",
            "SupplierName": "[supplier]",
            "Phone": "[phone]",
            "Status": "Allowed",
            "Message": null,
            "SameOrSimilarRequestId": [id],
            "CreatedOn": "0001-01-01T00:00:00",
            "CategoryId": 3,
            "CategoryName": "Shoulder Brace"
        }
    ],
    "Message": null,
    "Status": "Processed",
    "APIResponseCode": 0,
    "APIResponseMessage": "Processed"
}

This call is used to get the transaction result later using a unique request ID.

Note: We purge this data after 90 days

Key Value
URL https://api.pverify.com/API/GetSameOrSimilarResponse/125
Method GET
Headers Description
Content-Type application/json
Authorization Authorization token from above preceded by the String "Bearer"
Client-User-Name* Your pVerify username

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

Notes 1. Always check for apiResponseCode property value before processing 2. If APIResponseCode is zero then look for ErrorMessage and Claims to process response

A successful GetSameOrSimilarResponse will have the same format as the SameOrSimilarInquiry response.

API Response Codes

APIResponseCode Description
0 Processed
1 Rejected
2 NoFunds (Insufficient Account Balance)
3 Pending (Pending need to get response later)
4 InvalidRequest (Required Data Missing)
5 InvalidFormat (data fields / data format is wrong)
6 LocationError (Location is not configured)

Field Descriptions

Same or Similar Requests

Property Name Data Type Usage Description
memberId String Required Patient's member ID (HICN/MBI).
patient.FirstName String Required Patient First Name.
patientLastName String Required Patient Last Name.
patientDOB String Required Patient DOB (Expected format: MM/dd/YYYY ie 01/01/2000).
patientStateCode String Required Patient State Code ex: AL.
hcpcsCodes String Required HCPCS -L codes only. Multiple codes can be sent by separating with a comma (,).
dosStart String Optional Date of service start date (Expected format: MM/dd/YYYY ie 01/01/2000). Default value is 5 years before date to current date.
dosEnd String Optional Date of service end date (Expected format: MM/dd/YYYY ie 01/01/2000). Default value is current date (Today's date).
location String Optional Location name and the default is client user's location or client's location.
requestSource String Optional The request source (ie: API).

Same or Similar Response Details

Object Types in Response



public class ResponseBase
    {   
        public int APIResponseCode { get; set; }        
        public string APIResponseMessage { get; set; }      
    }   
public  class SameOrSimilarResponse :ResponseBase
    {           
        public long RequestId { get; set; }             
        public bool IsDataError { get; set; }              
        public string ErrorMessage { get; set; }                
        public List<Claim> Claims { get; set; }             
        public string Message { get; set; }            
        public string Status { get; set; }      
    }   
public class Claim
   {    
       public string DOSEnd { get; set; }            
       public string DOSStart { get; set; }         
       public string HCPCS { get; set; }             
       public string Message { get; set; }           
       public string Phone { get; set; }            
       public string Status { get; set; }           
       public string SupplierName { get; set; }         
       public string Unit { get; set; }
    }   
Property Name Data Type Description
RequestId long Same or Similar Request ID.
apiResponseCode int API transaction response code. Please see apiResponseCodes section.
apiResponseMessage String API transaction response message.
isDataError boolean True - when invalid patient details (Invalid HICN/MBI or Invalid DOB); False - for all valid requests.
Claims List Contains claim status info.
Message String Contains messages other than error messages (No claims found).
Status String Status of transaction.
Claim.HCPCS String Contains HCPCS -L code.
Claim.Status String Contains Claim & Code status âAllowed ,Denied or No Claims. For Invalid data request it is Error.
Claim.DOSStart String Claim & Code Date of service start date. It is empty for Error or for No Claims. (Expected format: MM/dd/YYYY ie 01/01/2000)
Claim.DOSEnd String Claim & Code Date of service end date. It is empty for Jurisdiction A and D inquiries. It is empty for Error or for No Claims. (Expected format: MM/dd/YYYY ie 01/01/2000)
Claim.Unit String No of units.
Claim.SupplierName String Contains supplier name for all allowed or denied requests. Empty for no claims & error.
Claim.phone String Contains supplier phone number for all allowed or denied. Empty for no claims & error.
Claim.Message String Contains notes or error message. Ex: No claims found. Or invalid HICN or DOB

Claim Status API Endpoints

pVerify has several RESTful APIs to give Claim Status information, given subscriber or dependent It would be a two step work flow.

ClaimStatus payer work flow

1) Generate Token

2) Call ClaimStatusInquiry to submit a request to our queue to get the Claim Status

In order to run a Claim Status call, it is first necessary to generate a token using the authorization call

ClaimStatusInquiry

ClaimStatusInquiry Sample Call: (POST) https://api.pverify.com/API/ClaimStatusInquiry/

GET API/ClaimStatusInquiry/ HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

Body:
{
    "payerCode": "code",   
    "ProviderLastName": "lastname",
    "ProviderNPI": "npi", 
    "ProviderFederalTaxId": "",
    "payerClaimNumber": "",
    "chargeAmount": 732.87,
    "serviceStartDate": "MM/DD/YYYY",
    "serviceEndDate": "MM/DD/YYYY",
    "subscriber": {
        "FirstName": "",
        "lastName": "lastname",
        "dob": "MM/DD/YYYY",        
        "memberID": "memberID"       
    },
    "isPatientDependent": false
}
var client = new RestClient("https://api.pverify.com/API/ClaimStatusInquiry");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Client-User-Name", "username");
request.AddHeader("Authorization", "Bearer HLuroc8JQgxvURtcRWGzXfZvYT0BXL56LC-...");
request.AddParameter("undefined", "{\r\n    \"payerCode\": \"code\",   \r\n    \"ProviderLastName\": \"lastname\",\r\n    \"ProviderNPI\": \"npi\", \r\n    \"ProviderFederalTaxId\": \"\",\r\n    \"payerClaimNumber\": \"\",\r\n    \"chargeAmount\": 732.87,\r\n    \"serviceStartDate\": \"MM/DD/YYYY\",\r\n    \"serviceEndDate\": \"MM/DD/YYYY\",\r\n    \"subscriber\": {\r\n        \"FirstName\": \"\",\r\n        \"lastName\": \"lastname\",\r\n        \"dob\": \"MM/DD/YYYY\",        \r\n        \"memberID\": \"memberID\"       \r\n    },\r\n    \"isPatientDependent\": false\r\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
OkHttpClient client = new OkHttpClient();

MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\r\n    \"payerCode\": \"code\",   \r\n    \"ProviderLastName\": \"lastname\",\r\n    \"ProviderNPI\": \"npi\", \r\n    \"ProviderFederalTaxId\": \"\",\r\n    \"payerClaimNumber\": \"\",\r\n    \"chargeAmount\": 732.87,\r\n    \"serviceStartDate\": \"MM/DD/YYYY\",\r\n    \"serviceEndDate\": \"MM/DD/YYYY\",\r\n    \"subscriber\": {\r\n        \"FirstName\": \"\",\r\n        \"lastName\": \"lastname\",\r\n        \"dob\": \"MM/DD/YYYY\",        \r\n        \"memberID\": \"memberID\"       \r\n    },\r\n    \"isPatientDependent\": false\r\n}");
Request request = new Request.Builder()
  .url("https://api.pverify.com/API/ClaimStatusInquiry")
  .post(body)
  .addHeader("Authorization", "Bearer HLuroc8JQgxvURtcRWGzXfZvYT0BXL56LC-...")
  .addHeader("Client-User-Name", "username")
  .addHeader("Content-Type", "application/json")
  .build();

Response response = client.newCall(request).execute();
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/ClaimStatusInquiry",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "{\r\n    \"payerCode\": \"code\",   \r\n    \"ProviderLastName\": \"lastname\",\r\n    \"ProviderNPI\": \"npi\", \r\n    \"ProviderFederalTaxId\": \"\",\r\n    \"payerClaimNumber\": \"\",\r\n    \"chargeAmount\": 732.87,\r\n    \"serviceStartDate\": \"MM/DD/YYYY\",\r\n    \"serviceEndDate\": \"MM/DD/YYYY\",\r\n    \"subscriber\": {\r\n        \"FirstName\": \"\",\r\n        \"lastName\": \"lastname\",\r\n        \"dob\": \"MM/DD/YYYY\",        \r\n        \"memberID\": \"memberID\"       \r\n    },\r\n    \"isPatientDependent\": false\r\n}",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer HLuroc8JQgxvURtcRWGzXfZvYT0BXL56LC-...",
    "Client-User-Name: username",
    "Content-Type: application/json"

  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --request POST \
  --url https://api.pverify.com/API/ClaimStatusInquiry \
  --header 'Authorization: Bearer HLuroc8JQgxvURtcRWGzXfZvYT0BXL56LC-...' \
  --header 'Client-User-Name: username' \
  --header 'Content-Type: application/json' \
  --data '{\r\n    "payerCode": "code",   \r\n    "ProviderLastName": "lastname",\r\n    "ProviderNPI": "npi", \r\n    "ProviderFederalTaxId": "",\r\n    "payerClaimNumber": "",\r\n    "chargeAmount": 732.87,\r\n    "serviceStartDate": "MM/DD/YYYY",\r\n    "serviceEndDate": "MM/DD/YYYY",\r\n    "subscriber": {\r\n        "FirstName": "",\r\n        "lastName": "lastname",\r\n        "dob": "MM/DD/YYYY",        \r\n        "memberID": "memberID"       \r\n    },\r\n    "isPatientDependent": false\r\n}'

ClaimStatusInquiry Request Object for Self

{
    "payerCode": "00001",   
    "ProviderLastName": "last name ",
    "ProviderNPI": "1234xxxxxxx",  
    "payerClaimNumber": "Axxx23243xxxxxxxx",
    "chargeAmount": 50,
    "serviceStartDate": "MM/dd/yyyy",
    "serviceEndDate": " MM/dd/yyyy ",
    "subscriber": {
        "FirstName": "[first name]",
        "lastName": "last name XXXXXX",
        "dob": "MM/dd/yyyy",        
        "memberID": "AxCXXXXXXXXXXXXXXX"       
    },
    "isPatientDependent": false
}

ClaimStatusInquiry Request Object for Dependents

{
    "payerCode": "00001",   
    "ProviderLastName": "last name ",
    "ProviderNPI": "1234xxxxxxx",  
    "payerClaimNumber": "Axxx23243xxxxxxxx",
    "chargeAmount": 50,
    "serviceStartDate": "MM/dd/yyyy",
    "serviceEndDate": " MM/dd/yyyy ",
    "subscriber": {
        "FirstName": "[firstname]",
        "lastName": "last name XXXXXX",
        "memberID": "AxCXXXXXXXXXXXXXXX"       
    },
    "isPatientDependent": true,
   "dependent":{
        "FirstName": "[first name]",
        "lastName": "last name XXXXXX",
        "dob": "MM/dd/yyyy"
 }
}

ClaimStatusInquiry Sample Response

{
    "requestId": [id],
    "payerClaimNo": "[claimNo]",
    "categoryCode": "F2",
    "category": "Finalized/Denial-The claim/line has been denied.",
    "claimStatusReasonCode": "21",
    "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
    "payer": {
        "info": {
            "type": "Payer",
            "name": "AETNA",
            "qualifier": "Payor Identification",
            "id": "AETNA",
            "firstName": null,
            "middleName": null
        },
        "contactInfo": {
            "name": "AETNA",
            "qualifier": "Telephone",
            "number": "[phone]"
        }
    },
    "providerInfo": {
        "type": "Provider",
        "name": null,
        "qualifier": "National Provider Identifier",
        "id": "[id]",
        "firstName": null,
        "middleName": null
    },
    "subscriber": {
        "type": "Subscriber",
        "name": "CULBERTSON",
        "qualifier": "Member Identification Number",
        "id": "[id]",
        "firstName": null,
        "middleName": null
    },
    "dependent": null,
    "claimStatuses": [
        {
            "otherIndentificationInfo": [
                {
                    "qualifier": "Payor;s Claim Number",
                    "id": "180719E3184902",
                    "description": null
                },
                {
                    "qualifier": "Billing Type",
                    "id": "111",
                    "description": null
                },
                {
                    "qualifier": "Patient Account Number",
                    "id": "2118191073500",
                    "description": null
                }
            ],
            "statusInfo": {
                "statuses": [
                    {
                        "categoryCode": "F2",
                        "category": "Finalized/Denial-The claim/line has been denied.",
                        "statusCode": "21",
                        "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                        "type": null
                    },
                    {
                        "categoryCode": "F2",
                        "category": "Finalized/Denial-The claim/line has been denied.",
                        "statusCode": "279",
                        "claimStatus": "Claim/service must be itemized",
                        "type": null
                    }
                ],
                "effectiveDate": "03/20/2019",
                "chrageAmount": 17235.1,
                "paymentAmount": 0,
                "adjudicationFinalizedDate": "07/20/2018",
                "remittanceDate": "07/26/2018",
                "checkNumber": "160723180001679"
            },
            "serviceLines": [
                {
                    "lineItemInfo": {
                        "procedureCode": "111",
                        "lineCharge": 8740,
                        "linePayment": 0,
                        "unit": 4
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "260",
                        "lineCharge": 559,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "450",
                        "lineCharge": 2188,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "250",
                        "lineCharge": 2069.05,
                        "linePayment": 0,
                        "unit": 147
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "258",
                        "lineCharge": 193.05,
                        "linePayment": 0,
                        "unit": 3
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "300",
                        "lineCharge": 15,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "301",
                        "lineCharge": 535,
                        "linePayment": 0,
                        "unit": 11
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "305",
                        "lineCharge": 168,
                        "linePayment": 0,
                        "unit": 6
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "306",
                        "lineCharge": 2126,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "307",
                        "lineCharge": 12,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "402",
                        "lineCharge": 630,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "21",
                                "claimStatus": "Missing or invalid information. Note: At least one other status code is required to identify the missing or invalid information.",
                                "type": null
                            },
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "279",
                                "claimStatus": "Claim/service must be itemized",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/11/2018 - 07/15/2018"
                        }
                    ]
                }
            ],
            "dates": [
                {
                    "qualifier": "Service",
                    "value": "07/11/2018 - 07/15/2018"
                }
            ]
        },
        {
            "otherIndentificationInfo": [
                {
                    "qualifier": "Payor;s Claim Number",
                    "id": "180719E3184901",
                    "description": null
                },
                {
                    "qualifier": "Billing Type",
                    "id": "111",
                    "description": null
                },
                {
                    "qualifier": "Patient Account Number",
                    "id": "2118191073500",
                    "description": null
                }
            ],
            "statusInfo": {
                "statuses": [
                    {
                        "categoryCode": "F2",
                        "category": "Finalized/Denial-The claim/line has been denied.",
                        "statusCode": "1",
                        "claimStatus": "For more detailed information, see remittance advice.",
                        "type": null
                    }
                ],
                "effectiveDate": "03/20/2019",
                "chrageAmount": 17235.1,
                "paymentAmount": 0,
                "adjudicationFinalizedDate": "07/20/2018",
                "remittanceDate": null,
                "checkNumber": null
            },
            "serviceLines": [
                {
                    "lineItemInfo": {
                        "procedureCode": "111",
                        "lineCharge": 8740,
                        "linePayment": 0,
                        "unit": 4
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/14/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "260",
                        "lineCharge": 559,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "450",
                        "lineCharge": 2188,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "250",
                        "lineCharge": 2069.05,
                        "linePayment": 0,
                        "unit": 147
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "258",
                        "lineCharge": 193.05,
                        "linePayment": 0,
                        "unit": 3
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "300",
                        "lineCharge": 15,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "301",
                        "lineCharge": 535,
                        "linePayment": 0,
                        "unit": 11
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "305",
                        "lineCharge": 168,
                        "linePayment": 0,
                        "unit": 6
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "306",
                        "lineCharge": 2126,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "307",
                        "lineCharge": 12,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                },
                {
                    "lineItemInfo": {
                        "procedureCode": "402",
                        "lineCharge": 630,
                        "linePayment": 0,
                        "unit": 1
                    },
                    "statusInfo": {
                        "statuses": [
                            {
                                "categoryCode": "F2",
                                "category": "Finalized/Denial-The claim/line has been denied.",
                                "statusCode": "1",
                                "claimStatus": "For more detailed information, see remittance advice.",
                                "type": null
                            }
                        ],
                        "effectiveDate": "03/20/2019"
                    },
                    "otherIndentificationInfo": [],
                    "dates": [
                        {
                            "qualifier": "Service",
                            "value": "07/10/2018 - 07/15/2018"
                        }
                    ]
                }
            ],
            "dates": [
                {
                    "qualifier": "Service",
                    "value": "07/10/2018 - 07/15/2018"
                }
            ]
        }
    ],
    "fileControlNumber": null,
    "apiResponseCode": 0,
    "apiResponseMessage": "Processed"
}

The ClaimStatusInquiry is the second step of the workflow for obtaining Claim status Information through pVerify. As demonstrated below, the ClaimStatusInquiry call takes in subscriber or dependent demographic information, along with the authorization token, and returns the claim status among other information. To use this or any other method, you must first generate a token via the Token endpoint (see above Token method).

Field Description
URL /API/ClaimStatusInquiry/
Method POST
Headers Description
Content-Type application/json
Authorization Bearer XXX
Client-User-Name* username provided by pVerify
Body See right

*Note: Either the Client-API-Id or Client-User-Name header is required. Header keys are case sensitive.

Note: The ClaimStatusInquiry for dependents is the same for self. However, it uses different data parameters.

ClaimStatusInquiry Request Fields for Self

The ClaimStatusInquiry request for self includes the following fields:

Property Name Data Type Required Description
payerCode String Yes pVerify payer Code (i.e. Aetna 00001)
ProviderLastName String No Provider Last Name
ProviderNPI String Conditional 10-digit NPI value (Not required when ProviderFederalTaxId is available)
ProviderFederalTaxId String Conditional 9 - digit Federal Tax Id (EIN) (not required when NPI is available)
payerClaimNumber String Conditional Payer claim number
chargeAmount String Yes Charge Amount
serviceStartDate String Yes Start date of service (Expected format: MM/dd/YYYY ie 01/01/2000)
serviceEndDate String Yes End date of service (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber Object Yes Subscriber demographic information
subscriber.FirstName String Conditional Subscriber first name
subscriber.lastName String Conditional Subscriber last name
subscriber.dob String Conditional Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber.memberID String Conditional Member ID of subscriber
isPatientDependent boolean No Determines if the patient is dependent

ClaimStatusInquiry Request Fields for Dependents

The ClaimStatusInquiry request for dependents includes the following fields.

Property Name Data Type Required Description
payerCode String Yes pVerify payer Code (i.e. Aetna 00001)
ProviderLastName String No Provider Last Name
ProviderNPI String Conditional 10-digit NPI value (Not required when ProviderFederalTaxId is available)
ProviderFederalTaxId String Conditional 9 - digit Federal Tax Id (EIN) (not required when NPI is available)
payerClaimNumber String Conditional Payer claim number
chargeAmount String Yes Charge Amount
serviceStartDate String Yes Start date of service (Expected format: MM/dd/YYYY ie 01/01/2000)
serviceEndDate String Yes End date of service (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber Object Yes Subscriber demographic information
subscriber.FirstName String Conditional Subscriber first name
subscriber.lastName String Conditional Subscriber last name
subscriber.dob String Conditional Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
subscriber.memberID String Conditional Member ID of subscriber
isPatientDependent boolean No Determines if the patient is dependent
dependent Object Conditional Dependent demographic information
dependent.FirstName String Conditional Dependent first name
dependent.lastName String Conditional Dependent last name
dependent.dob String No Dependent Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)

ClaimStatusInquiry Response Fields

The ClaimStatusInquiry response includes the following fields

Property Name Data Type Description
RequestID Long Claim Status Request ID
apiResponseCode int API transaction response code. Please see apiResponseCode table
apiResponseMessage String API transaction response message
payerClaimNo String Payer Claim Number (if returned in EDI 277)
categoryCode String Category code of claim status
category String Category of claim status
claimStatusReasonCode String Claim Status Code
claimStatus String Claim status text
payer Payer Contains payer info
providerInfo Info Contains provider info
subscriber Info Contains Subscriber info
dependent Info Contains dependent info
ClaimStatuses List Contains Claim Status Info
ClaimStatuses.serviceLine List Contains Claim Service line item info, ie: Code specific info

The API Response Codes and there description are shown below.

APIResponseCode Description
0 Processed
1 Rejected
2 NoFunds (insufficient account balance)
3 InvalidRequest (Required data missing)
4 InvalidFormat (data format or data fields are wrong)
5 InvalidPayer (Payer does not support Claim Status electronically / inactive)
6 LocationError (Location is not configured)

GetClaimStatusResponse

GetClaimStatusResponse Sample Call: (GET) https://api.pverify.com/API/GetClaimStatusResponse/{requestId}

GET /API/GetClaimStatusResponse/{requestId} HTTP/1.1
Host: api.pverify.com

Headers:
Authorization: "Bearer nkkN3lW4...."
Client-User-Name: "[username]"
Content-Type: "application/json"

URL Parameters: Request ID

Body:
None
var client = new RestClient("https://api.pverify.com/API/GetClaimStatusResponse/{requestId}");
var request = new RestRequest(Method.GET);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Authorization", "Bearer XXX");
request.AddHeader("Client-User-Name", "XXX");
IRestResponse response = client.Execute(request);
//Using OKHttp Client

OkHttpClient client = new OkHttpClient();

Request request = new Request.Builder()
  .url("https://api.pverify.com/API/GetClaimStatusResponse/{requestId}")
  .get()
  .addHeader("Client-User-Name", "XXX")
  .addHeader("Authorization", "Bearer XXX")
  .addHeader("Content-Type", "application/json")
  .build();

Response response = client.newCall(request).execute();
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://api.pverify.com/API/GetClaimStatusResponse/{requestId}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_POSTFIELDS => "",
  CURLOPT_HTTPHEADER => array(
    "Authorization: Bearer XXX",
    "Client-User-Name: XXX",
    "Content-Type: application/json",
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
curl --request GET \
  --url 'https://api.pverify.com/API/GetClaimStatusResponse/{requestId}' \
  --header 'Authorization: Bearer XXX' \
  --header 'Client-User-Name: XXX' \
  --header 'Content-Type: application/json' \

This GET method is used to obtain the transaction result later using a unique request ID. Note: the data is deleted after 90 days.

Field Description
URL /API/GetClaimStatusResponse/{requestId}
Method GET
Headers Description
Authorization Bearer XXX
Client-User-Name Username provided through pVerify
Content-Type application/json
URL Parameters Unique Request id
Data Parameters None

A successful GetClaimStatusResponse call will have the same format as the ClaimStatusInquiry response (above).

pVerify SOAP Service

pVerify’s Real-time Exchange System facilitates the secure exchange of healthcare Eligibility and related transactions, supporting one-to-one real-time transactions.

One-to-one real-time transactions require customers to post a request, via WCF to a designated URL address. Once a request is received by the Service an immediate response is sent for each request posted.

URL for the Production Interactive Services endpoint URL for the Production Interactive Services WSDL location

Below are the endpoints made available through pVerify web services:

Service Description Independent Method (Does not require a unique ID)
GetEligibilityBenefits Returns payer info and service type No
GetEligibilityReport Returns Eligibility report for certain service name used No
GetEligibilitySummaryFULL Returns demographics & payer info for ALL services No
GetParsedEligibilityPlus Returns demographic info and plan information as well as eligibility status No
GetPremiumBenefits Given ID, password and UniqueID, returns benefit information No
GetServiceNames Returns service name result given credentials No
RunInquiry Returns inquiry result Yes
VerifyEligibility Given subscriber info (name, member ID, etc), will return UniqueID used for dependent calls Yes
VerifyEligibilityWithClientPayerCode Given subscriber info (name, member ID, etc), will return UniqueID used for dependent calls Yes

Security and Authorization

Note: The security and authorization for the SOAP API is different from pVerify's rest API.

pVerify requires client authentication and authorization prior to allowing the request being processed. Authentication is a means used to verify your identity as a legitimate trading partner to pVerify. Authorization refers to those actions you are permitted to perform once you are authenticated.

pVerify allows access to the Real-time Exchange System through the use of a username and password. These must be requested from pVerify and are sent to you through a secure email system.

To authenticate with the pVerify system, use the provided username/password combination within the request within the XML tabs and

GetEligibilityBenefits

GetEligibilityBenefits Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetEligibilityBenefits"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilityBenefits xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </GetEligibilityBenefits>
  </soap:Body>
</soap:Envelope>

GetEligibilityBenefits Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilityBenefitsResponse xmlns="https://pverify.com/">
      <GetEligibilityBenefitsResult>
        <UniqueID>int</UniqueID>
        <Demographics>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Gender>string</Gender>
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Subscriber>
          <Dependent>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Relationship>string</Relationship>
            <Gender>string</Gender>
            <Subscriber xsi:nil="true" />
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Dependent>
          <ErrorDescription>string</ErrorDescription>
        </Demographics>
        <PrimaryPayers>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
        </PrimaryPayers>
        <Services>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
        </Services>
        <PverifyPayerID>string</PverifyPayerID>
        <PayerName>string</PayerName>
        <TransactionStatus>string</TransactionStatus>
        <EligibilityStatus>string</EligibilityStatus>
        <DOSStart>string</DOSStart>
        <DOSEnd>string</DOSEnd>
        <PolicyType>string</PolicyType>
        <ReportURL>string</ReportURL>
        <ReportText>string</ReportText>
        <Note>string</Note>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilityBenefitsResult>
    </GetEligibilityBenefitsResponse>
  </soap:Body>
</soap:Envelope>

GetEligibilityBenefits Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilityBenefits xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </GetEligibilityBenefits>
  </soap12:Body>
</soap12:Envelope>

GetEligibilityBenefits Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilityBenefitsResponse xmlns="https://pverify.com/">
      <GetEligibilityBenefitsResult>
        <UniqueID>int</UniqueID>
        <Demographics>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Gender>string</Gender>
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Subscriber>
          <Dependent>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Relationship>string</Relationship>
            <Gender>string</Gender>
            <Subscriber xsi:nil="true" />
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Dependent>
          <ErrorDescription>string</ErrorDescription>
        </Demographics>
        <PrimaryPayers>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
        </PrimaryPayers>
        <Services>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
        </Services>
        <PverifyPayerID>string</PverifyPayerID>
        <PayerName>string</PayerName>
        <TransactionStatus>string</TransactionStatus>
        <EligibilityStatus>string</EligibilityStatus>
        <DOSStart>string</DOSStart>
        <DOSEnd>string</DOSEnd>
        <PolicyType>string</PolicyType>
        <ReportURL>string</ReportURL>
        <ReportText>string</ReportText>
        <Note>string</Note>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilityBenefitsResult>
    </GetEligibilityBenefitsResponse>
  </soap12:Body>
</soap12:Envelope>

The pVerify SOAP Call GetEligibilityBenefits takes in subscriber and dependent information and returns eligibility information related to service type and primary payer name. In order to run this SOAP call, verify eligibility must first be run to obtain the UserID credentials.

GetEligibilityBenefits Input Parameters

Element XML Data Type Required Value Description
Version Xsd:String N Value : 3.0.1 By Default it wil be 3.0.1
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:string Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
PayerID Xsd:string Y Alphanumeric, up to 50 characters pVerfiy Payer ID(Insurance Company Code) for the request. Payer Id can be found from method GetPayerList()
Provider NPI Xsd:string Y Numeric, 10 digits only. Provider ID provided by CMS
Provider Last Name Xsd:string Y 50 characters maximum. Overages will be truncated. Provider Last name
Provider First name Xsd:string N 50 characters maximum. Overages will be truncated. Provider First Name
ProviderPIN Xsd:String N Need to fill Provider Pin
ProviderTaxanomy Xsd:String N Need to fill Provider Taxonomy
VerificationType Xsd:String Y Either S or D S-Self Verification, D- Dependent Verification
SubLastName Xsd:string ++ 50 characters maximum. Overages will be truncated. Subscriber Last Name
SubFirstName Xsd:String ++ 50 characters maximum. Overages will be truncated. Subscriber Frist Name
SubMemberID Xsd:String Y Unique member identifier Subscriber Member ID
SubSSN Xsd:String ++ Subscriber SSN
SubscriberGroupNo Xsd:String ++ Subscriber Group Number
DependentLastName Xsd:String ++ Dependent Last Name
DependentFirstName Xsd:String ++ Dependent First Name
DependentRelationship Xsd:String N Dependent Relationship to Subscriber
PatientGender Xsd:String N Either M or F or O M-Male, F-Female, O-Other
PatientDOB Xsd:String ++ Dependent Date of Birth (mm/dd/yyyy)
IssueDate Xsd:String N Issue date
DOSFrom Xsd:String Y Date of service start
DOSTo Xsd:String Y Date of service end
BatchName Xsd:String N Batch Name
ServiceCodes Xsd:String Y Service Codes
Specialty Xsd:String N Specialty
Location Xsd:String N Location
ApptDate Xsd:String N Appointment Date
ApptTime Xsd:String N Appointment Time
Notes Xsd:String N Please also include your payer name in the notes field so that we can advise and determine if the call is failing due to payer mismatch.

GetEligibilityBenefits Response Fields

Key Type Description
EligibilityStatus String Eligibility Status
PolicyType String Policy Type
Demographics Object Demographics
Demographics.Subscriber Object Subscriber demographics
Demographics.Subscriber.Address1 String Subscriber Address1
Demographics.Subscriber.Address2 String Subscriber Address2
Demographics.Subscriber.City String Subscriber City
Demographics.Subscriber.State String Subscriber state
Demographics.Subscriber.Zip String Subscriber zip code
Demographics.Subscriber.DOB String Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Demographics.Subscriber.FirstName String Subscriber first name
Demographics.Subscriber.MiddleName String Subscriber middle name
Demographics.Subscriber.LastName String Subscriber last name
Demographics.Subscriber.Gender String Subscriber gender
Demographics.Subscriber.MemberID String Subscriber MemberID
Demographics.Subscriber.EligibilityBegin String Eligibility Begin
Demographics.Subscriber.Plan String Subscriber Plan
Demographics.Subscriber.PlanType String Subscriber PlanType
Demographics.Subscriber.PlanBegin String Subscriber Plan Begin
Demographics.Subscriber.PlanNumber String Subscriber Plan Number
Demographics.Subscriber.GroupNumber String Subscriber Group Number
Demographics.Subscriber.GroupName String Subscriber Group Name
Demographics.Subscriber.OtherInfo String Other Info
Demographics.Dependent Object Dependent demographics
Demographics.Dependent.Address1 String Dependent Address1
Demographics.Dependent.Address2 String Dependent Address2
Demographics.Dependent.City String Dependent City
Demographics.Dependent.State String Dependent state
Demographics.Dependent.Zip String Dependent zip code
Demographics.Dependent.DOB String Dependent Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Demographics.Dependent.FirstName String Dependent first name
Demographics.Dependent.MiddleName String Dependent middle name
Demographics.Dependent.LastName String Dependent last name
Demographics.Dependent.Gender String Dependent gender
Demographics.Dependent.MemberID String Dependent MemberID
Demographics.Dependent.EligibilityBegin String Eligibility Begin
Demographics.Dependent.Plan String Dependent Plan
Demographics.Dependent.PlanType String Dependent PlanType
Demographics.Dependent.PlanBegin String Dependent Plan Begin
Demographics.Dependent.PlanNumber String Dependent Plan Number
Demographics.Dependent.GroupNumber String Dependent Group Number
Demographics.Dependent.GroupName String Dependent Group Name
Demographics.Dependent.OtherInfo String Other Info
Demographics.ErrorDescription String Error response
PrimaryPayers Object Primary Payers
PrimaryPayers.PrimaryPayer Object Specific primary payer
PrimaryPayers.PrimaryPayer.Name String Primary Payer Name
PrimaryPayers.PrimaryPayer.SV String SV
PrimaryPayers.PrimaryPayer.InformationContact String Primary Payer Contact Information
PrimaryPayers.PrimaryPayer.TelePhoneNumber String Primary Payer Telephone Number
Services Object Services
Services.ServiceType Object Service Type
Services.ServiceType.InNetWork String In network value
Services.ServiceType.OutNetWork String Out network value
Services.ServiceType.BothNetWork String Both Network Value
Services.ServiceType.ServiceName String Service Name
Services.ServiceType.UsedCapBenefitAmount String Used Cap Benefit amount
Services.ServiceType.OtherInfo String Other info
PverifyPayerID String pVerify payer ID
PayerName String Payer Name
TransactionStatus String Transaction Status
EligibilityStatus String Eligibility Status
DOSStart String Date of Service start
DOSEnd String Date of Service End
PolicyType String Policy Type
ReportURL String Report URL
ReportText String Report Text
Note String Additional Notes
ErrorDescription String Error Descriptions

GetEligibilityReport

GetEligibilityReport Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetEligibilityReport"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilityReport xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetEligibilityReport>
  </soap:Body>
</soap:Envelope>

GetEligibilityReport Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilityReportResponse xmlns="https://pverify.com/">
      <GetEligibilityReportResult>
        <ReportText>string</ReportText>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilityReportResult>
    </GetEligibilityReportResponse>
  </soap:Body>
</soap:Envelope>

GetEligibilityReport Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilityReport xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetEligibilityReport>
  </soap12:Body>
</soap12:Envelope>

GetEligibilityReport Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilityReportResponse xmlns="https://pverify.com/">
      <GetEligibilityReportResult>
        <ReportText>string</ReportText>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilityReportResult>
    </GetEligibilityReportResponse>
  </soap12:Body>
</soap12:Envelope>

GetEligibilityReport Input Parameters

Element XML Data Type Required Value Description
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:String Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
UniqueID Xsd:string Y Numeric provided by the VerifyEligibility Method

GetEligibilityReport Response Fields

Key Type Description
ReportText String Contents of Report
Report URL String Report URL
ErrorDescription String Error Description

GetEligibilitySummaryFULL

GetEligibilitySummaryFULL Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetEligibilitySummaryFULL"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilitySummaryFULL xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetEligibilitySummaryFULL>
  </soap:Body>
</soap:Envelope>

GetEligibilitySummaryFULL Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetEligibilitySummaryFULLResponse xmlns="https://pverify.com/">
      <GetEligibilitySummaryFULLResult>
        <UniqueID>int</UniqueID>
        <Demographics>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Gender>string</Gender>
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Subscriber>
          <Dependent>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Relationship>string</Relationship>
            <Gender>string</Gender>
            <Subscriber xsi:nil="true" />
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Dependent>
          <ErrorDescription>string</ErrorDescription>
        </Demographics>
        <PrimaryPayers>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
        </PrimaryPayers>
        <Services>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
        </Services>
        <PverifyPayerID>string</PverifyPayerID>
        <PayerName>string</PayerName>
        <TransactionStatus>string</TransactionStatus>
        <EligibilityStatus>string</EligibilityStatus>
        <DOSStart>string</DOSStart>
        <DOSEnd>string</DOSEnd>
        <PolicyType>string</PolicyType>
        <ReportURL>string</ReportURL>
        <ReportText>string</ReportText>
        <Note>string</Note>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilitySummaryFULLResult>
    </GetEligibilitySummaryFULLResponse>
  </soap:Body>
</soap:Envelope>

GetEligibilitySummaryFULL Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilitySummaryFULL xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetEligibilitySummaryFULL>
  </soap12:Body>
</soap12:Envelope>

GetEligibilitySummaryFULL Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetEligibilitySummaryFULLResponse xmlns="https://pverify.com/">
      <GetEligibilitySummaryFULLResult>
        <UniqueID>int</UniqueID>
        <Demographics>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Gender>string</Gender>
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Subscriber>
          <Dependent>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <DOB>string</DOB>
            <Relationship>string</Relationship>
            <Gender>string</Gender>
            <Subscriber xsi:nil="true" />
            <MemberID>string</MemberID>
            <EligibilityBegin>string</EligibilityBegin>
            <Plan>string</Plan>
            <PlanType>string</PlanType>
            <PlanBegin>string</PlanBegin>
            <PlanNumber>string</PlanNumber>
            <GroupNumber>string</GroupNumber>
            <GroupName>string</GroupName>
            <OtherInfo>string</OtherInfo>
            <MilitaryInfo xsi:nil="true" />
          </Dependent>
          <ErrorDescription>string</ErrorDescription>
        </Demographics>
        <PrimaryPayers>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
          <PrimaryPayer>
            <Name>string</Name>
            <SV>string</SV>
            <InformationContact>string</InformationContact>
            <TelePhoneNumber>string</TelePhoneNumber>
          </PrimaryPayer>
        </PrimaryPayers>
        <Services>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
          <ServiceType>
            <InNetWork xsi:nil="true" />
            <OutNetWork xsi:nil="true" />
            <BothNetWork xsi:nil="true" />
            <ServiceName>string</ServiceName>
            <UsedCapBenefitAmount>string</UsedCapBenefitAmount>
            <OtherInfo>string</OtherInfo>
          </ServiceType>
        </Services>
        <PverifyPayerID>string</PverifyPayerID>
        <PayerName>string</PayerName>
        <TransactionStatus>string</TransactionStatus>
        <EligibilityStatus>string</EligibilityStatus>
        <DOSStart>string</DOSStart>
        <DOSEnd>string</DOSEnd>
        <PolicyType>string</PolicyType>
        <ReportURL>string</ReportURL>
        <ReportText>string</ReportText>
        <Note>string</Note>
        <ErrorDescription>string</ErrorDescription>
      </GetEligibilitySummaryFULLResult>
    </GetEligibilitySummaryFULLResponse>
  </soap12:Body>
</soap12:Envelope>

Below are the input parameters for the GetEligibilitySummaryFull call. This call returns the full eligibility summary for requested patients. In order to access this information, it is necessary to first run the VerifyEligibility call.

GetEligibilitySummaryFULL Input Parameters

Element XML Data Type Required Value Description
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:String Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
UniqueID Xsd:string Y Numeric provided by the VerifyEligibility Method
ServiceName Xsd:string N Characters string Service type name

GetEligibilitySummaryFULL Response Parameters

Key Type Description
EligibilityStatus String Eligibility Status
PolicyType String Policy Type
Demographics Object Demographics
Demographics.Subscriber Object Subscriber demographics
Demographics.Subscriber.Address1 String Subscriber Address1
Demographics.Subscriber.Address2 String Subscriber Address2
Demographics.Subscriber.City String Subscriber City
Demographics.Subscriber.State String Subscriber state
Demographics.Subscriber.Zip String Subscriber zip code
Demographics.Subscriber.DOB String Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Demographics.Subscriber.FirstName String Subscriber first name
Demographics.Subscriber.MiddleName String Subscriber middle name
Demographics.Subscriber.LastName String Subscriber last name
Demographics.Subscriber.Gender String Subscriber gender
Demographics.Subscriber.MemberID String Subscriber MemberID
Demographics.Subscriber.EligibilityBegin String Eligibility Begin
Demographics.Subscriber.Plan String Subscriber Plan
Demographics.Subscriber.PlanType String Subscriber PlanType
Demographics.Subscriber.PlanBegin String Subscriber Plan Begin
Demographics.Subscriber.PlanNumber String Subscriber Plan Number
Demographics.Subscriber.GroupNumber String Subscriber Group Number
Demographics.Subscriber.GroupName String Subscriber Group Name
Demographics.Subscriber.OtherInfo String Other Info
Demographics.Dependent Object Dependent demographics
Demographics.Dependent.Address1 String Dependent Address1
Demographics.Dependent.Address2 String Dependent Address2
Demographics.Dependent.City String Dependent City
Demographics.Dependent.State String Dependent state
Demographics.Dependent.Zip String Dependent zip code
Demographics.Dependent.DOB String Dependent Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Demographics.Dependent.FirstName String Dependent first name
Demographics.Dependent.MiddleName String Dependent middle name
Demographics.Dependent.LastName String Dependent last name
Demographics.Dependent.Gender String Dependent gender
Demographics.Dependent.MemberID String Dependent MemberID
Demographics.Dependent.EligibilityBegin String Eligibility Begin
Demographics.Dependent.Plan String Dependent Plan
Demographics.Dependent.PlanType String Dependent PlanType
Demographics.Dependent.PlanBegin String Dependent Plan Begin
Demographics.Dependent.PlanNumber String Dependent Plan Number
Demographics.Dependent.GroupNumber String Dependent Group Number
Demographics.Dependent.GroupName String Dependent Group Name
Demographics.Dependent.OtherInfo String Other Info
Demographics.ErrorDescription String Error response
PrimaryPayers Object Primary Payers
PrimaryPayers.PrimaryPayer Object Specific primary payer
PrimaryPayers.PrimaryPayer.Name String Primary Payer Name
PrimaryPayers.PrimaryPayer.SV String SV
PrimaryPayers.PrimaryPayer.InformationContact String Primary Payer Contact Information
PrimaryPayers.PrimaryPayer.TelePhoneNumber String Primary Payer Telephone Number
Services Object Services
Services.ServiceType Object Service Type
Services.ServiceType.InNetWork String In network value
Services.ServiceType.OutNetWork String Out network value
Services.ServiceType.BothNetWork String Both Network Value
Services.ServiceType.ServiceName String Service Name
Services.ServiceType.UsedCapBenefitAmount String Used Cap Benefit amount
Services.ServiceType.OtherInfo String Other info
PverifyPayerID String pVerify payer ID
PayerName String Payer Name
TransactionStatus String Transaction Status
EligibilityStatus String Eligibility Status
DOSStart String Date of Service start
DOSEnd String Date of Service End
PolicyType String Policy Type
ReportURL String Report URL
ReportText String Report Text
Note String Additional Notes
ErrorDescription String Error Descriptions

GetParsedEligibilityPlus

GetParsedEligibilityPlus Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetParsedEligibilityPlus"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetParsedEligibilityPlus xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetParsedEligibilityPlus>
  </soap:Body>
</soap:Envelope>

GetParsedEligibilityPlus Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetParsedEligibilityPlusResponse xmlns="https://pverify.com/">
      <GetParsedEligibilityPlusResult>
        <Subscriber>
          <LastName>string</LastName>
          <FirstName>string</FirstName>
          <MiddleName>string</MiddleName>
          <Address1>string</Address1>
          <Address2>string</Address2>
          <City>string</City>
          <State>string</State>
          <Zip>string</Zip>
          <DOB>string</DOB>
          <Gender>string</Gender>
          <MemberID>string</MemberID>
          <EligibilityBegin>string</EligibilityBegin>
          <Plan>string</Plan>
          <PlanType>string</PlanType>
          <PlanBegin>string</PlanBegin>
          <PlanNumber>string</PlanNumber>
          <GroupNumber>string</GroupNumber>
          <GroupName>string</GroupName>
          <OtherInfo>string</OtherInfo>
          <MilitaryInfo>
            <Status_Code xmlns="http://pverify.net/">string</Status_Code>
            <Employment_Status_Code xmlns="http://pverify.net/">string</Employment_Status_Code>
            <Government_Service_Affiliation_Code xmlns="http://pverify.net/">string</Government_Service_Affiliation_Code>
            <Description xmlns="http://pverify.net/">string</Description>
            <Military_Service_Rank_Code xmlns="http://pverify.net/">string</Military_Service_Rank_Code>
            <Service_Date xmlns="http://pverify.net/">string</Service_Date>
          </MilitaryInfo>
        </Subscriber>
        <Dependent>
          <LastName>string</LastName>
          <FirstName>string</FirstName>
          <MiddleName>string</MiddleName>
          <Address1>string</Address1>
          <Address2>string</Address2>
          <City>string</City>
          <State>string</State>
          <Zip>string</Zip>
          <DOB>string</DOB>
          <Relationship>string</Relationship>
          <Gender>string</Gender>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <Gender>string</Gender>
          </Subscriber>
          <MemberID>string</MemberID>
          <EligibilityBegin>string</EligibilityBegin>
          <Plan>string</Plan>
          <PlanType>string</PlanType>
          <PlanBegin>string</PlanBegin>
          <PlanNumber>string</PlanNumber>
          <GroupNumber>string</GroupNumber>
          <GroupName>string</GroupName>
          <OtherInfo>string</OtherInfo>
          <MilitaryInfo>
            <Status_Code xmlns="http://pverify.net/">string</Status_Code>
            <Employment_Status_Code xmlns="http://pverify.net/">string</Employment_Status_Code>
            <Government_Service_Affiliation_Code xmlns="http://pverify.net/">string</Government_Service_Affiliation_Code>
            <Description xmlns="http://pverify.net/">string</Description>
            <Military_Service_Rank_Code xmlns="http://pverify.net/">string</Military_Service_Rank_Code>
            <Service_Date xmlns="http://pverify.net/">string</Service_Date>
          </MilitaryInfo>
        </Dependent>
        <Services>
          <ServiceBenefits>
            <ServiceName>string</ServiceName>
            <Benefits>string</Benefits>
          </ServiceBenefits>
          <ServiceBenefits>
            <ServiceName>string</ServiceName>
            <Benefits>string</Benefits>
          </ServiceBenefits>
        </Services>
        <EligibilityStatus>string</EligibilityStatus>
        <Plan>string</Plan>
        <EligibilityBegin>string</EligibilityBegin>
        <EligibilityEnd>string</EligibilityEnd>
        <PrimaryCoPay>string</PrimaryCoPay>
        <SpecialistCopay>string</SpecialistCopay>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetParsedEligibilityPlusResult>
    </GetParsedEligibilityPlusResponse>
  </soap:Body>
</soap:Envelope>

GetParsedEligibilityPlus Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetParsedEligibilityPlus xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
      <ServiceName>string</ServiceName>
    </GetParsedEligibilityPlus>
  </soap12:Body>
</soap12:Envelope>

GetParsedEligibilityPlus Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetParsedEligibilityPlusResponse xmlns="https://pverify.com/">
      <GetParsedEligibilityPlusResult>
        <Subscriber>
          <LastName>string</LastName>
          <FirstName>string</FirstName>
          <MiddleName>string</MiddleName>
          <Address1>string</Address1>
          <Address2>string</Address2>
          <City>string</City>
          <State>string</State>
          <Zip>string</Zip>
          <DOB>string</DOB>
          <Gender>string</Gender>
          <MemberID>string</MemberID>
          <EligibilityBegin>string</EligibilityBegin>
          <Plan>string</Plan>
          <PlanType>string</PlanType>
          <PlanBegin>string</PlanBegin>
          <PlanNumber>string</PlanNumber>
          <GroupNumber>string</GroupNumber>
          <GroupName>string</GroupName>
          <OtherInfo>string</OtherInfo>
          <MilitaryInfo>
            <Status_Code xmlns="http://pverify.net/">string</Status_Code>
            <Employment_Status_Code xmlns="http://pverify.net/">string</Employment_Status_Code>
            <Government_Service_Affiliation_Code xmlns="http://pverify.net/">string</Government_Service_Affiliation_Code>
            <Description xmlns="http://pverify.net/">string</Description>
            <Military_Service_Rank_Code xmlns="http://pverify.net/">string</Military_Service_Rank_Code>
            <Service_Date xmlns="http://pverify.net/">string</Service_Date>
          </MilitaryInfo>
        </Subscriber>
        <Dependent>
          <LastName>string</LastName>
          <FirstName>string</FirstName>
          <MiddleName>string</MiddleName>
          <Address1>string</Address1>
          <Address2>string</Address2>
          <City>string</City>
          <State>string</State>
          <Zip>string</Zip>
          <DOB>string</DOB>
          <Relationship>string</Relationship>
          <Gender>string</Gender>
          <Subscriber>
            <LastName>string</LastName>
            <FirstName>string</FirstName>
            <MiddleName>string</MiddleName>
            <Address1>string</Address1>
            <Address2>string</Address2>
            <City>string</City>
            <State>string</State>
            <Zip>string</Zip>
            <Gender>string</Gender>
          </Subscriber>
          <MemberID>string</MemberID>
          <EligibilityBegin>string</EligibilityBegin>
          <Plan>string</Plan>
          <PlanType>string</PlanType>
          <PlanBegin>string</PlanBegin>
          <PlanNumber>string</PlanNumber>
          <GroupNumber>string</GroupNumber>
          <GroupName>string</GroupName>
          <OtherInfo>string</OtherInfo>
          <MilitaryInfo>
            <Status_Code xmlns="http://pverify.net/">string</Status_Code>
            <Employment_Status_Code xmlns="http://pverify.net/">string</Employment_Status_Code>
            <Government_Service_Affiliation_Code xmlns="http://pverify.net/">string</Government_Service_Affiliation_Code>
            <Description xmlns="http://pverify.net/">string</Description>
            <Military_Service_Rank_Code xmlns="http://pverify.net/">string</Military_Service_Rank_Code>
            <Service_Date xmlns="http://pverify.net/">string</Service_Date>
          </MilitaryInfo>
        </Dependent>
        <Services>
          <ServiceBenefits>
            <ServiceName>string</ServiceName>
            <Benefits>string</Benefits>
          </ServiceBenefits>
          <ServiceBenefits>
            <ServiceName>string</ServiceName>
            <Benefits>string</Benefits>
          </ServiceBenefits>
        </Services>
        <EligibilityStatus>string</EligibilityStatus>
        <Plan>string</Plan>
        <EligibilityBegin>string</EligibilityBegin>
        <EligibilityEnd>string</EligibilityEnd>
        <PrimaryCoPay>string</PrimaryCoPay>
        <SpecialistCopay>string</SpecialistCopay>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetParsedEligibilityPlusResult>
    </GetParsedEligibilityPlusResponse>
  </soap12:Body>
</soap12:Envelope>

This call takes in the client ID and password along with the UniqueID provided through the VerifyEligibility call. The call returns subscriber and dependent information as well as information concerning service benefits and eligibility status.

GetParsedEligibilityPlus Input Parameters

Element XML Data Type Required Value Description
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:String Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
UniqueID Xsd:string Y Numeric provided by the VerifyEligibility Method
ServiceName Xsd:string N Characters string Service type name

GetParsedEligibilityPlus Response Fields

Key Type Description
Subscriber Object Subscriber demographics
Subscriber.Address1 String Subscriber Address1
Subscriber.Address2 String Subscriber Address2
Subscriber.City String Subscriber City
Subscriber.State String Subscriber state
Subscriber.Zip String Subscriber zip code
Subscriber.DOB String Subscriber Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Subscriber.FirstName String Subscriber first name
Subscriber.MiddleName String Subscriber middle name
Subscriber.LastName String Subscriber last name
Subscriber.Gender String Subscriber gender
Subscriber.MemberID String Subscriber MemberID
Subscriber.EligibilityBegin String Eligibility Begin
Subscriber.Plan String Subscriber Plan
Subscriber.PlanType String Subscriber PlanType
Subscriber.PlanBegin String Subscriber Plan Begin
Subscriber.PlanNumber String Subscriber Plan Number
Subscriber.GroupNumber String Subscriber Group Number
Subscriber.GroupName String Subscriber Group Name
Subscriber.OtherInfo String Other Info
Subscriber.MilitaryInfo Object Subscriber Military Info
Subscriber.MilitaryInfo.Status_Code String Military info status code
Subscriber.MilitaryInfo.Employment_Status_Code String Employment Status Code
Subscriber.MilitaryInfo.Government_Service_Affiliation_Code String Government service affiliation code
Subscriber.MilitaryInfo.Description String Military Description
Subscriber.MilitaryInfo.Military_Service_Rank_Code String Military service rank code
Subscriber.MilitaryInfo.Service_Date String Service date
Dependent Object Dependent demographics
Dependent.Address1 String Dependent Address1
Dependent.Address2 String Dependent Address2
Dependent.City String Dependent City
Dependent.State String Dependent state
Dependent.Zip String Dependent zip code
Dependent.DOB String Dependent Date of Birth (Expected format: MM/dd/YYYY ie 01/01/2000)
Dependent.FirstName String Dependent first name
Dependent.MiddleName String Dependent middle name
Dependent.LastName String Dependent last name
Dependent.Gender String Dependent gender
Dependent.MemberID String Dependent MemberID
Dependent.EligibilityBegin String Eligibility Begin
Dependent.Plan String Dependent Plan
Dependent.PlanType String Dependent PlanType
Dependent.PlanBegin String Dependent Plan Begin
Dependent.PlanNumber String Dependent Plan Number
Dependent.GroupNumber String Dependent Group Number
Dependent.GroupName String Dependent Group Name
Dependent.OtherInfo String Other Info
Dependent.MilitaryInfo Object Dependent Military Info
Dependent.MilitaryInfo.Status_Code String Military info status code
Dependent.MilitaryInfo.Employment_Status_Code String Employment Status Code
Dependent.MilitaryInfo.Government_Service_Affiliation_Code String Government service affiliation code
Dependent.MilitaryInfo.Description String Military Description
Dependent.MilitaryInfo.Military_Service_Rank_Code String Military service rank code
Services Object Services
Services.ServiceBenefits Object Service Benefits
Services.ServiceBenefits.ServiceName String Service benefit name
Services.ServiceBenefits.Benefits String Service Benefits
EligibilityStatus String EligibilityStatus
Plan String Plan
EligibilityBegin String Eligibility period start date
EligibilityEnd String Eligibility period end date
PrimaryCoPay String Primary Copay
SpecialistCopay String Specialist copay
ReportURL String Report URL
ErrorDescription String Error response

GetPremiumBenefits

GetPremiumBenefits Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetPremiumBenefits"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetPremiumBenefits xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
    </GetPremiumBenefits>
  </soap:Body>
</soap:Envelope>

GetPremiumBenefits Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetPremiumBenefitsResponse xmlns="https://pverify.com/">
      <GetPremiumBenefitsResult>
        <PatientFirstName>string</PatientFirstName>
        <PatientLastName>string</PatientLastName>
        <Status>string</Status>
        <EffectiveFrom>string</EffectiveFrom>
        <ExpiryOn>string</ExpiryOn>
        <Plan>string</Plan>
        <InNetWorkPrimaryCoPay>string</InNetWorkPrimaryCoPay>
        <InNetWorkPrimaryCoIns>string</InNetWorkPrimaryCoIns>
        <InNetWorkSpecialistCoPay>string</InNetWorkSpecialistCoPay>
        <InNetWorkSpecialistCoIns>string</InNetWorkSpecialistCoIns>
        <InNetWorkDeductibleAnnual>string</InNetWorkDeductibleAnnual>
        <InNetWorkDeductibleMet>string</InNetWorkDeductibleMet>
        <InNetWorkDeductibleRemaining>string</InNetWorkDeductibleRemaining>
        <InNetWorkOutOfPocketMaximum>string</InNetWorkOutOfPocketMaximum>
        <InNetWorkOutOfPocketRemaining>string</InNetWorkOutOfPocketRemaining>
        <OutNetWorkPrimaryCoPay>string</OutNetWorkPrimaryCoPay>
        <OutNetWorkPrimaryCoIns>string</OutNetWorkPrimaryCoIns>
        <OutNetWorkSpecialistCoPay>string</OutNetWorkSpecialistCoPay>
        <OutNetWorkSpecialistCoIns>string</OutNetWorkSpecialistCoIns>
        <OutNetWorkDeductibleAnnual>string</OutNetWorkDeductibleAnnual>
        <OutNetWorkDeductibleMet>string</OutNetWorkDeductibleMet>
        <OutNetWorkDeductibleRemaining>string</OutNetWorkDeductibleRemaining>
        <OutNetWorkOutOfPocketMaximum>string</OutNetWorkOutOfPocketMaximum>
        <OutNetWorkOutOfPocketRemaining>string</OutNetWorkOutOfPocketRemaining>
        <AdditionalInfo>string</AdditionalInfo>
        <ExceptionNotes>string</ExceptionNotes>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetPremiumBenefitsResult>
    </GetPremiumBenefitsResponse>
  </soap:Body>
</soap:Envelope>

GetPremiumBenefits Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetPremiumBenefits xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
    </GetPremiumBenefits>
  </soap12:Body>
</soap12:Envelope>

GetPremiumBenefits Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetPremiumBenefitsResponse xmlns="https://pverify.com/">
      <GetPremiumBenefitsResult>
        <PatientFirstName>string</PatientFirstName>
        <PatientLastName>string</PatientLastName>
        <Status>string</Status>
        <EffectiveFrom>string</EffectiveFrom>
        <ExpiryOn>string</ExpiryOn>
        <Plan>string</Plan>
        <InNetWorkPrimaryCoPay>string</InNetWorkPrimaryCoPay>
        <InNetWorkPrimaryCoIns>string</InNetWorkPrimaryCoIns>
        <InNetWorkSpecialistCoPay>string</InNetWorkSpecialistCoPay>
        <InNetWorkSpecialistCoIns>string</InNetWorkSpecialistCoIns>
        <InNetWorkDeductibleAnnual>string</InNetWorkDeductibleAnnual>
        <InNetWorkDeductibleMet>string</InNetWorkDeductibleMet>
        <InNetWorkDeductibleRemaining>string</InNetWorkDeductibleRemaining>
        <InNetWorkOutOfPocketMaximum>string</InNetWorkOutOfPocketMaximum>
        <InNetWorkOutOfPocketRemaining>string</InNetWorkOutOfPocketRemaining>
        <OutNetWorkPrimaryCoPay>string</OutNetWorkPrimaryCoPay>
        <OutNetWorkPrimaryCoIns>string</OutNetWorkPrimaryCoIns>
        <OutNetWorkSpecialistCoPay>string</OutNetWorkSpecialistCoPay>
        <OutNetWorkSpecialistCoIns>string</OutNetWorkSpecialistCoIns>
        <OutNetWorkDeductibleAnnual>string</OutNetWorkDeductibleAnnual>
        <OutNetWorkDeductibleMet>string</OutNetWorkDeductibleMet>
        <OutNetWorkDeductibleRemaining>string</OutNetWorkDeductibleRemaining>
        <OutNetWorkOutOfPocketMaximum>string</OutNetWorkOutOfPocketMaximum>
        <OutNetWorkOutOfPocketRemaining>string</OutNetWorkOutOfPocketRemaining>
        <AdditionalInfo>string</AdditionalInfo>
        <ExceptionNotes>string</ExceptionNotes>
        <ReportURL>string</ReportURL>
        <ErrorDescription>string</ErrorDescription>
      </GetPremiumBenefitsResult>
    </GetPremiumBenefitsResponse>
  </soap12:Body>
</soap12:Envelope>

This call takes in a username, password, and uniqueID and returns in network and out of network copay and coinsurance amounts along with deductible and OOP.

GetPremiumBenefits Input Parameters

Element XML Data Type Required Value Description
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:String Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
UniqueID Xsd:string Y Numeric provided by the VerifyEligibility Method

GetPremiumBenefits Response Fields

Key Type Description
PatientFirstName String Patient First Name
PatientLastName String Patient Last Name
Status String Status
EffectiveFrom String Effective From (mm-dd-yyyy)
ExpiryOn String Expiration date (mm-dd-yyyy)
Plan String Plan name
InNetWorkPrimaryCoPay String In network primary copay
InNetWorkPrimaryCoIns String In network primary coinsurance
InNetWorkSpecialistCoPay String In network specialist copay
InNetWorkSpecialistCoIns String In network specialist coinsurance
InNetWorkDeductibleAnnual String In Network Annual Deductible
InNetWorkDeductibleMet String In Network deductible met
InNetWorkDeductibleRemaining String In network deductible remaining
InNetworkOutOfPocketMaximum String In network out of pocket maximum
InNetWorkOutOfPocketRemaining String In network out of pocket remaining
OutNetWorkPrimaryCoPay String Out of network primary copay
OutNetWorkPrimaryCoIns String Out of network primary coinsurance
OutNetWorkSpecialistCoPay String Out of network specialist copay
OutNetWorkSpecialistCoIns String Out of network specialist coinsurance
OutNetWorkDeductibleAnnual String Out of Network Annual Deductible
OutNetWorkDeductibleMet String Out of Network deductible met
OutNetWorkDeductibleRemaining String Out of network deductible remaining
OutNetworkOutOfPocketMaximum String Out of network out of pocket maximum
OutNetWorkOutOfPocketRemaining String Out of network out of pocket remaining
AdditionalInfo String Additional Info
ReportURL String Report URL
ErrorDescription String Error description

GetServiceNames

GetServiceNames Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/GetServiceNames"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetServiceNames xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
    </GetServiceNames>
  </soap:Body>
</soap:Envelope>

GetServiceNames Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetServiceNamesResponse xmlns="https://pverify.com/">
      <GetServiceNamesResult>
        <anyType />
        <anyType />
      </GetServiceNamesResult>
    </GetServiceNamesResponse>
  </soap:Body>
</soap:Envelope>

GetServiceNames Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetServiceNames xmlns="https://pverify.com/">
      <UserID>string</UserID>
      <Password>string</Password>
      <UniqueID>string</UniqueID>
    </GetServiceNames>
  </soap12:Body>
</soap12:Envelope>

GetServiceNames Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <GetServiceNamesResponse xmlns="https://pverify.com/">
      <GetServiceNamesResult>
        <anyType />
        <anyType />
      </GetServiceNamesResult>
    </GetServiceNamesResponse>
  </soap12:Body>
</soap12:Envelope>

GetServiceNames Input Parameters

Element XML Data Type Required Value Description
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:String Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
UniqueID Xsd:string Y Numeric provided by the VerifyEligibility Method

GetServiceNamesResponse

Key Type Description
GetServiceNamesResult AnyType Result of Get Service Names Request

RunInquiry

RunInquiry Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/RunInquiry"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <RunInquiry xmlns="https://pverify.com/">
      <version>string</version>
      <XMLRequest>string</XMLRequest>
    </RunInquiry>
  </soap:Body>
</soap:Envelope>

RunInquiry Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <RunInquiryResponse xmlns="https://pverify.com/">
      <RunInquiryResult>string</RunInquiryResult>
    </RunInquiryResponse>
  </soap:Body>
</soap:Envelope>

RunInquiry Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <RunInquiry xmlns="https://pverify.com/">
      <version>string</version>
      <XMLRequest>string</XMLRequest>
    </RunInquiry>
  </soap12:Body>
</soap12:Envelope>

RunInquiry Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <RunInquiryResponse xmlns="https://pverify.com/">
      <RunInquiryResult>string</RunInquiryResult>
    </RunInquiryResponse>
  </soap12:Body>
</soap12:Envelope>

RunInquiry Input Parameters

Element XML Data Type Required Description
version Xsd:String Y Version
XMLRequest Xsd:String Y XML Request

RunInquiry Response Fields

Field Type Description
RunInquiryResult Type Result of RunInquiry call

VerifyEligibility

VerifyEligibility Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/VerifyEligibility"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <VerifyEligibility xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </VerifyEligibility>
  </soap:Body>
</soap:Envelope>

VerifyEligibility Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <VerifyEligibilityResponse xmlns="https://pverify.com/">
      <VerifyEligibilityResult>
        <UniqueID>int</UniqueID>
        <StatusCode>string</StatusCode>
        <Description>string</Description>
      </VerifyEligibilityResult>
    </VerifyEligibilityResponse>
  </soap:Body>
</soap:Envelope>

VerifyEligibility Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <VerifyEligibility xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </VerifyEligibility>
  </soap12:Body>
</soap12:Envelope>

VerifyEligibility Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <VerifyEligibilityResponse xmlns="https://pverify.com/">
      <VerifyEligibilityResult>
        <UniqueID>int</UniqueID>
        <StatusCode>string</StatusCode>
        <Description>string</Description>
      </VerifyEligibilityResult>
    </VerifyEligibilityResponse>
  </soap12:Body>
</soap12:Envelope>

The starting point for transactions is typically VerifyEligibility, the user inputs authentication (user/pass), and known information for the patient/subscriber (ie member ID, DOB, etc). Note that each payer has different required fields, call us to determine which payers need which field. The method returns a UniqueID which can be used for downstream calls. This is because not all payers have an EDI and will require human intervention to get the eligibility data.

From the methods given in the pVerify SOAP API, VerifyEligibility is the base method which will give a unique ID and Status of the Patients Eligibility. Thus, VerifyEligibility must be called first.

VerifyEligibility Input Parameters

Element XML Data Type Required Value Description
Version Xsd:String N Value : 3.0.1 By Default it wil be 3.0.1
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:string Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
PayerID Xsd:string Y Alphanumeric, up to 50 characters pVerfiy Payer ID(Insurance Company Code) for the request. Payer Id can be found from method GetPayerList()
Provider NPI Xsd:string Y Numeric, 10 digits only. Provider ID provided by CMS
Provider Last Name Xsd:string Y 50 characters maximum. Overages will be truncated. Provider Last name
Provider First name Xsd:string N 50 characters maximum. Overages will be truncated. Provider First Name
ProviderPIN Xsd:String N Need to fill Provider Pin
ProviderTaxanomy Xsd:String N Need to fill Provider Taxonomy
VerificationType Xsd:String Y Either S or D S-Self Verification, D- Dependent Verification
SubLastName Xsd:string ++ 50 characters maximum. Overages will be truncated. Subscriber Last Name
SubFirstName Xsd:String ++ 50 characters maximum. Overages will be truncated. Subscriber Frist Name
SubMemberID Xsd:String Y Unique member identifier Subscriber Member ID
SubSSN Xsd:String ++ Subscriber SSN
SubscriberGroupNo Xsd:String ++ Subscriber Group Number
DependentLastName Xsd:String ++ Dependent Last Name
DependentFirstName Xsd:String ++ Dependent First Name
DependentRelationship Xsd:String N Dependent Relationship to Subscriber
PatientGender Xsd:String N Either M or F or O M-Male, F-Female, O-Other
PatientDOB Xsd:String ++ Dependent Date of Birth (mm/dd/yyyy)
IssueDate Xsd:String N Issue date
DOSFrom Xsd:String Y Date of service start
DOSTo Xsd:String Y Date of service end
BatchName Xsd:String N Batch Name
ServiceCodes Xsd:String Y Service Codes
Specialty Xsd:String N Specialty
Location Xsd:String N Location
ApptDate Xsd:String N Appointment Date
ApptTime Xsd:String N Appointment Time
Notes Xsd:String N Please also include your payer name in the notes field so that we can advise and determine if the call is failing due to payer mismatch.

VerifyEligibility Response Fields

Element Description
UniqueID Unique ID for each transaction
Description Status Code related description will be displayed here or any Exception messages
StatusCode Transaction Status Codes and its description (See Status Codes Above)

VerifyEligibility Status Codes

Status Code Meaning
10 Processed–Inactive
11 Processed-Active
12 Processed-Patient Not Found
13 Processed – Provide not on file
14 Rejected by Payer
15 Pending*
17 Payer Connection Down
18 Payer not found
20 Transaction authentication error
21 Missing required information
22 Invalid format error

*: Status Code 15 'Pending' is returned when the payer is non-EDI. pVerify uses manual process (phone/web-login) to get results or in some cases uses screen scraping technology to fetch the eligibility and benefits for such payers. The delay in getting the results can be anywhere from 1 minute to 12 hours based on payer and agreed terms. These 'Delayed Payers' have prefix of either BO or PL. You can either automatically refresh results using the Unique ID every few hours or have a 'Get Pending Results' button on your eligibility screen.

VerifyEligibilityWithClientPayerCode

VerifyEligibilityWithClientPayerCode Sample Call (POST) (SOAP 1.1) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://pverify.com/VerifyEligibilityWithClientPayerCode"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <VerifyEligibilityWithClientPayerCode xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </VerifyEligibilityWithClientPayerCode>
  </soap:Body>
</soap:Envelope>

VerifyEligibilityWithClientPayerCode Sample Response (SOAP 1.1)

HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <VerifyEligibilityWithClientPayerCodeResponse xmlns="https://pverify.com/">
      <VerifyEligibilityWithClientPayerCodeResult>
        <UniqueID>int</UniqueID>
        <StatusCode>string</StatusCode>
        <Description>string</Description>
      </VerifyEligibilityWithClientPayerCodeResult>
    </VerifyEligibilityWithClientPayerCodeResponse>
  </soap:Body>
</soap:Envelope>

VerifyEligibilityWithClientPayerCode Sample Call (POST) (SOAP 1.2) /pVerifySoap/pVerifySoapService.asmx

POST /pVerifySoap/pVerifySoapService.asmx HTTP/1.1
Host: zcontest.pverify.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <VerifyEligibilityWithClientPayerCode xmlns="https://pverify.com/">
      <Version>string</Version>
      <UserID>string</UserID>
      <Password>string</Password>
      <PayerID>string</PayerID>
      <ProviderNPI>string</ProviderNPI>
      <ProviderLastName>string</ProviderLastName>
      <ProviderFirstName>string</ProviderFirstName>
      <ProviderPIN>string</ProviderPIN>
      <ProviderTaxanomy>string</ProviderTaxanomy>
      <VerificationType>string</VerificationType>
      <SubLastName>string</SubLastName>
      <SubFirstName>string</SubFirstName>
      <SubMemberID>string</SubMemberID>
      <SubSSN>string</SubSSN>
      <SubscriberGroupNo>string</SubscriberGroupNo>
      <DependentLastName>string</DependentLastName>
      <DependentFirstName>string</DependentFirstName>
      <DependentRelationship>string</DependentRelationship>
      <PatientGender>string</PatientGender>
      <PatientDOB>string</PatientDOB>
      <IssueDate>string</IssueDate>
      <DOSFrom>string</DOSFrom>
      <DOSTo>string</DOSTo>
      <BatchName>string</BatchName>
      <ServiceCodes>string</ServiceCodes>
      <Specialty>string</Specialty>
      <Location>string</Location>
      <ApptDate>string</ApptDate>
      <ApptTime>string</ApptTime>
      <Notes>string</Notes>
    </VerifyEligibilityWithClientPayerCode>
  </soap12:Body>
</soap12:Envelope>

VerifyEligibilityWithClientPayerCode Sample Response (SOAP 1.2)

HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <VerifyEligibilityWithClientPayerCodeResponse xmlns="https://pverify.com/">
      <VerifyEligibilityWithClientPayerCodeResult>
        <UniqueID>int</UniqueID>
        <StatusCode>string</StatusCode>
        <Description>string</Description>
      </VerifyEligibilityWithClientPayerCodeResult>
    </VerifyEligibilityWithClientPayerCodeResponse>
  </soap12:Body>
</soap12:Envelope>

A Base method which will give a unique ID and status of the Patient's Eligibility using your (client) payer ID. Please also include your payer name in the notes field so that we can advise and determine if the call is failing due to payer mismatch

VerifyEligibilityWithClientPayerCode Input Parameters

Element XML Data Type Required Value Description
Version Xsd:String N Value : 3.0.1 By Default it wil be 3.0.1
UserID Xsd:String Y Alphanumeric, up to 50 characters UserID is assigned by pVerify. Used to determine the account profile used to process the request.
Password Xsd:string Y Alphanumeric, up to 50 characters Password is assigned by pVerify used to validate User identity.
PayerID Xsd:string Y Alphanumeric, up to 50 characters pVerfiy Payer ID(Insurance Company Code) for the request. Payer Id can be found from method GetPayerList()
Provider NPI Xsd:string Y Numeric, 10 digits only. Provider ID provided by CMS
Provider Last Name Xsd:string Y 50 characters maximum. Overages will be truncated. Provider Last name
Provider First name Xsd:string N 50 characters maximum. Overages will be truncated. Provider First Name
ProviderPIN Xsd:String N Need to fill Provider Pin
ProviderTaxanomy Xsd:String N Need to fill Provider Taxonomy
VerificationType Xsd:String Y Either S or D S-Self Verification, D- Dependent Verification
SubLastName Xsd:string ++ 50 characters maximum. Overages will be truncated. Subscriber Last Name
SubFirstName Xsd:String ++ 50 characters maximum. Overages will be truncated. Subscriber Frist Name
SubMemberID Xsd:String Y Unique member identifier Subscriber Member ID
SubSSN Xsd:String ++ Subscriber SSN
SubscriberGroupNo Xsd:String ++ Subscriber Group Number
DependentLastName Xsd:String ++ Dependent Last Name
DependentFirstName Xsd:String ++ Dependent First Name
DependentRelationship Xsd:String N Dependent Relationship to Subscriber
PatientGender Xsd:String N Either M or F or O M-Male, F-Female, O-Other
PatientDOB Xsd:String ++ Dependent Date of Birth (mm/dd/yyyy)
IssueDate Xsd:String N Issue date
DOSFrom Xsd:String Y Date of service start
DOSTo Xsd:String Y Date of service end
BatchName Xsd:String N Batch Name
ServiceCodes Xsd:String Y Service Codes
Specialty Xsd:String N Specialty
Location Xsd:String N Location
ApptDate Xsd:String N Appointment Date
ApptTime Xsd:String N Appointment Time
Notes Xsd:String N Please also include your payer name in the notes field so that we can advise and determine if the call is failing due to payer mismatch.

VerifyEligibilityWithClientPayerCode Response Parameters

Element Description
UniqueID Unique ID for each transaction
Description Status Code related description will be displayed here or any Exception messages
StatusCode Transaction Status Codes and its description (See Status Codes Above)

VerifyEligibilityWithClientPayerCode Status Codes

Status Code Meaning
10 Processed–Inactive
11 Processed-Active
12 Processed-Patient Not Found
13 Processed – Provide not on file
14 Rejected by Payer
15 Pending*
17 Payer Connection Down
18 Payer not found
20 Transaction authentication error
21 Missing required information
22 Invalid format error

*: Status Code 15 'Pending' is returned when the payer is non-EDI. pVerify uses manual process (phone/web-login) to get results or in some cases uses screen scraping technology to fetch the eligibility and benefits for such payers. The delay in getting the results can be anywhere from 1 minute to 12 hours based on payer and agreed terms. These 'Delayed Payers' have prefix of either BO or PL. You can either automatically refresh results using the Unique ID every few hours or have a 'Get Pending Results' button on your eligibility screen.

Tables

Payer Table

pVerify Payer Code List Click Here to Download pVerify Payer Codes Excel Sheet

Pass Thru Fee List This list shows pricing for payers that send us an additional fee per processing. If you are using this payer for your API inquiry the fee will be your contracted rate plus the fee on this list.

Payer Name PV Payer Code Actual Pass Through Fee
BCBS of Michigan (Thru Blue Exchange) 00039 0.06
Connecticut Medicaid 00073 0.045
Florida Medicaid 00098 0.03
Georgia Medicaid 00100 0.05
Kansas Medicaid 00128 0.02
Oklahoma Medicaid 00166 0.02
Mississippi Medicaid 00144 0.053
Tennessee Medicaid (TennCare) 00185 0.04
BCBS of Michigan (Institutional) 00464 0.06
Tricare East 00975 0.05
PacificSource Administrators 00977 0.05
BCBS of Michigan (Thru Blue Exchange) 00039 0.06

Click Here to Download the pVerify Pass thru free Excel Sheet

Service Code Table

This is the pVerify service type code list, please use the service type code (first column) in your eligibility queries. Common eligibility information is in service type code 30, Health Benefit Plan Coverage

Click Here to Download the pVerify Service Codes Excel Sheet (Service codes are located on the second page of the sheet).