Free gift with purchase after order cancellation

During the holidays our store offered a free gift on purchases over $x. However, customers that are canceling those orders are still getting the free gift. Is there a way to prevent this?

Hi @thisismyshopusername if you used an app for third party app issues contact that third party directly.

Cancelled orders shouldn’t be getting fulfilled, if you have some process whereby cancelled orders can still have fulfillments, etc etcet you are omitting a TON of detail others need to know to even guess as proper solutions.

Bare minimum trying using shopify-flow or the mechanic app to automate canceling orders, sending fulfillment notifications of cancelations, or even editing orders to remove the offending items.

@thisismyshopusername This is pretty normal behavior in Shopify once the order is placed, any free gift that was added is treated like a regular line item, so canceling part or all of the order doesn’t automatically remove it.

A few practical ways people usually handle this:

Manual check on cancellations: when an order is canceled or refunded, remove the free gift before restocking or fulfillment.

Fulfillment-based gifts: only include the gift at fulfillment time (not automatically added), so canceled orders never receive it.

App rules: some free-gift apps allow conditions like “remove gift if order is partially refunded” or “only add gift after payment is captured.”

Unfortunately there isn’t a native Shopify setting that handles this perfectly out of the box, so it usually comes down to process or app logic.

How are you currently adding the free gift automatically via an app, or manually at fulfillment?

we have just been managing it manually, i used the buy x get y discount type and instructed customers to make sure they added the free gift to their cart before purchase

@thisismyshopusername That explains it with Buy X Get Y and customers manually adding the gift, Shopify will always treat it like a normal product once the order is placed.

If you’re managing it manually, the cleanest options are:

Remove the free gift line item when processing cancellations or refunds (before fulfillment).

Only fulfill the gift after payment is captured, so it never ships on canceled orders.

If this is a recurring promo, consider an app that can auto-remove the gift when an order is refunded or partially refunded that takes the manual step away.

Unfortunately there isn’t a native way to fully automate this with Buy X Get Y alone, so what you’re doing now is pretty much how most stores handle it unless they use an app.

Is this a one-off promo, or something you plan to run regularly?

Hey @thisismyshopusername,

Flow can come handy in such situations and you dont really need any third party app or custom coding. I have attcahed the screenshot of the rules, couldn’t upload the flow directly here

Here’s what it does:

When an order is cancelled, the Flow checks if there are any $0 line items remaining. If yes, it:

  • Puts the order on hold

  • Tags it “Don’t Fulfill”

A few tips from experience:

  1. Add a notification step to alert your fulfillment team via email/Slack when this happens - makes it easier to catch and handle quickly.

  2. Consider your free gift logic: If you have multiple promotion types, you might need to refine the condition to check for specific SKUs or product titles instead of just $0 price.

Rather than creating the flow yourself, simply give sidekick the prompt “ Help me create a flow for my store with trigger as order cancelled, check if there is zero amount product or (if you have exact product handle add in here) in the order left after cancellation ,if yes then put it on hold and add a tag “Dont Fulfill“ and it will create the flow for you

Give it a try and please dont hesitate to reach out or shoot a DM if you need any assistance.

Cheers,
Shreya

Hi,

To avoid the situation where customers cancel their orders but still receive the free gift, you can use a gift-with-purchase app like BOGOS.

With BOGOS, the free gift is strictly linked to the qualifying product or order value. If the customer removes the main product or cancels the entire order, the free gift will be automatically removed as well.

This prevents customers from keeping the gift without completing the qualifying purchase and helps you control the promotion properly.