Overview
This is part 5 of a series of articles on how to implement Insurance Claims Adjudication rules using the North52 business rules engines for Microsoft Dynamics 365. Please see the overview article for a table of contents of related articles.
This article details the rules and Decision Tables which apply the rules relating to the restrictions for the maximum allowable benefit for a treatment type. When a claim is made on a policy, checks are made after the waiting period tests have been completed.
Restrictions on a Policy
Restrictions are defined on a policy via several records, each specifying the details of the restriction, for example, the treatment or treatment type and whether it is a waiting period or maximum cover restriction.
Rules for Treatment Maximum Benefit Restrictions
Rule # | Description |
---|---|
RES04 |
Not Covered so do not perform Maximum Benefit checks If Covered equal FALSE then do not perform Maximum Benefit Checks |
RES05 |
Maximum Lifetime benefit for treatment, determine previous claims value If there are Policy Restrictions for specified Treatment and a Lifetime Maximum Benefit specified then:
|
RES06 |
Maximum Timed benefit for treatment, determine previous claims value If there are Policy Restrictions for specified Treatment and a Timed Maximum Benefit specified then:
|
RES07 |
Maximum Benefit Restriction not applicable so stop further checks If Maximum benefit rules RES05 and RES06 not applicable do not perform further Maximum Benefit checks |
RES08 |
Previous claims for Treatment exceed maximum lifetime allowance If the Remaining Benefit is less than or equal to 0 then:
|
RES09 |
No previous claims for Treatment, but only allow Maximum Benefit If the Remaining Benefit is greater than 0 and Previous Claims Value is equal to 0:
|
RES10 |
Previous claims for Treatment, further allowance available If the Remaining Benefit is greater than 0 and Previous Claims Value is greater than 0:
|
These rules are translated into the following Decision Tables:
Step 1 - Determine Previous Claims Value and Remaining Benefit
Decision Sheet notes
- When a match occurs on a row, the Actions and Inline Calculations are performed for that row only and no further rows are evaluated
- When the Formula executes a dynamic FetchXML query returns all the Policy Restriction records for the policy and loads them into memory using North52's xCache functionality. xCache can significantly increase the performance of complex rules by using in-memory processing and reducing API calls
- Column B checks the Covered outcome from the previous Decision Sheet (Waiting Period Rules)
- If the value is FALSE, it means the claim item is not covered. This Decision Sheet would not process any further rules
- Column C returns the Policy Restriction records associated with a Treatment
- All rules in this sheet require that items are returned. If there are no items found then the variable Max Benefit Type is set to Not Applicable
- Column D returns records where there is a lifetime benefit restriction
- If there are one or more restriction records returned then the Previous Claims Value and the Remaining Benefit are calculated. A variable Max Benefit Type is also set for use in the next Decision Sheet
- Column E returns records where there is a timed benefit restriction
- If there are one or more restriction records returned then the Previous Claims Value and the Remaining Benefit are calculated. A variable Max Benefit Type is also set for use in the next Decision Sheet
- Columns G and H log messages relating to the conditions met for the customer (external) and internal use
Step 2 - Determine Coverage and Amount Claimable
Decision Sheet notes
- When a match occurs on a row, the Actions and Inline Calculations are performed for that row only and no further rows are evaluated
- When the Formula executes a dynamic FetchXML query returns all the Policy Restriction records for the policy and loads them into memory using North52's xCache functionality. xCache can significantly increase the performance of complex rules by using in-memory processing and reducing API calls
- Column B checks the Max Benefit Type outcome from the previous Decision Sheet (Step 1 above)
- If the value is Not Applicable, it means that the remaining rules on this sheet are not relevant and therefore not processed
- Column C returns the Remaining Benefit amount calculated in the previous sheet
- If the amount is less than or equal to zero then the claim item is deemed not covered
- Column D returns the Previous Claims Value amount calculated in the previous sheet
- If the amount is zero, then the Amount Claimable value is set to the minimum of either the Amount Claimable or the Maximum Benefit amount
- If the amount is greater than zero, then the Amount Claimable value is set to the minimum of either the Amount Claimable or the Remaining Benefit amount
- Column E sets the Coverage variable
- Column F set the Amount Claimable variable
- Columns G and H log messages relating to the conditions met for the customer (external) and internal use