Creating externally managed underwriting rules in Gosu code

In PolicyCenter, Business Rules > Underwriting Rules provides a user interface to define underwriting rules. However, if your underwriting rule does not fit within the Underwriting Rules framework, you can implement the underwriting rule in Gosu code. These rules are externally managed rules, which have their rule condition defined outside business rules, often in Gosu code. This topic describes how to create an externally managed rule in Gosu code.

Use an externally managed rule if:

  • The rule is too complex to write within the Underwriting Rules framework.
  • Your underwriting rule has outcomes that are more complex than just adding an underwriting issue. For example, create an underwriting issue and an activity or contingency.
Note: After upgrading from PolicyCenter 7.0 or 8.0, legacy underwriting rules are initially implemented as externally managed rules. See “Upgrading Underwriting Authority” in the Configuration Upgrade Guide.

Underwriting issues can be raised by the Rule Condition in the Underwriting Rules user interface, or by an externally managed rule. Underwriting rules conditions written using the underwriting Rule screen can be viewed by authorized users in PolicyCenter. These rule conditions can be edited, enabled, and disabled, and can be efficiently moved between PolicyCenter instances. Externally managed underwriting rule conditions written in Gosu are not accessible in the user interface, however the fields associated with the underwriting issue type are. However Gosu code can handle more complex rules and, in some cases, improve system performance. In both cases, PolicyCenter creates UWRule and UWIssueType entities. These entities have foreign keys to each other.

This topic describes how to write Gosu code that defines the rule condition that raises underwriting issues.

Important: To avoid unexpected results, specify the rule condition in either the user interface or in Gosu code, but not in both. PolicyCenter first executes the Rule Condition defined in the user interface and raises an underwriting issue when the condition evaluates to true. Then PolicyCenter executes the rule condition in Gosu.

See also