October 23, 2026 • 17 min read

Post-Purchase Email for Dropshippers: 6 Emails to Send

A delivery-timed six-email sequence gives supplier-fulfilled stores triggers and stop rules for confirmation, delay, check-in, review, cross-sell, and refund messages.

A post-purchase email for a supplier-fulfilled order should follow a delivery event or promised window after the confirmation. This 6-email map uses the supplier's dispatch and tracking events because the supplier controls when the parcel moves.

I've lowered my own chargeback rate by fixing the billing descriptor on my Shopify stores. That experience is why the confirmation and refund examples below name the statement descriptor.

Customers who don't recognize a charge or can't find a parcel may contact their bank first. Clear post-purchase emails send them to support with the order details.

Key takeaways

  1. After confirmation, time each email from delivery or the promised window.
  2. Build the delivery window from 3 inputs, including dispatch, transit, and buffer.
  3. Offer late buyers a revised ship date and refund choice.
  4. Keep coupons and cross-sells out of transactional order emails.
  5. Build the first 3 emails as confirmation, delivery check-in, and delay notice.

Once your promised window and refund path are defined, our Numbers Breakdown calculator helps you check what delays, refunds, and support leave in the order economics.

What is a post-purchase email?

A post-purchase email is an automated message sent after a customer pays. An order event such as placement, fulfillment, delivery, or refund triggers it. Klaviyo defines post-purchase flows as messages that send after a purchase. The event you choose decides when the email arrives.

A scheduled ecommerce newsletter goes to a selected list instead. Shopify already handles order confirmations and several shipping updates. Audit the notices enabled in Shopify before adding a separate flow, then fill only the missing jobs.

Why delivery, not checkout, starts the clock

Delivery-based timing waits for the event an email describes. Checkout-based timing can send reviews and offers before the order arrives. The store sees payment right away, but fulfillment depends on someone marking the order and delivery depends on a supported carrier. Between those events, the store may receive no reliable parcel update.

Imagine your supplier states three business days to dispatch. The carrier quotes 10 to 20 business days in transit. A review request on business day seven arrives before the earliest possible delivery on day 13.

It's far too early for an order that may arrive on day 23. Dispatch and transit are also the key inputs for fulfilling dropshipping orders. The email should wait for delivery or the end of the promised window.

‍

Checkout timing can work when dispatch happens the same day and transit takes only a few days. Longer or less certain waits raise the chance that an email will get ahead of the parcel.

Pick a delivery trigger your store can see

Choose the latest reliable event your store receives. Prefer Delivered Shipment, then Fulfilled Order plus a timed wait, and reserve Placed Order for confirmation. A Klaviyo metric-triggered flow can use its Shopify event reference. Fulfilled Order means Shopify marked the order fulfilled, while Delivered Shipment means a fulfillment's shipping status became delivered.

The practical hierarchy is:

SignalWhat it meansKlaviyo metricUse it forLimit
Delivered statusShopify received a delivered statusDelivered ShipmentCheck-in, review, cross-sellAvailable only for certain carriers
Fulfilled status plus waitShopify marked fulfillment, then your full window passesFulfilled OrderFallback check-in, review, cross-sellFulfilled can precede carrier possession
Order placedPayment created the orderPlaced OrderConfirmation and late-dispatch checkPayment only, parcel movement unknown

‍

Klaviyo receives delivery events only when Shopify has them. Shopify limits those events to certain carriers. A carrier-acceptance scan shows possession more reliably than a label-created status. A delivered scan should trigger a check that the customer found the package.

Shopify's customer-notification guide covers order, refund, and shipping notices. Staff can suppress several during the related admin action.

Shopify also lists the email variables available to those templates.

That overlap is why a new flow should fill a gap.

Shopify's marketing automation guide includes thank-you, first-purchase upsell, and win-back templates. Its thank-you template follows the first two purchases before delivery is known.

Treat the supplier app's fulfillment time as unknown because the platforms leave that timing to the app. It may mark fulfillment at handoff, label creation, or another step. Run one test order through the actual supplier and carrier. Trust the fallback only after its event time matches the parcel's real handoff. When Shopify lacks a dependable delivered event, use the end of the customer-facing window.

Build the Delivery-Clock Email Map

The six-email post-purchase map ties each message to an order event, its timing, and a condition that stops the send. The sections below supply the copy and the matching suppression rule. The U.S. delay notice uses four current authorities:

  1. Governing CFR text
  2. FTC business guidance
  3. FTC rule status
  4. Final internet-order amendment

The six emails are grouped by their role in the order lifecycle:

  1. Order confirmation: Set the delivery window before expectations harden.
  2. Delay notice: Give a late buyer a revised ship date and choice.
  3. Delivery check-in: Ask whether the complete order arrived.
  4. Review request: Wait until the buyer can judge the product.
  5. Cross-sell: Offer one related item after a clean delivery.
  6. Refund confirmation: Record what was returned and when.

The numbering organizes the copy examples, while the build order appears later. Start with the confirmation because every later message depends on the promise it makes.

1. Order confirmation with a delivery window

Send the order confirmation immediately with a date range built from dispatch, transit, and your own delay buffer. It fits every supplier-fulfilled order but fails when it promises one fixed date or includes promotional copy.

Build the range from three inputs:

  1. Add maximum dispatch time to the fast transit estimate for the earliest promised arrival.
  2. Add maximum dispatch, slow transit, and a measured buffer for the latest arrival.
  3. Select the largest recent overrun as the buffer, or run a test order when order history is unavailable.

The timing example above produced a window of business day 13 through 23. If your slowest recent order ran four days late, extend the promised end to business day 27. Convert both offsets to calendar dates.

Shopify can add fulfillment and transit time to show a date range through its manual delivery-date settings. Third-party dropshipping apps fall outside that feature. Those stores can put the range in the shipping rate name because shipping_method.title prints in the notice.

Baymard found that 48% of benchmarked sites still show delivery speed instead of a date. The confirmation should state calendar dates.

A transactional message contains information tied to the customer's action. Reserve it for order details, the support route, and the statement name the buyer will see. Put coupons, unrelated products, newsletter sign-ups, and marketing prompts in a consented marketing email.

Insert order data into this structure:

Confirmation example

Subject: Order 1042 confirmed | expected [date] to [date]

Preview: Your order is confirmed, and we'll email when its status changes.

Hi [first name],

We've received order 1042. Your current delivery window is [earliest date] to [latest date]. We'll send your tracking details after the supplier dispatches it.

The charge will appear as [statement name]. Reply to this email or contact [support route] if anything looks wrong.

Thank you, [store name]

‍

The window leaves supplier timing unchanged. Later emails and support replies can check the order against the promised date. Save the checkout date in order metadata that your tested integration exposes so later messages use the original promise after supplier settings change.

2. Delay notice with a cancel option

Send a delay notice when the supplier misses the promised ship time. Offer the buyer a clear wait-or-cancel choice. This notice belongs before shipment. An in-window carrier delay needs a shipping update.

For a Klaviyo flow, start at Placed Order. Wait through the stated dispatch maximum. Then use the flow-filter pattern for zero Fulfilled Order events since the flow began. Test it with an order because your supplier app decides when fulfillment appears.

Under the U.S. FTC merchandise rule, a seller needs a sound basis for its stated ship time. The default is 30 days when the seller omits one, and a late seller must offer a wait-or-cancel choice.

The notice needs a new ship date or an admission that none can be given, plus the cancellation route and refund right. The seller remains responsible when a drop shipper fills the order. This rule covers U.S. shipment timing, so seek legal advice for your own store and facts.

Include four notice elements:

  1. Identify the affected order and unshipped item.
  2. Give the revised ship date or state that a revised date is unavailable.
  3. Let the buyer agree to wait or cancel for a refund.
  4. Provide an easy reply, form, or support route.

Make both options equally clear:

Delay notice example

Subject: Order 1042 update | new ship date [date] and your options

Preview: Choose whether to wait for the revised date or cancel for a refund.

Hi [first name],

Order 1042 is now expected to ship by [revised ship date], later than the original [original ship date].

You can wait for the new date or cancel for a full and prompt refund. Reply with WAIT or CANCEL, or choose an option at [support route].

We're sorry for the delay, [store name]

‍

I would rather invite a refund than leave a late buyer guessing. A clean choice costs less than letting silence turn into an item-not-received chargeback. It also tells support exactly what the buyer was promised.

3. Delivery check-in and thank-you

Send a short check-in after the Delivered Shipment event or, when that event is unavailable, after the promised window ends. It suits a complete single-parcel order but needs suppression for split shipments and unresolved problems.

Klaviyo tracks delivery per fulfillment, so one order with several parcels can create several events. Add a flow condition that matches delivered fulfillments to the order's expected parcel count. Set the fallback date as the alternate route. Use your email to ask whether the order arrived intact. Shopify can handle the tracking update.

The delivered signal can be wrong because the customer may not have the package. Make the email reply-able and route a negative answer to support. Have support set a support_issue profile property to open, then suppress review and cross-sell flows while that value remains. The check-in is useful only when it changes what the store sends next.

Ask one human question rather than sending another status announcement:

Delivery check-in example

Subject: Did your order arrive?

Preview: A quick check-in on order 1042.

Hi [first name],

Thank you for ordering from [store name]. Did everything in order 1042 arrive as expected?

Reply YES if it did. If anything is missing or damaged, reply here or contact [support route], and we'll check it with you.

Thank you, [store name]

‍

This email catches a missing or split parcel while the buyer still expects a conversation. A YES reply can end the path, while any other reply should open support and set the same support_issue property used by later flows.

4. Review request after the product arrives

Send the review request after delivery and enough use time. Suppress anyone with an open delay, refund, or complaint. It fits products buyers can assess soon after arrival and poorly fits items that need weeks of use.

Klaviyo's review-flow guidance starts with Fulfilled Order, then waits longer than the average delivery time and uses 14 days as an example. Klaviyo Reviews can time Shopify requests from delivery. Product use time depends on what the buyer must judge. Define the shortest honest period for each category and add it after delivery.

Because review requests are marketing messages, send them only to profiles with the consent your rules require. Klaviyo's consent guidance recommends express consent.

Your choice to import or collect reviews changes where the buyer lands, while the send still needs consent for that market.

Ask a question the buyer can answer from experience:

Review request example

Subject: How is [product name] working for you?

Preview: Share one detail that could help the next buyer.

Hi [first name],

You've had [product name] long enough to try it. What worked well, and what would you change?

Leave your review at [review form]. If you need help with the order instead, reply here and we'll route it to support.

Thank you, [store name]

‍

Suppress the review request whenever the support_issue property is open, even if the scheduled send is due. Resume the path only after support closes the case and the buyer has had enough use time.

5. Cross-sell once the order is delivered

Send one related offer after a clean delivery. The buyer must have consented, and the new item needs its own workable promise. It fits an add-on from the same supplier route. Skip it when a second parcel creates uncertain cost or timing.

Klaviyo says a cross-sell flow may wait until the customer receives the order. Choose one product that extends the use of what the buyer owns. Unlike an email sent after delivery, post-purchase page offers appear in the checkout channel before the shipping result is known.

The upsell or cross-sell decision determines whether the offer complements or replaces the first choice.

The risk is another fulfillment promise. Use a test order to confirm the supplier, date range, shipping charge, and tracking event before the email goes live. Filter by the delivered item, then exclude any add-on that needs a new setup, size system, or untested supplier.

Keep the example to one offer:

Cross-sell example

Subject: A useful add-on for [product name]

Preview: One complementary item with its own delivery window.

Hi [first name],

Now that [product name] has arrived, [complementary product] can help you [specific use].

It ships from [supplier route] with an expected delivery window of [date] to [date]. See the product at [product page].

[store name]

‍

I would skip the offer when the route is unclear because another delivery problem can cost more in support and refunds than the add-on earns. A clean first order matters more.

6. Refund confirmation that closes the loop

Send the refund confirmation only after the money is issued. State the amount, method, issue date, and statement name. It fits every completed refund. A pending request still needs a status update.

Klaviyo's Refunded Order event covers only full refunds. Use Shopify's refund notice or another tested event for a partial refund. Tell the buyer that their bank controls the posting date and omit a fixed arrival estimate.

After the returns process approves the refund, this email records the result. Issue the customer refund on your store's decision instead of waiting for the supplier to reimburse you.

Clear records also help with preventing chargebacks because the buyer can see what happened before asking the bank.

Fill every field from the actual payment record:

Refund confirmation example

Subject: Your refund for order 1042 has been issued

Preview: [Amount] was returned to [payment method] on [date].

Hi [first name],

We issued a refund of [amount] for order 1042 to [payment method] on [issue date]. The original charge appeared as [statement name].

Your bank controls when the credit appears. If the amount or method looks wrong, reply here or contact [support route].

[store name]

‍

The email gives the buyer a complete record and a route back to you while the bank processes the credit. That record should match the payment screen support can see. Use the Shopify refund notice or Klaviyo Refunded Order event to close the matching support case only after the refund is issued.

Which emails to build first, and which to skip

Build the confirmation, delivery check-in, and delay notice first. Then add the review request and refund confirmation before the cross-sell. The first group protects promises and catches failures. The later group needs a clean delivery, consent, or completed refund. Follow this priority order:

EmailBuild orderWhySkip when
Order confirmationFirstSets the promise every order needsAll orders, with promotion excluded
Delivery check-inFirstFinds non-arrival or damageOpen split shipment
Delay noticeFirstGives a late buyer optionsOrder shipped within promised time
Review requestNextCollects product feedbackOpen delay, refund, or complaint
Refund confirmationNextCloses the payment recordRefund still pending
Cross-sellLastAdds revenue after successRoute, consent, or delivery is unclear

‍

Before launch, place a test order and check each event in sequence:

  1. Place an order: Confirm the date range prints in the confirmation.
  2. Hold fulfillment: Confirm the delay check fires while the fulfillment count remains zero.
  3. Mark delivery: Confirm the check-in uses delivery or the fallback date.
  4. Read every message: Remove promotion from each transactional email.

This sequence works only as well as the supplier dates, product, and listing behind it. Recheck the flow whenever your supplier, carrier, or sync app changes.

I recommend one test order from payment through refund before opening it to every customer. Note each event and message during the test. At the first mismatch, compare the supplier handoff, Shopify event, and email trigger. Then use our operations guide to repair that specific link.

FAQ

Does a post-purchase email sequence stop chargebacks?

A post-purchase sequence can reduce preventable confusion while leaving the buyer free to file a chargeback. It gives the buyer accurate dates, clear choices, and a support route before a missing parcel or refund becomes a bank dispute. It also leaves a written record of what the store promised and how the buyer could respond.

What delivery window do I show for two suppliers?

Show each delivery method and its own date range so each parcel keeps its own promise. Shopify's notification variables can list multiple delivery methods and dates, while each supplier still needs a tested range. Tie every later check-in to the parcel list so the first delivery keeps the whole order open.

Should a split order get one email per parcel?

Send carrier updates per parcel, but hold the store-level check-in until every expected parcel arrives or reaches its fallback date. That keeps the buyer informed and delays the whole-order check-in until the last parcel arrives. If one parcel is late, route that item into the delay or support path while leaving delivered items alone.

Should repeat buyers get a different sequence?

Keep the delivery and refund messages the same, then vary only consented marketing after the order is complete. A repeat buyer may need less brand introduction, while the parcel signals and support choices stay the same. Use purchase count to change the offer or greeting while keeping the stated delivery window unchanged.

Share article

Page Contents

Try Dropship

Discover winning product to sell today

Claim offer

Shopify Offer

Start and sell with Shopify $1/month for 3 months.

Claim offer
  • Sales Tracker
  • Portfolio
  • Shop Library
  • Advertiser Tracker
  • Ad Library
  • Product Library
  • Competitors
  • Advertiser Library
  • Magic AI Search
  • Creator Library

Launch your next winning product today

Find your next winning product using smart filters across millions of products, stores, and ads, tailored to your niche.