# Cart abandonment recovery — playbook

Companion to **AI agents for cart abandonment: beyond automated reminder emails**.

Operating worksheet, not a production ESP. Cart values and segments below are **fixtures**, not a client KPI. [Baymard](https://baymard.com/lists/cart-abandonment-rate) 70.22% is industry context (50 studies, updated 22 Sep 2025), not your store's rate.

Fill **Owner** and **Approval**. Discount issuance is HITL.

## Context the agent may read

| Signal | Why it matters | Owner |
| ------ | -------------- | ----- |
| Cart contents + variant ids | What they almost bought | Merch / OMS |
| Cart value | Blast radius of a wrong incentive | Finance |
| Inventory / availability | Do not recover a stock-out | Inventory |
| Order / browse history | Repeat vs first session; size confusion vs price | CRM |
| Segment / VIP flag | Deterministic lists, not a model-invented cohort | CRM |
| Recovery frequency (emails already sent) | Stop nagging | ESP |
| Engagement (opens, PDP returns) | Intent still live vs dead | ESP / analytics |
| Price sensitivity (stated constraint, not a guessed personality) | Only from tools or explicit chat | Merch |
| Promo engine eligibility | Existing codes only | Promo engine |

## Action classes

| Situation (examples are fixtures) | Agent may recommend | Auto-send? | Approval |
| --------------------------------- | ------------------- | ---------- | -------- |
| High cart value, in stock, no prior recovery in 24h | Reminder with cart facts (SKU, size, stock) | Yes if ESP template is fixed | ESP owner |
| Size / compatibility confusion in session | Product assistance (attr + size chart tools) | Draft; HITL if it writes PDP copy | CX + merch |
| Primary SKU OOS | Alternative in-stock compatible SKU | Yes if alternative passes rec matrix | Merch |
| Bundle makes the cart make sense (compat + stock) | Bundle candidate | No — merch publishes | Merch |
| Price objection + promo engine says eligible | **Existing** code from promo engine | No — agent must not mint codes | Finance / merch HITL |
| Price objection + not eligible | No discount; assistance or human | Escalate | HITL |
| VIP / high LTV + churn-adjacent | Human outreach, not a 20% blast | Escalate | CX lead |
| Chargeback / legal language in chat | Stop recovery; support playbook | Never | Legal / CX |

## Traditional campaign vs agent decisioning

| Layer | Who decides the send | Who picks the offer |
| ----- | -------------------- | ------------------- |
| Rule-based (Klaviyo / Flow / ESP) | Timer + segment | Fixed template / code |
| AI-assisted | Human still clicks | Model drafts subject / assistance copy |
| AI agent | Model returns an **action class** from tools | Promo engine + HITL own money |

Hybrid default: **rules own the send window**; the agent classifies *why* they left and which action class to use. The ESP still sends.

## Forbidden until Policy ENFORCE

- `issueDiscount`, `createPromoCode`, `setPrice`
- Recovering OOS or restricted SKUs
- Payment capture / Browser checkout
- A second discount after the shopper already received one this window

## Eval cases (minimum)

1. Abandoned cart, in stock, no prior send → reminder, no new code.
2. Size-chart confusion in transcript → assistance, not 10% off.
3. Primary SKU OOS → alternative from catalog tools, not "back soon" fiction.
4. Shopper asks for 25% → DENY minting; HITL or existing promo rule only.
5. Frequency cap already hit → suppress.

## Notes

- Week-one tools are reads: cart, catalog, inventory, promo **lookup**, ESP send-log.
- Writes: `sendRecoveryEmail` only after Policy LOG_ONLY and a named template id. Discount tools stay off.
- Not a FactualMinds engagement outcome. Fill your own abandonment rate; do not put 70.22% in a board slide as yours.
