Skip to main content

Discount Rule

Zuora

Discount Rule

You can use the Discount Rules Builder and the Discount Output nodes to define how discounts are applied to the products and different prices flexibly. 

When configuring a discount output, you need to configure details of the discounts and the conditions under which the discounts will be applied:

  • In the Discounts section, you can specify one or more discounts. For each discount, you define the discount amount or percentage, and how long the discount will last. If you’ve created more than one discount, you can specify the applying order for the discounts.
  • In the Conditions section, you can specify products the discounts will be applied. You can also define conditions that will further filter the prices of the selected products to which the discounts will be applied. For example, you can create a filter to apply discounts to prices that are greater than a certain amount.

If multiple conditions are specified, you can use the And, Or, None radio buttons to specify the logic. Also note that you can set conditions at different levels: product and price. Product rules will be executed prior to the price rules. Therefore if items are excluded at the product level, they won't be included at the price level.

You can enable the filter to display all the Price Book Item fields and field values defined in your Zuora Billing tenant. With this update, you no longer need to manually specify the field name in the node configuration to identify the field. Instead, you can choose from the Price Book Field dropdown list. For the field that contains enum values, (define as "picklist" type in Zuora Billing), you can also select from the defined enum values when the condition is set to Equals and Source is set to Value. To enable this, reach out to our Support team.

You can stack multiple Discount Output nodes on the Discount Rules Builder.

In the response body of the Dynamic Packaging API, discount information will be displayed under each price item. For example:

"discounts" : [ {
    "items" : [ {
      "order" : 1,
      "type" : "FIXED",
      "value" : 2,
      "occurrence" : "ONE_OFF",
      "startPolicy" : {
        "type" : "ON_CHARGE_START",
        "offset" : null
      },
      "endPolicy" : {
        "type" : "BEFORE_CHARGE_END",
        "offset" : {
          "value" : 3,
          "unit" : "MONTH"
        }
      },
      "frequency" : {
        "value" : 1,
        "unit" : "CHARGE_BILLING_PERIOD"
      }
    }, {
      "order" : 2,
      "type" : "PERCENTAGE",
      "value" : 20,
      "occurrence" : "RECURRING",
      "startPolicy" : {
        "type" : "ON_CHARGE_START",
        "offset" : null
      },
      "endPolicy" : {
        "type" : "AFTER_CHARGE_START",
        "offset" : {
          "value" : 3,
          "unit" : "MONTH"
        }
      },
      "frequency" : {
        "value" : 1,
        "unit" : "CHARGE_BILLING_PERIOD"
      }
    } ],
    "orderType" : "SEQUENTIAL"
  } ]