Welcome to Zuora Product Documentation

Explore our rich library of product information

zQuoteRulesEngine class

This article describes the properties and global methods in the zQuoteRulesEngine class.

zQuoteRulesEngine Class Properties

The zQuoteRulesEngine class includes the following properties.

Property

Type

Description

PRICE_FIELD_DISCOUNT

String

Name of the discount field

PRICE_FIELD_EFFECTIVE_PRICE

String

Name of the effective price field

PRICE_FIELD_QUANTITY

String

Name of the quantity field

PRICE_FIELD_TOTAL

String

Name of the total field

PRODUCT_RULE_TYPE_ADDED_DISABLED

String

Name of the field that indicates whether Add is enabled

PRODUCT_RULE_TYPE_ADDED_ENABLED

String

Name of the field that indicates whether Add is disabled

PRODUCT_RULE_TYPE_REMOVED_ENABLED

String

Name of the field that indicates whether a product can be removed when a rule applies

UPDATABLE_FIELD_INCLUDED_UNITS

String

Name of the included units field

zQuoteRulesEngine.ChangeLog Class

The zQuoteRulesEngine class includes the ChangeLog class you use to record changes as product or price rules are applied during quoting.

The ChangeLog class contains the following property:

  • String description : Holds the log text.

zQuoteRulesEnginePlugin Interface

The zQuoteRulesEngine class provides the Quote Rules Engine plugin interface. Use the plugin to implement custom quoting rules on prices or products.

The plugin interface is defined as global ZQuoteRulesEngine.QuoteRulesEnginePlugin and contains the following interface methods:

  • void runPriceRules ​ (List<zqu.ZChargeGroup> zcgs, List<zqu.ZQuoteRulesEngine.ChangeLog> logs)

  • Map<String,List<String>> runProductRules ​ (zqu__Quote__c quote, List<String> ratePlanIds, zqu.ZQuoteRulesEngine.ChangeLog logs)

  • Boolean runValidationRules ​ (zqu__Quote__c quote, List<ZChargeGroup> zcgs, zqu.ZQuoteRulesEngine.ChangeLog logs)

​​See Quote Rules Engine Plugin Example for a sample rules engine plugin code.