Editing An Order That Came In During A Promotion Period?

Hey All,

I've recently upgraded to CS Cart 4.3 and noticed a change in how cs cart handles editing orders that when originally placed received a promotion that had since ended.

Say a sale runs until 8/31. On 9/1 we go to process the orders that came in the day before. Some of those orders need adjustment, once we edit the order all of the promotions are removed (since the promotion period has since closed).

Do we need to keep the promotion open while we are editing orders that came in within the time frame to avoid this?

It will cause confusion on our front end since customers will still be able to receive the promotion although all signs point to it ending a day or two ago.

I am just curious if I am missing something as I would like the orders to stay locked into the promotion even though they may need editing after they were placed / the sale has ended.

Appreciate your thoughts on this!

If the date of the original order is not preserved and the ORDER MANAGEMENT (editing an order in admin) does not recognize the promotion, then this should be submitted as a bug in bugtracker. Editing an order should NOT alter any time sensitive context that was in effect when the original order was placed.

I am afraid, order management feature uses the same functions as checkout in the front-end. So if the promotion condition is not met, it will be excluded. Most possibly support team will say that it works as designed

I am afraid, order management feature uses the same functions as checkout in the front-end. So if the promotion condition is not met, it will be excluded. Most possibly support team will say that it works as designed

This is is disappointing to hear as it does cause lots of extra steps (and details to be managed) while working through orders that were placed during a promotion period. We ran our shop on ver 2.1 and didn't have this issue.

We've been testing different promotion settings to see if we can get it to work as it originally did but without luck.

With this being built into the core functionality of the latest versions of CS -Cart am guessing that 3rd party developing on it would be tricky / time consuming / expensive? And also cause issues for future upgrades.

I agree with Tbirnseth, this is a bug, you should post it in the bugtracker.

I am afraid, order management feature uses the same functions as checkout in the front-end. So if the promotion condition is not met, it will be excluded. Most possibly support team will say that it works as designed

As we all know, working as designed doesn't mean working correctly. It just means whomever designed it didn't account for real world use.

Posted to Bug Tracker but unfortunately didn't get the answer I was looking for! The current version of CS Cart uses the checkout page while editing an already placed order so although the design isn't ideal it's working as it is coded.

There are no plans to fix this design flaw in future versions of CS Cart so the only option is custom development.

I am guessing that the custom development would be a fairly large project considering it would be overhauling the way CS Cart handles checkout and the editing of orders through admin panel.

It would be injecting several

if( defined('ORDER_MANAGEMENT') )

do something special

else

do what's there now

segments into the promotions query and calculations. Note that start/stop times of promotions is just one piece that can be affected by this.

In bug tracker: http://forum.cs-cart.com/tracker/issue-6509-changing-amounts-or-removin-a-product-in-order-doubles-discount/

Posted to Bug Tracker but unfortunately didn't get the answer I was looking for! The current version of CS Cart uses the checkout page while editing an already placed order so although the design isn't ideal it's working as it is coded.

There are no plans to fix this design flaw in future versions of CS Cart so the only option is custom development.

I am guessing that the custom development would be a fairly large project considering it would be overhauling the way CS Cart handles checkout and the editing of orders through admin panel.

Hi guys,

Yes. Unfortunately there are some issues with current order editing flow because of the promotions.

Initially back to v4 we tried to provide store owners with more flexibility when editing order and enabled auto promotions calculation.

I don't thing we will add check on data period for promotion on order editing page because this will be yet another patch.

First thing I want to try to fix the source of all order editing problems and disable promotion calculations - because they bring more harm than good.

  • csriver ... depending on the number of orders, why not make the promotion active but add
  • specific 'users' condition before you edit the order.

I don't thing we will add check on data period for promotion on order editing page because this will be yet another patch.

I would suggest that you use an "$effective_timestamp" and set it based on whether ORDER_MANAGEMENT is defined. If it is, use the timestamp from the order (which should always be preserved anyway). If not, use the current TIME. You would have to visit all the places in the promotions code where TIME is used and instead either have it pull that info from the cart['timestamp'] or massage it to use the $effective_timestamp.

I support it continuing to use the "checkout flow" so that cart recalculations are done for the new order (including any admin hooks for the UI). But the original timestamp in the order should remain unchanged. You might want to add a "last_update' field to the order (or preferably an array of order history change timestamps).

We've made some tests, and most probably since v4.5.1 promotions will not be applied automatically during order editing. All applied promotions will remain in order without any changes, but you still will be able to remove some discounts or coupons from existing orders.

This is still in testing, but I hope to avoid many unpleasant surprises for CS-Cart users with this feaure.

It's really very frustrating when you can not just change a value in an order.

Regarding order editing..

Recently I wanted to assign some older order ordered as guest, to later registered account, some of the products were deleted and this was not possible to do. Even deleted products hold data like price and title, so why would this make a problem ?

If all you wanted to do is assign any orders that are annonymous (user_id==0) to existing user(s) with same email address, you could simply use our EZ Admin Helper addon. There is an action for that. It will do that assignment to all orders. This solves the issue of customers who first checked out as guests and then registered and wanted to have all their orders (anonymous and current) visible to them from their account. Note too that all our addons are on sale for $29.99 till Christmas.