ssossossosso
Documentation Home »User Guide »Pricing
current version

Pricing

This topic contains the following sections:

Overview

Price management in OroCommerce enables you to:

  • Set up flexible product prices for different websites, customer groups, and customers.
  • Assign prices for newly added products automatically.
  • Schedule temporary or permanent price changes.
  • Override the automatically assigned price with the manually adjusted value.

Understanding Price Currencies

A base currency is a currency that is used to display financial statistics (budgets, sales amounts, etc.) on the management console. A display currency is a currency that is used to display prices to customer users on the Front Store.

To enable your customer users to switch between the base currency and additional display currencies when they view the prices on the front store, set up currency conversion rules for each of the additional display currencies. See Global Currency Configuration for more information on the necessary steps.

Understanding Product Quantities and Tier Prices

A product quantity is an amount of product that can be sold expressed in a certain unit of quantity.

A product quantity could be a whole number (integer) or a number with a fractional part (a floating-point number). Whether or not the quantity should be a whole or fractional number, and how many digits are allowed in the fractional part is defined by the settings of the selected unit of measurement. For example, by default, “kilogram” allows entering up to 3 numbers after the decimal point, and “each” requires a whole number entry.

A tier price is a price determined by the system for the specified product quantity.

For example, you set the following prices in the price list:

Product Quantity Price
Product A 1 piece $100.00
Product A 10 pieces $90.00

OroCommerce uses $90.00 as a price per piece when a customer user is buying 10 or more pieces and $100.00 as a price per piece when a customer user is buying 9 or fewer pieces.

Price tiers for a selected product can be derived from the same price list, or from the different price lists if they allow price merge.

Understanding Price Lists

Price lists are used in OroCommerce to match the product quantities with their prices in one or more currencies.

Price lists are used as a reference that helps calculate the price for the products that customer user sees on the store frontend.

For example, you can have one or multiple price lists with prices in US dollars and Euros that apply to all your customers.

At the same time, a different price list with prices in US dollars only may have higher priority for your large-volume US-based distributors.

Finally, a dedicated price list with prices in Euros may be available only to some of your selected European partners.

For example, let’s imagine that one of your customer users logs into your store frontend. They may see prices for both product A and product B. The product A prices come from the default price list available to everybody. The product B prices are from a custom price list that you have created to override default product B pricing only for this specific customer. Even though you can see all price lists and switch between them in your store management console, your customer users can see only those prices on the store frontend that you have made available to them by configuring price lists and their settings.

Price Selection Strategy

Whether your customer user gets the most attractive price or the one you have marked with the higher priority depends on the global price selection strategy.

Note

By default, the minimal price is configured in OroCommerce 2.2.x and priority-based price is used in the earlier versions of OroCommerce.

Combining Price Lists

Price list priority determines the order in which the product prices should be combined when there are prices for the same price tier in the multiple price lists available to a customer.

For example:

You specified $90.00 as a unit price for 10 or more sets of Product A in the Price List 1, and $85.00 as a unit price for 10 or more sets of the same Product A in the Price List 2, and both price lists are available to a customer.

If Price List 1 has a higher priority than Price List 2, the customer will see $90.00 as a unit price when buying 10 or more sets of Product A.

Otherwise, the customer will see $85.00 as a unit price for 10 or more sets of Product A.

Merge Allowed is a price list configuration setting that defines whether the system should combine price tiers of the same product from multiple price lists. This setting is displayed as Merge Allowed option next to the price list names on the customer, customer group, website edit pages, or on the pricing settings page (System Configuration > Catalog > Pricing).

Note

Price tier merging is possible only when the priority-based pricing strategy is enabled. Please, see global pricing configuration for more information.

For example:

You specified the price for 1 item of Product A in Price List 1, and the price for 10 items of Product A in Price List 2.

If both price lists are available to a customer user, they will see two price tiers. The first price tier will be for 1 through 9 items, and the second price tier will be for 10 or more items.

If you decided keep Merge Allowed off, the customer users to whom both price lists are available, will see only the price tier from the price list with higher priority (e.g. only 10 or more items from Price List 2).

Price list fallback is a configuration setting at the customer, customer group, or website level that enables (or disables) access to the higher level price lists.

For example:

In a default configuration, all customers users have access to all price lists assigned to their customers and the price lists assigned to the customer group that their customer belongs to, as well as to the price lists assigned to the website they are currently browsing and the default price lists configured at the system level.

If you disable the fallback configuration at the customer level and assign a selected price list to a customer, this price list becomes the only price list that the users of this customer will see the prices from. In this case, the customer group pricing, the website pricing, and the default pricing at the system level will no longer be available to the users of this customer.

If you disable fallback configuration at the customer group level, then all customers that belong to this customer group will no longer have access to the website pricing and the default pricing at the system level.

Auto-Generated Price Lists

In OroCommerce, you can set up a price list that is flexible, adjustable and exactly matches your pricing strategy.

With the automated pricing that may rely on the key indicators, like product availability, recommended price, and production cost, you get the complete price list for thousands and millions of items ready in literally no time.

Products automatically get into the price list whenever they match the special criteria – a price list’s product assignment rule. You can set up flexible pricing rules, for example, to meet the price regulations requirements, maintain an international location aware price list, or to stimulate the demand and update the price following the stock availability trends.

Automated pricing rules are a single source of truth for your price list. You can easily trace what impacts the price change, share the vision of the pricing strategy, and make sure the price is correct and meets the needs of your pricing policies.

Price List Calculation

To provide an optimized user experience on the store frontend and in the store management console, and maintain the desired level of system performance, we provide a way to fine-tune the price list calculation behavior.

OroCommerce performs a non-resource-consuming part of price recalculation immediately after the price change is submitted by the user in the management console (e.g., when a user submits the product edit form, or adds a price via the price list management, or modifies price list priority on a customer edit page, etc.).

The resource-consuming part of recalculation (e.g., when the price auto-calculation formula depends on the attribute of the item that is not directly related to the product) is deferred and happens on a schedule that is defined using the Offset Of Processing CPL Prices value in hours.

Configuration

To align the price list behavior with your needs, you can adjust the price, currency, and other related configuration options that are grouped in OroCommerce in the following way:

  • Global Currency Configuration, where you can:
    • Add and remove currencies from the Allowed Currencies list.
    • Set the base currency.
    • Define the order that is used to display the currencies to the front store and management console users.
    • Toggle between the currency display formats (currency code, e.g. USD, and currency symbol, e.g. $).
  • Currency Configuration per Website, where you can:
    • Enable all or some currencies from the Allowed Currencies list to be used in OroCommerce front store and management console for this website.
    • Select the currency to show by default in the OroCommerce front store and management console for this website.
  • Global Pricing Configuration, where you can:
    • Set price precision and price rounding strategy.
    • Configure default price lists, their priority and merge strategy to get the necessary resulting combination of prices that are shown on the websites and for the customers whenever their price list settings fall back to the system default.
    • Specify an offset in hours that helps launch combined price list recalculation before price change is activated.
    • Enable all or some currencies from the Allowed Currencies list to be used in OroCommerce front store and management console.
    • Select the currency to show by default in the OroCommerce front store and management console.
  • Price List Configuration, where you can configure default price lists, their priority and merge strategy to get the necessary resulting combination of prices that are shown on the websites and for the customers whenever their price list settings are customized. See Understanding Price List Configuration for more information on the configuration priorities, default settings, and fallback strategies.
  • Product Price Attributes Setup
  • Product Units Setup

Price List Management

Create a Price List

Note

See a short demo on how to configure price lists for customers and customer groups in OroCommerce, or keep reading the step-by-step guidance below.

To create a new price list:

  1. Navigate to Sales > Price Lists using the main menu.
  1. Click Create Price List. The following page opens:
  1. In the General section, provide the following information:

    1. Name — Type in the price list name.
    2. Currencies — Select one or more currencies that you would like to enable for the prices in the price list.

    Note

    The price in every currency should be provided explicitly. There is no automatic conversion.

    1. Active — Set the option to enable the price list. Keep the price list inactive while drafting the prices. Deactivate the price list to disable temporarily the prices it contains.

    2. Schedule — Add a timetable for price list activation and deactivation.

      Click Choose a date to open a calendar and pick the date.

      Click time and select the activation or deactivation time from the list. Alternatively, type it in and press Enter.

      To add another time slot, click + Add below the time table. Add as many slots as you need.

  2. In the Product Assignment section, enter criteria to filter the products and add them to the price list. See Automated Rule-Based Price Management for more information.

    Note

    Optionally, in addition to rule-based product assignment, you can add a product price to the price list manually in one of the following ways:

    • While editing product (in the Product Prices section).

    • When viewing the price list details, by clicking + Add Product Price.

    You can override the existing rule-based price. A manual entry has higher priority.

  3. In the Price Calculation Rules section, specify rules for price calculation based on the price attributes (e.g. mrsp) and other product details. You may use conditions to apply the rule to the subset or the filtered products. See Automated Rule-Based Price Management for more information.

  1. Click Save.

Schedule Price Adjustments

For season sales or any other temporary price amendments, you can create a dedicated price list, configure it to be the highest priority, then enable and disable it on schedule to cover the planned sales time frames.

Scheduled price activation helps eliminate the unwanted pressure of the price management during the hot hours and helps you and your sales people focus on your customers.

To schedule price activation and deactivation:

  1. Navigate to Sales > Price Lists in the main menu.
  1. Click the More Options menu to the right of the required price list and then click the Edit icon to start editing price list details.

  2. In the General section, next to the Schedule, add a timetable for price list activation and deactivation:

    1. Click Choose a date to open the calendar and pick the date.

    2. Click time and select the activation or deactivation time from the list. Alternatively, type it in and press Enter.

    3. To add another slot, click + Add below the time table. Add as many slots as you need.

  3. Once you

Import and Export Prices

Export Prices From the Price List

You might need to export price information and download it as a .csv file to reuse it in the third-party systems. Another scenario for using export is when you plan bulk data update that is easily automated in the spreadsheet software (e.g. raise the price by 20%).

To export the prices in a .csv format:

  1. Navigate to the Sales > Price Lists in the main menu and click on the necessary price list to open its details.

    The following screen opens.

  2. Click Export.

    After the following notification, you will receive an email with the link to download the .csv file.

  3. Open the email and click the Download link.

    The file is automatically downloaded.

Example of the exported information

Product SKU Quantity Unit Code Price Currency
0RT28 1 item 89.99 USD
0RT28 10 item 85.49 USD
0RT28 20 item 80.99 USD
0RT28 50 item 76.49 USD
0RT28 100 item 71.99 USD
1AB92 1 item 85.5 USD
1AB92 20 item 76.95 USD
1AB92 50 item 72.68 USD
1AB92 100 item 68.4 USD
1GB82 20 set 16.19 USD
1GB82 100 set 14.39 USD
1GS46 1 item 22.49 USD
1GS46 20 item 20.24 USD
1GS46 50 item 19.12 USD
1GS46 100 item 17.99 USD
1TB10 1 set 270 USD
1TB10 10 set 256.5 USD
1TB10 20 set 243 USD
1TB10 50 set 229.5 USD
1TB10 100 set 216 USD

Import Prices Into the Price List

To streamline adding a large bulk of items, like customer information, products, prices or inventory information, you can import the bulk details from a .csv file.

Import the product prices into the price list using the .csv file that follows the price details data structure.

Example of prices bulk import template

Product SKU Quantity Unit Code Price Currency
sku_001 42 kg 100 USD

Note

The unit and currency should be created before the inventory levels import.

To import a bulk of price information:

  1. Navigate to the Sales > Price Lists and click on the price list which you would like to update using the bulk import.
  1. Get a sample: To download a sample .csv file with the necessary headers, click Download Data Template in the list next to Import.

    Note

    Follow the on-screen guidance for any additional actions. For example, for the inventory template, select one of the options: a) inventory statuses only or b) detailed inventory levels.

  2. Prepare data for import: Based on the downloaded file, create your bulk information in .csv format. Once your file is ready, click Import, select the prepared comma-separated values (.csv) file, and click Submit.

  3. Validate import results: Review import validation results. If there are any Records with errors, fix them in the .csv file before starting the import.

  4. Launch import: After successful validation, click Import.

Interactive status messages inform about the import progress, and once the import is complete, the changes are reflected in the list upon refresh. Additionally, an email message with the import status is delivered to your mailbox.

See this two-minute demo of the import process:

Manage Product Price Manually

You can add a product price in the specific currency to the price list manually in one of the following ways:

  • While editing a product, in the Product Prices section of the product details.
  • When viewing the price list details, by clicking + Add Product Price.

In the Price List

To add a product price in the price list:

  1. Navigate to Sales > Price Lists in the main menu.

  2. Click on the price list that you would like to add the price into. The price list details open.

  3. Click + Add Product Price. The Add Product Price dialog appears.

  4. Select the product to add the price for.

  5. Specify the quantity to identify the tier of quantity that the price should apply to.

    To illustrate how price tiers work, let us consider the following example:

    When the product prices in USD are provided for one item, ten items, and fifty items, and a buyer orders 20 items, they will see price provided for ten items.

  6. Select the unit of quantity for the price.

  7. Type in the price value and select the necessary currency from the list next to it.

  8. Click Save.

In the Product Details

To add a product price in the product details:

  1. Navigate to Products > Products in the main menu.

  2. Find the product you would like to add the price for, click the More Options menu at the end of the corresponding row, and then click the Edit icon.

    The product details open.

  3. In the Product Prices section, click + Add.

    The new line appends to the end of the list.

  4. Select the price list to add the price into.

  5. Specify the quantity to identify the tier of quantity the price should apply to.

    To illustrate how price tiers work, let us consider the following example:

    When the product prices in USD are provided for one item, ten items, and fifty items, and a buyer orders 20 items, they will see price provided for ten items.

  6. Select the unit of quantity from the list.

  7. Type in the price value and select the necessary currency from the list next to it.

  8. Click Save.

Generate Product Price Automatically

The following simplified product catalog will be used in examples:

Item # Product Is in stock? Category List Price Price Unit Currency
A Laptop yes 1 2500
item USD
B Pen yes 2 0.5
item USD
C Office chair yes 3 300
item EUR
D Office shelve yes 4 250
item USD
E Server no 5 30000
item USD

To automatically generate a price list in OroCommerce:

  1. Navigate to Sales > Price Lists in the main menu.

  2. Start editing the required price list or click Create Price List to create a new one.

  3. In the Product Assignment section, set up the product list. To complete this, in the Rule field, enter criteria to filter products in the catalog with the Symfony2 expression language.

    For example, to include all products in categories 1 and 5, use the following expression:

    1
    product.category == 1 or product.category == 5
    

    For the sample catalog, this will generate the following product list:

    Price list A

    Item # Product Is in stock? Category List price Price Unit Currency
    A Laptop yes 1 2500
    item USD
    E Server no 5 30000
    item USD

    The following example illustrates filtering products in stock with the list price (also known as manufacturer’s suggested retail price – MSRP) that is higher than 100 USD per item:

    1
    2
    product.msrp.value > 100 and product.msrp.currency == ‘USD’ and
    product.msrp.unit == ‘item’ and product.inventory_status == ‘in_stock’
    

    This filtering will result in the following product list:

    Price list B

    Item # Product Is in stock? Category List Price Price Unit Currency
    A Laptop yes 1 2500
    item USD
    D Office shelve yes 4 250
    item USD

    Hint

    You can customize the automatically generated price list and add more products manually.

  4. Set up the price.

    To enable outstanding pricing flexibility, for the price list that automatically calculates the price for the products selected. The pricing behavior is configured in the Price Calculation Rule section.

    1. In the Price for Quantity, enter the quantity, select a product unit and currency that the rule will be applied to.

    2. In the Calculate As field, enter a price formula.

      For example:

      To set the price for all products to 99 USD, use the following expression:

      1
          99
      

      The result will be the following:

      Price list A

      Item # Product Is in stock? Category List Price Price Unit Currency
      A Laptop yes 1 2500 99 item USD
      E Server no 5 30000 99 item USD

      To set to set the price (for one item in US dollars) to be 5 USD more than the target margin (custom property of the product), use the following expression:

      1
          product.msrp.value * product.category.margin + 5
      

      The result will be the following:

      Price list B

      Item # Product Is in stock? Category List price Margin Price Unit Currency
      A Laptop yes 1 2500 1.2 3005 item USD
      D Office shelve yes 4 250 1.5 380 item USD

      In this expression, the (price formula) may contain product and product-related items properties of the numeric type, numbers and arithmetic operations.

    3. In the Condition field, enter a product filtering expression.

      For example, you have decided to set price 99 USD only to the products from the category 1. Then you have entered 99 in the Calculate As field (see step a. the first example. In the Condition field, enter the following expression:

      1
         product.category == 1
      

      The result will be the following:

      Price list A

      Item # Product Is in stock? Category List Price Price Unit Currency
      A Laptop yes 1 2500 99 item USD
      E Server no 5 30000
      item USD

      The (product filtering expression) is based on a Symfony2 expression that additionally filters the list of products generated in step 3 to limit the products the price shall apply to.

    4. In the Priority field, specify the precedence for this rule. See Filters, Priorities, and Matching Units in the Automatically Generated Price List for more information.

    5. If you need to set up prices for another range of products selected into the price list, or for another currency / unit, click +Add and repeat steps 4.a‒d.

    Hint

Filters, Priorities, and Matching Units in the Automatically Generated Price List

Funnel effect: Condition filter is applied only to the products assigned to the price list in step two in the process above and not the complete catalog.

Default units and currency: If the currency and unit are not specified as filtering criteria, Oro Commerce applies USD as the default currency and item as a default unit. When currency and unit values are included in the filtering criteria, they override the default values.

Automatic updates: Oro Commerce automatically updates price lists and recalculates prices whenever product-related data is updated. The trigger could be a new product, category structure changes, or the product that moved to another category.

Matching units: During price generation, Oro Commerce precisely matches the rule units and product units to ensure calculations are correct. For example, when you sell stuffed toys and the supported units are items and bundles of 10 items, your price calculation rule configured only for kilograms will not apply and the price will not be generated.

Multiple price rules that are targeting the same product: When several price calculation rules apply to the same product in the price list, Oro Commerce uses the rule with the highest priority.

Enforcing the price: Prices that were provided manually have higher priority than those generated automatically. Once you manually set the price for the automatically assigned product, it will not change after price recalculation anymore.

Filtering Expression Syntax

The filtering expression for the product assignment rule and the price calculation condition follow the Symfony2 expression language syntax and may contain the following elements:

  • Entity properties stored as table columns, including:

    • Product properties: product.id, product.sku, product.status, product.createdAt, product.updatedAt, product.inventory_status, etc.

    • Properties of product’s children entities, like:

      • Category properties: product.category.id, product.category.left, product.category.right, product.category.level, product.category.root, product.category.createdAt, and product.category.updatedAt
      • Price properties: product.price.value, product.price.unit, product.price.quantity, and product.price.currency
      • Any custom properties added to the product entity (e.g. product.awesomeness), or to the product children entity (e.g. product.category.priority and product.price.season)
    • Relations (for example, product.owner, product.organization, product.primaryUnitPrecision, product.category, and any virtual relations created in Oro Commerce for entities of product and its children.

      Note

      • To keep the filter behavior predictable, Oro Commerce enforces the following limitation in regards to using relations in the filtering criteria: you can only use parameters residing on the “one” side of the “one-to-many” relation (including the custom ones).
      • When using relation, the id is assumed and may be omitted (e.g. “product.category == 1” expression means the same as “product.category.id == 1”).
      • Any product, price and category entity attribute is accessible by field name.
  • Operators: +, -, , / , %, * , ==, ===, !=, !==, <, >, <=, >=, matches (string) (e.g. matches ‘t-shirt’; you can also use the following wildcards in the string: % — replaces any number of symbols, _ — any single symbol, e.g., matches ‘ t_shirt’ returns both ‘t-shirt’ and ‘t shirt’) and, or, not, ~ (concatenation), in, not in, and .. (range).

  • Literals: You can use strings (e.g. ‘hello’), numbers (e.g. 345), arrays (e.g. [7, 8, 9] ), hashes (e.g. { property_name: ‘property_value’ }), true, false and null.

Developer Notice

The expression is converted into internal Nodes tree. This tree is converted into QueryBuilder which is used in Insert From Select to fill prices and assignment with one query. Virtual relations and virtual fields are managed by AbstractQueryConverter, that is also used to join all required relations and generate unique table aliases. Generated query builder is cached along with its parameters. Each rule and assignment rules have their cache by ID. When a rule or an assignment rule is changed, the cached QueryBuilder is recalculated.

Set Prices in Multiple Currencies

Prerequisites

Ensure that the necessary currencies are enabled in the global and website configuration.

Enable Multiple Currencies for the Price List

To add or remove currencies that may be used in a price list:

  1. Navigate to Sales > Price Lists in the main menu.
  1. Click the More Options menu to the right of the price list and then click the Edit icon to start editing the price list details.
  2. In the General section, next to the Currencies, select the currencies you would like to enable for the price list (e.g. USD, EUR, PND) and unselect those you would like to disable.
  1. Once you enable the necessary currencies for the price list, click Save.

Add Price in Specific Currency to the Price List

When adding a product price manually or using a rule that automates price generation, you always specify the currency it is in. You can add only one price per combination of product quantity tier and currency (e.g. one price for 1 item in USD or per 10 items in EUR). For detailed information on adding product prices in particular currencies, see Manual Price Management and Automated Rule-Based Price Management.

View Price in Specific Currency on the Front Store

By default, prices in the OroCommerce Front Store are shown in the default currency.

However, you may select a different currency with a currency picker on the top right.

After the new currency is selected, product prices automatically adjust to show the unit prices in the selected currency.

Note

When the price list does not contain price for the product in the selected currency, the price information is missing. You can still add the product to the shopping list and request a quote to clarify the pricing in the specific currency.

Sample: Prices in Euro are Provided

Sample: Prices in Euro are Missing

Price Calculation on the Front Store

Product prices on the front store are taken from the combination of the price lists that are enabled on the system level, website level, customer group and customer level. Based on the fallback configuration, OroCommerce identifies the enabled price lists (see scenarios below) and selects one price per product quantity tier in the active currency to show it to the buyer as the listing price on the front store. As there might be multiple prices matching the selection criteria in the enabled price lists, OroCommerce follows the configured price selection strategy (minimal price vs priority-based).

The enabled price lists for different fallback options setup is illustrated in the table below.

Configuration Level (Price Lists) Fallback Option Configuration 1 Configuration 2 Config. 3 Config. 4
System (X, Y, Z) None N/A N/A N/A N/A
Website (A, B, C) Config
o N/A N/A
Website for Customer Group (D, E, F) Website
o N/A
Website for Customer (G) Customer Group
o
Resulting active price lists X, Y, Z, A, B, C, D, E, F, G A, B, C, D, E, F, G D, E, F, G G only

Whether the buyer will get the minimal price or the price from the price list with the highest priority, depends on the pricing strategy configured globally.

Minimal Prices Strategy

When Minimal Prices Strategy is selected, the OroCommerce uses the minimum price per tier that is found in the available (enabled) price lists.

For example, let’s use the product prices in two price lists:

Product Price List Price
SKU1 Default PriceList 9$ / 1 item
SKU1 Default PriceList 8$ / 2 item
SKU1 Default PriceList 6$ / 4 item
SKU1 Custom PriceList 8$ / 1 item
SKU1 Custom PriceList 7$ / 2 item
SKU1 Custom PriceList 7$ / 4 item

The following minimal tier prices will be shown to the buyer.

SKU1:

  • 8$ / 1 item
  • 7$ / 2 item
  • 6$ / 4 item

Merge By Priority Strategy

Merge By Priority Strategy picks the first price from the given sequence of the Price Lists for a missing price tier in the given currency.

In the price list priority configuration, the Merge Allowed flag shows whether a particular Price List is allowed to be merged with the other prices. When Merge Allowed is disabled for a price list, its price will be exclusively used for the product that has no price provided in other price lists with higher priority.

Let’s take a look at the following example: product price is defined in two price lists that allow price merge.

Product Price List Price Merge Allowed
SKU1 Default PriceList 9$ / 1 item true
SKU1 Default PriceList 8$ / 2 item true
SKU1 Default PriceList 6$ / 5 item true
SKU1 Custom PriceList 8$ / 1 item true
SKU1 Custom PriceList 7$ / 2 item true
SKU1 Custom PriceList 7$ / 4 item true

The product’s price calculation will result in the following list prices:

SKU1:

  • 9$ / 1 item
  • 8$ / 2 item
  • 7$ / 4 item
  • 6$ / 5 item

Now let’s see what changes if the merge is not allowed in the price list with higher priority:

Product Price List Price Merge Allowed
SKU1 Default PriceList 9$ / 1 item false
SKU1 Default PriceList 8$ / 2 item false
SKU1 Default PriceList 6$ / 5 item false
SKU1 Custom PriceList 8$ / 1 item true
SKU1 Custom PriceList 7$ / 2 item true
SKU1 Custom PriceList 7$ / 4 item true

The product’s price calculation will result in the following list prices:

SKU1:

  • 9$ / 1 item
  • 8$ / 2 item
  • 6$ / 5 item

Note that the price for 4 items from the Custom Price List is not used.

Finally, let’s consider the mixed example, where the merge is allowed for some price lists, including the one of the top priority. However, there is one price list that does not allow merge.

Product Price List Price Merge Allowed
SKU1 Default PriceList 9$ / 1 item true
SKU1 Default PriceList 8$ / 2 item true
SKU1 Default PriceList 6$ / 5 item true
SKU1 Custom PriceList 8$ / 1 item false
SKU1 Custom PriceList 7$ / 2 item false
SKU1 Custom PriceList 7$ / 4 item false
SKU1 Custom2 PriceList 5$ / 10 item true
SKU1 Custom2 PriceList 4$ / 100 item true

Now the product will have the following list prices:

SKU1:

  • 9$ / 1 item
  • 8$ / 2 item
  • 6$ / 5 item
  • 5$ / 10 item
  • 4$ / 100 item

The prices from the Custom Price List, where Merge Allowed is off, are omitted.

Browse maintained versions:
current1.4