Playbook · WISMO email not sending

WISMO / shipping email not sending — Shopify notifications or Klaviyo, after you already think it is on.

Written for a Shopify DTC owner who already pays for Shopify notifications or Klaviyo, fulfilled an order (or thought they did), waited, and the customer still has no shipping or order-status email. This is a missing-mail playbook, not a WISMO-volume rewrite. Native tools first. Honest limits. No ticket-cut number, no recovered-revenue claim, no invented case studies.

Nico at Latch AI Ops · Sep 1, 2026 · ~10 minute read

Buy the 72-hour install — $997WISMO playbookRepetitive supportKlaviyo + ShopifyMerchant FAQ

01

Missing is not late, copy, or WISMO volume.

If the shipping or order-status email never arrived, do not start inside the template. Late, duplicate, and missing are three different bugs. The longer playbook for handling the inbox once the mail exists is the WISMO playbook. If the mail exists and the same question still loops, that is repetitive support. This page is only the case where nothing sent.

Six ordinary reasons a Shopify store sends nothing: notification templates disabled, fulfillment never marked, Klaviyo metric not firing, the customer already got native Shopify mail so the flow skipped, you tested with an admin order, or BCC/spam hid the send. Walk them in that order. You already have an ESP or native notifications. You do not need a third shipping-app to find a toggle.

02

Notification templates are disabled.

Shopify’s own shipping mail lives under Settings → Notifications → Customer notifications, not in the marketing app you opened first. Open Shipping confirmation. Confirm it is on. Then Shipping update, Out for delivery, and Delivered if those are supposed to fire. The wording moves around. The on/off control is still there. If it is off, native mail will not send. No amount of template editing changes that.

Order confirmation is a different email. A customer who got “thanks, we got it” and then silence is the usual WISMO trigger. That is not proof shipping confirmation is on. Check the shipping templates, not the order confirmation you already tested on day one.

Decide who owns the event. If Klaviyo is supposed to send shipping and order-status mail, leave native off on purpose — and prove Klaviyo is live. If Klaviyo is a draft, turn native on so something actually fires. One owner. Two systems both off is the gap that looks like “Shopify is broken.” Overlap between Shopify notifications and Klaviyo is a different page: Klaviyo + Shopify notifications. Here the failure is silence.

03

Fulfillment was never marked.

Shopify sends a shipping confirmation when an order is fulfilled in Shopify, not when a box leaves the building in your head. Open the order. If status is still Unfulfilled, native shipping mail has nothing to fire on. Buying a label in Pirate Ship, ShipStation, or a 3PL portal that does not write tracking back to Shopify is not a fulfillment. The order stays open. The customer stays silent until they write “where is my order?”

Partial fulfillments only notify for the line items you actually fulfilled. A split shipment that never got the second fulfill looks like “they never got the email” when they got one for SKU A and nothing for SKU B. Check which items are fulfilled, not whether you taped a box.

If fulfillment is a 3PL, confirm tracking writes back to the Shopify order on the same day you ship. If it does not, the status page is blank and the shipping email never exists. That is a connection job, not a copy job. The DIY version of alerts for orders that sit unfulfilled lives in the WISMO playbook.

04

The Klaviyo metric is not firing.

Open Flows. Find anything named shipped, fulfilled, order status, tracking, or WISMO. Read the trigger, not the name. A flow titled “Shipping confirmation” that listens to Placed Order is waiting on checkout, not fulfillment. Fulfilled Order / Shopify Fulfilled Order is the usual shipping metric. Placed Order is the receipt. Checkout Started is earlier still. The wrong metric looks like a dead sequence, or it sends “your order is on the way” before a label exists — which creates WISMO, it does not prevent it.

Then read the status. Draft does not send. Manual does not send to a real customer who paid at 2pm. Live is the only status that counts. A Sunday setup that never hit Live is the most common “Klaviyo is not sending shipping mail” ticket. The canvas looks finished. The metric looks right. Nobody pressed Live.

Confirm the metric actually arrives on a profile. Open a real customer who just got fulfilled → activity. If Fulfilled Order is missing, the Shopify integration is not passing fulfillment, or the fulfill never happened in Shopify. Fix the event before you rebuild the email. Integration notes sit in Klaviyo + Shopify notifications.

05

They already got native mail, so the flow skipped.

ESPs try not to email the same person the same message twice. If Shopify native already sent Shipping confirmation, a Klaviyo “order shipped” flow with smart sending, “has received email in the last X days,” or a “Shopify already notified” filter will skip. That is useful until you are debugging Klaviyo and the skip is the whole story. The customer got mail. Your Klaviyo analytics say zero. You declare Klaviyo broken.

Open the profile → activity / skipped. “Smart Sending,” “duplicate,” “already in flow,” or “unsubscribed” is the answer. Then decide one owner. If native Shopify is the shipping email, turn the Klaviyo shipping flow off — or keep Klaviyo and turn native shipping confirmation off. Two systems on the same fulfill is how a customer gets two tracking emails, or none, if both back off.

Same for a customer who already opened the order status page or the Shop app. Some flows skip “has viewed order status.” That is not a missing-mail bug. Look at the skip reason before you rebuild the canvas.

06

You tested with an admin order.

An order created in Shopify admin, a draft order you marked paid, a $0 test, or a fulfill while you are logged into a staff account is not a customer order. Shopify and Klaviyo both treat some of those as internal. The shipping event never qualifies. Your inbox stays empty. The template looks “broken.”

Test from a real paid order to an email you control that is not the store owner address if that profile is excluded. Place it on a phone that is not logged into admin. Fulfill it in Shopify with a real tracking number. Then look at the inbox, the spam folder, and — if Klaviyo owns it — the flow analytics / profile activity. Preview / “send test email” from the template editor only proves the template can render. A test send is not a fulfillment event.

POS, Shop Pay, and draft-order checkouts also skip some notification paths. If your only test was a draft you marked fulfilled, you tested the skip, not the send.

07

BCC is not a send, and spam hid the rest.

Shopify lets you BCC the store on customer notifications. BCC is a copy to you. It is not proof the customer received anything, and it is not a replacement for the customer send. If you turned the customer template off and left BCC on, you will see mail in the owner inbox and the customer will not. That looks like “it sends for me.” It does not.

Then check spam. Shipping mail with a tracking URL, a new sending domain, or a Klaviyo flow that never warmed will land in junk. Ask the customer to search the order number, not “did you get an email.” Look at Shopify’s notification log / timeline on the order, or Klaviyo’s sent/bounced/skipped. Bounce, suppressed, unsubscribed, and “marked as spam” are different from never queued.

A custom “from” address that is not authenticated (SPF/DKIM) is a spam problem, not a template problem. Fix DNS or send from the Shopify/Klaviyo default until the domain is signed. Do not buy a new shipping app to move the same unauthenticated from-address.

08

When to stay DIY vs pay $997.

Stay DIY if you can spend one afternoon on the list above: templates on, a real fulfill in Shopify, Klaviyo metric and Live status, one-owner so native does not skip the flow, a phone test off admin, BCC vs customer send, spam and the order timeline. Send one real shipping confirmation. Click the tracking link. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Once mail exists and the same question still loops, use the repetitive-support playbook.

Pay for help when the work is not the email template — it is connecting the stack you already have so shipping mail is one live workflow instead of a draft in Klaviyo plus a native toggle you forgot, exceptions show up in a channel you already check, and lead capture is not dying in DMs. That is the Latch AI Ops install.

What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not a Klaviyo rebuild, not a Gorgias implementation, not a support VA, not a brand or theme job.

Other shops’ public ranges, not testimonials: a Shopify Flow or notification-app install typically runs $500–$2,500. A Klaviyo-only flow rebuild typically runs $2,000–$5,000. Dedicated Gorgias implementation shops start around $3,750. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as a ticket-cut or recovered-revenue number.

What it does not buy: fewer WISMO tickets as a guarantee, recovered checkout revenue, a lift in conversion, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.

Checkout is on Whop. Operator is Nico. United States offer. You can revoke collaborator access after handoff. We do not take owner passwords.