What happens when an order is cancelled in Magento?

Order Status

When you click Cancel button in an order view, order status changes to Cancelled if payment is not received (i.e. invoice is not raised).

If payment is received before you click Cancel button, order status changes to Complete. You must raise a credit note to offset the payment, then the status changes to Closed. However, this order still counts in dashboard. This statistical result is not what I am expecting, but I think there is a reason inside.

See table as summary

Is payment received? No Yes
Order status changes to >>>Cancelled >>>Complete (before credit note is raised)

>>>Closed (after credit note is raised)

What is order status when payment or credit is partially done?

If an order is cancelled when payment is partially received, the status changes to Complete immediately as if full payment is received.

If a Complete order is partially refunded, the status remains Complete. The status changes to Closed when customer is credited in full.

See table as summary

Payment is partially received >>>Complete (before credit note is raised)

>>>Complete (credit noted is raised but partially)

>>>Closed (after full refund)

Will inventory level reverse itself when an order is cancelled? It depends.

Reversal only happens if this order is not shipped AND payment is not received.

See table as summary

Order is not shipped

AND

payment is not received

Order is shipped

OR

payment is received

Inventory level Reversal No reversal on cancelling

Will inventory level reverse itself when an order is cancelled after it is partially fulfilled? And how much is the reversed inventory?

If an order is partially fulfilled (payment is partially received or shipment is partial), there are 3 types of quantity, Qty Ordered, Qty Invoiced, Qty Shipped, showing at order view. Then you click Cancel button, you get –

Qty Cancelled = Qty Ordered – max (Qty Invoiced, Qty Shipped)

Qty Cancelled is the quantity automatically reserved to inventory.

Leave a comment

Your email address will not be published. Required fields are marked *