Promotion Not Calculating

I have a new promotion set up. Order 1 of Product A and 1 of Product B, and get 5% off both products.



The cart seems to work right, however it is not taking the 5% off when both items are in the cart.



Is anyone else experiencing that problem, or had that problem?

Probably your promotion is not set up properly.



Please let me explain how to set it up.


  • Click on the “Promotions” link in the “Catalog” side box on the left of your CS-Cart admin panel.
  • Add new promotion by using the “Add new promotion” form.
  • Click on the “details” link of the created promotion.
  • Click on the “Condition” tab.
  • Under the “Add conditions” section select “Purchased products” and enter the condition name, click on the “Add new” button.
  • Under the “Products” section click on the “Hide/show product search section” link and add the desired products.
  • Click on the “Update” button.
  • Then click on the “Actions” tab, under the “Discount on products” section set up the discount and add the products. Click on the “Update” button.
  • After that click on the “Condition rules” tab, select the crested condition in the first select box and click on the “Save condition rules” button.

That is how I have it all set up, I just confirmed it.



Everything shows up on the site when you order the two product however it never gives the discount.

In this case I could recommend you to place a support request via Customer Help Desk.

Here is what support was able to do to fix this issue:



incorrect code in the “/addons/promotions/func.php” file.



I have replaced the following part of code:


if (!empty($params['prepare_cart_products'][$product_id]) &&!empty($action['products'][$product_id])) {

$use_discount = false;






with this one:


if (!empty($params['prepare_cart_products'][$product_id]) && isset($action['products'][$product_id])) {

$use_discount = false;