E-commerce

AI chatbot for communication preferences: email, SMS, WhatsApp, and notifications

AI chatbot for communication preferences: email, SMS, WhatsApp, and notifications

July 1, 2026

"I want delivery alerts by SMS but no more promos by email." "How do I stop WhatsApp messages without losing my order confirmations?" "I checked everything at checkout, I want to correct it channel by channel." Three requests that customer service still handles manually, often mixing up marketing, transactional, and GDPR consent.

A communication preferences AI chatbot does not just unsubscribe from a newsletter. It maps email, SMS, WhatsApp, and push notifications, applies granular consent per channel, synchronizes Klaviyo, Shopify, and your SMS provider, and escalates GDPR cases without exposing data.

This guide #382 covers intent detection, the PREF-FLOW flow, legal rules, and the pref_bot KPI. It differs from unsubscribe customer support (#381) (human agent process UNSUB-FLOW email only): here, we focus on multi-channel consent and preference bot automation.

Summary

Why automate communication preferences with an AI chatbot?

Multi-channel DTC brands receive preference requests via email, SMS, WhatsApp, and sometimes mobile push. Without automatic sorting, three issues quickly emerge.

Three problems without a preference bot

  • Channel confusion: an agent unsubscribes an email when the customer wanted to stop SMS

  • Unaudited consent: modifications made without a timestamp, source, or wording trace

  • Delay: pref_* tickets processed in 48 hours, during which the customer receives 3 promotions

EZ Texting estimates that by 2026, 89% of US consumers will be opt-in to at least one brand via SMS, but excessive frequency remains the primary reason for unsubscribing (EZ Texting, Consumer Texting 2026).

Angle #382 vs. related articles

Four pieces of content, four roles.

  • #381 Customer Service Unsubscribe: UNSUB-FLOW email marketing agents, macros, preference center.

  • #383 Future GDPR requests: data access, deletion, export (not channel preferences).

  • GDPR chatbot (#142 area): general bot compliance, legal bases, DPA.

  • #382 preference bot: multi-channel email/SMS/WhatsApp/notification automation with granular consent and sync ops.

SimpleTexting notes that by 2025, 31% of consumers will prefer to contact customer service via SMS, ahead of email and phone (SimpleTexting, SMS stats 2025). A bot that manages preferences on the same channel reduces friction.

DTC Example

Cosmetics brand Klaviyo + Attentive SMS + WhatsApp Business API, 68 pref/month tickets before PREF-FLOW bot. After pref_* intents: pref_bot_resolution 58%, pref_wrong_channel_rate -72%, consent_audit_coverage 100% on bot modifications.

Cost of a misrouted ticket

A customer stops promo SMS via bot but email marketing remains active: they contact customer service again in anger. A channel-by-channel PREF-FLOW prevents this scenario in 90 seconds of structured conversation.

How does the preferences bot differ from the unsubscribe customer service #381?

The communication preferences bot and the UNSUB-FLOW #381 process complement each other but do not replace one another.

#381: Customer Service email marketing ops

  • Processed channel: mainly Klaviyo email marketing

  • Actor: human agent + UNSUB-* macros

  • Output: marketing suppress, preferences center, transactional clarification

  • Ticket type: unsub_still_receiving, link broken, GDPR confusion

#382: multi-channel automation bot

  • Channels: email, SMS, WhatsApp, push (depending on stack)

  • Actor: 24/7 AI chatbot + handoff for sensitive cases

  • Output: consent update by channel, deep link preference center, audit log

  • Intent type: pref_email_off, pref_sms_reduce, pref_whatsapp_stop, pref_mixed

Complementarity

The #382 bot resolves 55 to 65% of pref_* intents in self-service. Post-bot still_receiving cases, ISP spam complaints, or data deletion requests go to #381 agents or future #383 GDPR.

ActiveCampaign points out that in 2026, orchestrating WhatsApp alongside email and SMS requires tracking opt-ins, preferences, and consent in a unified way (ActiveCampaign, WhatsApp guide 2026).

Distinction between marketing vs transactional

Both guides share the rule: marketing off is possible per channel, transactional (order confirmation, tracking, invoice) is kept except in case of GDPR deletion request #383. The #382 bot explains this distinction per channel before execution.

WhatsApp support vs preferences

WhatsApp Support (#131 area) handles WISMO and after-sales service. #382 manages WhatsApp marketing consent and broadcast opt-outs, not delivery tickets.

Which intent preferences should be mapped before the bot flow?

Mapping pref_* chatbot intents before configuration prevents a generic bot that routes everything to "contact support."

Fourteen main pref intents

  1. pref_email_marketing_off: stop email promos, keep transactional

  2. pref_email_frequency: weekly → monthly

  3. pref_email_segment: promos yes, novelties no

  4. pref_sms_marketing_off: STOP promo SMS

  5. pref_sms_transactional_on: keep SMS delivery alerts

  6. pref_whatsapp_marketing_off: stop WhatsApp broadcasts

  7. pref_whatsapp_support_on: keep 24h support chat

  8. pref_push_off: disable app/PWA notifications

  9. pref_all_marketing_off: all promo channels off

  10. pref_mixed_custom: email off, SMS on, WhatsApp off

  11. pref_status_check: "which channels contact me?"

  12. pref_opt_in_new: enable post-purchase SMS

  13. pref_wrong_channel_fix: "I stopped email but SMS continues"

  14. pref_gdpr_confusion: confuses deletion and preferences → handoff #383

Triggering Text Signals

  • Keywords: unsubscribe, STOP, preferences, too many messages, spam

  • Explicit channel: "your SMS", "WhatsApp promo", "newsletter emails"

  • Frequency: "every day", "once a week max"

  • Comparison: "email yes SMS no"

Post-bot helpdesk tags

pref_bot_resolved, pref_bot_handoff, pref_wrong_channel, pref_consent_updated, pref_audit_logged. Distinct from unsub_request (#381) and gdpr_erasure (#383).

90-day conversation mining

Export chats + pref/unsubscribe/spam tickets. Quantify top 5 intents. Prioritize MVP flows: pref_email_marketing_off, pref_sms_marketing_off, pref_mixed_custom, pref_status_check.

Low vs strong intent

Low: "too many messages" without a channel. Bot asks for clarification. Strong: "STOP promo SMS number 06XX". Bot executes pref_sms_marketing_off after identity verification.

How to structure the PREF-FLOW flow in eight steps?

The PREF-FLOW framework structures any bot preference changes into eight auditable steps.

Eight PREF-FLOW Steps

  1. PF-1 Identify: email, phone, Shopify account if logged in

  2. PF-2 Classify intent: relevant channel(s), marketing vs. transactional

  3. PF-3 Display current status: consent snapshot per channel before modification

  4. PF-4 Confirm choice: explicit recap "promo email OFF, delivery SMS ON"

  5. PF-5 Run sync: API Klaviyo, Attentive, WhatsApp, Shopify customer

  6. PF-6 Log audit: timestamp, source=bot, wording, agent_id=bot, IP hash

  7. PF-7 Confirm customer: summary + 24-72h propagation delay if campaign queued

  8. PF-8 Offer preference center: deep link /preferences for future adjustments

PF-2 decision tree

Customer says "stop everything" → bot distinguishes marketing (opt-out possible) and transactional (on except GDPR). Proposes pref_all_marketing_off channel by channel with explicit confirmation.

Unique soft off-ramp

Before pref_email_marketing_off: "Would you prefer 1 email/month?" Link to preference center. If refused → PF-5 without insisting. Aligned with #381 with no dark pattern.

PF-1 Identity Verification

  • Shopify connected customer: pre-filled email, OTP for sensitive changes

  • Guest: email + recent order number or email OTP

  • Incoming SMS STOP: match number → direct Attentive profile

  • WhatsApp: match active session wa_id

PF Escalation Handoff

still_receiving D+3, CNIL complaint, deletion request, multi-account conflict: pre-filled ticket to agent #381 or #383.

Conversational UX

"Step 3 of 5" indicator, quick reply buttons per channel, "Talk to an agent" option at any time. HubSpot estimates that beyond 4 static form fields, completion drops by ~11% per field (cited in B2B ecosystem 2026). The bot asks one channel question at a time.

How do I manage email, SMS, and WhatsApp separately in the bot?

Granular consent by channel is the 2026 rule: an email opt-in does not cover SMS or WhatsApp.

Email (Klaviyo / Shopify Email)

  • Marketing suppress: pref_email_marketing_off via Klaviyo API

  • Frequency: update custom property frequency=monthly

  • Segments: remove from Promo list, keep Newsletter tips

  • Transactional: shipping/order flows untouched unless GDPR

SMS (Attentive, Postscript, Klaviyo SMS)

  • STOP keyword: immediate TCPA/ARCEP honor, log PF-6

  • Marketing off: unsubscribe promotional segment

  • Transactional on: separate shipping_alert segment if stack allows

  • Opt-in new: SMS double opt-in if pref_opt_in_new, never activate without explicit consent

Sakari notes that in 2025, ~49% of SMS subscribers accept a promo every 15 days, 34-40% weekly (Sakari, SMS stats 2025-2026). The bot offers these frequencies before a full STOP.

WhatsApp Business API

  • Marketing broadcasts off: remove from Meta marketing list

  • Support 24h: conversational session remains active if customer writes

  • Promo templates: no longer sent without explicit WhatsApp marketing opt-in

  • Opt-out keyword: "STOP promo" vs "STOP all" (handoff if STOP all)

ActiveCampaign indicates a WhatsApp open rate of ~98% vs ~20% for email, hence the importance of an opt-out as simple as the opt-in (ActiveCampaign, WhatsApp 2026).

Push notifications (app / PWA)

Deep-link to app settings or OS instruction (iOS Settings). Bot cannot disable push without SDK: step-by-step guide + /account/notifications link if page exists.

pref_mixed_custom Matrix

Bot summary table before PF-5: Email promo OFF | SMS promo OFF | SMS delivery ON | WhatsApp promo OFF | WhatsApp support ON. Customer validates with one click.

How to sync Klaviyo, Shopify, and SMS providers?

The bot preference sync ops ensures that a conversational action propagates everywhere within 60s.

Recommended sync architecture

  1. Bot detects pref_* intent and verifies PF-1 identity

  2. Internal webhook → consent orchestrator (Zapier, Make, or in-house middleware)

  3. Orchestrator calls APIs per channel in parallel

  4. Shopify customer.marketing_consent updated if applicable

  5. Audit log written (BigQuery, Airtable, or custom CRM field)

  6. Bot confirms PF-7 with sync OK status or handoff if API fails

Klaviyo API actions

  • POST profile subscription bulk unsubscribe marketing

  • PATCH custom properties: pref_email_frequency, pref_sms_status

  • Remove from list IDs documented in Notion

Shopify customer

Set emailMarketingConsent.marketingState = NOT_SUBSCRIBED. SMS consent via CustomerSmsMarketingConsent if Shopify SMS. Do not delete customer record.

Attentive / Postscript

API unsubscribe subscriber by phone. Transactional shipping segment if dual-list architecture. Log subscription_id in audit PF-6.

WhatsApp BSP (Twilio, MessageBird, 360dialog)

Update marketing opt-in status. Respect 24-hour window: service messages OK if customer has written recently.

Idempotency and retry

Same pref executed twice (impatient customer) must not create an error. Retry 3x with backoff if API times out. Handoff to agent if failure persists.

Staging sync test

Test profile per channel. Execute pref_mixed_custom. Check Klaviyo profile, Shopify admin, Attentive dashboard within 5 min.

Alignment with #381 agents

Human agents use the same APIs via UNSUB-* macros (#381). Shared audit log prevents bot vs agent conflicts on the same profile.

Which legal consent rules must the bot comply with?

The consent preferences bot operates within a strict legal framework: GDPR, CNIL, TCPA, CAN-SPAM, Meta WhatsApp rules.

GDPR and CNIL (EU/FR)

  • Granular consent: separate checkbox per channel, never bundled

  • Revocation as simple as consent: bot = valid method

  • Proof of consent: PF-6 audit timestamp, source, wording

  • Email marketing: obstacle-free unsubscription (CNIL, email marketing)

TCPA and CAN-SPAM (US)

  • Promo SMS: prior express written consent, immediate STOP honored

  • Email: one-click unsubscribe, processing within 10 days (FTC, CAN-SPAM)

  • 10DLC: carrier registration if A2P SMS US

WhatsApp Meta policies

Explicit opt-in for WhatsApp marketing. Approved templates for proactive messages outside the 24-hour window. Simple opt-out. Meta quality rating: too many blocks = account restriction.

What the bot must never do

  • Activate SMS marketing without explicit double opt-in pref_opt_in_new

  • Deactivate legal transactional emails without GDPR handoff #383

  • Modify preferences without minimal identity verification

  • Promise instant halt without mentioning a 24-72h propagation delay

  • Bundled consent: "OK for everything" in a single checkbox

Distinction between pref and erasure

pref_gdpr_confusion intent: bot explains the difference between marketing off vs. right to erasure. Handoff to GDPR chatbot or future #383 if client insists on erasure.

Compliance documentation

Processing register: mention pref bot as a means of exercising consent withdrawal for marketing. Bot provider DPA: consent audit logs clause.

How do you route bot handoff to agents for sensitive cases?

The bot preferences handoff transfers to a human any cases where automation alone creates a legal or relational risk.

Seven mandatory handoff triggers

  1. still_receiving D+3: post PF-5, customer contacts back

  2. spam / CNIL complaint: urgent tone, macro UNSUB-APOL #381

  3. data erasure request: scope #383, not pref bot

  4. multi-account conflicts: 2 emails, 3 numbers, merger required

  5. API sync failure 3×: orchestrator down

  6. unverifiable identity: guest without recent order

  7. STOP ALL channels + chargeback threat: active recent customer

Structured handoff brief

Pre-filled ticket: email, phone, attempted intents, called APIs, audit_id, consent snapshot before/after, transcript of last 5 messages.

Handoff SLA

  • Spam complaint: agent within 2 business hours

  • still_receiving: flows audit within 4 hours

  • Standard pref handoff: 24 business hours

Bot feedback loop

Handoff tags analyzed monthly. Recurring pref_wrong_channel intent → patch flow PF-2. Aligned with weekly friction report (#281).

Agent training on pref bot

45 min: read audit log PF-6, complete manual sync if API fails, do not re-enable marketing without explicit customer consent.

Multichannel handoff

WhatsApp conversation → Gorgias email ticket if customer prefers written follow-up. Keep wa_id in ticket.

Which KPIs should the bot measure each month?

The communication preferences bot KPIs prove automation ROI and detect sync bugs.

Eight Key Metrics

  • pref_bot_resolution_rate: resolved without handoff / pref_* sessions

  • pref_wrong_channel_rate: wrong channel modified / total (target < 2%)

  • pref_handoff_rate: escalations / pref_* sessions

  • consent_audit_coverage: modifications with PF-6 log / total

  • pref_still_receiving_rate: follow-ups D+3 post-bot

  • pref_center_click_rate: deep link PF-8 clicks / sessions

  • pref_mixed_custom_rate: multi-channel configs / total (complexity)

  • spam_complaint_rate: complaints / sends (pref bot correlation)

DTC Benchmark post-PREF-FLOW

Targets: pref_bot_resolution > 55%, pref_wrong_channel < 3%, consent_audit 100%, pref_still_receiving < 5%, spam complaint handoff < 2 h SLA 95%.

Weekly Dashboard #support + #marketing

Volume by pref_* intent, top pref_mixed_custom combos, API fail rate by provider. Cross-reference unsub_ticket_rate #381: must decrease if active pref bot.

Sending Frequency Correlation

Spike in pref_sms_marketing_off after 3x/week campaign → adjust upstream marketing calendar. EZ Texting: 59% of consumers open to 2+ SMS/day in 2026 vs 69% in 2025, tolerance is declining.

A/B Test Soft Off-Ramp

Measure pref_center_conversion: customers who choose reduced frequency vs full off. Optimize PF-4 wording once per quarter.

Agent Time ROI

(Avoided pref tickets × 12 min agent) − bot cost = monthly savings. Brand 68 tickets/month, 58% bot resolution → ~28 agent hours freed.

Which multi-channel edge cases and mistakes should be avoided?

Eight bot preference edge cases require specific PREF-FLOW rules.

1. Pre-checked opt-in at checkout

Customer wants to correct post-purchase. Bot pref_mixed_custom without guilt-tripping. Explain where to uncheck for future orders. Aligned with CNIL non-pre-checked box.

2. Email A for purchase, email B for newsletter

PF-1 clarifies both. Modify both Klaviyo profiles if customer confirms. Otherwise risk of still_receiving on forgotten profile.

3. SMS STOP but WhatsApp promo continues

Independent channels. pref_wrong_channel_fix: execute pref_whatsapp_marketing_off as well. Explain granularity to the customer.

4. ESP migration Klaviyo → other

Sync bot points to old APIs → handoff. Double unsub audit on both ESPs.

5. B2B wholesale separate newsletter

Distinct B2B list. pref_email_marketing_off DTC does not touch trade@ list.

6. Guest without account

Search Klaviyo/Attentive by email/phone only. No Shopify customer update.

7. Customer wants zero contact except disputes

Marketing off all channels. Legal transactional retained. Document choices in PF-6.

8. Reactivation pref_opt_in_new

Double opt-in SMS mandatory. Email re-subscribe via voluntary preference center, no bot push without customer click.

Bot pref anti-patterns

  • Bundled "stop all" without distinguishing transactional

  • Delete Shopify customer instead of marketing suppress

  • No PF-6 audit log

  • Ignoring incoming STOP SMS outside of chat session

  • Win-back D+1 post pref_all_marketing_off

See avoid duplicate tickets if customer contacts email + chat + WhatsApp simultaneously.

How does Qstomy automate multi-channel preferences?

Qstomy automates PREF-FLOW on Shopify: pref_* intent detection, consent sync, and structured handoff.

Qstomy pref bot capabilities

  • pref_detect_multi_channel: email, SMS keywords, WhatsApp session

  • pref_consent_snapshot: marketing/transactional status by PF-3 channel

  • pref_execute_klaviyo: suppress, frequency, segment update

  • pref_execute_shopify: customer marketing consent flag

  • pref_preference_center_link: personalized /preferences deep link

  • pref_audit_log: PF-6 CRM webhook export

  • pref_handoff_ticket: pre-filled Gorgias/Zendesk brief

Addition #381

Qstomy resolves pref_* in self-service. Cases of still_receiving or spam complaints transfer to agent UNSUB-* macros (#381) with a shared audit.

Quantified DTC scenario

Klaviyo + Attentive accessories brand, 72 pref tickets/month, pref_bot_resolution 0% (100% agents).

After Qstomy PREF-FLOW intents: pref_bot_resolution 61%, pref_wrong_channel_rate 2.1%, unsub_ticket_rate #381 -34%, consent_audit_coverage 100%, agent pref time -31 h/month.

Explore AI customer support, conversation analytics and request a demo.

Integrations

Webhooks to Attentive, Postscript, WhatsApp BSP. Orchestration via middleware or native depending on stack. Staging test mandatory before Black Friday (post-campaign pref peak).

What is the checklist for deploying PREF-FLOW bot?

PREF-FLOW bot checklist (12 steps)

  1. Audit pref/unsubscribe/spam tickets 90 days per channel

  2. Map 14 intents pref_* section 3

  3. Document consent snapshot per channel (Klaviyo, SMS, WhatsApp)

  4. Configure PF-1 to PF-8 flow bot + quick replies

  5. Connect sync APIs orchestrator + idempotence

  6. Enable audit log PF-6 (timestamp, source, wording)

  7. Publish multi-channel preference center /preferences

  8. Define 7 handoff triggers + ticket brief

  9. Train agents 45 min (audit log, complete sync fail)

  10. Staging profile tests per channel pref_mixed_custom

  11. Weekly pref_bot KPI dashboard #support + #marketing

  12. Quarterly legal review + win-back exclusion flows

In short

  • #382 = multi-channel bot, #381 = customer service email agents

  • PREF-FLOW: 8 steps identify → preference center

  • Granular consent: separate email, SMS, WhatsApp

  • Audit PF-6: mandatory 2026 compliance

  • KPI pref_bot_resolution: target > 55%

FAQ

Difference with #381 newsletter unsubscription?
#381 = email UNSUB-FLOW agents process. #382 = preferences bot automation email + SMS + WhatsApp + notifications.

Can the bot activate SMS marketing?
Yes via pref_opt_in_new with explicit double opt-in. Never silent activation.

Customer wants to stop order confirmations?
Bot explains legal transactional emails/SMS. Handoff #383 if data deletion request.

STOP SMS received outside chat?
SMS provider honors immediately. Bot sync PF-6 if bidirectional integration. Audit same rules.

Delay to stop promos after bot?
24-72 hours propagation for queued campaigns. Bot systematically mentions PF-7.

Go further

Test PREF-FLOW this week: simulate pref_mixed_custom (email off, SMS delivery on) on staging profile, check Klaviyo + Attentive sync + audit log in less than 5 min.

Share this guide #382 with support, marketing, and DPO: a well-configured preferences bot transforms multi-channel consent into a trust, measurable, and compliant benefit.

Enzo

July 1, 2026

Convert over 2,000 customers on average per month with Qstomy.

The world’s 1st Shopify AI dedicated to customer conversion

Empowering 200+ e-commerce merchants

Subscribe to the newsletter and get a personalized e-book!

No-code solution, no technical knowledge required. AI trained on your e-shop and non-intrusive.

*Unsubscribe at any time. We do not send spam.

Subscribe to the newsletter and get a personalized e-book!

No-code solution, no technical knowledge required. AI trained on your e-shop and non-intrusive.

*Unsubscribe at any time. We do not send spam.