I have a catalog price rule - which appears to look correct when viewing the products in the catalog. however, when I add to the cart - the price goes back up to the full amount.

Is this price rule supposed to carry over? whats the best practice for showing this store sale in the catalog and then carrying over the discount into the cart? catalog + shopping cart rule?


Shopping Cart rules are carried over the cart.

2 options here : 1°) your rules are not applied correctly 2°) In the cart template you show price and not final_price of the product.

Which version are you using ?

| improve this answer | |
  • 1, but I just read the comments from this post stackoverflow.com/questions/13280244/… and so I tried to open/save a product in the admin, and that products price started working....so I have 209 products, how can I do that easily for all of them to guarantee they work? – veilig Mar 6 '13 at 15:11
  • hmm, turns out the cron was setup improper, and flushing cache, reindexing, and 'saving & applying' the rule again seemed to correct everything? – veilig Mar 6 '13 at 16:38
  • 1
    The system cron is required for promotional rules to function. Otherwise rules can expire without having their respective products repopulated – Ben Lessani - Sonassi Mar 6 '13 at 22:05

Both shopping cart price rules and catalog price rules will apply to the product prices as they are used in the cart. The difference between the two is a shopping cart price rule is a discount that only shows once the item is in the cart, typically based on criteria which the line items in the cart meet. Catalog price rules are changes to the products in the catalog which are displayed to the customer when browsing the site, and the prices seen should indeed be reflected by the cart when the item is added to the cart.

For catalog price rules to work, however, the Magento cron job must be configured to run on the server running Magento. The reason is, catalog price rules are computationally expensive, so they are only calculated when the catalogrule_apply_all crontab is run and when the rule is saved and applied via the Magento admin.

The indexes created when applying the rules are date specific and typically calculated one or two days in advance. So if the cron is not setup and you've saved and applied the rule in the admin, they will show properly for a time, but then suddenly cease working.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.