E-commerce
July 1, 2026
"The bot promised me the old promotional price." "The AI says it is restoring my cart but the link doesn't work." "The chatbot is confusing my hold timer and my cart that expired 2 weeks ago." Three failures where a poorly calibrated expired cart bot promises impossible recovery or an invented price.
An expired cart AI chatbot does not replace EXPCART agents (#571). It reads EXPCART-MAP, quotes session_ttl_days price_lock promo_grandfather, suggests available alternatives and hands off the draft rebuild to humans.
This guide #572 covers intents bot_expcart_*, flow EXPCARTbot and KPI expcart_bot. Companion bot to the EXPCART playbook (#571). New AI recovery use case: finding alternative products without promising promotional prices or direct rebuilds.
Summary
Why automate the expired cart with a bot?
"My cart has disappeared", "the price has changed" and "can you put it back?" are frequent queries when the customer returns after the TTL session. A calibrated bot looks up expcart_scope, cites session_ttl_days recover_method alternative_suggest from EXPCART-MAP.
What the tier 1 bot resolves
Expiration explain: session_ttl_days why cart is empty
Current price: price_lock_policy PDP live price
Promo policy: promo_grandfather cites without promising
SKU availability: inventory check if items are still available
Alternative suggest: alternative_suggest if OOS post expiry
Klaviyo estimates that 11% of abandoned cart recovery clicks happen after link expiration or price changes (Klaviyo, abandoned cart 2026). The bot intercepts bot_expcart_expired_explain before any price is made up.
EXPCARTbot vs EXPCART #571, RESVbot #570, save bot #438 and abandon #47
Five pieces of content, five cart and recovery models.
Quick matrix
#572 EXPCARTbot: tier 1 expired explain alternative handoff bot
#571 EXPCART: agents draft rebuild price dispute execute
#570 RESVbot: active distinct hold timer bot
Bot save #438: voluntary distinct saved cart
Abandon #47: outbound marketing recovery
Pipeline: bot explain alternative → #571 draft rebuild price execute. #570 if hold timer is still active.
Which bot_expcart_* intents should be configured?
Eight expired cart bot intents mapped to typologies #571.
Eight bot_expcart intents
bot_expcart_expired_explain: session TTL why cart is empty
bot_expcart_price_current: live price PDP price_lock map
bot_expcart_promo_info: promo_grandfather policy quote
bot_expcart_availability: SKU still available inventory check
bot_expcart_alternative: alternative_suggest if OOS
bot_expcart_recover_info: recover_method quote without executing
bot_expcart_vs_resv: expired session vs active hold reroute
bot_expcart_handoff: rebuild draft price dispute → #571
Tier 1 auto: expired_explain, price_current, promo_info, availability, alternative if EXPCART-MAP + guardrails.
bot_expcart_handoff, rebuild demand → agents #571 payload email cart snapshot.
How should EXPCART-MAP #571 be consumed?
The bot reads EXPCART-MAP #571: expcart_scope, session_ttl_days, price_lock_policy, promo_grandfather, recover_method, partial_recover_rules, recovery_link_ttl, alternative_suggest.
Lookup grounded
Scope lookup: expcart_scope global segment
EXPCART-MAP row: TTL price promo recover alternative
Inventory API: SKU live availability check
PRICE-LIVE-BOT: PDP API price except price_lock map
NO-REBUILD-BOT: bot does not create direct draft orders
NO-PROMO-PROMISE-BOT: promo_grandfather references without guaranteeing
Alignment anti-hallucination (#123): price = PDP API or map only.
EXPCARTBOT-SUP policy in six rules
Six safe expired cart bot rules.
EXPCART-MAP-GROUNDED: TTL recovery price from map only
PRICE-LIVE-BOT: current PDP price except map price_lock
NO-PROMO-PROMISE-BOT: promo_grandfather cites handoff if dispute
NO-REBUILD-BOT: draft rebuild → handoff #571
RESV-REROUTE-BOT: active hold → #570 RESVbot
ALT-GROUNDED-BOT: alternative_suggest map inventory only
Flow EXPCARTbot ECB-1 to ECB-8
Eight-step expired cart bot flow.
ECB-1 Classify: bot_expcart_* intent detect
ECB-2 Email collect: email session or order_ref if available
ECB-3 EXPCART-MAP: TTL price promo recover alternative
ECB-4 Inventory check: SKU available API if recover intent
ECB-5 Guardrail: PRICE-LIVE NO-REBUILD NO-PROMO RESV-REROUTE
ECB-6 Respond: TPL-EXPCARTbot grounded
ECB-7 Handoff: rebuild price dispute → #571
ECB-8 Log: intent recovery_status tag expcart_bot
Example TPL-EXPCARTbot-RECOVER
"Cart expired after [session_ttl_days] days. [X/Y items still available.] Current prices: [price live cite]. [OOS: alternative [alternative_suggest].] Complete rebuild: agent according to [recover_method map]."
TPL-EXPCARTbot templates and touchpoints
Four essential templates.
TPL-EXPCARTbot-EXPIRED
Session expired [session_ttl_days] d. Basket emptied as per platform policy. Distinct hold timer active if in progress.
TPL-EXPCARTbot-PRICE
[product_name]: [current PDP price]. [price_lock map.] Promo: [promo_grandfather summary]. Agent if price dispute.
TPL-EXPCARTbot-ALT
[SKU OOS] unavailable post expiration. Alternative: [alternative_suggest map]. [Alternative PDP links.] Partial rebuild possible via agent.
TPL-EXPCARTbot-HANDOFF
Request [rebuild draft / promo price / recover full] forwarded to agent. Email [email]. Delay [handoff_sla].
Touchpoints
Empty basket page: bot_expcart_expired_explain chip
Recovery email landing: bot_expcart_availability embed
Changed price notice: bot_expcart_price_current trigger
FAQ expiration: bot embed EXPCART-MAP RAG
Edge cases and reroutes
Five non-tier 1 cases bot expired standard.
Hold timer active: RESV-REROUTE-BOT #570 RESVbot
Draft rebuild requested: NO-REBUILD-BOT handoff #571 EXPCART-RECOVER-01
Voluntary save cart: bot save #438 reroute
OOS alternatives: ALT-GROUNDED inventory map
Outbound abandonment: #47 marketing distinct inbound SAV
Bot never creates draft order: rebuild price promo → agents #571 ops.
Essential expcart_bot KPIs
Five EXPCARTbot steering metrics.
expcart_bot_expired_deflect: explain sessions without a human ticket
expcart_bot_alt_click_rate: bot suggested alternative clicks
expcart_bot_price_invented: bot invented price, target 0
expcart_bot_promo_promised: bot guaranteed promo, target 0
expcart_bot_handoff_rate: sessions → #571 agents
Monthly red team: 10 "reset my cart", "former guaranteed promo price", "rebuild now" prompts. Invented price = PRICE-LIVE-BOT violation.
EXPCARTbot anti-patterns
Six common mistakes.
Old price promised : PRICE-LIVE-BOT
Guaranteed promo bot : NO-PROMO-PROMISE-BOT
Draft rebuild bot : NO-REBUILD-BOT
Hold confused with expired : RESV-REROUTE-BOT
Invented alternative : ALT-GROUNDED-BOT
Save cart confused : reroute #438 save bot
EXPCARTbot with Qstomy
Qstomy on Shopify: detect bot_expcart intent, EXPCART-MAP RAG, inventory SKU check, PRICE-LIVE guardrail, alternative suggest, handoff #571 rebuild payload.
Pipeline: bot tier 1 explain alternative → #571 draft rebuild execute → AI governance #142 audit expcart bot.
Explore AI support and request a demo.
Checklist, FAQ and going further
EXPCARTbot Checklist (8 steps)
Sync EXPCART-MAP #571: RAG bot + inventory price API
Policy EXPCARTBOT-SUP: 6 PRICE-LIVE-BOT rules
8 intents bot_expcart_*: flow ECB-1 to ECB-8
4 templates TPL-EXPCARTbot-*: EXPIRED PRICE ALT HANDOFF
Empty cart chip: bot_expcart_expired_explain entry
RESV reroute rules: active hold → #570
Red team 10 prompts: invented promo rebuild prices
Dashboard KPI: expcart_bot_* section 9
FAQ
Difference #571?
#571 = agents draft rebuild price dispute execute. #572 = bot tier 1 explain alternative handoff.
Does the bot restore the cart?
No. NO-REBUILD-BOT. bot_expcart_recover_info cites recover_method. Handoff #571.
Is the promo price honored?
bot_expcart_promo_info promo_grandfather map. Dispute → #571.
Difference RESVbot #570?
#570 = active hold timer. #572 = expired session TTL post-session.
Going further
This week: sync EXPCART-MAP inventory bot, red team "old guaranteed price", measure expcart_bot_price_invented. Activate empty cart chip.

Enzo
July 1, 2026





