On March 1st, Shopify will prevent cancellations of fulfilled or partially fulfilled orders.
Post-fulfillment order cancellations are rare and can lead to confusing fulfillment states and discrepancies in reporting. Thus, attempting to cancel a fulfilled or partially fulfilled order using the Orders API cancel endpoint will return an error.
If you have any questions, concerns, or a specific use case that will be impacted by this change, don't hesitate to reach out in the thread below!
This actually makes a lot of sense though. For example, in my store it's used for when a customer wants a refund and still keeps the product (ie. it was damaged, but okay with damaged product). We use the cancel event to keep track for royalty payments.
And for partially fulfilled orders it's even more sensical, as it could be a long standing order where a customer got items available now and then later will get items in backorder. The customer could cancel the order between the two fulfillments, and get a refund of the remaining items.
This change actually throws us off. We have a Cash on Delivery payment method and when the customer refuses the order, even after it has been fulfilled, we would cancel the order so that it won't show up in our data, its makred as returned, and we can keep track of that info.
Now once the order is fulfilled, we cannot cancel it, what do you suggest I do to remedy this situation?