pVerify Payers API

Returns the current pVerify payer list with payerCode, payerName, and capability flags (isActive, isSupportingEligibility, isSupportingClaims, isEDIPayer) for mapping requests to supported insurers.

OpenAPI Specification

pverify-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: pVerify API
  description: >-
    Real-time healthcare insurance eligibility and revenue-cycle API. pVerify
    exchanges EDI 270/271 eligibility transactions, returns plan and benefit
    summaries, checks 276/277 claim status, lists supported payers, and
    estimates patient financial responsibility. All API calls require an OAuth2
    bearer token obtained from the /Token endpoint and a Client-API-Id header.
  termsOfService: https://www.pverify.com/terms-of-use/
  contact:
    name: pVerify Support
    url: https://pverify.com/contact-support/
  version: '1.0'
servers:
  - url: https://api.pverify.com
    description: Production
security:
  - bearerAuth: []
    clientApiId: []
tags:
  - name: Authentication
  - name: Eligibility
  - name: Batch
  - name: Claim Status
  - name: Payers
  - name: Estimation
paths:
  /Token:
    post:
      operationId: createToken
      tags:
        - Authentication
      summary: Generate an OAuth2 access token
      description: >-
        Exchanges Client_Id and Client_Secret for an OAuth2 bearer access token
        using the client_credentials grant. The returned access_token is sent as
        an Authorization bearer header on all subsequent API calls.
      security: []
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/TokenRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResponse'
  /API/EligibilitySummary:
    post:
      operationId: eligibilitySummary
      tags:
        - Eligibility
      summary: Real-time eligibility summary
      description: >-
        Posts a single real-time eligibility request to the payer and returns a
        condensed, practice-type-specific summary of plan, coverage, copay,
        coinsurance, deductible, and out-of-pocket benefits.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EligibilityRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EligibilitySummaryResponse'
  /API/EligibilityInquiry:
    post:
      operationId: eligibilityInquiry
      tags:
        - Eligibility
      summary: Real-time 270/271 eligibility inquiry
      description: >-
        Posts a full 270 eligibility request and returns the detailed 271
        response, including a unique requestId that can be used with
        GetEligibilityResponse to retrieve the same result asynchronously.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EligibilityRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EligibilityInquiryResponse'
  /API/GetEligibilityResponse:
    get:
      operationId: getEligibilityResponse
      tags:
        - Eligibility
      summary: Retrieve a prior eligibility response
      description: >-
        Returns the same response produced by an EligibilityInquiry POST using
        the unique requestId returned in that inquiry's response.
      parameters:
        - name: requestId
          in: query
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EligibilityInquiryResponse'
  /API/GetPendingInquiries:
    get:
      operationId: getPendingInquiries
      tags:
        - Eligibility
      summary: List pending inquiries
      description: Returns the list of eligibility inquiries still in a Pending state.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PendingInquiry'
  /API/CancelTransaction:
    post:
      operationId: cancelTransaction
      tags:
        - Eligibility
      summary: Cancel a pending transaction
      description: >-
        Sets a pending inquiry's state to Cancel and removes it from the
        processing queue.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelTransactionRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatusResponse'
  /API/BatchEligibility:
    post:
      operationId: batchEligibility
      tags:
        - Batch
      summary: Submit a batch of eligibility verifications
      description: >-
        Submits multiple eligibility verifications in a single request for
        asynchronous processing; results are retrieved later by batch reference.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchEligibilityRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchSubmissionResponse'
  /API/ClaimStatus:
    post:
      operationId: claimStatus
      tags:
        - Claim Status
      summary: Real-time 276/277 claim status
      description: >-
        Posts a real-time 276 claim status inquiry and returns the current
        277 processing state, dates, and amounts for a submitted claim.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClaimStatusRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClaimStatusResponse'
  /API/Payers:
    get:
      operationId: getPayers
      tags:
        - Payers
      summary: List supported payers
      description: >-
        Returns the current pVerify payer list with codes, names, and
        capability flags used to map a request to a supported insurer.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Payer'
  /API/EstimationInquiry:
    post:
      operationId: estimationInquiry
      tags:
        - Estimation
      summary: Patient cost estimation
      description: >-
        Combines real-time benefits with contracted/fee data to estimate the
        patient's financial responsibility for a planned service.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EstimationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EstimationResponse'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: OAuth2 access token returned by the /Token endpoint.
    clientApiId:
      type: apiKey
      in: header
      name: Client-API-Id
      description: Client API identifier issued by pVerify, required on all API calls.
  schemas:
    TokenRequest:
      type: object
      required:
        - Client_Id
        - Client_Secret
        - grant_type
      properties:
        Client_Id:
          type: string
        Client_Secret:
          type: string
        grant_type:
          type: string
          default: client_credentials
          enum:
            - client_credentials
    TokenResponse:
      type: object
      properties:
        access_token:
          type: string
        token_type:
          type: string
          example: bearer
        expires_in:
          type: integer
          description: Token lifetime in seconds.
    Provider:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
        npi:
          type: string
        pin:
          type: string
    Subscriber:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
        dob:
          type: string
          description: Date of birth (MM/DD/YYYY).
        memberID:
          type: string
    Dependent:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
        dob:
          type: string
        gender:
          type: string
        patientRelationship:
          type: string
    EligibilityRequest:
      type: object
      required:
        - payerCode
        - provider
        - subscriber
      properties:
        payerCode:
          type: string
          description: pVerify payer code identifying the target insurer.
        payerName:
          type: string
        provider:
          $ref: '#/components/schemas/Provider'
        subscriber:
          $ref: '#/components/schemas/Subscriber'
        dependent:
          $ref: '#/components/schemas/Dependent'
        isSubscriberPatient:
          type: string
          description: '"True" if the subscriber is the patient, otherwise "False".'
        doS_StartDate:
          type: string
          description: Date of service start (MM/DD/YYYY).
        doS_EndDate:
          type: string
          description: Date of service end (MM/DD/YYYY).
        PracticeTypeCode:
          type: string
          description: Code identifying the practice type / benefit set requested.
        referenceId:
          type: string
        Location:
          type: string
        IncludeTextResponse:
          type: boolean
        InternalId:
          type: string
        CustomerID:
          type: string
    EligibilitySummaryResponse:
      type: object
      properties:
        requestId:
          type: string
        APIResponseCode:
          type: string
        APIResponseMessage:
          type: string
        PayerName:
          type: string
        PlanCoverageSummary:
          type: object
          additionalProperties: true
        HBPC_Deductible_OOP_Summary:
          type: object
          additionalProperties: true
        DemographicInfo:
          type: object
          additionalProperties: true
    EligibilityInquiryResponse:
      type: object
      properties:
        requestId:
          type: string
        APIResponseCode:
          type: string
        APIResponseMessage:
          type: string
        Status:
          type: string
        EDIResponse:
          type: string
          description: Raw 271 EDI response when requested.
        ServiceDetails:
          type: array
          items:
            type: object
            additionalProperties: true
    PendingInquiry:
      type: object
      properties:
        requestId:
          type: string
        status:
          type: string
        submittedDate:
          type: string
        payerCode:
          type: string
    CancelTransactionRequest:
      type: object
      required:
        - requestId
      properties:
        requestId:
          type: string
    StatusResponse:
      type: object
      properties:
        APIResponseCode:
          type: string
        APIResponseMessage:
          type: string
        Status:
          type: string
    BatchEligibilityRequest:
      type: object
      required:
        - requests
      properties:
        batchReferenceId:
          type: string
        requests:
          type: array
          items:
            $ref: '#/components/schemas/EligibilityRequest'
    BatchSubmissionResponse:
      type: object
      properties:
        batchId:
          type: string
        accepted:
          type: integer
        status:
          type: string
    ClaimStatusRequest:
      type: object
      required:
        - payerCode
        - provider
        - subscriber
      properties:
        payerCode:
          type: string
        provider:
          $ref: '#/components/schemas/Provider'
        subscriber:
          $ref: '#/components/schemas/Subscriber'
        claimNumber:
          type: string
        claimChargeAmount:
          type: string
        serviceStartDate:
          type: string
        serviceEndDate:
          type: string
    ClaimStatusResponse:
      type: object
      properties:
        requestId:
          type: string
        APIResponseCode:
          type: string
        APIResponseMessage:
          type: string
        claimStatusCategoryCode:
          type: string
        claimStatusCode:
          type: string
        claimStatusDescription:
          type: string
        totalClaimChargeAmount:
          type: string
        claimPaymentAmount:
          type: string
    Payer:
      type: object
      properties:
        payerCode:
          type: string
        payerName:
          type: string
        isActive:
          type: boolean
        isSupportingEligibility:
          type: boolean
        isSupportingClaims:
          type: boolean
        isEDIPayer:
          type: boolean
    EstimationRequest:
      type: object
      required:
        - payerCode
        - provider
        - subscriber
      properties:
        payerCode:
          type: string
        provider:
          $ref: '#/components/schemas/Provider'
        subscriber:
          $ref: '#/components/schemas/Subscriber'
        serviceCptCodes:
          type: array
          items:
            type: string
        placeOfService:
          type: string
        contractedAmount:
          type: string
        dateOfService:
          type: string
    EstimationResponse:
      type: object
      properties:
        requestId:
          type: string
        APIResponseCode:
          type: string
        APIResponseMessage:
          type: string
        estimatedPatientResponsibility:
          type: string
        estimatedInsurancePayment:
          type: string
        deductibleApplied:
          type: string
        coinsuranceApplied:
          type: string
        copayApplied:
          type: string