Why do my pickup and delayed orders keep getting the wrong shipping emails?
Shopify's shipping and delivery emails assume every order ships on a normal timeline, so pickup and delayed orders often trigger notifications that don't match what's actually happening. Here's how to stop the wrong ones without silencing emails customers still need.
What's going on
A merchant running local pickup, or fulfilling orders on a delayed timeline such as made-to-order, backorder, or restock-dependent items, keeps running into the same friction: Shopify's default notification emails assume a standard ship-and-arrive flow, so customers end up getting emails that don't match what's actually happening with their order. A pickup customer gets language about shipping and delivery; a delayed order triggers a shipping-style notification before anything has actually moved.
The underlying issue is that Shopify treats notifications as store-wide settings tied to fulfillment events, not as something that adapts automatically to your specific fulfillment model. If your store mixes shipping, pickup, and delayed fulfillment, the same notification settings apply across all of them unless you actively manage which emails go out for which orders.
This comes up often enough among merchants running nonstandard fulfillment setups that it's clearly not an edge case. Anyone combining pickup with shipping, or handling preorders and backorders alongside normal orders, tends to run into it within their first few weeks of mixed fulfillment.
Why it happens
Shopify's customer notification system is organized by event type, such as order confirmed, shipped, and delivered, rather than by fulfillment model. It doesn't automatically know that a delayed, made-to-order item should be communicated differently than a same-day shipment, or that a pickup order should never see shipping language at all. Those are handled as separate notification types, and mismatches usually mean an order got routed through the wrong fulfillment path rather than a notification bug.
Because most notification settings are store-wide rather than conditional on order tags, fulfillment location, or product type, merchants with a single uniform fulfillment model rarely notice the limitation. It only becomes a visible problem once a store runs multiple fulfillment models side by side and needs different notification behavior for each one.
5 ways to fix it
Turn off the specific notification types you don't want, not all of them
In your Shopify admin, go to Settings, then Notifications, then the customer notifications section. Each customer-facing notification type, including the shipping and delivery ones, has its own on/off toggle. If pickup or delayed orders are triggering shipping or delivery emails that don't match how you actually fulfill, turn those specific types off store-wide. This is free, native, and takes only a couple of minutes, but remember each toggle applies across your entire store, not to individual orders.
Deselect the per-order notification checkbox at fulfillment time
When you fulfill an order manually, Shopify shows a checkbox, worded something like 'send shipment details to your customer now' depending on the fulfillment flow, that you can deselect to suppress that one notification without changing any store-wide setting. This is the right tool when only some orders, such as local pickups or back-ordered items, need to skip an email while your normal shipped orders should still get one. The tradeoff is that it's manual and easy to forget during a busy fulfillment day.
Confirm pickup orders are actually routed as pickup, not shipping
Local pickup orders don't trigger shipping confirmation or delivery emails at all; they use a separate 'ready for pickup' style notification instead. If a pickup customer is getting an email that reads like a shipping notice, check whether that order is genuinely set up as a pickup fulfillment under your shipping and delivery settings, rather than being fulfilled through a shipping method by mistake. That kind of mismatch is a common source of confusing, out-of-place notification content.
Map your fulfillment paths against your notification types before changing anything
List every fulfillment path you actually use, such as standard shipping, local pickup, and delayed or backorder fulfillment, down one side, and every relevant notification type across the other. Mark which combinations should genuinely notify the customer. For stores with a mixed fulfillment model, this usually means suppressing a couple of notification types per path rather than reaching for one all-or-nothing switch, and it stops you from accidentally silencing an email that a different fulfillment path still needs.
Reach for Shopify Flow or a notification app only for logic native settings can't express
Native settings only let you turn a notification type fully on or off, or skip one email at fulfillment time. If you need conditional logic, such as suppressing shipping confirmation only for orders tagged as delayed while keeping it for everything else, that generally requires Shopify Flow to drive a custom notification workflow, a dedicated notification-management app, or, for Plus merchants, asking Shopify Support about disabling specific notifications. Try the free native options first and only add a tool here if your fulfillment mix genuinely needs conditional rules.
Bottom line
Most complaints about the wrong shipping or delivery email going out are solvable for free with the customer notification toggles and the per-order send checkbox at fulfillment time. The real work is mapping which of your fulfillment paths, standard shipping, pickup, or delayed, should own which notification, since Shopify's native controls are store-wide and coarse rather than per-order by default. If you run several fulfillment models at once and keep needing conditional logic the native settings can't express, that's when a purpose-built rules app or Shopify Flow earns its keep, but check the free toggles first.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.