Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.1
    • Component/s: Insurance
    • Labels:
      None
    • Sprint:

      Description

      1. Overview

      This project is an enhancement to the Patient Insurance project.

      It will include:

      • support for gap claims
      • a claim wizard
      • improved policy validation
      • insurance reporting

      2. Gap Claims

      A gap claim is one where an insurance claim is submitted to the insurer, and the insurer calculates a benefit amount. The customer pays the gap, which is the difference between the total claim and the benefit amount.

      Gap claims will only be supported for online claims. It won't be possible to create a gap claim for insurers that accept offline (i.e. paper/email/fax based) claims.

      Gap claim functionality will be provided by adding the following fields to Claims:

      • Gap Claim - a check box to indicate if the claim is a gap claim or not.
        This is disabled if the insurer doesn't support gap claims, and hidden for offline claims
      • Benefit Amount - a read-only field indicating the benefit amount
      • Benefit Notes - a read-only field containing a response from the insurer regarding the claim
      • Gap Claim Status - a read only field indicating the status of the gap claim. One of Pending, Received, Cancelled

      2.1 Submitting Gap Claims

      Gap claims may be submitted by:

      • Creating a new Claim, and ticking the Gap Claim checkbox
      • Adding finalised unpaid invoice(s)
      • Clicking Submit

      On submit, a dialog will be displayed with the title Submit Claim and message:

      Waiting for <Insurer Name> to provide a Benefit Amount
      

      This will poll the claim every few seconds to see if the insurer has updated it.
      It will provide a single Close button, which will close the dialog, and return the user to the Insurance workspace.

      If the Gap Claim Status is changed to Received while the dialog is displayed, a message will be displayed, along with any description from the insurer e.g.

      <Insurer Name> is providing a benefit of: <Benefit Amount>
      <Benefit Description>
      

      The dialog will have two buttons:

      • Pay Claim - launches a payment dialog to make a gap payment against the selected claim
      • Close - closes the dialog without making a payment.

      2.2 Gap Claims Hours of Operation

      Insurers may not provide 24/7 support for gap claims. When selecting the Gap Claim checkbox, a warning will be displayed if the insurer doesn't support 24/7 claims e.g.:

      <Insurer Name> is accepting gap claims until 5:00pm today
      

      or:

      <Insurer Name> is not accepting gap claims at the moment.
      Gap claims may next be submitted on Monday 19/3 at 9:00am
      

      3. Claim Wizard

      In OpenVPMS 2.0, users must create a Policy prior to submitting a Claim.

      Often, the customer doesn't know their policy number, or when their policy expires. For some insurers, a valid policy number isn't a requirement, so to streamline the process of creating new claims:

      • A claim wizard will be provided to create claims, without knowing the policy details beforehand
      • Policies will be de-emphasised in the UI i.e. the Insurance tab will display claims by default; policies will be excluded

      When no policy is selected, the Claim button will display a dialog with the options:

      Create a new claim using:
      
      * Existing policy: <Policy List>
      * Insurer: <Insurer Selector>
      

      The Existing policy option provides a list of policies associated with the patient, most recent first.

      When selected, and the Insurer is:

      • Online, it validates the policy. If the policy is:
        • valid, it launches a new claim dialog, with the policy pre-populated, as is the case now.
        • invalid, displays an error message. The user can re-select from the options above
      • Offline, it launches a new claim dialog, with the policy pre-populated, as is the case now

      The Insurer option enables users to select from insurers. If the insurer is:

      • Online, and the insurer supports policy number discovery, the policy number will be queried
        • If found, a new claim dialog will be displayed, with the policy populated
        • If not found, and the insurer:
          • supports claim submission without a policy, a placeholder policy will be created and the claim dialog displayed
          • requires a policy number, an error will be displayed. The user can then re-select from the options above
      • Offline, a message will be displayed:
        <Insurer name> does not support policy number discovery.
        Please enter the policy number:
        

        The user can then enter the policy number, and the claim editor will be displayed, or re-select from the options above.

      4. Policy Validation

      In OpenVPMS 2.0, insurers can indicate that policy numbers are invalid via the Check Policy button.

      This has the following limitations:

      • Users cannot correct policy numbers or insurers, once a claim has been submitted
      • The policy cannot be automatically updated with the correct the policy number, or the insurer.

      This will be changed to:

      • allow the claim plugin to return a corrected policy number and/or insurer for a policy
      • warn the user if the policy being claimed against is not valid, and update it with a corrected policy

      NOTE: A new policy will only be created if the insurer is available in the system. If the insurer list is not updated (e.g. hasn't been synchronised), the claim will not be updated. No facility will be provided to update the claim in this instance.

      5. Insurance Reporting

      A new Insurance Claims workspace will be provided in Reporting.

      This enables claims to be queried by:

      • Insurer - defaults to all insurers
      • Claim identifier - defaults to all claims
      • Status - defaults to Pending
      • Gap Claim Status - defaults to None
      • When querying by Gap Claim Status, the Status will be set to Submitted
      • Date range - allows claims to be filtered by creation date. Defaults to all claims

      It also provides buttons:

      • Find - find claims matching the criteria
      • Submit - submit a Pending or Finalised claim
      • Pay Claim - launches a payment dialog to make a gap payment against the selected claim
      • Benefit Paid - acknowledges receipt of a benefit payment from an insurer
      • Benefit Unpaid - cancels acknowledgment of receipt of a benefit payment from an insurer
      • Print - print a listing of claims matching the criteria.
        This can be used to help reconcile benefit amounts.

      Claims matching the criteria will be displayed in a table including the:

      • Insurer
      • Claim identifier
      • Customer
      • Patient
      • Status
      • Gap Claim Status
      • Benefit Amount
      • Benefit Paid

      The Benefit Paid button is used to acknowledge payment of a gap claim benefit from an insurer, and is used to reconcile claims with payments received from an insurer.

      It only applies to claims with Status = Settled and Gap Claim Status = Paid.
      It updates the Gap Claim Status to Settled.

      The Benefit Unpaid button is used to correct claims that have been erroneously marked as Settled.
      It only applies to claims with Status = Settled and Gap Claim Status = Settled.
      It updates the Gap Claim Status to Paid.

      6. Plugin API

      The plugin API will need to be extended support gap claims and policy validation.

        Attachments

          Activity

            People

            • Assignee:
              tanderson Tim Anderson
              Reporter:
              tanderson Tim Anderson
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Who's Looking?