> ## Documentation Index
> Fetch the complete documentation index at: https://docs.brew.new/llms.txt
> Use this file to discover all available pages before exploring further.

# Lifecycle Emails for E-Commerce

> The emails every store should be sending (welcome, receipts, abandoned cart, shipping, win-back) and the prompts to build them in Brew.

For a store, email isn't a marketing channel bolted on the side. It's part of the purchase itself. The receipt, the shipping notice, the nudge about the cart someone walked away from: shoppers expect all of it, and every one is a moment to sell again.

This guide covers the five moments that matter for an online store, what to send at each one, and the prompt to build it in Brew.

<Info>
  **Before you start.** You need a [verified sending domain](/get-started/verify-your-sending-domain) and [Shopify connected to Brew](/integrations/import/shopify); once it is, every event below is available as an automation trigger with no extra setup. Selling app subscriptions instead? The same patterns work with [RevenueCat](/integrations/import/revenuecat) or [custom events](/create-emails/automations#trigger-events) from your own checkout.
</Info>

## New Shopper

Someone created an account or bought for the first time. Engagement will never be higher, so say hello while they're still looking at the confirmation page.

Send one email. Welcome them, set expectations for what you'll send, and give them one reason to come back: a bestseller, a guide, a first-order perk.

**Build this as an automation** triggered by `customers/create`.

```text theme={null}
Create a welcome email for a new customer of our store, triggered by
customers/create. Thank them, introduce the brand in two sentences, and
show three bestsellers with images. One CTA. Warm, not gushing.
```

## Order Placed

The order confirmation is the most-opened email you will ever send. It's transactional (it must always arrive, even for unsubscribed contacts) but that doesn't mean it has to be a plain receipt.

Send it on `orders/create` (or `orders/paid` if you only want to confirm captured payment). Include the order number, items, and total from the trigger payload.

**Build this as a transactional email.**

```text theme={null}
Create an order confirmation email triggered by orders/create. Include
the order number, items, and total. Confirm what happens next and when
they'll hear from us. Add one quiet cross-sell row at the bottom:
"goes well with", nothing pushy.
```

Personalize with the payload: `{{@trigger:output.payload.orderNumber}}`, `{{@trigger:output.payload.totalPrice}}`. See the [Shopify integration](/integrations/import/shopify) for the full variable list.

## Abandoned Cart

Most carts don't convert, and most of that revenue is recoverable within 24 hours. This is the highest-ROI flow a store can run.

Send a 2 to 3 email flow starting about an hour after the checkout is created. Lead with the items, not a discount. Save the incentive for the last email, if you use one at all.

**Build this as a marketing flow** triggered by `checkouts/create`.

```text theme={null}
Build an abandoned-cart flow triggered by checkouts/create.

Wait 1 hour.
Email 1: friendly reminder showing the items and a link back to checkout.
No discount. Use the abandonedCheckoutUrl from the payload as the CTA.
Wait 24 hours.
Email 2: address the two most common hesitations (shipping cost and
returns policy). Same CTA.
Wait 48 hours.
Email 3: last touch. A small time-limited incentive if they complete
the order today.
```

## Shipped and Delivered

Shipping emails get opened obsessively. People check tracking links multiple times. Delivery is also the right moment to ask for a review, while the box is still on the counter.

Send a shipment notification on `fulfillments/create` with the tracking link, and a review request on `fulfillments/update` once it's delivered.

**Build these as transactional emails**: two separate single-email automations.

```text theme={null}
Create a shipment notification triggered by fulfillments/create. Include
the order number, a prominent tracking button using trackingUrl from the
payload, and the expected delivery window. Short and functional.
```

```text theme={null}
Create a review request triggered by fulfillments/update. Ask how the
order landed, link to leave a review, and offer support if anything is
wrong. One email, light tone, no incentive.
```

## Winning Back Lapsed Customers

Customers who bought once and went quiet aren't gone. They just haven't had a reason to come back. Shopify syncs `shopify_last_order_at` onto every contact, so "hasn't ordered in 90 days" is a segment you can build in two clicks.

Save that audience, then send a win-back: either a one-off Email or a [one-off flow run against the saved audience](/recipes/run-a-one-off-flow) if you want a follow-up stage for non-openers.

```text theme={null}
Write a win-back email for customers whose last order was more than
90 days ago. Lead with what's new in the store since then: new arrivals,
restocks. One CTA to shop. Save any discount for a follow-up.
```

## Where to Start

If you're building store emails for the first time, do them in this order:

1. **Order placed**: table stakes; every customer sees it
2. **Abandoned cart**: the fastest revenue recovery you can ship
3. **Shipped and delivered**: highest engagement, sets up the review
4. **New shopper**: compounds as your store grows
5. **Winning back lapsed customers**: run it quarterly once the rest are live

## Need help?

Our team is ready to support you at every step of your journey with Brew. Choose the option that works best for you:

<Tabs>
  <Tab title="Self-Service Tools">
    <CardGroup cols="2">
      <Card title="Search Documentation" icon="magnifying-glass" color="#c44925">
        Type in the "Ask any question" search bar at the top left to instantly find relevant documentation pages.
      </Card>

      <Card title="ChatGPT/Claude Integration" icon="robot" color="#c44925">
        Click "Open in ChatGPT" at the top right of any page to analyze documentation with ChatGPT or Claude for deeper insights.
      </Card>
    </CardGroup>
  </Tab>

  <Tab title="Talk to Our Team">
    <CardGroup cols="2">
      <Card title="Schedule a Call" icon="calendar" color="#c44925" href="https://calendar.google.com/calendar/u/0/appointments/schedules/AcZssZ1iYoRUG1J792XQpbuQLjSRRDupr7MwraFK-HQRCtTYdBmrQi8nZu2qXfzKQigb8gbKJK3KN3-R">
        Book time with our founders for personalized guidance on strategy, best practices, or complex implementation questions.
      </Card>

      <Card title="Call Us Directly" icon="phone" color="#c44925">
        Need immediate assistance? Reach us at **+1-(332)-203-2145** for urgent issues or time-sensitive questions.
      </Card>

      <Card title="Slack Channel" icon="slack" color="#c44925">
        Our preferred support channel. You'll receive an invite after signup for direct founder support and fast responses.
      </Card>

      <Card title="Email Support" icon="envelope" color="#c44925" href="mailto:support@brew.new">
        Contact us at **[support@brew.new](mailto:support@brew.new)** for detailed inquiries or if you prefer not to use Slack.
      </Card>
    </CardGroup>
  </Tab>
</Tabs>
