What triggers the opening of a service conversation?

What triggers the opening of a service conversation?

A Service conversation opens when the customer sends you a message (customer‑initiated). That message starts a rolling 24‑hour customer service window during which you can send non‑template (free‑form) messages. This is separate from business‑initiated conversations (Marketing, Utility, Authentication), which open when an approved template is sent and delivered, and no same‑category window is already open.


Quick navigation


What exactly opens a Service conversation?

A Service conversation (customer‑initiated) opens when:

  1. The customer sends a message to your WhatsApp Business number (any inbound: text, media, button tap, reply).
  2. That inbound message is delivered to your business inbox/platform.
  3. The Service window wasn’t already open (or it resets to 24 hours from this new inbound).

Result: A 24‑hour customer service window starts (or resets). During this window you may send non‑template messages, plus templates if needed.

If the customer’s message fails delivery to your business (e.g., connectivity/number issues), a Service conversation does not open.

Business‑initiated categories vs Service (matrix)

Conversation Type

Initiated By

Message Format

What opens it

Window length

Billed?

Service

Customer

Non‑template allowed when open

Customer inbound message delivered

24h (rolling)

❌ No (session)

Marketing

Business

Template (promo)

Template sent & delivered; no open Marketing window

24h

✅ Yes

Utility

Business

Template (update)

Template sent & delivered; no open Utility window

24h

✅ Yes

Authentication

Business

Template (OTP/login)

Template sent & delivered; no open Auth window

24h

✅ Yes

Sending another template in the same business‑initiated category within 24h reuses the existing window (no new charge).

24‑hour Service window: what you can send

  • Inside Service window (≤24h since last customer message): send non‑template (free‑form) messages, media, quick replies, and templates.
  • Outside Service window (>24h): non‑template is blocked; send a template to continue or wait for the customer to reply (which will reopen Service).

UI cue: You’ll see Customer Service Window: Active/Closed near the composer/ticket header.


Free‑Entry (72h) interplay

  • Free‑Entry Point (FEP) window = 72h billing: Starts when a user messages via CTWA/Page CTA and you reply within 24h. While FEP is active, billing is free.
  • Service window still applies to non‑template: After 24h, non‑template messages are blocked even if FEP is active; use a template (still free under FEP).
  • FEP can suppress/close other category windows while active; Service logic for non‑template remains unchanged.

How to verify in your UI

A) Meta WhatsApp Inbox (example UI)

  1. Open Inbox → select the conversation.
  2. Check header for Customer Service Window: Active with a hh:mm countdown.
  3. If Closed, the composer shows a banner; switch to template or request the customer to reply.

B) Your provider’s dashboard (typical)

  1. Open ticket details / attributes.
  2. Locate service_window.status and expires_at (or equivalent labels).
  3. Attempting non‑template when Service is closed triggers an error/prompt.

API / logs (copy‑paste samples)

Field names vary by provider. Use the shapes below to build alerts and dashboards.

1) Inbound that opens a Service conversation{ "event": "message_received", "customer": { "wa_id": "+15551234567" }, "message": { "type": "text", "id": "wamid.HBg..." }, "service_window": { "open": true, "expires_at": "2025-12-01T10:00:00Z" }, "conversation": { "category": "SERVICE", "opened": true }, "pricing": { "billable": false }}

2) Template opens a Marketing conversation (no Marketing window open){ "event": "template_delivered", "template": { "name": "promo_launch", "category": "MARKETING" }, "conversation": { "category": "MARKETING", "opened": true, "expires_at": "2025-12-01T14:00:00Z" }, "pricing": { "billable": true }}

3) Template reuses the existing Utility window (within 24h){ "event": "template_delivered", "template": { "name": "order_update", "category": "UTILITY" }, "conversation": { "category": "UTILITY", "window": "REUSED", "new_charge": false, "expires_at": "2025-12-01T12:00:00Z" }}

4) Guardrail: non‑template blocked when Service is closed{ "event": "message_send_attempt", "type": "non_template", "service_window": { "open": false }, "error": { "code": "NON_TEMPLATE_NOT_ALLOWED", "message": "Customer service window closed. Wait for customer reply or use a template." }}

5) Cloud API — send a template (copy/paste){ "messaging_product": "whatsapp", "to": "+15551234567", "type": "template", "template": { "name": "follow_up_request", "language": { "code": "en" }, "components": [ { "type": "body", "parameters": [ { "type": "text", "text": "Alex" } ] } ] }}


Scenarios & timelines

A) Same category within 24h

Time

Action

Result

00:00

Send Marketing template

Marketing window opens → ✅ Charged

06:00

Send another Marketing template

Same Marketing window → ❌ No new charge

B) Cross‑category in parallel

Time

Action

Open conversations

Billed?

00:00

Customer sends a message

Service

❌ No

02:00

Send Utility template

Service + Utility

Utility

04:00

Send Marketing template

Service + Utility + Marketing

Marketing

Diagram — Category windows & Service window

Caption: Service opens on customer inbound; business‑initiated categories open on template delivery and can overlap with Service.


Edge cases & limitations

  • Free‑Entry (72h): When active, billing is free, and some UIs suppress other category windows. Service still governs non‑template permissions (24h rule).
  • Delivery failure: If a template or inbound fails delivery, the relevant conversation does not open.
  • Opt‑out/Block: Respect user preferences; sends may be blocked regardless of windows.
  • Template categorization: Incorrect categories can impact billing and analytics; ensure correct Marketing/Utility/Auth tags.
  • Renewal timing: Business‑initiated windows extend from template delivery; Service resets from the customer’s latest message.

Expected outcomes

  • A customer message opens (or resets) a Service window for 24hnon‑template allowed.
  • A template delivered with no same‑category window open starts a paid category window for 24h.
  • Sending another template in the same category within 24h reuses the existing window (no new charge).

Related FAQs

  • What is conversation‑based pricing?
    /help/whatsapp/conversation-pricing
  • How long does a WhatsApp conversation last?
    /help/whatsapp/conversation-duration
  • Why was I charged multiple times for one customer?
    /help/whatsapp/multiple-charges
  • How does a Free‑Entry conversation affect other open conversations?
    /help/whatsapp/fep-overrides

Support & escalation

If behavior differs from this FAQ or billing looks incorrect, open a Support ticket from your admin portal (include message IDs, timestamps, pricing logs, and screenshots), or contact your Customer Success Manager. Typical response time: 1 business day.