WhatsApp Post-Purchase Playbook: 8 Flows for Repeat Customers

8 WhatsApp post-purchase flows that turn buyers into loyal customers: confirmation, shipping, delivery, review, cross-sell, win-back. With templates.
Table of contents (13)
The order confirmation page is the most expensive real estate in your Shopify store. You paid Meta or Google to acquire that buyer, you paid for inventory, fulfillment, and customer support, and the moment they hit "place order" most brands stop talking to them until the next sale. That gap is where repeat revenue is won or lost.
WhatsApp post-purchase flows fix that gap. They run silently from order confirmation through delivery, review, replenishment, and eventual win-back, triggered by your Shopify events in Kanal. This playbook breaks down the 8 flows that matter, with the trigger logic, message templates, and Shopify webhook setup that make them work in 2026.
Why post-purchase is where WhatsApp builds LTV

WhatsApp shifts the leverage compared to email and SMS. On email and SMS, the playbook centers on acquisition flows (welcome, browse abandonment, cart abandonment) because attention is scarce and you compete with every other sender in the inbox. On WhatsApp, acquisition flows still matter, but post-purchase flows start with an advantage: the customer trust threshold has already been crossed.
When a customer hands you their phone number at checkout and opts into WhatsApp updates, they are signaling something different from an email subscriber. They are giving you access to their most personal channel, the one they use for family and close friends. That trust transfers to every post-purchase message. Check it in your own reports: compare the read rate of your transactional and marketing templates in the 30 days after purchase.
When you run a complete post-purchase flow on Kanal, track three compounding effects: first-order to second-order conversion within 90 days, average order value on the second purchase, and 60-day retention. Measure them against a holdout group that does not receive the flows, to isolate what the 8 flows below add.
The economics: 1 post-purchase WhatsApp = $X in repeat revenue
There is no public benchmark for the repeat revenue a post-purchase WhatsApp flow generates per recipient, so the number that matters is the one you compute for your own store. The math is worth doing before you build, because it tells you how aggressively to invest in setup.
Take a worked example, with assumptions you should replace with your own numbers: a Shopify store doing 1,000 orders per month with an average order value of $80 and a 23% 90-day repeat rate. Assume a complete post-purchase WhatsApp flow lifts the repeat rate to 34%: an incremental 110 orders per month. At a contribution margin of 35%, those 110 orders generate $3,080 in monthly contribution profit, against a WhatsApp messaging cost of roughly $180-$420 depending on market.
In this example, the flow returns 7 to 17 times its messaging cost, before you count cross-sell inside the confirmation message, replenishment subscriptions, or VIP conversion. Redo the calculation with your own order volume, margin and the lift you measure against your holdout group: if the result does not cover your messaging and setup costs, fix the flows before you scale them.
The 8 flows below are ordered by the moment they trigger in the customer journey, from checkout to win-back. Build them in this order. Skipping ahead breaks the flow logic and degrades message quality, which Meta penalizes with delivery throttling.
Flow 1: Order confirmation (with smart cross-sell)
The order confirmation is the message your customer is waiting for: they have just paid and want proof that the order went through. Three things have to happen in this message, in this order: transactional confirmation, expectation setting, and a soft cross-sell that does not violate Meta's utility template rules.
Trigger: Shopify orders/create webhook fires the WhatsApp utility template within 60 seconds of checkout. Use a utility template category to qualify for utility pricing, which is lower than marketing pricing. Keep the message under 1024 characters total to stay inside Meta's template limits.
Template structure:
- Header: "Order confirmed, {{first_name}}"
- Body: order number, 1-3 items with quantities, total amount, estimated delivery window
- Soft cross-sell line: "Customers who ordered {{product_name}} often add {{recommendation_1}} or {{recommendation_2}}"
- CTA button: "Track your order" (deep link to Shopify order status page)
- Secondary button: "Add to my order" (link to a Shopify cart with the cross-sell SKU pre-filled)
The "Add to my order" mechanic only works if your fulfillment SLA is more than 4 hours. Stores running same-day shipping skip this button and replace it with "Save for next time" linking to a saved-products page. Track the cross-sell attach rate of this button separately from the recommendation line in the body, so you know which element actually drives the add-ons.
Internal resources: read the complete WhatsApp Business API guide for the technical setup, and the WhatsApp templates guide for the exact category rules around utility vs marketing classification.
Flow 2: Shipping notification (transactional + soft pitch)
Trigger: Shopify fulfillments/create webhook, fired when the warehouse marks the order as shipped. Send the WhatsApp message within 5 minutes of the fulfillment event. Track the read rate and the click rate on the tracking link.
Customers actively want this message. The pitch has to stay subtle: deliver the tracking number, the carrier name, and the new ETA, then layer in one strategic element below the fold.
Template body example: "Your order #{{order_number}} just shipped via {{carrier}}. Track it here: {{tracking_url}}. Estimated delivery: {{eta}}. While you wait, here's our most-loved bundle from people who ordered like you: {{bundle_link}}."
The bundle link should point to a curated collection page, not a single product, because the customer is in a "complete the set" mindset rather than a "single buy" mindset at this stage. Measure the incremental orders from the shipping notification and their average order value against the original order: this is where complementary SKUs show up.
For brands shipping internationally, segment the shipping notification by destination country and adjust the ETA copy, and factor in the EU customs duty rules for 2026 if you ship into Europe: a customer in France ordering from a US store has different expectations than a domestic US buyer. Run two parallel templates if you have material international volume.
Flow 3: Delivery confirmation + Photo proof request

Trigger: carrier delivery confirmation webhook (Shopify ships native events for most US/EU carriers, otherwise relay via a carrier API). Send within 30 minutes of delivery.
This flow has two jobs: confirm the delivery and pre-empt support tickets, and capture user-generated content for retargeting and reviews. Run them as a single message with a fork.
Template structure:
- Header: "{{first_name}}, your order just arrived"
- Body: "Hope you love it. Tap below to let us know how the unboxing went, or send us a photo if you want a chance to be featured on our channels."
- CTA 1: "Got it, all good" (acknowledges delivery, ends the flow for this leg)
- CTA 2: "Send a photo" (opens a WhatsApp message thread for UGC capture)
- CTA 3: "Something's wrong" (routes to support agent or chatbot triage)
Track the "Send a photo" tap rate and compare the cost per photo with your other UGC sources: the request adds no extra message, because it rides on a delivery notification the customer was going to receive anyway. For beauty-specific post-purchase templates, see our WhatsApp marketing guide for beauty brands.
The "Something's wrong" branch is the most important from a unit economics standpoint. Resolving an issue on WhatsApp in real time gives you a chance to fix it before it turns into a refund request, and a Gorgias-based escalation flow keeps it manageable as order volume grows.
Flow 4: Review request (the 4-day sweet spot)
Trigger: 4 days after delivery confirmation, sent as a marketing template (Meta classification). This flow is easy to over-engineer. Done right it generates reviews. Done wrong it generates unsubscribes.
Why 4 days: under 2 days the customer reviews the packaging and shipping speed, not the product. Over 7 days, the unboxing dopamine has faded and the request lands as an afterthought. Day 4 is a good starting point: the product has been used 1-3 times, the experience is fresh, and the customer is still emotionally engaged. Test the delay against your own review rate, since the right day depends on the product.
Template structure:
- Personalization: use first name and the specific product purchased, not a generic "your recent order"
- One question only: "How are you finding the {{product_name}}? 1 to 5?"
- Quick reply buttons: 1, 2, 3, 4, 5
- Conditional follow-up: if 4 or 5, route to a public review platform (Trustpilot, Loox, Judge.me) via a deep link. If 1, 2, or 3, route to a support agent for issue resolution before any review platform request.
That fork is non-negotiable. Asking unhappy customers to leave a public review is how brands tank their Trustpilot score. Routing them to support first gives you a chance to fix the issue, and a customer whose problem was solved may come back to leave a positive review on their own.
Featured app: Reviewz.ai collects Trustpilot reviews on autopilot via email, SMS, and WhatsApp. Multichannel review requests with native Shopify event triggers.
Flow 5: Refill / replenishment reminder (subscription-style)
Trigger: time-based, calculated from the product's consumption window. A 50ml moisturizer with 6-week consumption ships a refill nudge at week 5. A 30-day supplement ships at day 25. Track the reorder rate per product.
Replenishment is the highest-margin flow in the whole playbook because the customer is converting at the lowest possible CAC: zero. You already paid acquisition cost on the first order. The refill is pure margin.
Template structure:
- Header: "Running low on {{product_name}}?"
- Body: "It's been {{days_since_last_order}} days. Based on how you used it last time, you're probably down to your last week. Refill in one tap and we'll ship today."
- CTA 1: "Refill now" (Shopify cart pre-filled with the SKU)
- CTA 2: "Switch to auto-refill" (subscription product, if you have one)
- CTA 3: "Not yet, remind me in 2 weeks"
The "auto-refill" CTA is a strong LTV lever in the post-purchase playbook: a customer who switches from one-time purchases to a subscription no longer depends on your reminders to reorder. Track the subscription conversion rate on the refill message, and compare the lifetime of those subscribers with one-time buyers in your own data.
For Shopify stores not yet running subscriptions, the refill mechanic via the conversational commerce framework works as a manual one-tap reorder. Track its reorder rate the same way.
Flow 6: First-time vs repeat buyer paths
Day 7 after delivery is the decision branch. By this point you know whether the customer has placed a second order or not. The flow has to fork based on that signal because the message that converts a first-time buyer into a second-time buyer is completely different from the message that nurtures a repeat buyer toward VIP.
First-time buyer (no second order at day 7):
- Send a "second order incentive" marketing template
- Offer: 10-15% off the second order, valid for 14 days
- Include a curated 3-SKU recommendation based on the first purchase category
- CTA: deep link to a pre-filled cart with the recommendation
Repeat buyer (one or more reorders inside the 7-day window):
- Send a "thank you for coming back" relationship message, no discount
- Include a "behind the scenes" piece of content (founder note, product story, factory video)
- Tease the VIP program (see Flow 7) without yet asking them to join
This fork is the difference between training your customers to wait for discounts (the email marketing trap) and training them to value the relationship. Discount-led repeat flows on email destroy margin. WhatsApp lets you discount only the customers who actually need the nudge, while running relationship-first messaging on the customers who are already converting organically.
Measure the two branches differently. For the first-time buyer incentive, track the second-order conversion rate within the 14-day validity. The relationship message to repeat buyers is not meant to drive a single-order spike: judge it on 90-day retention against a holdout group of repeat buyers who did not receive it.
Flow 7: VIP upgrade invitation (link to the Loyalty article)
Trigger: customer crosses one of three thresholds: 3 total orders, or $300 lifetime spend, or 90 days since first order with active engagement. Whichever fires first, send the VIP upgrade invitation.
This message is short and high-leverage. The full mechanic of a VIP program lives in the WhatsApp loyalty VIP program guide, which covers the tier design, perks, and 14-day rollout timeline.
Template:
- Header: "{{first_name}}, you're invited"
- Body: "You're in the top 8% of our customers. We just opened our VIP circle and you're on the list. Early access to drops 24h before public, members-only product line, and a direct line to me for anything you need. Want in?"
- CTA 1: "I'm in"
- CTA 2: "Tell me more" (deep link to a VIP program landing page)
- CTA 3: "Not now"
Track the acceptance rate on this invitation, and compare it with an email version if you run one. The case for WhatsApp is the channel: a personal WhatsApp message from a brand the customer already trusts feels like an actual invitation, not a transactional drip. For more campaign ideas to adapt, see our WhatsApp marketing examples.
Once accepted, the VIP customer enters the loyalty program flow, which runs independently from the post-purchase playbook and is covered in the dedicated guide.
Flow 8: Win-back at day 90 / 180
Trigger: customer has been silent (no order, no message reply, no link click) for 90 days. Send a soft win-back. If no response at 90, escalate at day 180 with a harder offer.
Day 90 win-back:
- Soft, relationship-led, no discount
- "We miss you. Here's what's new since you last shopped." (deep link to new arrivals)
Day 180 win-back:
- Hard offer, time-bound, 20-25% off
- "Last time we'll reach out. Here's 25% off, valid 48h. After that we'll quietly remove you from our list."
- For customers who do not convert, suppress from future broadcasts to protect message quality rating
The key element of the day-180 message is the suppression promise. Telling the customer you will remove them if they do not respond does two things: it triggers loss aversion, and it filters the list. Customers who do not convert get cleanly removed, which protects your Meta quality rating for the rest of the list.
For deeper win-back mechanics, the abandoned cart recovery strategies guide covers many of the same psychological principles applied to a different stage. Both flows share the same underlying logic: scarcity, personalization, and a clean exit.
Setup: connect Shopify webhooks to each flow trigger
The 8 flows above all depend on Shopify webhook events firing reliably and routing to WhatsApp templates with the right variables. Here is the minimum setup checklist.
- Shopify admin: Settings, Notifications, Webhooks. Enable
orders/create,orders/paid,fulfillments/create,fulfillments/update. Point them at your WhatsApp provider's webhook endpoint. - WhatsApp Business API: get approved on Meta Business Manager. Use a WhatsApp Business API provider like Kanal that handles the BSP integration, template submission, and Shopify webhook routing in one stack.
- Template approval: submit utility templates (confirm, ship, deliver, review) under utility category, and marketing templates (cross-sell, replenishment, win-back) under marketing category. Wait 24-48h for Meta approval.
- Variable mapping: each Shopify order field maps to a template variable. Order number, customer name, product names, SKUs, totals, tracking URL, ETA. Document the mapping in a single source of truth.
- Quality monitoring: track template-level open rate, click rate, and unsubscribe rate weekly. If a template's open rate falls well below your other templates or its unsubscribe rate climbs, rewrite and resubmit. Meta's quality rating directly affects long-term delivery.
The Shopify integration page covers the technical setup in detail, and the Kanal demo walks through a complete post-purchase flow stack live.
Conclusion
The 8 flows above are not optional. A Shopify store running paid acquisition without a post-purchase WhatsApp flow stops talking to its buyers right after paying to acquire them. The first flow you build, the order confirmation, is the simplest to set up and to measure. The last flow, the day-180 win-back, closes the loop with customers who went quiet.
Start with flow 1 today. Add flows 2 and 3 in week 1. Layer in 4, 5, and 6 across weeks 2-3. Add 7 and 8 by week 4. Inside 30 days you have a complete post-purchase machine running silently while you focus on acquisition.
Ready to build this on your Shopify store? Book a demo with Kanal and we will walk through the exact flow stack for your category, your AOV, and your fulfillment model. The Shopify app installs in under 10 minutes.
Resources
- Complete WhatsApp Business API guide
- Best WhatsApp apps for Shopify
- WhatsApp marketing for e-commerce
- WhatsApp broadcast guide
- WhatsApp Business pricing guide
- WhatsApp templates guide
- Abandoned cart recovery strategies
- Conversational commerce guide
- WhatsApp chatbot for e-commerce
- ROI of WhatsApp marketing KPIs
- WhatsApp marketing examples and campaign ideas
- WhatsApp loyalty VIP program
- WhatsApp link generator
- WhatsApp QR code generator
- ROAS break-even calculator
- Shopify BFCM benchmarks
- Meta WhatsApp Business Platform
Frequently asked questions
When should I send the first post-purchase WhatsApp?
Send the order confirmation within 60 seconds of checkout, triggered by the Shopify `orders/create` webhook. Anything later than 5 minutes feels detached. The customer has just paid and is waiting for proof that the order went through, so the confirmation sets the tone for everything that follows.
Are post-purchase messages free on WhatsApp Business API?
Transactional updates sent inside the 24-hour customer service window are free in most markets under Meta's 2024-2025 pricing rework, as long as they reply to a customer-initiated message or fall under the utility template category. Order confirmations, shipping updates and delivery notifications are utility messages and qualify for utility-tier pricing, which is lower than marketing-template pricing.
Should I cross-sell in the order confirmation?
Yes, but soft. The confirmation message has to deliver the transactional value first (order number, items, total, ETA). One subtle line at the bottom like "frequently bought with your order" with two SKUs is enough, and it keeps the message useful rather than promotional. Hard discounts in a utility template can get the template rejected by Meta.
What is the best time to send a review request on WhatsApp?
Around 4 days after delivery is a good starting point. The product has been used 1-3 times, the experience is fresh, and the customer is past the unboxing dopamine but not yet bored. Earlier than 2 days the review will be about packaging; later than 7 the request feels like an afterthought. Test the delay against your own review rate.
How long should a post-purchase flow last?
A complete post-purchase flow runs 90 to 180 days, from order confirmation to the first win-back attempt. The first 14 days carry the transactional messages (confirm, ship, deliver, review). Days 14-90 carry replenishment and cross-sell. Days 90-180 are reserved for VIP upgrades and win-back. Stopping the flow at delivery leaves the replenishment, cross-sell and win-back stages unused.
Nicolas helps e-commerce brands grow revenue with WhatsApp marketing. With deep expertise in Shopify ecosystems and conversational commerce, he shares proven strategies for abandoned cart recovery, broadcast campaigns, and AI-powered customer engagement.
Ready to boost your WhatsApp sales?
Glossary terms in this article
Quick definitions for the WhatsApp Business terms used above.
WhatsApp Flows
WhatsApp Flows is a feature for building structured, multi-step experiences inside a chat, such as forms, surveys, bookings, and guided product selection.
Read full definitionMessage Template
A message template is a pre-formatted message that a business submits to WhatsApp for approval, then uses to start conversations or message customers outside the 24-hour window.
Read full definitionWebhook
A webhook is an automatic notification WhatsApp sends to a business application whenever an event happens, such as an incoming message or a delivery status update.
Read full definitionAbandoned Cart Recovery
Abandoned cart recovery is the practice of messaging shoppers who added items to their cart but left without buying, to encourage them to complete the purchase.
Read full definitionMarketing Template
A marketing template is a message template categorized as promotional, used for offers, product launches, and campaigns. It requires opt-in and is the most heavily reviewed template category.
Read full definitionUtility Template
A utility template is a message template that delivers information tied to a specific transaction or account, such as order confirmations, shipping updates, and appointment reminders.
Read full definitionBroadcast
A broadcast is a message sent to many WhatsApp contacts at once, typically a marketing campaign delivered to a segment of opted-in customers.
Read full definitionQuality Rating
The quality rating is a score WhatsApp assigns to a business phone number based on recent customer feedback, mainly blocks and reports. It influences messaging limits.
Read full definitionWhatsApp Business API
The WhatsApp Business API is the programmatic interface that lets medium and large businesses send and receive WhatsApp messages at scale, without using a phone or the chat app.
Read full definitionBusiness Solution Provider (BSP)
A Business Solution Provider (BSP) is a Meta-approved company that gives businesses access to the WhatsApp Business Platform, usually through a dashboard built on top of the API.
Read full definitionSuggested articles

WhatsApp Marketing for Subscription Boxes: Retention Playbook
WhatsApp playbook for subscription box Shopify brands: 10 templates, churn intercept, tier upgrades, Recharge and Bold integration, and what to measure.

WhatsApp Loyalty Program: Build a VIP Tier in 14 Days (2026)
Build a WhatsApp VIP loyalty program for your Shopify store in 14 days: tier design, early access, member perks, message templates and a rollout plan.

Ecommerce Marketing Automation: A Practical Guide for Shopify Stores (2026)
Ecommerce marketing automation explained: how flows work, the 10 flows every online store needs, email vs SMS vs WhatsApp, and how to set it up on Shopify.

50+ WhatsApp Message Templates for Ecommerce: Copy and Paste (2026)
53 WhatsApp message templates ready to copy and paste: abandoned cart, order updates, review requests, winback and promos. With Meta categories.