North52's business rules engine for Dynamics 365 is ideal for implementing complex rules in the Insurance industry. In this scenario, we will demonstrate how to set up a Decision Table that calculates an Insurance Premium for Used Automobiles based on a variety of Risk Factors.
For this article it is assumed that you have at least basic familiarity with Decision Tables and/or have read the following articles:
Note: We will not detail step-by-step instructions here on how to set up Conditions or Actions, please read the above articles if you need detailed configuration steps.
Insurance Premium Rules
The rules for calculating the insurance premium are as follows:
The following are the base premiums depending on the vehicle type:
The company does not insure new cars. Depending on the age of the vehicle apply the following charges:
Less than 3 years old: €450
Additional protection available for €100 to cover damage caused to the car by other uninsured motorists.
There is an extra charge of €700 if the customer wants coverage for any medical bills resulting from a crash.
Potential Occupant Injury
Certain vehicles are more dangerous in a collision than others. If the vehicle being insured has one of the following ratings then additional charges apply:
Potential Theft Rating
Certain vehicles are more likely to be stolen than others. If the vehicle's potential theft rating is High then a charge of €1500 applies.
North52 Decision Suite Solution
The North52 Decision Suite solution works like this:
- A Formula of type Save - To Current Record is created on the Automobile entity
- The Source Properties are set to the following fields:
- Automobile Type, Is New, Date First Registered, Uninsured Motorist Coverage Included, Medical Coverage is Included, Potential Occupant Injury Rate, Potential Theft Rating
- The Target Property is set to Premium
- The Event is set to Create & Update
As the Decision Table executes and evaluates each of the conditions it sums up the values accordingly. Column H has been set up as an Inline-Calculation and is used by the Decision Table to keep a running sum of the Automobile Premium based on rows that match conditions within the Decision Table. You can think of this as a variable result which is then used to update the Premium field.
This Decision Table is configured as a Save - To Current Record; the final value of the inline calculation is automatically inserted into the Premium field as specified in the Target Property. An alternative method could have used a Save - Perform Action Formula type and set the Premium field as an Action column.
Global Calculations Sheet
The Global Calculations Sheet has 1 calculation in this Formula: Age - used to calculate the current age of the Automobile:
Age: DateDiff([north52_automobile.north52_datefirstregistered], UtcDate(), 'y')
In the form below you can see the the Decision Table has calculated and applied the Premium to the record: