Set up a checkout recovery campaign
What the recovery objective sets up for you, which lead sources feed it, and how a shopper moves through it until they buy or the sequence ends.
Last reviewed November 7, 2026
What a new campaign starts with
Recover abandoned checkouts is the first of the ten objectives in the Create a campaign dialog; Choosing an objective describes the others. This objective fills in these defaults, and you can change all of them:
- A brief, guardrails and discovery questions written for a shopper who left a checkout, on the Instructions step.
- Calls, texts and email switched on, with WhatsApp off.
- A recommended sequence of three calls, two texts and two emails. The first call is due as soon as the checkout counts as abandoned, and the last one about four days later.
- A 30-minute wait before a checkout counts as abandoned, no cap on shoppers, and a 30-day cooldown for each shopper.
- Recorded consent required before any call, text or email.
Where shoppers can come from
You choose the source under Where leads come from when you create the campaign.
| Source | What it does today |
|---|---|
| Shopify | Checkouts and orders arrive through the Growth Dept ACR app or a Growth Dept connection. |
| Custom API | Your own system posts checkout events to a private URL. A payment/failed event starts a run at once, with no idle wait, and payment/succeeded or checkout/completed with the same unique_id stops it and credits it. |
| File upload | Shoppers enter only when you add them by hand or import a CSV and pick this campaign. No checkout events arrive from a file, so the trigger never fires. |
| Klaviyo, Omnisend, NextCommerce, CheckoutChamp | Checkouts and orders from those platforms; see Klaviyo, Omnisend, NextCommerce and CheckoutChamp. CheckoutChamp waits 45 minutes by default, and NextCommerce has no wait of its own. |
| Zapier and Make | Custom API events posted by a zap or scenario; see Zapier and Make. |
How a shopper moves through it
- A checkout with an email or phone number arrives. Each update to it restarts the wait.
- When the wait runs out, the checkout counts as abandoned and ACR offers the lead to your campaigns, top to bottom.
- The first campaign that accepts starts a run. Each step goes out only when the schedule, consent and country rules allow it.
- A reply is sorted as positive, undecided or negative, and General settings decide whether a follow-up sequence takes over.
- The run ends when the shopper orders, asks to stop, gets handed to your team, or reaches the end of the sequence.
What to check for this objective
- Orders. An order is what stops outreach to a buyer. Shopify, Klaviyo and NextCommerce send orders on their own. Omnisend needs its order automation, CheckoutChamp its completed postback, and the Custom API, Zapier or Make a
checkout/completedevent, or the agent keeps going after the purchase. - Discount codes. Create them in your store first and keep them just for ACR. Any order that uses a code listed on a campaign is credited to that campaign, even if the agent never contacted the buyer.
- Checkout links. With the default Dynamic link source, each shopper gets their own link. Shopify supplies it, and the Custom API sends it as
cart_link. A shopper with no link gets the message without one. - Consent. Shopify records SMS and email marketing consent and nothing about calls. With the default settings, Shopify shoppers get texts if they opted in to SMS marketing, emails if they opted in to email marketing, and no calls. Consent has the detail.