solidus
solidus copied to clipboard
Order Merging Deleting Orders in Backend Unexpectedly
Here is how to recreate the issue:
Logged in user creates an order with something in their cart using the frontend Admin user creates order in the backend Admin adds something to order Admin associates order with Logged in user on the Customer tab Logged in user refreshes page (or really does anything) causing the orders to be merged Admin user no longer has that order and the page throws a 404 due to the order being deleted.
I'm not sure what the proper fix is for it we've just seen it as unexpected order behavior for our admins.
Hello there @ericsaupe, tried to reproduce this issue, but no success with the current master
revision (7665973)
Can you confirm if this issue is still occuring? If so, could you provide more details so I can have a further look on it?
I was able to reproduce this issue.
The old order is destroyed (not canceled) after the merge, I was not able to replace the destroy
with cancel
because the order not completed can't be canceled.
We've seen this happening too, where customers would sign in causing guest and authenticated orders to be merged, and one of them (can't remember which one right now) would be deleted, so we'd have non-existing orders in our logs, which makes debugging things a nightmare.
This is expected behavior, but it's far from ideal. I think we could solve it by creating a special merged
status for orders and then linking them to the new order. That way, we can also very easily redirect admins to the new order when the scenario described by @ericsaupe happens.
I could take a stab at this if everyone agrees with the approach.
@aldesantis I started working on the same solution proposed by you!
Hey @spaghetticode! @kennyadsl Does closing https://github.com/nebulab/solidus/issues/37 also entail we should perhaps have closed this issue as well? Or do we need to merge #3486 to fix this issue?
@cesartalves I think there may still be merit in trying to address this issue - the current behavior doesn't seem ideal as suggested by the commenters. Not sure how we should proceed though. It's probably worth evaluating other simpler solutions (besides adding the merged
state) for a new sensible default that doesn't destroy meaningful orders.