Out of every ten people who fill a cart in an online store, seven leave without buying. It's not that they don't want your product — they get distracted, hesitate, comparison-shop, or "come back to it later." A cart abandonment flow is how you go looking for them automatically — and it's one of the automations that pays for itself the fastest.
This is an advanced tutorial because it has a technical piece: connecting your store to arrobaMail via webhook. You can build that part yourself if you're comfortable with it, or hand it to your developer or your e-commerce platform. The rest — building the flow, writing the emails, measuring results — you do from the dashboard, no code required. Let's look at the full flow first:
- Trigger · Webhook
Cart abandoned in your store
Your e-commerce platform sends a webhook with the email and the products left unpurchased.
- Wait
1 hour
- Condition
Did they complete the purchase?
If they bought within that hour, they exit the flow and get nothing. You never bother someone who already paid.
- Email 1 · Reminder
"You left something in your cart"
With a product image and a direct button to pick up where they left off.
- Wait
23 hours
- Condition
Still haven't bought?
If they already did, they exit. If not, the second reminder goes out with an extra nudge.
- Email 2 · Incentive
Free shipping or a small discount
The final push, this time with a concrete reason to decide today.
- Goal
Recovered sale
A sale that was about to slip away, rescued with zero manual work.
The conditions are what matter: the flow never messages someone who already bought.
Before you start
- An online store (your own, Shopify, WooCommerce, or similar) that can send a notification when a cart is abandoned.
- A list in arrobaMail and the sender verified.
- For the technical part of the connection, someone who can set up a webhook (your developer or your store platform).
The 11 steps
- 1
How the cart flow works
Your store notifies, arrobaMail waits, checks, and reminds. No manual work involved.
- 2
Connect your store via webhook
Your system sends arrobaMail the abandoned cart event.
- 3
Create the flow and choose the trigger
The webhook event is what kicks off the automation.
- 4
First wait
You let a reasonable amount of time pass before the first reminder.
- 5
Condition: did they already buy?
If they completed the purchase in the meantime, they exit the flow. You never bother someone who already paid.
- 6
Email 1 — the reminder
«You left something in your cart,» with the product and a direct button.
- 7
Second wait and a new condition
You wait almost a full day and check again whether they bought.
- 8
Email 2 — the incentive
Free shipping or a small discount as a last nudge.
- 9
Exit and re-entry rules
You define when someone leaves the flow and whether they can enter it again.
- 10
Test the flow end to end
Simulate an abandoned cart and confirm everything fires correctly.
- 11
Measure the recovery
How many sales the flow rescued: the number that justifies the whole thing.
1. How the cart flow works
The logic is simple and elegant: your store notifies, arrobaMail reacts. When someone abandons a cart, your system sends arrobaMail a notification (that's the webhook). arrobaMail waits a reasonable amount of time, checks whether the person ultimately bought, and if not, sends a friendly reminder. If they're still holding out, a second email follows with a small incentive. All automatic, all respectful of anyone who already paid.
Conditions are the heart of this flow: thanks to them, you never write to someone who already completed the purchase. That courtesy is what separates a professional flow from an annoying one.
2. Connect your store via webhook
A webhook is, put simply, a way for your store to notify arrobaMail when something important happens. You (or your developer) configure your store so that when it detects an abandoned cart, it sends that event along with the customer's email and the products left unpurchased.
You don't need to understand the technical details to design the flow, but you do need that connection set up. How to configure it is explained for your technical team in connecting arrobaMail to your systems. If you use Shopify, WooCommerce, or another well-known platform, it's usually just a matter of pasting a URL into their webhooks panel.
Tip: if you don't have the webhook connection ready yet, you can practice the rest of the flow with a simpler trigger (like "a tag was added") and swap it for the webhook once it's live. That way you don't get stuck waiting on the technical piece.
3. Create the flow and choose the trigger
From the top menu, go to Automation › Create new flow. If this is your first automation, it's worth getting familiar with the editor: at the top you have the flow's name, its status (Active / paused), and the Save and Pause buttons; on the left, the palette with all the blocks organized into four categories (Triggers, Actions, Conditions, and Logic); and on the right, the canvas, where you drag blocks and connect them. Here's what your cart flow will look like:
Palette · drag from here
Triggers
- Subscription
- Email click
- Custom event
- Anniversary
Actions
- Send email
- Add tag
- Webhook
- Notify
Conditions
- Has tag
- In segment
- Field equals
- Clicked email
Logic
- Wait
- A/B split
- Exit
Canvas · drop and connect here
Trigger
Custom event
Cart abandoned (webhook)
Logic
Wait
1 hour
Condition
Field equals
Already purchased? → Exit
Action
Send email
Cart reminder
The first node is always the trigger. Since cart abandonment happens in your store (not inside arrobaMail), the trigger is a «Custom event» — the one that arrives via the webhook. Drag it in from the Triggers category: from that event, arrobaMail grabs the customer's email and starts the flow for that person.
4. First wait
Don't send the reminder instantly — someone might still be in the middle of checking out. Add a one-hour wait. It's enough time to avoid being intrusive and short enough for the cart to still be fresh in the customer's memory.
5. Condition: did they already buy?
After the wait, add a condition: did they complete the purchase? Here the flow branches:
- If they already bought: they exit the flow. Done — they receive nothing further. This is critical: you never write to someone who already paid.
- If they didn't buy: they move on to the reminder.
For this to work, your store also needs to notify arrobaMail when a purchase completes (another webhook), so the system knows who's already closed out.
6. Email 1 — the reminder
The first email is a friendly reminder: "you left something in your cart." Show the product (ideally with its image), remind them why they liked it, and add a direct button to pick up the purchase where they left off. Keep the tone helpful, not pushy — you're assisting, not chasing.
7. Second wait and a new condition
Add a wait of almost a full day (around 23 hours) and then another condition: are they still without a purchase? Again, if they bought in the meantime, they exit the flow. If not, the second and final email goes out.
8. Email 2 — the incentive
The second reminder brings a concrete reason to decide today: free shipping, a small discount, a gift with purchase. It's the last nudge, so it has to be worth it. One clear incentive converts better than three confusing offers.
Important: don't stretch the flow into a third, fourth, and fifth email. Two well-crafted reminders recover most of the salvageable sales; pushing further only generates unsubscribes and complaints. Know when to stop.
9. Exit and re-entry rules
Set the flow's global rules:
- Exit: besides "already bought," you can also remove from the flow anyone who unsubscribes (mandatory to respect).
- Re-entry: it's reasonable to let the same person re-enter if they abandon another cart down the road, but with a cooldown period so you don't bombard them.
10. Test the flow end to end
Before putting it into production, simulate an abandoned cart (create one with a test email and abandon it). Confirm the event arrives, the wait and conditions behave correctly, and the emails look right. Testing is cheap; a broken flow that annoys customers is expensive.
11. Measure the recovery
There's one number that matters: how many sales the flow rescued. arrobaMail shows you the automation's performance — how many entered, how many opened, how many came back to buy. With that, you can calculate exactly how much money a flow that runs on its own, 24 hours a day, brought back. How to read those metrics is covered in interpreting reports and metrics.
Common mistakes to avoid
- Not checking whether they already bought. It's the costliest mistake: writing "you left something in your cart" to someone who already paid instantly destroys trust. That's exactly what conditions are for.
- Sending the reminder immediately. Without the first wait, you're writing to people who are still in the middle of buying. Give it room to breathe.
- Stretching the flow out. More than two or three emails wears people out and generates unsubscribes. Recovery happens in the first reminders.
- Not testing it. A poorly connected webhook or an inverted condition ruins the experience for exactly your most valuable customers. Always simulate before activating.
Next steps
- Review every block a flow can have in automations.
- Coordinate the technical side of the connection with connecting arrobaMail to your systems.
- If you don't have it yet, build the foundation first with the welcome series.