Purging Claims Data

Oracle Health Insurance applications store a significant amount of information. This page describes the integration point that enables the user to purge data from the operational claims tables. The two primary scenarios for using this integration point are to purge information that is beyond its retention period on a production environment, and to reduce the size of non-production environments.

This integration point removes claims and all related details, taking a number of criteria to control the scope of the purge process. Claims that match on all specified criteria are purged.

Claims that have the Exempt from Purging indicator as Yes on the related external Claims data records are exempt from purging. They do not purge even if they match the specified parameters.

Note that claims purge regardless of their status. So, purging is also possible for claims that are not in completed status.

The operation described here is a long-running operation. The progress of this operation can be monitored by the links provided in the response that is returned when the operation is successfully initiated. They are the hypermedia link with rel="monitor" and rel="operator".

Long-running operations are described in the "HTTP API/IP Concepts" chapter of the Developer Guide.

Request

This process is started by making a POST request to the URI:

http://[hostName]:[portNumber]/[api-context-root]/api/purge/claims

This process is a long-running operation initiated through RESTful web service. The payload for this request contains the selection criteria for the claims to be purged.

A claim with process category 'Sub-Claim' never gets selected for any selected criteria. Rather when a claim with process category 'Large Claim System' gets selected for any selection criteria, then the system automatically purges all the linked 'Sub-claims'.

The request message has the following structure:

{
  "periodUom" : "",
  "periodLength" : "",
  "includeFinancialData" : "true or false",
  "includeLimitConsumptions" : "true or false",
  "formCode" : "",
  "formTypeCode" : "",
  "brandCode" : "",
  "claimDynUsageName1" : "",
  "claimDynValue1" : "",
  "claimDynUsageName2" : "",
  "claimDynValue2" : "",
  "claimDynUsageName3" : "",
  "claimDynValue3" : "",
  "extClaimDataDynUsageName" : "",
  "extClaimDataDynValue" : "",
  "commitSize" : "",
  "currentDate" : ""
}
Table 1. Explanation of elements in the request
Parameter Description

periodUom

This required parameter specifies, together witch period length, the retention period.

Specify the unit of measure as D (days), M (months) or Y (years)

periodLength

Required parameter that specifies the length of the retention period

includeFinancialData

This required parameter controls whether financial data is included in the purge process.

Note that the base financial objects that resulted from claims that have been purged earlier are also removed regardless of the retention period if this parameter is true.

includeLimitConsumptions

This required parameter controls whether the adjudication limit consumptions and provider limit consumptions are included in the purge process.

Note that the consumptions that resulted from claims that have been purged earlier are also removed if this parameter is true.

formCode

This optional parameter specifies the claims form. Only Claims with the specified form purge.

formTypeCode

This optional parameter specifies the Claim form type. Only Claims with the specified form type purge.

brandCode

This optional parameter specifies the brand. Only Claims with the specified brand (excludes Claims without a specified brand) purge.

claimDynUsageName1

Dynamic Field Usage Name

claimDynValue1

Dynamic Field Value

claimDynUsageName2

Dynamic Field Usage Name

claimDynValue2

Dynamic Field Value

claimDynUsageName3

Dynamic Field Usage Name

claimDynValue3

Dynamic Field Value

extClaimDataDynUsageName

This optional parameter provides the ability to use a dynamic field that is available on the external Claims data table as parameter for the purging process. Only use single-value dynamic fields as parameters. Specifying a dynamic field usage name and value (specify both) purges only Claims that have the specified value for the specified dynamic field on their external claims data record.

extClaimDataDynValue

This optional parameter holds the value for the specified extClaimDataDynUsageName (previous parameter). Use the following format for dynamic fields of type date: YYYY-MM-DD.

commitSize

This is an optional parameter. A larger commit size improves the performance of the purge long-running operation at the cost of requiring more computing resources, a larger undo tablespace. If unspecified each table is purged after 5000 statements per table, followed by a commit per table.

currentDate

This is an optional parameter. Use it in test environments only. Calculate the retention period as if today is currentDate instead of the system date. This enables purging recent records in test situations.

Retention Period

The retention period is derived from the system date. The age of a claim is determined by the last updated date on the claim header. The retention period is at least 30 days.

For example, a retention period of ten years purges all Claims that have not been updated in 10 years as of the day the user calls this integration point.

Dynamic fields as Selection Criteria

It is possible to specify up to three single-value dynamic fields on the claims table as criteria for the purging process. Use the following format for dynamic fields of type date: YYYY-MM-DD.

Example

The following example purges all claims with form type code INST and product line (dynamic field on the claims table) HMO that are older than ten years together with their financial data, adjudication limit, and provider limit consumptions.

{
  "periodUom" : "Y",
  "periodLength" : "10",
  "includeFinancialData" : true,
  "includeLimitConsumptions" : true,
  "formTypeCode : "INST",
  "claimDynUsageName1" : "productLine",
  "claimDynValue1" : "HMO"
}

Response Messages

This service can respond with the following messages:

Table 2. Response Messages
Code Message

CLA-IP-PUCL-001

Invalid number of days: {0}, it should be 30 or more

CLA-IP-PUCL-002

Period length must be a positive number

CLA-IP-PUCL-003

The request must include both Period UoM and Period Length

CLA-IP-PUCL-004

Claim Form Code is unknown

CLA-IP-PUCL-005

Claim Form Type Code is unknown

CLA-IP-PUCL-006

Brand Code is unknown

CLA-IP-PUCL-007

Dynamic Field Usage Name {0} is unknown for table {1}

CLA-IP-PUCL-008

Dynamic Field Usage Name and Value must both be provided

CLA-IP-PUCL-009

Include financial data and Include limit consumption are required parameters

The system responds with HTTP 201 (Created) and a location header for the claims purge.

Optional: Purge Notification

The purge integration point provides a call back feature to a pre-configured endpoint. This feature provides the following response to the configurable endpoint once the purge triggered by an external system through IP has concluded. The structure of notification is as under. If the endpoint is not configured (generic or specific), the notification is not sent.

<notification correlationId="" workId="{workId}" status="Success/Failure" >
  <links>
    ...
  </links>
</notification>

The generic notification endpoint can be configured as property 'ohi.purge.notification.endpoint' in the Oracle Health Insurance application’s properties file. The notification endpoint can be overridden for specific purge types, e.g. specify property 'ohi.purge.notification.endpoint.Claims' to have the system deliver all notifications for a claims purge to a specific endpoint.

If the notification endpoint is configured on the specific type, all other properties are also fetched based on the type or else defaults are used. Similarly, if the endpoint for the notification endpoint is configured using generic property, then all other properties are fetched on a generic uses code PurgeNotificationClient. Please see section Outbound RESTful Service Invocations in the Security Guide for the process and more properties.

Authorization

This operation is protected by the access restriction "purgeClaims IP".