Abandoned cart recovery playbook for Iranian online stores: SMS + email
A practical abandoned-cart recovery playbook with consented email and SMS journeys: timing, copy, segments, and Leadara setup.

Amir Hosseini
Runs email, SMS, and push campaigns for acquisition, retention, and reactivation.
September 26, 2026 · 7 min read
Also available in فارسی

Abandoned-cart recovery is a short journey (usually 2–4 messages within 24–72 hours) that brings a shopper back to the same cart with consented email and SMS — not a discount blast to your entire phone book.
What is abandoned-cart recovery?
A cart is abandoned when someone adds at least one product but never completes the order. In Iranian ecommerce that often means shipping-cost surprise, a brief internet drop, price comparison, or a stuck payment — not zero intent.
Recovery means you define:
- Which event starts the flow (
cart_abandoned, or noorder_completedafteradd_to_cart); - Who may be messaged (channel consent, not every stored number);
- Which channel goes first (email, SMS, or both with spacing);
- When it stops (purchase, opt-out, or message cap).
Unlike a blast campaign, the message goes to someone who already showed purchase intent, links straight back to their cart, and stops the moment they buy.
Why Iranian stores are asking for this now
Persian WooCommerce marketplaces actively sell abandoned-cart plugins that wire SMS panels (Kavenegar, SMS.ir, and others) plus email reminders. Global 2026 playbooks still list email + SMS cart sequences among the highest-ROI automations. The question teams paste into ChatGPT is practical: “How do I recover abandoned carts with SMS and email without looking like spam?”
If much of your traffic still comes from Instagram and users drop mid-path when connectivity wobbles, owned channels on your own site matter even more.
What must be ready before the first send?
| Prep | Why | Ready when |
|---|---|---|
| Cart & purchase events | Trigger and exit | add_to_cart / checkout_started / order_completed appear on profiles |
| Identity | Someone to message | Email or mobile is attached after login/checkout |
| Channel consent | Law and brand trust | Separate SMS and email consent flags; “لغو ۱۱” on promotional SMS |
| Durable cart link | Conversion | URL that reopens that shopper’s cart |
SMS consent in Iran is not optional theater: CRA resolution 3-270 bans bulk sends without prior permission, and service senders must include cancel-via-11 language. Treat cart recovery as promotional unless your counsel says otherwise for your exact case.
Suggested timing table (24–72 hours)
| Touch | Approx. delay | Channel | Job of the message |
|---|---|---|---|
| 1 | 30–90 minutes | Email (if available) or web push | Soft reminder + cart link, no discount |
| 2 | 4–8 hours | SMS (if consented) | Short, deep link, remove one friction (shipping/stock) |
| 3 | 20–28 hours | Social proof or FAQ + link | |
| 4 (optional) | 48–72 hours | SMS or email | Limited offer only for high cart-value segments |
Stop rules:
- Exit immediately on
order_completed; - Honor channel opt-out the moment it arrives;
- More than two SMS for one cart is usually too much;
- Respect quiet hours for SMS.
How to write the copy
Email touch 1 (tone sample):
Subject: Your cart is still here
Body: product name(s) + Continue checkout button + one clear line on shipping or stock if you can be honest. Skip the discount unless your data says recovery collapses without it.
SMS touch 2 (sample):
“[Brand] your cart is waiting: [short link]. Shipping questions? See the site. لغو ۱۱”
Tips:
- Keep links short and trustworthy;
- Avoid fake urgency (“only 5 minutes”) unless stock is truly limited;
- For high-value carts, point to human live chat in the email — do not claim a bot answers customers on your storefront unless that is actually your product.
Segments and exceptions
- Cart below free-shipping threshold — fix the friction first, then remind;
- VIP / high RFM — more personal tone; sometimes human support beats a blind coupon;
- Same SKU abandoned twice in 7 days — tighten frequency;
- Checkout started — aim the message at payment friction, not a generic cart nudge.
How to build it in Leadara
Leadara gives you events, segments, journeys, email, and SMS through your own Kavenegar or Nikaline panel. Practical path:
- Connect store events so
add_to_cartandorder_completedland on profiles; - Entry rule: abandoned cart + reachable channel + consent;
- Journey: short wait → email → wait → SMS → exit on purchase;
- Build the SMS template with the cart link and cancel-11 language;
- Read run history and SMS logs for skips/failures;
- Use AI Chat inside the dashboard to draft a template or segment — that assistant is for your team, not a customer-facing reply bot in live chat.
If mobile capture is weak, fix a popup or phone gate on the purchase path before you expect SMS recovery to work.
A week-one rollout plan
Day 1–2: Confirm events fire in a staging store with a real add-to-cart and a real order.
Day 3: Ship consent language on checkout and any phone capture form.
Day 4: Launch a two-step journey (email → SMS) for carts above a minimum value.
Day 5–7: Read recovery rate, opt-outs, and failed SMS reasons daily; do not add discounts yet.
Week 2: Split VIP vs everyone else; only then test a third touch.
This pacing keeps the team from blaming “automation” when the real issue is missing identity or broken exit events.
Example metrics targets (directional, not universal)
| Signal | Healthy early range | If you miss it |
|---|---|---|
| Touch-1 click rate | Often mid-teens %+ on email | Fix subject/link before adding SMS |
| SMS opt-out on cart flow | Stay very low | Soften copy, widen quiet hours |
| Recovery rate | Varies by category | Check cart link and stock accuracy first |
What to measure
| Metric | Simple definition | Note |
|---|---|---|
| Recovery rate | Purchases after journey entry / entries | Primary outcome |
| Recovered revenue | Attributed order value | Split by touch |
| Cart-link CTR | Clicks / successful sends | Low CTR → copy or timing |
| Complaints / opt-outs | Cancel-11 or unsubscribe | Brand-health ceiling |
| SMS cost per recovered order | Send cost / recovered orders | Tune number of touches |
A/B one variable at a time — delay of touch 1, or discount on the last touch — not five changes at once.
Common mistakes
- Calling a 20% blast to old numbers “cart recovery”;
- SMS without consent or without cancel-11;
- Messaging after purchase because the exit event is wrong;
- Linking to the homepage instead of the cart;
- Three SMS inside two hours;
- Machine-translated English that reads wrong on a Persian phone screen.
FAQ
How is checkout abandonment different?
Cart means items sit in the basket; checkout means they started payment and stopped. Checkout usually signals higher intent — target the payment blocker.
Email first or SMS first?
When you have both, many teams lead with email or push and save SMS for a later, higher-value touch — unless your own data says otherwise.
What about guests with no account?
Until email/mobile is captured at checkout or via a popup with consent, you have no channel. Capture identity first.
Is a discount required?
No. Many recoveries work with reminder + clear shipping/stock. Keep discounts for expensive carts or the last touch.
Is a cart message transactional or promotional?
Most teams treat it as promotional and apply consent rules. Align with your SMS panel and counsel.
How often can the same person re-enter?
Add a cooldown (for example 7 days for the same user/cart) so the flow does not feel like spam.
If the shopper’s internet drops, is SMS better?
Often yes — SMS lands on the SIM. Consent and quiet hours still apply.
Does Leadara include WhatsApp?
Public docs cover SMS via Kavenegar/Nikaline, email, web push, popups, and human live chat. Do not claim a WhatsApp connector unless it is documented in your workspace.
Next step
Validate cart and purchase events in a real test, confirm SMS consent on the profile, launch a 2–3 step journey, and watch recovery rate plus opt-outs for two weeks. Only then add a fourth touch and a VIP branch.




