E-commerce
July 1, 2026
"The bot blocks until I accept." "Why ask for my consent now?" "How do I withdraw what I accepted in the chat?" Three failures where a poorly calibrated consent bot causes friction instead of respecting the customer.
A consent e-commerce AI chatbot asks for agreement at the right time, explains the purpose, allows refusal without blocking, without writing API consents or confusing AI recommendation and privacy.
This guide #862 covers bot_consent_* intents, the CONSENTbot flow, and consent_bot KPIs. Pair bot of the AIRECOCON playbook (#861). AI use case: permission, data, and customer experience without forcing.
Summary
When should the bot ask for consent?
Asking for consent at the right moment means: before personalized AI recommendations, before optional preference collection, never before catalog browsing or order support. A properly calibrated bot offers skippable_prompt_copy, without NO-FORCE-CONSENT violation.
Three legitimate bot consent moments
AI Recs: before personalized AI model widgets or emails
Optional preferences: progressive collection of taste profile
Conversation data: if analyzing chat for future personalization
Three forbidden moments
Mandatory checkout: never block payment for marketing consent
Order support: post-sales delivery returns without a consent gate
Every message: do not ask again on every turn if refused
CONSENTbot vs AIRECOCON #861, PRIVPREFbot #850, PERFPREFbot #858 and Transparency #860
Seven contents, seven distinct customer permission angles.
Quick Matrix
#862 CONSENTbot: bot ask agreement timing skippable handoff
#861 AIRECOCON: agents opt-out AI reco RC-5 withdraw
PRIVPREFbot #850: toggles privacy CMP distinct consent reco
PERFPREFbot #858: progressive prefs collection distinct engine agreement
AITRANbot #860: disclose AI status distinct ask agreement
TRACKOPTbot #854: opt-out pixels distinct AI reco
Anti-hallucination #123: policy map whitelist no LLM legal advice
Pipeline: #862 bot propose tier 1 agreement → #861 agents execute RC-5 if complex withdraw.
Which bot_consent_* intents should be configured?
Eight bot consent intents mapped to airecocon_* typologies #861.
Eight bot_consent intents
bot_consent_prompt_reco: skippable_prompt_copy bypass AI reco map
bot_consent_opt_out: opt_out_copy disable AI reco map
bot_consent_opt_in: opt_in_copy enable AI reco map
bot_consent_withdraw: withdraw_copy withdraw consent map
bot_consent_basis: consent_basis_copy legal basis map
bot_consent_channel_diff: channel_diff_copy reco cookies profile map
bot_consent_when_ask: when_ask_copy why now map
bot_consent_handoff: complex gdpr → AIRECOCON861-HANDOFF-BOT
Save consent API → human handoff #861 RC-5 or self-service link only.
How should AIRECOCON-MAP #861 be consumed?
The bot reads AIRECOCON-MAP #861 + bot fields: skippable_prompt_copy, opt_out_copy, opt_in_copy, withdraw_copy, consent_basis_copy, channel_diff_copy, when_ask_copy, sync_copy, settings_link_copy, handoff_849_copy.
Sensitive Consent Guardrails
AIRECOCON-MAP-GROUNDED-BOT: consent response from map only
NO-FORCE-CONSENT-BOT: never block navigation for consent
SKIPPABLE-PROMPT-BOT: refusal without purchase support penalty
NO-CONSENT-WRITE-BOT: do not record consent API bot
CHANNEL-DIFF-FIRST-BOT: channel_diff if confused_privacy
WITHDRAW-EASY-BOT: withdraw_copy as simple as opt-in
AIRECOCON861-HANDOFF-BOT: gdpr_combo → #861 RC-5 agents
CONSENTBOT-SUP policy in six rules
Six rules for responsible bot consent.
NO-FORCE-CONSENT-BOT: skippable prompt, checkout and support never blocked
WHEN-ASK-CONTEXT-BOT: when_ask_copy explains why at this moment
SKIPPABLE-PROMPT-BOT: one opt-in proposal per session max recommendation
NO-CONSENT-WRITE-BOT: guide settings_link self-service only
CHANNEL-DIFF-FIRST-BOT: distinguish AI recommendations from cookies profile before guiding
WITHDRAW-EASY-BOT: withdraw always accessible if opt-in was previously given
Flow CONSENTbot CB-1 to CB-8
Eight-step flow bot consent embed homepage widget reco onboarding.
CB-1 Classify: bot_consent_* detect keyword consent accept refuse reco AI
CB-2 Context check: checkout current CS? skip prompt NO-FORCE
CB-3 AIRECOCON-MAP: prompt opt_out opt_in withdraw basis channel_diff when_ask
CB-4 Explain: TPL-CONSENTbot-PROMPT or WITHDRAW depending on intent
CB-5 Guardrail: NO-FORCE SKIPPABLE NO-CONSENT-WRITE CHANNEL-DIFF
CB-6 Respond: TPL-CONSENTbot max 3 grounded sentences
CB-7 Handoff or close: #861 #850 #858 payload or close OK
CB-8 Log: intent prompt_offered force_blocked withdraw_guided handoff Y/N
Example TPL-CONSENTbot-PROMPT
« [when_ask_copy map.] [skippable_prompt_copy map.] Refuse with no impact. SKIPPABLE-PROMPT-BOT. »
TPL-CONSENTbot templates and touchpoints
Four short embed consent templates.
TPL-CONSENTbot-PROMPT
[when_ask_copy map.] [skippable_prompt_copy map.] [settings_link_copy map.] NO-FORCE-CONSENT-BOT.
TPL-CONSENTbot-OPT-OUT
[opt_out_copy map.] [sync_copy map.] Unchanged commands. WITHDRAW-EASY-BOT.
TPL-CONSENTbot-WITHDRAW
[withdraw_copy map.] [settings_link_copy map.] AIRECOCON-MAP-GROUNDED-BOT.
TPL-CONSENTbot-CHANNEL-DIFF
[channel_diff_copy map.] [handoff_849_copy map optional.] CHANNEL-DIFF-FIRST-BOT.
Touchpoints
First AI reco homepage: bot_consent_prompt_reco proactive skippable
Keyword disable reco: bot_consent_opt_out instant
Keyword withdraw consent: bot_consent_withdraw priority
Keyword why ask: bot_consent_when_ask trigger
Edge cases and reroutes
Five cases outside tier 1 standard consent bot.
CMP cookies only : PRIVPREFbot #850 reroute handoff_849
Taste profile without AI reco : PERFPREFbot #858 reroute
Tracking pixels : TRACKOPTbot #854 reroute
Formal GDPR request : AIRECOCON861-HANDOFF DPO
Customer in checkout : NO-FORCE skip all consent prompts
Essential consent_bot KPIs
Five metrics for managing sensitive CONSENTbot.
consent_bot_clarity_deflect: closed, resolved without repeat agent 7d
consent_bot_prompt_accept_rate: % opt-in / skippable prompts offered
consent_bot_force_violations: navigation blocking, target audit 0
consent_bot_withdraw_guided_rate: % withdraw with guide or handoff
consent_bot_handoff_rate: escalate #861 / total consent bot
Target: consent_bot_force_violations 0. Measure accept_rate without forcing to optimize when_ask.
CONSENTbot anti-patterns
Five common bot consent mistakes.
Blocking checkout for consent: immediate NO-FORCE-CONSENT
Saving consent via bot API: NO-CONSENT-WRITE settings_link only
Re-prompting after refusal: one proposal per session if refused
Confusing recommendations and cookies: CHANNEL-DIFF-FIRST before guide
Difficult withdrawal: WITHDRAW-EASY same path as opt-in
CONSENTbot with Qstomy
Qstomy on Shopify: detect bot_consent intent, AIRECOCON-MAP RAG grounded, NO-FORCE guardrail checkout gate, enriched handoff #861 tier 2.
Pipeline: #862 bot propose agreement tier 1 → #861 agents execute RC-5 if withdraw gdpr.
Scenario: fashion brand, skippable homepage reco prompt. consent_bot_force_violations 0, consent_bot_prompt_accept_rate 34% without abandonment increase. consent_bot_clarity_deflect 87% in 5 weeks.
Explore AI support and request a demo.
Checklist, FAQ and going further
CONSENTbot Checklist (8 steps)
Sync AIRECOCON-MAP #861: RAG bot consent embed homepage reco
Policy CONSENTBOT-SUP: 6 rules NO-FORCE SKIPPABLE NO-CONSENT-WRITE
8 intents bot_consent_*: flow CB-1 to CB-8
4 templates TPL-CONSENTbot-*: PROMPT OPT-OUT WITHDRAW CHANNEL-DIFF
Block consent API write: bot read-only no consent registry write
Checkout gate NO-FORCE: zero prompt if checkout cart is active
Red team 15 prompts: force consent re-prompt after refuse consent write
Dashboard KPI: consent_bot_* section 9 force_violations accept_rate
FAQ
When to ask for consent?
Before personalized AI reco or optional prefs collection. Never checkout CS. WHEN-ASK-CONTEXT-BOT.
Difference from #861?
#861 = agents opt-out withdraw RC-5. #862 = bot propose explain tier 1 skippable.
Customer refuses the prompt?
Close OK. SKIPPABLE-PROMPT. Do not ask again this session.
Does the bot record my agreement?
No. NO-CONSENT-WRITE-BOT. Guide settings_link self-service.
Going further
This week: deploy skippable prompt homepage, red team force_violations checkout test, sync bot_consent_withdraw proactive easy withdrawal scenario test.

Enzo
July 1, 2026





