The discount isn't working, what should I check?

The discount isn't working, what should I check?


This article contains the list of the major settings that can influence the work of cart price rules and discount application. It is recommended to look through it if you come across any difficulties with Special Promotions (Pro) discounts. If the article doesn't help, please, contact our support team for further investigation.

The discount isn't showing at all

General settings

  1. At Amasty > Special Promotions > Configuration > Skip Settings, check if any skip options are enabled. If they are, and a product with special price or catalog price rules is used to test the promotion in the frontend, it is expected for the module to ignore it and not apply the discount:


Cart Price Rules settings

Rule Information tab

  1. Make sure that the rule is enabled and set to Active:

  1. If there are any usage limitations set in the Global Uses Limit (available only in Special Promotions Pro) or Uses per Customer fields, check if the limitations have already been reached, as the discount will stop applying in such case:

  1. For cart price rules with coupons, usage limitations also need to be checked in the Uses per Coupon field:

  1. If the discount application scope is limited to certain website(s) using the Websites setting, make sure that the discount is being tested in the corresponding website(s):

  1. Similarly, if the Customer Groups setting is used to apply the discount only to some customer groups, ensure that the customer used in the frontend matches the selected group(s):

  1. It is also necessary to inspect the From and To settings to check if any date limitations might apply to the rule:


Conditions tab

  1. If this tab contains any conditions, check them one by one to confirm if they all can be met by the order the discount is tested with:
    1. Address entered in the frontend should match address conditions from the rule;
    2. Products in the order should have correct attributes assigned to them (SKU, Category, weight, etc.). Product attributes can be checked in its settings at Catalog > Products;
  2. Furthermore, if Customer Attributes conditions are used, ensure that the discount is tested by a logged-in customer that has a matching attribute under their account:
Cart price rules with Customer Attributes conditions cannot be triggered for guest customers, or for customers that already have an account, but haven't logged in yet. It is connected to the default Magento logic of storing customer attribute information only for registered and logged-in users.
  1. In case the Subtotal condition is used in the rule, check whether it's Subtotal Including Tax or Subtotal Excluding Tax, and that the order in question fits the condition accordingly. There's also an older default condition called Subtotal, which doesn't include tax:


  1. If SKU condition is used in the tab, it needs to be defined the same way it is defined in product settings at Catalog > Products (letter case should be the same, and all symbols should be included):
  1. For cases when one condition lists several attribute options in one line (several SKUs, several category IDs, etc.), the is one of operator should be used. Alternatively, if only one attribute option is listed in the condition, it should feature the is operator:


To double-check if Conditions settings in the rule cause any discount issues, you can create a new cart price rule with sample basic settings, copy the settings from the Conditions tab there, and test if the discount works. In case the discount from the new rule is applied as expected, conditions in the original rule are correct as well.

Actions tab

  1. Similar to the Conditions tab, the Actions tab contains a conditions tree where it is possible to define what products the discount is applied to. Inspect the conditions inside it and confirm at Catalog > Products that the product(s) used for tests match them:


  1. For actions that contain quantity-based setting called Discount Qty Step (Buy X), the number of products added to cart should be equal or greater than the number defined in the setting:

  1. In case there's more than one active cart price rule in your Magento instance, check the Discard Subsequent Rules setting for other active rules. If this setting is enabled, and several cart price rules are triggered at the same time, rules with such option can forcibly cancel out other rules with lower or equal Priority:

In order to efficiently check the influence of other cart price rules on your discount, we recommend temporarily deactivating all cart price rules except the one with the discount that you're testing. If the discount starts working as soon as other cart price rules are turned off, it is worth thoroughly inspecting priority and discard settings for them.
  1. Just like in general Special Promotions settings, each cart price rule has its own skip settings for the products with special pricing. If the Use General Skip Settings option is set to No for the rule, review the selected options inside the sub-setting called Skip Items with. In case the products the discount should apply to have any special pricing (tier price, catalog price rules, other cart price rules, etc.), the Skip Items with sub-setting can make the module ignore such products:

The discount is applied, but its amount is wrong

General settings

  1. Check if any additional cart price rules are applied when they're shouldn't. The easiest way to do that is to enable the Show Discount Breakdown setting at Amasty > Special Promotions > Configuration > Discount Breakdown:

It will enable a dropdown on cart and checkout pages that will demonstrate the full list of rules currently applied to the order. This way it will be possible to determine whether any cart price rules are applied that shouldn't be active, or whether the cart price rule that should apply isn't actually working:

  1. Just like in cases with discount not applied at all, it is recommended to review the settings at Amasty > Special Promotions > Configuration > Skip Settings if the applied discount is incorrect. If a cart contains a regular product plus a product with special/tier price, Skip Settings can influence the final discount amount by adding the discount when it should be ignored, or, vice versa, skipping it when it should be applied:

Cart Price Rules settings (Actions tab)

  1. In the Apply dropdown, confirm that the correct type of the discount is selected. The majority of rules from Special Promotions (Pro) module can apply the same discount logic, but using 3 different discount types: percent discount (for example, 10% off), fixed discount ($10 off) and fixed price (the final price of the product is $10, and the module calculates automatically how much needs to be discounted):

  1. Review Maximum Qty Discount is Applied To and Max Amount of Discount fields: the former can limit the number of times the discount is applied to X product, and the latter can set a limit on the monetary amount that the discount cannot surpass. Correspondingly, if your discount doesn't need to be limited, these fields should be empty:

  1. Check the number used in the Discount Qty Step (Buy X) or Number of X/Y Products fields (different fields may appear for different action types). Some of the examples can be found below:

or:

The ratio of products defined in these settings needs to be compared with the number of products in cart. For instance, if you have a fixed $10 discount rule with Discount Qty Step (Buy X) set to 2, you can expect that additional $10 discount will be added for each 2 products, so the discount will be $20 for 4 products, $30 for 6 products, and so on. Similarly, if you have a fixed $10 discount rule with Number of X Products set to 3 and Number of Y Products set to 1, there will be a $20 discount off 2 Y products if 6 X products are in cart, a $30 discount off 3 Y products if 9 X products are in cart, etc.;
  1. Thoroughly review the Calculate Discount Based On setting and choose the option that suits you the best, as it can greatly change the logic of discount calculation:
    1. Price (Special Price if Set) - if a product has a special price defined in its settings, then percent discount will be calculated based on this special price. If there's no special price, then the discount will be calculated based on the original product price;
    2. Price after Previous Discount(s) - the amount percent discount is calculated from will depend on other cart price rules that have the priority higher than your current cart price rule has. In other words, first the discounts from some high-priority rules are applied, then the extension checks the subtotal after applying high-priority discounts, and the subtotal after those discounts is used to calculate the discount for a cart price rule with lower priority;
    3. Original Price, Calculate before Special Price (if present) - discount amount will be calculated based on original product price only, even if any special price is present. Both special price discount and cart price rule discount will be applied to a product at the same time in this case and will be summed up;
    4. Original Price, Apply to Original Price (skip if result is more than Special Price) - discount amount is always calculated based on original price, and then a comparison is run between special price and original price minus the discount from the cart price rule. Based on this comparison, the module offers the cheaper option to the customer, so special price and cart price rule discount aren't summed up.
  2. Following the same logic like in cases of discounts not being applied, a specific cart price rule might be set up to ignore some products with special/tier price or catalog price rules. If the Use General Skip Settings option is set to No for the rule, review the selected options inside the sub-setting called Skip Items with. In case the products the discount should apply to have any special pricing (tier price, catalog price rules, other cart price rules, etc.), the Skip Items with sub-setting can make the module ignore such products, changing the discount amount for mixed carts:
  3. As the last step, pay attention to the section Apply the rule only to cart items matching the following conditions and if it has anything listed inside. If you mentioned any specific conditions there, then the discount from the cart price rules will work only for the products that fully match the defined conditions. When testing discounts in the frontend, it is necessary to compare the products in cart with these conditions and note how many of them qualify for the discount: