---
schema_version: "1"
id: 1fa1d547561ae966e26350649ae509bd843a57345c2712f8a53737e0986ec345
title: B2C Commerce Promotion Compatibility
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/cc/264-0-0/b2c_promotion_compatibility.md
canonical_url: https://help.salesforce.com/s/articleView?id=cc.b2c_promotion_compatibility.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: c1b6643c8f6c64cec6a7908362a6a867229912503cecb6e9322e4e2b7de6db09
description: Use compatibility rules to control the application of promotions. Compatibility rules prevent a shopper from qualifying for every possible promotion. Use the rank and exclusivity system attributes to control your promotion compatibility.
products:
  - Commerce
  - B2C Commerce
release: "264"
---
# B2C Commerce Promotion Compatibility

Use compatibility rules to control the application of promotions. Compatibility rules prevent a shopper from qualifying for every possible promotion. Use the rank and exclusivity system attributes to control your promotion compatibility.

For example, your site has a global 10% product promotion for everyone and a special 20% product promotion for registered shoppers. To prevent registered shoppers from qualifying for both discounts, add CLASS exclusivity to the promotions.

## Rank

Define which promotions take precedence. For example, you have a series of promotion ranks with 10 = highest and 100 = lowest. Use the Business Manager promotion editing page to set the (optional) rank of a promotion. By default, a promotion has no rank.

- A promotion without a defined rank ranks lower than promotions with a defined rank.
- The rank system applies promotions in the order of their rank (highest to lowest). To ensure predictable results, the system also sorts promotions with the same rank using the default sorting mechanism (see [Promotion Processing,](https://help.salesforce.com/s/articleView?id=cc.b2c_promotion_processing.htm&release=264.0.0&type=5 "When processing promotions, B2C Commerce generates a list of active promotions based on parameters such as customer, source code, and coupon code products. This list isn't just for applying promotions to a basket. It also to present potential promotions to shoppers, such as on a product details page.") the Default sorting section).
- To customize the rank values, edit the rank attribute of the Promotion system object.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-cc-b2c_merchandiser_administrator-264-0-0-production-enus/ea76f372-6cfa-42a6-8e7c-05c6df7abed8/images/icon_note.png)

Note The rank settings are configurable system objects. Only Salesforce admins can access to these objects.

## Exclusivity

Use the exclusivity attribute to specify if promotions are mutually exclusive, either in general or relative to a promotion's class. This setting is mandatory but can be changed at any time.

 
| Exclusivity | Definition |
| --- | --- |
| NO | Can be combined with any promotion (default) |
| CLASS | Can’t be combined with a promotion of the same class |
| GLOBAL | Can’t be combined with any promotion |

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-cc-b2c_merchandiser_administrator-264-0-0-production-enus/ea76f372-6cfa-42a6-8e7c-05c6df7abed8/images/icon_note.png)

Note Global exclusive promotion can only be combined using the combinability configuration. Promotion with global exclusivity, when combined, have higher precedence over other promotions when applying promotions in the basket. See Salesforce B2C Commerce [prioritization rules](https://help.salesforce.com/s/articleView?id=cc.b2c_promotion_priority_rules.htm&release=264.0.0&type=5 "Promotion priority rules exist to prevent unpredictable or undesirable effects when multiple promotions are applicable for a basket. These rules are hardcoded but you can adjust certain promotion attributes, such as exclusivity and rank, to manipulate promotions application. B2C Commerce doesn't evaluate all sequences of promotions. The sequencing resulting from prioritization doesn't always provide the best value to shoppers.") to determine which apply.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-cc-b2c_merchandiser_administrator-264-0-0-production-enus/ea76f372-6cfa-42a6-8e7c-05c6df7abed8/images/icon_note.png)

Note Prevent products from requalifying for class exclusive promotions. This option prevents a product that has already qualified for a higher-ranking promotion from qualifying for your current promotion.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-cc-b2c_merchandiser_administrator-264-0-0-production-enus/ea76f372-6cfa-42a6-8e7c-05c6df7abed8/images/icon_note.png)

Note If a product promotion is class-exclusive, no further promotions can apply to the discounted products. Other promotions can still apply to other products in the order.

The following table lists the promotion classes, the compatibility choices, and their effects on a cart or shipment:

  
| Promotion class | Compatibility | Result |
| --- | --- | --- |
| Product | Global | Not combined with any other promotion in a given order |
|   | Class | Not combined with any other product promotion for a specific product in a given order |
| Order | Global | Not combined with any other promotion in a given order |
|   | Class | Not combined with any other order promotion in a given order |
| Shipping | Global | Not combined with any other promotion in a given order |
|   | Class | Not combined with any other shipping promotion in a given shipment |

Mutually Exclusive and Combinable Promotions

To further control exclusivity, set promotions to be mutually exclusive or combinable. If two promotions are mutually exclusive, then they can’t combine, even if their general exclusivity rules allows it. If two promotions are combinable, then they can combine, even if their general exclusivity rules don’t allow it. These settings can override global and class exclusivity.

Set a single promotion or entire promotion groups as mutually exclusive or combinable. To create an exclusivity group, enter a name for the group in the Exclusivity Group field of each promotion you want included

For example, you have a holiday product promotion, BOGOSchoolSupplies that offers buy one backpack, get a free lunch box.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col>
          <col>
          <col>
          <col>
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d100542e258">Exclusivity</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d100542e261">Mutually Exclusive Promotions</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d100542e264">Combinable Promotions</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d100542e267">Result</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Exclusivity" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e258 ">
              <p style="margin-bottom:0;">NO</p>
            </td>

            <td data-label="Mutually Exclusive Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e261 ">
              <p style="margin-bottom:0;">10%OffFoodStorage</p>
            </td>

            <td data-label="Combinable Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e264 ">
              <p style="margin-bottom:0;">None</p>
            </td>

            <td data-label="Result" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e267 ">
              <p style="margin-bottom:0;">BOGOSchoolSupplies can't combine with 10%OffFoodStorage, even though the
                exclusivity lets it combine with product promotions</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Exclusivity" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e258 ">
              <p style="margin-bottom:0;">CLASS</p>
            </td>

            <td data-label="Mutually Exclusive Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e261 ">
              <p style="margin-bottom:0;">FreeShipping</p>
            </td>

            <td data-label="Combinable Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e264 ">
              <p style="margin-bottom:0;">$25OffChildrensProducts</p>
            </td>

            <td data-label="Result" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e267 ">
              <p>BOGOSchoolSupplies can't combine with FreeShipping, even though the
                exclusivity lets it combines with non-product promotions</p>
              <p style="margin-bottom:0;">BOGOSchoolSupplies can combine with $25OffChildrensProducts, even though
                the exclusivity prevents combination with other product promotions</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Exclusivity" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e258 ">
              <p style="margin-bottom:0;">GLOBAL</p>
            </td>

            <td data-label="Mutually Exclusive Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e261 ">
              <p style="margin-bottom:0;">None</p>
            </td>

            <td data-label="Combinable Promotions" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e264 ">
              <p>10%OffOrder</p>
              <p style="margin-bottom:0;">$5OffKidSupplies</p>
            </td>

            <td data-label="Result" class="slds-cell-wrap" style="vertical-align:top;" headers="d100542e267 ">BOGOSchoolSupplies can combine with both promotions, even though the
              exclusivity prevents combinations with all promotion classes</td>

          </tr>
        </tbody>
      </table>

Group promotions in exclusivity groups, which makes setting exclusivity settings easier to manage. For example, you add 10%OffOrder and $5OffKidSupplies to the exclusivity group, SpringPromo, on the individual promotions pages. Put SpringPromo in the Combinable Promotions field on the BOGOSchoolSupplies promotion page. Both promotions in the SpringPromo exclusivity group combinable with BOGOSchoolSupplies.

Exclusivity Handling for Buy X/Get Y Promotions

B2C Commerce doesn't count products twice when a qualifying product in one promotion is used as a discounted product in another promotion. For class-exclusive Buy X/Get Y promotions, the system prevents further discounts on the discounted and the qualifying products.

For example, you configure two promotions for a back-to-school campaign.

  
| Promotion | Qualifying product | Discounted product |
| --- | --- | --- |
| Buy three pairs of khakis, get 50% off a polo shirt | khakis | Polo shirt |
| Buy one pair of kid's sneakers and get 20% off a pair of khakis | kid's sneakers | Khakis |

You set both promotions to Exclusive to stop the product promotions from combining. The promotion with 50% is prioritized above the 20% offer (see [promotion priority rules](https://help.salesforce.com/s/articleView?id=cc.b2c_promotion_priority_rules.htm&release=264.0.0&type=5 "Promotion priority rules exist to prevent unpredictable or undesirable effects when multiple promotions are applicable for a basket. These rules are hardcoded but you can adjust certain promotion attributes, such as exclusivity and rank, to manipulate promotions application. B2C Commerce doesn't evaluate all sequences of promotions. The sequencing resulting from prioritization doesn't always provide the best value to shoppers.")). The first promotion applies and the second doesn't because B2C Commerce prevents both the qualifying and discounted products from receiving further discounts.

Bonus Product and Choice of Bonus Product Promotions

For Bonus Product discounts, the exclusivity parameter only works for promotions with qualifying products. Exclusivity applies to the qualifying product, not the bonus product.

For example, you configure some more promotions for your back-to-school campaign.

    
| Promotion | Qualifying product | Discounted product | Discount | Exclusivity |
| --- | --- | --- | --- | --- |
| Buy one polo shirt and get a free pair of sneakers | Polo shirt | Polo shirt | Free pair of sneakers | Class |
| Polo shirts 30% off | Polo shirt | Polo shirt | 30% off polo shirts | Class |

Because bonus product promotions consider the qualifying product to also be the discounted product, the second promotion doesn't apply.

## Examples

Two Promotions Set to Global-Exclusive, One with a Rank

Two promotions are global-exclusive, one with a rank. All other promotions are non-exclusive.

    
| Name | Promotion | Class | Rank | Exclusivity |
| --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off cashmere sweaters | Product | 60 | No |
| PROMO\_P2 | $2 off cashmere sweaters | Product | 0 | Global |
| PROMO\_P3 | $1 off cashmere sweaters | Product | 0 | No |
| PROMO\_P4 | 2.99 product fixed price for all jeans | Product | 30 | No |
| PROMO\_O1 | 15% off order | Order | 70 | No |
| PROMO\_O2 | 20% off order | Order | 65 | Global |
| PROMO\_O3 | $5 off order | Order | 0 | No |

The applied discounts for this basket are as follows:

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small "><colgroup><col> <col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Product</td><td class="slds-cell-wrap" style="vertical-align:top;">No discount</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Order</td><td class="slds-cell-wrap" style="vertical-align:top;">20% off order</td></tr></tbody></table>

The following discounts apply:

  
| Item | Net price | Discount |
| --- | --- | --- |
| Pale blue cashmere sweater | $100 | None |
| Wide leg jeans | $25 | None |
| Total | $125 | $25 |

One Global-Exclusive Promotion and One Class-Exclusive Promotion

One promotion is global-exclusive and one is class-exclusive. All other promotions are non-exclusive.

    
| Name | Promotion | Class | Rank | Exclusivity |
| --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off cashmere sweaters | Product | 60 | No |
| PROMO\_P2 | $2 off cashmere sweaters | Product | 0 | Class |
| PROMO\_P3 | $1 off cashmere sweaters | Product | 0 | Global |
| PROMO\_P4 | $2.99 product fixed price for all jeans | Product | 30 | No |
| PROMO\_O1 | 15% off order | Order | 70 | No |
| PROMO\_O2 | 20% off order | Order | 65 | No |
| PROMO\_O3 | $5 off order | Order | 0 | No |

The applied discounts for this basket are as follows:

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small "><colgroup><col> <col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Product</td><td class="slds-cell-wrap" style="vertical-align:top;">$1 off on sweater</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Order</td><td class="slds-cell-wrap" style="vertical-align:top;">No discount</td></tr></tbody></table>

The following discounts apply:

  
| Item | Net price | Discount |
| --- | --- | --- |
| Pale blue cashmere sweater | $100 | $1 |
| Wide leg jeans | $25 | None |
| Total | $125 | None |

Two Promotions Set to Global-Exclusive, Both with Same Rank

Two promotions are set to global-exclusive, both with the same rank. All other promotions are non-exclusive.

    
| Name | Promotion | Class | Rank | Exclusivity |
| --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off cashmere sweaters | Product | 60 | No |
| PROMO\_P2 | $2 off cashmere sweaters | Product | 0 | Global |
| PROMO\_P3 | $1 off cashmere sweaters | Product | 0 | No |
| PROMO\_P4 | $2.99 product fixed price for all jeans | Product | 30 | No |
| PROMO\_O1 | 15% off order | Order | 70 | No |
| PROMO\_O2 | 20% off order | Order | 65 | Global |
| PROMO\_O3 | $5 off order | Order | 0 | No |

The applied discounts for this basket are as follows:

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small "><colgroup><col> <col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Product</td><td class="slds-cell-wrap" style="vertical-align:top;">$2 off on sweater</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Order</td><td class="slds-cell-wrap" style="vertical-align:top;">No discount</td></tr></tbody></table>

The following discounts apply:

  
| Item | Net price | Discount |
| --- | --- | --- |
| Pale blue cashmere sweater | $100 | $2 |
| Wide leg jeans | $25 | None |
| Total | $125 | None |

Multiple Class-Exclusive Promotions

There are four class-exclusive promotions. All other promotions are non-exclusive.

    
| Name | Promotion | Class | Rank | Exclusivity |
| --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off cashmere sweaters | Product | 60 | No |
| PROMO\_P2 | $2 off cashmere sweaters | Product | 0 | Class |
| PROMO\_P3 | $1 off cashmere sweaters | Product | 0 | Class |
| PROMO\_P4 | $2.99 product fixed price for all jeans | Product | 30 | No |
| PROMO\_O1 | 15% off order | Order | 70 | Class |
| PROMO\_O2 | 20% off order | Order | 65 | No |
| PROMO\_O3 | $5 off order | Order | 0 | Class |

The applied discounts for this basket are as follows:

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small "><colgroup><col> <col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Product</td><td class="slds-cell-wrap" style="vertical-align:top;">$2 off on sweater</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Order</td><td class="slds-cell-wrap" style="vertical-align:top;">15% off order</td></tr></tbody></table>

The following discounts apply:

  
| Item | Net price | Discount |
| --- | --- | --- |
| Pale blue cashmere sweater | $100 | $2 |
| Wide leg jeans | $25 | None |
| Total | $125 | $18.75 |

## All Class-Exclusive Product Promotions

Every product promotion is class-exclusive. While they’re all evaluated and applied, there’s only one discount per product.

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-cc-b2c_merchandiser_administrator-264-0-0-production-enus/ea76f372-6cfa-42a6-8e7c-05c6df7abed8/images/icon_note.png)

Note When evaluating two or more price in price book promotions, a price book lookup is not required because a best price discount is not evaluated.

     
| Name | Promotion | Class | Rank | Exclusivity | Item limit |
| --- | --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off all products | Product | 60 | Class | 1 |
| PROMO\_P2 | $2 off all products | Product | 40 | Class | 2 |
| PROMO\_P3 | $1 off cashmere sweaters | Product | 15 | Class |   |
| PROMO\_P4 | $2.99 product fixed price for all jeans | Product | 30 | Class |   |

The following discounts apply:

  
| In cart | Price | Discount |
| --- | --- | --- |
| Cotton sweater | $50 | 10% off all products |
| Low rise Jeans | $40 | $2 off all product |
| Polo shirt | $30 | $2 off all product |
| Denim jacket | $20 | $2.99 product fixed price |

## Class-Exclusive and Non-Exclusive Promotions

Two promotions are class-exclusive and two are non-exclusive. The class-exclusive promotions aren’t applicable. Therefore, all non-exclusive promotions apply.

    
| Name | Promotion | Class | Rank | Exclusivity |
| --- | --- | --- | --- | --- |
| PROMO\_P1 | 10% off all red shirts | Product | 60 | Class |
| PROMO\_P2 | $2 off all red shirts | Product | 40 | Class |
| PROMO\_P3 | $1 off all shirts | Product | 15 | No |
| PROMO\_P4 | $2.99 product fixed price for all green shirts | Product | 30 | No |

The following discounts apply:

  
| In cart | Price | Discount |
| --- | --- | --- |
| Green shirt | $2.99 | Fixed price and $1 off all shirts |
| Yellow shirt | $40 | $1 off all shirts |

#### See Also

- [Configure Promotion Preferences for B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_configuring_promotion_preferences.htm&release=264.0.0&type=5 "Configure many of the promotion settings as site preferences, giving you much flexibility in how your promotions are handled. These settings include Buy X/Get Y promotion behavior, discount precision, and how the tax basis is calculated for line items with discounts.")
- [Assign a Price Book or Promotion to a Specific Store in B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_assigning_a_pricebook_or_promotion_specific.htm&release=264.0.0&type=5 "With Store-Specific Pricing and Promotions, select a price book for each of your stores, up to 2,000. The assignments framework lets merchants and developers set qualifiers, such as a store that activates certain experiences, such as a promotion. You can also assign a promotion to a specific store. This feature is only supported via XML import. To use a site assignment, a developer must first edit the assignments XML to include a store assignment. Currently only stores can be listed as assignments.")
- [Promotion Schedules in B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_schedules.htm&release=264.0.0&type=5 "Schedule campaigns, A/B tests, promotions, and content slots in B2C Commerce. A scheduled experience (promotion or content slot) has to coincide with a container (campaign or A/B test), or it can't run.")
- [Tiered Discounts in B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_tiered_discounts.htm&release=264.0.0&type=5 "Tier discounts so that the discount amount increases as the shopper buys more products or spends more money. Configure tiered discounts in a promotion with multiple threshold levels for conditional parameters, where the discount varies by threshold and can't be combined.")
- [Maximum Application for B2C Commerce Promotions](https://help.salesforce.com/s/articleView?id=cc.b2c_maximum_application_for_promotions.htm&release=264.0.0&type=5 "Limit how many times a promotion can apply per order using the maximum application limit.")
- [Specify Who Qualifies for an Experience in B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_add_a_qualifier_to_an_experience.htm&release=264.0.0&type=5 "Specify who qualifies for an experience and how the promotion is redeemed using qualifiers. A qualifier can be a customer group, a coupon, or a source code. Add a qualifier to a promotion in two ways: assign the qualifier to a campaign, which affects all included promotions, or assign the qualifier to a specific promotion.")
- [Qualifying and Discounted Products in B2C Commerce](https://help.salesforce.com/s/articleView?id=cc.b2c_qualifying_and_discounted_products.htm&release=264.0.0&type=5 "Define promotions that specify qualifying products, the products shoppers buy and how much to be eligible for a discount. Also specify which products are discounted.")
- [Promotion Restrictions to Identical Products](https://help.salesforce.com/s/articleView?id=cc.b2c_restricting_promotions_to_identical_products.htm&release=264.0.0&type=5 "The restrictions setting limits product selection to identical products. When you set restrictions for a B2C Commerce product promotion rule, you configure a single product promotion that can apply to multiple products.")
- [Qualify or Disqualify Promotions Based on Active Price Book](https://help.salesforce.com/s/articleView?id=cc.b2c_qualify_disqualify_promotions_based_on_active_price_book.htm&release=264.0.0&type=5 "Include or exclude B2C Commerce products from promotions using the price book condition.")