I have an order containing five product lines (A, B, C, D, E) C, D and E have been shipped and invoices. The customer now decides he no longer desires A, B and I need to cancel them out, returning the reserved stock.

But if I "edit" the order, I have no products left and it does not want to save. if I "void" the order, it tries to void the payment (do not want) If I "cancel" the order it also tries to void the payment.

What is the proper method of cancelling and returning to stock the two remaining lines on this order?


It is a very specific case and Magento does not have a good way to do this.

The best I've found, without development, is to create a Virtual Product named "Order Edition", free and not visible.

When you have to remove the non-invoiced/shipped items, you edit the original order and remove all the items remaining. Then you add this product and save. Then you invoice (to complete) or cancel your new order.

Not a very clean way to do that, but a good workaround.

  • clever workaround. I'll take it, thanks! :) – user9191 Mar 17 '15 at 17:00

To return cancelled products to stock try to do the following:

  1. Open necessary order
  2. Go to order Credit Memo
  3. Check “Return to stock” box for the item you need to refund in “Items to refund” field below magento return items to stok

The product quantity will be returned to stocked once you save the changes

  • I'm afraid this does not help. in my example the line you have marked with "return to stock" has not been invoiced. I need to remove it from the open order, and set the order as complete, with only the topmost product line invoiced and delivered. – user9191 Feb 6 '15 at 14:04

Magento does not allow partial items to be "canceled" or "voided" on a partially invoiced order. You must complete the order first by creating the appropriate invoice and refunding it.

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.