Rules overview

Rules improve the quoting experience by limiting the number of questions an agent must answer. Underwriting rules narrow the scope of quoting form questions based on policy type and other criteria. Underwriting rules also change answer options based on selected answers.

Rules concepts

Business rules

A business rule is a directive that defines or constrains a business activity.

Business rules are represented generically with the following structure:
When {condition} then {consequence}


A condition evaluates whether an expression is true or false. If a condition is true, the consequence is executed.

when Driver.age > 25

A rule condition may contain a complex expression that contains many other expressions, which are connected through operators nested through function calls.

When ((Driver.age > 25) AND (Vehicle.Class <= 6))


A consequence is executed if the condition evaluates as true.

then submit(FormAction(“hide”, “bodily injury limit”))

Consequences in BriteCore are expressed as actions for BriteRules clients to take.

These actions could be sent back in either of the following ways:

  • Synchronous: Sent as an immediate response to the request.
  • Asynchronous: Sent through BriteHub.

Note: We are working to avoid direct database queries or in-memory object mutations.

The design principle ensures:

  • All actions performed against a service are exposed in an actions directory.
  • All consequences are logged.

Underwriting rules

Using triggers, effects, and logic, underwriting rules add or remove line items or category options when a user selects a specified option while building a policy.

Underwriting rules can use:

  • One or multiple triggers.
  • One or multiple effects.
  • And logic.
  • Or logic.
  • Both and and or logic.

Note: In classic BriteCore, the Rules engine is configured in the Lines module.

For more information about underwriting rules and lines, visit Lines > Policies and Rating > Underwriting rules.