You are here: Pricing > Pricing Rules & Price Books > Pricing Rules

Pricing Rules


Pricing rules are used to calculate price based on how a product is configured. Pricing rules can be based on a combination of one or more configured values. Like most rules, a Pricing rule also has a condition and an action. The action determines the price of the model being configured.

Displaying the price to the user is the default setting, though doing so is optional. Whether or not the price should be shown to the user can be determined by an Advanced Function. If the function returns True, then the price is displayed. If the function returns False, then the price is not displayed.

Including the price in the total configured price is also optional. The default value is True, which indicates that the price should be included in the total configured price. An Advanced Function can modify a default value if necessary.


ClosedAdding a Pricing Rule

Scenario: You own a pizza company and you need to set the price for the Soup of the Day. According to the menu, the price of the soup is $2.00.

  1. Navigate from: Product Family > List of Pricing Rules.
  2. Click Add to create a new rule.
  3. Enter the basic properties of the rule.
  4. Create the Conditions.

    This rule should run only when a user selects Soup of the Day.

  5. Define the Price Amount of the Action.

    This is how the price will interact with the total configured price.

  6. Enter a User Message.

    This will be displayed with the price.

  7. Define the Behavior of the Action using the following options.
    • Do you want the price of the item to be included in the total price?
    • Do you want to display the price of this item to the user?
    • Do you want to hide zero values from the user? If no, then a value of $0 will be displayed.

    When the user decides to place an order and they select Soup of the Day, the price will be included with the total configured price of the model.

ClosedEditing a Pricing Rule

You can edit the Main Information by making changes to the Name, Description, Status and Start/End Dates.

If the rule is defined at the Product Family level, you can choose the Area of the application. The areas available for application are Configuration, Selection or Both. If Configuration is selected, the rule is only applicable during configuration. If Selection or Both are chosen, then the rule is applicable in the search flow as well.

Scenario: You will be setting the prices for the pizzas based on their size and crust type.You will also need to create a user message that explains to the user exactly what they are ordering. According to the menu, you have the following options and prices:

  1. Navigate from: Product Family > List of Pricing Rules.
  2. Click Add to create a new rule.
  3. Enter the basic Properties of the rule.
  4. Create your Condition Type.

    This rule can run all of the time, so it should be set to Always True.

  5. Define the Price Amount of the Action.

    Since you are creating a rule for multiple items, you will need to create an Advanced Function by clicking Define BML Function.

  6. Click Add Attributes.
  7. Choose Size and Crust Typefrom the drop-down, since the pricing rule is based on these attributes.

  8. Write the pricing script in BML.

    For more information, see What is BML.

    First, assign a variable to zero. Try price = 0;

  9. Click Define BML to create the user message the buyer will see.
  10. Select the necessary attributes.

    They should be the same as those found in Step 7.

  11. Create an empty string variable to hold your user message string.
  12. Write the user message to be returned.

      In the getPrice() SOAP call, the Hide Zero Price behavior is replicated by using the attribute bm:hideZeroPrice.


During reconfiguration, pricing rules are always evaluated, regardless of whether the condition attributes are in the flows.


Related Topics Link IconSee Also