A Rate Component With Service Type Comparison

Imagine a rate component that is only eligible if the current customer has banking service AND insurance service. This rate component would need the following eligibility rules:

  • Customer has banking service, and
  • Customer has insurance service

These rules require only one eligibility group on the rate component.

The following table illustrates the eligibility group defined on the rate component:
Group No. Group Description If Group is TRUE If Group is FALSE
1 Has banking service AND insurance service Apply rate component Skip rate component
The following table illustrates the criteria defined in the eligibility group:
Group 1: Has banking service AND insurance service
Seq Field to Compare Comparison Method If TRUE If FALSE If Insufficient Data
10 Algorithm: check if customer has banking service = TRUE Check next condition Group is false Group is false
20 Algorithm: check if customer has insurance service = TRUE Group is true Group is false Group is false

Both criteria are similar - they call an algorithm that performs a logical comparison. These algorithms are a bit counter intuitive (but understanding them will provide you with another way to implement complex eligibility criteria):

Both criterion works as follows:

  • Field to Compare. We chose a "field to compare" algorithm that checks if the current account has contracts that belong to a given set of service types. It returns a value of TRUE if the customer has an active contract that matches one of the service types in the algorithm. In our example, the "check if customer has banking service" algorithm returns a value of TRUE if the customer has at least one active contract whose contract type references the banking service type. The "check if customer has insurance service" algorithm is almost identical, only the service type differs. Refer to RECF-SRVTY and RECF-AUTOPAY for examples of this type of algorithm.
  • Comparison Method. We simply compare the value returned by the algorithm to TRUE and indicate the appropriate response.
Note: Bottom line. The "field to compare" algorithm isn't actually returning a specific field's value. Rather, it's returning a value of TRUE or FALS (this is not a misspelling). This value is, in turn, compared by the "comparison method" and the group is set to true, false or check next accordingly.