Open tomekjordan opened 5 years ago
WITHOUT creating new orders
What's the problem with creating new orders?
@orlangur
None of our clients (merchants) are using this default Edit order feature. Everyone is asking us to customise the default Edit order and convert it to make the necessary edits in the same order. Most of the merchants prefer to keep the order ID while editing. After all, literally edit an order doesn't mean to cancel and create a new order.
Merchants prefer to keep the order ID because that is what customers are expecting from the merchants. From a merchant's point of view, it will be tedious to explain that the previous order is cancelled and a new order is created with the necessary changes to every customer.
@karthickannan I see, thanks for the input. I saw some shops where External Order ID is used instead of Magento's Order ID/Order Increment ID. In such case there is no problem with Magento recreating a new order entity.
My main concern here is the amount of bugs which could be produced by such change. So, if there is acceptable workaround possible, I would stick to such approach.
@orlangur
Do we need to consider the scenarios where some merchants are using external Order IDs instead of Magento increment ID? I think it is enough to consider if this is not going to break anything else in Magento's core features.
I'm not sure what are all the bugs that could arise by this change. Could you please name a few?
@karthickannan no, I'm not saying about customizations. There are a lot of such legacy code which assumes order is invariant after creation which will not be triggered with such true edit.
How about a draft/quotation modus, configurable in settings. if the draft/quotation modus is active all new orders have to be confirmed before shipping and invoicing. it's like an additional and/or optional step before the current magento default behaviour. in draft/quotation modus you can freely edit the order, but the moment you confirm the order it's all locked and behave like magento default.
@orlangur I dont get that point. I saw many Saas ecommerce where edititing orders after finished checkout is normal behavior. Customer can make a mistake. there are many other cases where support stuff should have option to edit things in the order - exchanging products (a lot of mistakes - customer wants PRODUCT A, but by accided chose PRODUCT Aa (variation), small price corrections, other things, adding fee. I think developers - almost never uses products on real environment, and thats the case. Testing software is not using it day by day and managing store with real customers and real orders
@tomekjordan current code, both in core and third-party, heavily relies on a fact that order entity is immutable after it is placed. So, to implement such editing safely it should be placed in some new entities.
The VERY IMPORTANT THING.
Magento by default cannot edit orders (for admins and for customers if possible) In major ecommerce its a must. Its not just change address data
But Magento should have option to edit order fully - change payment method, shipping method, edit products price & quantity WITHOUT creating new orders
I think it will be the most important change for orders in Magento