E-commerce
July 1, 2026
Client opens the chat with a Meta screenshot. "Your ad said -40%, I want the same price." The bot promises the discount or refuses without explanation. Ticket expiad_goodwill_request.
An e-commerce expired ad AI chatbot reads EXPIAD-MAP #929, explains the end of validity, cites the current offer, and hands off to an agent if the screenshot needs verification, without making blind promises or automatic goodwill gestures.
This guide #930 covers bot_expiad_* intents, EXPIADBOT EAB-1 to EAB-8 flow, and NO-BLIND-PROMISE-BOT guardrails. Bot pair of the EXPIAD playbook (#929). Usecase: expiration alternative frustration promo widget.
Summary
Why botify expired ad offers?
The customer cites a past ad even before attaching a screenshot. Without an ad registry, the bot hallucinates or bluntly refuses. AD-REGISTRY-GATE aligns the widget and agents #929.
What the expired bot resolves at tier 1
Validity end: campaign end_date ads mapped
Current offer: current_offer registry today
Price discrepancy: grounded explanation of ad vs website
Alternative: link to active offer or product
Screenshot handoff: screenshot → agent #929 verify
DTC Retail Example
DTC Cosmetics, 11 tickets/month expiad_. Bot syncs with registry. expiad_bot_deflect +41%, expiad_goodwill_request -36% in 5 weeks.
EXPIADBOT #930 vs EXPIAD #929, PROMO sync #886, PMATCH #389 and NOFFER #924
Seven expired promo bot contents, seven distinct roles.
Quick Matrix
#930 EXPIADBOT: bot tier 1 alternative expiration current deal widget
EXPIAD #929: agents verify capture goodwill EA-4
PROMO sync #886: sync active promo distinct past ad
PMATCH #389: distinct competitor alignment old ad
NOFFER #924: active newsletter bot distinct Meta ad
PROMO general: active offers distinct agents expiration
ATTACH #877: capture procedure agents handoff
Pipeline: client quotes ad → #930 expiry current alternative tier 1 → handoff #929 if capture goodwill.
Which bot_expiad_* intents should be configured?
Eight expired ad intents mapped EXPIAD-MAP #929.
Eight bot_expiad intents
bot_expiad_ad_claim_detect: detect influencer capture ad mention
bot_expiad_registry_lookup: registry ads campaign lookup
bot_expiad_expiry_answer: validity window end_date
bot_expiad_current_offer: current_offer today map
bot_expiad_price_explain: ad_price vs site_price explanation
bot_expiad_alternative_suggest: alternative SKU offer product
bot_expiad_handoff_verify: goodwill capture → agent #929
bot_expiad_feed_loop: consume LOG #929 ad_registry
Each response logs campaign_id intent expiad_* deflect_or_handoff.
How should EXPIAD-MAP #929 be consumed?
The bot reads EXPIAD-MAP #929 + bot fields: campaign_id, offer_copy, date_debut, date_fin, offre_actuelle, prix_pub_ref, prix_site_ref, price_explain_copy, alternative_sku, alternative_url, goodwill_rules_summary, agent_handoff_url, ad_registry_active.
Expired offer bot guardrails
AD-REGISTRY-GATE: offer expiration from ads registry only
NO-BLIND-PROMISE-BOT: do not honor screenshot without registry match
NO-AUTO-GOODWILL-BOT: agent goodwill gesture #929 only
EXPIRY-GROUNDED-BOT: date_fin always cited if expired
CURRENT-OFFER-BOT: offre_actuelle map after expiration
PRICE-EXPLAIN-BOT: ad-to-site discrepancy from registry copy
VERIFY-HANDOFF-BOT: screenshot attached → agent #929
EXPIAD-FEED-LOOP-BOT: LOG #929 enriches ad_registry widget
EXPIADBOT-SUP policy in six rules
Six responsible expiration rules on the widget side.
AD-REGISTRY-GATE: registry lookup before expiration response
NO-BLIND-PROMISE-BOT: no promo agreement outside of registry
EXPIRY-GROUNDED-BOT: date_fin cited if window has ended
CURRENT-OFFER-BOT: systematic active offer alternative
NO-AUTO-GOODWILL-BOT: agent handoff if goodwill gesture is requested
EXPIAD-FEED-LOOP-BOT: LOG #929 review widget within 48 hours
EAB-1 to EAB-8 EXPIADBOT Flow
Eight-step flow: claim detect registry classify answer alternative handoff log.
EAB-1 Ingest: pub message capture -40% influencer
EAB-2 Claim detect: ad_claim_detect pub citation
EAB-3 Registry lookup: AD-REGISTRY-GATE ads campaign
EAB-4 Classify: expiad_* vs active promo vs pmatch #389
EAB-5 Tier 1 answer: expiry current price_explain alternative
EAB-6 Handoff: capture goodwill → agent #929
EAB-7 Feed loop: LOG #929 adjust current_offer
EAB-8 Log: deflect expiry_answer handoff_verify
Example TPL-EXPIAD-EXPIRED
“The pub offer {{offer_copy}} ended on {{date_fin}}. Current offer: {{offre_actuelle}}.”
TPL-EXPIAD templates and touchpoints
Four short expiration embed templates.
TPL-EXPIAD-EXPIRED
[date_fin map.] [offer_copy map.] EXPIRY-GROUNDED.
TPL-EXPIAD-CURRENT
[offre_actuelle map.] [alternative_url.] CURRENT-OFFER.
TPL-EXPIAD-PRICE
[price_explain_copy map.] Ad price vs site. PRICE-EXPLAIN.
TPL-EXPIAD-HANDOFF
[agent_handoff_url.] Capture to verify. VERIFY-HANDOFF #929.
Touchpoints
“Ad said -40%”: expiry_answer + current_offer
Screenshot attached: handoff_verify agent
Different ad price: price_explain + ops note
LOG EXPIAD #929: feed_loop ad_registry
Edge cases: offer still active, influencer, high frustration
Five cases out of the standard flow.
Offer still active in registry: current_offer + applicable code
Influencer old code: expiry_answer not honored outside of registry
Goodwill gesture request: NO-AUTO-GOODWILL handoff #929
Obsolete live ad: price_explain + signal ops #929
Ticket expired_ despite bot: feed_loop review registry gaps
Essential expiad_bot KPIs
Five EXPIADBOT steering metrics and correlation #929.
expiad_bot_deflect: expirations explained without an expiad_ ticket
expiad_bot_expiry_cited: % of responses with end_date cited
expiad_bot_current_offer_rate: % of sessions with a proposed alternative
expiad_bot_blind_promise: promises outside target registry 0
expiad_bot_handoff_verify_rate: % of captures routed to agent #929
Target: blind_promise at zero and current_offer_rate above 85%.
EXPIADBOT anti-patterns
Five common errors: expired bot offer.
Honor auto capture: NO-BLIND-PROMISE registry only
Bot commercial gesture: NO-AUTO-GOODWILL agent #929
Refusal without alternative: CURRENT-OFFER mandatory
Forget end date: EXPIRY-GROUNDED always cited
Duplicate #886: #930 past expiration ad only
EXPIADBOT with Qstomy
Qstomy on Shopify: EXPIAD-MAP sync #929, ads campaign registry, EXPIRED CURRENT PRICE templates, handoff verify agent, KPI expiad_bot dashboard.
Scenario: DTC cosmetics, 11 tickets/month. Registry weekly sync. expiad_bot_deflect +41%, expiad_ tickets -33% in 5 weeks.
Explore AI support and request a demo.
Checklist, FAQ and going further
EXPIADBOT Checklist (8 steps)
Sync EXPIAD-MAP #929: dates offre_actuelle alternative goodwill summary
Policy EXPIADBOT-SUP: 6 rules REGISTRY-GATE NO-BLIND-PROMISE
8 intents bot_expiad_*: flow EAB-1 to EAB-8
4 templates TPL-EXPIAD-*: EXPIRED CURRENT PRICE HANDOFF
ad_registry_active: finished campaigns + today offer
handoff_verify: capture → agent #929 route
Red team expiry: blind promise goodwill capture test
Dashboard KPI: expiad_bot_* section 9 + delta expiad_
FAQ
Difference #929?
#929 = agents verify capture goodwill ops. #930 = bot tier 1 expiration alternative widget.
Difference #886?
#886 = sync promo active catalog. #930 = past ad expiration explained.
Difference #389?
#389 = price match competitor live. #930 = old store ad.
Can bot grant gesture?
No. NO-AUTO-GOODWILL. Handoff agent #929 EA-7.
Going further
This week: sync EXPIAD-MAP #929, templates EXPIRED CURRENT, handoff verify, measure expiad_bot_deflect.

Enzo
July 1, 2026





