Can Shopify cancel one vendor item without canceling the whole order?

Hello everyone,

I hope you are all doing well.

I’m currently working on a multi-vendor Shopify app using Remix and the Shopify API. In the app, I have implemented functionality for adding, updating, and deleting products, as well as order cancellation, fulfillment, and unfulfillment.

However, I am facing an issue with partial order cancellation.

For example, if a customer purchases products from two different vendors (Vendor A and Vendor B) in a single order, and Vendor A does not have the product in stock and cancels their item, the entire order gets canceled, including Vendor B’s item.

What I want instead is:

  • Only Vendor A’s item should be canceled.

  • Vendor B’s item should remain active so that it can still be fulfilled.

I’m trying to figure out the correct way to handle partial order cancellation or archiving for a single vendor’s items without affecting the rest of the order.

If anyone has experience handling multi-vendor order management in Shopify apps or implementing partial cancellations, I would appreciate any guidance or suggestions.

Thank you!

Yeah, if you use the standard order cancel mutation, it nukes the whole order. You can’t cancel just one line item that way.

To do partial cancellations, you actually need to use the Order Edit GraphQL mutations (orderEditBegin, orderEditSetQuantity, orderEditCommit). Basically, you edit the order to reduce Vendor A’s out-of-stock item quantity to zero.

Alternatively, you can use the refundCreate mutation to just refund Vendor A’s specific line item. It’ll mark that part of the order as refunded and remove it from the unfulfilled list, leaving Vendor B’s items totally fine and ready for fulfillment. I usually go the refund route for multi-vendor setups since it handles the financials cleanly at the same time.

Thank you very much its help me a lot