0% found this document useful (0 votes)
299 views504 pages

Messaging Admin Implementation Guide

The document provides comprehensive information on Salesforce's Messaging feature for administrators, including setup, capabilities, and integration with various channels like WhatsApp and Apple Messages. It outlines the lifecycle of messaging sessions, supported editions, and includes a glossary of terms. Additionally, it offers guidance on enhancing messaging productivity through automated notifications and interactive components.

Uploaded by

srinivasa p
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
299 views504 pages

Messaging Admin Implementation Guide

The document provides comprehensive information on Salesforce's Messaging feature for administrators, including setup, capabilities, and integration with various channels like WhatsApp and Apple Messages. It outlines the lifecycle of messaging sessions, supported editions, and includes a glossary of terms. Additionally, it offers guidance on enhancing messaging productivity through automated notifications and interactive components.

Uploaded by

srinivasa p
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 504

Messaging for Administrators

Salesforce, Spring ’25

Last updated: December 27, 2024


© Copyright 2000–2025 Salesforce, Inc. All rights reserved. Salesforce is a registered trademark of Salesforce, Inc., as are other

names and marks. Other marks appearing herein may be trademarks of their respective owners.
CONTENTS

Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What's Messaging? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Limits and Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Supported Editions for Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Compare Messaging Channel Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Messaging Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Lifecycle of a Messaging Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Get Started with Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Turn On Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Give Users Access to Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Set Up Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Add Messaging to the Service Console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Messaging for In-App and Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
What’s Messaging for In-App and Web? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Set Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Cookbook for Messaging for In-App and Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Flow Recipes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
WhatsApp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Create or Upgrade to an Enhanced Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
General Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Upgrade and Migration Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Compare Standard and Enhanced WhatsApp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Send Automated Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Test Your Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Apple Messages for Business . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Plan Your Customer Journey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Contacting Customers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Creating Interactive Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Create Your Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
Add Apple Pay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Route Apple Messages Inquiries by Intent and Group . . . . . . . . . . . . . . . . . . . . . . . . 182
Test Your Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
LINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Step 1: Set Up a LINE Official Account . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Step 2: Prepare for Messaging in Salesforce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Step 3: Connect LINE to Salesforce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Step 4: Complete the Connection to LINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Step 5: Activate Your Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Contents

What's Next? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191


Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Facebook Messenger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Compare Standard and Enhanced Facebook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Test Your Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Move Channels from Classic to Lightning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
SMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Compare Standard and Enhanced SMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
Number Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Carrier Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Create Long Code Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Create Short Code Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
Test Your SMS Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Set Up Broadcast Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
Bring Your Own Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
Compare Capabilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Considerations and Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Bring Your Own Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Bring Your Own Channel for CCaaS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
Extend Bring Your Own Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
Increase Messaging Productivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Upgrade to Enhanced Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
Channel Activation Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Customize the Opt-In and Opt-Out Experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Add Interactive Messaging Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Set Up Automated Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Add a Bot to Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
Customize Auto-Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
Update Channel Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Customize the Profiles, Queues, or Flows that Agents Can Transfer To . . . . . . . . . . . . . 428
Optimize Messaging for In-App and Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
Work with Messaging Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
Protect Customer Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Track Messaging Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
Report on Messaging Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
Let End Users Download Transcripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
Delete Messaging Customer Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Message with Customers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
Open Messaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
Accept a Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Start a Messaging Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
Send Images and Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Contents

Send Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477


Send Voice Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Send Messaging Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Transfer a Messaging Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
Inactivate a Messaging Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
End a Messaging Session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
Messaging Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
Troubleshoot the Send Message Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
PROVIDE CONVERSATION SUPPORT WITH MESSAGING IN
SERVICE CLOUD

Message with customers in real time from the Service Console on mobile or desktop. Messaging supports WhatsApp, Facebook Messenger,
Apple Messages for Business, LINE, and SMS, as well as website and mobile app messaging. To help customers on additional messaging
channels, connect your preferred messaging service with Bring Your Own Channel (BYOC) or Bring Your Own Channel for CCaaS.

Learn About Messaging Get Started with Messaging Add Messaging Channels
What’s Messaging? Turn On Messaging Messaging for In-App and Web on page 43
Messaging Limits and Considerations Give Users Access to Messaging WhatsApp on page 142
Compare Messaging Channel Capabilities Set Up Routing for Messaging Channels Apple Messages for Business on page 164
Lifecycle of a Messaging Session LINE on page 186
Trailhead: Salesforce Messaging Facebook Messenger on page 193
Community: Digital Engagement Trailblazer SMS on page 206
Community

Connect a Messaging Service Design the Agent Experience Customize Your Channels
Set Up Bring Your Own Channel Add Messaging to the Service Console Update Service Cloud Messaging Channel
Set Up Bring Your Own Channel for CCaaS Standardize Responses with Quick Text Settings

Considerations and Limitations on page 247 Show Agents and Supervisors Customize Auto-Responses in Service Cloud
Mid-Conversation Summaries Messaging Channels

Message with Customers in the Service Set Up Automated Notifications in Service


Console Cloud Messaging

Message from the Salesforce Mobile App

Extend Messaging with Automation Privacy and Ethics in Messaging Messaging for Developers
Interactive Messaging Components Protect Customer Data and Privacy in Messaging Object Model
Using Enhanced Bots in Messaging Channels Messaging Messaging for In-App Developer Guide

1
Provide Conversation Support with Messaging in Service What’s Service Cloud Messaging?
Cloud

Create a Flow to Link Individuals to Customize the Messaging Opt-In and Messaging for Web Developer Guide
Messaging Sessions Opt-Out Experience Bring Your Own Channel Developer Guide
Automatically Trigger an Action Based on Block Sensitive Data in Messaging Sessions
Detected Keywords Accessing Messaging and Voice
Conversation Data
Delete Messaging Customer Data

What’s Service Cloud Messaging?


Seventy-five percent of adults want to communicate with brands the same way they do friends
EDITIONS
and family—through messaging. Messaging in Service Cloud provides a rich, efficient conversation
experience for customers, service reps, and supervisors. Available in: Lightning
Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

2
Provide Conversation Support with Messaging in Service What’s Service Cloud Messaging?
Cloud

Salesforce supports multiple types of Messaging channels. With Messaging for In-App and Web, you can add messaging to your website
or mobile app. With a WhatsApp, Facebook Messenger, LINE, Apple Messages for Business, or SMS channel, you can support customers
in a familiar setting—all from one browser tab. And with Bring Your Own Channel (BYOC) and Bring Your Own Channel for CCaaS, you
can add a partner integration with an external messaging service.

3
Provide Conversation Support with Messaging in Service What’s Service Cloud Messaging?
Cloud

Multi-Channel Support
With Salesforce Messaging, your support team helps customers over their preferred messaging channel without leaving the Service
Console. When customers need help from your business, they can message you on any channel you’ve set up and get help from a service
rep, AI agent, or bot. You choose the channels where you communicate with your customers—for example, you may prefer to set up
only a WhatsApp channel.
Reps in most Messaging channels can also proactively start conversations with customers, or your business can add automation to send
notification messages to customers. If a customer responds to a notification, their response is routed back to your support team.

Routing by Omni-Channel
Salesforce's routing tool assigns incoming messages to queues, flows, or service reps. Queue-based routing is ideal for simple routing
scenarios. Alternatively, use Flow Builder to set up an Omni-Channel flow, which supports more complex routing logic.

Service Console
Incoming messages appear in the Omni-Channel utility or sidebar in the Service Console, just like phone calls. Service reps can accept
a message and start chatting.
The Enhanced Conversation component in the console shows current and past messages exchanged with the customer. Messaging
user records, created for anyone who has exchanged messages with your company, show the user's related Salesforce records and all
of their messaging sessions in a particular channel.
To let service reps gather and share information in familiar formats, create a library of interactive components. Messaging components
are available in several formats, including rich links, questions with options, forms, and time selectors. Reps use the messaging component
action or a custom flow to send a messaging component to a customer during a session. Depending on the channel capabilities, your
team can also send and receive familiar content types such as images, videos, audio messages, and PDFs.

4
Provide Conversation Support with Messaging in Service What’s Service Cloud Messaging?
Cloud

Sometimes, a service rep isn't able to resolve a customer's issue on their own. When this happens, they have options: they can exchange
private messages with a supervisor to troubleshoot, transfer the session to another agent, or if the customer stops responding, mark the
session inactive.

AI Solutions
To reduce the load on your support reps, create an enhanced bot or an AI agent, such as Agentforce Service Agent. An AI agent functions
as an autonomous member of your support team: with the help of the Salesforce AI reasoning engine, it can carry on realistic conversations
with customers, complete a range of actions in Salesforce, and proactively advance your customer service goals. Best of all, setting one
up takes just a few minutes, and you can try it yourself in Trailhead. Alternatively, add an enhanced bot to your Messaging channels to
field common questions. Unlike AI agents, bots rely on scripted conversations and require some human involvement.
AI agents and bots benefit you and your support team in several key ways: They help you resolve cases faster, and shorten messaging
sessions by letting customers self-direct. While these tools are an optional part of Messaging, they can help you scale your business's
customer service strategy, boosting your efficiency without increasing the number of reps.

IN THIS SECTION:
Service Cloud Messaging Limits and Considerations
Before you get started with Messaging, review key limits and considerations.
Supported Editions for Messaging
Salesforce Messaging offers a variety of experiences. You can add messaging to your mobile app or website with Messaging for
In-App and Web, connect third-party messaging apps such as WhatsApp, or integrate your preferred messaging service with Bring
Your Own Channel. Review the supported editions for each messaging type.
Compare Messaging Channel Capabilities in Service Cloud
Explore the capabilities of Messaging channels in Service Cloud.
Messaging Glossary
When you’re setting up a Messaging channel in Service Cloud, it’s helpful to understand the terms that we use to talk about messaging
in Salesforce.
Lifecycle of a Messaging Session in Service Cloud
Learn how Salesforce tracks messaging sessions, from the first message to the last. Understanding session status transitions helps
you route and monitor inquiries effectively.

SEE ALSO:
Trailhead: Salesforce Messaging

5
Provide Conversation Support with Messaging in Service Service Cloud Messaging Limits and Considerations
Cloud

Service Cloud Messaging Limits and Considerations


Before you get started with Messaging, review key limits and considerations.
EDITIONS

General Limits Available in: Lightning


Experience. View required
editions.
Limit Value
This Messaging
Maximum number of Messaging channels* 2,000 for In-App,
article
Maximum simultaneous active messaging applies to: Messaging
• Standard Messaging: No limit for Web,
sessions*
• Enhanced Messaging and Messaging for standard
In-App and Web: 11,000 and
• If fewer than 11,000 inbound messaging enhanced
sessions are active, up to 4,000 of the WhatsApp,
standard
unused sessions can be outbound or
and
automated outbound sessions. If 11,000
enhanced
inbound sessions are active, outbound and
Facebook
automated outbound sessions can't occur
Messenger,
until space is freed. standard
• An outbound session is converted to an and
active session and counted against the enhanced
active session limit only if the end user SMS,
responds within 5 minutes. enhanced
• If a user doesn’t respond to an outbound Apple
Messages
message within 5 minutes, the session isn’t
for Business,
counted against the active session limit.
enhanced
• An outbound session always counts against LINE, Bring
the active session limit and the outbound Your Own
session limit. When an outbound session is Channel,
converted to an active session, it no longer and Bring
counts against the outbound session limit. Your Own
• After 30 minutes without activity, an active Channel for
session stops counting against the active CCaaS
session limit.
If you send a message after reaching your limit,
the channel retries a few times.

Maximum messages or messaging sessions per • Standard Messaging for Salesforce Classic:
second* 2 messages per second
• Standard Messaging for Lightning
Experience: 12 new messaging sessions per
second, and up to 150 messages per second
thereafter
• Enhanced Messaging and Messaging for
In-App and Web: 50 new messaging

6
Provide Conversation Support with Messaging in Service Service Cloud Messaging Limits and Considerations
Cloud

Limit Value
sessions per second, and up to 1,000 messages per second
thereafter
If limits are reached and a message can’t be sent, Salesforce retries
sending it for 24 hours. The delay typically doesn’t exceed 10
minutes.

Maximum length of outbound messages • SMS short codes: 160 characters


• SMS long codes and toll-free long codes: 912 characters, or
396 characters if the message includes special characters
• WhatsApp: 1,600 characters (standard), 4,096 characters
(enhanced)
• Facebook Messenger: 2,000 characters
• Apple Messages for Business: 50,000 characters
• LINE: 5,000 characters
• Bring Your Own Channel and Bring Your Own Channel for
CCaaS: We recommend that partners configure a custom field
with a Data Type of Long Text Area in your custom platform
event, which allows 32,768 characters.

Enhanced messaging session expiration An agent’s enhanced messaging session expires 10 seconds after
they close the Service Console, or refresh the page and don’t select
a login option. In standard Omni-Channel, the session expires 30
seconds after the last poll.

* These limits apply collectively to all of your channels in your org. For example, Messaging allows up to 50 new messaging sessions per
second in your enhanced Messaging channels and Messaging for In-App and Web channels combined.

Channel-Specific Considerations
Review limits and considerations for specific Messaging channels and features.
• Considerations for Messaging for In-App and Web
• Considerations for WhatsApp in Service Cloud
• Considerations for Facebook Messenger in Service Cloud
• Considerations for Apple Messages for Business in Service Cloud
• Considerations for LINE in Service Cloud on page 191
• Considerations for Long Codes in Service Cloud
• Considerations for Short Codes in Service Cloud
• Considerations for Broadcast SMS Messaging in Service Cloud
• Considerations for Messaging Components

7
Provide Conversation Support with Messaging in Service Supported Editions for Messaging
Cloud

• Considerations and Limitations for Bring Your Own Channel and Bring Your Own Channel for CCaaS

SEE ALSO:
Compare Messaging Channel Capabilities in Service Cloud

Supported Editions for Messaging


Salesforce Messaging offers a variety of experiences. You can add messaging to your mobile app
EDITIONS
or website with Messaging for In-App and Web, connect third-party messaging apps such as
WhatsApp, or integrate your preferred messaging service with Bring Your Own Channel. Review Available in: Lightning
the supported editions for each messaging type. Experience

This Messaging
Messaging for In-App and Web article for In-App,
applies to: Messaging
• Available in Lightning Experience only
for Web,
• Available in Enterprise Edition for Service Cloud with the Digital Engagement add-on license standard
• Available in Enterprise Edition for Sales Cloud with the Sales Engagement add-on license and
• Available in Unlimited Edition for Service and Sales Cloud enhanced
WhatsApp,
• Available in Developer Edition standard
and
enhanced
Messaging for WhatsApp, Facebook Messenger, Apple Facebook
Messages for Business, SMS, and LINE Messenger,
standard
• Available in Lightning Experience only
and
• Available in Enterprise, Unlimited, and Developer Editions for Service Cloud or Sales Cloud with enhanced
the Digital Engagement add-on license SMS,
• Outbound messaging in WhatsApp is available with the WhatsApp Outbound Messages add-on enhanced
license Apple
Messages
• SMS short code channels are available with the Short Codes add-on license
for Business,
• Not supported in Government Cloud Plus enhanced
LINE, Bring
Your Own
Bring Your Own Channel and Bring Your Own Channel for Channel,
CCaaS and Bring
Your Own
• Available in Lightning Experience only Channel for
• Available in Enterprise, Unlimited, and Developer Editions for Service Cloud or Sales Cloud with CCaaS
the Digital Engagement add-on license

8
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Compare Messaging Channel Capabilities in Service Cloud


Explore the capabilities of Messaging channels in Service Cloud.
EDITIONS
To view the channel capabilities of Bring Your Own Channel and Bring Your Own Channel for CCaaS,
see Compare Bring Your Own Channel to Bring Your Own Channel for CCaaS Capabilities on page Available in: Lightning
244. Experience. View required
editions.

Setup and Routing This Messaging


article for In-App,
applies to: Messaging
Messaging Messaging WhatsApp Facebook SMS Apple LINE
for Web,
for for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
enhanced
In-App (Enhanced) (Enhanced)
WhatsApp,
Automated Yes Yes Yes Yes No Yes Yes enhanced
channel Facebook
setup Messenger,
enhanced
Can N/A N/A Yes on Yes Yes N/A N/A SMS,
upgrade page 153 enhanced
from Apple
standard Messages
channels for Business,
and
Omni-Channel Yes Yes Yes Yes Yes Yes Yes enhanced
Flows LINE
routing channels
Queue-based Yes Yes Yes Yes Yes Yes Yes This Standard
routing article WhatsApp,
doesn’t standard
Enhanced Yes Yes Yes Yes Yes Yes Yes
apply to: Facebook
routing Messenger,
Tab-based Yes Yes Yes Yes Yes Yes Yes standard
capacity SMS, Bring
Your Own
Status-based Yes Yes Yes Yes Yes Yes Yes Channel,
capacity and Bring
Your Own
Works in Yes Yes Yes Yes Yes Yes Yes Channel for
the CCaaS
Salesforce
Mobile
App

9
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Session Start and End


Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Customer can Yes Yes Yes Yes Yes Yes Yes
start session

Agent can start Yes No Yes Yes Yes Yes Yes


the session

Automated Yes No Yes No Yes Yes Yes


outbound
messages

Broadcast N/A N/A N/A N/A No N/A N/A


(one-to-many)
messaging

Agent can end Yes Yes Yes Yes Yes Yes Yes
the session

Agent can Yes Yes Yes Yes Yes Yes Yes


mark the
session
inactive

Customer can Yes Yes N/A N/A N/A Yes N/A


end session

Customer Experience
Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Typing Yes Yes No Yes N/A Yes No
indicator:
customer side

Typing Yes Yes No No N/A Yes No


indicator:
agent side

Read receipts: Yes Yes No No N/A No No


customer side

Read receipts: Yes Yes No No N/A No No


agent side

10
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Messaging WhatsApp Facebook SMS Apple LINE


for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Delivered Yes Yes No Yes N/A Yes No
receipts:
customer side

Delivered Yes Yes Yes Yes N/A Yes Yes


receipts: agent
side

Estimated wait Yes Yes No No No No No


time for
customers

Desktop N/A Yes Yes Yes N/A Yes Yes


application
support

Window Yes Yes N/A N/A N/A N/A N/A


branding and
customization

Hide Yes Yes N/A N/A N/A N/A N/A


messaging
option outside
of business
hours

Let customers Yes Yes N/A N/A N/A N/A N/A


download
conversation
transcripts

Agent Experience
Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Quick text Yes Yes Yes Yes Yes Yes Yes

Einstein Yes Yes Yes Yes Yes Yes Yes


recommended
replies

Agent-to-agent Yes Yes Yes Yes Yes Yes Yes


transfer

Agent-to-flow Yes Yes Yes Yes Yes Yes Yes


transfer

11
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Messaging WhatsApp Facebook SMS Apple LINE


for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Agent-to-queue Yes Yes Yes Yes Yes Yes Yes
transfer

Flag raise Yes Yes Yes Yes Yes Yes Yes

Supervisor Yes Yes Yes Yes Yes Yes Yes


whisper to
agents

View Yes Yes Yes Yes Yes Yes Yes


conversation
transcripts

After-conversation Yes Yes Yes Yes Yes Yes Yes


work timer

Compatible Yes Yes Yes Yes Yes Yes Yes


with AI agents

Compatible Yes Yes Yes Yes Yes Yes Yes


with Einstein
Bots

Conversation Yes Yes Yes Yes Yes Yes Yes


Catch-Up

Channel-object Yes Yes Yes Yes Yes Yes Yes


linking

Individual-object Yes Yes Yes Yes Yes Yes Yes


linking

Channel menu No Yes Yes Yes Yes Yes Yes

Rich Content
Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Emojis: Yes Yes Yes Yes Yes Yes Yes
customer to
agent

Emojis: agent Yes Yes Yes Yes Yes Yes Yes


to customer

GIFs: customer Yes Yes No Yes Yes Yes No (stickers


to agent only)

12
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Messaging WhatsApp Facebook SMS Apple LINE


for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
GIFs: agent to Yes Yes No No No No No
customer

File sharing: Yes Yes Yes Yes Yes Yes Yes on page
customer to 191
agent

File sharing: Yes Yes Yes Yes Yes Yes Yes on page
agent to 191
customer

Video No No Yes Yes No Yes Yes on page


messages 191

Audio No No Yes Yes No Yes Yes on page


messages 191

Audio message Yes Yes Yes Yes No Yes No


recorder with
playback

Enhanced link Yes Yes Yes (plain text Yes Yes (plain text Yes Yes
messaging only) only)
components

Question with Yes Yes Yes Yes Yes (plain text Yes Yes
options only)
messaging
components

Time selector Yes Yes Yes Yes Yes (plain text Yes Yes (plain text
messaging only) only)
components

Auto-response Yes Yes No No No No No


messaging
components

Form Yes Yes Yes (plain text Yes (plain text Yes (plain text Yes Yes (plain text
messaging only) only) only) only)
components

Notification Yes Yes Yes Yes (plain text Yes (plain text Yes Yes
messaging only, no flow only)
components support)

Payment Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes Yes (plain text
messaging only) only) only) only) only) only)
components

13
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Messaging WhatsApp Facebook SMS Apple LINE


for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Authentication Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes Yes (plain text
messaging only) only) only) only) only) only)
components

Custom Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes (plain text Yes Yes (plain text
messaging only) only) only) only) only) only)
components

Right-to-left Yes Yes Yes Yes Yes Yes Yes


languages

Automated Responses
Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Conversation Yes Yes Yes Yes Yes Yes Yes
acknowledgment

Agent accept Yes Yes Yes Yes Yes Yes Yes

Inactive Yes Yes No No No No No


conversation

End session Yes Yes Yes Yes Yes Yes Yes

Security and Consent Management


Messaging Messaging WhatsApp Facebook SMS Apple LINE
for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Sensitive data Yes Yes Yes Yes Yes Yes Yes
rules

Encryption at Yes Yes Yes Yes Yes Yes Yes


rest

Channel N/A N/A Yes Yes Yes Yes Yes


consent type:
Implicit opt-in

Channel N/A N/A Yes Yes Yes Yes Yes


consent type:
Explicit opt-in

14
Provide Conversation Support with Messaging in Service Compare Messaging Channel Capabilities in Service Cloud
Cloud

Messaging Messaging WhatsApp Facebook SMS Apple LINE


for In-App for Web (Enhanced) Messenger (Enhanced) Messages (Enhanced)
(Enhanced) (Enhanced)
Channel N/A N/A Yes Yes Yes Yes Yes
consent type:
Double opt-in

Customers can Yes Yes Yes Yes Yes Yes Yes


opt out

SEE ALSO:
Service Cloud Messaging Limits and Considerations
Compare Messaging for In-App and Web Capabilities to Chat Capabilities
Compare Standard and Enhanced WhatsApp Channel Capabilities
Compare Standard and Enhanced Facebook Messenger Channel Capabilities
Compare Standard and Enhanced SMS Channel Capabilities
Compare Bring Your Own Channel to Bring Your Own Channel for CCaaS Capabilities

15
Provide Conversation Support with Messaging in Service Messaging Glossary
Cloud

Messaging Glossary
When you’re setting up a Messaging channel in Service Cloud, it’s helpful to understand the terms
EDITIONS
that we use to talk about messaging in Salesforce.
Available in: Lightning
Term Definition Experience. View required
Asynchronous Messaging sessions can be started, stopped, then re-engaged at any editions.
time. Closing the messaging window doesn’t delete the conversation This Messaging
history, giving agents and customers more flexibility. article for In-App,
applies to: Messaging
Channel A way for customers to exchange messages with your business. Salesforce
for Web,
supports these channel types in Messaging: Facebook Messenger, standard
WhatsApp, Apple Messages for Business, SMS, LINE, Messaging for In-App, and
Messaging for Web, Bring Your Own Channel, and Bring Your Own enhanced
Channel for CCaaS. To connect a third-party account such as a WhatsApp WhatsApp,
account to Salesforce, you create a Messaging channel in Setup. In your standard
channel settings, you can customize the agent experience and add and
automation. enhanced
Facebook
Conversation A conversation includes one or more messaging sessions associated with
Messenger,
a single messaging user. Messaging offers asynchronous, persistent standard
conversations that store all messaging history. Some conversations and
include a single messaging session, while others include multiple. As a enhanced
rule, admins can't end conversations, and need to understand this SMS,
concept only when they’re deleting or exporting data or setting the enhanced
display frequency of the pre-chat form. Apple
In Messaging for In-App and Web, the conversation boundaries determine Messages
how much messaging history customers see: for Business,
enhanced
• In Messaging for In-App and Web channels with user verification, LINE, Bring
conversations don’t end and verified users always see their Your Own
conversation history in the messaging window. Channel,
• In Messaging for In-App and Web channels without user verification, and Bring
customers can click End Conversation in the chat window. In this Your Own
unverified scenario, Messaging for Web customers see conversation Channel for
history for up to 6 hours in the messaging window, and Messaging CCaaS
for In-App customers always see conversation history in the
messaging window.

Conversation Channel An entity in Salesforce that contains metadata for any Bring Your Own
Definition Channel and Bring Your Own Channel for CCaaS channel integration. It's
also linked to your messaging channel via a ChannelDefinition foreign
key that populates the Conversation Channel Definition field. You must
unlink the Conversation Channel Definition field before you can uninstall
your Bring Your Own Channel or Bring Your Own Channel for CCaaS.

CORS Allowlist Entry Cross-Origin Resource Sharing (CORS) lets web browsers request
resources from other domains. When you add your top-level domain
when setting up a Messaging for Web channel, the CORS allowlist

16
Provide Conversation Support with Messaging in Service Messaging Glossary
Cloud

Term Definition
prevents requests to Salesforce Lightning apps unless the request comes from your approved URL
list.

Custom Parameter A way to further customize the Messaging experience or routing for a particular channel. For example,
create a custom parameter to share a customer’s name and email address with an agent or to link
a customer’s pre-chat form values to a Messaging for In-App and Web channel. Manage custom
parameters in your messaging channel’s settings in Setup.

Embedded Service Deployment Create deployments to implement Messaging on your app or website and control the functionality.
Manage your deployments on the Embedded Service Deployment Settings page in Setup. There,
you can edit your messaging settings, select branding, add pre-chat values, and install a JavaScript
code snippet to deliver conversations to your website, download a configuration file to provide
conversations from your mobile app, and more.

Enhanced Messaging A new platform that supports a wider range of content formats and more efficient operations than
Standard Messaging. WhatsApp, Facebook Messenger, SMS, LINE, Apple Messages for Business, Bring
Your Own Channel, and Bring Your Own Channel for CCaaS are available as enhanced channels. You
can upgrade standard channels to enhanced channels, and can maintain both standard and enhanced
channels in Salesforce. Going forward, new features are available exclusively in enhanced channels,
and standard channels are scheduled for retirement in July 2025 (WhatsApp) and February 2026
(SMS and Facebook Messenger).

Inbound Messaging Messaging sessions initiated by your customer—for example, a customer sends you a message in
Facebook Messenger.

Messaging Component Structured content that agents can send to customers in a messaging session to share or gather
information. Several types of messaging components are available, including enhanced links, questions
with options, time selectors, and forms. These content formats help you standardize your external
messaging and let customers and agents communicate in familiar ways.

Messaging Session An exchange of one or more messages between your business and a customer that takes place over
a Messaging channel. Messaging sessions end differently depending on your channel and device:
• In Messaging for In-App with or without User Verification, the messaging session ends when the
agent clicks End Chat.
• In Messaging for Web without User Verification, the messaging session ends when the customer
or agent clicks End Chat.
• In Messaging for Web with User Verification, the messaging session ends when the agent clicks
End Chat.
• In standard and enhanced Messaging channels, the messaging session ends when one of these
actions takes place:
– The messaging user opts out of receiving messages in the channel.
– The agent clicks End Chat and closes the messaging session tab.
– (Standard channels only) A flow or process sends an automatic notification, creating an
outbound messaging session with an unchanging status of Ended.

Messaging User A record representing a user who communicates with your company over a particular channel, such
as Facebook Messenger. When a customer sends a message to your company, a messaging user
record is created for the customer to track their activity in that messaging channel. Depending on

17
Provide Conversation Support with Messaging in Service Messaging Glossary
Cloud

Term Definition
which data is available, the record can include the customer’s name, phone number or Facebook
name, and consent status. You can link a messaging user record to a contact or other type of record
so all the customer’s messaging sessions are in one place. Messaging user records are required for
your recipients, even if you’re sending messages to contacts, employees, or person accounts.

Parameter Mapping A way to map standard and custom parameters to flows or agent tasks. Manage your parameter
mappings in your messaging channel’s settings in Setup.

Persistent Conversation history remains in the conversation window after the conversation is over. In Messaging
for In-App and Web, conversation history is also shared across devices if User Verification is active,
and all underlying messaging channels associated with your devices share a Configuration Name.
In other Messaging channels, conversation history persists across devices without the need for User
Verification.

Pre-Chat Fields A way to collect customer details before an agent starts a conversation in a Messaging for In-App
and Web channel. Ask customers to fill out visible pre-chat fields, or use our API to fill in hidden
pre-chat fields. Send this data to your agents using Omni Flow.

Proactive Messaging Messaging sessions initiated by an agent or automation in Salesforce, for example, an agent messages
a customer in your WhatsApp channel, or a flow or process sends an automatic notification or
broadcast. Agents can proactively message customers in all channels except Messaging for Web,
though this functionality is beta in standard WhatsApp and standard Facebook Messenger channels.
You can also set up automated message notifications in standard Messaging channels, enhanced
WhatsApp channels, enhanced Apple Messages for Business channels, and Messaging for In-App
and Web.

Routing The logic that determines how customer inquiries in a Messaging channel are routed. The Salesforce
routing tool is Omni-Channel, and you can configure it to route customer messages to queues, bots,
or agents. Queue-based routing is ideal for simple routing scenarios. Omni-Channel flow routing
lets you use Flow Builder to define routing rules and dynamically route messages to the most qualified
available agent or bot. Omni-Channel flows unify the routing setup for all supported channels,
including voice calls, chats, messaging, cases, leads, and custom objects.

SEE ALSO:
What’s Service Cloud Messaging?
Lifecycle of a Messaging Session in Service Cloud
Set Up Messaging for In-App and Web

18
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

Lifecycle of a Messaging Session in Service Cloud


Learn how Salesforce tracks messaging sessions, from the first message to the last. Understanding
EDITIONS
session status transitions helps you route and monitor inquiries effectively.
A messaging session’s participants can include a messaging user—also known as the customer—and Available in: Lightning
an agent, bot, or both. A session’s possible starting statuses, ending statuses, and status transitions Experience. View required
depend on several factors: editions.

• The platform type of the associated Messaging channel (standard or enhanced) This Messaging
• Who initiated the session (the customer or the business) article for In-App,
applies to: Messaging
• The type of channel (SMS, Messaging for In-App and Web, and so on)
for Web,
standard
Enhanced Messaging Sessions (Customer-Initiated) and
enhanced
Review possible status transitions for messaging sessions that customers initiate in enhanced WhatsApp,
Messaging channels and Messaging for In-App and Web. standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

19
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

In Messaging for In-App and Web channels, you can set a time limit for customer inactivity after which a session’s status automatically
updates to Inactive. In other channels, agents must mark the session inactive.
The automatic status update from Inactive to Ended may take up to 30 hours.
In a status-based capacity model, when an agent goes offline, the agent’s active messaging sessions change to Inactive rather than
Waiting.

Enhanced Messaging Sessions (Business-Initiated)


Review possible status transitions for messaging sessions initiated by agents in enhanced Messaging channels and Messaging for In-App.
Agents can’t initiate sessions in Messaging for Web.

20
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

While this diagram shows possible status transitions in enhanced messaging sessions initiated by agents, automated message notifications
work a bit differently. When a flow sends an automated message like a delivery notification, the message is captured in a single messaging
session with an unchanging status of Ended.
The automatic status update from Inactive to Ended may take up to 30 hours.

Standard Messaging Sessions (Customer-Initiated)


Review possible status transitions for messaging sessions that customers initiate in standard Messaging channels.

21
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

Standard Messaging Sessions (Business-Initiated)


Review possible status transitions for messaging sessions initiated by agents in standard Messaging channels. Agents-initiated messaging
is in beta in standard WhatsApp and standard Facebook Messenger channels.

While this diagram shows possible status transitions in standard messaging sessions initiated by agents, automated message notifications
work a bit differently. When a process or flow sends an automated message like a delivery notification, the message is captured in a
single messaging session with an unchanging status of Ended.

Messaging Session Statuses


New
The messaging session was created. This status occurs when an agent sends an opening message.
Waiting
An inbound messaging session is being routed or transferred, or an agent initiated a messaging session and awaits the customer’s
response. These actions can cause a session’s status to change to Waiting.
• A customer creates a messaging session by sending a message.
• An agent transfers an active messaging session.
• An agent creates a messaging session by sending a message.
• An agent goes offline during an active messaging session (applies only for tab-based capacity models).
• After a messaging session is marked inactive, the customer resumes the conversation by sending a message.
Active
The messaging session is in progress. This status occurs when an agent or bot accepts an inbound messaging session, or a customer
responds in an agent-initiated messaging session.
Consent
(Enhanced channels and Messaging for In-App and Web only) The messaging user has sent only consent keywords (opt-in, double
opt-in, or help keywords) in the messaging session. For example, the messaging user has responded Start to agree to receive

22
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

messages about new products, but hasn’t sent a unique inquiry that requires the attention of a bot or agent. The Consent status
value helps you design routing flows that exclude consent-related messaging sessions from routing.
Inactive
(Enhanced channels and Messaging for In-App and Web only) A previously active messaging user received a message, but stopped
responding before their issue was resolved. Agents can mark a session inactive by selecting Mark Inactive next to the End Chat
option. If a tab-based capacity model is used, agents can also close the session tab and select No Customer Response. And in
Messaging for In-App and Web channels, you can automatically mark sessions inactive if the customer doesn’t respond within a
specified time period.
Marking a session inactive frees up the agent’s capacity, and also serves as a way to put the messaging user on hold. With tab-based
capacity, if the messaging user sends a message after a session is marked inactive, the session status updates to Waiting and the
session is rerouted to the next available agent. With status-based capacity, the same agent continues helping the customer. Inactive
sessions switch to the Ended status after approximately 24 hours.
Error
(Enhanced channels and Messaging for In-App and Web only) Salesforce failed to create or update a messaging session or a messaging
user record. Errors can be caused by misconfigured triggers or field requirements on the Messaging Session or Messaging User
objects. Salesforce tracks these failed messaging sessions and their error reasons in the Error Reason field on the Messaging Session
object.
If the same issue caused the messaging user’s previous messaging session to end in an error, Salesforce updates the previous session’s
Last Modified Date field instead of logging a new failed session.
Ended
The messaging user is no longer communicating with an agent. Possible reasons for this status include:
• The messaging user opted out of receiving messages in the channel.
• The agent closed the messaging session tab and ended the session.
• A flow or process created an outbound messaging session.
• The session was inactive for more than 30 hours.
• An agent initiated the messaging session, and the customer didn’t respond within 24 hours (standard channels) or 48 to 54
hours (enhanced channels).
It’s up to you to define when a session ends. For example, let your support team know when it’s appropriate to inactivate a session rather
than ending it. An agent can begin a new messaging session with a messaging user only after the user’s previous session has ended
with a status of Ended or Error.
Messaging sessions with a status of Ended or Error can be deleted. Sessions can’t be mass-deleted, but you can delete individual sessions
on the session record page.

IN THIS SECTION:
Ending or Inactivating Messaging Sessions Automatically
In certain circumstances, a messaging session’s status can automatically change to Inactive or Ended. Learn when and how these
automatic updates occur.

SEE ALSO:
What’s Service Cloud Messaging?
End a Messaging Session
Customize the Messaging Opt-In and Opt-Out Experience
Set Up Routing for Messaging Channels in Service Cloud

23
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

Ending or Inactivating Messaging Sessions Automatically


In certain circumstances, a messaging session’s status can automatically change to Inactive or
EDITIONS
Ended. Learn when and how these automatic updates occur.
Available in: Lightning
Automatically Inactivating Sessions Experience. View required
editions.
In Messaging for In-App and Web, Bring Your Own Channel, and Bring Your Own Channel for CCaaS,
you can set a time limit for customer inactivity. If this limit is reached, the messaging session’s status This Messaging
changes to Inactive. This setting isn't available in other channels. article for In-App,
applies to: Messaging
You can configure this limit in your channel settings in Setup. In the Customer Inactivity section, for Web,
select the checkbox and set a timeout limit between 5 and 30 minutes. standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This time begins counting down after the agent’s first response to the customer’s last message. Here’s an example where the timeout
limit is 5 minutes:
Customer: “I think so, let me check.”

24
Provide Conversation Support with Messaging in Service Lifecycle of a Messaging Session in Service Cloud
Cloud

Agent: “Hello, were you able to find the ID?” (Timer starts)
Agent: “Hello? Is it me you’re looking for?”
If the customer doesn’t respond, the session status updates to Inactive 5 minutes after they sent “Hello, were you able to find the ID?”
If the agent needs to send another message after the session is inactive, they can start a new session if it's supported in the channel. If
the customer sends a message after a session is inactive, the messaging session status switches to Waiting and the session is routed to
your support team.

Automatically Ending Inactive Sessions


In enhanced Messaging channels, Messaging for In-App and Web, Bring Your Own Channel, and Bring Your Own Channel for CCaaS, if
an agent or automation changes a messaging session’s status to Inactive, the session ends 24 to 30 hours later.

Automatically Ending New Sessions


If an agent initiates a messaging session and the customer doesn't respond for a certain amount of time, the session status changes to
Ended. The status change occurs:
• 24 hours after the agent's message in standard channels.
• 48 to 54 hours after the agent's message in enhanced channels, Messaging for In-App, Bring Your Own Channel, and Bring Your
Own Channel for CCaaS. Messaging for Web doesn't support agent-initiated messaging.

Note: In all types of messaging channels, a session is ended automatically if the customer sends an opt-out keyword.

25
Provide Conversation Support with Messaging in Service Get Started with Messaging in Service Cloud
Cloud

Get Started with Messaging in Service Cloud


Ready to set up a Messaging channel in Salesforce? First, turn on Messaging in Setup and give
EDITIONS
agents and supervisors access. Then, configure your routing preferences and add Messaging to the
Service Console. Available in: Lightning
Experience. View required
IN THIS SECTION: editions.

1. Turn On Messaging in Service Cloud This Standard


Turn on Messaging in Service Cloud so that agents can communicate with customers in standard article and
and enhanced Messaging channels. This step isn’t needed for Messaging for In-App and Web. applies to: enhanced
WhatsApp,
2. Give Users Access to Messaging in Service Cloud standard
Assign permissions to users who will message with customers or supervise agents in Messaging and
channels. enhanced
3. Set Up Routing for Messaging Channels in Service Cloud Facebook
Messenger,
Use Omni-Channel to route customer inquiries sent over a Messaging channel to a queue, bot,
standard
or qualified support agent. Queue-based routing is ideal for simple routing scenarios.
and
Alternatively, create an Omni-Channel flow to define routing rules and dynamically route
enhanced
messages.
SMS,
4. Add Messaging to the Service Console enhanced
Configure the Service Console to put all messaging tools at your agents’ fingertips. Add Apple
Omni-Channel, customize the Messaging Session page layout, and make the Send Message Messages
global action available. Optionally, customize the Enhanced Conversation component and add for Business,
messaging components to the Service Console. enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Messaging
article for In-App or
doesn’t Messaging
apply to: for Web
channels

26
Provide Conversation Support with Messaging in Service Turn On Messaging in Service Cloud
Cloud

Turn On Messaging in Service Cloud


Turn on Messaging in Service Cloud so that agents can communicate with customers in standard
EDITIONS
and enhanced Messaging channels. This step isn’t needed for Messaging for In-App and Web.
Available in: Lightning
User Permissions Needed Experience. View required
To enable Messaging: View Setup and Configuration editions.

AND This Standard


article and
System Administrator
applies to: enhanced
WhatsApp,
standard
1. From Setup in Lightning Experience, enter Messaging in the Quick Find box, and select and
Messaging Settings. enhanced
2. Select Messaging. Facebook
Messenger,
The Digital Engagement add-on license creates Messaging permissions, Setup pages, and objects, standard
such as the MessagingSession and MessagingEndUser objects. It also allows you to create Messaging and
channels so your service team can help customers over WhatsApp, Facebook Messenger, Apple enhanced
Messages for Business, LINE, and SMS. After you turn on Messaging, create one or more Messaging SMS,
channels using the New Channel guided setup flow on the Messaging Settings page. enhanced
Apple
Note: If you’re not able to turn on Messaging, first make sure that you have the Digital
Messages
Engagement add-on license. If you purchased the add-on but still aren’t able to turn on for Business,
Messaging, contact your account executive. If you receive an error message with a specific enhanced
number when you try to turn on Messaging, contact Salesforce Customer Support and share LINE, Bring
the error number. And, note that Messaging can’t be turned on in Trailhead playgrounds. Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Messaging
article for In-App or
doesn’t Messaging
apply to: for Web
channels

USER PERMISSIONS

27
Provide Conversation Support with Messaging in Service Give Users Access to Messaging in Service Cloud
Cloud

Give Users Access to Messaging in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Standard
article and
applies to: enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Messaging
article for In-App or
doesn’t Messaging
apply to: for Web
channels

28
Provide Conversation Support with Messaging in Service Give Users Access to Messaging in Service Cloud
Cloud

Assign permissions to users who will message with customers or supervise agents in Messaging
USER PERMISSIONS
channels.
Users who will help customers in Messaging for In-App and Web require different permissions. For To assign permission set
details, see the Messaging for In-App and Web documentation on user access. licenses:
• Manage Users
To create permission sets:
Step 1: Assign the Messaging Permission Set License • Manage Profiles and
Permission Sets
All users who will engage with customers in messaging sessions or supervise messaging agents
need the Messaging permission set license. To edit users:
• Manage Internal Users
1. From Setup, enter Users in the Quick Find box, and select Users.
To assign permission sets:
2. Select the user you want to assign the permission set license to.
• Assign Permission Sets
3. In the Permission Set License Assignments related list, click Edit Assignments.
4. Enable the Messaging User permission set license.
5. Click Save.
6. Repeat this process for all users that require Messaging.

Step 2: Assign Messaging Permission Sets


With the Messaging permission sets, agents can exchange messages with customers and admins can customize the Messaging experience
for agents. Admins require some additional permissions that agents don’t need.
1. Verify that the users who will use Messaging have a Sales Cloud or Service Cloud license.
a. From Setup, enter Users in the Quick Find box, and select Users.
b. Select the name of the user.
c. Click Edit.
d. Verify that Sales Cloud User or Service Cloud User is selected. If not, select one of them and save your changes.

2. Create a Messaging permission set for agents.


a. From Setup, enter Permission Sets in the Quick Find box, and select Permission Sets.
b. Click New.
c. For Label, enter a name for the permission set. The API Name is automatically filled.
d. Skip the section about user licenses.

Important: If you select a user license, App Permissions aren't available.

29
Provide Conversation Support with Messaging in Service Give Users Access to Messaging in Service Cloud
Cloud

e. Click Save.
f. In the details page, select Service Presence Statuses Access and click Edit.
g. Move your Messaging presence status to the Enabled Service Presence Statuses list, and click Save.
h. Go back to the permission set overview page, and select Object Settings > Messaging Sessions.
i. Click Edit, give view access to all, and the appropriate access for your users or roles.
j. Click Save.
k. Go back to the Object Settings page and select Messaging Users.
l. Click Edit, give view access to all, and the appropriate access for your users or roles.
m. Click Save.
n. Go back to the Object Settings page and select App Permissions.
o. Click Edit, then select these user permissions: End Messaging Session (for standard channels), Messaging Agent, Agent Initiated
Outbound Messaging (for standard channels), Initiate Messaging Sessions (for enhanced channels), Access Conversation Entries,
and Create Public Links.
p. To let agents transfer messaging sessions to flows or send messaging components using flows, select the Run Flows permission.
q. To let agents use Messaging on the Salesforce mobile app, select the Message on Mobile permission.
r. Click Save.

3. Create a Messaging permission set for admins.


a. From the Permission Sets page, clone the permission set you created for agents and give it a distinct name.
b. From the details page of the cloned permission set, select App Permissions.
c. Click Edit.
d. Select Configure Messaging to allow admins to add queues and perform other administrative tasks for Messaging.
e. If you plan to assign the Messaging admin permission set to users who aren’t System Administrators, select these additional
permissions to let them create and edit Messaging channels: Customize Application, Manage Auth. Providers, View Setup and
Configuration, and Modify All Data. Since these are powerful permissions, you may prefer to assign them to users individually.
f. Click Save.

4. Assign the permission sets.


a. From Setup, enter Users in the Quick Find box, and select Users.
b. Select the name of the user that you want to assign the permission set to. Start with yourself; otherwise, you can’t assign it to
your agents.
c. Click Edit Assignments.
d. In the Permission Set Assignment page, move the permission set that you created to the Enabled Permission Sets list.
e. Click Save.

SEE ALSO:
Set Up Routing for Messaging Channels in Service Cloud

30
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Set Up Routing for Messaging Channels in Service Cloud


Use Omni-Channel to route customer inquiries sent over a Messaging channel to a queue, bot, or
EDITIONS
qualified support agent. Queue-based routing is ideal for simple routing scenarios. Alternatively,
create an Omni-Channel flow to define routing rules and dynamically route messages. Available in: Lightning
For help configuring routing for Messaging for In-App and Web, see the Messaging for In-App and Experience. View required
Web setup documentation. editions.

When you configure routing for your enhanced Messaging channels, you can choose between This Standard
using status-based and tab-based capacity. Here’s how they’re different. article and
applies to: enhanced
Tab-Based Capacity Status-Based Capacity WhatsApp,
standard
What determines an agent’s The number of their open tabs The status of their accepted and
capacity and sessions work enhanced
Facebook
Maximum capacity per agent 100 tabs at a time 100 work items at a time
Messenger,
What happens when an agent The agent is prompted to either The messaging session’s status standard
closes a messaging session tab end the session or mark it and ownership are unaffected, and
inactive. and the agent isn’t prompted enhanced
to end or inactivate the session. SMS,
In standard (non-console) apps, enhanced
this behavior makes it easier for Apple
Messages
agents to navigate between
for Business,
messaging session records
enhanced
without session ownership
LINE, Bring
being affected.
Your Own
What happens when a The session is routed to the The same agent receives the Channel,
customer re-engages in an support team as if it were a customer’s new message and and Bring
inactive messaging session new session. More complex continues helping the Your Own
routing logic is required to customer. Channel for
CCaaS
ensure that it’s reassigned to
the same agent. This Messaging
article for In-App or
What happens when an agent The agent’s active messaging The agent’s active messaging
doesn’t Messaging
goes offline sessions update to Waiting and sessions remain active.
apply to: for Web
are routed to your support channels
team.

Capacity settings are configured on the Omni-Channel Settings and Service Channels pages in Setup. To learn more, see Understanding
Capacity Models. Status-based capacity is available in enhanced Messaging channels and Messaging for In-App and Web.

IN THIS SECTION:
Route Service Cloud Messaging Sessions with Omni-Channel Flows
Dynamically route customer messages sent over a Messaging channel to the right agent, queue, or bot. Build a template-based flow
in Flow Builder and assign it to one or more Messaging channels.

31
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Route Service Cloud Messaging Sessions to Queues


Route customer messages to the appropriate queue using an Omni-Channel routing configuration. Queue-based routing, an
alternative to Omni-Channel flows, is ideal for simple routing scenarios.

SEE ALSO:
Add the Omni-Channel Component to a Lightning App
Omni-Channel Utility for Lightning Console Apps

32
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Route Service Cloud Messaging Sessions with Omni-Channel Flows


Dynamically route customer messages sent over a Messaging channel to the right agent, queue,
EDITIONS
or bot. Build a template-based flow in Flow Builder and assign it to one or more Messaging channels.
For help configuring Omni-Channel flows for Messaging for In-App and Web, see the Messaging Available in: Lightning
for In-App and Web setup documentation. Experience. View required
editions.

Step 1: Configure Omni-Channel This Standard


article and
To get started, enable Omni-Channel and update its settings. enhanced
applies to:
1. In Setup, navigate to the Omni-Channel Settings page. WhatsApp,
standard
2. Select Enable Omni-Channel.
and
3. To let agents transfer messaging sessions to other agents in enhanced Messaging channels, enhanced
select Enable Skills-Based and Direct-to-Agent Routing. Facebook
4. Configure the other options according to your preferences, and save your changes. Messenger,
standard
5. Create a service channel for your Messaging channels. The service channel links your routing and
logic to the Messaging Session object. enhanced
a. In Setup, go to the Service Channels page. SMS,
enhanced
b. Click New. Apple
c. Enter a name for your service channel, such as All Messaging. Messages
for Business,
d. Select Messaging Session as the Salesforce object.
enhanced
e. Configure the other options, and save your service channel. LINE, Bring
Your Own
6. Create presence statuses for Messaging. If you’re not sure which statuses to create, start with Channel,
these three: Available - Messaging, On Break, Busy. and Bring
Your Own
Warning: On the Omni-Channel settings page, you have the option to enable enhanced
Channel for
routing to take advantage of additional routing features. However, keep in mind that enhanced
CCaaS
routing can’t be used with standard Messaging channels, and enabling it deactivates any
active standard channels. If this happens, reactivate them by disabling enhanced routing and This Messaging
then refreshing your channel list on the Messaging Settings page in Setup. article for In-App or
doesn’t Messaging
apply to: for Web
Step 2: Create an Omni-Channel Flow channels
With the help of a Messaging flow template, create an Omni-Channel flow to route customer
messages to your support team. You can create one flow to provide routing for all your Messaging USER PERMISSIONS
channels or designate a separate flow for each channel. It’s fine to use one flow for both standard
and enhanced channels. To open, edit, or create a
flow in Flow Builder:
You can create one flow to provide routing for all your Messaging channels, or designate a separate
• Manage Flow
flow for each channel. It’s fine to use one flow for both standard and enhanced channels, but if you
plan to use bots, know that a flow can’t route to both standard and enhanced bots. The flow is To set up and edit
linked to each Messaging channel in the channel settings. Messaging channels:
• Configure Messaging
1. Create an Omni-Channel queue to serve as your fallback routing strategy, and add Messaging
To view channels:
Session as a supported object.
• View Setup and
2. In Setup, enter Flows in the Quick Find box, and then select Flows under Process Automation. Configuration

33
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

3. Click New Flow.


4. Select Use a Template, then click Next.
5. Select Omni-Channel Flow in the left pane, and click the template named Messages Routed to Agents and Queues.

6. To open the template, click Create.


7. Edit the template to reflect your routing preferences, and save your changes.

Example: Maria, the Salesforce admin at Ursa Major Solar, wants all VIP customers routed directly to Jessica, her most experienced
agent. All other customers will be routed to a queue of Ursa Major’s agents. Here’s what she does.
• Simplify the template so it has just two routing decision outcomes: VIP Customer and Other Customers. The VIP Customer
outcome checks the account name of the messaging user’s contact record. If it’s one of Ursa Major’s three biggest accounts,
the customer is considered a VIP.
• Add a Check Availability for Routing element at the beginning of the first routing path. Choose the option to route to an agent
and select Jessica. Then, add a variable to show the number of agents online, and add a decision element with Yes and No
outcomes. If the customer is a VIP and Jessica is available, their session is routed to her. If Jessica is offline, the customer is
routed to the queue.
• Edit the remaining flow elements and replace any placeholders with real values. For example, update all service channel
placeholders to list your Messaging service channel.

34
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Tip: For help incorporating a bot into your flow, see Route Conversations to and from Your Enhanced Bot.

Step 3: Connect Your Flow to Your Messaging Channel


After creating your Omni-Channel flow, link it to one or more Messaging channels.
1. Create your SMS short code on page 224, SMS long code on page 217, WhatsApp on page 142, or Facebook Messenger on page 193,
LINE on page 186, or Apple Messages for Business channel.
2. On the Messaging Settings page in Setup, find your channel in the list. In the channel’s action menu, select Edit.
3. Edit the properties in the Routing section.
a. (Standard channels only) Select Enable Advanced Routing.
This option lets you use an Omni-Channel flow to route your channels’ messages. Enabling advanced routing doesn’t enable
enhanced Omni-Channel routing, which is a separate feature that can’t be used with standard Messaging channels.

b. (Enhanced channels only) For Routing Type, select Omni-Flow.


c. For Flow Definition, select your Omni-Channel flow.
d. For Fallback Queue, select the queue that you created earlier.

35
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

4. Save your changes.

SEE ALSO:
Route Conversations to and from Your Enhanced Bot
Advanced Routing with Omni-Channel Flows
How Does an Omni-Channel Flow Work?
Route Apple Messages Inquiries by Intent and Group

36
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Route Service Cloud Messaging Sessions to Queues


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Standard
article and
applies to: enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Messaging
article for In-App or
doesn’t Messaging
apply to: for Web
channels

37
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

Route customer messages to the appropriate queue using an Omni-Channel routing configuration.
USER PERMISSIONS
Queue-based routing, an alternative to Omni-Channel flows, is ideal for simple routing scenarios.
For help configuring routing for Messaging for In-App and Web, see the Messaging for In-App and To create or change queues:
Web setup documentation. • Customize Application
AND

Set Up Queue-Based Routing for a New Messaging Channel Manage Public List
Views
If your Messaging channel doesn’t exist yet, create the channel and set up queue-based routing at
To set up and edit
the same time. These steps apply only for standard and enhanced Facebook Messenger channels Messaging channels:
and enhanced WhatsApp channels. • Configure Messaging
1. From Setup, in the Quick Find box, enter Messaging, and then select Messaging Settings. To view channels:
2. Under Channels, click New Channel. • View Setup and
Configuration
3. Follow the prompts to create your channel.
4. Select Create a new queue. Follow the prompts to:
a. Create a queue.
b. Create a routing configuration.
c. Adjust the agent messaging workload.
d. Exit the setup flow.

5. On the Messaging Settings page, find your new channel in the list.
6. In the channel’s action menu, select Edit to view your channel’s routing settings and update them if needed.

Set Up Queue-Based Routing for an Existing Messaging Channel


If you’ve already created your Messaging channel, here’s how to set up queue-based routing for it.
1. In Setup, go to the Omni-Channel Settings page.
2. Select Enable Omni-Channel.
3. To let agents transfer messaging sessions to other agents in enhanced Messaging channels, select Enable Skills-Based and
Direct-to-Agent Routing.
4. Configure the other options, and save your changes.
5. Create a service channel for your Messaging channels. The service channel links your routing logic to the Messaging Session object.
a. In Setup, go to the Service Channels page.
b. Click New.
c. Enter a name for your service channel, such as All Messaging.
d. Select Messaging Session as the Salesforce object.
e. Configure the other options, and save your service channel.

6. Create presence statuses for Messaging. If you’re not sure which statuses to create, start with these three: Available - Messaging, On
Break, Busy.
7. Create an Omni-Channel queue to receive incoming messages. Add Messaging Session as a supported object.
8. Create a routing configuration for your queue.
9. Associate your routing configuration and agents with the queue.

38
Provide Conversation Support with Messaging in Service Set Up Routing for Messaging Channels in Service Cloud
Cloud

10. On the Messaging Settings page in Setup, find your channel in the list.
11. In the channel’s action menu, select Edit.
12. Edit the properties in the Routing section.
a. (Standard channels only) Leave Enable Advanced Routing deselected, and for Routing Type, select Omni-Channel.
b. (Enhanced channels only) For Routing Type, select Omni-Queue.
c. For Queue, select the queue that receives and prioritizes this channel’s messaging sessions.

13. Save your changes.

SEE ALSO:
Route to a Queue

39
Provide Conversation Support with Messaging in Service Add Messaging to the Service Console
Cloud

Add Messaging to the Service Console


Configure the Service Console to put all messaging tools at your agents’ fingertips. Add
EDITIONS
Omni-Channel, customize the Messaging Session page layout, and make the Send Message global
action available. Optionally, customize the Enhanced Conversation component and add messaging Available in: Lightning
components to the Service Console. Experience. View required
If your org will contain both standard channels and enhanced Messaging or Messaging for In-App editions.
and Web channels, create one Messaging Session page layout for your standard channels and
This Messaging
another for your enhanced channels and Messaging for In-App and Web. Enhanced channels and for In-App,
article
Messaging for In-App and Web use different page components. In particular, they require the applies to: Messaging
Enhanced Conversation page component, while standard channels require the Conversation for Web,
component. standard
When you activate each page, use record types to control which types of messaging sessions the and
page is used in. Base your record type assignment criteria on the Conversation field on messaging enhanced
sessions. If the Conversation field contains a value, the session is enhanced and should use your WhatsApp,
layout for enhanced channels. If it’s empty, the session is standard and should use your layout for standard
and
standard channels.
enhanced
1. From Setup in Lightning Experience, enter App Manager in the Quick Find box, and then Facebook
select App Manager. Messenger,
2. Click Edit next to the app that you want to add Messaging to, typically your Service app. standard
and
3. Add the Omni-Channel sidebar (recommended) or utility to your console app. Agents use the enhanced
sidebar or utility to accept messages sent over Messaging channels. SMS,
a. To add the sidebar, select Use Omni-Channel Sidebar on the App Options page. enhanced
Apple
b. To add the utility, in the Utility Items section, click Add Utility Item, select Omni-Channel, Messages
and click Save. for Business,
enhanced
4. In the Navigation Items section, move Messaging Sessions to the Selected Items list and click
LINE, Bring
Save.
Your Own
5. In the User Profiles section, verify that the user profiles who need access to Messaging are in Channel,
the Selected Profiles list. and Bring
Your Own
6. Edit the Messaging Session page layout. Agents see this page when they’re messaging with
Channel for
customers.
CCaaS
a. From the Object Manager in Setup, click Messaging Session, and then click Lightning
Record Pages.
USER PERMISSIONS
b. Click the page name and then click Edit, or create another page that’s a clone of the default
Salesforce page. To create or edit a console
Lightning App Builder opens. app:
• Customize Application
c. Drag page components onto the page. Below, we’ve suggested a list of components.
AND
d. Save your changes.
View Setup and
7. To let agents proactively message customers in enhanced Messaging channels from any page Configuration
in Salesforce, go to the Publisher Layouts page in Setup and add the Send Message global
To create and save Lightning
action to your global action layout. To let agents message customers from the Salesforce mobile pages in the Lightning App
app, create a layout for the app. Builder:
• Customize Application

40
Provide Conversation Support with Messaging in Service Add Messaging to the Service Console
Cloud

Example: In this sample Messaging Session page layout for enhanced channels, agents can see the user details right above the
conversation. From the right-hand pane, they can take a recommended action, view their after conversation work countdown, or
run a flow to send a messaging component.

These page components are relevant to Messaging.


• Enhanced Conversation: A real-time transcript of the messaging session. Used in enhanced Messaging channels and Messaging for
In-App and Web.
• Conversation: A real-time transcript of the messaging session. Used in standard Messaging channels.
• Related Record: Messaging User: Shows the customer’s name, messaging consent status, and other channel-specific details.
• Flow: Lets agents run flows to send certain types of messaging components, such as time selectors, in enhanced Messaging channels
and Messaging for In-App and Web.
• Actions & Recommendations: Shows agents a list of actions they can take.
• Next Best Action: Suggests the agent’s next action based on past activity.
• Knowledge: Lets agents share knowledge articles in messaging sessions.
• After Conversation Work: Starts a timer at the end of a messaging session to give agents a set amount of wrap-up time.

41
Provide Conversation Support with Messaging in Service Add Messaging to the Service Console
Cloud

Customizing the Enhanced Conversation Component


When you add the Enhanced Conversation component to the Messaging Session page layout, decide which actions are visible to agents
and customize other component settings.
1. In the Lightning App Builder, open the Messaging Session page layout and click the Enhanced Conversation component.
2. Configure the component properties in the Properties pane. The Enhanced Conversation component includes these editable
properties, which are all deselected or blank by default.
a. Hide transfer action: Don’t show agents the option to transfer messaging sessions to another agent, queue, or flow.
b. Hide emoji action: Don’t show agents the option to send emoji.
c. Hide quick text action: Don’t show agents the option to send quick text.
d. Hide flag raise action: Don’t show agents the option to raise a flag requesting help from a supervisor.
e. Hide file attachment action: Don’t show agents the option to attach files.
f. Hide messaging component action: Don’t show agents the option to send messaging components.
g. Hide voice message action: Don’t show agents the option to record and sent voice messages.
h. Enter starts a new text line: If selected, an agent can press Enter/Return to start a new line of text. If deselected, Enter/Return
sends the message.
i. Limit conversation history: Don’t show the customer’s previous messaging sessions in the Enhanced Conversation component.
j. Minutes to Respond: Prompt agents to respond if too much time has passed since the customer’s last message. For example,
enter 4 to prompt agents after 4 minutes passed since the customer’s last message.
k. Adjust Height (in Pixels): Enter a value from 500 to 1000 to adjust the Enhanced Conversation component height in the Service
Console.

3. Save your changes.

Showing Messaging Components in the Service Console


To send most messaging components, agents click the messaging component action in the messaging window and select a component.
However, agents must run a flow to send messaging components with dynamic content, such as time selectors or components that
rely on parameters.
Here’s how to show dynamic messaging components in the Service Console.
1. Drag a Flow component onto your Messaging Session page layout.
2. In the properties pane, select a flow that references a messaging component.
3. In the recordID field, enter the variable that is included in the selected flow’s Enhanced Message component. Then, select Pass
record ID into this variable. If these properties aren’t completed, agents can’t send the messaging component to customers.

42
Provide Conversation Support with Messaging in Service Add Flexibility and Power with Messaging for In-App and
Cloud Web

4. Save your changes and activate the page.


If you plan to create multiple messaging components that are linked to flows, here are two ways to help agents quickly find the flow
they need in the Service Console:
• Group the Flow components in an Accordion component. To help agents understand the purpose of the accordion component,
enter a custom section label—for example, the screenshot shows an accordion component labeled Messaging Components
(Dynamic).
• Group all messaging component flows as subflows within one larger flow. When an agent runs the flow, they select the relevant
sub-flow to insert the messaging component they need.

Note: Auto-response messaging components, which are available only for Messaging for In-App and Web, aren’t sent from the
Service Console. Instead, they’re selected in the channel’s settings. The components are sent to the customer automatically when
a messaging session starts or ends, or when an agent joins.

SEE ALSO:
Set Up a Flow to Send Time Selectors in Messaging Sessions
Set Up a Flow to Send Questions with Options in Messaging Sessions
Send Messaging Components in Messaging Sessions

Add Flexibility and Power with Messaging for In-App and Web
Start a conversation with customers on your mobile app or website. Messaging for In-App and Web delivers enhanced pre-chat support
to pinpoint customer needs and access records before the agent connects in the Service Console. Custom branding and mobile push
notifications provide a modern experience.

43
Provide Conversation Support with Messaging in Service Add Flexibility and Power with Messaging for In-App and
Cloud Web

Get Started Enable Increase Productivity


Modernize Communication with Your Prepare a Salesforce Org Trailhead: Optimize Messaging for In-App
Customers Add User Verification and Web
Reimagine Messaging for Mobile and Configure a Messaging for Web Deployment Cookbook for Messaging for In-App and
Websites Web
Configure a Web Deployment for an
Plan for Messaging for In-App and Web Experience Builder site on page 92 Create a Pre-Chat Customer Flow on page
Messaging Glossary 128
Configure a Mobile Deployment
Considerations and Limitations Respond with Messaging Components
Configure a Custom Client Deployment for
Lifecycle of a Messaging Session Messaging for In-App and Web Customize Your UI with Lightning Web
Components
Customize Pre-Chat
Add a Web or Mobile Bot on page 418
Message with the Salesforce Mobile App
Set Mobile Push Notifications

Develop Learn more...


In-App Developer Guide Considerations when Replacing Chat with
iOS SDK Release Notes Messaging for In-App and Web

Android SDK Release Notes Compare Messaging for In-App and Web
Capabilities to Chat Capabilities
iOS Examples & Reference
MIAW Demo Video
Android Examples & Reference

IN THIS SECTION:
What’s Messaging for In-App and Web?
Understand how your customer’s information flows from a pre-chat form, to record generation and connection to the right agent.
Set Up Messaging for In-App and Web
Understand the four stages of setting up Messaging for In-App and Web. We recommend following them in order for a smooth
experience.
Cookbook for Messaging for In-App and Web
Check out our recipes for optimizing Messaging for In-App and Web to see if one fits your use case.
Flow Recipes for Messaging for In-App and Web
Design Omni-Channel Flows to accomplish your Messaging for In-App and Web use case.

44
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

What’s Messaging for In-App and Web?


Understand how your customer’s information flows from a pre-chat form, to record generation and
EDITIONS
connection to the right agent.
Messaging for In-App and Web provides your customers with a personalized messaging experience Available in: Lightning
from your mobile app or website to the Service Console. Experience. View required
editions.
A customer requests a messaging conversation and provides contact info and other details in a
pre-chat form. Their form-field inputs travel in your new Messaging channel and are mapped as This Messaging
parameters. The flow you set helps define where the inputs go, such as an email address or an order article for In-App
number. An agent connects and is ready to help with specific information at their fingertips. applies to: and
Optionally, a new Salesforce record can be created or updated as part of your enhanced flow. Messaging
for Web
channels
Data Flow
This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

45
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

IN THIS SECTION:
Considerations when Replacing Chat with Messaging for In-App and Web
Beginning in Summer ’23, Salesforce Chat is in maintenance-only mode, and we are no longer building new features. Consider
switching to Messaging for In-App and Web, a modernized alternative that offers an asynchronous, persistent conversation experience
with your customers. Learn more about product improvements, feature comparisons, and setup considerations to prepare for your
move to Messaging for In-App and Web.
Plan for Messaging for In-App and Web
Before configuring a messaging experience, consider your organization’s current support goals. This step helps you select the right
Omni-Channel routing, pre-chat form fields, and custom parameters to personalize the experience.
Create a Synchronous Messaging Experience in Messaging for In-App and Web
Messaging for In-App and Web provides an asynchronous messaging experience, which allows the end user to start, stop, and
resume the same conversation when it’s convenient. However, Messaging for In-App and Web also supports synchronous conversations
with a clear beginning and end.
Considerations and Limitations for Messaging for In-App and Web
Before starting your setup process, review the considerations and limitations for Messaging for In-App and Messaging for Web.
Rate Limits for Messaging for In-App and Web
Before starting your setup process, review the rate limits for Messaging for In-App and Web.

Considerations when Replacing Chat with Messaging for In-App and Web
Beginning in Summer ’23, Salesforce Chat is in maintenance-only mode, and we are no longer
EDITIONS
building new features. Consider switching to Messaging for In-App and Web, a modernized
alternative that offers an asynchronous, persistent conversation experience with your customers. Messaging for In-App and
Learn more about product improvements, feature comparisons, and setup considerations to prepare Web is available in Lightning
for your move to Messaging for In-App and Web. Experience. View required
editions
The Conversation Is Now Asynchronous and Persistent Chat is available in
Chat was session-based, which meant that conversations ended when your customer closed the Salesforce Classic and
conversation window or lost connection with an agent. Messaging conversation history remains Lightning Experiences. View
required editions.
in the window beyond a single interaction. With Messaging for In-App and Web, agents and
customers can start and stop the conversation, then pick it back up at a later time. Customers can This article applies to:
also message across tabs and devices without disconnecting the conversation. Messaging for In-App and
Messaging for Web
channels and Chat
Messaging for In-App and Web Is Part of the New Conversation Platform channels.
Messaging for In-App and Web is one of many channels built on our new conversation platform.
This article doesn’t apply
The conversation platform also houses Service Cloud Voice, Enhanced Messaging channels such
to: Standard and
as WhatsApp, and Partner Messaging Channels. This shared platform has several benefits.
enhanced WhatsApp,
• When we roll out a new feature, it’s often shared across all channels on the conversation platform. standard and enhanced
Agents get a consistent experience, regardless of channel. Facebook Messenger,
• We built these channels to scale beyond the customer support use case. For example, we built standard and enhanced
SMS, enhanced Apple
agent-initiated outbound messaging with lead generation for sales teams in mind.
Messages for Business,
Bring Your Own Channel,
and Bring Your Own
Channel for CCaaS.

46
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

The Chat Features That You Love Are Now in Messaging


Messaging for In-App and Web offers the same features that you enjoyed in chat on page 49, plus some key improvements:
• Asynchronous and persistent conversations can happen across devices and be picked back up at any time.
• An API lets you delete data.
• Individual-Object Linking (which replaced Channel-Object Linking by moving the functionality to flows) offers a flow template for
messaging sessions.
• Admins can create a library of messaging components that agents use to send structured content to customers in messaging sessions.
Components can include links, questions with options, secure forms, and time selectors.
• Conversation intelligence rules automatically notify supervisors or agents in real time when a customer uses a flagged keyword in
a messaging session.
• Omni-Channel flow-based routing provides more flexibility, such as routing directly to an agent.
• Route conversations to and from enhanced bots that allow rich text and attachments.
• Business Hours let you hide the messaging window when your agents aren’t working.
• Customers see an Estimated Wait Time letting them know how long before they’re connected to an agent.
• Customers see auto-responses letting them know when a conversation starts or ends, when an agent has joined, and more.
• Customers can see read and delivery receipts.
• Agents can send outbound file attachments.
• Customers can send emoji.
• Customers can search messaging history.
• Messaging for Web can be added to Build Your Own (LWR) and Microsite (LWR) Experience Site templates, and to B2B and B2B2C
Commerce templates.
• Messaging for In-App can send push notifications to customers.

Messaging for In-App and Web Includes AI Agent Support


Messaging for In-App and Web is compatible with both AI agents, such as Agentforce Service Agent, and enhanced bots, so you can
incorporate them into your support strategy to let your support reps focus on more complex inquiries. Chat supports standard bots only,
and can't be used with AI agents. If you're switching from Chat, you can clone your standard bots to turn them into enhanced bots.

The Setup Experience Changed to Ensure Better Results


Here’s an overview of what you can expect to do during Messaging for Web setup and how it compares to chat. When you’re ready,
follow these instructions to plan your Messaging for In-App and Web strategy on page 55, then set up Messaging for In-App and Web
on page 66.
• Create a messaging channel before customizing your deployment. All channels on the conversation platform use a messaging
channel object. The channel connects your deployment to the flow that routes conversations. With Chat, you created a chat button
for this purpose. In Messaging for In-App and Web, the chat the button comes with the code snippet that’s generated for your
deployment.
• Similar to chat setup, create a queue, skill, bot, or agent-based Omni-Flow that routes incoming conversations.
• Similar to chat setup, create and customize an embedded service deployment.
• To ensure that the conversation can persist asynchronously across tabs and devices, configure user verification. Persistent, asynchronous
conversations weren’t available in chat.
• To add Messaging for Web to your external website:

47
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

– Similar to web chat, copy the code snippet generated for your deployment and paste it into your website.

• To add Messaging for Web to your Experience Cloud site or Commerce Cloud site:
– Drag the Embedded Messaging component into the footer of the site builder template, and configure its properties.

• To add Messaging for In-App to your mobile app:


– Similar to chat, configure an SDK to communicate with your messaging for in-app deployment. Install it with Gradle for Android.
Install it with Swift Package Manager, CocoaPods, or manually for iOS.
– Messaging for In-App provides two production-quality layers of SDKs for each platform: A UI SDK that offers a ready-made but
configurable UI and a Core App SDK that you can use to create your own UI from scratch. Chat’s Embedded Service SDK only
offers a ready-made UI or some lower-level APIs for building your own UI.
– Similar to Chat’s Embedded Service SDK, the Messaging for In-App SDK requires you to create a configuration object to start a
conversation. These objects have a different syntax, but the concept is the same. However, with Messaging for In-App, you can
download a configuration file directly from your deployment in Setup and supply that file as the configuration information. You
can still manually specify configuration values.
– Sending and receiving messages and the other elements of a Messaging conversation require you to use a different API than
previously.

IN THIS SECTION:
Compare Messaging for In-App and Web Capabilities to Chat Capabilities
Review the benefits of Messaging for In-App and Web, and compare the modernized channel to our legacy chat product.
Migrate from Chat to Messaging for In-App and Web
Ready to make the switch from legacy chat? Messaging for In-App and Web is built on a more advanced platform than chat, so
there’s no automatic migration from one channel to the other. Create your workflow for Messaging, build the channel in a sandbox,
test it, then deploy it live. After Messaging is live, deprecate your legacy chat channel.
Alternative Solutions for Chat Features That Aren’t Available in Messaging for In-App and Web
Planning to replace Chat with Messaging for In-App and Web, but don’t see a Chat feature available in Messaging? Review this list
of alternative solutions.

48
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Compare Messaging for In-App and Web Capabilities to Chat Capabilities


Review the benefits of Messaging for In-App and Web, and compare the modernized channel to
EDITIONS
our legacy chat product.
Messaging for In-App and
Feature Chat Messaging for Messaging for Web Web is available in Lightning
In-App Experience. View required
Persistent Conversations editions

Chat is available in
Persistent No Yes Yes
Salesforce Classic and
Conversation History
Lightning Experiences. View
(with User Verification)
required editions.
Asynchronous No Yes Yes
This article applies to:
Conversations (with Messaging for In-App and
User Verification) Messaging for Web
Cross-device No Yes Yes channels and Chat
channels.
conversations (with
User Verification) This article doesn’t apply
to: Standard and
Session Continuity Yes N/A Yes
enhanced WhatsApp,
Across Tabs
standard and enhanced
Session Continuity Yes N/A Yes Facebook Messenger,
Across Subdomains standard and enhanced
SMS, enhanced Apple
Settings Messages for Business,
Bring Your Own Channel,
Route to Agent, Yes Yes Yes and Bring Your Own
Queue, Bot, or Skills Channel for CCaaS.
Works in the Salesforce No Yes Yes
Mobile App

Automated Proactive No Yes No


Messaging

Proactive Messaging No Yes No


by Agents

Keyword-Based Yes Yes Yes


Automation

Omni-Channel Sidebar No Yes Yes


Support

Pre-Chat Form - Visible Yes Yes Yes


and Hidden Fields

Terms and Conditions Yes Yes Yes


Acceptance in
Pre-Chat

49
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Feature Chat Messaging for In-App Messaging for Web


Customize Pre-Chat with Yes Yes Yes
Lightning Web Components

Populate Pre-Chat API No Yes Yes

AI Agent Compatibility No Yes Yes

Einstein Bot Compatibility Yes Yes Yes

Business Hours No Yes Yes

Custom Branding and UI Labels Yes Yes Yes

Multi-Language Support Yes Yes Yes

Auto-Response: Conversation No Yes Yes


started/ended, agent joined, and
so on.

Enhanced link messaging No Yes Yes


components

Question with options No Yes Yes


messaging components

Time selector messaging No Yes Yes


components

Secure Form messaging No Yes Yes


components

Notification messaging No Yes Yes


components

Post-Chat URL Yes Yes Yes

Salesforce Surveys Yes Yes Yes

Estimated Wait Time No Yes Yes

Conversation Catch-Up No Yes Yes

Idle Customer Timeout Yes Yes Yes

Queue Position Yes No No

Public REST API Yes Yes Yes

Channel Menu Support Yes No Yes

IP Blocking Yes No No

Sensitive Data Rules Yes Yes Yes

Agent Alias No Yes Yes

Delete Data (API) No Yes Yes

50
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Feature Chat Messaging for In-App Messaging for Web


Individual-Object Linking Flow No Yes Yes
Template

Clone Mobile Deployment No Yes N/A

Customize Height of Enhanced No Yes Yes


Conversation Component

Sneak Peek Yes No No

Supervisor and Agent Experience

Service Console Integration Yes Yes Yes

Supervisor Monitoring Yes Yes Yes

Flag Raise and Whisper Yes Yes Yes

Transfer to Agent, Queue, or Yes Yes Yes


Skills

Browser Notification for Yes Yes Yes


Assigned Conversation

Outbound File Attachments No Yes Yes

Einstein Reply Yes Yes Yes


Recommendations Support

Einstein Work Summaries Yes Yes Yes


Support

Actions and Recommendations Yes Yes Yes


Sidebar Support

Right-to-Left Language Support Yes Yes Yes


for Agents

Customer Experience

Inbound File Attachments Yes Yes Yes

Emoji Support No Yes Yes

Read and Delivery Receipts No Yes Yes

Push Notifications No Yes N/A

Save Transcript Yes Yes Yes

Message Search No Yes No

Right-to-Left Language Support Yes Yes Yes


for End-Users

Supported Sites

51
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Feature Chat Messaging for In-App Messaging for Web


External Website Yes N/A Yes

Experience Site Templates: Build Yes N/A Yes


Your Own (Aura), Customer
Account Portal, Partner Central,
Help Center, and Customer
Service

LWR Experience Site Templates: No N/A Yes


Build Your Own (LWR) and
Microsite (LWR)

Commerce Cloud Templates: No N/A Yes


B2B and B2B2C Commerce
templates

Mobile Publisher Yes N/A Yes

Migrate from Chat to Messaging for In-App and Web


Ready to make the switch from legacy chat? Messaging for In-App and Web is built on a more
EDITIONS
advanced platform than chat, so there’s no automatic migration from one channel to the other.
Create your workflow for Messaging, build the channel in a sandbox, test it, then deploy it live. After Setup is available in:
Messaging is live, deprecate your legacy chat channel. Lightning Experience

Available in: Enterprise


Design Your Messaging Strategy Edition for Service Cloud with
Before setting up Messaging for In-App and Web, design the workflow that your agents and the Digital Engagement and
customers use. Familiarize yourself with the features that have carried over from chat and brand Messaging for In-App and
new features that weren’t available in chat. Web SKUs and Service
Cloud Performance and
Messaging for In-App and Web was designed to provide asynchronous customer experiences. If Unlimited Editions with a
you prefer to stick with the synchronous workflow you used in chat, review Create a Synchronous Messaging for In-App and
Messaging Experience in Messaging for In-App and Web. Web SKU
To design an asynchronous messaging experience, it’s good to first acknowledge how that will
change from the synchronous chat experience. Here are a few considerations.
• Your metrics for agent and contact center success change. Consider the following new metrics:
– First contact resolution
– Customer satisfaction (CSAT)
– Average response time
– Total number of engagements to resolution

• To uphold such metrics, consider these new tools:


– The Mark Messaging Session Inactive feature allows release of agent capacity when the customer response is delayed.
– Agents can transfer a session to a flow.
– Conversation Catch-up allows other agents to get a quick insight into the conversation before jumping in to assist.
– Business hours prevent chats from coming in when agents aren’t working.

52
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

When you’re ready to design your workflow, review Plan for Messaging for In-App and Web.

Build Your Messaging Strategy


We recommend building your workflow in a Sandbox first, so that testing doesn’t impact your live customer experience. Review our
Messaging for In-App and Web setup guide to understand what’s involved. Then, create your sandbox messaging experience.

Optimize Your Messaging Strategy


To learn more about features that improve your Messaging for In-App and Web setup, take our Messaging for In-App and Web Optimization
trailhead. This course reviews our biggest features that take messaging to the next level, such as User Verification to persist messaging
history or messaging components to save agents time in responding to common questions. For all the other enhancements you can
make to Messaging for In-App and Web, check out our Increase Messaging Productivity documentation.

Test and QA Your Workflow


Test your new Messaging for In-App and Web experience in a sandbox before setting up in a production environment. Allocate time to
ensure proper QA and User Acceptance Testing (UAT). Include testing any potential process change due to the nature async chat
experience.

Go Live with Messaging for In-App and Web


Embedded Messaging and Legacy Embedded Chat can co-exist in the same org. However, both widgets can’t display on the same page.
Also, activating Enhanced Omni-Channel automatically deactivates your standard channels (like legacy chat). Remove your chat widget
before deploying Messaging for In-App and Web.
Design a flexible rollout plan to onboard business unit or agents as needed. Utilize a phased and agile approach for your release of
features and/or by business unit.

53
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Alternative Solutions for Chat Features That Aren’t Available in Messaging for In-App and Web
Planning to replace Chat with Messaging for In-App and Web, but don’t see a Chat feature available
EDITIONS
in Messaging? Review this list of alternative solutions.

Note: If your business has a use case for a feature that’s not yet available in Messaging for Messaging for In-App and
In-App and Web, we want to know. Work with your Account team to submit a Voice of the Web is available in Lightning
Experience. View required
Customer request or submit the use case on Ideas Exchange.
editions

Chat Feature Messaging for In-App and Web Alternative Solution Chat is available in
Salesforce Classic and
Queue Position Estimated Wait Time
Lightning Experiences. View
IP Blocking Use a custom object and Omni-flow to check. required editions.

LWC Messaging for In-App and Web supports Lightning Web This article applies to:
Components in your pre-chat form. To customize anything Messaging for In-App and
Messaging for Web
else, use a messaging component and send it via an agent or
channels and Chat
a bot.
channels.

This article doesn’t apply


to: Standard and
enhanced WhatsApp,
standard and enhanced
Facebook Messenger,
standard and enhanced
SMS, enhanced Apple
Messages for Business,
Bring Your Own Channel,
and Bring Your Own
Channel for CCaaS.

54
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Plan for Messaging for In-App and Web


Before configuring a messaging experience, consider your organization’s current support goals.
EDITIONS
This step helps you select the right Omni-Channel routing, pre-chat form fields, and custom
parameters to personalize the experience. Available in: Lightning
Planning Questions Experience. View required
editions.
To create an effective messaging system for a support team, answer these three questions.
1. How are your agents organized? This Messaging
article for In-App
2. What details do they need before chatting with a customer? applies to: and
3. Where do agents pull Salesforce records before connecting with a customer? Messaging
for Web
Table 1: Considerations and Messaging Options channels
Agents organized Match segment for Omni routing type This Standard
• One group • Routing with Queues article and
doesn’t enhanced
• Service type • Route to an Agent
apply to: WhatsApp,
• Skill set • Routing with Skills standard
• Support topics • Routing with Bots and
enhanced
• Languages
Facebook
Messenger,
Details agents need Use the pre-chat form
standard
• First name Collect details at the point of contact. Ask and
• Last name customers to fill out visible pre-chat fields or enhanced
collect data behind-the-scenes with hidden SMS,
• Email
pre-chat fields. Create the combination that enhanced
• Custom information works best for your organization. Apple
Messages
Records pulled Salesforce records for Business,
enhanced
• Leads Link a record to a conversation based on how
LINE, Bring
• Cases your database is set up. Connect your channel
Your Own
with an object. Channel,
• Contacts
and Bring
Your Own
Channel for
Feature Checklist CCaaS
We recommend following our entire set-up process. Some steps must be completed before others
can be configured. Here’s a preview of the features to select and customize during your setup
experience:
• User verification allows messaging conversations to persist beyond a single interaction, and across tabs and devices. Learn More on
page 74.
• Pre-chat forms use visible and hidden fields to collect basic details and other essential information like an email address. These inputs
can be set to parameters and travel through your channel for a specific outcome you set. Learn More
• Bots ease the messaging burden on your agents for routine requests. Add a bot for routine inquiries or use as a quick pre-chat setup
experience. Learn More on page 418
• Omni-Channel allows you to direct customers in your channel with queue, agent, skills or bot-based routing using Omni Flow.Learn
More on page 72

55
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

• Object lookup and creation added to your Omni Flow provides agents with customer records as leads, cases, or contacts, so they
have everything they need at their fingertips. Learn More on page 108
• Branding, yes! You can customize the look and feel of your messaging experience for mobile and web channels. Pick colors and
fonts and customize your window.
• Custom Labels can match the voice and tone of your website. Update your label text and add some zing to your messaging window
for mobile or web.
• Messaging Components let you send structured content to customers for a more interactive and efficient messaging experience.
Learn More
• Push notifications for your mobile channel are an effective way to stay in touch with customers. Configure this feature as part of your
deployment setup. Learn More
• Mobile SDK information is available for developers in our Messaging for In-App Developer Guide. Learn More

Create a Synchronous Messaging Experience in Messaging for In-App and Web


Messaging for In-App and Web provides an asynchronous messaging experience, which allows the
EDITIONS
end user to start, stop, and resume the same conversation when it’s convenient. However, Messaging
for In-App and Web also supports synchronous conversations with a clear beginning and end. Setup is available in:
Lightning Experience
What Is Synchronous Messaging? Available in: Enterprise
A synchronous messaging experience is a real-time conversation with a beginning and end. Each Edition for Service Cloud with
participant is present when the conversation starts, and both remain engaged for real-time the Digital Engagement and
interaction. In a customer support scenario, a time period can occur during which the end user Messaging for In-App and
waits for an available agent to join the conversation. In addition, a scenario can occur in which an Web SKUs and Service
Cloud Performance and
end user can’t start a conversation because no agents are available. A synchronous messaging
Unlimited Editions with a
experience is like a digital version of a customer service phone call.
Messaging for In-App and
In asynchronous messaging, participants aren’t required to be present at the same time. An end Web SKU
user can send a message and then perform other tasks while waiting for a response. Agents can
handle several conversations simultaneously. For business use cases where real-time interactions
aren’t critical or where a high volume of simultaneous incoming messages are expected, asynchronous messaging is highly effective.

Compare Synchronous and Asynchronous Messaging


If you’re still deciding which type of messaging experience to create for your end users, consider the pros and cons of synchronous
versus asynchronous.

Messaging Experience Pros Cons


Synchronous • Conversations have a defined end, • Reduces the number of concurrent
which helps with agent productivity sessions that an agent can manage.
metrics. • The end user can be required to repeat
• Interactions occur in real time. their question after the conversation
ends or disconnects.

Asynchronous • A full conversation history is available • It’s not appropriate for emergency or
to the agent for context. real-time use cases.

56
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Messaging Experience Pros Cons

• Each agent is able to manage a higher • To make sure that message history
number of concurrent sessions. doesn’t get exposed to unauthorized
• It’s appropriate for use cases that don’t parties, additional setup work is
require immediate action or resolution. required.

Tools to Help Set Up a Synchronous Workflow


Because synchronous messaging is all about real-time interactions, it's important to think about the lifecycle of the conversation.
Specifically:
• How to manage messaging requests outside of business hours.
• How to set wait time expectations during business hours.
• How the conversation ends.

Manage Requests Outside of Your Business Hours


In an ideal situation, an agent is available to answer your customer’s question. However, it’s not always the case. Some companies have
strict business hours when agents are available. Others want to prevent end users from excessive wait times by capping the number of
queued chats.
If all your agents work during one set of business hours, adding business hours to your Embedded Service deployment configuration
prevents conversations from being initiated when agents aren’t working. Business hours create a clean cut-off point where the entrance
to the line gets closed, but end users who were already waiting can remain in the queue.
If your agents work in tiered support teams, each during a different set of business hours, consider a more multifaceted setup.
For example, imagine a scenario where a specialist group of agents handle more technical questions than standard support agents.
These specialized agents are only available from 9 AM to 5 PM, while your standard support team operates from 8 AM to 8 PM. How do
you make sure that you have enough information to route the conversation to the right queue, while accounting for the different support
hours?
First, allow the user to open the messaging conversation window at any time. Present a pre-chat form that asks the end user to provide
their contact information and indicate the topic of conversation.
When the end user clicks Start Conversation, the Omni flow that’s associated with your Messaging Channel begins to execute. In that
flow, you can check for business hour records that are specific for the Issue Type (Technical Support) and then choose not to route the
messaging session. Instead of routing the session, create a case with the name and email address provided in the pre-chat form. Set a
variable to explain that a case was created and an expert will respond via email when agents are available. A process like this makes sure
that your end user is able to ask their question one time instead of being forced to try again during business hours.
Alternatively, you can assign the chat to a more general queue if wait times (based on Estimated Wait Time) are too high or no one is
available.
Learn more about setting business hours, advanced routing with Omni-Channel flows and the reasonForNotRouting flow variable.

Manage Wait Times During Your Business Hours


After your end user enters the conversation and is waiting for an agent to join, it’s important to set expectations. To show the end user
how long they must wait to hear from an agent, add Estimated Wait Time to your messaging conversation window. Estimated Wait
Time is based on the average time that the previous 10 conversations from the last 10 minutes waited in queue before an agent joined.
Currently, estimated wait time is available only for conversations that are routed to a queue.

57
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

If you choose not to use Estimated Wait Time, you can use a Conversation Acknowledgment auto-response component. You customize
a message that’s sent to the end user as soon as the conversation starts. You can use this component to welcome them, set expectations
for a general wait time, or let them know that they can start typing a message.
Learn more about Estimated Wait Time and Auto-Response Components.

Decide How a Conversation Ends


The last stage of the synchronous conversation experience is deciding how it ends.
Uphold service level agreements, such as time to resolution, by giving your agents a workflow for ending a conversation. To help agents
confirm that the conversation is over, create a messaging component that asks “Have I successfully answered your question?” Configure
the enhanced conversation component so that agents have a Send Messaging Component action in their toolbar. When an agent has
confirmation that no further assistance is required, they can click the End Chat button in the agent console, finish after-conversation
work, and then move on to their next assignment.
The end user can also end the conversation by clicking End Chat from the messaging conversation menu. After an end user clicks End
Chat, the agent can’t send a manual message. You can choose to send a final message or a survey with an End Conversation auto-response
component.
Those examples describe scenarios where the agent or the end user proactively ends things. But what about a scenario where the end
user stops responding? The reasons why an end user stops responding vary.
• They temporarily lose internet connectivity. (Don’t worry, users can rejoin conversations as long as their authorization token hasn’t
expired.)
• They’re multitasking and haven’t returned to the conversation.
• They stepped away from their computer or phone and haven’t seen the message.
• They decide to abandon the chat without ending the conversation.
In these situations, the agent can manually set the conversation to Inactive. Alternatively, you can set up automatic inactivation, which
sets a messaging session to Inactive status if the user hasn’t responded in a set amount of time (between 5 and 30 minutes). From there,
if the end user responds, the messaging session status is set back to Waiting and the session reroutes based on the Omni Flow assigned
to the channel. If the end user doesn’t respond, the messaging session status returns to Ended after 24 to 30 hours.
Learn more about manually-send messaging components and automated Inactivity.

58
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Considerations and Limitations for Messaging for In-App and Web


Before starting your setup process, review the considerations and limitations for Messaging for
EDITIONS
In-App and Messaging for Web.
Available in: Lightning
General Experience. View required
editions.
• Messaging for In-App and Web offers a persistent and asynchronous conversation experience
that varies depending on the messaging type and whether the user is verified. This Messaging
article for In-App
Messaging Type Experience for Unverified Experience for Verified applies to: and
Users Users Messaging
for Web
Messaging for In-App Messaging history persists in Messaging history persists in channels
the conversation window the conversation window for
This Standard
indefinitely. The messaging verified users. A customer can
article and
session remains active until the log out, then log back in, and
doesn’t enhanced
agent clicks End Chat. still see messaging history.
apply to: WhatsApp,
Salesforce calls the client API standard
(iOS, Android) to renew the and
token based on the time enhanced
specified in the Authorization Facebook
Token Expiration Time for Messenger,
Verified Users field in standard
Messaging Channel Setup. Your and
client implementation can end enhanced
the session or provide a valid SMS,
identity token at this point. enhanced
After user verification is added, Apple
users must log in to access Messages
messaging. The messaging for Business,
session ends when the agent enhanced
clicks End Chat. LINE, Bring
Your Own
Messaging for Web Messaging history disappears Messaging history persists in Channel,
from the conversation window the conversation window for and Bring
after the time specified in the verified users. A customer can Your Own
Authorization Token Expiration log out, then log back in, and Channel for
Time for Unverified Users field still see messaging history. CCaaS
in Messaging Channel Setup Salesforce calls the client API to
(the default is 6 hours). renew the token based on the
Otherwise, the messaging time specified in the
session remains active until the Authorization Token Expiration
customer or agent clicks End Time for Verified Users field in
Chat. Messaging Channel Setup. Your
client implementation can end
the session or provide a valid
identity token at this point. The
messaging session ends when
the agent clicks End Chat.

59
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

• User verification is supported on an external website and on some Aura sites (Build Your Own Aura, Help Center, and Customer
Service templates). It’s not supported on other Experience Cloud or Commerce Cloud sites.
• Messaging for the Web supports subdomain session continuity, so end users can continue a messaging conversation while navigating
from your domain (www.example.com) to any subdomains that you have (help.example.com). To confirm which domain and
subdomains work with your deployment, go to Setup > User Interface > Sites and Domains > Sites, then select the unique site
associated with your deployment from the Site Label column. Locate the domain and subdomain under Trusted Domains for Inline
Frames.

Note: If your domain was created before the Summer ‘23 release, republish your deployment to make the domain and
subdomain appear here.

• If a verified user is participating in more than one conversation, the Messaging for Web client opens to the conversation that was
most recently started.

Setup
• To make sure that Messaging for In-App and Web works optimally, republish your deployment after testing newly added features.
For best performance, republish your deployment only outside of business hours or when you expect the fewest active messaging
conversations.
• Messaging for In-App and Web isn’t supported on .mil sites.
• Messaging for In-App and Web complies with these certifications: ISO 27001, ISO 27017, ISO 27018, SOC 1, SOC 2, SOC 3, HIPAA,
NEN 7510, C5 (ISAE 3000), ASP/Saas, and ASIP Santé HDS.
• Salesforce is committed to our customers’ success, including supporting them on their GDPR compliance journeys.
Seehttps://www.salesforce.com/privacy/regions/.
• Subdomain session continuity can be blocked in these scenarios.
– If you block third-party cookies in the Chrome or Edge desktop experiences.
– If you prevent cross-site tracking in the Safari desktop and iOS experiences.

• Some malware software tools that block malicious downloads also prevent the HTML5 feature Server Sent Events (SSE) from working
properly. As a result, messages aren’t shown to the customer in the conversation window. To resolve this issue, work with your IT
team to allowlist the SSE connections.
• To have a working pre-chat form, a user must have the Routing Type set as OmniFlow and a flow that uses the pre-chat dataset in
the related messaging channel.
• After you select a deployment type, web or mobile, you can’t change the type later. Instead, create another deployment. You can’t
delete sites that are created with a deployment.

60
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

• If you create or edit a web or mobile deployment, click Publish on the Embedded Service Deployment Settings page. The changes
can take up to 10 minutes to finish due to caching.
• After you add a messaging channel to your mobile or web deployment, you can’t change to a different channel later.
• We don’t support adding custom CSS to Messaging for In-App and Web deployments. If you have custom CSS in your embedded
component, it’s your responsibility to test your chat window each release to make sure that it functions properly.
• We don’t support using change sets for deploying Messaging for In-App and Web.
• Alternate Header Color is configurable in Branding setup, but it’s not supported in a messaging window.
• All field values that are set in a pre-chat form are passed to an Omni-Channel flow as a string-type variable, including checkboxes
and numbers.
• If you create a custom pre-chat field, go to the deployment settings to add a Custom Label, because no default option is available.
To find the new field, in the Label Group, select Pre-Chat.
• If you enable Terms and Conditions but you disable the pre-chat form, Terms and Conditions are shown at the beginning of every
conversation, not every session. To display Terms and Conditions more frequently, such as mid-conversation, enable the pre-chat
form. If you don’t want customers to see the pre-chat form, consider adding a single hidden field.
• In a Messaging for Web deployment, a supported language is required for the web client to load. Salesforce offers three levels of
language support. To use an end-user or platform-only language, enable the end-user or platform-only language and then add a
valid code for your language setting in the code snippet.
• Each custom label supports up to 1000 characters.

61
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

• You can add a Messaging for Web deployment to an external website, an Experience Cloud site, or a Commerce Cloud site. In
Experience Cloud, we support Build Your Own (Aura), Customer Account Portal, Partner Central, Help Center, Customer Service, Build
Your Own (LWR), and Microsite (LWR) templates. In Commerce Cloud, we support B2B Commerce (LWR), B2C Commerce (LWR),
and B2B Commerce (Aura) templates.
• To effectively use an iframe with your website and reduce JavaScript library conflicts, Messaging for Web creates a unique site that
appears in your All Sites list in Setup. Don’t reuse this generated site URL, which has reduced security, for other purposes. Don’t
modify this URL through Experience Builder or Workspace links.
• If you add Messaging for In-App and Web to an app built with Mobile Publisher, you can’t allow customers to download an individual
file that’s sent from an agent or the entire transcript of their messaging conversation.
• It’s not possible to maintain an Embedded Service Chat, Channel Menu, and Messaging for Web deployment on the same third party
website or Experience site. Remove Embedded Service Chat and Channel Menu before adding Messaging for Web. Alternatively,
add Messaging for Web to your Channel Menu.
• Business hours rely on the time set by your device, such as a computer or smartphone. Typically, your device automatically sets the
time to align with your time zone. If you edit your device’s clock to display an artificial time, your business hours sometimes reflect
the new artificial time.

Note:
– Modifications to a Business Hours record linked to a deployment may take up to two hours to take effect because of the
caching properties associated with the Business Hours record.
– Replacing a Business Hours record with another in a deployment and then publishing may result in a delay of up to 10
minutes, due to the caching expiry of the deployment itself.

• The Test Messaging feature in the Embedded Service Deployment Settings page doesn't appear in a sandbox environment that’s a
copy of your production environment. To enable it, add your Embedded Service Deployment to your VisualForce page.

Agent Experience
• To end a conversation, agents working in Service Console can click End Chat before closing the Messaging Session tab (MS-xxxxxxx).
Closing the tab without clicking End Chat prevents future inbound messages from appearing in the Omni queue.
• Quick text is available to Messaging for In-App and Web agents. Messaging for In-App and Web doesn’t support Quick text folders.
• Agents can send and receive these file-attachment types: PDF, .png, .jpeg, .jpg, .bmp, .gif, and .tiff.

Customer Experience
• Messaging for In-App and Web doesn’t set cookies.
• A user sees delivery and read receipts when chatting with an agent. But if they reload a browser page, the sent, delivery, and read
receipts are lost.
• If the estimated wait time is less than 1 minute, we round it up to 1 minute.
• Customers can resend a failed message after an outage within the browser tab where the message was originally sent. If a customer
has multiple tabs open, each showing the same messaging conversation, the resend option appears only in the tab where the
message failed.
• When a user opens and chats across multiple tabs or windows, the browser is limited by a maximum number of open connections.
If the maximum is reached, some tabs can’t receive new conversation entries. Refer to a specific browser’s SSE connection limits.
• These browser settings block third-party web storage, preventing subdomain session continuity: Chrome’s incognito mode, Microsoft
Edge’s balanced tracking prevention, and Firefox’s default setting to block cross-site tracking cookies.
• AppleWebKit, which is currently on all iOS browsers, partitions web storage by domain. This partitioning prevents subdomain session
continuity on all iOS browsers.

62
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

• Previews for attached image files aren’t visible to your customers when they select the eye icon to view during a conversation.
• Customers can send and receive these file attachment types: PDF, .png, .jpeg, .jpg, .bmp, .gif, and .tiff.
• Messaging for In-App and Web customers can send and receive attachments up to 5 MB.
• Messaging for In-App and Web customers can send up to five file attachments, each up to 5 MB, in one conversation update.
• Messaging for In-App and Web customers can preview a PDF by clicking its thumbnail in the messaging window. In Firefox, Messaging
for Web customers must first “unblock Third-party cookies” from their Firefox browser settings.
• If your Messaging for In-App and Web deployment is hosted on an app built with Mobile Publisher, end users can’t download a file
that was sent by an agent.

SEE ALSO:
Enhanced Bots Considerations
Messaging for In-App iOS Known Issues
Messaging for In-App Android Known Issues
Messaging for In-App Developer Guide
Messaging for Web Developer Guide

63
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

Rate Limits for Messaging for In-App and Web


Before starting your setup process, review the rate limits for Messaging for In-App and Web.
EDITIONS

Rate Limits Available in: Lightning


Experience. View required
These rate limits apply to Messaging for In-App and Web: editions.

What Description Limit Notes This Messaging


article for In-App
Access token requests Maximum number of 200 requests per Access tokens are applies to: and
requests for access minute per org requested when you Messaging
tokens per minute. call for Web
setIdentityToken() channels
when user verification
This Standard
is enabled, or when
article and
clicking the Chat enhanced
doesn’t
button when user WhatsApp,
apply to:
verification isn’t standard
enabled. and
enhanced
Renew Token Maximum number of 200 requests per Renew token is used
Facebook
requests to renew a minute per org for Messaging for Web
Messenger,
token per minute. when user verification
standard
is enabled and the
and
user’s Authorization enhanced
token has expired. The SMS,
Renew token is used in enhanced
Messaging for In-App Apple
to renew the token Messages
regardless of whether for Business,
User Verification is enhanced
enabled or not. LINE, Bring
Your Own
Start Conversation Maximum number of 3 per page per 30 For each page or Channel,
conversation start seconds mobile app, the and Bring
requests per 30 number of times a Your Own
seconds. conversation can be Channel for
started. CCaaS
Messages per minute Maximum inbound 22 messages per
messages (from the conversation per
end user to the agent) minute
allowed per minute
per conversation.

File sent per minute Maximum files sent by 12 per conversation


an end user to the per minute
agent per conversation
per minute.

64
Provide Conversation Support with Messaging in Service What’s Messaging for In-App and Web?
Cloud

What Description Limit Notes


Transcript Downloads Maximum number of times a file 3 times per conversation per
transcript can be requested per hour
conversation.

65
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Set Up Messaging for In-App and Web


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

66
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Understand the four stages of setting up Messaging for In-App and Web. We recommend following
USER PERMISSIONS
them in order for a smooth experience.
To set up this feature:
Important: Before setting up a new channel, see Reimagine Messaging for Mobile Apps
• Customize Application
and Websites and Planning Questions and Checklist to review your choices. Remember to
test the experience in a sandbox before setting up in a production environment. AND
Modify Metadata
Follow the four stages of setup in order, as some steps depend on the completion of previous steps.
Through Metadata API
Functions
1. Prepare a 2. Configure a 3. Set up a pre-chat 4. Add a bot or push
Salesforce org deployment form notifications To modify permission sets
and profiles:
Give agents the right Connect your channel Create an optional Set up an optional bot
• Manage Profiles and
permissions, set up with a new web or pre-chat form with or mobile push Permission Sets
Omni-Channel, create mobile deployment. standard or custom notifications to
an Omni Flow, add a Set branding and fields to gather critical supercharge your
messaging channel, configure more details for agents. messaging channel.
connect to the Service features.
console, and add user
verification.

IN THIS SECTION:
Give Users Access to Messaging for In-App and Web
To let agents message with customers, create and assign a permission set for Messaging for In-App and Web agents.
Prepare a Salesforce Org for Messaging for In-App and Web
Build a strong foundation for your new messaging channel. Create a new Salesforce org, set up Omni-Channel and Omni Flow, and
add your messaging channel. Connect to the Service console and configure your routing so the right agent responds to customers.
Persist Secure Messaging History Across Multiple Devices with User Verification
Securely connect your customers to their messaging history and persist conversations across devices with user verification.
Configure a Messaging for Web Deployment
Connect your messaging channel to a website with a new embedded deployment. Create and customize your deployment, add it
to your site, and set up security.
Configure a Messaging for Web Deployment in an Experience Builder or Commerce Cloud site
Use the Embedded Messaging component to add Messaging for Web to your Experience Builder or Commerce Cloud site.
Configure a Messaging for In-App Deployment
Connect your messaging channel to a mobile app with a new embedded deployment. You create a mobile deployment, and set
up additional features and push notifications for the customer experience.
Configure a Custom Client Deployment for Messaging for In-App and Web
To enjoy granular control of your web or mobile app messaging experience, create a custom client deployment for Messaging for
In-App and Web. While our web or mobile deployments rely on our web client and mobile SDK, a custom client deployment lets
you deliver a highly customized UI with the Messaging for In-App and Web REST API.
Customize Pre-Chat for Messaging for In-App and Web
Ask customers to fill out visible pre-chat fields before starting a messaging session, or auto-fill hidden pre-chat fields when the
conversation begins. Add standard and custom fields to your pre-chat form.

67
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Map Pre-Chat Values in Omni-Channel Flow


Omni Flow sends pre-chat form data to the messaging session for a more informed agent experience. Map visible and hidden fields
from your pre-chat form to your Omni flow.
Preview Your Messaging for Web Setup
After adding Messaging for Web to your site, preview your branding and configurations.
Troubleshoot Messaging for In-App and Web Setup
Respond to error messages you may encounter while setting up Messaging for In-App and Web.
Update Your Messaging for Web Deployment After Upgrading to Enhanced Domains
To ensure that your Messaging for Web deployment remains active after you enable enhanced domains, republish your deployment.
If you use Messaging for Web in an Experience Builder site, update your allowlisted URLs.

68
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Give Users Access to Messaging for In-App and Web


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

69
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

To let agents message with customers, create and assign a permission set for Messaging for In-App
USER PERMISSIONS
and Web agents.
To assign permission set
Note: If the Messaging for In-App and Web User permission set license or the Messaging
licenses:
for In-App and Web Agent app permission isn’t available, assign the Service Cloud user license • Manage Users
to your users instead.
To create permission sets:
1. Assign the Messaging for In-App and Web User permission set license. • Manage Profiles and
a. From Setup, enter Users in the Quick Find box, and select Users. Permission Sets

b. Select the user you want to assign the permission set license to. To edit users:
• Manage Internal Users
c. In the Permission Set License Assignments related list, click Edit Assignments.
To assign permission sets:
d. Enable the Messaging for In-App and Web User permission set license. • Assign Permission Sets
e. Click Save.
f. Repeat this process for all users that require Messaging for In-App and Web.

2. Create a presence status for messaging.


3. Create a permission set for your messaging agents.
a. Select None from the License dropdown menu.
b. Click the name of your permission set from the related list, and select App Permissions. Click Edit, and check Messaging for
In-App and Web Agent.
c. Save your changes.

4. Edit the permission set under Object Settings > Messaging Sessions to:
a. Enable the messaging presence status.
b. Give your users the appropriate access for their role.

5. Assign the permission set.


6. To allow agents to transfer messaging sessions, select Enable Skills-Based and Direct-to-Agent Routing on the Omni-Channel
Settings page in Setup.

IN THIS SECTION:
Give Non-Agents Access to Messaging for In-App and Web Transcripts
To let non-agents view Messaging for In-App and Web transcripts,, give them access to the Messaging Session record and give them
the Access Conversation Entries app permission.

70
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Give Non-Agents Access to Messaging for In-App and Web Transcripts


To let non-agents view Messaging for In-App and Web transcripts,, give them access to the
EDITIONS
Messaging Session record and give them the Access Conversation Entries app permission.
1. Give your non-agent user access to the Messaging Session record. Available in: Lightning
Experience. View required
2. From Setup, search for Profiles, and select Profiles.
editions.
3. Select the name of the profile for your non-agents.
This Messaging
4. Select App Permissions. article for In-App
5. Click Edit. applies to: and
Messaging
6. Select Enable on the Access Conversation Entries permission.
for Web
7. Save your changes. channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

71
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Prepare a Salesforce Org for Messaging for In-App and Web


Build a strong foundation for your new messaging channel. Create a new Salesforce org, set up
EDITIONS
Omni-Channel and Omni Flow, and add your messaging channel. Connect to the Service console
and configure your routing so the right agent responds to customers. Available in: Lightning
Important: Before setting up a new channel, see Reimagine Messaging for Mobile Apps Experience. View required
editions.
and Websites and Planning Questions and Checklist. Follow the setup process in order, as
later steps depend on the completion of previous steps. This Messaging
In this stage of Messaging for Web setup: article for In-App
applies to: and
1. Set Up Omni-Channel. Messaging
2. Create an Omni Flow. for Web
channels
3. Add a Messaging Channel.
4. Prepare the Messaging Session Layout. This Standard
article and
doesn’t enhanced
Set Up Omni-Channel apply to: WhatsApp,
standard
Enable Omni-Channel for your Messaging for In-App and Web use case.
and
1. Enable Omni Channel. enhanced
2. Create a Service Channel for messaging. Facebook
Messenger,
3. Create a queue where you want to route incoming messaging sessions. Add Messaging Session standard
as a supported object. and
enhanced
SMS,
Create an Omni-Channel Flow
enhanced
Create an Omni-Channel Flow for your Messaging for In-App and Web use case. Apple
With Omni-Channel set up, you’re ready to create an Omni-Channel Flow. This flow is required to Messages
route Messaging requests. Get up and running with a basic flow. After you set up your Pre-Chat for Business,
enhanced
Form, return to this flow to map pre-chat fields to your messaging channel.
LINE, Bring
Note: This section assumes that you understand how to create flows with FlowBuilder. If Your Own
you don’t, read the Flow Builder documentation or take our Flow Builder Trailhead module. Channel,
and Bring
1. From Setup, in the Quick Find box, enter Flows, and select Flows.
Your Own
2. Create a New Flow. Channel for
CCaaS
3. In the All + Templates tab, select Omni-Channel Flow.
4. From the Manager tab, create a New Resource.
USER PERMISSIONS
5. Select Variable as your Resource Type.
6. For the API Name, enter recordId. For the Data Type, specify text. To set up Omni-Channel
Flow and Messaging:
Important: The API name is case-sensitive and must be recordId. The messaging • Customize Application
channel uses this value to pass information into this Omni-Channel flow. To modify permission sets
and profiles:
7. Check Available for input, and then click Done.
• Manage Profiles and
8. From the Elements tab, select a Route Work action in your flow. Permission Sets

72
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

9. Name the New Action. Use recordId variable as the input value. Select Messaging for the Service Channel.
10. Specify Queue, Agent, Bot, or Skills as the Route To value.
a. If you select Queue, use the Queue ID for the queue where you want to direct the work.
b. If you select Agent, add the agent’s name via the Agent ID field.
c. If you select Bot, search for the bot name.
d. If you select Skills, add the Skill Requirement List.

11. Click Done.


12. Your simple flow looks like this.
13. Save and Activate your flow.

Add a Messaging Channel


Add a messaging channel for your Messaging for In-App and Web use case.
After Omni-Channel and Omni Flow are set up in your Salesforce org, add your Messaging Channel. Your Service Channel, which you
previously created, lets your org message with customers. Your Messaging Channel specifies what type of messaging you do (that is,
web, in-app, WhatsApp, Facebook, or SMS).

Note: You don’t need to turn the Messaging toggle On before creating a Messaging for In-App or Web deployment. The Messaging
toggle is for Facebook, WhatsApp, and SMS messaging only.
1. From Setup, in the Quick Find box, enter Messaging Settings, and select Messaging Settings.
2. On the Messaging Settings page, select New Channel.
3. Start the add channel process, and select the Messaging for In-App and Web type.
4. Enter your unique Channel Name and save your work.
5. On the next page, under Routing Type, select Omni-Flow. Select the Flow Definition and the Fallback Queue that you created earlier.
Choosing Omni-Flow allows you to work with our Pre-Chat form and Bots enhancements.
6. Add additional customer experience enhancements like showing estimated wait time, enabling user verification, or adding messaging
components to automate conversations.
7. Return to the Messaging Settings related list, and click the name of your channel.
8. Click Activate.
9. If it’s your first time activating a channel after the Summer ‘23 release, review the terms and conditions. Then, check the box to
acknowledge reading it, and click Accept.
10. Your channel is active when the Activate button says Active.

Add Messaging for In-App and Web to the Service Console.


Customize the Messaging Session layout to support messaging sessions in your channel.
See Add Messaging to the Service Console.

73
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Persist Secure Messaging History Across Multiple Devices with User Verification
Securely connect your customers to their messaging history and persist conversations across devices
EDITIONS
with user verification.
Add user verification to: Available in: Lightning
Experience. View required
• Maximize data privacy with secure tokens that verify your customer’s identity.
editions.
• Allow conversations to persist across multiple devices. For example, if a user signs in to your
mobile app and starts a messaging session, and then later logs in to your website, they can This Messaging
continue the messaging conversation there, seeing the same conversation history in both article for In-App
places. applies to: and
Messaging
• Enable asynchronous conversations. For example, your customer can start a conversation, walk for Web
away from their device for hours, and return to the same conversation at any time. channels
• Extend your customer’s access to their Messaging for Web conversation history. Without User
This Standard
Verification, Messaging for Web customers can view their conversation history in the messaging
article and
window for six hours. With User Verification, your customer can always see their conversation
doesn’t enhanced
history after logging in. Messaging for In-App continues to show messaging history for an
apply to: WhatsApp,
unlimited time frame.
standard
Important: User verification is available for a mobile app, an external website, or some Aura and
sites (Build Your Own Aura, Help Center, and Customer Service templates). User verification enhanced
doesn’t work with Experience Builder or Commerce Cloud sites. When you’re using the Facebook
Messenger,
Messaging for In-App SDK for mobile apps, we don’t support verified users alongside unverified
standard
users. Your mobile app implementation must be designed for either verified users or unverified
and
users.
enhanced
SMS,
IN THIS SECTION: enhanced
Apple
Understanding User Verification
Messages
When setting up your Messaging implementation, it’s often valuable for your agents to know for Business,
that they’re speaking to a customer, or prospective customer, who has been verified by your enhanced
authentication system. You can continue a conversation with a verified user, even when they’re LINE, Bring
on a different device, or when they reach out at a later time. The User Verification feature for Your Own
Messaging for In-App and Web uses a token system to ensure that the agent is speaking to Channel,
someone who has been verified. and Bring
Set Up User Verification Your Own
Channel for
Let customers have secure conversations with User Verification. Add keys or an Endpoint URL
CCaaS
to create a keyset, and then turn on User Verification in Setup.
Troubleshooting User Verification
USER PERMISSIONS
Use these troubleshooting tips to diagnose issues with User Verification.
User Verification Terms To set up this feature:
To set up User Verification, you must be familiar with tokens, keys, and keysets. These terms • Customize Application
describe the fundamental concepts associated with this feature. If you want more context, this
article breaks down the terms to understand.

74
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Understanding User Verification


When setting up your Messaging implementation, it’s often valuable for your agents to know that
EDITIONS
they’re speaking to a customer, or prospective customer, who has been verified by your
authentication system. You can continue a conversation with a verified user, even when they’re on Available in: Lightning
a different device, or when they reach out at a later time. The User Verification feature for Messaging Experience. View required
for In-App and Web uses a token system to ensure that the agent is speaking to someone who has editions.
been verified.
This Messaging
In this article, we show how you can use a JSON Web Key Set (JWKS) and a JSON Web Token (JWT) for In-App
article
to verify your users. If you don’t have an authentication system already in place, we show how you applies to: and
can test User Verification to see if it’s right for you. Messaging
For this feature, a JWT is used as an access token for a user. A JWKS is used to verify the validity of for Web
that token. To learn more about JSON, JWT, and JWKS, see User Verification Terms. channels

Note: This documentation assumes that you already set up Messaging for In-App or This Standard
Messaging for Web. To learn more, see Add Flexibility and Power with Messaging for In-App article and
doesn’t enhanced
and Web.
apply to: WhatsApp,
standard
Set Up Keys in Salesforce and
enhanced
When setting up User Verification in Salesforce Setup on page 78, you can upload JSON Web Keys
Facebook
(JWK), or you can provide an endpoint that delivers this same information to Salesforce. This decision
Messenger,
determines how Salesforce attempts to access your keyset when verifying your token. The user
standard
experience is the same for either flow.
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

Other details about the key: We require a 2048-bit minimum RSA key length. Also, the `n` (modulus) and `e` (exponent) properties of
the JWK should be Base64 URL encoded.
How Do I Do This?
If you already have an endpoint or a keyset using your existing certificate, follow the instructions in Set Up User Verification on page 78.
If you want to test this feature by creating a certificate, a key, and a token, see our GitHub repository. This repo walks you through creating
a test certificate, creating a JWK, and creating a JWT. After you have a JWK and JWT, follow the instructions in Set Up User Verification
on page 78.

75
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Pass Token Information When the Customer Logs In


In addition to providing the key set in Setup, you must pass user verification token information to Salesforce during the login process.
When you pass the token to Salesforce, your Salesforce org verifies this information with the keys that you provided earlier.

After Salesforce verifies the token with the keyset, the verified user can have a conversation with an agent and all message history is
associated with that user.
Other details about the token: The “sub” value in the JWT is stored as part of the Messaging Platform Key field of the Messaging End User
record. For instance, if the “sub” value is user-123, the Messaging Platform Key might be
v2/iamessage/AUTH/{auth_id_info}/uid:user-123.
How Do I Do This?
To learn how to use our API to pass a token, refer to our developer documentation for User Verification (Web, iOS, Android).
If you need help creating a token, use the command-line tool in our GitHub repository.

Handle Cleanup After Logout


When the user logs out of your system, call the API to clear the session. This call clears any session data and revokes the token.

How Do I Do This?
To learn how to use our API to clear the session, refer to our developer documentation for User Verification (Web, iOS, Android).

76
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Final Thoughts
Handling authorization and verification takes some time to set up. But when you have the mechanism in place, you ensure that your
customers can have a secure, verified conversation with one of your skilled agents.

SEE ALSO:
Add Flexibility and Power with Messaging for In-App and Web
Set Up User Verification
User Verification Terms
Troubleshooting User Verification
GitHub: Key and Token Command-Line Utility
Messaging for Web Developer Guide
Messaging for In-App Developer Guide

77
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Set Up User Verification


Let customers have secure conversations with User Verification. Add keys or an Endpoint URL to
EDITIONS
create a keyset, and then turn on User Verification in Setup.

Important: User verification is available for a mobile app, an external website, or some Aura Available in: Lightning
sites (Build Your Own Aura, Help Center, and Customer Service templates). User verification Experience. View required
editions.
doesn’t work with Experience Builder or Commerce Cloud sites. When you’re using the
Messaging for In-App SDK for mobile apps, we don’t support verified users alongside unverified This Messaging
users. Your mobile app implementation must be designed for either verified users or unverified article for In-App
users. applies to: and
Messaging
for Web
Add Your Keys or Endpoint URL to Create a Keyset
channels
Create a keyset for Messaging for In-App and Web user verification. Choose whether to create your
This Standard
keyset from an endpoint URL or by manually uploading your keys.
article and
1. From Setup, in the Quick Find box, enter User Verification, and then select Messaging doesn’t enhanced
for In-App and Web User Verification. apply to: WhatsApp,
2. To create a Keyset from an Endpoint URL: standard
and
a. Click New Keyset. enhanced
b. Name your keyset and indicate the JSON web key issuer. Enter an issuer that matches the Facebook
iss parameter value in the JWT payload. Messenger,
standard
c. Under Type, select Endpoint URL, and add your JWKS URL Response to the Endpoint URL and
field. Note the following when creating your URL: enhanced
• The JWKS URL Response must be hosted outside of Salesforce. SMS,
enhanced
• Formatting matters. Here’s an example endpoint format:
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up this feature:


• Customize Application

78
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

• We support the RS256 and RS512 algorithms.

d. Save your changes.

3. To create a keyset by uploading keys:


a. Click New Key.
b. Name your key and activate it.
c. Upload your key file.
d. Save your changes.
e. Repeat steps a through d until all keys are uploaded.
f. Click New Keyset.
g. Name your keyset and indicate the JSON web key issuer. Enter an issuer that matches the iss parameter value in the JWT
payload.
h. Select Keys as the type.
i. Search for and select each key to add to your keyset.
j. Save your changes.

Turn On User Verification


Turn on user verification for Messaging for In-App and Web.
1. From Setup, in the Quick Find box, enter Messaging, and then select Messaging Settings.
2. In the dropdown for your messaging channel, select Edit.

79
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

3. Select the Add User Verification checkbox.


4. Return to the Messaging Settings related list, and click the name of your messaging channel.
5. Under User Verification, click New.
6. Enter a configuration name. To let customers continue the same messaging conversation across channels, add the same configuration
name to each channel.
7. Select a keyset.
8. Select Active.
9. Save your changes.

Determine Authorization Token Expiration Time


Control when a messaging session gets renewed by your website or mobile app to continue the conversation.
When user verification is turned off, the field is labeled Authorization Token Expiration Time for Unverified Users and it controls
the number of minutes until a Messaging for Web session expires. The default value for this field is 360 minutes (6 hours) and you can
specify up to 72 hours. Messaging for In-App sessions is automatically renewed by the SDK so this value has a minimal impact on mobile
app users.

When user verification is turned on, the field is labeled Authorization Token Expiration Time for Verified Users and it controls how
long until Salesforce calls your client API (Web, iOS, Android) so that you can either let the session expire, or provide a valid identity token
to renew the session. The default value for this field is 60 minutes.

Use the API to Send the Token to Salesforce


From your website or mobile app, use the APIs we provide to send the customer token to Salesforce.
Here's the list of APIs we provide to send a customer token to Salesforce.
• Web
• iOS
• Android

SEE ALSO:
Understanding User Verification
Troubleshooting User Verification
Messaging for Web Developer Guide
Messaging for In-App Developer Guide

80
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Troubleshooting User Verification


Use these troubleshooting tips to diagnose issues with User Verification.
EDITIONS

Problem: Keys Fail to Upload to Salesforce Available in: Lightning


Experience. View required
If your keys fail to upload in Salesforce Setup, answer these questions.
editions.
• Does your key include these required properties: kty, kid, alg, x5c?
This Messaging
• Is the string in the x5c parameter base64-encoded? article for In-App
• Did you upload each key individually? You can’t upload the keys in one single JSON array. applies to: and
• Does your key follow the JWK structure outlined below? Your key must follow this structure. Messaging
for Web
Sample JWK Structure channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

{
"kid":"123456",
"alg":"RS256",
"use":"sig",
"kty":"RSA",
"x5c":["<Your public certificate>"],
"y":"y",
"n":"<Base64-encoded modulus>",
"e":"<Base64-encoded public exponent>",
"crv":"crv",
"d":"d",

81
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

"k":"k"
}

In some cases, the key fails to upload because of issues related to the certificate. Answer these certificate-related questions.
• Has the certificate expired? The certificate must be valid for at least 10 days.
• Are you generating the keys using the public certificate? Don’t use the private certificate.
• Is your certificate valid? To test your certificate, refer to the certificate guidelines below.
Certificate Test Guidelines
1. Create an empty text file, and give it the .pem extension.
2. Add -----BEGIN CERTIFICATE----- to the beginning of the file.
3. Copy the certificate from the JWK into a file.
4. Add -----END CERTIFICATE----- to the end of the file.
5. Run this keytool command.
keytool -printcert -file <PublicCertFilename.pem>

This command prints the certificate if it’s a proper public certificate.

Problem: User Verification Fails with the Provided Token


If user verification fails because of an issue with your token, answer these questions.
• Does your token header include these properties? alg, typ, kid
• Does your token body include these properties? sub, iss, exp
• Is the JWK uploaded in Salesforce Setup? See Set Up User Verification.
• Does the uploaded JWK have the same kid value as the kid value in the JWT? You can inspect an encoded token at JWT.io.

Warning: Don’t share production JWTs with other organizations and don’t paste production JWTs into sites or tools.

• Does your JWT use the same issuer as the issuer that you specified in Salesforce Setup?
• Was the JWT created using the same JWKS uploaded and configured with the Messaging Channel?
• Is the JWKS for the private key used to sign the JWT? If the uploaded JWKS isn’t for the private key used to sign the JWT, validation
fails.
• Are the `n` (modulus) and `e` (exponent) properties of the key Base64 URL encoded? You must Base64-encode these values.
• Is the key identifier the same for the public/private certificate pair?
• Is the expiry date valid for the certificate uploaded in Salesforce Setup? Confirm that it was.

SEE ALSO:
Understanding User Verification
Set Up User Verification

82
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

User Verification Terms


To set up User Verification, you must be familiar with tokens, keys, and keysets. These terms describe
EDITIONS
the fundamental concepts associated with this feature. If you want more context, this article breaks
down the terms to understand. Available in: Lightning
Experience. View required
JSON (JavaScript Object Notation) editions.

What is it? This Messaging


article for In-App
JSON is an open standard data format that uses a simple, human-readable syntax to store and
applies to: and
transfer data. Even though it has “JavaScript” in the name, the format is language independent. The
Messaging
basic concept is an element that consists of a key, followed by a colon (:), followed by a value. You for Web
can create elements for strings, numbers, and boolean values. You can also create a channels
comma-separated list of elements, or you can nest elements within elements by creating objects.
This Standard
To learn more, see RFC 8259.
article and
How do we use it for Messaging for In-App and Web? doesn’t enhanced
Our tokens and keys are stored using JSON. apply to: WhatsApp,
standard
Show me an example! and
Here’s an example of some JSON. enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

{
"name": "Carrie",
"age": 135,
"isHappy": true,
"favorite_colors": ["blue", "green", "yellow"],
"catch_phrase": "I can’t believe I’m 135 years old!"
}

JSON Web Token (JWT, pronounced “jot”)


What is it?

83
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

A JWT is a compact, self-contained way to pass information between two parties. The data in a JWT is stored as a JSON object. It’s often
digitally signed so that the recipient can verify the integrity of the data. A JWT is also typically encoded to ensure that it’s URL-safe when
being passed.
A JWT consists of three parts: a header, a payload, and a signature. The header contains information about how the token is signed. The
payload contains information about the user and other data. The signature contains the signed result of the header, the payload, and
the secret. The signature doesn’t encrypt the data, the signature ensures that the data hasn’t been tampered with.
To learn more, see RFC 7519.
How do we use it for Messaging for In-App and Web?
A JWT ensures that we display the right conversation history for the right user. After verifying that the token is valid, we use the subject
of the token, the “sub” property, to identify the user and display their conversation history. The “sub” value in the JWT is stored as part
of the Messaging Platform Key field of the Messaging End User record. For instance, if the “sub” value is user-123, the Messaging
Platform Key might be v2/iamessage/AUTH/{auth_id_info}/uid:user-123.
Show me an example!
This JSON is a sample header.
{
"kid": "123456",
"typ": "JWT",
"alg": "RS256"
}

This JSON is a sample payload.


{
"sub": "user-123",
"iss": "example.com",
"exp": 1674164345,
"iat": 1674158345
}

When a JWT is signed and encoded, it has this format.


hhhhhhh.ppppppp.sssssss

Where hhhhhhh represents the header, ppppppp represents the payload, and sssssss represents the signature.
This data is a sample encoded JWT.
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.
eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.
SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

You can use a site like JWT.io to decode an encoded JWT.

Warning: Don’t share production JWTs with other organizations and don’t paste production JWTs into sites or tools.

JSON Web Key (JWK) and JSON Web Key Set (JWKS)
What is it?
A JWK represents a public cryptographic key that can be used to verify the validity of a token (for user verification, this token is a JSON
Web Token). A set of JWK keys is known as a JSON Web Key Set (JWKS).
To learn more, see RFC 7517.

84
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

How do we use it for Messaging for In-App and Web?


We use a set of JSON Web Keys to verify the validity of the JSON Web Token (JWT). That way, we can ensure that an untampered token
came from the correct source. We require a 2048-bit minimum RSA key length.
Show me an example!
{
"kid":"123456",
"alg":"RS256",
"use":"sig",
"kty":"RSA",
"x5c":["<Your public certificate>"],
"y":"y",
"n":"<Base64-encoded modulus>",
"e":"<Base64-encoded public exponent>",
"crv":"crv",
"d":"d",
"k":"k"
}

SEE ALSO:
Understanding User Verification
Set Up User Verification

85
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Configure a Messaging for Web Deployment


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for Web
applies to: channels

This Messaging
article for In-App,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

86
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Connect your messaging channel to a website with a new embedded deployment. Create and
USER PERMISSIONS
customize your deployment, add it to your site, and set up security.
In this stage of Messaging for Web setup, you’ll: To set up this feature:
• Customize Application
1. Publish a deployment.
AND
2. Customize a deployment.
Modify Metadata
3. Add the deployment to your website. Through Metadata API
Functions
4. Set security protocols for your deployment.
To modify permission sets
Note: Steps 3 and 4 depend on the type of site you add messaging to. Experience Builder
and profiles:
and Commerce Cloud sites on page 92 have a unique set of instructions that differ from
• Manage Profiles and
external web sites. Choose the correct set of instructions for your use case. Permission Sets

Publish a Deployment
To create a web deployment (don’t reuse an old one), follow these steps.
For mobile, see Configure a Mobile Deployment.
1. Enable digital experiences in your org.
2. From Setup, in the Quick Find box, enter Embedded Service Deployments, and select Embedded Service Deployments.
3. Click the New Deployment button. Choose your conversation type, Messaging for In-App and Web.
4. Select Web as the deployment destination for your channel.
5. Name your Embedded Service deployment, which creates the API Name.

87
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

6. Enter the top level Domain name of the website, such as example.com. This name covers any subdomains of the URL, such as
help.example.com. For an Experience Builder or Commerce Cloud site on page 92 deployment, go to Domains in Setup, and copy
the Experience Cloud Site Domain.
a. To change the domain that’s associated with your embedded service deployment, go to Setup > User Interface > Sites and
Domains > Sites, and select your site from the Site Label column. Your site is formatted as ESW_[deploymentname]_[numbers].

88
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Under Trusted Domains for Inline Frames, find the domain or subdomain that you want to change, and click Edit. Save your
changes.

7. Select the Messaging Channel you created in Messaging Settings and add to the deployment. If you haven’t created a channel,
go to Messaging Settings.
8. Save your work.
9. Create and publish your new deployment, which takes a few minutes. Don’t navigate away from the page until it’s complete.
10. To ensure that Messaging for In-App and Web continues to work optimally, always republish your deployment after testing newly
added features.

Customize Your Deployment


Mission control for your customer experience is the Embedded Service Deployment Settings page. Edit your messaging settings, select
branding, add pre-chat values, and copy your code snippet to deliver conversations to your website.
After you create or edit a deployment, you must publish it again by clicking the Publish button on the settings page.

Optionally customize the following aspects of your deployment in Embedded Service Deployment Settings:

89
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Customization Section What’s Possible Additional Work Required


Settings Check boxes to show delivery and read Before you add business hours to your
receipts to customers in their messaging deployment, create a business hours record.
window. Check a box to show typing To override business hours and hide or show
indicators. Check a box to show the emoji the messaging button at specified times,
keyboard to customers. Check a box to use our API.
change the default behavior of the Enter or
Return key from sending a messaging to
starting a new line of text. To only display
the messaging window during business
hours, select a business hours record.

Branding Set colors and fonts, and upload avatars to Avatar images are sourced from a web page.
match your branding in the customer-facing Generate the URL for each image.
messaging window. We recommend using
an avatar image that’s 40 x 40 pixels. We
don’t support adding custom CSS to your
deployment.

Pre-Chat Select the standard and custom fields that To add visible or hidden fields to your
customers must fill out before messaging pre-chat form, create a custom parameter
with an agent. Add hidden pre-chat fields on the messaging channel for the
to collect information automatically, behind deployment. See Customize Pre-Chat for
the scenes. Messaging for In-App and Web on page 102.

Custom Labels Write your own labels for fields and alt text Before you create custom labels, enable
in your messaging experience. Select the translation workbench, add your supported
language you want each label to appear in. language or languages, and assign your
translators. See Enable Translation
Workbench and Add Translated Languages
and Translators.

Code Snippet Copy the code snippet to add the Embed messaging in an Experience Builder
messaging deployment to your website. or Commerce Cloud site with the Embedded
Skip this action if embedding messaging in Messaging component, not a code snippet.
an Experience Builder or Commerce Cloud See next section to Add Messaging to your
site. See next section to add messaging to external website.
your website.

Add Messaging to Your Website


If embedding messaging on an external website, follow these steps to add your code snippet. If using an Experience Builder or Commerce
Cloud site instead of a website, add messaging via the Embedded Messaging component. You don’t need a code snippet to complete
the task.
For more details, see Configure a Messaging for Web Deployment in an Experience Builder or Commerce Cloud Site on page 92.
1. From Deployment Settings, select Install Code Snippet.
2. To select your code, click Copy the Clipboard.

90
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

3. Paste the code before the closing body tag (</body>) on each web page where you want the messaging button to appear.
Don’t place the code in your header. Make sure you’ve added a valid language code for your language setting in the snippet.
4. Ensure that the header of the chat button page doesn’t contain a referrer policy of no-referrer. Specifically, the page must
not include this line: <meta name="referrer" content="no-referrer" />. Other referrer policies work fine, such
as origin.
5. Optionally, include the Meta Tag Code Snippet in the head element to make your page responsive to all devices. If your page already
has the meta tag, adding this snippet isn’t necessary. The code is the only one that goes in the header section of each web page
where embedded messaging appears.

Set Security Protocols for Your Deployment


After completing setup, add your domain to the CORS allowlist.
• If using an external website, add your CORS allowlist entries of URLs for the pages where you deploy messaging. The page you add
is where customers access the messaging window. The origin URL pattern must include the HTTP or HTTPS protocol and a domain
name. The wildcard character (*) is supported and must be in front of a second-level domain name. For example, https://*.example.com
(https://%2A.example.com/) adds all subdomains of example.com (http://example.com/) to the allowlist.
• If using an Experience Builder or Commerce Cloud site, visit the instructions for adding security to that type of site here on page 92.
1. From Setup, enter CORS in the Quick Find box, and then select CORS.
2. Select New.
3. Enter an origin URL pattern.
4. Save your work.

SEE ALSO:
Configure a Messaging for Web Deployment in an Experience Builder or Commerce Cloud site

91
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Configure a Messaging for Web Deployment in an Experience Builder or Commerce


Cloud site
EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for Web
applies to: channels

This Messaging
article for In-App,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

92
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Use the Embedded Messaging component to add Messaging for Web to your Experience Builder
USER PERMISSIONS
or Commerce Cloud site.
Note the following considerations before you begin. To set up this feature:
• Customize Application
• We support the following Experience Builder templates: Build Your Own (Aura), Customer
AND Modify Metadata
Account Portal, Partner Central, Help Center, Customer Service, Build Your Own (LWR), and
Through Metadata API
Microsite (LWR). Functions
• We support the following Commerce Cloud templates: B2B Commerce (LWR), B2C Commerce
(LWR), and B2B Commerce (Aura). To modify permission sets
and profiles:
• If you use the Embedded Service or Channel Menu components on your Experience Builder • Manage Profiles and
site, remove them. Use the Page Structure panel to find and remove the extra components. Permission Sets
• To effectively iFrame your website and reduce JavaScript library conflicts, Messaging for Web To add the Embedded
creates a unique site that appears in your All Sites list in Setup. Don’t reuse this generated site Messaging component to
URL, which has reduced security, for other purposes. Don’t modify this generated site through an Experience Builder site:
Builder or Workspace links. • Create and Setup
Experiences
In this stage of Messaging for Web setup, you’ll:
1. Publish a deployment in your Experience Builder or Commerce Cloud site.
2. Set security protocols for your deployment.
3. Learn where to add additional code when using the Messaging for Web JavaScript API.

Publish Your Messaging for Web Deployment in an Experience Builder Site


1. Complete these steps to set up Messaging for In-App and Web on page 66.
2. From the Experience Builder Components list, select the Embedded Messaging component and drag it onto the footer of the
Experience Builder or Commerce Cloud site template.
3. On the page, click to highlight the Embedded Messaging component.
4. In the property editor, configure properties for the component:

Property Details
Embedded Web Deployment Choose your Embedded Service Deployment for Messaging for
Web.

Enhanced Service URL Select the URL from your Messaging for Web setup, which
matches the scrt2 field in your code snippet.

Site Endpoint Select the site endpoint, which matches the site endpoint on
the Embedded Service Deployment Settings page for your
deployment.

Chat Button Visibility Default Visibility means that the chat button is shown by default
or according to any business hours that are configured.
Always Visible overrides your existing visibility settings and
ensures that the chat button is always shown on page load.
Always Hidden overrides your existing visibility settings and
ensures that the chat button is always hidden on page load.

93
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

After publishing your site, the conversation and active messaging button appears on your site.

Set Security Protocols for Your Messaging for Web Deployment


After completing setup, add your Experience Builder site domain to your CORS allowlist. If notice an issue with the *.live-preview domain,
add that to the CORS allow list.
1. To confirm your site domain, from Setup, enter Digital Experiences in the Quick Find box, and then select Settings. Copy
the URL from the Domain section.
2. From Setup, enter CORS in the Quick Find box, and then select CORS.
3. Select New.
4. Enter an origin URL pattern.
5. Save your work.

Learn Where to Add Messaging for Web Code


When working with developers on your site, place any additional Messaging for Web code in the head markup section. You can find
this area from the Advanced tab of the Experience Builder Settings.

Click Edit Head Markup and then add your JavaScript code within a <script> tag.

94
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

SEE ALSO:
Messaging for Web Developer Guide

95
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Configure a Messaging for In-App Deployment


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: channels

This Messaging
article for Web,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

96
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Connect your messaging channel to a mobile app with a new embedded deployment. You create
USER PERMISSIONS
a mobile deployment, and set up additional features and push notifications for the customer
experience. To set up this feature:
To create a new mobile app deployment, follow these steps. For website deployments, see Configure • Customize Application
a Messaging for Web Deployment. AND
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then Modify Metadata
select Embedded Service Deployments. Through Metadata API
Functions
2. Click the New Deployment button. Choose your conversation type, Messaging for In-App
and Web. To modify permission sets
and profiles:
3. Select Mobile as the deployment destination for your channel. • Manage Profiles and
Permission Sets

4. Name your Embedded Service deployment, which generates the API Name.

5. Select the Messaging Channel that you created in Messaging Settings, and add it to the deployment. If you haven’t created a
channel, go to Messaging Settings.
6. Save your work.

97
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

7. Adjust your new deployment from the deployment settings page.

8. Optionally add business hours to your deployment.


a. Create a business hours record. See Set Business Hours.
b. Click Edit Settings.
c. Select a business hours record from the Business Hours field, and save your changes.

9. Optionally, prepare a pre-chat form that customers must fill out before messaging with an agent.
a. Click Edit Pre-Chat to select the standard and custom fields for the form. See Customize Pre-Chat for Messaging for In-App and
Web on page 102.
b. Click Set Custom Labels to write your own labels for fields, alt text in your messaging experience, and select the language you
want each label to appear in. To create labels in more than one language, first enable translation workbench, add your supported
languages, and assign your translators. See Enable Translation Workbench and Add Translated Languages and Translators.

10. Optionally, set up push notifications for your mobile apps. See Set Push Notifications for Messaging for In-App on page 403.
11. In the Mobile Configuration section of deployment settings, click Get Code File to download the JSON configuration file,
configFile.json.

98
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

12. After you create or edit a deployment, you must click the Publish button on the deployment settings page.
13. To ensure that Messaging for In-App and Web continues to work optimally, always republish your deployment after testing newly
added features.

Note: If you’re building an Android project, save this JSON file in your assets folder. For iOS, add the JSON file to your project so
that you can access the contents from your code. See the In-App Developer Guide for more details.

SEE ALSO:
Customize Pre-Chat for Messaging for In-App and Web

99
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Configure a Custom Client Deployment for Messaging for In-App and Web
EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

100
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

To enjoy granular control of your web or mobile app messaging experience, create a custom client
USER PERMISSIONS
deployment for Messaging for In-App and Web. While our web or mobile deployments rely on our
web client and mobile SDK, a custom client deployment lets you deliver a highly customized UI To set up this feature:
with the Messaging for In-App and Web REST API. • Customize Application
The Messaging for In-App and Web REST API can be used to create conversations that house AND
messaging sessions, generate access tokens, and send messages and files. You can also integrate Modify Metadata
an external bot solution or partner-supported messaging solutions. Through Metadata API
Functions
In this stage of Messaging for In-App and Web setup, publish a deployment, customize your
deployment, and reference the deployment when invoking public REST API endpoints. To modify permission sets
and profiles:
• Manage Profiles and
Publish a Deployment Permission Sets
Create a custom client deployment that can be referenced in public REST API endpoints.
1. Complete the steps in Prepare a Salesforce Org for Messaging for In-App and Web:
a. Configure Omni-Channel.
b. Create an Omni-Channel flow to route messages.
c. Create a Messaging for In-App and Web channel on the Messaging Settings page.
d. Configure the Service Console to support messaging.

2. From Setup, in the Quick Find box, enter Embedded Service Deployments, and select Embedded Service Deployments.
3. Click New Deployment.
4. Select Messaging for In-App and Web, and then click Next.
5. Click Custom Client, and then click Next.
6. Name your Embedded Service deployment, and customize the API name if desired.
7. Select the Messaging for In-App and Web channel that you created earlier. If you haven’t created one yet, go to the Messaging
Settings page and do so.
8. Save your work.
9. Create and publish your new deployment, which takes a few minutes. Don’t navigate away from the page until it’s complete.

Customize Your Deployment


On the Embedded Service Deployment Settings page shown after your deployment is saved, you can customize your deployment.
1. Click the Push Notifications tile to configure push notifications if it will be used with a mobile app. See Set Push Notifications for
Messaging for In-App.
2. Click the Pre-Chat tile to prepare a pre-chat form that customers must complete before messaging with an agent. See Customize
Pre-Chat for Messaging for In-App and Web.
After you edit a deployment, publish it again by clicking Publish on the settings page.

Reference Your Deployment with the Messaging for In-App and Web REST API
Supply your deployment name when invoking a public endpoint from the Messaging for In-App and Web REST API.

101
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Customize Pre-Chat for Messaging for In-App and Web


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

102
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Ask customers to fill out visible pre-chat fields before starting a messaging session, or auto-fill hidden
USER PERMISSIONS
pre-chat fields when the conversation begins. Add standard and custom fields to your pre-chat
form. To set up this feature:
In this stage of Messaging for In-App and Web setup, you: • Customize Application
AND
1. Create custom parameters, which help map your pre-chat form to your flow.
Modify Metadata
2. Add visible fields to your pre-chat form. Through Metadata API
3. Add hidden fields to your pre-chat form. Functions
Create Custom Parameters for Pre-Chat To modify permission sets
1. From Setup, in the Quick Find box, enter Messaging Settings, and then select and profiles:
Messaging Settings. • Manage Profiles and
Permission Sets
2. Click the name of your messaging channel.
3. Under Custom Parameters, click New.
4. Fill in the details of your parameter. To make mapping easy and transparent, match the parameter name and channel variable name.
Channel Variable Name appears as a selection when adding custom fields to your pre-chat form. Think of each custom parameter
as the link between your pre-chat form’s custom fields (both hidden and visible) and your flow.

Note: String is the only option for Data Type. While the pre-chat form lets you show visible fields formatted as text, email,
phone, number, dropdown, and checkbox fields, a flow automatically converts these fields to string fields. If you use a flow to
send information from a pre-chat field to another record, the output appears as a string field. While most letters, numbers,
and special characters allowed by the original field type are allowed by a string field, differences sometimes occur. For example,
the flow converts a checkbox field to a string statement of true or a string statement of false in the resulting flow output. As
another exception, the flow passes the original dropdown API value from a pre-chat form’s dropdown field, not the custom
label for that field value.

5. Save your changes, and create additional custom parameters for each hidden or visible field that you plan to add to your pre-chat
form.

103
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Add Visible Fields to Your Pre-Chat Form

Note: A hidden field and a visible field that exist on the same pre-chat form can’t have the same parameter name. For the best
experience, add no more than 5 or 6 visible pre-chat fields.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then select Embedded Service
Deployments.
2. Select View from the dropdown menu for your deployment.
3. Click Edit Pre-Chat.
4. Select Activate the pre-chat feature.
5. Choose whether to show the pre-chat form with every conversation, or with every session.
• If you select Every Conversation, the display frequency of the pre-chat form depends on whether you add user verification to
your messaging channel. If you add user verification, a Messaging for In-App and Web conversation has no end. Your customer
sees the pre-chat form only when messaging you for the first time. If you don’t add user verification, a customer can click End
Chat to end a conversation. They see the pre-chat form the first time that they message, and each subsequent time that they
start a new conversation after ending the previous one.
• If you select Every Session, the display frequency of the pre-chat form also depends on whether you add user verification to
your messaging channel:
– In Messaging for In-App without user verification, the messaging session ends when the agent clicks End Chat. Your customer
sees the pre-chat form the first time that they message you, and each time they begin a new session after an agent ended
the previous one.
– In Messaging for Web without user verification, the messaging session ends when the customer or agent clicks End Chat.
Your customer sees the pre-chat form the first time that they message you, and each time they begin a new session after a
previous session is ended.
– In Messaging for In-App with user verification, the messaging session ends when the agent clicks End Chat. Your customer
must be logged in to see the messaging conversation, including the pre-chat form. Your customer sees the pre-chat form
the first time that they message you, and the next time they log in and begin a new session after a previous session was
ended by an agent.
– In Messaging for Web with User Verification, the messaging session ends when the agent clicks End Chat. Your customer
sees the pre-chat form the first time that they message you, and the next time they begin a new session after the previous
session was ended by an agent.

6. To add a standard field to your form:


a. Under Visible Pre-Chat Fields, click Add Field, and then select the field that you want to show.
b. Save your changes.

7. To add a custom field to your form:


a. Under Visible Pre-Chat Fields, click Add Field, and then select Custom.
b. To determine how the information appears, select your field type.
c. Find and set the channel variable name of the custom parameter.

104
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

• If you selected Dropdown as your field type, also add a Dropdown Name, Dropdown API Name, and Dropdown API Values.
There are a few things to note:
– Each pre-chat form can have up to 5 custom dropdown fields and each dropdown can have up to 200 values.
– A dropdown API name can only be used one time per org. If you delete a dropdown api name from your org, you still
can’t use it again in that same org.
– Format each dropdown API value to start with a letter, contain only alphanumeric characters, and use underscores
instead of spaces.
– We recommend creating a custom label for each dropdown value that displays on your pre-chat form, as it’s what your
customer sees. You can create a custom label in each of your supported languages. If you don’t create custom labels,
your customer sees the dropdown API values, which can include underscores.
– We pass the original dropdown API value to your flow, not your custom labels.

• Click Next.
• On the next page, optionally select a Default Dropdown API Value for your dropdown field, which appears in the field if a
selection isn’t already made. Also, order your dropdown field values.

d. Click Save (if you created a custom dropdown field) or click Done (for all other custom field types).
e. Save your changes to the pre-chat form.
f. To create a custom label for a custom field, return to the deployment settings page and click Set Custom Labels.

105
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

g. Select the language for this custom label. You must create a custom label for each language that you support.
h. Select Pre-Chat as the chat group.
i. Under Label Group, select Dropdown Values to customize the labels for your field’s dropdown API values. Or, select Pre-Chat
Form to customize the label for standard fields, or custom email, number, phone, checkbox, and text fields.
j. Under Label Type, select Standard.
k. Enter a custom label for your custom field, and then click Finish.
l. Repeat this step for each language that you support.

8. Return to the deployment settings page and click Publish.


Add Hidden Fields to Your Pre-Chat Form

Tip: Update your privacy policy to include what data you collect with hidden fields. Consider linking to the policy with a Messaging
Component in the conversation. Collect the minimum amount of data needed for an agent to do their job, and only store this
data for as long as it's needed to close the case. Learn how to delete data.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then select Embedded Service
Deployments.
2. Select View from the dropdown menu for your deployment.
3. Click Edit Pre-Chat.
4. Select Activate the pre-chat feature if it’s not already selected.
5. Under Hidden Pre-Chat Fields, click to highlight a custom parameter from the Available list. Custom parameters appear if they’re
associated with the messaging channel for this deployment and if they’re not already in use as a visible or hidden field on this
deployment. A hidden pre-chat field must be a Text type field and can’t be required.
6. To move your field to the Selected list, click the arrow pointing toward the Selected list.

106
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

7. Save your changes.


8. Work with your developer to pass these values programmatically from your website or mobile app to Salesforce (Web, iOS, Android).
The pre-chat field names in the code must be identical to what is specified in Setup.

SEE ALSO:
Use Pre-Chat with an Enhanced Bot
Messaging for Web Developer Guide
Messaging for In-App Developer Guide

107
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Map Pre-Chat Values in Omni-Channel Flow


Omni Flow sends pre-chat form data to the messaging session for a more informed agent experience.
EDITIONS
Map visible and hidden fields from your pre-chat form to your Omni flow.
In this stage of Messaging for In-App and Web setup, you: Available in: Lightning
Experience. View required
• Map pre-chat fields to Omni flow variables.
editions.
• Update your Omni-Channel flow to set field values for the messaging session after they’re filled
out in the pre-chat form. This Messaging
article for In-App
applies to: and
Map Pre-Chat Fields to Omni Flow Variables Messaging
1. From Setup, in the Quick Find box, enter Messaging Settings, and then select for Web
channels
Messaging Settings.
2. Select your channel name. This Standard
article and
3. In the Parameter Mapping section, click New. enhanced
doesn’t
4. In the Parameter field, select an item from your pre-chat form. apply to: WhatsApp,
standard
5. Add a flow variable name that describes the action. You reference the flow variable name in
and
your flow later.
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up Omni and


Messaging:
• Customize Application

To modify permission sets


and profiles:
• Manage Profiles and
Permission Sets

108
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

6. Save your changes.


7. Continue the process with each standard and custom field in your pre-chat form.

Update Your Omni-Channel Flow to Set Field Values in the Messaging Session
Return to the Omni-Channel Flow that you created in the first stage of setup on page 72. Add one more element to store your pre-chat
fields.

Note: String is the only option for Data Type. While the pre-chat form lets you show visible fields formatted as text, email, phone,
number, dropdown, and checkbox fields, a flow automatically converts these fields to string fields. If you use a flow to send
information from a pre-chat field to another record, the output appears as a string field. While most letters, numbers, and special
characters allowed by the original field type are allowed by a string field, differences sometimes occur. For example, the flow
converts a checkbox field to a string statement of true or a string statement of false in the resulting flow output. As another
exception, the flow passes the original dropdown API value from a pre-chat form’s dropdown field, not the custom label for that
field value.
1. From Setup, in the Quick Find box, enter Flows, and then select Flows.
2. Find and select your previous flow from the list.
3. Add an input variable for each pre-chat field.
• The API Name must be identical to the Flow Variable Name from Parameter Mappings.
• The Data Type must be set to Text.
• The variable must be Available for input.

109
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

4. Create an Update Records element before the Route Work element in your flow. Specify conditions to identify records and set fields
individually. Select Messaging Session as the object. In the Filter Records section, filter based on the recordId value.

110
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

5. Under Set Field Values for the messaging session records, enter each field name under Field, and enter its corresponding flow variable
name under Value.

111
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

6. Click Done. The complete flow looks like this.

112
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

7. Save this flow as a new version, and verify that it’s activated.

Note: When the agent clicks End Chat, the messaging session ends. If the customer continues the conversation, another session
is created. By default, pre-chat data isn’t carried over to this new session.

IN THIS SECTION:
Use Pre-Chat API to Pass Customer Information to the Agent in an External Website
To provide agents with customer information that helps move an interaction forward, send end-user data to the agent console via
the pre-chat API.

113
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Use Pre-Chat API to Pass Customer Information to the Agent in an Experience Site
To provide agents with customer information that helps move an interaction forward, send end-user data to the agent console via
the pre-chat API.

SEE ALSO:
Use Pre-Chat with an Enhanced Bot

Use Pre-Chat API to Pass Customer Information to the Agent in an External Website
To provide agents with customer information that helps move an interaction forward, send end-user
EDITIONS
data to the agent console via the pre-chat API.
This recipe combines common use cases as examples of data that you can send to agents using Available in: Lightning
the pre-chat API. First, pass the end user’s login ID to the agent so that verification is done. Then, Experience. View required
to prevent loss on large orders, we pass the customer’s shopping cart value to the agent. To editions.
accomplish these goals, create custom hidden pre-chat fields that route the data to Salesforce
This Messaging
custom fields via a flow. Then edit the code snippet, telling it to auto-populate the hidden pre-chat for Web
article
fields. applies to: channels
Before building this recipe, consider these caveats.
This Messaging
• You can reference fields from the Messaging Session object or the Messaging User object article for In-App,
(because it's linked to Messaging Session) in an auto-response formula template for Start doesn’t standard
Conversation, End Conversation, and Inactive Conversation. You can’t reference fields from the apply to: and
Messaging Session or Messaging User objects in Conversation enhanced
• Salesforce custom object fields are different from pre-chat custom fields. This recipe references WhatsApp,
both types of fields. Learn more about the relationship and differences between these two standard
and
types of fields.
enhanced
1. Create custom fields on Salesforce objects. In this example, create a Customer ID field and a Facebook
Shopping Cart Value field on the messaging session or messaging user objects. Messenger,
2. If your Service Console doesn’t show the object where you stored the fields, edit the layout to standard
give agents easy access. In this example, we edit the Service Console to give easy access to the and
enhanced
Messaging Session and Messaging User objects.
SMS,
3. To capture the data that gets sent to the Salesforce custom fields from step 1, create hidden enhanced
pre-chat fields. In this example, create custom parameters called Customer ID and Shopping Apple
Cart Value in Messaging Settings for the channel, and then select them as hidden pre-chat fields Messages
in Embedded Services Pre-Chat Form settings. for Business,
enhanced
4. Map your custom pre-chat fields to your Salesforce custom fields, and then populate the
LINE, Bring
Salesforce fields using a flow. In this example, we map the pre-chat field called Customer ID to
Your Own
the Salesforce field called Customer ID. Then we map the pre-chat field called Shopping Cart
Channel,
Value to the Salesforce field called Shopping Cart Value. With the flexibility of flows, you can
and Bring
combine or slice data or populate any other objects, such as Case or Contact, as needed. Your Own
5. Update your embedded messaging code snippet, instructing it to auto-populate the pre-chat Channel for
fields that you created in step 2. The code in this example uses the Pre-Chat API to send Customer CCaaS
ID and Shopping Cart Value to your pre-chat fields automatically. Before adding to your code
snippet, consider these caveats.
a. The first section of the code contains an example of the standard code snippet for your Embedded Service deployment. Yours
looks slightly different due to your unique deployment ID and name.

114
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

b. To complete the recipe, add the code that starts with the comment line Passing Web Context to Prechat -
BEGIN.
c. The first section assigns static values to these variables, but you can change them to reflect how you get these values. The next
section populates the visible pre-chat fields. The final section populates hidden pre-chat fields.
d. We use different code settings in assigning the values. For example, the first and last names are locked and not editable by users.
<script type='text/javascript'>
function initEmbeddedMessaging() {
try {
embeddedservice_bootstrap.settings.language = 'en_US'; // For example, enter
'en' or 'en-US'

embeddedservice_bootstrap.init(
'00DDn00000DuiyZ',
'Cookbook_MIAW_Deployment',

'https://csg-gr-cdo-summer23.my.site.com/ESWCookbookMIAWDeployme1710815189835',
{
scrt2URL: 'https://csg-gr-cdo-summer23.my.salesforce-scrt.com'
}
);
} catch (err) {
console.error('Error loading Embedded Messaging: ', err);
}
};

//Passing Web Context to Prechat - BEGIN


var sFirstName = "John";
var sLastName = "Doe";
var sSubject = "Test Subject";
var sCustomerID = "12345678";
var sShoppingCartValue = "1000";

window.addEventListener("onEmbeddedMessagingReady", e => {
//log event
console.log("onEmbeddedMessagingReady event triggered");

//set visible prechat field


embeddedservice_bootstrap.prechatAPI.setVisiblePrechatFields({
// List the pre-chat field names with the value and whether
// it's editable in the pre-chat form.
"_firstName": {
"value": sFirstName,
"isEditableByEndUser": false
},
"_lastName": {
"value": sLastName,
"isEditableByEndUser": false
},
"_subject": {
"value": "test subject",
"isEditableByEndUser": true
}
});

115
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

//Set invisible prechat field


embeddedservice_bootstrap.prechatAPI.setHiddenPrechatFields({
"Shopping_Cart_Value" : sShoppingCartValue,
"Customer_ID" : sCustomerID
});
});
//Passing Web Context to Prechat - END

</script>

Use Pre-Chat API to Pass Customer Information to the Agent in an Experience Site
To provide agents with customer information that helps move an interaction forward, send end-user
EDITIONS
data to the agent console via the pre-chat API.
` Available in: Lightning
Experience. View required
This recipe combines common use cases as examples of data that you can send to agents using
editions.
the pre-chat API. First, pass the end user’s login ID to the agent so that verification is done. Then,
to prevent loss on large orders, we pass the customer’s shopping cart value to the agent. To This Messaging
accomplish these goals, create custom hidden pre-chat fields that route the data to Salesforce article for Web
custom fields via a flow. Then edit the code snippet, telling it to auto-populate the hidden pre-chat applies to: channels
fields.
This Messaging
Before building this recipe, consider these caveats. article for In-App,
• You can reference fields from the Messaging Session object or the Messaging User object doesn’t standard
(because it's linked to Messaging Session) in an auto-response formula template for Start apply to: and
Conversation, End Conversation, and Inactive Conversation. You can’t reference fields from the enhanced
WhatsApp,
Messaging Session or Messaging User objects in Conversation
standard
• Salesforce custom object fields are different from pre-chat custom fields. This recipe references and
both types of fields. Learn more about the relationship and differences between these two enhanced
types of fields. Facebook
1. Create custom fields on Salesforce objects. In this example, create a Customer ID field and a Messenger,
Shopping Cart Value field on the messaging session or messaging user objects. standard
and
2. If your Service Console doesn’t show the object where you stored the fields, edit the layout to enhanced
give agents easy access. In this example, we edit the Service Console to give easy access to the SMS,
Messaging Session and Messaging User objects. enhanced
3. To capture the data that gets sent to the Salesforce custom fields from step 1, create hidden Apple
pre-chat fields. In this example, create custom parameters called Customer ID and Shopping Messages
Cart Value in Messaging Settings for the channel, and then select them as hidden pre-chat fields for Business,
enhanced
in Embedded Services Pre-Chat Form settings.
LINE, Bring
4. Map your custom pre-chat fields to your Salesforce custom fields, and then populate the Your Own
Salesforce fields using a flow. In this example, we map the pre-chat field called Customer ID to Channel,
the Salesforce field called Customer ID. Then we map the pre-chat field called Shopping Cart and Bring
Value to the Salesforce field called Shopping Cart Value. With the flexibility of flows, you can Your Own
combine or slice data or populate any other objects, such as Case or Contact, as needed. Channel for
CCaaS
5. Create and deploy a custom LWC component that fetches the user information.

116
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

a. In the newly created custom LWC component folder, here is a template of the custom component.
b. The .js-meta.xml file.
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
<apiVersion>55.0</apiVersion>
<isExposed>true</isExposed>
<masterLabel>[give a component name here]</masterLabel>
<description>Set logged in User details for Embedded Messaging
component</description>
<targets>
<target>lightningCommunity__Page</target>
<target>lightningCommunity__Default</target>
</targets>
</LightningComponentBundle>

c. The .js file.


import { LightningElement, wire } from 'lwc';
import { getRecord, getFieldValue } from 'lightning/uiRecordApi';
import Id from '@salesforce/user/Id';
import First_Name from '@salesforce/schema/User.FirstName';
import Last_Name from '@salesforce/schema/User.LastName';
import Email from '@salesforce/schema/User.Email';

const fields = [First_Name, Last_Name, Email];

export default class EmbeddedMessagingSetRecordUser extends LightningElement {


userId = Id;
user;

@wire(getRecord, { recordId: '$userId', fields })


wiredRecord({ error, data }) {
if (error) {
let message = "Unknown error";
if (Array.isArray(error.body)) {
message = error.body.map((e) => e.message).join(", ");
} else if (typeof error.body.message === "string") {
message = error.body.message;
}
console.error("Error loading user record:" + message);
} else if (data) {
this.user = data;
console.log('before custom event');
var selectedEvent = new CustomEvent('userInfo',
{
detail: {
fname: getFieldValue(this.user, First_Name),
lname : getFieldValue(this.user, Last_Name),
email: getFieldValue(this.user, Email)
},

117
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

bubbles: true,
composed: true
});

// Dispatches the event.


window.dispatchEvent(selectedEvent);
}
}
}

d. The .html file.


<template></template>

6. In the Experience Site Builder, drag your custom LWC component into the template footer.
7. Go to Settings Advanced Edit Head Markup, paste the following sample script into the head markup.
<script>
var fname, lname, email;
window.addEventListener('userInfo', function(e){
console.log("userInfo received");
fname = e.detail.fname;
lname = e.detail.lname;
email = e.detail.email;
});
window.addEventListener("onEmbeddedMessagingReady", e => {
embeddedservice_bootstrap.prechatAPI.setVisiblePrechatFields({
"_firstName": {
"value": fname,
"isEditableByEndUser": true
},
"_lastName": {
"value": lname,
"isEditableByEndUser": true
},
"_email": {
"value": email,
"isEditableByEndUser": true
}
});
});
</script>

8. Update your embedded messaging code snippet, instructing it to auto-populate the pre-chat fields that you created in step 2. The
code in this example uses the Pre-Chat API to send Customer ID and Shopping Cart Value to your pre-chat fields automatically.
Before adding to your code snippet, consider these caveats.
a. The first section of the code contains an example of the standard code snippet for your Embedded Service deployment. Yours
looks slightly different due to your unique deployment ID and name.
b. To complete the recipe, add the code that starts with the comment line Passing Web Context to Prechat -
BEGIN.

118
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

c. The first section assigns static values to these variables, but you can change them to reflect how you get these values. The next
section populates the visible pre-chat fields. The final section populates hidden pre-chat fields.
d. We use different code settings in assigning the values. For example, the first and last names are locked and not editable by users.
e. Your page or site template must have the Embedded Messaging component.
f. An Experience site doesn’t allow you to directly paste in a code snippet. Include Prechat API in the header markup. Add your
code at Experience Builder Settings Advanced Edit Head Markup.
g. In the Experience site code sample, we don’t include a baseline code snippet, such as the initEmbeddedMessaging()
function. That’s because such baseline code is already included in the Embedded Messaging LWC component.
h. This example includes an event listener on userInfo. This sends a logged-in customer’s information directly to the prechat form
without asking the customer to enter it again. The example makes the fields editable by customers. You can also change the
isEditableByEndUser configuration to lock it down.

119
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Preview Your Messaging for Web Setup


After adding Messaging for Web to your site, preview your branding and configurations.
EDITIONS
To ensure that Messaging for Web is set up properly, follow these steps.
Available in: Lightning
1. Open the Service Console app, and go to the Omni-Channel utility bar or sidebar, provided it’s
Experience. View required
installed. Go online as the agent assigned to the messaging button.
editions.

This Messaging
article for Web
applies to: channels
2. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then
This Messaging
select Embedded Service Deployments.
article for In-App,
3. Click the downward arrow to the right of your deployment, and then select View. doesn’t standard
4. On the Test Messaging card, click Test Messaging. apply to: and
enhanced
5. Click to open the messaging conversation window and initiate a messaging session as a WhatsApp,
customer. standard
6. In the console tab, verify that you received a conversation request. Accept the request and try and
sending a message. enhanced
Facebook
If set up properly, you’re able to request a chat and complete the form as the customer. Also, the Messenger,
pre-chat information is sent to the agent before the conversation begins. standard
Tip: To turn on and customize Messaging for In-App and Web in your sandbox, ensure that and
enhanced
you have the correct edition on page 9. If you’re a Service Cloud Enterprise customer, reach
SMS,
out to your Account Executive for the Digital Engagement add-on SKU. If you’re a Sales Cloud
enhanced
Enterprise customer, reach out to your Account Executive for the Sales Engagement add-on
Apple
SKU. Match your sandbox licenses to your production org by refreshing your sandbox, creating
Messages
a sandbox, or using the license-matching method. Then, Set Up Messaging for In-App and for Business,
Web in sandbox. enhanced
LINE, Bring
SEE ALSO: Your Own
Channel,
Developer Guide: Test Messaging for In-App
and Bring
Your Own
Channel for
CCaaS

120
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Troubleshoot Messaging for In-App and Web Setup


Respond to error messages you may encounter while setting up Messaging for In-App and Web.
EDITIONS
Error Message Solution Available in: Lightning
Change or add the domain that’s associated Experience. View required
Refused to frame ‘<your
with your embedded service deployment. editions.
ESW_[deploymentname] site>’
because an ancestor • Go to Setup > User Interface > Sites and This Messaging
violates the following content Domains > Sites. article for In-App
security policy applies to: and
• Select your site from the Site Label column.
directive: “frame ancestors Messaging
<your old domain> Your site is formatted as for Web
<your old subdomain>” <ESW_[deploymentname]_[numbers]>. channels
• Under Trusted Domains for Inline Frames,
This Standard
find the domain or subdomain that you’d
article and
like to change, and click Edit.
doesn’t enhanced
• Save your changes. apply to: WhatsApp,
standard
Add your new domain to the CORS allowlist. and
Access to XMLHttpRequest at
enhanced
'<your • From Setup, enter CORS in the Quick Find
Facebook
ESW_[deploymentname]_[numbers] box, and then select CORS.
Messenger,
site>' from
• Select New. standard
directive: '<your domain>' has
been blocked by CORS • Enter an origin URL pattern. and
policy: No enhanced
• Save your work. SMS,
'Access-Control-Allow-Origin'
header is enhanced
present on the requested Apple
resource. Messages
for Business,
Add the ESW site as a trusted site within the enhanced
Refused to load the script LINE, Bring
Builder:
'<your Your Own
ESW_[deploymentname]_[numbers]>/assets/js/ • Go to Setup > Digital Experiences > All Channel,
bootstrap.min.js' because it Sites. and Bring
violates the Your Own
• Click Builder next to your experience cloud
following Content Security
site. Channel for
Policy directive:
CCaaS
"scrtipt-src 'self • Under Settings, click Security & Privacy,
''unsafe-eval and go to the Content Security Policy (CSP)
'unsafe-inline'...". section.
Note that 'script-src-elem' was
not explicitly set, • Set Security level to Relaxed CSP: Permit
so 'script-src' is used as a Access to Inline Scripts and Allowed
fallback. Hosts.
• Click Add Trusted Site to add the CSP
trusted site details.
• Enter the name and URL of your esw site.
• Activate the site and click Add Site.

121
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Error Message Solution

• Publish the site.


Add the ESW site as a Trusted URL in Setup:
• Go to Setup > Security > Trusted URLs.
• Click New Trusted URL.
• Fill out the API Name and URL fields.
• In the CSP Context field, select Experience Builder Sites.
• Under CSP Directives, select frame-src (iframe content) and
style-src (stylesheets).
• Save your changes.

122
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

Update Your Messaging for Web Deployment After Upgrading to Enhanced Domains
EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for Web
applies to: channels

This Messaging
article for In-App,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

123
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

To ensure that your Messaging for Web deployment remains active after you enable enhanced
USER PERMISSIONS
domains, republish your deployment. If you use Messaging for Web in an Experience Builder site,
update your allowlisted URLs. To set up this feature:
In Winter ’24, all orgs get enhanced domains and the feature can’t be disabled. For more information, • Customize Application
see Enhanced Domains Timeline. AND Modify Metadata
Through Metadata API
After enhanced domains are deployed, a Messaging for Web deployment that was previously Functions
published no longer appears to your customer. Admins must take additional steps to republish all
pre-existing deployments. These steps differ between messaging that’s embedded in a third-party To modify permission sets
website and messaging that’s embedded in an Experience Builder site. and profiles:
• Manage Profiles and
Note: A new Messaging for Web deployment that is published for the first time after the Permission Sets
upgrade to enhanced domains go live to customers. No additional steps are required.
To add the Embedded
Messaging component to
an Experience Builder site:
Republish Your Website After Upgrading to Enhanced Domains
• Create and Setup
After upgrading to enhanced domains, republish any Messaging for Web deployments that are live Experiences
in your website.
Take these steps if you meet this criteria.
• You enabled enhanced domains, or Salesforce enforced enhanced domains in your org.
• Your website site had a published Messaging for Web deployment before enhanced domains were enabled.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then click Embedded Service
Deployments.
2. Click the edit button to the right of your deployment, and then select View.
3. Click Publish.

Republish Your Experience Builder Site After Upgrading to Enhanced Domains


After upgrading to enhanced domains, republish any Messaging for Web deployments that were live in your Experience Builder site.
Take these steps if you meet the following criteria:
• Your Salesforce org was upgraded to enhanced domains.
• Your Experience Builder site had a published Messaging for Web deployment before the upgrade to enhanced domains.
1. Update the Experience Builder to use the new enhanced domain.
a. From Setup, in the Quick Find box, enter All Sites, and then select All Sites.
b. Click the Builder link for your site.
c. Click Page Structure, and then select Embedded Messaging from the dropdown.
d. Select the URL presented in the Enhanced Service URL dropdown, and then select the URL presented in the Site Endpoint
dropdown.

2. Add the new enhanced service URL to the Trusted URLs list in Setup.
a. In Experience Builder, highlight and copy the enhanced service URL from the Enhanced Service URL dropdown. If it’s difficult
due to URL length, copy it from the code snippet in the Embedded Service Deployments Settings page for your messaging for
web deployment.
b. From Setup, in the Quick Find box, enter Trusted URLs, and then select Trusted URLs.
c. Click New Trusted URL.

124
Provide Conversation Support with Messaging in Service Set Up Messaging for In-App and Web
Cloud

d. Name it, and then paste the copied URL into the URL field.
e. Select connect-src (scripts).
f. Save your changes.

3. Add the new enhanced service URL to the Trusted URLs list for your Experience Builder site.
a. In Experience Builder, click Settings.
b. Select Security & Privacy.
c. Click + Add Trusted Site.
d. Name it, and again paste your enhanced service URL into the URL field.
e. Click Add Site.

4. Republish your Experience Builder site.


a. From Setup, in the Quick Find box, enter All Sites, and then select All Sites.
b. Click the Builder link for your site.
c. Click Publish, and then click the second Publish button that appears in the pop-up.

5. Update your embedded service deployment to use the new enhanced domain.
a. Return to the All Sites landing page, and copy the domain portion of the URL for your site.
b. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then click Embedded Service
Deployments.
c. Click the edit button to the right of your deployment, and then select Edit.
d. Paste the domain you just copied into the Domain field, and then save your changes.

6. Republish your embedded service deployment.


a. Click the edit button to the right of your deployment, and then select View.
b. Click Publish.

7. Add the new enhanced domain to your CORS allowlist.


a. From Setup, in the Quick Find box, enter cors, and then click CORS.
b. Click New.
c. Paste the domain that you previously copied into the Origin URL Pattern field, and then save your changes.

125
Provide Conversation Support with Messaging in Service Cookbook for Messaging for In-App and Web
Cloud

Cookbook for Messaging for In-App and Web


Check out our recipes for optimizing Messaging for In-App and Web to see if one fits your use case.
EDITIONS
Use Case Recipe Available in: Lightning
Personalize an auto-response template with Send a Personalized Customer Greeting with a Experience. View required
agent and customer names. Send it when an Formula Template editions.
agent accepts the messaging session. This Messaging
article for In-App
Create a Salesforce Survey and use an Set Up Post-Chat Surveys for Messaging for
applies to: and
Auto-Response component to send it after a In-App and Web
Messaging
messaging session ends. for Web
To provide agents with customer information Use Pre-Chat API to Pass Customer Information channels
that helps move an interaction forward, send to the Agent in an External Website Standard
This
end-user data to the agent console via the and
article
pre-chat API. doesn’t enhanced
apply to: WhatsApp,
To create a case when a customer messages Create a Case When a Messaging Session Starts
standard
outside of your business hours, don’t associate Outside of Your Business Hours
and
your business hours record with a Messaging
enhanced
for In-App and Web deployment. Instead, create Facebook
an Apex class that works with a flow and a bot Messenger,
to check your business hours record and create standard
a case. and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

126
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

Flow Recipes for Messaging for In-App and Web


Design Omni-Channel Flows to accomplish your Messaging for In-App and Web use case.
EDITIONS

IN THIS SECTION: Available in: Lightning


Experience. View required
Create Customer Flows for Messaging for In-App and Web
editions.
Messaging for In-App and Web offers a powerful method to gather pre-chat details from your
customer before the agent connects. Standard Pre-Chat form fields you select, such as first This Messaging
name and last name, and new custom fields like account numbers, drive the experience. Here’s article for In-App
an example of how to create your first customer flow for efficient conversations. applies to: and
Messaging
Persist Pre-Chat Inputs Across Messaging Sessions for Web
A Messaging for In-App or Web session ends when the agent selects End Chat. If a customer channels
continues to send messages, a new session is created. The conversation continues seamlessly
from the customer’s perspective, but the agent loses access to the original pre-chat data. These This Standard
instructions let agents access pre-chat data across sessions. It’s not necessary to set up access article and
doesn’t enhanced
to pre-chat data if you’re already using User Verification to persist messaging history.
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

127
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

Create Customer Flows for Messaging for In-App and Web


Messaging for In-App and Web offers a powerful method to gather pre-chat details from your
EDITIONS
customer before the agent connects. Standard Pre-Chat form fields you select, such as first name
and last name, and new custom fields like account numbers, drive the experience. Here’s an example Available in: Lightning
of how to create your first customer flow for efficient conversations. Experience. View required
Before getting started, let’s review how data passes through a messaging channel in a customer editions.
flow. This diagram shows each stage of the process.
This Messaging
A customer requests a messaging conversation and provides their contact info and other details article for In-App
in a Pre-Chat form. Their form-field inputs travel in your new messaging channel and are mapped applies to: and
as parameters. The flow you define guides where the inputs go, such as an email address or an Messaging
order number. An agent connects with specific information about the customer at their fingertips. for Web
Optionally, a new Salesforce record can be created or updated as part of your enhanced flow channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up Omni-Channel
Flow and Messaging:
• Customize Application
To modify permission sets
and profiles:
• Manage Profiles and
Permission Sets

128
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

If you’re new to messaging, read the requirements and then follow the steps to Prepare a Salesforce Org for Messaging for In-App and
Web with Omni-Channel, Omni Flow, and a new Messaging channel. Then configure your Messaging for In-App Deployment or configure
your Messaging for Web Deployment.
Decide on the combination of standard and custom fields, which link as parameters to your flow. Pick the standard fields for your use
case. If you need specific information for your agents, create your own custom fields. We recommend a maximum of 5-6 total fields.

Standard Field choices Custom Field Examples


First Name Account Number

Last Name Order Number

Email Service Request

Subject Your Custom Requirement

Follow these steps to create your Pre-Chat form.


1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then click to select.
2. Find your deployment and select Edit.
3. From the Deployment Settings page for your new web or mobile deployment, select Add Pre-Chat.

129
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

4. For this example, use Add Field to select First Name and then Last Name, which are standard fields.

130
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

5. Save your work.


6. To add your custom field, you first must create a custom parameter in Messaging Settings. This process sets a Channel Variable
Name, which you need for your Pre-Chat form.
7. From Setup, in the Quick Find box, enter Messaging Settings, and then click to select.
8. Find the Messaging Channel Name that you set up for your Messaging for In-App or Web deployment from the list and select it.
9. In the Custom Parameters section, click New.
10. Note: String is the only option for Data Type. While the pre-chat form allows you to display text, email, phone, number, and
checkbox fields, a flow automatically converts them to string fields. If you use a flow to populate another record with the
output of a pre-chat form field, the output renders as a string field. While most letters, numbers, and special characters allowed
by the original field type are also allowed by a string field, you notice slight differences. For example, the flow converts a
checkbox field to a string statement of “true” or a string statement of “false” in the resulting flow output.
Name your parameter CustomerAccountNumber, select the type, and character maximum limit for your customer’s input.

131
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

11. Save your work.


12. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then click to select.
13. Return to your previous deployment settings page and edit the Pre-Chat form.
14. From the Add Field list, select Custom.
15. In the New Custom Field window, select Field Type and Text for your customer account number field. Find the Channel Variable
Name that you set in Messaging Settings, CustomerAccountNumber, and select it.

16. If you want the customer to complete the fields, check the Required box.

132
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

17. Review the Pre-Chat form order, set the toggle to Active, and save your work.
Parameters are the connection points between your pre-chat form and the flow. To map your standard and custom Pre-Chat field values,
follow these steps.

Note: To create a custom label for pre-chat fields, return to the deployment settings page and select the Custom Labels section.
Find your custom field in the Label Group Pre-Chat. All custom fields require a custom label because there’s no default label.

Important: To use the Custom Label panel, the admin must authorize a logged-in user as a translator in the Salesforce User
language and the translated label language. Then, the user can customize the words or phrases.

Note: If you edit a deployment, you must click the Publish button on the Embedded Service Deployment Settings page. The
changes can take up to 10 minutes to complete.
1. From Setup, in the Quick Find box, enter Messaging Settings, and then click to select.
2. Find the Messaging Channel Name you set up for your Messaging for In-App or Web deployment from the list and select it.
3. In the Parameter Mapping section, click New.
4. In the Parameter field, select an item for your Pre-Chat form.
5. Add a Flow Variable Name that describes the action. The Flow Variable Name matches what you use for Omni-Flow.

6. Save your work.


7. Continue the process with each standard and custom field in your Pre-Chat form. When finished, you have a parameter mappings
list.

Note: Standard Parameter API Names, such as first name and last name, have an underscore and no spaces. For example,
_FirstName and _LastName. Custom Parameters don’t have underscores.

133
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

Return to the Omni-Channel Flow that you created when you set up your Salesforce org on page 72. Previously, you selected the Route
To Queue action to direct a customer request to the right queue. In this section, we add one more element to store your pre-chat fields.
Before starting, you must create three custom fields on the Messaging Session object, FirstName, LastName, and
CustomerAccountNumber. See Create Custom Fields.
1. From Setup, in the Quick Find box, enter Flows, and then click to select.
2. Find and select your previous flow from the list.
3. Add an input variable for each pre-chat field. The API Name must be identical to the Flow Variable Name from Parameter Mappings.
The variable must be Available for input.

4. Create an Update Records element before the Route Work element in your flow. Select Specify conditions to identify records
and set fields individually. Select Messaging Session as the object. In the Filter Records section, filter based on the recordId
value.

134
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

5. Set the Field Values for the Messaging Session Records so that the fields match the custom field names, which in this case is
associated with the Messaging Session.

135
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

136
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

6. The Value matches the input variables for the flow.


7. Click Done. The complete flow looks like this.

With this flow, an agent sees the customer’s pre-chat inputs of first name, last name, and customer account number in the Session record
as they connect.

137
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

Persist Pre-Chat Inputs Across Messaging Sessions


A Messaging for In-App or Web session ends when the agent selects End Chat. If a customer
EDITIONS
continues to send messages, a new session is created. The conversation continues seamlessly from
the customer’s perspective, but the agent loses access to the original pre-chat data. These instructions Available in: Lightning
let agents access pre-chat data across sessions. It’s not necessary to set up access to pre-chat data Experience. View required
if you’re already using User Verification to persist messaging history. editions.
Before you begin, you must have an Omni-Channel flow that already handles pre-chat data. To
This Messaging
learn more, see Map Pre-Chat Values in Omni-Channel Flow. for In-App
article
Since pre-chat data isn’t stored across sessions by default, you must store this data in a Salesforce applies to: and
record during the first session. Then, update your Omni-Channel flow to access this data from Messaging
subsequent sessions. Your updated flow looks up this information using the ConversationId for Web
field of the Messaging Session record, which is the same across sessions. channels

Important: This scenario is more likely to occur in Messaging for In-App where a customer This Standard
can continue a conversation long after the agent has ended the chat. However, it can also article and
doesn’t enhanced
occur with Messaging for Web customers when the customer sends more messages from
apply to: WhatsApp,
the same messaging window.
standard
1. From Setup, in the Quick Find box, enter Flows, and then select Flows. and
2. Find and select your previous flow from the list. enhanced
Facebook
3. Before handling the pre-chat input variables or routing the work, add a check to determine if Messenger,
we have a pre-existing session from the same conversation. If so, we use that information to standard
repopulate the input variables. and
a. Use a Get Records element to get the current messaging session using the recordId enhanced
input. SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up Omni-Channel
Flow and Messaging:
• Customize Application
To modify permission sets
and profiles:
• Manage Profiles and
Permission Sets

138
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

b. Use a Get Records element to find a pre-existing messaging session with the same ConversationId as the current
messaging session. We also make sure that the Id isn’t the same as the current messaging session. In this example, we sort the
results by creation date so that we can ensure that the first result is the first session. We then only return the first result.

c. To determine if this session is the first messaging session, use a Decision Tree element and check if the previous result is null.

139
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

d. If this session is the first messaging session, no action is necessary.


e. If this session isn’t the first messaging session, extract the pre-chat information from wherever you previously stored it and put
it in the correct input variables. In this example, we extract the values from custom fields in the original Messaging Session record.

f. After this new logic, you can handle the pre-chat input variables and route the work in just the same way as you did in your
original flow.

4. The following screenshot illustrates what your new flow could look like. The new logic is highlighted.

140
Provide Conversation Support with Messaging in Service Flow Recipes for Messaging for In-App and Web
Cloud

5. Click Done.
6. Save this flow as a new version, and verify that it’s activated in your org.

SEE ALSO:
Persist Secure Messaging History Across Multiple Devices with User Verification

141
Provide Conversation Support with Messaging in Service Set Up WhatsApp in Service Cloud
Cloud

Set Up WhatsApp in Service Cloud


Create a Messaging channel to let your support team help customers over WhatsApp. Customers
EDITIONS
message your company from the WhatsApp mobile or desktop app, and agents reply from the
Service Console. Available in: Lightning
Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to Experience. View required
editions.
changes in the WhatsApp API, and as of July 1, 2024, you can’t create new standard WhatsApp
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to This Standard
enhanced channels before July 30, 2025. See Considerations for Upgrading or Migrating to article and
Enhanced WhatsApp. applies to: enhanced
WhatsApp
channels
Explore Enhanced WhatsApp Channel Capabilities
This Messaging
In an enhanced WhatsApp channel in Salesforce, your support team has access to a range of article for In-App,
messaging tools to efficiently resolve customer issues. Agents and enhanced bots can send messages doesn’t Messaging
to customers in multiple formats including voice messages, a variety of file types, and questions apply to: for Web,
with clickable options. standard
and
If an agent can’t help a customer, they can transfer the customer to another agent, queue, or
enhanced
Omni-Channel routing flow, or they can mark a session inactive if the customer stops responding.
Facebook
Features such as read and delivery receipts, typing indicators, flag raise, and supervisor whisper
Messenger,
help agents manage their workload more nimbly. Agents can also initiate messaging sessions with standard
customers, while admins can use flows to send automated notifications based on approved and
WhatsApp templates. enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

142
Provide Conversation Support with Messaging in Service Set Up WhatsApp in Service Cloud
Cloud

You can create one or more enhanced WhatsApp channels on the Messaging Settings page in Setup. Each channel is linked to a different
WhatsApp number.

Get Started

IN THIS SECTION:
Create or Upgrade to an Enhanced WhatsApp Channel in Service Cloud
Set up an enhanced WhatsApp channel to let your support team help customers over WhatsApp. This article also explains how to
upgrade to an enhanced WhatsApp channel from a standard channel or move a number from an external business service provider.
Considerations for WhatsApp in Service Cloud
WhatsApp Business lets businesses communicate with users of the WhatsApp messaging app. Review important considerations
before creating a WhatsApp channel in Service Cloud.
Considerations for Upgrading or Migrating to Enhanced WhatsApp
Review these considerations before you upgrade from a standard to an enhanced WhatsApp channel, or before you migrate a phone
number from an external business service provider (BSP) to an enhanced WhatsApp channel.
Compare Standard and Enhanced WhatsApp Channel Capabilities
View a side-by-side comparison of standard and enhanced WhatsApp channels. Going forward, new features are available exclusively
in enhanced WhatsApp channels.

143
Provide Conversation Support with Messaging in Service Set Up WhatsApp in Service Cloud
Cloud

Send Template-Based Automated Messages in WhatsApp


Using a flow, automatically send customers template-based messages in standard or enhanced WhatsApp channels to update them
about cases, orders, or something else. Unlike freeform WhatsApp messages, template-based messages can be sent to opted-in
customers at any time regardless of when the customer last sent a message.
Test Your WhatsApp Channel in Service Cloud
Test your WhatsApp channel to ensure that it’s working the way you expect. Using a sandbox is optional, but a good idea.

144
Provide Conversation Support with Messaging in Service Create or Upgrade to an Enhanced WhatsApp Channel in
Cloud Service Cloud

Create or Upgrade to an Enhanced WhatsApp Channel in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article WhatsApp
applies to: channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

145
Provide Conversation Support with Messaging in Service Create or Upgrade to an Enhanced WhatsApp Channel in
Cloud Service Cloud

Set up an enhanced WhatsApp channel to let your support team help customers over WhatsApp.
USER PERMISSIONS
This article also explains how to upgrade to an enhanced WhatsApp channel from a standard
channel or move a number from an external business service provider. To set up WhatsApp
channels:
Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to • Configure Messaging
changes in the WhatsApp API, and as of July 1, 2024, you can’t create new standard WhatsApp AND View Setup and
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to Configuration
enhanced channels before July 30, 2025. See Considerations for Upgrading or Migrating to
To create WhatsApp
Enhanced WhatsApp. channels:
Each enhanced WhatsApp channel in Salesforce is linked to a WhatsApp Business account (WABA). • System Administrator
When you set up your channel, we walk you through creating a WABA that's associated with your AND Configure
phone number. If your WABA is created in Meta Business Manager outside of the channel setup Messaging
flow in Salesforce, you can't use it with a Salesforce channel. OR
To minimize downtime that can occur during an upgrade or migration to an enhanced WhatsApp Configure Messaging
channel, use a test or low-traffic phone number at first. After you set up and test your routing AND Customize
Application AND
configuration, channel settings, message templates, and customer experience, you can then create
Manage Auth. Providers
your enhanced channel with your desired number and apply your already-tested customizations. AND View Setup and
Configuration AND
Modify All Data
Step 1: Prepare to Create Your Channel
To get started, review key considerations and configure the Service Console, user access, and routing.
For channel upgrades and migrations, turn off two-step verification to make your number available.
1. Review our WhatsApp phone number criteria, account criteria, channel limitations, and migration considerations. See the resources
linked at the end of this article.
2. If you’re upgrading from a standard WhatsApp channel, submit a request to [email protected] to turn off
two-step verification for your number. To avoid service interruptions, upgrade your standard WhatsApp channels to enhanced
channels before July 30, 2025.
3. If you’re migrating your number from another business service provider (BSP) and can’t access your original WhatsApp Business
account, ask the BSP to turn off two-step verification for your number. Contact WhatsApp if you’re not sure who your previous BSP
was. If you do have access to your original account, do it yourself:
a. Log into Meta Business Manager as an admin.
b. Select your WABA and enter WhatsApp Business Manager.
c. In the settings of the phone number that you’re migrating, turn off two-step verification.
d. Click the link in the email verification sent by WhatsApp.

4. Complete the steps in Get Started with Messaging in Service Cloud.

Step 2: Create Your Channel in Setup


These steps apply whether you’re using a new number, a number that’s in use in a standard channel, or a number that’s in use with an
external BSP.
1. In Setup, enter Messaging in the Quick Find box, and then select Messaging Settings.
2. Click New Channel, and then click Start.
3. Click WhatsApp, select Enhanced, and then click Next.
4. Review and accept the terms and conditions, and then click Next.

146
Provide Conversation Support with Messaging in Service Create or Upgrade to an Enhanced WhatsApp Channel in
Cloud Service Cloud

5. Disable any pop-up blockers. Then, click Connect to WhatsApp.

6. In the window that appears, enter your Facebook login credentials.


7. Follow the prompts to:
a. Create or select a Meta Business Account.
b. Create a WhatsApp Business account (WABA). If you created a WABA in Meta Business Manager, it can't be used with Salesforce.
If you’re upgrading or migrating, make sure the account name exactly matches the name of your original account.
c. Create or select a WhatsApp Business profile. If you’re upgrading or migrating, create a new one whose profile name exactly
matches the name of your original profile.
d. Select your WhatsApp Business phone number or register a new one, and verify it by text or voice call.

8. When a message notifies you that you’re almost ready to chat, click Finish.
9. In Salesforce Setup, the channel setup flow shows that your WhatsApp account is connected. Click Next. If you selected a WhatsApp
Business account that can’t be used, we let you know here.
10. Select your WhatsApp number and click Next.
11. Enter your chat acknowledgment message and click Next. If needed, you can edit this auto-response and others later in your channel
settings.
12. Choose how to route incoming messages to agents.
a. To set up a basic routing solution from scratch, select Create a new queue. The flow walks you through creating a queue and
routing configuration and adjusting agent messaging workload.
b. To use an existing queue or an Omni-Channel flow, which supports more complex routing logic and lets you route to bots, select
Set up routing later.

13. Complete and exit the flow.


14. If you selected Set up routing later, finish configuring your routing.
a. On the Messaging Settings page, find your new channel and click Edit in its action menu.

147
Provide Conversation Support with Messaging in Service Create or Upgrade to an Enhanced WhatsApp Channel in
Cloud Service Cloud

b. If you want to route to an Omni-Channel flow: In the Routing section, select the Omni-Flow routing type. Select your
Omni-Channel flow in the Flow Definition field, and select a fallback queue to receive any messaging sessions that the selected
flow can’t route.
c. If you want to route to a queue: In the Routing section, select the Omni-Queue routing type, and select a queue to receive this
channel’s incoming messages.
d. Save your changes.

Important: After you create your channel, you might be tempted to log into the WhatsApp mobile or desktop application with
this number. Don’t! Otherwise, you won’t be able to activate the channel in Salesforce.

Step 3: Activate Your Channel


Within 14 days of creating your enhanced WhatsApp channel, activate your channel to start the flow of messaging traffic. If you’re
migrating or upgrading, we recommend activating during a low-traffic time to avoid interruption to ongoing messaging sessions.
1. Review the steps in the Enhanced Messaging Channel Activation Checklist on page 279 to make sure that your channel is ready for
business.
2. In Setup, go to the Messaging Settings page and click your channel’s name.
3. At the top of the page, click Activate Channel.
After a channel is activated, it shows as active in the channel list. You can deactivate on page 282 it at any time to pause messaging
traffic. If you upgraded from a standard channel, the standard channel still appears in the channel list but is no longer active.
If you don’t activate your channel within 14 days of creating it, you must reverify your number with WhatsApp in one of two ways:
• Log into Meta Business Manager, go to your number’s settings, and reverify it.
• Repeat the New Channel setup flow on the Messaging Settings page using the same phone number.
Then, try activating the channel again.

SEE ALSO:
Enhanced Messaging Channel Activation Checklist
Considerations for WhatsApp in Service Cloud
Considerations for Upgrading or Migrating to Enhanced WhatsApp
Increase Messaging Productivity

148
Provide Conversation Support with Messaging in Service Considerations for WhatsApp in Service Cloud
Cloud

Considerations for WhatsApp in Service Cloud


WhatsApp Business lets businesses communicate with users of the WhatsApp messaging app.
EDITIONS
Review important considerations before creating a WhatsApp channel in Service Cloud.

Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to Available in: Lightning
changes in WhatsApp's API, and as of July 1, 2024, you can’t create new standard WhatsApp Experience. View required
editions.
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to
enhanced channels before July 30, 2025. For help, see Considerations for Upgrading or This Standard
Migrating to Enhanced WhatsApp. article and
applies to: enhanced
WhatsApp
General Account Limits and Considerations channels
• Your Meta Business Account can be associated with multiple WhatsApp Business accounts Messaging
This
(WABA). Across all of the WABAs associated with your Meta Business Account, you can use up for In-App,
article
to 20 WhatsApp phone numbers. This limit may differ if WhatsApp considers one of your Messaging
doesn’t
numbers a verified Official Business Account, which is a label reserved for notable brands. And apply to: for Web,
if you maintain WhatsApp channels with another business service provider in addition to standard
Salesforce, those channels also count against your limit. Here’s how to request a change to this and
limit: enhanced
Facebook
– If you’re using only standard WhatsApp channels, email the Salesforce WhatsApp enablement
Messenger,
team at [email protected].
standard
– If you’re using enhanced WhatsApp channels and manage your own WABA in Meta Business and
Manager, contact WhatsApp Direct Support. Select Ask a question, select the topic WABiz: enhanced
Account & WABA, and select Request type: Increase phone number limit. SMS,
enhanced
• In standard and enhanced WhatsApp channels, you can create and use up to 250 messaging
Apple
templates per WABA. For standard channels, create templates on the Messaging Templates
Messages
page in Setup and submit them to Salesforce for review by WhatsApp. For enhanced channels, for Business,
create templates in WhatsApp Business Manager and then create a notification messaging enhanced
component in Salesforce for each template. LINE, Bring
• Group WhatsApp chats aren't supported in standard or enhanced WhatsApp channels. If a Your Own
messaging user adds another WhatsApp user to a messaging session with your business, their Channel,
messages aren't delivered and the session doesn't appear in the Omni-Channel utility or sidebar. and Bring
Your Own
• Meta occasionally delays the delivery of messages that they consider damaging to their
Channel for
messaging ecosystem – for example, when a business tries to send a message to a customer
CCaaS
who has not replied to a previous message from the business within a specified time frame. If
you encounter this error, don’t immediately attempt to resend the message. Retry sending the
message after progressively longer intervals until it is successfully delivered.
• Depending on how the Meta API processes messages, inbound or outbound messages sent in quick succession may not be delivered
in the intended order. This may happen if the messages are sent by a bot or with a poor network connection or carrier issues; it can
also occur if the messages and attachments have different sizes.

Message Recipient Limits


For each new WhatsApp channel, WhatsApp limits the number of unique users that your org can send outbound messages to in a
24-hour period, using WhatsApp-approved templates. This limit doesn’t apply to the number of messages you send or to responses to
user-initiated messages. See Capacity and Messaging Limits in the WhatsApp documentation.

149
Provide Conversation Support with Messaging in Service Considerations for WhatsApp in Service Cloud
Cloud

Outbound Message Limits


Standard WhatsApp channels involve integration with Twilio, Inc. Twilio enforces a limit of 10 outbound messages per second per
WhatsApp channel. Any messages above that limit are queued and sent when there is capacity. A queue can hold up to 4 hours’ worth
of messages.
For this reason, if you send a high volume of messages in your standard WhatsApp channels, all outbound messages (both automated
and agent-sent) can be delayed for up to 4 hours. We recommend staying under the 10 messages per second limit.
You can request to raise this limit from 10 to 50 messages per second. This increase takes at least 5 business days, and can involve several
minutes of downtime. However, keep in mind that this limit applies only to text-only messages. Messages containing media, such as
images or messaging components, have an unchanging limit of 1.5 messages per second.

Enhanced Messaging for WhatsApp


• Standard WhatsApp channels are scheduled for retirement in mid-2025 due to changes in the WhatsApp API, and as of July 1, 2024,
you can’t create new standard WhatsApp channels. To avoid service interruptions, standard WhatsApp channels must be upgraded
to enhanced channels before July 30, 2025. A phone number can be associated with only one channel at a time, so during an
upgrade, the original standard channel is deactivated but remains visible in your list of channels.
• If you turned on Messaging, and then later enabled enhanced domains, you must refresh Messaging to continue receiving messages
in enhanced channels. To do this, toggle Messaging off and on again on the Messaging Settings page in Setup. Your settings and
channels are preserved.

Content Sharing
You can send many types of content in WhatsApp channels. For a full list, see Compare Standard and Enhanced WhatsApp Channel
Capabilities.
WhatsApp has these limitations related to sharing content.
• The following content types and interactions aren’t supported in standard or enhanced channels: Stickers, locations, contacts, polls,
tap-back reactions, and message deletion.
• If a customer sends unsupported content such as a sticker or location, an error message notifies agents that the customer sent a
message with unsupported content. Agents can ask the customer to share the information another way.
• When a customer sends an image, the agent sees a preview in the Service Console and can download the image. File previews aren’t
supported, but agents can download files.
• If a customer replies to a previous message in the WhatsApp chat, agents see the reply but not the original message that the customer
was replying to.

Sharing Your WhatsApp Channel


To encourage customers to contact you in WhatsApp, you can link to your standard or enhanced WhatsApp channel from a website.
Use the universal link format. Here’s an example link that includes custom link text:
https://wa.me/15551234567?text=Message%20us%20in%WhatsApp.

Customer Care Window


The 24 hours after a customer sends a message to your business is considered the customer care window, in which an agent or bot assists
the customer with their inquiry. After the customer care window passes, an agent can respond to a customer only using pre-approved
templates. Any messaging other than these templates must be sent within the customer care window. WhatsApp imposes this response
time limit to prevent outbound marketing.

150
Provide Conversation Support with Messaging in Service Considerations for WhatsApp in Service Cloud
Cloud

Pricing
You can send some types of WhatsApp messages to customers at no charge, while other types incur charges. Talk to your Salesforce
account executive to understand when you’ll be charged for sending a message in WhatsApp.

Business Verification
Some businesses can verify their business in WhatsApp, which gives them access to extra technologies, developer features, and higher
limits. We recommend verifying your business before you create a WhatsApp account in Salesforce. See the Meta documentation.

Customer-Initiated Versus Proactive Messaging


Businesses can interact with their customers over WhatsApp in two ways: customer care interactions and notifications.

Communication Type Standard WhatsApp Enhanced WhatsApp


Customer Care Interactions: Customer-initiated conversations that Supported Supported
require a response from your team within 24 hours

Notifications: Business-initiated, preapproved, templated messages Automated messaging: Supported


that can be sent at any time by agents or automation (such as Supported
flows or processes) Agent-initiated messaging:
Available as a beta feature

WhatsApp requires you to proactively and explicitly receive an end user’s consent before sending them notifications. You must receive
this consent outside of WhatsApp. You can receive it from another communication channel, such as email or text message, or as part
of your company’s normal business processes. After you receive an end user’s consent outside of WhatsApp, you can use this information
to send notifications. See WhatsApp Business Policy.
End users don’t have to provide advance, explicit consent to initiate an inbound customer care interaction. To learn more about how
customers opt in and out of communication, see Customize the Messaging Opt-In and Opt-Out Experience.

Acquiring a Phone Number for Your WhatsApp Channel


To create a WhatsApp channel in Salesforce, you need a phone number to associate with your channel. Your phone number must meet
these requirements.
• Owned by you.
• Has a valid country code and area code (fixed-line or mobile). You can’t use SMS short codes with WhatsApp, but you can use toll-free
numbers.
• Able to receive text messages, voice calls, or both.
• Fits the criteria below for number reuse.
The phone number you use acts as an identifier for your WhatsApp Messaging channel. Registering a number with WhatsApp doesn’t
limit your everyday usage behavior. You can still use it for standard business purposes like calling or texting. While you can use the same
number for communication in multiple countries, we recommend designating a separate number for each country to avoid confusion
or the appearance of fraud.
If you don’t have a phone number that meets these criteria, you can request one from your telephony provider or web-based CPaaS
provider.

151
Provide Conversation Support with Messaging in Service Considerations for WhatsApp in Service Cloud
Cloud

Number Reuse and Migration


Most types of WhatsApp phone numbers can be associated with a WhatsApp Messaging channel.

Phone Number Type Standard WhatsApp Enhanced WhatsApp


Numbers in use with another business OK to use. When the Salesforce WhatsApp OK to use. When you create your channel,
service provider (BSP) enablement team creates your WhatsApp we walk you through migrating your
channel, your number is migrated from your number from your original provider.
original provider.

Numbers in use in a Marketing Cloud OK to use only if you create your channel using Unified Messaging. If Unified Messaging
Engagement WhatsApp channel, or isn’t used, you must designate separate WABAs for Service Cloud and Marketing Cloud
numbers whose WABA is linked to a Engagement channels. See Migrate to Unified WhatsApp from Marketing Cloud
Marketing Cloud Engagement WhatsApp Engagement or Digital Engagement.
channel

Numbers already activated or previously OK to use.


used on WhatsApp

Numbers already activated in a standard OK to use. You must ask Salesforce OK to use. You can transfer the number to
WhatsApp channel Customer Support to move a WhatsApp an enhanced channel yourself.
number from one standard channel to
another.

Numbers already activated in an enhanced OK to use. OK to use. To transfer a WhatsApp number


WhatsApp channel in another Salesforce from one org to another, designate a unique
org (sandbox or production) WABA for each org. In WhatsApp Business
Manager, delete the phone number from
the source org’s WABA and add the number
to the destination org’s WABA. This assigns
the WABA a new phone number ID that can
be used in a new channel in the destination
org.

Note: The WhatsApp messaging channel involves integrations with one or more Non-SFDC Applications, including Twilio, Inc.
and WhatsApp, as further detailed in the Messaging Notices and Licensing Information Documentation, available here. By activating
the WhatsApp messaging channel, you're affirming that you have the authority to bind your company/organization to any Non-SFDC
Application terms and conditions that are set forth in the Messaging Notices and Licensing Information Documentation.

SEE ALSO:
Considerations for Upgrading or Migrating to Enhanced WhatsApp
Trailhead: WhatsApp in Service Cloud
Service Cloud Messaging Limits and Considerations

152
Provide Conversation Support with Messaging in Service Considerations for Upgrading or Migrating to Enhanced
Cloud WhatsApp

Considerations for Upgrading or Migrating to Enhanced WhatsApp


Review these considerations before you upgrade from a standard to an enhanced WhatsApp
EDITIONS
channel, or before you migrate a phone number from an external business service provider (BSP)
to an enhanced WhatsApp channel. Available in: Lightning
Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to Experience. View required
editions.
changes in the WhatsApp API, and as of July 1, 2024, you can’t create new standard WhatsApp
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to This Standard
enhanced channels before July 30, 2025. article and
applies to: enhanced
WhatsApp
How a Channel Upgrade or Migration Works channels
Here are the high-level steps of upgrading or migrating to an enhanced WhatsApp channel. Messaging
This
Step 1: Turn off two-step verification for your phone number so it can be transferred to a new article for In-App,
enhanced channel. In an upgrade, you submit a request to Salesforce to turn it off for you. In a doesn’t Messaging
migration, you ask your original BSP to turn it off, or do it yourself in Meta Business Manager. apply to: for Web,
standard
Step 2: Create your enhanced channel on the Messaging Settings page in Setup. During this process,
and
create a new WhatsApp Business account (WABA) and business profile and select the phone number enhanced
that you’re transferring. Facebook
Step 3: Customize your channel by completing the steps in the Enhanced Messaging Channel Messenger,
Activation Checklist. standard
and
Step 4: Activate your channel in Setup.
enhanced
SMS,
enhanced
Key Differences Between Standard and Enhanced WhatsApp
Apple
Channels Messages
for Business,
• Agents have more ways to gather and share information with customers. In standard
enhanced
WhatsApp channels, agents can share text, images, and PDFs only. In enhanced channels,
LINE, Bring
agents can also share longer messages and larger files as well as voice messages, audio files,
Your Own
and videos. In addition, agents in enhanced channels can send several types of structured
Channel,
content, known as messaging components. Messaging component formats include questions and Bring
with options, time selectors, and links. Your Own
• Agents have more options when they can’t help a customer. Agents can end sessions in Channel for
both standard and enhanced WhatsApp channels, but they have several additional options in CCaaS
enhanced channels. There, agents can:
– Transfer an active messaging session to another agent, queue, or routing flow.
– Mark a messaging session inactive if the customer stops responding, freeing up the agent’s capacity.

• More session statuses means more insight into messaging activity. Enhanced sessions include several extra session statuses,
including Inactive, Consent, and Error. You can reference these session statuses when setting up reports and designing message
routing logic.
• Agents have more options in the Service Console. In the Enhanced Conversation component, agents have access to a row of
action buttons that let them send content such as quick text, messaging components, files, and emoji. Agents can also raise a flag
to request help from a supervisor and exchange “whispered” messages with the supervisor that are captured in the session transcript.
• Agents use a different quick action to start conversations. To initiate messaging sessions in enhanced WhatsApp channels,
agents use the Send Message global action. In standard WhatsApp channels, agents use the Start Conversation quick action (beta).

153
Provide Conversation Support with Messaging in Service Considerations for Upgrading or Migrating to Enhanced
Cloud WhatsApp

The Send Message action is available in the global action menu, which means agents can initiate a messaging session from any
page in Salesforce.
• Automated outbound message notifications are sent in a different way. Automated message notifications are messages that
are based on a WhatsApp message template and sent to customers via a flow at particular times—for example, when a case status
changes or an order ships. In standard channels, Salesforce admins create their templates in Setup and use the Message Notification
flow action to send the messages at particular times. In enhanced channels, admins create their templates in WhatsApp Business
Manager, create notification messaging components that are linked to those templates, and then use the Send Conversation Messages
flow action to send the messages.
For a side-by-side comparison of standard and enhanced WhatsApp channels, see Compare Messaging Channel Capabilities in Service
Cloud.

Transferred Data and Settings


Here’s what is and isn’t transferred during a channel upgrade or migration.

Feature Standard to Enhanced Channel External BSP to Enhanced Channel


Phone number Admin can transfer. The standard and enhanced Admin can transfer. The external BSP implementation
WhatsApp channels are each associated with a and enhanced WhatsApp channel are each associated
different WABA. As part of the channel creation with a different WABA. As part of the channel creation
process, the number moves to the enhanced channel process, the number moves to the enhanced channel
WABA. WABA.

Conversation history Not transferred. Messaging sessions from the Not transferred.
standard channel remain available in your Salesforce
org to users with permission.

Channel auto-responses, Automatically transferred. However, enhanced Not transferred.


such as opt-in prompts channels include extra auto-responses, which you
and keywords can customize during your upgrade.

Messaging user consent Not transferred. We recommend bulk-creating Not transferred.


preferences messaging user records for your enhanced channel
that include the consent status gathered in the
standard channel.

Message templates and Not transferred, but you can copy templates from your original WABA to your enhanced channel WABA.
automated message See Send Automated Messages in Enhanced Messaging Channels.
sending

Omni-Channel flow Not transferred, but admins can update the enhanced Not applicable.
routing or queue and channel settings to reference the right flow or queue.
routing configuration We also recommend upgrading to enhanced
Omni-Channel routing.

Bot routing configuration Not transferred. You can use only enhanced bots in Not applicable.
enhanced WhatsApp channels, as opposed to
standard bots.

Sensitive data rules Not transferred, but you can create replacement Not applicable.
sensitive data rules for enhanced channels.

154
Provide Conversation Support with Messaging in Service Considerations for Upgrading or Migrating to Enhanced
Cloud WhatsApp

Feature Standard to Enhanced Channel External BSP to Enhanced Channel


Channel-object linking Automatically transferred, but we recommend Not applicable.
configuration upgrading to individual-object linking.

Channel menu Automatically transferred, because the phone number remains the same. Check that your WhatsApp option
configuration in your channel menu uses the universal link format.

Conversation History
When an agent is engaged in a messaging session, they see a continuous transcript of the messaging user’s conversations with your
business that occurred in that channel. However, the transcript doesn’t show messages that were sent outside of the channel. These
include messages that the messaging user exchanged with your business:
• In a standard WhatsApp channel
• When the phone number was associated with an external BSP
In a migration from an external BSP, no conversation data is transferred to the new enhanced channel. In a standard-to-enhanced
upgrade, the standard channel’s conversation history is still available in Salesforce. To find it, go to the messaging user record that’s
associated with the standard channel and view their messaging sessions.
For example, Maria is a longtime customer. She has exchanged messages with your business in a standard WhatsApp channel. When
you upgrade your standard channel to an enhanced channel, here’s how her messaging data is organized in Salesforce.

Continuity for Customers


When you upgrade to an enhanced channel from a standard channel, customers don’t see any changes in their WhatsApp chat with
you. If a customer messaged with you both before and after the upgrade, they see all messages in the same chat.
To minimize downtime that can occur during an upgrade or migration, we recommend using a test or low-traffic phone number at first.
After you set up and test your routing configuration, channel settings, message templates, and customer experience, you can create
your enhanced channel with your desired number and apply your already-tested customizations.

155
Provide Conversation Support with Messaging in Service Considerations for Upgrading or Migrating to Enhanced
Cloud WhatsApp

Activate your channel during a low-traffic time to avoid two possible disruptions that can occur during an upgrade or migration:
• You can experience a short period of messaging loss when you activate your channel.
• If a customer is engaged in an active messaging session in your standard channel as you’re upgrading to an enhanced channel, it’s
possible that customer messages sent after the enhanced channel is activated won’t arrive. In this situation, close their open session
in the standard channel. Then, create a messaging user for the customer in the enhanced channel that includes their consent
preference gathered in the standard channel. Finally, send an automated or manual message to them in the enhanced channel to
continue helping them.

Important: Your customers’ consent status—Implicitly Opted In, Explicitly Opted In, or Opted Out—isn’t transferred when you
upgrade or migrate to an enhanced WhatsApp channel. To transfer this data to your new channel, we recommend creating
messaging user records for your existing customers that are linked to your enhanced channel and include their consent status
from the standard channel. When a customer has a messaging user record that’s linked to your enhanced WhatsApp channel,
your support team can initiate a conversation with them or send them automated messages unless the customer opted out of
receiving WhatsApp messages from you. If a customer messages you first after an upgrade, a messaging user record is created for
them automatically.

Start Your Upgrade or Migration


To get started, see Create or Upgrade to an Enhanced WhatsApp Channel in Service Cloud.

SEE ALSO:
Enhanced Messaging Channel Activation Checklist
Considerations for WhatsApp in Service Cloud
Set Up a WhatsApp Unified Messaging Channel

156
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced WhatsApp Channel
Cloud Capabilities

Compare Standard and Enhanced WhatsApp Channel Capabilities


View a side-by-side comparison of standard and enhanced WhatsApp channels. Going forward,
EDITIONS
new features are available exclusively in enhanced WhatsApp channels.

Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to Available in: Lightning
changes in the WhatsApp API, and as of July 1, 2024, you can’t create new standard WhatsApp Experience. View required
editions.
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to
enhanced channels before July 30, 2025. See Considerations for Upgrading or Migrating to This Standard
Enhanced WhatsApp. article and
Enhanced WhatsApp channels are built on our new conversation platform. The conversation platform applies to: enhanced
also houses Service Cloud Voice, Messaging for In-App and Web, and all other enhanced Messaging WhatsApp
channels
channels, such as Facebook Messenger. This shared platform has several benefits.
• When we roll out a new feature, it’s often shared across all channels on the conversation platform. This Messaging
Agents get a consistent experience, regardless of channel. article for In-App,
doesn’t Messaging
• These channels are designed to scale beyond the customer support use case. for Web,
apply to:
standard
Capability Standard WhatsApp Enhanced WhatsApp and
Setup and Routing enhanced
Facebook
Automated channel setup No Yes Messenger,
standard
Can upgrade from standard N/A Yes and
channels enhanced
Can migrate from an external Partially—Migrations from Yes SMS,
business service provider cloud-based implementations enhanced
Apple
aren’t supported.
Messages
Omni-Channel Flow routing Yes Yes for Business,
enhanced
Queue-based routing Yes Yes LINE, Bring
Enhanced routing No Yes Your Own
Channel,
Tab-based capacity Yes Yes and Bring
Your Own
Status-based capacity No Yes Channel for
Available with Sales Cloud Yes Yes CCaaS

Messaging Session Start and End

Customer can start session Yes Yes

Agent can start session Yes, via the Start Conversation Yes, via the Send Message
quick action (beta) global action

Automated outbound Yes Yes


messages

Agent can end session Yes Yes

Agent can mark session No Yes


inactive

157
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced WhatsApp Channel
Cloud Capabilities

Capability Standard WhatsApp Enhanced WhatsApp


Available session statuses New, Waiting, Active, Ended New, Consent, Waiting, Active, Inactive,
Ended, Error

Customer Experience

Typing indicator: customer side No No

Typing indicator: agent side No No

Read receipts: customer side No No

Read receipts: agent side No No

Delivered receipts: customer side No No

Delivered receipts: agent side Yes Yes

Desktop application support Yes Yes

Agent Experience

Quick text Yes Yes

Message templates Yes Yes

Einstein recommended replies No Yes

Agent-to-agent transfer No Yes

Agent-to-flow transfer No Yes

Agent-to-queue transfer No Yes

Flag raise No Yes

Supervisor whisper to agents No Yes

Conversation transcripts Yes Yes

After-conversation work timer Yes Yes

Compatible with AI agents No Yes

Compatible with Einstein Bots Yes Yes

Channel-object linking Yes Yes

Individual-object linking Yes Yes

Channel menu Yes Yes

Content Sharing

File sharing Yes Yes

Text Yes, up to 1,600 characters Yes, up to 4,096 characters. Inbound


text-only messages over 9 MB are sent as
an attachment.

158
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced WhatsApp Channel
Cloud Capabilities

Capability Standard WhatsApp Enhanced WhatsApp


Emoji Yes Yes

Images Yes, up to 5 MB: .jpg, .jpeg, .png Yes, up to 5 MB inbound and 25 MB


outbound: .jpeg, .png.
Images must be 8-bit, RGB, or RGBA.
Outbound images that are 5–25 MB are sent
as a link.

PDFs Yes, up to 5 MB Yes, up to 30 MB inbound and 25 MB


outbound. Outbound PDFs that are 16–25
MB are sent as a link.

Documents No Yes, up to 30 MB inbound and 25 MB


outbound: .txt, .ppt, .pptx, .pps, .ppsx, .doc,
.docx, .xls, .xlsx, .csv.
Outbound documents that are 16–25 MB
or of type .txt, .json, .xml, .csv, .ppsx, and .rtf
are sent as a link.

Audio files No Yes, up to 16 MB inbound and 25 MB


outbound: .aac, .amr.
Supported for inbound only: .mp3, .ogg,
.mp4, .mpeg.
Only opus codecs are supported. Base
audio/ogg isn’t supported. Outbound audio
files that are 16–25 MB are sent as a link.

Audio message recorder with playback No Yes

Video files No Yes, up to 16 MB inbound and 25 MB


outbound: .mp4, .3gp.
Only H.264 video codec and AAC audio
codec is supported. Videos with a single
audio stream or no audio stream are
supported. Outbound video files that are
16–25 MB or of type .3gp are sent as a link.

GIFs Yes No

Enhanced link messaging components No Yes (plain text only)

Question with options messaging No Yes


components

Time selector messaging components No Yes

Auto-response messaging components No No

Form messaging components No Yes (plain text only)

159
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced WhatsApp Channel
Cloud Capabilities

Capability Standard WhatsApp Enhanced WhatsApp


Notification messaging components No Yes

Payment messaging components No Yes (plain text only)

Authentication messaging components No Yes (plain text only)

Custom messaging components No Yes (plain text only)

Right-to-left languages No Yes

Automated Responses

Conversation acknowledgment Yes Yes

Agent accept Yes Yes

After-hours response No No

Inactive conversation No No

End session Yes Yes

Security and Consent Management

Sensitive data rules Yes Yes

Encryption at rest Yes Yes

Channel consent type: Implicit opt-in Yes Yes

Channel consent type: Explicit opt-in No Yes

Channel consent type: Double opt-in No Yes

Customers can opt out Yes Yes

SEE ALSO:
Considerations for Upgrading or Migrating to Enhanced WhatsApp
Create or Upgrade to an Enhanced WhatsApp Channel in Service Cloud
Set Up a WhatsApp Unified Messaging Channel

160
Provide Conversation Support with Messaging in Service Send Template-Based Automated Messages in WhatsApp
Cloud

Send Template-Based Automated Messages in WhatsApp


Using a flow, automatically send customers template-based messages in standard or enhanced
EDITIONS
WhatsApp channels to update them about cases, orders, or something else. Unlike freeform
WhatsApp messages, template-based messages can be sent to opted-in customers at any time Available in: Lightning
regardless of when the customer last sent a message. Experience. View required
editions.
Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to
changes in WhatsApp's API, and as of July 1, 2024, you can’t create new standard WhatsApp This Enhanced
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to article Apple
enhanced channels before July 30, 2025. For help, see Considerations for Upgrading or applies to: Messages
Migrating to Enhanced WhatsApp. for Business
channels
This feature requires the WhatsApp Outbound Messages SKU. You can create and use up to 250
templates for one WhatsApp Business account. This Messaging
article for In-App,
doesn’t Messaging
Creating WhatsApp Templates in Salesforce apply to: for Web,
Any automated message that you send in a standard or enhanced WhatsApp channel must be standard
based on a template that WhatsApp has approved. Each message template is language- and and
country-specific. enhanced
WhatsApp,
The method that you use to create a template depends on whether you plan to use it in standard standard
or enhanced WhatsApp channels. and
Standard WhatsApp enhanced
To use a template in standard WhatsApp channels, submit the template to Salesforce via email Facebook
for approval by WhatsApp. The approval process takes 2–5 business days. Then, recreate the Messenger,
template in Setup and set up a flow to send it. For steps, see Send Automated Messages in standard
and
Standard Messaging Channels .
enhanced
Enhanced WhatsApp SMS,
To use a template in enhanced WhatsApp channels, create your template in WhatsApp Business enhanced
Manager and submit it there for approval. Approval usually just takes a moment. When it’s LINE, Bring
approved, create a notification messaging component in Salesforce that’s linked to your template. Your Own
Then, set up a flow to send it. For steps, see Send Automated Messages in Enhanced Messaging Channel,
Channels. and Bring
Your Own
Channel for
How Template Categories Work CCaaS
When you submit a WhatsApp template for approval, you must select one of WhatsApp’s three
official template categories for your template. View these categories and their subcategories in the
Meta documentation.

Note: When you create a standard WhatsApp template in Setup, you must also select one of ten categories in the Template
Category field. This field merely helps you organize your templates in Salesforce. It isn’t related to the official WhatsApp categories,
and doesn’t affect the way that WhatsApp processes notifications based on the template.

Migrating Message Templates


Each WhatsApp template that you create is associated with a WhatsApp Business account (WABA). If you’re upgrading or migrating to
an enhanced WhatsApp channel from a standard channel or other business service provider, you can copy the templates from your

161
Provide Conversation Support with Messaging in Service Send Template-Based Automated Messages in WhatsApp
Cloud

original WABA to the WABA associated with your enhanced channel. Template copying occurs on your channel’s record home page in
Setup, in the Message Templates section.
If you plan to migrate message templates from one WABA to another, keep these considerations in mind.
• If a template fails to be copied to the destination WABA that you specify, recreate the template in WhatsApp Business Manager.
• Buttons and dynamic footers aren’t supported in WhatsApp templates that are linked to a notification messaging component.
Remove them from the template in WhatsApp Business Manager. If a template contains buttons or a dynamic footer, those sections
aren’t visible or configurable in the Messaging Component Builder.

SEE ALSO:
Meta Documentation: Create message templates for your WhatsApp Business account
Meta Documentation: Template Categorization
Meta Documentation: Template Guidelines

162
Provide Conversation Support with Messaging in Service Test Your WhatsApp Channel in Service Cloud
Cloud

Test Your WhatsApp Channel in Service Cloud


Test your WhatsApp channel to ensure that it’s working the way you expect. Using a sandbox is
EDITIONS
optional, but a good idea.

Important: Standard WhatsApp channels are scheduled for retirement in mid-2025 due to Available in: Lightning
changes in WhatsApp's API, and as of July 1, 2024, you can’t create new standard WhatsApp Experience. View required
editions.
channels. To avoid service interruptions, upgrade your standard WhatsApp channels to
enhanced channels before July 30, 2025. For help, see Considerations for Upgrading or This Standard
Migrating to Enhanced WhatsApp. article and
applies to: enhanced
Important: We highly recommend designating separate numbers for sandbox and
WhatsApp
production. A number can be associated with only one org at a time, and moving a number channels
from sandbox to production or sandbox to sandbox takes some time. Using separate numbers
makes your channel rollout easier and gives you more freedom to experiment in your sandbox This Messaging
in the future. article for In-App,
doesn’t Messaging
Action Instructions apply to: for Web,
standard
(Optional) Set up 1. Match your sandbox org licenses to your production org by refreshing and
Messaging in your your sandbox, creating a new sandbox, or using the license-matching enhanced
sandbox. Facebook
method.
Messenger,
2. Complete the steps in Get Started with Messaging in Service Cloud. standard
3. Create your WhatsApp channel. For standard channels, when you and
file your case with Salesforce Customer Support, request separate enhanced
numbers for sandbox and production. For enhanced channels, when SMS,
enhanced
you create your channel, just enter the number you designated for
Apple
sandbox testing.
Messages
for Business,
Test your channel in 1. Log into Salesforce as an agent. enhanced
sandbox or production.
2. From the app launcher, open the app that contains Messaging. This LINE, Bring
is usually the Service Console. Your Own
Channel,
3. In the Omni-Channel utility or sidebar, change your Omni-Channel and Bring
presence status so that you’re online and available to receive Your Own
messages. Channel for
4. From a separate WhatsApp account, send a message to the number CCaaS
associated with your channel.
5. Look for the incoming message in Omni-Channel. Click the check USER PERMISSIONS
mark icon to accept the message and open the chat window.
To send and receive
6. Exchange messages in the channel. Experiment with sending images, messages in Messaging:
files, and messaging components and test the auto-responses that • View Setup and
you’ve configured. Configuration
7. When you’re done, click End Chat. To end Messaging sessions:
• End Messaging Session

163
Provide Conversation Support with Messaging in Service Get Started with Apple Messages for Business in Service
Cloud Cloud

Action Instructions
(Optional) Switch from sandbox If you need to move your WhatsApp channel implementation or number from sandbox to production,
to production. here’s how. These steps also apply for a sandbox-to-sandbox move.
1. Create a change set to move your Messaging implementation from sandbox to production, or
manually repeat the setup steps in production.
2. If you couldn’t designate a separate number for your sandbox, move the number to a new
channel in production.
a. Standard channels: File a case with Salesforce Customer Support to move the number to a
new channel in production.
b. Enhanced channels: Designate a unique WABA for your sandbox and another for your
production org. In WhatsApp Business Manager, delete the phone number from the sandbox
org’s WABA and add the number to the production org’s WABA. This assigns the WABA a
new phone number ID that can be used in a new channel in production.

Refreshing a sandbox updates its org ID and therefore removes any enhanced WhatsApp channel’s
connection to its WhatsApp number. To associate the number with a new enhanced WhatsApp
channel in a different org, follow step 2b to delete the number from its current WABA and add it to
another WABA that you link to a new channel.

SEE ALSO:
Sandboxes: Staging Environments for Customizing and Testing

Get Started with Apple Messages for Business in Service Cloud


To create more ways to connect with your customers, add an Apple Messages for Business channel to Salesforce Messaging. With
dynamic message options, multimedia sharing, and Apple Pay, your customers can resolve issues, make purchases, and get personalized
help in a familiar, interactive messaging environment. If you’re new to Apple Messages for Business, we’ll walk you through setting up
an account.

Learn About Apple Messages Create Your Channel Customize the Console Experience
Compare Messaging Channel Capabilities Turn On Messaging in Service Cloud on Add Messaging to the Service Console on
in Service Cloud on page 9 page 27 page 40
Plan Your Apple Messages for Business Create an Apple Messages for Business Give Users Access to Messaging in Service
Customer Journey on page 166 Channel in Service Cloud on page 173 Cloud on page 28

164
Provide Conversation Support with Messaging in Service Get Started with Apple Messages for Business in Service
Cloud Cloud

Contacting Customers in Apple Messages Customize the Messaging Opt-In and Set Up Routing for Messaging Channels in
for Business on page 167 Opt-Out Experience on page 283 Service Cloud on page 31
Creating Interactive Content for Apple Route Apple Messages Inquiries by Intent
Messages for Business on page 169 and Group on page 182
Considerations for Apple Messages for
Business in Service Cloud on page 171

Add Apple Pay Add Interactive Content Extend Your Channel with Automation
Add Apple Pay to a Messaging Channel on Interactive Messaging Components on page Send Automated Messages in Enhanced
page 179 287 Messaging Channels on page 406
Create and Send Payment Requests in Get to Know the Messaging Component Using Enhanced Bots in Messaging Channels
Messaging Sessions on page 360 Builder on page 302 on page 418
Set Up a Flow to Send Payment Requests in Create and Send Secure Forms in Messaging Create a Flow to Link Individuals to
Messaging Sessions on page 365 Sessions on page 347 Messaging Sessions
Create and Send Authentication Requests Automatically Trigger an Action Based on
in Messaging Sessions on page 354 Detected Keywords
Share External Apps in Messaging Sessions
on page 368

Privacy and Ethics in Messaging Help Customers in Your Channel Messaging for Developers
Protect Customer Data and Privacy in Enhanced Messaging Channel Activation Messaging Object Model
Service Cloud Messaging on page 447 Checklist on page 279 Salesforce Object Reference Guide
Block Sensitive Data in Messaging Test Your Apple Messages for Business
Accessing Messaging and Voice Channel in Service Cloud on page 185
Conversation Data Message with Customers in the Service
Console on page 460
Activating and Deactivating Messaging
Channels in Service Cloud on page 282

165
Provide Conversation Support with Messaging in Service Plan Your Apple Messages for Business Customer Journey
Cloud

Plan Your Apple Messages for Business Customer Journey


While it’s tempting to jump into creating an enhanced Apple Messages for Business channel, take
EDITIONS
some time to plan your messaging strategy. We’ve provided sample questions to get you started.
Available in: Lightning
Planning Question Details Experience. View required
What are your goals for your Apple Messages Your goals determine many aspects of your editions.
for Business channel? channel setup, including routing and reusable This Enhanced
content. For ideas, see this worksheet published article Apple
by Apple. applies to: Messages
for Business
Where do you want customers to start an Apple Decide which channel entry points to activate.
channels
Messages conversation with your business? For example, do you want customers to see the
option to message you when they visit your This Messaging
website or open your mobile app? See article for In-App,
Contacting Customers in Apple Messages for doesn’t Messaging
Business on page 167. apply to: for Web,
standard
How do you want Apple Messages inquiries to Select a routing method and decide how to and
be routed to your support team, and what roles route different types of inquiries. For example, enhanced
would enhanced bots or AI agents play? route customers to different queues based on WhatsApp,
whether they clicked Tech Support or Change standard
Plans on your mobile app. See: and
enhanced
• Route Service Cloud Messaging Sessions
Facebook
with Omni-Channel Flows on page 33
Messenger,
• Route Apple Messages Inquiries by Intent standard
and Group on page 182 and
enhanced
What interactive content do you want service Apple requires Apple Messages for Business SMS,
reps to be able to send to customers? channels to provide a rich, interactive messaging enhanced
experience. In Salesforce, you can meet this LINE, Bring
requirement by creating messaging Your Own
components, whose formats include questions Channel,
with options, payment requests, and forms. and Bring
Service reps, Einstein bots, and AI agents can Your Own
send these components during a messaging Channel for
session. See Interactive Messaging Components CCaaS
on page 287.

What text-only reusable content do you want To show reps a list of text responses that they
service reps to be able to send to customers? can choose from, use quick text or suggested
replies. Quick text and suggested replies
standardize the content and tone of your
support team’s messages and save reps and
customers time. See:
• Standardize Responses with Quick Text
• Suggest Replies with Einstein Service Replies
and Reply Recommendations

166
Provide Conversation Support with Messaging in Service Contacting Customers in Apple Messages for Business
Cloud

Planning Question Details


What customizations do you want to make to protect customers’ Follow best practices for messaging data handling, such as setting
privacy and honor their data preferences? up sensitive data rules that mask credit card numbers or profanity.
See Protect Customer Data and Privacy in Service Cloud Messaging
on page 447.

Contacting Customers in Apple Messages for Business


If you want customers to message you in Apple Messages for Business, it’s helpful to understand
EDITIONS
the ways that they can do so. To make it easy for your customers to contact you, take advantage
of both native Apple and business-controlled entry points. Available in: Lightning
Experience. View required
editions.
What's an Entry Point?
This Enhanced
An entry point is a way for customers to start a conversation with your business. Think of it as the
article Apple
digital equivalent of walking into a store and being greeted by a friendly staff member. When a
applies to: Messages
customer uses an Apple Messages for Business entry point, it launches the Messages app on their
for Business
device with the compose screen open.
channels
Each entry point is powered by a URL that includes your Messages for Business ID. You can customize
This Messaging
this URL by including parameters on page 182 that route inquiries to a qualified service rep or queue.
article for In-App,
doesn’t Messaging
Native Apple Entry Points apply to: for Web,
standard
Apple provides these built-in features to let customers contact you. They include: and
• Place Card: A digital business card that appears when customers search for your business in enhanced
Apple Maps. WhatsApp,
standard
• Business Card: Similar to the Place Card, but it can appear in other Apple apps such as Contacts.
and
• Message Suggest: Suggests your business as a contact when customers enter text in the enhanced
Messages app or conduct a Google search. Facebook
Messenger,
standard
Business-Controlled Entry Points and
You, as a business, can create and control other entry points to Apple Messages for Business. Here enhanced
are some examples. SMS,
enhanced
• In your business’s mobile app or website, provide a link that opens the Messages app. LINE, Bring
• In your emails and social media profiles or posts, provide a link that opens the Messages app. Your Own
• Generate a QR code that opens the Messages app. Channel,
and Bring
• Use Near Field Communication (NFC) tags that customers can tap with their devices to open Your Own
the Messages app. Channel for
CCaaS

167
Provide Conversation Support with Messaging in Service Contacting Customers in Apple Messages for Business
Cloud

This image shows Apple Messages for Business entry points in a mobile app, website, and email. These entry points include the Apple
Messages icon and custom text, such as Message Us.

SEE ALSO:
Apple Documentation: Entry Points Overview
Start a Messaging Session with a Customer

168
Provide Conversation Support with Messaging in Service Creating Interactive Content for Apple Messages for Business
Cloud

Creating Interactive Content for Apple Messages for Business


Learn how to create a rich, interactive messaging experience in your Apple Messages for Business
EDITIONS
channel. Apple requires business channels to include interactive content, and in Salesforce, you
meet this requirement by creating messaging components. Available in: Lightning
Experience. View required
editions.
Save Time with Messaging Components
This Enhanced
With messaging components, your support team can efficiently request payments, verify a customer’s
article Apple
identity, or gather customer details and preferences during messaging sessions. Users with permission
applies to: Messages
create one or more components in the Messaging Component Builder in Setup. Service reps can
for Business
then send them during messaging sessions. You can also send components automatically at certain
channels
times—for example, when an order ships—and configure Einstein bots or AI agents to send them.
This Messaging
These messaging components are uniquely suited to Apple Messages for Business.
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

169
Provide Conversation Support with Messaging in Service Creating Interactive Content for Apple Messages for Business
Cloud

Question with options (1)


To standardize the way you gather information from customers, send a question with multiple clickable options. You can make these
options the same for everyone (static), or customer-specific (dynamic).
Time selector (2)
To reduce scheduling back-and-forth, send a question with a clickable list of your business’s available time slots. A custom Apex
class that you create provides the time slots.
Form (3)
To save customer preferences, send a secure form with a welcome screen, one or more questions, and a confirmation screen.
Submitted responses are captured in a Salesforce record.
Payment (4)
To prompt customers to make a payment during a messaging session, send an Apple Pay request.
Authentication (5)
To verify a customer’s identity, send a prompt to log in to an authentication provider.
Enhanced link
To share links in a familiar format, send a link with a custom image and link text.
Notification
To keep customers updated on their inquiries without occupying service reps’ time, use a flow to send a link or text-only message
at specific times. For example, send a shipping update or notify a customer that their case is in progress.
Custom
Share an external app in messaging sessions, such as your business’s mobile app.

170
Provide Conversation Support with Messaging in Service Considerations for Apple Messages for Business in Service
Cloud Cloud

Beyond Messaging Components


In Apple Messages for Business channels, service reps can also send and receive images, videos, audio messages, and multiple types of
files.

SEE ALSO:
Interactive Messaging Components
Get to Know the Messaging Component Builder
Send Images and Files in Messaging Sessions
Send Messaging Components in Messaging Sessions

Considerations for Apple Messages for Business in Service Cloud


With an Apple Messages for Business channel, you can help customers using Apple’s native Messages
EDITIONS
app. Review important considerations before creating an Apple Messages for Business channel in
Service Cloud. Available in: Lightning
Experience. View required
editions.
Appropriate Use
This Enhanced
When using Apple Messages for Business with Salesforce Messaging, follow Apple policies on live
article Apple
support, unsolicited messages, deleted conversations, trigger words, PII, privacy policies, and
applies to: Messages
prohibited use cases. See the Apple documentation: Appendix A—Policies.
for Business
channels
Migrating from Another Messaging Service Provider This Messaging
If you’re already communicating with customers over Apple Messages for Business through a article for In-App,
different messaging service provider (MSP), you can’t import their conversation history or contact doesn’t Messaging
ID into Salesforce. However, you can change the MSP of your Apple Messages for Business account apply to: for Web,
standard
to Salesforce Messaging.
and
enhanced
Individual-Object Linking WhatsApp,
standard
To implement individual-object linking for an Apple Messages for Business channel, use the and
Messaging Platform Key as the unique identifier that links a messaging user record for an Apple enhanced
Messages for Business channel to a contact record. See Create a Flow to Link Individuals to Messaging Facebook
Sessions. Messenger,
standard
and
Content Sharing enhanced
You can send several types of content in Apple Messages for Business channels. SMS,
enhanced
LINE, Bring
Content Type Supported?
Your Own
Text Yes, up to 50,000 characters Channel,
and Bring
Emojis Yes Your Own
Channel for
CCaaS

171
Provide Conversation Support with Messaging in Service Considerations for Apple Messages for Business in Service
Cloud Cloud

Content Type Supported?


Images Yes, up to 100 MB
File types: .png, .jpg, .jpeg, .bmp, .tiff

Animated images (GIFs) Yes, for inbound only

Stickers Yes, for inbound only

Documents Yes, up to 100 MB


File types: .txt, .pdf, .psd, .rtf, .xls, .xlsx, .doc, .docx, .ppt, .json, .pptx, .pps, .ppsx, .csv, .xml, .pkpass, .ics,
.exe, .zip, .usdz

Audio files Yes, up to 100 MB


File types: .mp3, .caf

Video files Yes, up to 100 MB


File types: .mov, .mp4, .3gp

Apple Messages for Business channels have these limitations related to sharing content.
• If a customer sends unsupported content such as an .mpeg file, an error message notifies agents that the customer sent a message
with unsupported content. Agents can ask the customer to share the information another way.
• When a customer sends an image, the agent sees a preview in the Service Console and can download the image. File previews aren’t
supported, but agents can download files.
• Agents see customers’ tapback reactions, but can’t add their own.

172
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

Create an Apple Messages for Business Channel in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article Apple
applies to: Messages
for Business
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

173
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

Create a Messaging channel where your support team helps customers using Apple Messages for
USER PERMISSIONS
Business. Customers message your business from the Apple Messages app, and service reps reply
from the Service Console. To set up Messaging:
• Configure Messaging
To authorize Apple
Messages for Business:
• Customize Application
AND
Manage Auth. Providers

To view Apple Messages for


Business channels:
• View Setup and
Configuration
To create Apple Messages
for Business channels:
• System Administrator
AND Configure
Messaging
OR
Configure Messaging
AND Customize
Application AND
Manage Auth. Providers
AND View Setup and
Configuration AND
Modify All Data

Stage 1: Plan the Customer Journey


Plan your messaging strategy by answering key questions about your goals for the channel.
See Plan Your Apple Messages for Business Customer Journey on page 166.

Stage 2: Create a Channel with a Test Account


Create a channel in Setup that’s linked to a test Apple Messages for Business account. With a test account, you can perfect the end user
and service rep experience before going live. You’ll use the test channel to record a video of the user experience for Apple to review.
1. In Setup in a sandbox or production org, enter Messaging Settings in the Quick Find box and select Messaging Settings.
2. In the Channels section, click New Channel, click Start, and then select Apple Messages for Business.
3. Click Go to Apple Business Register.

174
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

4. In Apple Business Register, log in and select Messages for Business Accounts.
5. Create an Apple Messages for Business account.
a. When prompted for an account type, expand the advanced options and select Internal test account instead of Commercial
account.
b. In the Messaging Platform section, select Salesforce Messaging. If a different service provider is listed, remove it and add
Salesforce Messaging.

6. Wait for Apple to approve your account changes, which can take up to a day. When you see a Test your messaging service
provider connection link in your account settings in Apple Business Register, your changes are approved.
7. Click Test your messaging service provider connection.
8. To finish creating your channel in Salesforce, click Connect.

175
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

9. Click Install channel and log in to Salesforce.


10. In the channel setup flow that opens, verify your channel name and Messages for Business Account ID. We recommend adding
“Test” to the channel name, which is visible only in Setup.
11. To use an Omni-Channel flow to control how messages are routed (recommended), select Set up routing later.
12. Complete the flow. You can now find your test channel in the list on the Messaging Settings page.

Stage 3: Implement the Customer Journey


Configure your channel’s auto-responses and select your routing preferences according to your plan. Then add customizations to make
the messaging experience unique.
1. In Setup, enter Messaging Settings in the Quick Find box and select Messaging Settings.
2. Click the down arrow to open your channel’s action menu and select Edit.
3. In the Routing section, connect your channel to an Omni-Channel flow or queue.
a. If you created an Omni-Channel flow, select a routing type of Omni-Flow and select your flow and fallback queue.
b. If you created a routing configuration, select a routing type of Omni-Queue and select your queue.

4. In the Automated Responses section, add language-specific consent keywords and responses and save your changes.
5. Create a library of messaging components that service reps can send to customers. To meet Apple standards, your channel must
include some interactive content via messaging components. For help with this and other customizations, such as sensitive data
rules and auto-responses, see Increase Messaging Productivity on page 273.

Stage 4: Activate Your Test Channel


Activate your channel for testing. Because you’re using an internal test account, customers can’t contact you in this channel.
1. In Setup, enter Messaging Settings in the Quick Find box and select Messaging Settings.
2. Click the name of your Apple Messages for Business test channel.
3. Click Activate Channel at the top of the channel page.
4. Review the activation checklist and verify that you completed it, and then click Activate.

Stage 5: Complete the Apple Experience Review


After you customize your channel, it’s time to complete the Apple experience review process, in which Apple reviews a recorded video
of your channel’s end user experience. The experience review typically takes 1 to 2 weeks.
1. For steps to record the video, see Experience Quality Assurance in the Apple documentation.

176
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

2. Submit your video to your Salesforce account team, who then share it with Apple for review.
3. If you receive feedback, address it and send an updated video to your Salesforce account team.

Stage 6: Create a Channel with a Commercial Account


After you address all feedback from the experience review, create your production channel.

Tip: If you created your test channel in a sandbox, use a change set to move your messaging configurations, such as messaging
components, to production.
1. In Setup, enter Messaging Settings in the Quick Find box and select Messaging Settings.
2. In the Channels section, click New Channel, click Start, and then select Apple Messages for Business.
3. Click Go to Apple Business Register.
4. In Apple Business Register, log in and select Messages for Business Accounts.
5. Create a Messages for Business account, or select one to update. When prompted for an account type, leave Commercial account
selected.
6. Complete or update your account details.
a. Click Get started, and review and accept the Messages for Business policies.
b. Enter your details in the Account Applicant section, and select the commercial account.
c. Provide your business’s contact information and location details.
d. Enter a response time, which is an estimate of your response time to customer messages.
e. Set the response hours, which define the hours during which your business actively responds to messages.
f. Review and verify the compliance requirements.
g. Upload your brand logo as a 1,024-pixel square.
h. Upload a wide logo and select your colors, and review your wide logo.

7. In the Messaging Platform section, select Salesforce Messaging.


8. Wait for Apple to approve your account changes, which can take up to a day. When you see a Test your messaging service
provider connection link in your account settings in Apple Business Register, your changes are approved.
9. Click Test your messaging service provider connection.
10. To finish creating your channel in Salesforce, click Connect.
11. Click Install channel and log in to Salesforce.
12. In the channel setup flow that opens, verify your channel name and Messages for Business Account ID. Customize the channel name,
using a different name than your test channel. The name is visible only in Setup.
13. To use an Omni-Channel flow to control how messages are routed (recommended), select Set up routing later and complete the
flow.
You can now find your test channel in the list on the Messaging Settings page.
14. Complete the steps in Stage 3: Implement the Customer Journey to configure routing and auto-responses and customize your
channel.
After creating your channel, train your support team on helping customers in the Apple Messages for Business channel. Share this
resource with them, which explains how to send different types of messages in enhanced Messaging channels: Message with Customers
in the Service Console on page 460.

177
Provide Conversation Support with Messaging in Service Create an Apple Messages for Business Channel in Service
Cloud Cloud

Stage 7: Go Live
After the experience review is complete, activate your channel in Setup and then activate your entry points. During this phase, you can
request help from Apple with any final account adjustments.
1. In Setup, enter Messaging Settings in the Quick Find box and select Messaging Settings.
2. Click the name of your Apple Messages for Business channel.
3. Click Activate Channel at the top of the channel page.
4. Review the activation checklist and verify that you completed it, and then click Activate.
5. Activate any entry points that you planned to use. For example, implement Message Suggest or add an Apple Messages link to your
website or mobile app. For help, see Ready to Launch in the Apple documentation.
You’ve done it! After your channel and entry points are activated, inquiries sent to your business in Apple Messages are routed to your
support team.

178
Provide Conversation Support with Messaging in Service Add Apple Pay to a Messaging Channel
Cloud

Add Apple Pay to a Messaging Channel


To allow agents to request payments during messaging sessions, add Apple Pay to your enhanced
EDITIONS
Apple Messages for Business channel.
Available in: Lightning
Experience. View required
Step 1: Set Up Apple Pay
editions.
To get started, set up Apple Pay in your Apple settings.
This Enhanced
1. If you haven’t done so yet, set up Apple Pay. For help, see the Apple documentation: Setting article Apple
Up Apple Pay. applies to: Messages
2. Add your merchant information to your Messages for Business account. for Business
channels
a. Go to register.apple.com and sign in with the Apple ID of the administrator or technical
contact for the Messages for Business account. This Messaging
article for In-App,
b. Navigate to your company's Messages for Business accounts and find the business account.
doesn’t Messaging
c. Under Optional Integrations, find the Apple Pay section. apply to: for Web,
d. Next to Apple Pay Merchant ID, click Edit. standard
and
e. Enter the Apple Pay Merchant ID, which you created when you set up Apple Pay. enhanced
f. Click Done. WhatsApp,
standard
Note: An Apple Pay Merchant ID can be used with multiple Messages for Business accounts, and
but each Messages for Business account can have only one associated Apple Pay Merchant enhanced
ID. Facebook
Messenger,
standard
Step 2: Import Your Merchant Identity Certificate and
enhanced
Import your merchant identity certificate into your Salesforce org. This certificate is generated when SMS,
you set up Apple Pay. enhanced
1. Download your certificate in Apple Pay. LINE, Bring
Your Own
a. Go to developer.apple.com/account.
Channel,
b. Select Certificates under Certificates, Identifiers & Profiles. and Bring
Your Own
c. Click on the relevant merchant certificate, or click the + to create a new certificate.
Channel for
d. Click Download. CCaaS

2. Convert the certificate from .cer to Java Keystore (.jks) format.


a. Convert the .cer file to a .p12 file. Mac users can do this by importing the file into Keychain
USER PERMISSIONS
and exporting it as a .p12 file. To set up and edit
b. Convert the .p12 file to a .jks file. Messaging channels:
• Configure Messaging
3. In Setup, go to the Certificate and Key Management page.
To view channels:
4. Click Import from a Keystore. • View Setup and
Configuration
5. Select your .jks certificate file and enter the keystore password.
6. Click Save.

179
Provide Conversation Support with Messaging in Service Add Apple Pay to a Messaging Channel
Cloud

Step 3: Update Your Messaging Channel Settings


After you import your certificate, add Apple Pay to your enhanced Apple Messages for Business channel.
If you’re using one Apple Messages for Business channel to handle transactions for multiple brands, keep in mind that you can add only
one Apple Pay configuration per channel. This means that all payment requests that occur in the channel will show the merchant name
listed in your Apple Pay account.
1. In Setup, go to the Messaging Settings page.
2. Click the name of your enhanced Apple Messages for Business channel.
3. In the Apple Pay section, click Add.
4. Select the Merchant Identity Certificate that you imported in Setup.
5. Enter your Apple Merchant ID. Find this ID on the Certificates, Identifiers & Profiles page in your Apple (not Salesforce) settings.
6. Enter your merchant name, which appears on your payment requests.
7. Click Save.
A new entry is now visible in the Apple Pay section of your channel settings.
8. Verify your merchant domain with Apple.
a. In the Apple Pay section of your channel settings, click the down arrow to show the action menu and click Verify Domain.
b. In the window that appears, copy the domain provided and save it to your notes. You will need this domain later in the setup
process, when you create a payment messaging component.
c. In a new browser tab, go to developer.apple.com.
d. Click Identifiers.
e. Click App IDs in the top right, and select Merchant IDs.
f. Click your merchant ID.
g. Under Merchant Domains, click Add Domain.
h. Paste the domain name that you copied earlier from Salesforce.
i. Click Save, and then click Download to download the .txt verification file. Leave your browser tab open.
j. Back in your Salesforce browser tab, click Upload Files and upload the file from Apple. Then, click Done.
k. Return to your Apple browser tab, and click Verify.
l. Click View Identifier at the top of the page to return to your merchant ID page. Under Merchant Domains, you can now see
the newly added domain, as well as its expiration date.

Important: Merchant domains in Apple expire about every six months. Apple notifies you when a domain is about to expire. For
Apple Pay to continue working in your Apple Messages for Business channel, you must repeat this domain verification process
periodically, before your domain expires.

Step 4: Create an Apex Class to Process Payments


On the Apex Classes page in Setup, create an Apex class to facilitate payment processing. When a customer makes a requested payment,
this Apex class sends a payment token to the payment provider (Apple Pay) so the payment can be processed.
For details and an example, see ProcessPaymentHandler Interface.

180
Provide Conversation Support with Messaging in Service Add Apple Pay to a Messaging Channel
Cloud

Step 5: Create a Payment Messaging Component, Apex Classes, and Flow


Now that you’ve completed the preparation steps, create a payment messaging component and an accompanying flow. Agents run
the flow in the Service Console to send the component to customers. Customers click the component to view the request details and
make their payment. Add a series of Apex classes to control the information that appears in the component.
1. Create a payment messaging component that agents can send in messaging sessions. See Create and Send Payment Requests in
Messaging Sessions.
2. Add a series of payment-related Apex classes, create a flow, and use it to request payments from customers. See Set Up a Flow to
Send Payment Requests in Messaging Sessions.

181
Provide Conversation Support with Messaging in Service Route Apple Messages Inquiries by Intent and Group
Cloud

Route Apple Messages Inquiries by Intent and Group


Provide more efficient, personalized service by routing inquiries sent in Apple Messages based on
EDITIONS
their origin. For example, if your mobile app includes two buttons—”Get Tech Support” and “Get
Help Changing Plans”—route customers to your support team if they click the first button, and to Available in: Lightning
your sales team if they click the second button. Experience. View required
When you add a custom button to a mobile app or website that lets customers contact you in editions.
Apple Messages, you can add variables to the button link that give Salesforce clue’s about the
This Enhanced
conversation’s origin. The intent variable represents the customer’s intent (such as getting tech Apple
article
support), while the group variable represents the department that’s best qualified to handle the applies to: Messages
inquiry. You can then reference one or both of these variables in an Omni-Channel flow so that for Business
messaging sessions with a particular intent are routed to a particular queue or bot experience. channels

This Messaging
Step 1: Set Up Your Links article for In-App,
doesn’t Messaging
Configure a link that leads to your Apple Messages for Business channel, and add the link to a
apply to: for Web,
website or mobile app. standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To open, edit, or create a


flow in Flow Builder:
• Manage Flow
To set up and edit
Messaging channels:
• Configure Messaging
To view channels:
• View Setup and
Configuration

182
Provide Conversation Support with Messaging in Service Route Apple Messages Inquiries by Intent and Group
Cloud

Here’s an example link:


https://bcrw.apple.com/urn:biz:9c231233-d943-482a-b913-7c625ba19988?biz-intent-id=tech_question&biz-group-id=general_support&body=Get%20Tech%20Support
This example link includes the following variables.

Variable Value Variable Purpose


body Get%20Tech%20Support Defines the link text—in this case, Get Tech
Support.

biz-intent-id tech_question Represents the customer’s intent.

biz-group-id general_support Represents the department that’s best


qualified to handle the inquiry.

For details, see the Apple documentation: Group and Intent ID-based Routing.

Step 2: Configure Your Omni-Channel Flow


Design an Omni-Channel flow that routes messages based on intent ID, group ID, or both.
1. When creating your Apple Messages for Business channel, select a routing type of Omni-Flow and select the flow that will control
routing for your channel.
2. Update the Omni-Channel flow to include intent- or group-based routing.
a. Add two flow input variables named intentId and groupId.

b. Add flow decisions that reference these variables. For example, this decision is based on the intentId variable. The Default
Outcome can handle scenarios where the intentId is blank.

183
Provide Conversation Support with Messaging in Service Route Apple Messages Inquiries by Intent and Group
Cloud

Step 3: Map the Variables to Your Channel


Map the Intent and Group parameters to your flow variables.
1. On the Messaging Settings page, click the name of your Apple Messages for Business channel.
2. In the Parameter Mappings section, click New.
3. For Parameter, select Intent or Group, which are automatically available as standard parameters.
4. For Flow Variable Name, enter the name of the flow variable you created: intentId or groupId.
5. Save your changes.

When an Apple Messages for Business session is created in your channel in the future, it will be routed according to your flow’s logic.

184
Provide Conversation Support with Messaging in Service Test Your Apple Messages for Business Channel in Service
Cloud Cloud

Test Your Apple Messages for Business Channel in Service Cloud


Test your Apple Messages for Business channel to ensure that it’s working the way you expect.
EDITIONS
Using a sandbox is optional, but a good idea.
We highly recommend creating separate Apple Messages for Business accounts for sandbox and Available in: Lightning
production. Using separate accounts makes your channel rollout easier, and gives you the freedom Experience. View required
to experiment in your sandbox in the future. editions.

This Enhanced
Action Instructions article Apple
(Optional) Set up applies to: Messages
1. Match your sandbox org licenses to your production org by refreshing for Business
Messaging in your your sandbox, creating a new sandbox, or using the license-matching
sandbox. channels
method.
This Messaging
2. Complete the steps in Get Started with Messaging in Service Cloud.
article for In-App,
3. Create your Apple Messages for Business channel, using the account doesn’t Messaging
you designated for sandbox testing. apply to: for Web,
standard
Test your channel in and
1. Log into Salesforce as an agent.
sandbox or production. enhanced
2. From the app launcher, open the app that contains Messaging. This WhatsApp,
is usually the Service Console. standard
3. In the Omni-Channel utility or sidebar, change your Omni-Channel and
presence status so that you’re online and available to receive enhanced
Facebook
messages.
Messenger,
4. From a personal Apple Messages account, send a message to the standard
account associated with your channel. and
5. Look for the incoming message in Omni-Channel. Click the check enhanced
mark icon to accept the message and open the chat window. SMS,
enhanced
6. Exchange messages in the channel. Experiment with sending images, LINE, Bring
files, and messaging components, and test the auto-responses that Your Own
you’ve configured. Channel,
7. When you’re done, click End Chat. and Bring
Your Own
(Optional) Migrate Create a change set to move any Messaging configurations, such as Channel for
your changes from messaging components, to production or to another sandbox. Or, CCaaS
sandbox to manually repeat the setup steps in production, making sure not to use
production. the Apple Messages for Business account that you designated for sandbox USER PERMISSIONS
testing.
To send and receive
messages in Messaging:
• View Setup and
Configuration
To end Messaging sessions:
• End Messaging Session

185
Provide Conversation Support with Messaging in Service Create a LINE Messaging Channel in Service Cloud
Cloud

Create a LINE Messaging Channel in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article LINE
applies to: channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
Bring Your
Own
Channel,
and Bring
Your Own
Channel for
CCaaS

186
Provide Conversation Support with Messaging in Service Create a LINE Messaging Channel in Service Cloud
Cloud

Create an enhanced Messaging channel in Salesforce that's connected to the LINE messaging app,
USER PERMISSIONS
widely used in Japan. With a LINE channel, your support team can address inquiries sent over LINE
directly from the Service Console. To set up Messaging:
When an end user sends your business a message in LINE, Omni-Channel routes the message to a • Configure Messaging
bot or agent in Omni-Channel according to your preferences. Agents can send and receive images, To view Messaging
emoji, stickers, links, videos, and questions with clickable options. And admins can easily move LINE channels:
channels between Salesforce orgs, such as from a sandbox to production. • View Setup and
Configuration
To create Messaging
channels:
• System Administrator
AND Configure
Messaging
OR
Configure Messaging
AND Customize
Application AND
Manage Auth. Providers
AND View Setup and
Configuration AND
Modify All Data

187
Provide Conversation Support with Messaging in Service Step 1: Set Up a LINE Official Account
Cloud

IN THIS SECTION:
Considerations for LINE in Service Cloud
LINE lets businesses communicate with users of the LINE messaging app. Review important considerations for creating and managing
LINE channels in Service Cloud.

Step 1: Set Up a LINE Official Account


To help your customers over LINE, you need a LINE Official Account. You must also add yourself as a provider in your LINE settings. After
completing these tasks, you can connect your LINE account to Salesforce.
1. Create a LINE Official Account. For steps, see the LINE documentation.
2. In the LINE Official Account Manager, enable the Messaging API and create a provider.
a. In your account settings, go to the Messaging API section and enable the Messaging API.
b. When prompted, create a provider to represent your business.

3. In your account settings, copy the following values. You’ll need them when you set up your channel in Salesforce.
a. Channel Name: Equivalent to your Account Name in the LINE Official Account Manager
b. Channel ID: Found in the Messaging API section
c. Channel Secret: Found in the Messaging API section

4. Issue a channel access token in the LINE Developers Console. The token is used to verify that Salesforce has permission to use the
channel.
a. In the LINE Official Account Manager, go to the Messaging API section of your account settings.
b. Click the link to open the LINE Developers Console, and click the Messaging API tab.
c. In the Channel Access Token field, issue your token and then copy it. You’ll need it when you set up your channel in Salesforce.

Step 2: Prepare for Messaging in Salesforce


If LINE is your first Messaging channel in Salesforce, complete these key tasks to get started with Messaging.
1. Turn on Messaging on page 27.
2. Give users access to Messaging on page 28.
3. Configure your Omni-Channel message routing settings on page 31.
4. Add Messaging to the Service Console on page 40.

Step 3: Connect LINE to Salesforce


To send and receive LINE messages in Salesforce, create a LINE Messaging channel.
1. From Setup, enter Messaging in the Quick Find box, and then select Messaging Settings.
2. Click New Channel, then click Next.
3. Select LINE, then click Next.
4. Accept the terms and conditions, and click Next.
5. Enter the LINE channel name, ID, secret, and access token that you copied from your LINE settings, and click Next.

188
Provide Conversation Support with Messaging in Service Step 3: Connect LINE to Salesforce
Cloud

6. Choose your routing method, and then click Next.


a. To set up a basic routing solution from scratch, select Create a new queue. Queues and routing configurations don’t support
routing to bots.
b. To use an existing queue or an Omni-Channel flow, which supports bots and more complex routing logic, select Set up routing
later.

7. On the final screen, click Go to Channel Settings to add your routing preferences. If you already closed the setup flow, click your
channel's name on the Messaging Settings page.
a. On the channel record home page, click Edit.
b. In the Omni-Channel Routing section, select a routing type. Omni-Flow lets you route messages using an Omni-Channel flow,
and supports bots. Omni-Queue lets you route using a queue and routing configuration.
c. If you selected the Omni-Flow routing type, select a flow in the Flow Definition field and a back-up queue in the Fallback Queue
field.

189
Provide Conversation Support with Messaging in Service Step 4: Complete the Connection to LINE
Cloud

d. If you selected the Omni-Queue routing type, select a queue.


e. Save your changes.

Step 4: Complete the Connection to LINE


In the LINE Developers Console, provide an essential URL from Salesforce and update other settings.
1. On the channel record home page in Salesforce, in the LINE Connection section, copy the value in the Webhook URL field.

2. In a separate tab, go to the LINE Developers Console and find the Webhook URL field on the Messaging API tab.
While this field is also visible in the LINE Official Account Manager, the Developers Console contains additional settings that you
must update.

3. Paste the value into the Webhook URL field.


4. Click Verify below the field.
5. Select Use webhook.
6. (Recommended) On the Messaging API tab in the Developers Console, disable auto-reply messages and greeting messages. Because
you’ll configure your auto-responses in Salesforce, disabling these messages in LINE helps your customers avoid redundant or
conflicting auto-responses.

Step 5: Activate Your Channel


To start the flow of LINE messaging traffic into Salesforce, activate your channel in Setup.
1. Complete the tasks in the Channel Activation Checklist on page 279 to verify that your channel is ready for business. These tasks
include setting up sensitive data rules, auto-responses, and Einstein bots.
2. On the Messaging Settings page in Setup, click the name of your LINE channel. If you already have the channel record home open,
refresh the page.
3. At the top of the page, click Activate Channel.

190
Provide Conversation Support with Messaging in Service What's Next?
Cloud

What's Next?
When your channel is active, LINE messages are routed to your support team according to the queue or Omni-Channel flow that you
selected. Your work doesn’t need to end there, though. To get more out of your LINE channel, explore these resources.
• Increase Messaging Productivity on page 273
• Work with Messaging Data on page 446
• Message with Customers in the Service Console on page 460

Tip: If your channel is active but you’re not able to send or receive messages, double-check that you completed Step 4: Complete
the Connection to LINE. If this step isn’t completed, your channel won't function even if it's active.

Considerations for LINE in Service Cloud


LINE lets businesses communicate with users of the LINE messaging app. Review important
EDITIONS
considerations for creating and managing LINE channels in Service Cloud.
Available in: Lightning
Experience. View required
Content Sharing
editions.
You can send several types of content in LINE channels.
This Enhanced
article LINE
Content Type Limit
applies to: channels
Text and emoji 5000 characters. Some types of content, such
This Messaging
as Kanji and emoji, count as multiple characters.
article for In-App,
To learn more, see the LINE documentation.
doesn’t Messaging
Images 10 MB: .jpeg, .png apply to: for Web,
standard
Audio Inbound (customer to business) only. 25 MB: and
.mp4, .m4a enhanced
WhatsApp,
Video 25 MB: .mp4
standard
Questions with options 4 options for Buttons, 13 options for Quick and
Replies, 10 options for Card Carousel enhanced
Facebook
Messenger,
standard
Content sharing in LINE has these limitations:
and
• Agents and bots can receive audio messages, but they can’t send audio files or record and send enhanced
voice messages. SMS,
• Documents are not supported. enhanced
Apple
• Image, audio, and video file URLs can’t exceed 2000 characters.
Messages
• LINE channels don’t support sending GIFs, PDFs, or other documents in either direction. for Business,
• If a question with options includes too many options, or if an option is too long, the message Bring Your
may be sent as plain text. Own
Channel,
For details about which messaging components are supported in LINE, see Messaging Component
and Bring
Types and Formats on page 291. If you plan to offer messaging components in multiple languages, Your Own
see Translate Messaging Components into Your Customer’s Language on page 383. Channel for
CCaaS

191
Provide Conversation Support with Messaging in Service Considerations for LINE in Service Cloud
Cloud

Moving LINE Channels Between Salesforce Orgs


Follow these steps to move an active LINE channel from one Salesforce org to another. The steps apply for sandbox-to-sandbox,
sandbox-to-production, and production-to-production moves.
• In the source org, go to the channel record home page and deactivate the channel.
• Use a change set to migrate the channel to the destination org.
• In the destination org, find the Webhook URL field and copy the field value.
• In the LINE Developers Console, go to the Messaging API tab of your channel and paste the value into the Webhook URL field. Then,
click Verify.
• Return to the channel record home page in the destination org, and activate the channel.

Limitations
• The unsend feature in LINE isn’t supported in Salesforce. If an end user unsends a message in a LINE conversation, the message is
still visible in the conversation transcript in Salesforce.

192
Provide Conversation Support with Messaging in Service Create a Facebook Messenger Channel in Service Cloud
Cloud

Create a Facebook Messenger Channel in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Standard
article and
applies to: enhanced
Facebook
Messenger
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

193
Provide Conversation Support with Messaging in Service Create a Facebook Messenger Channel in Service Cloud
Cloud

Let customers communicate with your business using Facebook Messenger. Customers send
USER PERMISSIONS
messages to your Facebook page, and agents reply from the Service Console. To control how
incoming messages are routed, link an Omni-Channel flow or routing configuration to your Facebook To set up Messaging:
Messenger channel. • Configure Messaging

Important: Standard Facebook Messenger channels are scheduled for retirement, and we’re To view Facebook
limiting the ability to create standard channels. To avoid service interruptions, upgrade your Messenger channels:
• View Setup and
standard Facebook Messenger channels to enhanced channels before February 14, 2026.
Configuration
Enhanced Facebook Messenger offers many of the standard Facebook Messenger features
you love on page 198 plus session transfers, interactive messaging components, and enhanced To create Facebook
bot support. See Upgrading from Standard to Enhanced Messaging on page 275. Messenger channels
• System Administrator
Before you start, you need a Facebook account, Facebook username and password, and a Facebook AND Configure
page. Use this information to authenticate, or log in, to Facebook so that you can select the Facebook Messaging
pages to use with Messaging. You must be the administrator of the Facebook page to add the page OR
to Messaging.
Configure Messaging
1. From Setup in Lightning Experience, enter Messaging in the Quick Find box, and select AND Customize
Messaging Settings. Application AND
Manage Auth. Providers
2. In the Channels section, click New Channel > Start > Facebook Messenger. AND View Setup and
3. Choose a channel type of Enhanced (recommended) or standard. Because new features are Configuration AND
available exclusively in enhanced channels going forward, we no longer recommend creating Modify All Data
standard channels. To authorize Facebook:
If you don’t see the option to select a type, the channel you’re creating will be an enhanced • Customize Application
AND Manage Auth.
channel.
Providers
4. Follow the prompts to log into Facebook and select a Facebook page to use with Messaging.
You can select only one Facebook page at a time.

5. After completing authentication, click Next.


6. In the Chat Acknowledgment field, enter a message that’s sent in response to a customer’s initial message. For example, thank the
customer and let them know you’re reviewing their message.

194
Provide Conversation Support with Messaging in Service Create a Facebook Messenger Channel in Service Cloud
Cloud

7. Click Next.
8. Choose how to route incoming messages to agents.
a. To set up a basic routing solution from scratch, select Create a new queue. The flow walks you through creating a queue and
routing configuration and adjusting agent messaging workload.
b. To use an existing queue or an Omni-Channel flow, which supports more complex routing logic and lets you route to bots, select
Set up routing later.

9. Complete and exit the flow.


10. If you selected Set up routing later, finish configuring your routing.
a. On the Messaging Settings page, find your new channel and click Edit in its action menu. Then, go to the Routing section.
b. (Enhanced channels) To route to an Omni-Channel flow, select the Omni-Flow routing type and select a flow and fallback queue.
To route to a queue, select the Omni-Queue routing type and select a queue.
c. (Standard channels) To route to an Omni-Channel flow, select Enable Advanced Routing and select a flow and fallback queue.
To route to a queue, select a queue.
d. Save your changes.

11. Now that you’ve set up your channel, take advantage of other features to customize the messaging experience for agents and
customers. Set up notifications for your channel, customize your opt-in and opt-out keywords, create custom auto-responses, add
an Einstein bot, and more. See Increase Messaging Productivity.

IN THIS SECTION:
Considerations for Facebook Messenger in Service Cloud
Review these considerations before creating a standard or enhanced Facebook Messenger channel.
Compare Standard and Enhanced Facebook Messenger Channel Capabilities
View a side-by-side comparison of standard and enhanced Facebook Messenger channels. Going forward, new features are available
exclusively in enhanced Facebook Messenger channels.
Test Your Facebook Messenger Channel in Service Cloud
Test your Facebook Messenger channel to ensure that it’s working the way you expect. Using a sandbox is optional, but a good idea.
Move Your Messaging Channels from Salesforce Classic to Lightning Experience
Messaging in Salesforce Classic depends on the LiveMessage managed package, while Messaging in Lightning Experience uses
standard Salesforce objects and features. Learn how to move your SMS or Facebook Messenger channels to Lightning Experience.

195
Provide Conversation Support with Messaging in Service Considerations for Facebook Messenger in Service Cloud
Cloud

Considerations for Facebook Messenger in Service Cloud


Review these considerations before creating a standard or enhanced Facebook Messenger channel.
EDITIONS
Important: Standard Facebook Messenger channels are scheduled for retirement, and we’re
limiting the ability to create standard channels. To avoid service interruptions, upgrade your Available in: Lightning
standard Facebook Messenger channels to enhanced channels before February 14, 2026. Experience. View required
editions.
Enhanced Facebook Messenger offers many of the standard Facebook Messenger features
you love on page 198 plus session transfers, interactive messaging components, and enhanced This Standard
bot support. See Upgrading from Standard to Enhanced Messaging on page 275. article and
applies to: enhanced
Facebook
General Considerations Messenger
• Third-party bots are supported with Facebook Messenger. To learn more, see Deploy Your Bot channels
to Your Channels. Messaging
This
• Facebook doesn’t allow a business to respond to an end user’s message that is more than 7 article for In-App,
days old. Businesses are encouraged to respond within 24 hours. doesn’t Messaging
• In standard Facebook Messenger channels, Salesforce Messaging uses the HUMAN_AGENT apply to: for Web,
standard
Facebook Message tag to ensure that you have 7 days to respond. In enhanced Facebook
and
Messenger channels, businesses should respond within 24 hours. To learn more, refer to the
enhanced
Facebook documentation: Message Tags.
WhatsApp,
• Conversations don’t end after a customer sends a stop keyword. Manually end conversations standard
with the End Chat button. and
• The following limitations exist related to Facebook Messenger’s automated response features: enhanced
SMS,
– In standard Facebook Messenger channels, automated responses configured in Facebook enhanced
Messenger—rather than the responses configured for your channel on the Messaging Apple
Settings page in Salesforce—aren’t visible to agents in Salesforce. For example, if a customer Messages
sends a message to your business that causes Facebook Messenger to send an automated for Business,
response, the agent can’t see the response in the conversation transcript. enhanced
– If a customer starts a conversation with your business by clicking an FAQ in the Facebook LINE, Bring
Messenger menu, a messaging session isn’t created in Salesforce. The customer must Your Own
manually enter and send a message for the session to be created and routed, but the FAQ Channel,
and automated response aren’t visible to agents. and Bring
Your Own
Channel for
CCaaS
High-Volume Messages
Facebook imposes a per-day rate limit of 200 times the number of people the business can message
using Facebook Messenger. Facebook also has a maximum send rate of 250 requests per second.
When a Facebook page experiences a high volume of messages over a short period or is sending or receiving messages with many
threads concurrently, Facebook may automatically change the page to a high-MPS (messages per second) page.
Pages that receive more than 40 MPS convert automatically to high-MPS pages and drop access to Facebook’s Page Inbox tool feature.
To manually enable the Page Inbox tool, page administrators can select Retain Access to Page Inbox in the Facebook Page settings.
To avoid conversion to a high-MPS page:
• Send your messages that aren’t time sensitive consistently throughout the day
• Don’t send large volumes of messages at the same time
See Pages with High Volume Messages in the Facebook developer documentation for more details.

196
Provide Conversation Support with Messaging in Service Considerations for Facebook Messenger in Service Cloud
Cloud

Enhanced Messaging for Facebook Messenger


Salesforce offers two types of Messaging channels: standard and enhanced. New features are available exclusively in enhanced channels,
and we’re phasing out the ability to create standard channels.
• If you didn’t create standard Messaging channels before the Summer ’24 release, you can’t create standard Facebook Messenger
channels. All Facebook Messenger channels that you create are enhanced channels.
• If you have one or more standard Facebook Messenger channels, you can convert them to enhanced channels in a simple upgrade
process. Upgrading is a one-way move, so you can’t change an enhanced channel to a standard channel. It’s also okay to have both
standard and enhanced channels in Salesforce, but they must be associated with different Facebook pages.
• In enhanced Facebook Messenger channels, customer messages larger than 9 KB are sent as attachments. Agents can click an
attachment in the Conversation component to view the message.
• Agent-initiated outbound messaging is in beta in standard Facebook Messenger channels. It’s fully supported in enhanced Facebook
Messenger channels.
• Automated outbound messaging is available only in standard Messaging channels, and isn’t supported in enhanced Facebook
Messenger channels. Any automatic notifications triggered by flows or processes aren’t sent in enhanced channels.
• If you turned on Messaging, and then later enabled enhanced domains, you must refresh Messaging to continue receiving messages
in enhanced channels. To do this, toggle Messaging off and on again on the Messaging Settings page in Setup. Your settings and
channels are preserved.

Content Sharing
You can send several types of content in Facebook Messenger channels. For a full list, see Compare Standard and Enhanced Facebook
Messenger Channel Capabilities. Enhanced Facebook Messenger channels support more content types than standard Facebook Messenger
channels.

SEE ALSO:
Upgrading from Standard to Enhanced Messaging
What’s Service Cloud Messaging?
Service Cloud Messaging Limits and Considerations
Test Your Facebook Messenger Channel in Service Cloud

197
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced Facebook Messenger
Cloud Channel Capabilities

Compare Standard and Enhanced Facebook Messenger Channel


Capabilities
View a side-by-side comparison of standard and enhanced Facebook Messenger channels. Going
EDITIONS
forward, new features are available exclusively in enhanced Facebook Messenger channels.

Important: Standard Facebook Messenger channels are scheduled for retirement, and we’re Available in: Lightning
limiting the ability to create standard channels. To avoid service interruptions, upgrade your Experience. View required
editions.
standard Facebook Messenger channels to enhanced channels before February 14, 2026.
Enhanced Facebook Messenger offers many of the standard Facebook Messenger features This Standard
you love plus session transfers, interactive messaging components, and enhanced bot support. article and
See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
Enhanced Facebook Messenger channels are built on our new conversation platform. The Facebook
Messenger
conversation platform also houses Service Cloud Voice, Messaging for In-App and Web, and all
channels
other enhanced Messaging channels, such as WhatsApp. This shared platform has several benefits.
• When we roll out a new feature, it’s often shared across all channels on the conversation platform. This Messaging
Agents get a consistent experience, regardless of channel. article for In-App,
doesn’t Messaging
• These channels are designed to scale beyond the customer support use case. for Web,
apply to:
standard
Capability Standard Facebook Enhanced Facebook and
Messenger Messenger enhanced
Setup and Routing WhatsApp,
standard
Automated channel setup No Yes and
enhanced
Can upgrade from standard N/A Yes SMS,
channels enhanced
Omni-Channel Flow routing Yes Yes Apple
Messages
Queue-based routing Yes Yes for Business,
enhanced
Enhanced routing No Yes LINE, Bring
Tab-based capacity Yes Yes Your Own
Channel,
Status-based capacity No Yes and Bring
Your Own
Available with Sales Cloud Yes Yes
Channel for
Messaging Session Start and End CCaaS

Customer can start session Yes Yes

Agent can start session Yes, via the Start Conversation Yes, via the Send Message
quick action (beta) global action

Automated outbound Yes Yes


messages

Agent can end session Yes Yes

Agent can mark session No Yes


inactive

198
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced Facebook Messenger
Cloud Channel Capabilities

Capability Standard Facebook Messenger Enhanced Facebook Messenger


Available session statuses New, Waiting, Active, Ended New, Consent, Waiting, Active, Inactive,
Ended, Error

Customer Experience

Typing indicator: customer side No Yes

Typing indicator: agent side No No

Read receipts: customer side No No

Read receipts: agent side No No

Delivered receipts: customer side No Yes

Delivered receipts: agent side No Yes

Desktop application support Yes Yes

Agent Experience

Quick text Yes Yes

Message templates No Yes

Einstein recommended replies No Yes

Agent-to-agent transfer No Yes

Agent-to-flow transfer No Yes

Agent-to-queue transfer No Yes

Flag raise No Yes

Supervisor whisper to agents No Yes

Conversation transcripts Yes Yes. When a channel is upgraded from


standard to enhanced, the Enhanced
Conversation component doesn't show
messages that were exchanged with the
customer before the upgrade. Agents must
open individual messaging session records
to see them. In the first post-upgrade
conversation with a customer, the agent
can check the customer's most recent
messaging sessions in the channel to learn
what was discussed.

After-conversation work timer Yes Yes

Compatible with AI agents No Yes

Compatible with Einstein Bots Yes, in Lightning Experience only Yes

Channel-object linking Yes Yes

199
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced Facebook Messenger
Cloud Channel Capabilities

Capability Standard Facebook Messenger Enhanced Facebook Messenger


Individual-object linking Yes Yes

Channel menu Yes Yes

Content Sharing

File sharing Yes Yes

Text Yes, up to 2,000 characters Yes, up to 2,000 characters

Emoji Yes Yes

Images Yes, up to 25 MB: .jpg, .jpeg, .png Yes, up to 25 MB: .jpg, .jpeg, .png, .bmp, .tiff

Documents No Yes, up to 25 MB: .txt, .pdf, .psd, .rtf, .xls, .xml,


.exe, .zip. When agents send a PDF,
customers must download the file to open
it.

Audio files No Yes, up to 25 MB: .mp3

Audio message recorder with playback No Yes

Video files No Yes, up to 25 MB: .mov, .mp4, .3gp

GIFs Yes Yes, inbound only

Enhanced link messaging components No Yes

Question with options messaging No Yes


components

Time selector messaging components No Yes

Auto-response messaging components No No

Form messaging components No Yes (plain text only)

Notification messaging components No Yes (plain text only, no flow support)

Payment messaging components No Yes (plain text only)

Authentication messaging components No Yes (plain text only)

Custom messaging components No Yes (plain text only)

Right-to-left languages No Yes

Automated Responses

Conversation acknowledgment Yes Yes

Agent accept Yes Yes

After-hours response Yes, in Salesforce Classic only No

Inactive conversation No No

End session Yes Yes

200
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced Facebook Messenger
Cloud Channel Capabilities

Capability Standard Facebook Messenger Enhanced Facebook Messenger


Security and Consent Management

Sensitive data rules Yes Yes

Encryption at rest Yes Yes

Channel consent type: Implicit opt-in Yes Yes

Channel consent type: Explicit opt-in No Yes

Channel consent type: Double opt-in No Yes

Customers can opt out Yes Yes

SEE ALSO:
Upgrading from Standard to Enhanced Messaging
Considerations for Facebook Messenger in Service Cloud
Create a Facebook Messenger Channel in Service Cloud

201
Provide Conversation Support with Messaging in Service Test Your Facebook Messenger Channel in Service Cloud
Cloud

Test Your Facebook Messenger Channel in Service Cloud


Test your Facebook Messenger channel to ensure that it’s working the way you expect. Using a
EDITIONS
sandbox is optional, but a good idea.

Important: Standard Facebook Messenger channels are scheduled for retirement, and we’re Available in: Lightning
limiting the ability to create standard channels. To avoid service interruptions, upgrade your Experience. View required
editions.
standard Facebook Messenger channels to enhanced channels before February 14, 2026.
Enhanced Facebook Messenger offers many of the standard Facebook Messenger features This Standard
you love on page 198 plus session transfers, interactive messaging components, and enhanced article and
bot support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
We recommend creating a separate Facebook page for testing purposes that you associate with a Facebook
Messenger
sandbox. This way, even after your channel is live in production, you can use your sandbox to test
channels
further changes.
A Facebook page can technically be associated with messaging channels in more than one Salesforce This Messaging
org. However, we don’t recommend linking the same Facebook page to both your sandbox and article for In-App,
doesn’t Messaging
production orgs. Doing so can lead to duplicate auto-responses and a confusing customer
apply to: for Web,
experience.
standard
and
Action Instructions enhanced
(Optional) Set up WhatsApp,
1. Contact your account executive for the Digital Engagement add-on
Messaging in your standard
SKU. and
sandbox.
2. Match your sandbox org licenses to your production org by refreshing enhanced
your sandbox, creating a new sandbox, or using the license-matching SMS,
method. enhanced
Apple
3. Complete the steps in Get Started with Messaging in Service Cloud.
Messages
for Business,
Test your channel in 1. Log into Salesforce as an agent. enhanced
sandbox or production. LINE, Bring
2. From the app launcher, open the app that contains Messaging. This
Your Own
is usually the Service Console.
Channel,
3. In the Omni-Channel utility or sidebar, change your Omni-Channel and Bring
presence status so that you’re online and available to receive Your Own
messages. Channel for
4. In another browser, log into a Facebook account that’s not associated CCaaS
with your channel.
5. In Facebook Messenger, send a message to the Facebook page that USER PERMISSIONS
is associated with your channel.
To send and receive
6. Look for the incoming message in Omni-Channel. Click the check messages in Messaging:
mark icon to accept the message and open the chat window. • View Setup and
Configuration
7. Exchange messages in the channel. Experiment with sending images,
files, and quick text, and test the auto-responses that you’ve To end Messaging sessions:
configured. • End Messaging Session

8. When you’re done, click End Chat.

202
Provide Conversation Support with Messaging in Service Test Your Facebook Messenger Channel in Service Cloud
Cloud

Action Instructions
(Optional) Switch from sandbox If you need to move your Facebook Messenger channel implementation or number from sandbox
to production. to production, or from sandbox to another sandbox, here’s how.
1. Create a change set to move your Messaging implementation from sandbox to production, or
manually repeat the setup steps in production.
2. If you didn’t designate a separate Facebook page for your sandbox, move the page to production.
a. Log in to Facebook and navigate to the Facebook page that you want to migrate.
b. Select Settings > Advanced Messaging.
c. Under Connected Apps, select Remove next to the Salesforce Service Cloud listing.
d. Log in to your Salesforce production org.
e. In Setup, enter Messaging in the Quick Find box, and select Messaging Settings.
f. Click New Channel and add the Facebook page as a channel.

SEE ALSO:
Sandboxes: Staging Environments for Customizing and Testing
Change Sets

203
Provide Conversation Support with Messaging in Service Move Your Messaging Channels from Salesforce Classic to
Cloud Lightning Experience

Move Your Messaging Channels from Salesforce Classic to Lightning


Experience
Messaging in Salesforce Classic depends on the LiveMessage managed package, while Messaging
EDITIONS
in Lightning Experience uses standard Salesforce objects and features. Learn how to move your
SMS or Facebook Messenger channels to Lightning Experience. Available in: Lightning
Important: LiveMessage in Salesforce Classic and Digital Engagement in Lightning Experience Experience. View required
editions.
can’t run concurrently in the same production org. We recommended testing a complete
sandbox implementation of Messaging in Lightning Experience before you complete the This Standard
transition. article and
1. Get Digital Engagement. applies to: enhanced
SMS
a. To access Messaging in Lightning Experience, purchase the Digital Engagement SKU. Contact channels
your Salesforce account executive to learn more.
This Messaging
b. Log into your production org to verify that Digital Engagement has been added. From for In-App,
article
Setup, enter Company Information in the Quick Find box, and select Company Messaging
doesn’t
Information. Verify that the Messaging and Service Cloud User licenses are listed and reflect for Web,
apply to:
the total number of licenses that you purchased. standard
and
2. (Optional) Set up Messaging in a sandbox org. For help, see Test Your SMS Channel in Service
enhanced
Cloud and Test Your Facebook Messenger Channel in Service Cloud. WhatsApp,
3. Set up messaging permissions and turn on Messaging. For help, see Get Started with Messaging standard
in Service Cloud. and
enhanced
4. File a case in Salesforce Help to migrate your messaging channels from Salesforce Classic to
Facebook
Lightning Experience.
Messenger,
Note: Filing a case simply lays the groundwork for the migration; it doesn't automatically enhanced
switch your implementation to Lightning. Apple
Messages
Include this information in your case: for Business,
• Topic: Service Cloud enhanced
LINE, Bring
• Category: Messaging
Your Own
• Subject: Lightning Migration for <Organization Name> Channel,
• Org ID of the org that you want to migrate to Lightning Experience and Bring
• (For SMS channels) Every phone number (long code and short code) that you want to Your Own
Channel for
migrate. Indicate whether you want to seek exceptions or enable more numbers.
CCaaS
Salesforce sets up your phone numbers in Lightning Experience within 72 business hours. We'll
give you information about the next steps.
After you file your case, continue preparing your Messaging configuration in Lightning Experience (steps 5 and 6) while you wait
for your channels to be migrated. When your case is closed, your phone numbers appear on the Messaging Settings page in Lightning
Experience, but messages continue to be routed through Salesforce Classic. When you're ready to switch to Lightning Experience
routing, move on to step 7.

5. Create your channels.


6. Configure routing in Omni-Channel. Skip this step if you currently use Omni-Channel for LiveMessage. But if you use the LiveMessage
widget to monitor your queues, you must set up Omni-Channel.

204
Provide Conversation Support with Messaging in Service Move Your Messaging Channels from Salesforce Classic to
Cloud Lightning Experience

a. Follow the instructions in Omni-Channel for Administrators. Assign the Messaging Session object to your queue.

Note: The LiveMessage session (Installed Package: LiveMessage for Salesforce) object is a remnant of Classic LiveMessage.
You can ignore it.

7. Convert your automated triggered messages to messaging notifications. For instructions, see Set Up Automatic Message Notifications.
8. Copy or document any processes and data that reference classic LiveMessage’s custom objects. While this step isn't required, the
information can be useful. After messaging traffic is cut over and your classic LiveMessage licenses expire, access to its custom
objects, data, and associated processes is blocked.
9. Important: Everything beyond this point can affect your service. Proceed only when you’re ready to fully migrate to Messaging
in Lightning Experience.
File a new case in Salesforce Help to switch SMS traffic from classic LiveMessage to Messaging in Lightning Experience.
Include this information in your case:
• Topic: Service Cloud
• Category: Messaging
• Subject: Lightning Migration for <Organization Name>
• Org ID of the org that you want to migrate. Specify that you must schedule the cutover of your numbers from classic LiveMessage
to Lightning Experience.
• Every phone number that you want to migrate, including long code and short code numbers. Indicate whether you plan to seek
exceptions or want to enable more numbers.
When your case is accepted, a support agent offers you a few time slot options for the conversion. When the conversion occurs
during your scheduled time slot, messaging traffic moves to your new Lightning Omni-Channel queue. It can take up to 4 hours for
carriers to accept the traffic routing updates. In the meantime, check both consoles for message delivery.

10. Migrate your Facebook channels.


a. If your Facebook channel is live in Salesforce Classic, remove the association between your Facebook page and the LiveMessage
app.
a. Log in to Facebook.
b. Select the Facebook page that you want to migrate.
c. Navigate to the page setup screen and remove the Facebook page from the LiveMessage app.

b. Associate your Facebook page with your Lightning org. For help, see Create a Facebook Messenger Channel in Service Cloud.

11. Change your Omni-Channel configuration. If you already use Omni-Channel in Salesforce Classic, update your queue configurations
and swap out LiveMessage Session (Installed Package: LiveMessage for Salesforce) for Messaging Session. Omni-Channel doesn't
work properly if you have both Salesforce Classic and Lightning Experience configured to use it.

SEE ALSO:
Compare Messaging Channel Capabilities in Service Cloud
What’s Service Cloud Messaging?

205
Provide Conversation Support with Messaging in Service Set Up SMS Channels in Service Cloud
Cloud

Set Up SMS Channels in Service Cloud


Communicate with customers over text using a new or existing number, and set up automation
EDITIONS
to send individual and mass updates over text. SMS channels in Messaging are available for long
codes, toll-free long codes (US and Canada), and short codes (US and Canada). Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article and
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
SMS
channels
IN THIS SECTION:
Compare Standard and Enhanced SMS Channel Capabilities This Messaging
article for In-App,
View a side-by-side comparison of standard and enhanced SMS channels. Going forward, new
doesn’t Messaging
features are available exclusively in enhanced SMS channels.
apply to: for Web,
SMS Terminology in Service Cloud standard
To make the right decisions when setting up an SMS channel in Service Cloud, get to know and
terms such as P2P, A2P, short codes, long codes, and segmentation. enhanced
WhatsApp,
SMS Number Types in Service Cloud
standard
Select the ideal type of phone number for providing customer service over text. Whether you and
choose a short code, long code, or both depends on your business needs. enhanced
SMS Carrier Filtering in Service Cloud Facebook
Carrier filtering is the practice where carriers block the delivery of some or all of the messaging Messenger,
enhanced
from a specific number or business. To provide the best messaging solution for your customers,
Apple
you must understand how and when carrier filtering occurs.
Messages
Create SMS Long Code Channels in Service Cloud for Business,
Let customers communicate with your support team using SMS text messaging. Customers enhanced
can send text messages to a ten-digit long code or toll-free long code number owned by your LINE, Bring
company, and agents reply from the Service Console. Your Own
Channel,
Create SMS Short Code Channels in Service Cloud
and Bring
Use short code phone numbers to send recurring messages and one-time alerts to your US and Your Own
Canadian customers. When customers respond, they can have two-way conversations with Channel for
support agents. Short codes have high throughput, which means you can send high volumes CCaaS
of one-to-one messages.
Test Your SMS Channel in Service Cloud
Test your new short code or long code Messaging channel to ensure that it’s working the way you expect. Using a sandbox is optional,
but a good idea.

206
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced SMS Channel Capabilities
Cloud

Set Up Broadcast Messaging in Service Cloud


Broadcast Messaging lets you send one-to-many SMS text messages to contacts, employees, person accounts, and messaging users
in standard SMS channels. To get started, configure your broadcasters’ access and create message templates.

SEE ALSO:
Upgrading from Standard to Enhanced Messaging
Update Service Cloud Messaging Channel Settings
Customize Auto-Responses in Service Cloud Messaging Channels

Compare Standard and Enhanced SMS Channel Capabilities


View a side-by-side comparison of standard and enhanced SMS channels. Going forward, new
EDITIONS
features are available exclusively in enhanced SMS channels.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love plus session transfers and enhanced bot support. See This Standard
Upgrading from Standard to Enhanced Messaging on page 275. article and
Enhanced SMS channels are built on our new conversation platform. The conversation platform applies to: enhanced
also houses Service Cloud Voice, Messaging for In-App and Web, and all other enhanced Messaging SMS
channels
channels, such as WhatsApp. This shared platform has several benefits.
• When we roll out a new feature, it’s often shared across all channels on the conversation platform. This Messaging
Agents get a consistent experience, regardless of channel. article for In-App,
doesn’t Messaging
• These channels are designed to scale beyond the customer support use case. for Web,
apply to:
standard
Capability Standard SMS Enhanced SMS and
Provisioning Methods enhanced
WhatsApp,
Long codes Yes Yes standard
and
Toll-free long codes (US) Yes Yes enhanced
Toll-free long codes (Canada) Yes Yes Facebook
Messenger,
Short codes (US) Yes Yes enhanced
Apple
Short codes (Canada) Yes Yes
Messages
Setup and Routing for Business,
enhanced
Automated channel setup No (must create a case) No (must create a case) LINE, Bring
Your Own
Can upgrade from standard N/A Yes
Channel,
channels
and Bring
Omni-Channel Flow routing Yes, in Lightning Experience Yes Your Own
only Channel for
CCaaS
Queue-based routing Yes Yes

207
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced SMS Channel Capabilities
Cloud

Capability Standard SMS Enhanced SMS


Enhanced routing No Yes

Tab-based capacity Yes Yes

Status-based capacity No Yes

Available with Sales Cloud Yes Yes

Messaging Session Start and End

Customer can start session Yes Yes

Agent can start session Yes, via the Start Conversation quick action Yes, via the Send Message global action
(beta)

Automated outbound messages Yes Yes

Broadcast (one-to-many) messaging Yes No

Agent can end session Yes Yes

Agent can mark session inactive No Yes

Available session statuses New, Waiting, Active, Ended New, Consent, Waiting, Active, Inactive,
Ended, Error

Customer Experience

Typing indicator: customer side N/A N/A

Typing indicator: agent side N/A N/A

Read receipts: customer side N/A N/A

Read receipts: agent side N/A N/A

Delivered receipts: customer side N/A N/A

Delivered receipts: agent side N/A N/A

Agent Experience

Quick text Yes Yes

Einstein recommended replies No Yes

Agent-to-agent transfer No Yes

Agent-to-flow transfer No Yes

Agent-to-queue transfer No Yes

Flag raise No Yes

Supervisor whisper to agents No Yes

Conversation transcripts Yes Yes. When a channel is upgraded from


standard to enhanced, the Enhanced
Conversation component doesn't show

208
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced SMS Channel Capabilities
Cloud

Capability Standard SMS Enhanced SMS


messages that were exchanged with the
customer before the upgrade. Agents must
open individual messaging session records
to see them. In the first post-upgrade
conversation with a customer, the agent
can check the customer's most recent
messaging sessions in the channel to learn
what was discussed.

After-conversation work timer Yes Yes

Compatible with AI agents No Yes

Compatible with Einstein Bots Yes, in Lightning Experience only Yes

Channel-object linking Yes Yes

Individual-object linking Yes Yes

Channel menu Yes Yes

Content Sharing

Text Yes. For short codes: 160 characters. For long Yes. For short codes: 160 characters. For long
codes and toll-free long codes: 912 codes and toll-free long codes: 912
characters, or 396 characters if the message characters, or 396 characters if the message
includes special characters. includes special characters.

Images* Yes, except for short codes: .jpg, .jpeg, .png. Yes, except for short codes: .jpg, .jpeg, .png.
Limits vary by carrier: Limits vary by carrier:
• AT&T: 1 MB • AT&T: 1 MB
• T-Mobile: 1 MB • T-Mobile: 1 MB
• Verizon: 1.2 MB • Verizon: 1.2 MB
• Sprint: 2 MB • Sprint: 2 MB
• US cellular: 500 KB • US cellular: 500 KB

Emoji Yes, in Salesforce Classic only Yes

GIFs Yes Yes, inbound only

PDFs No No

Audio files No No

Video files No No

Enhanced link messaging components No Yes (plain text only)

Question with options messaging No Yes (plain text only)


components

Time selector messaging components No Yes (plain text only)

209
Provide Conversation Support with Messaging in Service Compare Standard and Enhanced SMS Channel Capabilities
Cloud

Capability Standard SMS Enhanced SMS


Auto-response messaging components No No

Form messaging components No Yes (plain text only)

Notification messaging components No Yes (plain text only)

Payment messaging components No Yes (plain text only)

Authentication messaging components No Yes (plain text only)

Custom messaging components No Yes (plain text only)

Right-to-left languages No Yes

Automated Responses

Conversation acknowledgment Yes Yes

Agent accept Yes Yes

After-hours response Yes, in Salesforce Classic only No

Inactive conversation No No

End session Yes Yes

Security and Consent Management

Sensitive data rules Yes Yes

Encryption at rest Yes, in Lightning Experience only Yes

Channel consent type: Implicit opt-in Yes Yes

Channel consent type: Explicit opt-in Yes (short codes) Yes

Channel consent type: Double opt-in Yes (short codes) Yes

Customers can opt out Yes Yes

* Sending images is supported only in standard and enhanced SMS channels associated with US and Canada long codes and toll-free
long codes. It isn’t supported for short codes.

SEE ALSO:
Upgrading from Standard to Enhanced Messaging

210
Provide Conversation Support with Messaging in Service SMS Terminology in Service Cloud
Cloud

SMS Terminology in Service Cloud


To make the right decisions when setting up an SMS channel in Service Cloud, get to know terms
EDITIONS
such as P2P, A2P, short codes, long codes, and segmentation.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article and
applies to: enhanced
SMS
Message Types channels
Person-to-Person (P2P) Messaging
This
P2P describes conventional two-way SMS or MMS messaging between individuals. P2P for In-App,
article
messaging is lower-volume. The expectation is for one outbound message to every inbound Messaging
doesn’t
message, with no more than a 3-to-1 ratio. P2P messages typically use long codes, though this apply to: for Web,
practice can vary by country. standard
Application-to-Person (A2P) and
A2P generally refers to anything that isn’t considered P2P, including chatbots and automated enhanced
campaigns. Sometimes A2P messaging is referred to as enterprise or business messaging. A2P WhatsApp,
standard
messaging has higher expected volumes than P2P and is typically outbound. However,
and
depending on the number, A2P can include two-way conversational messaging. A2P messages
enhanced
typically use short codes (toll-free is available for the U.S. only). Account permissions limit
Facebook
throughput for A2P messages and rate limits apply.
Messenger,
enhanced
Apple
Message Use Case
Messages
The message use case is relevant when determining a solution that is right for your company. for Business,
Inbound enhanced
LINE, Bring
A message sent from a customer to your company’s number.
Your Own
Inbound-Initiated Channel,
A conversation initiated by a customer. and Bring
Outbound Your Own
A message sent from your company’s number to a customer. Outbound messages can be Channel for
CCaaS
initiated by an agent, sent through a campaign, initiated by a chatbot, and triggered by an
application.
Outbound-Initiated
A conversation initiated by an agent.
Automated Outbound
Bulk or outbound messages triggered by an action in Salesforce or with a bot. A Salesforce admin can trigger an outbound message
based on a record change in their org. Examples include messages alerting customers of changes to their case or order, messages
acknowledging a request for more information from a new lead, and service alerts.
Outbound Campaign (Broadcast)
A message sent to a list, most commonly used for service-related initiatives. These messages are medium-to-high volume and
typically one way, although the product allows outbound messaging to convert to a conversation when a recipient replies to the
message.

211
Provide Conversation Support with Messaging in Service SMS Terminology in Service Cloud
Cloud

Number Types
Your company can send messages using several different types of numbers. It's important to understand these terms, particularly because
several of them overlap with each other conceptually. For instance, a toll-free number is a type of long code.
Long Codes
These numbers are standard phone numbers like landlines, mobile numbers, and toll-free numbers that can be different lengths
based on the country. Typically, long codes are used for interactive conversations or P2P messaging.
A2P Long Code
A number used specifically for A2P communication.
Short Codes
These numbers are shorter than a long code, between 4–8 digits depending on the country of origin. Short codes are only supported
in the US and Canada. These codes are used for sending high-volume A2P messages, such as automated campaigns, surveys, and
announcements. They can support message volumes of 10–500 messages/second. The specific volume limit is country-specific and
doesn’t translate to the platform throughput. Short codes are registered with the local carrier for use case approval.
Toll-Free Number
A type of long code that uses a toll-free number.
Mobile Number (or MSISDN)
A phone number used to identify a mobile subscriber.

Other Terms
Short Message Service (SMS)
SMS messages are sent over a cellular network and support text content. An SMS message can contain 140 bytes of content.
Multimedia Messaging Service (MMS)
MMS messages are sent over a cellular network and can be used to send pictures, video, audio, and phone contacts.
GSM-7
This type of character encoding requires 7 bits per character.
Unicode
This type of character encoding is a more flexible and powerful standard than GSM-7. UTF-8 is the most common unicode encoding
type. It uses 1 byte for the first 128 characters and up to 4 bytes for other characters.
Segmentation
If an SMS message is more than 140 bytes, it is segmented into multiple messages. In this case, each segmented message can contain
up to 133 bytes. The remaining 7 bytes are used for the header that describes the segment order. Up to six segmented messages
can be grouped together.

212
Provide Conversation Support with Messaging in Service SMS Number Types in Service Cloud
Cloud

SMS Number Types in Service Cloud


Select the ideal type of phone number for providing customer service over text. Whether you choose
EDITIONS
a short code, long code, or both depends on your business needs.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article and
Review the terms on page 211 and filter guidelines on page 215 before continuing. applies to: enhanced
SMS
For number availability by country basis, see Messaging Regulations by Country. Salesforce will channels
text-enable numbers on behalf of its customers. Depending on the country, customers can use
their existing number or a number provided by Salesforce. This Messaging
article for In-App,
The following table details the number type available for the most common use cases. Messaging
doesn’t
apply to: for Web,
Standard Toll-Free Short Codes A2P Long Mobile/MSISDN standard
Long Codes Long Codes Codes (Salesforce-Provided) and
(Salesforce-Provided) enhanced
United States Inbound-Initiated Inbound-Initiated Inbound-Initiated Not Available Not Available WhatsApp,
standard
Outbound-Initiated Outbound-Initiated Outbound-Initiated and
enhanced
Automated Automated
Facebook
Outbound Outbound Messenger,
Campaigns enhanced
Apple
Canada Messages
Inbound-Initiated Inbound-Initiated Inbound-Initiated Not Available Not Available
for Business,
Outbound-Initiated Outbound-Initiated Outbound-Initiated enhanced
Automated LINE, Bring
Outbound Your Own
Channel,
Campaigns and Bring
Your Own
Other Not Available Not Available Not Available Inbound-Initiated Inbound-Initiated Channel for
Countries CCaaS
Outbound-Initiated Outbound-Initiated
Automated Automated
Outbound Outbound
Campaigns

The following table provides more details about the different number types.

Standard Long Codes Toll-Free Long Codes Short Codes


Format 7–15 digit number 1–8XX number 4–8 digit number

213
Provide Conversation Support with Messaging in Service SMS Number Types in Service Cloud
Cloud

Standard Long Codes Toll-Free Long Codes Short Codes


Standard 10 digit

Throughput 1–2 msgs/sec 10–100 msgs/sec (U.S. only), all 10–500 msgs/sec
1:1 message ratio; 3:1 max* other follow Long Code P2P

15K msgs/month max Avoid URLs**

Message Delivery Low Medium High


Quality/Trust

Setup Time Minutes Less than 3 days Weeks

Pre-Approval / Regulatory No No Yes


Compliance Requirements

* Ratio of outbound to inbound


** Avoid URLs: If you intend to include a link, relevancy and frequency are important. Particularly problematic are shortened URLs, which
have a high potential for getting marked as spam.
When choosing a number type, consider these number type limitations, your country’s messaging regulations, and the carrier filtering
rules on page 215 that can affect your desired use cases.

214
Provide Conversation Support with Messaging in Service SMS Carrier Filtering in Service Cloud
Cloud

SMS Carrier Filtering in Service Cloud


Carrier filtering is the practice where carriers block the delivery of some or all of the messaging from
EDITIONS
a specific number or business. To provide the best messaging solution for your customers, you
must understand how and when carrier filtering occurs. Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article and
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
SMS
channels
Why is filtering used?
This Messaging
The following are some of the main reasons for filtering: for In-App,
article
1. To comply with the carrier's policies, or with state, local, or country-specific regulations. doesn’t Messaging
Compliance can relate to the message’s content or frequency. apply to: for Web,
standard
2. To enforce rules and regulations that protect mobile subscribers from unwanted or unsolicited
and
messaging, such as SPAM and messages that are abusive, fraudulent, or of questionable content. enhanced
3. To prevent P2P messages from being sent through A2P streams, and to prevent A2P messages WhatsApp,
from using P2P routes. Incorrect routing can affect the line of business (carrier and subscriber) standard
indicated by number type. and
enhanced
4. To reduce the potential for dissatisfied customers who file complaints, take legal action, seek
Facebook
damages, or switch to another carrier for loss of business. Messenger,
To familiarize yourself with country rules and regulations, refer to SMS Regulations by Country. enhanced
Because regulations can change, we recommend a legal review of the regulatory bodies that govern Apple
the telecommunications systems in the country or territory where you plan to do business. Messages
for Business,
enhanced
How are messages filtered? LINE, Bring
Your Own
Filtering techniques can vary from one carrier and country to the next. Filters can be triggered any
Channel,
number of ways, such as from a defined list of terms or from advanced logic with the use of adaptive
and Bring
software systems and machine learning. Your Own
Carriers can look at content or volume and, through algorithms, use a scoring system that triggers Channel for
filtering or blocking when a threshold is met. Scoring can be based on a particular time period, CCaaS
message similarity, message frequency, or when content is deemed as possible SPAM or A2P, such
as when content contains a URL.
Machine learning helps these systems adapt constantly as different messages pass through them. As a result, it can be difficult to
determine why or how a message was filtered. Upon request, some carriers provide information verifying that a message was blocked,
while others don’t. Some carriers simply report messages as undelivered to protect the analysis and replication of their filtering algorithms.
Filtering techniques and practices are proprietary and kept strictly confidential by carriers to ensure that they can’t be reverse-engineered
or circumvented. Just as spammers continuously adapt their approach, carriers continuously change their heuristics to protect subscribers
from spammers.

215
Provide Conversation Support with Messaging in Service SMS Carrier Filtering in Service Cloud
Cloud

What are some best practices to protect against filtering?


Learn the rules and regulations of your target market. And consider periodically validating your use case, phone numbers, and content
for any changes that could impact message delivery. Also, you can apply the following best practices no matter the regulatory logic for
a particular market.
1. Provide clear and easy opt-out instructions. Message recipients can reach out to their carriers for many reasons. For instance,
perhaps a recipient believes that they were contacted in error, that it wasn’t clear how to opt out, or that their privacy wasn’t respected.
In any of these cases, they can request that the carrier block messages.
2. Avoid URLs. If you intend to include a link, relevancy and frequency are important. Particularly problematic are shortened URLs,
which have a high potential for getting marked as SPAM. If you plan to include a link, they should be associated with a single web
domain owned by the customer. Although a full domain is preferred, a URL shortener may be used to deliver custom links. You
should avoid common, public, or shared domain shorteners. For example: Bit.ly, Goo.gl, Tinyurl.com, Tiny.cc, Lc.chat, Is.gd, Soo.gd,
S2r.co, Clicky.me, budurl.com, Bc.vc.
3. Personalize the content. Using identical messages from the same name is a sure way to get flagged and blocked by filtering
algorithms. Identical messages don’t indicate typical P2P behavior.
4. Limit the amount and ratio of messaging for P2P. A significant number of messages within a short period of time from the same
number isn’t typical human behavior. If there’s an expectation of larger-than-normal personalized messages, using multiple numbers
can mitigate the risk.
5. Understand the messaging hours of operation of the target audience. Guidelines for allowable business messaging can vary
from country to country. If you’re unclear, limit messaging to the expected hours of operation of your target audience, and consider
their time zone.
6. Keep messaging professional and clearly identify the sender. By identifying the business, you remind the recipient who you
are and that they gave you consent to message them.

What if my messages were incorrectly blocked or filtered?


Messages blocked by filtering result in the associated number being added to the carrier’s blocked list. The number is only removed
after the carrier’s defined (automated) period of time. Carrier’s don’t unblock the number unless it’s clearly blocked in error, which is
difficult to validate due to the proprietary nature of filtering.
Long codes blocked for legitimate reasons aren’t eligible for, and Salesforce can’t request, unblocking or adding the number(s) to the
allowed list.
Short codes are pre-registered with the local carrier for use case approval, which results in pre-approved allowed listing. But this allowed
listing is limited to a particular type of pre-approved traffic.

Verify that messages aren't blocked by each of the major carriers.


To confirm filtering, test against all major carriers. We know of instances where one carrier blocks an SMS message, but another provider
received the message. For example, in the US, test with AT&T, Verizon, and T-Mobile/Sprint to verify that messages are received on the
mobile device.

216
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

Create SMS Long Code Channels in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Standard
article and
applies to: enhanced
SMS
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

217
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

Let customers communicate with your support team using SMS text messaging. Customers can
USER PERMISSIONS
send text messages to a ten-digit long code or toll-free long code number owned by your company,
and agents reply from the Service Console. To set up Messaging:
• Configure Messaging
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the
ability to create standard channels. To avoid service interruptions, upgrade your standard To view SMS channels:
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many • View Setup and
Configuration
of the standard SMS features you love on page 207 plus session transfers and enhanced bot
support. See Upgrading from Standard to Enhanced Messaging on page 275. To create SMS channels:
• System Administrator
Note: SMS channels are either part of the services branded as standard Messaging or AND Configure
Enhanced Messaging. Enhanced Messaging features are provided using infrastructure different Messaging
from standard Messaging. Any service level commitments and any security, privacy, data OR
storage or processing locations or data recovery measures that are specific to standard
Configure Messaging
Messaging may be different for Enhanced Messaging, and such information for Enhanced AND Customize
Messaging is as described in the applicable Trust and Compliance Documentation. Enhanced Application AND
Messaging features and functionality may also vary from standard Messaging features and Manage Auth. Providers
functionality. Enhanced Messaging and standard Messaging are subject to the relevant AND View Setup and
Documentation and all terms on your company’s order form for Digital Engagement. Configuration AND
Modify All Data
SMS long code messaging is available in Australia, Austria, Belgium, Brazil, Canada, Denmark, Finland,
France, Germany, Hong Kong, Hungary, Ireland, Malaysia, Norway, the Philippines, Poland, Portugal,
Singapore, Spain, Sweden, Switzerland, Taiwan, the United Kingdom, and the United States.
You can use most existing US or Canadian numbers for long code SMS channels, or you can request a new in-country long code number
from Salesforce. Either way, to create your channel, you must file a case with Salesforce Customer Support.
Here’s what to expect from the setup process:

Note: Messaging doesn't support mobile or Voice Over IP phone numbers.

1. Complete the steps in Get Started with Messaging in Service Cloud.


2. If you plan to use an existing US or Canadian long code or toll-free long code phone number for your SMS channel, download a
Letter of Authorization form. If you’re based outside of the US or Canada or you’re requesting a new phone number, you don’t need
an LOA and can skip to the next step.

218
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

a. From Setup in Lightning Experience, in the Quick Find box, enter Messaging, and then select Messaging Settings.
b. In the Channels section, click New Channel, and then click Start.
c. Click SMS Text Messaging, and then select a channel type of Enhanced.
Because new features are available exclusively in enhanced channels going forward, we no longer recommend creating standard
channels.

d. Download and complete the LOA. In your LOA, provide the phone number you want to use. The LOA lets Salesforce enable your
phone number for your channel.
e. Click Finish to end the setup flow.

3. Request the creation of your SMS channel by filing a case with Salesforce.
a. In Salesforce Help, click Contact Support in the top left corner. Log in, if needed.
b. On the Support home page, click Create a Case > Product or Technical Support.
c. Provide these details in your case.

Use an existing number (US and Canada only) Request a new number (supported countries only)

• Product: Service • Product: Service


• Topic: Digital Engagement • Topic: Digital Engagement
• Case Subject: Create SMS channel with • Case Subject: Phone number request for
existing phone number [country name]
• SMS channel type: Standard or Enhanced • SMS channel type: Standard or Enhanced
(recommended) (recommended)
• Sandbox or production org ID for the new channel • Sandbox or production org ID for the new channel
• Time zone of the contact person • Time zone of the contact person
• Severity level (typically 3 or 4) • Severity level (typically 3 or 4)
• Email addresses of any case collaborators • Email addresses of any case collaborators
• Attach the signed LOA, including your full Customer Legal • Attach a completed Digital Engagement Phone Number
Number, account number, and the phone number you Request form, which you can download from SMS
want to use for your SMS channel. Regulations by Country.

4. Click Create Case.


5. Sit tight while Salesforce processes your SMS channel request, which can take some time. When your number is assigned to your
org, Salesforce Customer Support closes your case.
6. When your case is closed, register your number or numbers so that traffic can be enabled. Complete this step only if you’re using a
new number or an existing number that wasn’t previously registered.
a. From Setup, enter Regulatory Compliance in the Quick Find box, and then select Regulatory Compliance under
Messaging.
b. Click Register Long Code to register a 10-digit long code number, or Register Toll-Free to register a toll-free long code
number.

219
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

c. Complete the fields and submit your registration request.


d. Wait for an email confirmation when your number is submitted for registration. If you need further help, respond to that email.

7. When you receive a confirmation email from Salesforce that your channel is ready, go to the Messaging Settings page in Setup. Find
your channel in the list, and then customize its settings and auto-responses.

Important: If you ask Salesforce to enable an existing phone number for use with Messaging, phone numbers are activated after
you complete the Messaging setup instructions. Not all phone numbers can be enabled. When Salesforce receives your signed
Letter of Authorization, your phone number will be enabled within 3 business days for 1-800 numbers and within 1 business day
for all other numbers.
Registering a new phone number in the US and Canada can take 1-2 weeks for toll-free numbers, and 1-4 weeks for 10-digit long
codes. While Salesforce Customer Support can provide new toll-free and long code numbers, it has no control over number
registration.

IN THIS SECTION:
Considerations for Long Codes in Service Cloud
Use text messaging to help agents connect with customers even when they’re on the go. Review these considerations before setting
up an SMS channel for a ten-digit long code or toll-free long code number.
SMS Regulations by Country
Regulations for SMS communication differ by country and carrier. Before you set up an SMS channel in Service Cloud Messaging,
review your country’s messaging regulations to avoid fines or blocked messages.

220
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

Considerations for Long Codes in Service Cloud


Use text messaging to help agents connect with customers even when they’re on the go. Review
EDITIONS
these considerations before setting up an SMS channel for a ten-digit long code or toll-free long
code number. Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article and
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
SMS
channels
General Considerations
This Messaging
• Registering a new phone number in the US and Canada can take 1-2 weeks for toll-free numbers,
article for In-App,
and 1-4 weeks for 10-digit long codes. If you request 50 or more long codes, a special review
doesn’t Messaging
is required and 1-2 weeks are added to your registration time. Salesforce Customer Support for Web,
apply to:
provides new toll-free and long code numbers, but has no control over number registration. standard
• SMS messages are subject to carrier filtering. This means that messages may not be delivered and
if they break country- or network-specific rules, or if they're flagged as spam. To avoid filtering, enhanced
make sure that your messages follow the guidelines of the country that you're sending them WhatsApp,
in. standard
and
• For more industry-specific considerations about message deliverability, refer to Digital
enhanced
Engagement SMS Messaging Reference.
Facebook
Messenger,
Non-US/Canada Considerations enhanced
Apple
• Salesforce only supports “in-country messaging,” in which a phone number of one country Messages
sends messages to a phone number from the same country. If you want to message international for Business,
customers, request a number from their country. enhanced
• The rate applied for international messages is based on the phone number location not your LINE, Bring
geographical location. Your Own
Channel,
and Bring
Message Length Your Own
The maximum length of a single message is approximately 912 characters. The maximum length Channel for
can vary depending on the language and characters used in the message, because most CCaaS
non-English-based characters are considered double-byte and require more capacity to send. If a
message includes one or more special characters, such as smart quotes, UTF-16 encoding is applied
and the limit is reduced to 396 characters. Messages over 912 characters aren’t sent.

Content Sharing
You can send several types of content in SMS channels that are associated with a long code phone number. For a full list with limits, see
Compare Standard and Enhanced SMS Channel Capabilities.

Enhanced Messaging for SMS


Salesforce offers two types of Messaging channels: standard and enhanced. New features are available exclusively in enhanced channels,
and we’re phasing out the ability to create standard channels.

221
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

• If you didn’t create standard Messaging channels before the Summer ’24 release, you can’t create standard SMS channels. All SMS
channels that you create are enhanced channels.
• If you have one or more standard SMS channels, you can convert them to enhanced channels in a simple upgrade process. Upgrading
is a one-way move, so you can’t change an enhanced channel to a standard channel. It’s also okay to have both standard and
enhanced channels in Salesforce.
• Currently, it’s not possible to migrate an enhanced SMS channel to a Unified Messaging channel.

SEE ALSO:
Upgrading from Standard to Enhanced Messaging
Service Cloud Messaging Limits and Considerations
What’s Service Cloud Messaging?

222
Provide Conversation Support with Messaging in Service Create SMS Long Code Channels in Service Cloud
Cloud

SMS Regulations by Country


Regulations for SMS communication differ by country and carrier. Before you set up an SMS channel
EDITIONS
in Service Cloud Messaging, review your country’s messaging regulations to avoid fines or blocked
messages. Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article and
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: enhanced
You can use most existing US or Canadian numbers for long code SMS channels, or you can request SMS
channels
a new in-country long code number from Salesforce. Either way, to create your channel, you must
file a case with Salesforce Customer Support. This Messaging
If you request a new long code phone number for SMS, sometimes you’re required to attach article for In-App,
country-specific messaging forms to your case. To view your country’s messaging regulations, see doesn’t Messaging
apply to: for Web,
SMS Regulations by Country (English only). Click your country’s name, and then download the
standard
forms attached at the end of each article. If you don’t see an attachment, no form is required.
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

223
Provide Conversation Support with Messaging in Service Create SMS Short Code Channels in Service Cloud
Cloud

Create SMS Short Code Channels in Service Cloud


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Standard
article and
applies to: enhanced
SMS
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

224
Provide Conversation Support with Messaging in Service Create SMS Short Code Channels in Service Cloud
Cloud

Use short code phone numbers to send recurring messages and one-time alerts to your US and
USER PERMISSIONS
Canadian customers. When customers respond, they can have two-way conversations with support
agents. Short codes have high throughput, which means you can send high volumes of one-to-one To set up Messaging:
messages. • Configure Messaging

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the To view SMS channels:
ability to create standard channels. To avoid service interruptions, upgrade your standard • View Setup and
Configuration
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot To create SMS channels:
support. See Upgrading from Standard to Enhanced Messaging on page 275. • System Administrator
AND Configure
Note: SMS channels are either part of the services branded as standard Messaging or Messaging
Enhanced Messaging. Enhanced Messaging features are provided using infrastructure different OR
from standard Messaging. Any service level commitments and any security, privacy, data
Configure Messaging
storage or processing locations or data recovery measures that are specific to standard AND Customize
Messaging may be different for Enhanced Messaging, and such information for Enhanced Application AND
Messaging is as described in the applicable Trust and Compliance Documentation. Enhanced Manage Auth. Providers
Messaging features and functionality may also vary from standard Messaging features and AND View Setup and
functionality. Enhanced Messaging and standard Messaging are subject to the relevant Configuration AND
Documentation and all terms on your company’s order form for Digital Engagement. Modify All Data

Want to see short codes in action? Watch our video.

Watch a video

Setting up a standard or enhanced short code SMS channel involves a multi-step application process. Approving and provisioning a
short code can take 10–16 weeks. Here’s what to expect from the setup process:

To get started, go to Service Cloud-Digital Engagement Messaging: Short Code Application Process.

225
Provide Conversation Support with Messaging in Service Create SMS Short Code Channels in Service Cloud
Cloud

IN THIS SECTION:
Considerations for Short Codes in Service Cloud
When you use short codes, your business is required to follow carrier compliance requirements, industry standards, and applicable
laws. Short codes are only supported in the US and Canada.

Considerations for Short Codes in Service Cloud


When you use short codes, your business is required to follow carrier compliance requirements,
EDITIONS
industry standards, and applicable laws. Short codes are only supported in the US and Canada.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article and
applies to: enhanced
SMS
What are Short Codes? channels
Short codes are 5- or 6-digit phone numbers. Unlike long code phone numbers, short codes have
This Messaging
few limits on throughput, volume, or inbound-to-outbound ratios. That's why we recommend
article for In-App,
them for high-volume use cases, like recurring messages and alerts.
doesn’t Messaging
You can use short codes for single-message and recurring-message programs. We currently support apply to: for Web,
only service use cases—not marketing promotions. standard
and
Your company's automated responses can be a maximum of 160 characters.
enhanced
For more information about using short codes in the US, see the CTIA Short Code Monitoring WhatsApp,
Handbook. standard
and
enhanced
How are Short Code Messages Routed? Facebook
Short code channels use the same Omni-Channel routing as your other channels. If a customer Messenger,
responds to an agent-initiated outbound message, their message is routed to the agent who started enhanced
the conversation. Otherwise, inbound messages are added to the queue or skill and assigned to an Apple
available agent. To learn more about Omni-Channel routing, see Omni-Channel for Administrators. Messages
for Business,
enhanced
Opting in to Messages LINE, Bring
Customers must opt in to receiving messages before your business can start sending them. For Your Own
Channel,
example, customers can:
and Bring
• Enter their phone number in an online form Your Own
• Sign up at a point-of-sale location Channel for
CCaaS
• Send a text to your short code number
This type of opt-in is called explicit opt-in. When a customer sends a text to your short code, we
send them your opt-in prompt. You can customize this text, along with your other short code responses, by navigating to Setup >
Messaging Settings > Edit > Opt-In Confirmation.
Your opt-in prompt must contain certain details. Here's an example:

226
Provide Conversation Support with Messaging in Service Create SMS Short Code Channels in Service Cloud
Cloud

To subscribe to [Campaign Name] [Description] Alerts, reply YES. Reply HELP for help.
Reply STOP to cancel at any time. Msg&data rates may apply.
When they respond with an opt-in keyword, we mark the Messaging User object as explicitly opted in and send them a confirmation
text. You can customize this response for every language you support.
Here's an example:
You’re now subscribed to [Campaign Name] [Description] Alerts. Reply HELP for help.
Reply STOP to cancel at any time. Call [toll-free number] for support. Msg&data rates
may apply.
Optionally, you can require customers to verify that they want to receive texts from your businesses. This extra step is called double opt-in.
You can add this requirement for your short code channel by navigating to Setup > Messaging Settings > Edit > Required Double
Opt-In. Write your double opt-in keywords and a double opt-in prompt. You can customize this response for every language you support.
Here's an example:
To confirm your subscription to [Campaign Name] [Description] Alerts, reply START.
Reply HELP for help. Reply STOP to cancel at any time. Msg&data rates may apply.

Opting Out of Messages


To stay compliant, you must allow Messaging users to opt-out of receiving text messages from your short code. Messaging users can
opt out by texting the keywords STOP, STOPALL, CANCEL, END, QUIT, and UNSUBSCRIBE to your short code. They can also opt out during
a Messaging session by communicating that intention to a support agent, who can manually opt them out.
When a Messaging user texts an opt-out keyword, the Messaging channel must opt out the user and respond with a compliant opt-out
confirmation text. You can customize this response for every language you support.

Tip: We suggest keeping your opt-out confirmation text short. Here's an example:
You are unsubscribed from [Campaign Name] [Description] Alerts. No more messages
will be sent. Reply HELP for help or call (toll free number).

Anyone who texts an opt-out keyword to your short code receives this response, even if they aren't subscribed to your messages.

Requesting Help
You're required to send a compliant response when a Messaging user texts a help keyword to your short code. You can customize the
response text by navigating to Setup > Messaging Settings > Edit > Help Response. You can customize this response for every
language you support.
Your help response must contain certain details. Here's an example:
[Campaign Name] [Description] Alerts: Help at [source of help] or [toll free number].
Msg&data rates may apply. [Message frequency]. Text STOP to cancel.
Anyone who texts a help keyword to your short code receives this response, even if they aren't subscribed to your messages.
To stay compliant, your help response must contain these details:
• Campaign name—The name of your company or organization
• Description—A single word or phrase to define the alerts, such as “Account Alerts”
• Help sources—You must provide a toll-free phone number or a support email address, in addition to any other forms of help
• Disclaimer—Msg&data rates may apply.
• Message frequency—Must be specific, but can be any interval, such as “1 message per day,” “2 messages per month,” or “1 message
per transaction.” "Message frequency varies" is also acceptable.

227
Provide Conversation Support with Messaging in Service Create SMS Short Code Channels in Service Cloud
Cloud

Using Custom Responses


Use custom keywords and responses to account for country-specific regulations, or to share other information specific to your company.
You can customize your keywords and responses by navigating to Setup > Messaging Settings > Edit > Custom Responses. You
can also customize this response for every language you support.

Using Short Codes in Canada


Because Canada has two official languages—English and French—short code keywords and automated responses must account for
both languages. Canada has five mandatory keywords for short codes: HELP, INFO, AIDE, STOP, and ARRET. When a customer texts one
of these keywords to your short code, they must receive an automated response. These responses must be sent in the same language
as the corresponding keyword—for example, STOP returns an English response and ARRET returns a French response.

SEE ALSO:
Service Cloud Messaging Limits and Considerations
Test Your SMS Channel in Service Cloud

228
Provide Conversation Support with Messaging in Service Test Your SMS Channel in Service Cloud
Cloud

Test Your SMS Channel in Service Cloud


Test your new short code or long code Messaging channel to ensure that it’s working the way you
EDITIONS
expect. Using a sandbox is optional, but a good idea.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article SMS
To create an SMS channel in either sandbox or production, you must file a case with Salesforce applies to: channels
Support. When you file the case, we recommend requesting separate numbers for sandbox and Messaging
This
production. A number can only be associated with a single org at a time. for In-App,
article
Salesforce Support can move a number from a standard SMS channel in sandbox to a standard SMS doesn’t Messaging
channel in production. However, using separate numbers makes your channel rollout easier and apply to: for Web,
gives you more freedom to experiment in your sandbox org in the future. If you’re testing a standard standard
SMS channel associated with a short code, you might decide to use the same short code number and
for both sandbox and production, and ask Salesforce Support to move it from sandbox to production enhanced
WhatsApp,
when you're done testing. Talk with your account executive to understand the cost of short code
standard
numbers. SMS messages sent through a sandbox org are treated as normal messages and deducted
and
from your total conversation allowance.
enhanced
Moving a number from an enhanced channel in sandbox to an enhanced channel in production Facebook
is supported. However, you must then file a case with Salesforce Customer Support to start messaging Messenger,
traffic in the channel. enhanced
SMS,
Action Instructions enhanced
Apple
(Optional) Set up 1. Contact your account executive for the Digital Engagement add-on Messages
Messaging in your SKU. for Business,
sandbox. enhanced
2. Match your sandbox org licenses to your production org by refreshing LINE, Bring
your sandbox, creating a new sandbox, or using the license-matching Your Own
method. Channel,
3. Complete the steps in Get Started with Messaging in Service Cloud. and Bring
Your Own
Test your channel in Channel for
1. Log into Salesforce as an agent.
sandbox or production. CCaaS
2. From the app launcher, open the app that contains Messaging. This
is usually the Service Console.
USER PERMISSIONS
3. In the Omni-Channel utility or sidebar, change your Omni-Channel
presence status so that you’re online and available to receive To send and receive
messages. messages in Messaging:
• View Setup and
4. From your phone, send a text message to the phone number that Configuration
is associated with this channel.
To end Messaging sessions:
5. Look for the incoming message in Omni-Channel. Click the check • End Messaging Session
mark icon to accept the message and open the chat window.
6. Exchange messages in the channel. Experiment with sending text
and images, and test the auto-responses that you’ve configured.

229
Provide Conversation Support with Messaging in Service Test Your SMS Channel in Service Cloud
Cloud

Action Instructions
7. When you’re done, click End Chat.

(Optional) Switch from sandbox If you need to move your SMS channel implementation or number from sandbox to production, or
to production. from sandbox to another sandbox, here’s how.
1. Create a change set to move your Messaging implementation from sandbox to production, or
manually repeat the setup steps in production.
2. (Standard channels only) If you couldn’t designate a separate number for your sandbox, file a
case with Salesforce Customer Support to move the number to a new channel in production or
in another sandbox.

SEE ALSO:
Sandboxes: Staging Environments for Customizing and Testing
Change Sets

230
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Set Up Broadcast Messaging in Service Cloud


Broadcast Messaging lets you send one-to-many SMS text messages to contacts, employees, person
EDITIONS
accounts, and messaging users in standard SMS channels. To get started, configure your broadcasters’
access and create message templates. Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article SMS
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: channels
Before you start, create a Messaging channel for text messages associated with a working phone Messaging
This
number. You can use a short code or toll free number. Then, associate your channels with a queue. for In-App,
article
doesn’t Messaging
Note: If you request that Salesforce enables a phone number for use with Messaging, phone
apply to: for Web,
numbers are activated after the Messaging setup instructions are completed. Upon receipt
standard
of the signed Letter of Authorization, enablement of a phone number occurs within 3 business
and
days for 1-800 numbers and within 1 business day for all other numbers. This letter is provided
enhanced
in the Messaging setup instructions. Not all phone numbers can be enabled. WhatsApp,
Unused conversations and triggered and bulk messages are forfeited at the subscription’s standard
end date. To purchase additional conversations or triggered and bulk messages, contact your and
Salesforce representative. enhanced
Facebook
Now, let’s review key broadcasting terms. Messenger,
Broadcaster enhanced
SMS,
The user or users who send bulk messages. Admins can be included in the broadcasters group.
enhanced
Recipients Apple
The people receiving your message. They can be customers, employees, or any other group Messages
you want to contact. for Business,
Sender Number enhanced
LINE, Bring
The number or numbers that you’re sending your message from. A sender number can be a
Your Own
short code or toll free number. Don’t use a long number for broadcast messages, as carriers
Channel,
impose limits for bulk text messages from long numbers.
and Bring
Opt In Your Own
Opting in is how your recipients provide consent to receive messages from you. We send Channel for
messages only to recipients who explicitly opted in. You can view someone’s consent status CCaaS
on their Messaging User record.
When Broadcast Messaging is turned on, a few things happen.
• You receive custom list views named Bulk SMS Contacts, Bulk SMS Employees, and Bulk SMS Messaging End Users. These views help
you manage your recipient lists.
• The “Send One-to-Many Messages” user permission can be assigned to users.
• The Broadcast Messages tab can be added to a standard or console app so broadcasters can view sent broadcast messages.
To set up Broadcast Messaging, you will follow these steps.
1. Assign broadcasting permissions and help your team view Messaging information for recipients.
2. Create messaging users so you can track recipients’ opt-in status. Messages can’t be sent without creating messaging users first.
3. Create required messaging templates so your broadcasters can send messages.

231
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

4. Add the Broadcast Messages tab to the Service Console so your team can view sent broadcast messages.

Note: For usage restrictions that apply to this product, see this document.
For information on the features included in the Digital Engagement subscription, see our pricing docs.

IN THIS SECTION:
Considerations for Broadcast SMS Messaging in Service Cloud
Review considerations and tips regarding Broadcast Messaging for standard SMS channels.
Create and Assign a Broadcaster Permission Set for SMS
Give broadcasters permission to send one-to-many messages in a standard SMS messaging channel. Optionally, set them up with
Messaging and Omni-Channel permissions to have one-to-one conversations with recipients.
Write Effective Broadcast Messages
Broadcast informative, useful messages to customers and employees in a standard SMS channel in Service Cloud.
Add the Broadcast Messages Tab to an App
If you’re using broadcasting in your standard SMS channel in Service Cloud, let your broadcasters view your company’s sent messages
on the Broadcast Messages tab.
Send Broadcast Messages
Send a bulk SMS from a contact, employee, person account, or messaging user list view in a standard SMS channel. View your
company’s sent broadcast messages in the Broadcast Messages tab.

232
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Considerations for Broadcast SMS Messaging in Service Cloud


Review considerations and tips regarding Broadcast Messaging for standard SMS channels.
EDITIONS
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the
ability to create standard channels. To avoid service interruptions, upgrade your standard Available in: Lightning
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many Experience. View required
editions.
of the standard SMS features you love on page 207 plus session transfers and enhanced bot
support. See Upgrading from Standard to Enhanced Messaging on page 275. This Standard
• Broadcast Messaging is supported only in standard SMS channels. article SMS
applies to: channels
• The Send Message action used by broadcasters is different from the Send Message global action
used to initiate messaging sessions in enhanced Messaging channels and Messaging for In-App This Messaging
and Web. The global action appears only in the global action menu, reached by clicking the article for In-App,
plus sign at the top of the page, while the broadcasting action appears on list views. doesn’t Messaging
• Don’t use a long number for broadcast messages, as carriers impose limits for bulk text messages apply to: for Web,
standard
from long numbers.
and
• Messaging templates are required to send a message. Create messaging templates for enhanced
broadcasters before they attempt to send messages. WhatsApp,
• Broadcast messages can't be sent in SMS channels that use Omni-Channel flow routing. In your standard
SMS channel settings, make sure that Enable Advanced Routing isn't selected. and
enhanced
• Messaging User records are required for your recipients, even if you’re sending a message from
Facebook
another object type. Messaging User records contain the recipient’s consent status..
Messenger,
• You can use Broadcast Messaging for employees only if you’ve purchased Work.com. Otherwise, enhanced
use contacts, person accounts, or messaging users. SMS,
• It’s possible to go over your SMS allotment. If you send more messages than you’ve paid for, enhanced
our team will help you make another payment. Apple
Messages
• We don’t search for duplicate recipients when sending broadcast messages. If you send a
for Business,
broadcast message from multiple sender numbers, and a recipient is opted into more than one
enhanced
of those numbers, they receive multiple messages.
LINE, Bring
• Broadcast Messaging and Messaging can be used together, and sometimes a broadcast message Your Own
can appear in an active Messaging session. If the active session and the broadcast message use Channel,
the same sender number, a broadcast message sent during the active session appears in the and Bring
conversation. Your Own
• Be mindful of the values you store about your recipients. We recommend that you avoid Channel for
CCaaS
collecting information that you don’t need and any vulnerable information that could be used
for discrimination. To learn more, see our Acceptable Use and External-Facing Services Policy.

233
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Create and Assign a Broadcaster Permission Set for SMS


Give broadcasters permission to send one-to-many messages in a standard SMS messaging channel.
EDITIONS
Optionally, set them up with Messaging and Omni-Channel permissions to have one-to-one
conversations with recipients. Available in: Lightning
Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Experience. View required
editions.
ability to create standard channels. To avoid service interruptions, upgrade your standard
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many This Standard
of the standard SMS features you love on page 207 plus session transfers and enhanced bot article SMS
support. See Upgrading from Standard to Enhanced Messaging on page 275. applies to: channels
1. Create a permission set for broadcasters. Messaging
This
a. From Setup, in the Quick Find box, enter Permission Sets, and then select article for In-App,
Permission Sets. doesn’t Messaging
apply to: for Web,
b. Click New. standard
c. For Label, enter a name for the permission set. The API Name is automatically filled. and
enhanced
d. Skip the section about user licenses. If you select a user license, App Permissions aren't
WhatsApp,
available.
standard
e. Save your changes. and
f. In the details page, select Object Settings > Messaging Sessions. enhanced
Facebook
g. Click Edit, give view access to all, and then give the appropriate access for your users or Messenger,
roles. enhanced
h. Click Save. SMS,
enhanced
i. Go back to the Object Settings page and select Messaging Users. Apple
j. Click Edit, give view access to all, and then give the appropriate access for your users or Messages
roles. for Business,
enhanced
k. Click Save.
LINE, Bring
l. Go back to the Permission Set Overview page and select App Permissions. Your Own
m. Click Edit, then enable Agent Initiated Outbound Messaging, Messaging Channel,
and Bring
Agent, and Send One-to-Many Messages.
Your Own
n. Click Save. Channel for
CCaaS
2. Assign the permission set you created.
a. From Setup, in the Quick Find box, enter Users, and select Users.
USER PERMISSIONS
b. Select the name of the user that you want to assign the permission set to.
To create permission sets:
c. Under Permission Set Assignments, click Edit Assignments.
• Manage Profiles and
d. Move the permission set that you created to the Enabled Permission Sets list. Permission Sets
e. Save your changes. To assign permission sets:
Users with the broadcaster permission set see the Send Message button in any contact, • Assign Permission Sets
person account, employee, and messaging user list view.

234
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Note: Users with these permissions can send one-to-many SMS and one-to-one SMS, assuming that Omni-Channel is enabled
and your broadcasters are added to a messaging queue. If you want your broadcasters to send one-to-one messages, in addition
to these steps, you must set up Service Presence Status Access and enable End Messaging Session.

235
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Write Effective Broadcast Messages


Broadcast informative, useful messages to customers and employees in a standard SMS channel in
EDITIONS
Service Cloud.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article SMS
Create Broadcast Messaging Templates applies to: channels
Write messages for broadcasters to send to recipients. Broadcasters can’t create templates or Messaging
This
send a message without a template, so create as many templates as you think your team needs. for In-App,
article
For instructions, see Send Automated Messages in Standard Messaging Channels . doesn’t Messaging
apply to: for Web,
Tip: To visually group your broadcast messages and help your team find what they’re
standard
looking for, add a prefix to your template names. For example, name your waitlist-related
and
message templates “Waitlist - Joined,” “Waitlist - 10 Min Warning,” and “Waitlist -
enhanced
Removed.” WhatsApp,
Mind the Character Limit standard
Text messages are limited to 160 characters for most carriers. If your message exceeds your and
carrier’s limit, your message is sent in multiple text messages. Keep your message short to avoid enhanced
paying for extra messages. Facebook
Messenger,
Stay On Topic enhanced
Your recipients opted in to your messages for a specific purpose. Avoid sending frequent, SMS,
off-topic messages or sharing information that’s better suited for email. If recipients feel like enhanced
you’re oversharing, they opt out. Apple
Personalize Sparingly Messages
It’s great to include your recipient’s name in a message here and there with a merge field. But for Business,
too much personalization can be overwhelming, and it can use up your character count. enhanced
LINE, Bring
Use a Link Shortener Your Own
If you include links in your messages, use a link shortener to save space. Links count against the Channel,
160-character limit. and Bring
Include a Call to Action Your Own
A call to action makes your message more useful to recipients. For example: Channel for
CCaaS
• When you send an informational message, consider including a link they can visit to learn
more.
• When you remind recipients about an event or appointment, provide a text reply or phone number they can use to confirm or
cancel.
• When you notify recipients about their spot on a wait-list, tell them how they can remove their name if they change their mind.

Examples of Broadcast SMS Messages


See example text messages that can be sent using Broadcast Messaging for standard SMS.

236
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Example:

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the ability to create standard channels.
To avoid service interruptions, upgrade your standard SMS channels to enhanced channels before February 14, 2026.
Enhanced SMS offers many of the standard SMS features you love on page 207 plus session transfers and enhanced bot
support. See Upgrading from Standard to Enhanced Messaging on page 275.

Bulk Customer Service Updates


Send bulk updates to your customers when you have a widespread service-related announcement.
Service Outage
Service maintenance window: we’ll be offline for maintenance from 1am-2am in your area.
Change in Customer Service Availability
Our service reps are working reduced hours due to a weather event. Expect response time up to 48 hours.

Queue Notifications
To manage a queue, we recommend sending a text when the recipient joins the list, when they are at the top of the list, and when they
remove themselves from the list.
Recipient Joined the List
You’re in line for Business Name. We’ll send an update when you’re next in line. Text CANCEL to cancel.
Recipient is at the Top of the List
You’re next in line to shop at Store Name! You have 10 min to check in. Text CANCEL to cancel.
Recipient Left the List
You’ve been removed from the list. We hope to see you another time.

Appointment Reminders
Send confirmations and reminders for appointments. We recommend letting the recipient know that they’ve scheduled their appointment
and what they can do to cancel or reschedule. Consider moving appointment confirmations to text so your staff can respond to other
phone calls.
Appointment was Scheduled or Rescheduled
Your appointment is scheduled for WED 7/1 @ 11am. Text YES to confirm. Call 000-000-0000 to reschedule.
Appointment Confirmation with Instructions
Confirmed! Arrive 15 min before your appt. Call 000-000-0000 for help.

Updates for Hospitality Guests


Send updates to your hospitality guests so they know when there are changes in your facility.
Improved Hygiene Process
We introduced new cleaning and safety standards according to CDC and county guidance. Learn more: shortlink
Facility is Closed
Hotel guests: The pool is closed for cleaning until 10am tomorrow.
Get your workout in ASAP! The gym is closed for construction starting THU 7am.
Reduced Amenity Hours
The Hotel Name restaurant and bar is reducing hours to 5pm-8pm. Room service is available 24/7.

237
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Education Facility Updates


Send updates about your school’s facilities to students and their families.
School Facility is Closed
The cafeteria is converting to contactless pickup. Download the app to order ahead: shortlink
Publicly-Accessible Location is Restricted
Our public gym is restricting hours and capacity due to city restrictions. More info: shortlink

Employee Messages
Communicate important information to your employees. The Employee object is available only if you’ve purchased Work.com.
Wellness Survey Notification
This week’s wellness survey is ready for you. Please respond by 11/9: shortlink
Temporary Location Closure
We’re temporarily closing the Main St. location 1/4-1/24. Call 000-000-0000 to request a transfer.

238
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Add the Broadcast Messages Tab to an App


If you’re using broadcasting in your standard SMS channel in Service Cloud, let your broadcasters
EDITIONS
view your company’s sent messages on the Broadcast Messages tab.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article SMS
The Broadcast Messages tab displays the name, template, content, and number of recipients for applies to: channels
each sent message. You can add the tab to both standard and console navigation apps. Messaging
This
1. Go to Setup > Apps > App Manager. article for In-App,
doesn’t Messaging
2. Open the menu next to a Lightning app, and click Edit.
apply to: for Web,
3. In Lightning App Builder, click Navigation Items. standard
4. Select Broadcast Messages, and move it to the Selected Items list. and
enhanced
5. Click Save. WhatsApp,
6. To return to the App Manager page, click Back. standard
and
To confirm that Broadcast Messages was added to your app, open the app using the App Launcher. enhanced
You can open Broadcast Messages from the navigation menu. Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To view apps:
• View Setup and
Configuration
To manage apps:
• Customize Application

239
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

240
Provide Conversation Support with Messaging in Service Set Up Broadcast Messaging in Service Cloud
Cloud

Send Broadcast Messages


Send a bulk SMS from a contact, employee, person account, or messaging user list view in a standard
EDITIONS
SMS channel. View your company’s sent broadcast messages in the Broadcast Messages tab.

Important: Standard SMS channels are scheduled for retirement, and we’re limiting the Available in: Lightning
ability to create standard channels. To avoid service interruptions, upgrade your standard Experience. View required
editions.
SMS channels to enhanced channels before February 14, 2026. Enhanced SMS offers many
of the standard SMS features you love on page 207 plus session transfers and enhanced bot This Standard
support. See Upgrading from Standard to Enhanced Messaging on page 275. article SMS
applies to: channels
Note: Broadcast messages can't be sent in SMS channels that use Omni-Channel flow routing.
In your SMS channel settings, make sure that Enable Advanced Routing isn't selected. This Messaging
1. Open a contact, employee, person account, or messaging user list view. Employee is available article for In-App,
doesn’t Messaging
only if your company purchased Work.com.
apply to: for Web,
If you want to message only a subset of people in the list view, select them. If you select no standard
one, then your message is sent to everyone in the list view. and
enhanced
2. Click Send Message.
WhatsApp,
3. Confirm the sender numbers that you want to send this message from, and click Next. standard
4. Give your message an internal name. and
enhanced
5. Select a messaging template. If you don’t see one that fits, ask your Salesforce admin to create Facebook
one for you. Messenger,
6. Click Next. enhanced
SMS,
7. Review your message, and click Send.
enhanced
To see sent broadcast messages, open the app containing the Broadcast Messages tab. Then select Apple
Broadcast Messages from the navigation menu. You can see each message name, the template Messages
used, the message content, and the number of recipients. for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To send one-to-many
messages:
• Send One-to-Many
Messages

241
Provide Conversation Support with Messaging in Service Bring Your Own Channel to Salesforce
Cloud

Bring Your Own Channel to Salesforce


Use your favorite features from your preferred Messaging or Contact Center as a Service (CCaaS) provider while giving agents and
supervisors a consistent experience within Salesforce. Connect an external Messaging provider to Salesforce with Bring Your Own
Channel. Or connect an external contact center from a CCaaS provider to Salesforce with Bring Your Own Channel for CCaaS. While both
channel types provide Messaging capabilities, you can manage both Voice and Messaging channels in a single contact center and
process routing in a partner system when you integrate with a CCaaS provider.

Get Started Enable Bring Your Own Channel Enable Bring Your Own Channel For
Set Up Bring Your Own Channel Prepare Your Agents to Use Bring Your Own CCaaS
Set Up Bring Your Own Channel for CCaaS Channel Prepare Your Agents to Use Bring Your Own

Messaging Glossary Prepare Your Salesforce Org for Bring Your Channel for CCaaS
Own Channel Prepare Your Salesforce Org for Bring Your
Considerations and Limitations for Bring Own Channel for CCaaS
Your Own Channel and Bring Your Own Create a Bring Your Own Channel
Channel for CCaaS Messaging Channel Create a Bring Your Own Channel for CCaaS
Messaging Channel
Lifecycle of a Messaging Session in Service
Cloud Add Messaging to a Partner Telephony
Contact Center

242
Provide Conversation Support with Messaging in Service Bring Your Own Channel to Salesforce
Cloud

Add a Voice Channel to a Partner Contact


Center

Increase Productivity Develop Learn More...


Route Data to Objects in Bring Your Own Bring Your Own Channel Developer Guide Compare Bring Your Own Channel to Bring
Channel and Bring Your Own Channel for Create Your Own Messaging Provider Your Own Channel for CCaaS Capabilities
CCaaS Integration for Bring Your Own Channel
Interactive Messaging Components Bring Your Own Channel for CCaaS
Set Up Enhanced Bots Developer Guide
Configure After Conversation Work Time Update a Service Cloud Voice with Partner
Telephony Managed Package to Add
Messaging
Service Cloud for Partner Telephony
Developer Guide

243
Provide Conversation Support with Messaging in Service Compare Bring Your Own Channel to Bring Your Own
Cloud Channel for CCaaS Capabilities

Compare Bring Your Own Channel to Bring Your Own Channel for CCaaS
Capabilities
Explore the capabilities of Bring Your Own Channel and Bring Your Own Channel for CCaaS Messaging
EDITIONS
channels in Service Cloud, and compare them side by side.
Bring Your Own Channel and Bring Your Own Channel for CCaaS messaging channels are built on Available in: Lightning
our new conversation platform. The conversation platform also houses Service Cloud Voice, Experience. View required
Messaging for In-App and Web, and all other enhanced Messaging channels, such as WhatsApp. editions.
This shared platform has several benefits.
This Bring Your
• When we roll out a new feature, it’s often shared across all channels on the conversation platform. article Own
Agents get a consistent experience, regardless of channel. applies to: Channel and
• These channels are designed to scale beyond the customer support use case. Bring Your
Own
Because Bring Your Own Channel and Bring Your Own Channel for CCaaS messaging channels Channel for
depend on Messaging and CCaaS partner integrations, feature support varies based on partner CCaaS
implementation.
This Messaging
article for In-App,
Capability Bring Your Own channel Bring Your Own Channel
doesn’t Messaging
for CCaaS
apply to: for Web,
Setup and Routing standard
and
Automated channel setup Yes Yes enhanced
Can upgrade from standard N/A N/A WhatsApp,
channels standard
and
Omni-Channel Flow routing Yes Yes enhanced
Facebook
Queue-based routing Yes Yes Messenger,
Enhanced routing Yes Yes standard
and
Agent and queue syncing No Yes enhanced
between Salesforce and partner SMS,
enhanced
Partner-owned consent No Yes Apple
Tab-based capacity Yes Yes Messages
for Business,
Status-based capacity Yes Yes and
enhanced
Available with Sales Cloud Yes Yes
LINE
Messaging Session Start and End channels

Customer can start session Yes Yes

Agent can start session Yes Yes

Automated outbound No No
messages

Broadcast (one-to-many) N/A N/A


messaging

244
Provide Conversation Support with Messaging in Service Compare Bring Your Own Channel to Bring Your Own
Cloud Channel for CCaaS Capabilities

Capability Bring Your Own channel Bring Your Own Channel for CCaaS
Agent can end session Yes Yes

Agent can mark session inactive Yes Yes

Customer can end session N/A N/A

Customer Experience

Typing indicator: customer side Yes Yes

Typing indicator: agent side Yes Yes

Read receipts: customer side No No

Read receipts: agent side Yes Yes

Delivered receipts: customer side No No

Delivered receipts: agent side Yes Yes

Estimated wait time for customers No No

Desktop application support N/A N/A

Window branding and customization Yes (API only) Yes (API only)

Hide messaging option outside of business No No


hours

Let customers download transcripts N/A N/A

Agent Experience

Einstein recommended replies Yes Yes

Agent-to-agent transfer Yes Yes

Agent-to-flow transfer Yes Yes

Agent-to-queue transfer Yes Yes

Flag raise Yes Yes

Supervisor whisper to agents Yes Yes

View Conversation transcripts Yes Yes

After-conversation work timer Yes Yes

Einstein Bots integration Yes Yes

Conversation history for third-party bots No Yes

Conversation Catch-Up Yes Yes

Channel-object linking Yes Yes

Individual-object linking Yes Yes

Channel menu No No

245
Provide Conversation Support with Messaging in Service Compare Bring Your Own Channel to Bring Your Own
Cloud Channel for CCaaS Capabilities

Capability Bring Your Own channel Bring Your Own Channel for CCaaS
Content Sharing

Emojis: customer to agent Yes Yes

Emojis: agent to customer Yes Yes

GIFs: customer to agent Yes Yes

GIFs: agent to customer No No

File sharing: customer to agent Yes Yes

File sharing: agent to customer Yes Yes

Video messages Yes Yes

Audio messages Yes Yes

Audio message recorder with playback Yes Yes

Enhanced link messaging components Yes Yes

Question with options messaging Yes Yes


components

Time selector messaging components Yes (plain text only) Yes (plain text only)

Auto-response messaging components Yes Yes

Form messaging components Yes Yes

Notification messaging components Yes (no automation support; manual Yes (no automation support; manual
sending only) sending only)

Payment messaging components No No

Authentication messaging components No No

Custom messaging components Yes Yes

Right-to-left languages Yes Yes

Automated Responses

Conversation acknowledgment Yes Yes

Agent accept Yes Yes

Inactive conversation Yes Yes

End session Yes Yes

Security and Consent Management

Sensitive data rules Yes Yes

Encryption at rest Yes Yes

Channel consent type: Implicit opt-in Yes Yes

246
Provide Conversation Support with Messaging in Service Considerations and Limitations for Bring Your Own Channel
Cloud and Bring Your Own Channel for CCaaS

Capability Bring Your Own channel Bring Your Own Channel for CCaaS
Channel consent type: Explicit opt-in Yes Yes

Channel consent type: Double opt-in Yes Yes

Customers can opt out Yes Yes

Considerations and Limitations for Bring Your Own Channel and Bring Your
Own Channel for CCaaS
Before starting your setup process, review the considerations and limitations for Bring Your Own
EDITIONS
Channel and Bring Your Own Channel for CCaaS.
Available in: Lightning
Experience. View required
Setup
editions.
• You can associate one Conversation Channel Definition with multiple messaging channels.
This Bring Your
• Third-party bots are only supported for Bring Your Own Channel for CCaaS and aren’t currently article Own
supported for Bring Your Own Channel. applies to: Channel and
Bring Your
Own
Agent Experience Channel for
• These components are supported: Questions with Static Options, Notifications, Time Selectors, CCaaS
Enhanced Links. Quick replies, Buttons, List selectors, Forms, and Carousels.
This Messaging
• Dynamic content in messaging components isn’t supported. article for In-App,
• Read receipts and delivery receipts are only available on the agent’s side. They’re visible in real doesn’t Messaging
time and aren’t available after the messaging session ends. apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

247
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Set Up Bring Your Own Channel


Integrate your preferred messaging service with Salesforce using Bring Your Own Channel (BYOC).
EDITIONS
Use all the features you love from your external messaging service while maintaining a consistent
agent and supervisor experience within Salesforce. Available in: Lightning
Many contact centers struggle with disconnected channels and customer data. Bring Your Own Experience. View required
Channel lets you integrate an external messaging service into Salesforce, resulting in these benefits. editions.

• Agents remain firmly rooted within the Omni Agent Console. This Bring Your
• Supervisors get a comprehensive view of agent metrics and embedded coaching and training article Own
solutions with Omni Supervisor. This view aggregates data from all channels, including external applies to: Channel
channels that are connected with an API. Messaging
This
• Customer data is unified across all channels in Data Cloud. article for In-App,
• Omni-Channel Flow routes sessions. doesn’t Messaging
apply to: for Web,
• Run partner AI and Bots inside of the Service Console, together with Einstein. standard
and
enhanced
Setup Overview
WhatsApp,
Setup for Bring Your Own Channel is simple. Download a managed package from AppExchange, standard
create an Omni-Channel Flow for routing, and then install the Bring Your Own Channel messaging and
channel through a setup flow. enhanced
Facebook
Messenger,
IN THIS SECTION:
standard
Prepare Your Agents to Use Bring Your Own Channel and
Give agents the Service Cloud User license and prepare the agent console for Bring Your Own enhanced
Channel. SMS,
enhanced
Prepare Your Salesforce Org for Bring Your Own Channel Apple
Before you set up Bring Your Own Channel, enable Omni-Channel, create a flow, and customize Messages
the agent console. for Business,
Create a Bring Your Own Channel Messaging Channel enhanced
LINE, and
To create a Bring Your Own Channel (BYOC) messaging channel, follow the setup flow.
Bring Your
Uninstall Bring Your Own Channel Own
Remove a Bring Your Own Channel messaging channel from your Salesforce org. Channel for
CCaaS

248
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Prepare Your Agents to Use Bring Your Own Channel


Give agents the Service Cloud User license and prepare the agent console for Bring Your Own
EDITIONS
Channel.
1. Assign the Digital Engagement add-on license and Contact Center Bring Your Own Channel Available in: Lightning
User permission set for your Bring Your Own Channel agents. The permission set provides them Experience. View required
with the the Message Customers with Bring Your Own Channel user permission. editions.

2. Give your SCRT2 Integration User Read and Create access to the custom platform event for your This Bring Your
Bring Your Own Channel messaging channel. article Own
applies to: Channel
a. From Setup, in the Quick Find box, enter Permission Sets, and then select
Permission Sets. This Messaging
b. Click SCRT2 Integration User. article for In-App,
doesn’t Messaging
c. Click Object Settings. for Web,
apply to:
d. Click the name of the custom platform event installed as part of your managed package. standard
and
e. Click Edit, and select the Read and Create checkboxes.
enhanced
f. Click Save. WhatsApp,
standard
3. Create presence statuses for messaging. and
4. Give your agents access to presence statuses. enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel for
CCaaS

USER PERMISSIONS

To edit users:
• Manage Internal Users
To assign permission sets:
• Assign Permission Sets

249
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Prepare Your Salesforce Org for Bring Your Own Channel


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Bring Your


article Own
applies to: Channel

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel for
CCaaS

250
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Before you set up Bring Your Own Channel, enable Omni-Channel, create a flow, and customize
USER PERMISSIONS
the agent console.
To set up Omni-Channel
and create and save
Set Up Omni-Channel Lightning pages in the
1. Enable Omni Channel. Lightning App Builder:
• Customize Application
2. Create a Service Channel for messaging.
To create or change queues:
3. Create a queue where you want to route incoming messaging sessions. Add Messaging Session • Customize Application
as a supported object. AND Manage Public List
Views
Create an Omni Flow To open, edit, or create a
flow in Flow Builder:
1. From Setup, in the Quick Find box, enter Flows, and then select Flows. • Manage Flow
2. Click New Flow.
3. In the All + Templates tab, select Omni-Channel Flow.
4. From the Manager tab, create a new resource.
5. Select Variable as your Resource Type.
6. For the API Name, enter recordId. The API name is case-sensitive and must be recordId. The messaging channel uses this value
to pass information into this Omni-Channel flow.
7. For the Data Type, specify text.
8. Select Available for input, and then click Done.
9. From the Elements tab, select a Route Work action in your flow.
10. Name the New Action. Use recordId variable as the input value. Select Messaging for the Service Channel.
11. Specify Queue, Agent, Bot, or Skills as the Route To value.
a. If you select Queue, use the Queue ID for the queue where you want to direct the work.
b. If you select Agent, add the agent’s name via the Agent ID field.
c. If you select Bot, search for the bot name.
d. If you select Skills, add the Skill Requirement List.

12. Click Done.


13. Save and activate your flow.

Prepare the Messaging Session Layout


1. From Setup, in the Quick Find box, enter Lightning App Builder, and then select Lightning App Builder.
2. To create a Lightning page, select New.
3. Select the page type Record Page.
4. Name the page, and then select Messaging Session as the object.
5. On the next screen, select CLONE SALESFORCE DEFAULT PAGE and finish.
6. When you’re inside the app builder, add the Enhanced Conversation component to the page.
7. Activate the page.

251
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Create a Bring Your Own Channel Messaging Channel


To create a Bring Your Own Channel (BYOC) messaging channel, follow the setup flow.
EDITIONS

Install a Managed Package Available in: Lightning


Experience. View required
1. Install the managed package for your Bring Your Own Channel. editions.
Tip: To learn how to create your own Messaging provider integration instead of installing This Bring Your
a managed package from AppExchange, see the Bring Your Own Channel Developer article Own
Guide. applies to: Channel

This Messaging
Create a Bring Your Own Channel Messaging Channel article for In-App,
doesn’t Messaging
1. From Setup, enter Messaging Settings, and then select Messaging Settings. for Web,
apply to:
2. Click New Channel. standard
and
3. Select the Conversation Channel Definition tile that represents the Managed Package that you
enhanced
installed in step 1, and click Next. WhatsApp,
4. Give your Bring Your Own Channel messaging channel a name. standard
and
5. Click anywhere to populate the Developer Name field.
enhanced
6. Save your changes. Facebook
7. Under Omni-Channel Routing, click Edit. Messenger,
standard
8. Select Omni-Flow as the Routing Type. and
9. In the Flow Definition field, select the name of the flow that you created previously. enhanced
SMS,
10. Save your changes.
enhanced
11. Click Activate. Apple
Messages
for Business,
Create and Configure a Connected App for OAuth Integration enhanced
1. If it’s required by your Messaging provider, set up and configure your own connected app for LINE, and
OAuth on page 269. Bring Your
Own
Channel for
Test Your Bring Your Own Channel Messaging Channel CCaaS
1. Open the Service Console app, and go to the Omni-Channel utility bar at the bottom of the
console, provided it’s installed. Go online as the agent assigned to the messaging button. USER PERMISSIONS
2. Open the app where your customers initiate Bring Your Own Channel, and start a conversation.
To install packages:
3. In the console tab, verify that you received a conversation request. Accept the request and try • Download AppExchange
sending a message. Packages
To set up and edit
Messaging channels:
• Configure Messaging

252
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel
Cloud

Uninstall Bring Your Own Channel


Remove a Bring Your Own Channel messaging channel from your Salesforce org.
EDITIONS
1. From Setup, enter Messaging Settings and then select Messaging Settings.
Available in: Lightning
2. Select your channel name.
Experience. View required
3. Click the downward arrow to the right of the Activate button, and then select Deactivate. editions.
4. In the Messaging Settings component, click Edit. Bring Your
This
5. Click the Unlink symbol to the right of the Conversation Channel Definition field. article Own
applies to: Channel
6. Click Unlink in the confirmation window.
7. Save your changes. This Messaging
article for In-App,
8. Uninstall the managed package that’s associated with your Bring Your Own Channel messaging Messaging
doesn’t
channel. for Web,
apply to:
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel for
CCaaS

253
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Set Up Bring Your Own Channel for CCaaS


Connect your preferred contact center vendor to Salesforce with Bring Your Own Channel for
EDITIONS
Contact Center as a Service (CCaaS). Set up a partner contact center with integrated messaging
and voice capabilities, and take advantage of unified partner-owned routing. Add a Messaging Available in: Lightning
channel to an existing partner telephony contact center, or create a messaging-only partner contact Experience. View required
center. Use your favorite features from your preferred CCaaS provider while giving agents and editions.
supervisors a consistent experience within Salesforce.
This Bring Your
Many contact centers struggle with disconnected channels and customer data. Bring Your Own Own
article
Channel for CCaaS lets you integrate a full contact center from an external provider into Salesforce, applies to: Channel for
including the ability to manage Messaging and Voice together. You benefit in these ways. CCaaS
• Process routing, agent status, and agent capacity through a CCaaS partner’s system and sync
This Messaging
information to Salesforce from the partner. for In-App,
article
• Map agent IDs from one system to another, and keep systems in sync. doesn’t Messaging
• Run third-party bots from CCaaS partners and partner AI inside of the Service Console, together apply to: for Web,
with Einstein. standard
and
• Agents remain firmly rooted within the Omni Agent Console, even if your CCaaS partner system
enhanced
processes routing. WhatsApp,
• Agents transfer users between messaging conversations and voice calls within the same contact standard
center, as needed. and
• Supervisors get a comprehensive view of agent metrics and embedded coaching and training enhanced
solutions with Omni Supervisor. This view aggregates data from all channels, including external Facebook
channels that are connected with an API. Messenger,
standard
• Customer data is unified across all channels in Data Cloud. and
enhanced
SMS,
Setup Overview enhanced
To set up Bring Your Own Channel for CCaaS, download a managed package from AppExchange. Apple
If required by your CCaaS partner, create a connected app to integrate with Salesforce and the Messages
partner system. Create an Omni-Channel Flow for routing and then add a Bring Your Own Channel for Business,
for CCaaS messaging channel. As part of the setup flow, create a partner contact center or add your enhanced
Messaging channel to a preexisting partner telephony contact center. LINE, and
Bring Your
Own
IN THIS SECTION: Channel
Prepare Your Agents to Use Bring Your Own Channel for CCaaS
Give agents the Service Cloud User license and prepare the agent console for Bring Your Own
Channel for CCaaS.
Prepare Your Salesforce Org for Bring Your Own Channel for CCaaS
Before you set up Bring Your Own Channel for CCaaS, enable Omni-Channel, create a flow, and customize the agent console.
Create a Bring Your Own Channel for CCaaS Messaging Channel
To create a Bring Your Own Channel for Contact Center as a Service (CCaaS) messaging channel as part of a contact center, follow
the setup flow.

254
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Manage External Routing Queues for a Partner Contact Center


Although you can define routing logic using Salesforce queues, if you’re using external routing for your contact center, the partner
system uses its own queues to process routing. To route messages and voice calls to a contact center queue, map a Salesforce queue
to a partner queue. Messages and calls assigned to an unmapped queue aren’t routed at run time. The way you manage and map
an externally routed queue for a contact center depends on whether your CCaaS vendor supports Queue Management for their
integration.
Add Messaging to a Partner Telephony Contact Center
If you have a contact center with Service Cloud Voice with Partner Telephony, you can add Bring Your Own Channel for CCaaS
Messaging channels to that contact center.

255
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Prepare Your Agents to Use Bring Your Own Channel for CCaaS
Give agents the Service Cloud User license and prepare the agent console for Bring Your Own
EDITIONS
Channel for CCaaS.
1. Assign licenses to your Bring Your Own Channel for CCaaS agents. Available in: Lightning
Experience. View required
• Digital Engagement add-on license with Partner Messaging
editions.
• Service Cloud Voice Partner Telephony add-on license (if using Voice in your contact center)
This Bring Your
2. Assign permission sets to your Bring Your Own Channel for CCaaS agents. article Own
• Contact Center Bring Your Own Channel User permission set applies to: Channel for
CCaaS
• Contact Center Agent (Partner Telephony) permission set (if using Voice in your contact
center) This Messaging
article for In-App,
3. Give your SCRT2 Integration User Read and Create access to the custom platform event for your doesn’t Messaging
Bring Your Own Channel messaging channel. apply to: for Web,
a. From Setup, in the Quick Find box, enter Permission Sets, and then select standard
and
Permission Sets.
enhanced
b. Click SCRT2 Integration User. WhatsApp,
c. Click Object Settings. standard
and
d. Click the name of the custom platform event you just created. enhanced
e. Click Edit, and select the Read and Create checkboxes. Facebook
Messenger,
f. Click Save.
standard
4. Create presence statuses for messaging. and
enhanced
5. Give your agents access to presence statuses. SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel

USER PERMISSIONS

To edit users:
• Manage Internal Users
To assign permission sets:
• Assign Permission Sets

256
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Prepare Your Salesforce Org for Bring Your Own Channel for CCaaS
EDITIONS

Available in: Lightning


Experience. View required
editions.

This Bring Your


article Own
applies to: Channel for
CCaaS

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel

257
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Before you set up Bring Your Own Channel for CCaaS, enable Omni-Channel, create a flow, and
USER PERMISSIONS
customize the agent console.
To set up Omni-Channel
and create and save
Set Up Omni-Channel Lightning pages in the
1. Enable Omni Channel. Lightning App Builder:
• Customize Application
2. Create a Service Channel for messaging.
To create or change queues:
3. Create a queue where you want to route incoming messaging sessions. • Customize Application
a. Add Messaging Session as a supported object. AND Manage Public List
Views
b. Optionally, add Voice Call as a supported object if you plan to manage both Messaging and
Voice through the same queue in your partner contact center. To open, edit, or create a
flow in Flow Builder:
c. If your CCaaS partner processes routing in their system, set the routing model of the queue’s • Manage Flow
routing configuration to external routing. If Salesforce manages routing, set the routing
model to any other value.

Create an Omni Flow


1. From Setup, in the Quick Find box, enter Flows, and then select Flows.
2. Click New Flow.
3. In the All + Templates tab, select Omni-Channel Flow.
4. From the Manager tab, create a new resource.
5. Select Variable as your Resource Type.
6. For the API Name, enter recordId. The API name is case-sensitive and must be recordId. The messaging channel uses this value
to pass information into this Omni-Channel flow.
7. For the Data Type, specify text.
8. Select Available for input, and then click Done.
9. From the Elements tab, select a Route Work action in your flow.
10. Name the New Action. Use recordId variable as the input value. Select Messaging for the Service Channel.
11. Specify Queue, Agent, Bot, or Skills as the Route To value.
a. If you select Queue, use the Queue ID for the queue where you want to direct the work.
b. If you select Agent, add the agent’s name via the Agent ID field.
c. If you select Bot, search for the bot name.
d. If you select Skills, add the Skill Requirement List.

12. Click Done.


13. Save and activate your flow.

Prepare the Messaging Session Layout


1. From Setup, in the Quick Find box, enter Lightning App Builder, and then select Lightning App Builder.
2. To create a Lightning page, select New.
3. Select the page type Record Page.

258
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

4. Name the page, and then select Messaging Session as the object.
5. On the next screen, select CLONE SALESFORCE DEFAULT PAGE and finish.
6. When you’re inside the app builder, add the Enhanced Conversation component to the page.
7. Activate the page.

259
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Create a Bring Your Own Channel for CCaaS Messaging Channel


To create a Bring Your Own Channel for Contact Center as a Service (CCaaS) messaging channel as
EDITIONS
part of a contact center, follow the setup flow.
Available in: Lightning
Install a Managed Package Experience. View required
editions.
1. Install the managed package for Bring Your Own Channel for CCaaS from your preferred CCaaS
vendor. This Bring Your
article Own
applies to: Channel for
Add a Bring Your Own Channel for CCaaS Messaging Channel CCaaS
1. From Setup, in the Quick Find box, enter Messaging Settings, and then select Messaging
This
Messaging Settings. article for In-App,
2. Click New Channel. doesn’t Messaging
apply to: for Web,
3. Select the Conversation Channel Definition tile that represents the Managed Package that you standard
installed, and click Next. and
4. Choose whether to create a contact center or use an existing one. enhanced
WhatsApp,
• Create a contact center if setting up a new contact center for Bring Your Own Channel for
standard
CCaaS.
and
• Use an existing contact center to add Bring Your Own Channel for CCaaS Messaging enhanced
capabilities to a partner telephony contact center. Facebook
Messenger,
5. If you create a contact center, enter the requested details. standard
a. If your partner messaging provider supports it, enter your contact center display and API and
names, or upload the .xml file that contains your contact center definition. enhanced
SMS,
b. Complete the details required by your CCaaS provider. enhanced
6. Give your Bring Your Own Channel messaging channel a name. Apple
Messages
7. Click anywhere to populate the API Name field. for Business,
8. Save your changes. enhanced
LINE, and
9. Under Omni-Channel Routing, click Edit. Bring Your
10. Select Omni-Flow as the Routing Type. Own
Channel
11. In the Flow Definition field, select the name of the flow that you created previously.
12. Save your changes.
USER PERMISSIONS
13. Click Activate.
To install packages:
• Download AppExchange
Create and Configure a Connected App for OAuth Integration Packages
1. If it’s required by your CCaaS provider, set up and configure your own connected app for OAuth To set up and edit
on page 269. Messaging channels:
• Configure Messaging
Add Users to Your Partner Contact Center
Add Messaging users or Voice users as agents or admins to a partner contact center.

260
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

1. From Setup, in the Quick Find box, enter Contact Centers. Select Partner Contact Centers or Partner Telephony Contact
Centers, depending on your setup.
2. Select the contact center.
3. On the Contact Center details page, in the Contact Center Users section, add users to the partner contact center.

SEE ALSO:
Prepare Your Agents to Use Bring Your Own Channel for CCaaS
Set Up Contact Center Users

Test Your Bring Your Own Channel Messaging Channel


1. Open the Service Console app, and go to the Omni-Channel utility bar at the bottom of the console, provided it’s installed. Go online
as the agent assigned to the messaging button.
2. Open the app where your customers initiate Bring Your Own Channel, and start a conversation.
3. In the console tab, verify that you received a conversation request. Accept the request and try sending a message.

261
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Manage External Routing Queues for a Partner Contact Center


Although you can define routing logic using Salesforce queues, if you’re using external routing for
EDITIONS
your contact center, the partner system uses its own queues to process routing. To route messages
and voice calls to a contact center queue, map a Salesforce queue to a partner queue. Messages Available in: Lightning
and calls assigned to an unmapped queue aren’t routed at run time. The way you manage and Experience. View required
map an externally routed queue for a contact center depends on whether your CCaaS vendor editions.
supports Queue Management for their integration.
This Bring Your
article Own
Map Salesforce Queues to Partner Queues applies to: Channel for
If your contact center vendor doesn’t support Queue Management, you must create the queue in CCaaS
your partner system first, then map the queue to a Salesforce queue on the contact center details This Messaging
page. article for In-App,
If you haven’t already done so, enable Omni Channel, create a Service Channel, and create a doesn’t Messaging
Salesforce queue with the routing configuration set to external routing before this step. apply to: for Web,
standard
1. In Setup, enter Contact Centers in the Quick Find box, then select Partner Contact and
Centers or Partner Telephony Contact Centers, depending on your setup. enhanced
2. Click the contact center name for which you want to map queues. WhatsApp,
standard
3. In the Queue Mapping section, click Add. and
4. Map the Salesforce queue to the CCaaS provider’s queue. The Salesforce Queue dropdown enhanced
shows queues that support the Messaging Session object or Voice Call object, use a routing Facebook
configuration with the external routing model, and aren’t mapped yet. Each Salesforce queue Messenger,
can be mapped to one external queue. standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel

USER PERMISSIONS

To map CCaaS provider


queues to Salesforce
queues:
• Customize Application,
Contact Center Admin,
or Contact Center Admin
(Partner Telephony)

262
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

This process is similar to how you map queues specifically for telephony provider queues. For partner contact centers, you can map one
Salesforce Messaging, Voice, or combined Messaging and Voice queue to one queue on the partner's side.

Add a Queue to Your Partner Contact Center


If your contact center vendor supports Queue Management, manage and map queues on the contact center details page under Contact
Center Queues.
If you haven’t already done so, enable Omni Channel, create a Service Channel, and create a Salesforce queue with the routing configuration
set to external routing.
Also, enable the queue management setting in the Service Cloud Voice setup before these steps. From Setup, enter Partner
Telephony Setup in the Quick Find box, and then select Partner Telephony Setup. Enable Update Partner Telephony Queues
and Groups.

1. From Setup, enter Contact Centers in the Quick Find box, and then select Partner Contact Centers or Partner Telephony
Contact Centers, depending on your setup.
2. Click the contact center name for which you want to add and map queues.
3. In the Contact Center Queues section, click Add.
4. Select the Salesforce queue that you want to add to the contact center.
5. Choose to automatically create the corresponding queue in the CCaaS partner system (recommended) or select a preexisting CCaaS
partner queue.
6. Add members of the contact center to the queue.

263
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

7. Select Finish.

SEE ALSO:
Map Your Salesforce Queues to Telephony Provider Queues

264
Provide Conversation Support with Messaging in Service Set Up Bring Your Own Channel for CCaaS
Cloud

Add Messaging to a Partner Telephony Contact Center


If you have a contact center with Service Cloud Voice with Partner Telephony, you can add Bring
EDITIONS
Your Own Channel for CCaaS Messaging channels to that contact center.
To enable Messaging in a partner telephony contact center that already has Service Cloud Voice Available in: Lightning
support, you must have a Service Cloud Voice Partner Telephony license with a Digital Engagement Experience. View required
add-on license. editions.

Before you begin, install a managed package from a CCaaS provider to support Bring Your Own This Bring Your
Channel for CCaaS and Service Cloud Voice. article Own
applies to: Channel for
Tip: If you want to add Service Cloud Voice to a partner contact center instead of the other CCaaS
way around, see Add a Voice Channel to a Partner Contact Center.
This Messaging
1. From Setup, in the Quick Find box, enter Messaging Settings, and then select
article for In-App,
Messaging Settings. Messaging
doesn’t
2. Click New Channel. apply to: for Web,
standard
3. Select the Conversation Channel Definition tile that represents the managed package that you
and
installed, and click Next.
enhanced
4. Choose to use an existing contact center, and select the Partner Telephony Contact Center you WhatsApp,
want to add the Messaging channel to. standard
and
5. Give your Messaging channel a name.
enhanced
6. Click anywhere to populate the API Name field. Facebook
7. Save your changes. Messenger,
standard
8. Under Omni-Channel Routing, click Edit. and
9. Select Omni-Flow as the Routing Type. enhanced
SMS,
10. In the Flow Definition field, select the name of the flow that you created previously.
enhanced
11. Save your changes. Apple
12. Click Activate. Messages
for Business,
enhanced
LINE, and
Bring Your
Own
Channel

USER PERMISSIONS

To view the Partner Contact


Centers page:
• Customize Application
AND Manage Call
Centers
To manage a contact center:
• Contact Center Admin
(Partner Telephony)

265
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Extend Bring Your Own Channel and Bring Your Own Channel for CCaaS
Go further with your Bring Your Own Channel or Bring Your Own Channel for CCaaS messaging
EDITIONS
channel setup.
Available in: Lightning
IN THIS SECTION: Experience. View required
editions.
Route Data to Objects in Bring Your Own Channel and Bring Your Own Channel for CCaaS
Use parameters, parameter mappings, and flows to route customer data to Salesforce objects. This Bring Your
This data gives agents more context for who they’re messaging with. For example, create a article Own
Support Reason dropdown menu, and then route the customer’s input to the Messaging Session applies to: Channel and
object. Bring Your
Own
Set Up and Configure Your Own OAuth Connected App Channel for
Certain Messaging partners and CCaaS providers require you to set up and manage your own CCaaS
connected app to provide authentication for the integration between their platform and the
Salesforce Interaction Service API. Check with your provider whether setting up your own This Messaging
article for In-App,
connected app is a required setup step for their Bring Your Own Channel or Bring Your Own
doesn’t Messaging
Channel for CCaaS integration. First create the connected app and edit policies for it, and then
apply to: for Web,
update the Conversation Channel Definition (CCD).
standard
Set Up an Einstein Bot for Bring Your Own Channel or Bring Your Own Channel for CCaaS and
When you install a managed package to set up Bring Your Own Channel or Bring Your Own enhanced
Channel for CCaaS, your Messaging or CCaaS partner vendor may include a sample Einstein WhatsApp,
Bot with associated flows. Clone or adjust the sample Einstein bot and flows to fit your use case, standard
for example, to route an inbound message from a bot to an agent. If your managed package and
doesn’t include a sample bot, you can still create an Einstein bot and associate it with your enhanced
messaging channel. Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

266
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Route Data to Objects in Bring Your Own Channel and Bring Your Own Channel for
CCaaS
Use parameters, parameter mappings, and flows to route customer data to Salesforce objects. This
EDITIONS
data gives agents more context for who they’re messaging with. For example, create a Support
Reason dropdown menu, and then route the customer’s input to the Messaging Session object. Available in: Lightning
We recommend that the Partner writes help documentation to explain exactly how to connect Experience. View required
parameters, parameter mappings, and flows. Because Bring Your Own Channel and Bring Your Own editions.
Channel for CCaaS messaging channels aren’t using a Salesforce client, we don’t have full control
This Bring Your
over the mechanics. Use this help topic to familiarize yourself with the basic building blocks that Own
article
are hosted in Salesforce. applies to: Channel and
Bring Your
Own
Channel for
CCaaS

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
Parameters enhanced
A parameter establishes the data that you want to collect from your customer. For example, an Apple
Order Number parameter collects a unique order number that a customer inquires about. Messages
for Business,
and
enhanced
LINE
channels

267
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Parameter Mapping
Parameter mapping connects a parameter to a flow variable. This mapping sends the data collected by the parameter into a flow, where
it’s routed to a Salesforce object. In this example, we’re routing data collected by the Order Number parameter and sending it into an
order_number flow variable.

Omni-Channel Flow
An Omni-Channel Flow takes the flow variable, which receives data from the parameter, and sends that data from the flow variable to
an object. In this example, we’re sending an order number from a flow variable to a Salesforce custom field on the Messaging Session
object called “Order Number.”

268
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Set Up and Configure Your Own OAuth Connected App


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Bring Your


article Own
applies to: Channel and
Bring Your
Own
Channel for
CCaaS

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

269
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Certain Messaging partners and CCaaS providers require you to set up and manage your own
USER PERMISSIONS
connected app to provide authentication for the integration between their platform and the
Salesforce Interaction Service API. Check with your provider whether setting up your own connected To read, create, update, or
app is a required setup step for their Bring Your Own Channel or Bring Your Own Channel for CCaaS delete connected apps:
integration. First create the connected app and edit policies for it, and then update the Conversation • Customize Application
Channel Definition (CCD). AND either Modify All
Data OR Manage
Tip: To check whether your Messaging or CCaaS provider requires you to set up your own Connected Apps
connected app, from Setup, go to Messaging Settings and select the Messaging channel you
To update all fields except
created. In the Conversation Channel Definition section, if you see Manage Conversation
Profiles, Permission Sets,
Channel Definition, you must create your own connected app. Otherwise, the partner and Service Provider SAML
provider manages the OAuth connected app for you. Attributes:
• Customize Application
AND either Modify All
Create a Connected App for OAuth Data OR Manage
In Salesforce, set up a connected app to provide authentication for the integration between your Connected Apps
Messaging or CCaaS provider’s platform and the Salesforce Interaction Service API.
To update Profiles,
1. If you don’t have a self-signed certificate, follow the steps to Create a Private Key and Self-Signed Permission Sets, and Service
Digital Certificate. Make sure you have the certificate saved in your system. You upload the file Provider SAML Attributes:
when you create the connected app. • Customize Application
AND Modify All Data
2. From Setup, in the Quick Find box, enter App Manager, and then select App Manager. AND Manage Profiles
3. Click New Connected App. and Permission Sets

4. In the Connected App Name field, enter a unique name for the connected app. The name
you enter automatically appears in the API Name field. Don’t change the API Name.
5. In the Contact Email field, enter the email address of the person for Salesforce to contact if needed.
6. Select the Enable OAuth Settings checkbox, and configure these settings:
a. Add a callback URL (endpoint), which is the same as the OAuth redirect URI. We recommend you use
https://salesforce.com to start with.
b. Select Use digital signatures, then click Choose File and select the public key file in your system to upload it.
c. Add the OAuth scopes: Access Interaction API resources (interaction_api) and Perform Requests at any time
(refresh_token, offline_access)

7. Select Issue JSON Web Token (JWT)-based access tokens for named users.
8. Save your changes, then click Continue.

Manage Access to Your Connected App for OAuth


Configure access to the connected app you created.
1. From Setup, in the Quick Find box, enter Manage Connected Apps, and then select Manage Connected Apps.
2. Click the name of the connected app you created.
3. To open the Connected App Edit page, click Edit Policies.
4. In the OAuth Policies section, set Permitted Users to Admin approved users are pre-authorized. If you see a warning message,
click OK.
5. Save your changes.
6. To open the Application Profile Assignment page, click Manage Profiles.

270
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

7. Select System Administrator.


8. Save your changes.

Update the Conversation Channel Definition with Your Connected App


After setting up your connected app, update the Conversation Channel Definition for your Messaging channel to reference the connected
app you created.
1. From Setup, in the Quick Find box, enter Messaging Settings, and then select Messaging Settings.
2. Select the Messaging channel you created.
3. In the Conversation Channel Definition section, click Manage Conversation Channel Definition. If this button isn’t available, your
CCaaS provider manages the connected app, and you don’t need to create one and associate it with the Conversation Channel
Definition.
4. Select the connected app you created.
5. Save your changes.

SEE ALSO:
Configure Basic Connected App Settings
Enable OAuth Settings for API Integration

271
Provide Conversation Support with Messaging in Service Extend Bring Your Own Channel and Bring Your Own Channel
Cloud for CCaaS

Set Up an Einstein Bot for Bring Your Own Channel or Bring Your Own Channel for
CCaaS
When you install a managed package to set up Bring Your Own Channel or Bring Your Own Channel
EDITIONS
for CCaaS, your Messaging or CCaaS partner vendor may include a sample Einstein Bot with
associated flows. Clone or adjust the sample Einstein bot and flows to fit your use case, for example, Available in: Lightning
to route an inbound message from a bot to an agent. If your managed package doesn’t include a Experience. View required
sample bot, you can still create an Einstein bot and associate it with your messaging channel. editions.
1. From Setup, in the Quick Find box, enter Einstein Bots, and then select Einstein Bots.
This Bring Your
2. In the My Bots list, for the sample bot, click the dropdown and select Clone, or edit the sample article Own
bot to meet your needs. applies to: Channel for
CCaaS
3. The sample bot may include a simple inbound Omni-Channel flow. It appears in the Inbound
Omni-Channel Flows section of the Bot Overview page. To use this flow: This Messaging
• In Flow Builder, specify a fallback queue in the Route Work Action element. Then make any article for In-App,
doesn’t Messaging
other customizations and activate the flow.
apply to: for Web,
• Add your flow to your Bring Your Own Channel for CCaaS Messaging channel. You can add standard
your flow to an existing channel from the Inbound Omni-Channel Flows section of the Bot and
Overview page. Otherwise, go to the Messaging Settings page in Setup. Then select enhanced
Omni-Flow under Omni-Channel Routing and specify the inbound flow. WhatsApp,
standard
4. If the sample bot doesn’t include an inbound Omni-Channel flow, create an inbound and
Omni-Channel flow from scratch. enhanced
5. The sample bot includes an Outbound Omni-Channel Flow that appears in the Settings section Facebook
of the Bot Overview page. Add a different flow, or edit the sample flow in Flow Builder to meet Messenger,
your needs. standard
and
6. In Einstein Bot Builder, click Activate to activate the bot. enhanced
7. For Bring Your Own Channel for CCaaS only, if your partner CCaaS vendor controls routing, SMS,
contact the partner vendor to finish set up routing for the flow associated with your Einstein enhanced
bot. They will need the flow ID and fallback queue ID. If Salesforce controls routing, this step Apple
isn’t necessary. Messages
for Business,
enhanced
SEE ALSO: LINE, and
Clone an Enhanced Bot Bring Your
Using Enhanced Bots in Messaging Channels Own
Channel

USER PERMISSIONS

To build and manage


Einstein Bots:
• Customize Application
OR Modify Metadata OR
Manage Bots

272
Provide Conversation Support with Messaging in Service Increase Messaging Productivity
Cloud

Increase Messaging Productivity


Congratulations, you created a Messaging channel... now what? After creating a channel, take it to
EDITIONS
the next level with productivity-boosting features such as messaging components, automated
messaging, sensitive data rules, and Einstein Bots. Available in: Lightning
Here are steps you can take to add valuable functionality to your Messaging channels. Experience. View required
editions.
Goal Setup Help Available In Messaging
This
Give agents a library of links, questions Interactive Messaging Components Enhanced article for In-App,
with options, and other structured Messaging applies to: Messaging
content to send during messaging channels and for Web,
sessions. Messaging for standard
and
In-App and Web
enhanced
Customize the messaging consent Customize the Messaging Opt-In and Enhanced WhatsApp,
requirements, keywords, and Opt-Out Experience Messaging standard
auto-responses for a channel. and
Customize Auto-Responses in Service channels and
Messaging for enhanced
Cloud Messaging Channels Facebook
In-App and Web
Messenger,
Automatically block sensitive data in Block Sensitive Data in Messaging Standard and standard
customer and agent messages. Sessions and Voice Call Transcripts enhanced and
Messaging enhanced
channels and SMS,
Messaging for enhanced
In-App and Web Apple
Messages
Send template-based notifications Send Automated Messages in Standard for Business,
about case updates or other changes. Standard Messaging Channels Messaging enhanced
channels LINE, Bring
Your Own
Send Automated Messages in Enhanced Channel,
Enhanced Messaging Channels Messaging and Bring
channels and Your Own
Messaging for Channel for
In-App and Web CCaaS
Set Push Notifications for Messaging Messaging for
for In-App In-App

Add an Einstein bot to a channel. Using Enhanced Bots in Messaging Enhanced


Channels Messaging
channels and
Messaging for
In-App and Web

Get Started with Einstein Bots Standard


Messaging
channels

273
Provide Conversation Support with Messaging in Service Increase Messaging Productivity
Cloud

Goal Setup Help Available In


Import messaging user data into Salesforce. Create Messaging Users Standard and enhanced
Messaging channels

Track your service team’s messaging activity. Report on Messaging Activity in Service Cloud Standard and enhanced
Manage Agents, Queues, and Skills with Omni Messaging channels and
Supervisor Messaging for In-App and
Web

Customize agent keyboard actions. Customize the Enter or Return Key in Messaging for Messaging for Web
Web
Show the Emoji Keyboard in Messaging for Web

Show customers their estimated wait time to be Show Customers an Estimated Wait Time in the Messaging for In-App and
connected to an agent. Messaging Window Web

Hide the messaging window outside of your business Set Business Hours in Messaging for In-App and Web Messaging for In-App and
hours. Web

View or update a channel’s basic settings, such as its Update Service Cloud Messaging Channel Settings Standard and enhanced
name and routing preferences. Messaging channels

Create a library of standard text snippets that agents Set Up and Use Quick Text Standard and enhanced
can insert into messaging sessions. Einstein Reply Recommendations Messaging channels and
Messaging for In-App and
Web

Give agents a set amount of time after a messaging Configure After Conversation Work Time Standard and enhanced
session to wrap up their work before the next session. Messaging channels and
Messaging for In-App and
Web

Automatically send the customer a survey when a Gather Feedback at the End of a Messaging Session Standard Messaging
messaging session ends. channels

Set Up Post-Chat Surveys for Messaging for In-App Messaging for In-App and
and Web Web

Trigger an action, such as an agent flag raise, when Automatically Trigger an Action Based on Detected Enhanced Messaging
an agent or customer enters a keyword in a Keywords channels and Messaging
messaging session. for In-App and Web

Show agents and supervisors an AI-generated Show Agents and Supervisors Mid-Conversation Enhanced Messaging
summary of an ongoing messaging session when Summaries channels and Messaging
they accept or monitor a session. for In-App and Web

Extract contact reasons from Messaging sessions and Build an Einstein Conversation Mining Report Enhanced Messaging
build a report to identify top case drivers. channels and Messaging
for In-App and Web

To give agents more information about the person Individual-Object Linking Enhanced Messaging
they’re messaging with, automatically search, link, or channels and Messaging
screen-pop records during messaging sessions. for In-App and Web

274
Provide Conversation Support with Messaging in Service Upgrading from Standard to Enhanced Messaging
Cloud

Goal Setup Help Available In


Direct customers to your Messaging channels by Channel Menu Standard and enhanced
adding a channel menu on your website. Messaging channels and
Messaging for In-App and
Web

Upgrading from Standard to Enhanced Messaging


When you upgrade your standard SMS, Facebook Messenger, or WhatsApp channel to an enhanced
EDITIONS
channel, you gain access to key customer service tools. Learn what to expect in an upgrade.
Available in: Lightning
Experience. View required
Key Differences Between Standard and Enhanced Channels
editions.
• Service reps have more ways to exchange information with customers. In enhanced
This Standard
channels, reps can typically share longer messages and larger files as well as more types of files.
article WhatsApp,
They can also send interactive content using messaging components, whose formats include
applies to: standard
questions with options, time selectors, and rich links.
Facebook
• Support teams have more options for responding to customers. In enhanced channels: Messenger,
– Admins can include AI agents, such as Agentforce Service Agent, and enhanced bots in and
their support strategy. Standard channels support standard bots only, and aren't compatible standard
with AI agents. SMS
channels
– Service reps can transfer an active messaging session to another rep, queue, or routing
flow. This Messaging
article for In-App,
– Service reps can free up their capacity by marking a messaging session inactive if the
doesn’t Messaging
customer stops responding.
apply to: for Web,
• More session statuses means more insight into messaging activity. Enhanced sessions enhanced
include several extra session statuses, including Inactive, Consent, and Error. You can reference WhatsApp,
these session statuses when setting up reports and designing message routing logic. enhanced
Facebook
• Service reps have more options in the Service Console. In the Enhanced Conversation
Messenger,
component, reps have access to a row of action buttons that let them send content such as
enhanced
quick text, messaging components, files, and emoji. Reps can also raise a flag to request help SMS,
from a supervisor and exchange “whispered” messages with the supervisor that are captured enhanced
in the session transcript. Apple
• Service reps use a different quick action to start conversations. To initiate messaging Messages
sessions in enhanced channels, reps use the Send Message global action. In standard channels, for Business,
they use the Start Conversation quick action. The Send Message action is available in the global enhanced
action menu, which means that reps can initiate a messaging session from any page in Salesforce. LINE, Bring
Your Own
• Automated outbound messages are sent in a different way.Message notifications are
Channel,
template-based messages that are sent to customers via a flow at particular times—for example,
and Bring
when a case status changes or an order ships. In standard channels, the admin creates their
Your Own
templates in Setup and sends them with the Message Notification flow action. In enhanced Channel for
channels, the admin creates notification messaging components and sends them with the CCaaS
Send Conversation Messages flow action.

275
Provide Conversation Support with Messaging in Service Upgrading from Standard to Enhanced Messaging
Cloud

Understanding the Upgrade Timeline


Standard WhatsApp, Facebook Messenger, and SMS channels are scheduled for retirement, and we’re limiting the ability to create
standard channels. To avoid service interruptions:
• Upgrade your standard WhatsApp channels to enhanced channels by July 30, 2025.
• Upgrade your standard SMS channels to enhanced channels by February 14, 2026
• Upgrade your standard Facebook Messenger channels to enhanced channels by February 14, 2026

Preparing for an Upgrade


We recommend completing these tasks before you upgrade a standard channel.

Task Details Learn More


Know what to expect. Compare the capabilities of standard and enhanced Compare Standard and Enhanced SMS
channels for your channel type. For WhatsApp upgrades, Channel Capabilities
review additional considerations about data transfer, Compare Standard and Enhanced
conversation history, and continuity for customers. Facebook Messenger Channel
Capabilities
Compare Standard and Enhanced
WhatsApp Channel Capabilities
Considerations for Upgrading or
Migrating to Enhanced WhatsApp

Turn off two-step verification for Submit a request to [email protected] Create or Upgrade to an Enhanced
your number. (WhatsApp only) to turn off two-step verification for your number. WhatsApp Channel in Service Cloud

Create an enhanced bot. Replace any standard Einstein bots that you’re using with Using Enhanced Bots in Messaging
an enhanced bot that you can include in your routing logic. Channels
Standard bots can’t be used in enhanced channels.

Update your routing logic. Create an Omni-Channel flow that routes messages sent to Route Service Cloud Messaging
your WhatsApp number. Messages sent to your upgraded Sessions with Omni-Channel Flows
channel can then be routed to enhanced bots, service reps, Update Service Cloud Messaging
and queues. If you’re using standard skills-based routing, Channel Settings
you must switch to a skills-based Omni-Channel routing
flow.
This task includes additional tasks that you must complete
after the upgrade:
• If you’re using bots and want to repurpose an existing
flow that was already routing messages in your standard
channel, update the flow after the channel upgrade so
that it routes to an enhanced bot instead of a standard
bot. An Omni-Channel flow can’t route messages to
both standard and enhanced bots.
• If you created a new flow for your upgraded channel,
edit your channel’s routing settings and select the new
flow.

276
Provide Conversation Support with Messaging in Service Upgrading from Standard to Enhanced Messaging
Cloud

Task Details Learn More


Update your automated If you’re using message templates in your standard channel, Send Automated Messages in
messaging. (SMS & WhatsApp replace them with notification messaging components sent Enhanced Messaging Channels
only) by a flow. Standard message templates can’t be used in
enhanced channels, and you’ll use a different flow action
to send automated messages in enhanced channels.
Currently, you can’t send automated messages in enhanced
Facebook Messenger channels.

Set up productivity tools. Create a Messaging Session page layout for enhanced Add Messaging to the Service Console
channels that includes the Enhanced Conversation page Block Sensitive Data in Messaging and
component. The Conversation page component, used in Voice Transcripts
standard channels, can’t be used in enhanced messaging
sessions. Interactive Messaging Components

Create sensitive data rules for enhanced channels to mask


certain text patterns such as credit card numbers. Sensitive
data rules created for standard channels don’t work in
enhanced channels.
Optionally, create messaging components that service reps
and bots can send to customers.

Update your channel’s End Unassigned messaging sessions are automatically ended Customize Auto-Responses in Service
Conversation auto-response to during an SMS or Facebook Messenger channel upgrade. Cloud Messaging Channels
let customers know about the When a session is ended, the customer receives the End
upgrade. (SMS & Facebook Conversation auto-response that’s configured in your
Messenger only) channel settings. Optionally, update this auto-response
before you upgrade to set customers’ expectations. Here’s
an example:
We’re doing some planned maintenance so we can serve you
better in WhatsApp. If you still need help, please respond to this
message.
After the upgrade, change the message back to its previous
version.

Pause activity in your channel. If your standard channel has any active messaging sessions
(SMS & Facebook Messenger that are assigned to a service rep, we can’t complete the
only) upgrade. Ask all reps to close their active sessions in the
channel and log out of Omni-Channel.
Optionally, you can also reassign the channel to a queue
with no assigned service reps until the upgrade is complete.
Unassigned messaging sessions are automatically ended
during the upgrade, so after it’s complete, clear the holding
queue by assigning its sessions to reps in Omni Supervisor.
While WhatsApp upgrades don’t require you to pause
channel activity, we recommend using a test or low-traffic
phone number at first. This way, you can test your routing

277
Provide Conversation Support with Messaging in Service Upgrading from Standard to Enhanced Messaging
Cloud

Task Details Learn More


logic, message templates, and customer experience, and
minimize downtime that can occur during an upgrade.

Ready to Upgrade?
After completing the preparation tasks, you can perform the upgrade yourself.
• To upgrade a standard SMS or Facebook Messenger channel, find your channel on the Messaging Settings page and select Upgrade
to Enhanced. This process typically takes less than a minute. If you were using a standard bot in your channel before the upgrade,
your customers may experience some downtime while you update your routing settings to route to an enhanced bot.
• Upgrading a standard WhatsApp channel works a little differently. Instead of changing your channel’s platform type from standard
to enhanced, you create and activate a separate enhanced channel. Follow the steps in Create or Upgrade to an Enhanced WhatsApp
Channel in Service Cloud.
When the Messaging Settings page shows your channel with a Platform Type of Enhanced, the upgrade is complete. Optionally, click
the channel name to review and update its routing, auto-response, or opt-in settings.

278
Provide Conversation Support with Messaging in Service Enhanced Messaging Channel Activation Checklist
Cloud

Enhanced Messaging Channel Activation Checklist


After you create or upgrade to an enhanced Facebook Messenger, Apple Messages for Business,
EDITIONS
WhatsApp, or LINE channel, you can’t yet message with customers in the channel. Run through
this checklist to verify that your channel is ready for business. Then, activate the channel to start Available in: Lightning
helping customers in your channel. Experience. View required
editions.

This Enhanced
article WhatsApp,
applies to: enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
WhatsApp,
standard
Facebook
Messenger,
standard
and
enhanced
SMS, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

279
Provide Conversation Support with Messaging in Service Enhanced Messaging Channel Activation Checklist
Cloud

Step What’s Involved


(Required) Give users access to Messaging. Assign users the Messaging permission set license and two
permissions sets: one for agents and one for Salesforce admins.

(Required) Set your message routing preferences. In your channel settings in Setup, choose your routing type and
select either an Omni-Channel flow and fallback queue (includes
bot support) or a queue (no bot support). If you created a queue
during channel creation, you’re all set.
While you’re configuring routing, we recommend turning on
enhanced Omni-Channel routing, which includes features such as
an inbox-style view of work items.

(Required) Configure the Service Console. Configure the Service Console and the Messaging Session record
page so agents can help customers in enhanced Messaging
channels. Use different page layouts for standard and enhanced
channels.

(Required) Customize your channel auto-responses on page 419 Customize auto-responses for common scenarios in messaging
and learn about the opt-in and opt-out experience. sessions, and set keywords that customers can use to perform
actions such as opting out of receiving messages.

(Required—LINE only) Complete the connection in LINE on page In the LINE Developers Console, provide an essential URL from
186. Salesforce and update other settings.

(Recommended) Create messaging user records for existing If you’re upgrading from a standard channel or migrating your
customers so that agents can initiate messaging sessions in your number from an external business service provider, preserve
channel. existing customers’ consent preferences by creating messaging
user records for them. Each record links the customer to your
channel and contains their consent status: implicitly opted in,
explicitly opted in, or opted out.

(Recommended) Create an enhanced bot. Incorporate an enhanced bot into your support process to lighten
the load on human service agents. Create a bot, and then reference
it in an Omni-Channel flow to control which sessions are routed
to it.

(Recommended—WhatsApp only) Set up automated messaging Create a flow that sends customers automated messages notifying
and copy message templates. them about product deliveries, case updates, or something else.
Each notification message is based on an approved WhatsApp
template. Optionally, copy templates from other WhatsApp
Business accounts. For example, if you’re upgrading from a standard
channel, copy the templates from your standard channel’s account.
Templates can be copied before or after your enhanced channel
is activated.

(Recommended) Create a library of interactive content for agents Help your team share and gather information faster by creating
and bots. messaging components, which can be questions with clickable
options, time selectors, or other formats. Agents can send
messaging components to customers during messaging sessions.

280
Provide Conversation Support with Messaging in Service Enhanced Messaging Channel Activation Checklist
Cloud

Ready to activate your channel?


After you complete the items on this checklist, you can activate your channel to start receiving messages. On the Messaging Settings
page, click your channel’s name. Then, click Activate Channel at the top of the page.

IN THIS SECTION:
Activating and Deactivating Messaging Channels in Service Cloud
Several types of enhanced Messaging channels include the option to activate, deactivate, or refresh the channel. These options give
you more control over when a channel goes live. Review tips for activating a channel, deactivating a channel, and refreshing a
channel’s connection to an external messaging app such as WhatsApp.

281
Provide Conversation Support with Messaging in Service Enhanced Messaging Channel Activation Checklist
Cloud

Activating and Deactivating Messaging Channels in Service Cloud


Several types of enhanced Messaging channels include the option to activate, deactivate, or refresh
EDITIONS
the channel. These options give you more control over when a channel goes live. Review tips for
activating a channel, deactivating a channel, and refreshing a channel’s connection to an external Available in: Lightning
messaging app such as WhatsApp. Experience. View required
editions.
Activating a Channel This Enhanced
After you create and customize a channel, select Activate Channel on the channel record home article WhatsApp,
page to start the flow of messaging traffic into Salesforce. We’ll ask you to verify that you completed applies to: enhanced
the tasks on the activation checklist on page 279 before activating. Facebook
Messenger,
If your channel is an enhanced WhatsApp channel, try to activate it within 14 days of creating it. If enhanced
more time has passed, you must reverify your number with WhatsApp in one of two ways: Apple
• Log into Meta Business Manager, go to your number settings, and reverify it. Messages
for Business,
• Repeat the New Channel setup flow on the Messaging Settings page using the same phone
and
number. enhanced
LINE
Deactivating a Channel channels

To pause messaging traffic in an enhanced Messaging channel, select Deactivate Channel on the This Messaging
channel record home page. Deactivating stops the flow of messages to and from Salesforce in the article for In-App,
channel, including auto-responses. However, customers can still send you messages. doesn’t Messaging
apply to: for Web,
You can reactivate a channel at any time, but keep these items in mind: standard
• When a LINE, WhatsApp, or Apple Messages for Business channel is deactivated, there’s no way WhatsApp,
for you to view and respond to messages sent to your messaging account. standard
Facebook
• When a Facebook Messenger channel is deactivated, you can go to the Facebook Messenger
Messenger,
admin dashboard to view and respond to messages sent to your messaging account.
standard
• If you’re deactivating your channel as a temporary measure, we recommend reactivating within and
48 hours to avoid missing customer messages. Here’s why: 48 hours after deactivation, all open enhanced
messaging sessions in your channel will be ended. Open sessions include those in which a SMS, Bring
customer sent you a message while the channel was deactivated. If you reactivate the channel Your Own
later, those sessions are available in Salesforce, but they aren’t routed to your support team Channel,
because their status is Ended. By reactivating before 48 hours have passed, you ensure that and Bring
those new messages are routed to your support team. Your Own
Channel for
CCaaS
Refreshing a Channel's Connection
Sometimes, a connection to an external messaging app gets interrupted or stuck in a pending state.
Refreshing restores the connection so your team can continue helping customers. It doesn’t affect open messaging sessions. Depending
on the channel type, we may ask you to reenter some channel details.
Certain channel actions are limited in enhanced WhatsApp channels:
• Don’t refresh an enhanced WhatsApp channel’s connection more than 10 times in 72 hours.
• Don’t activate and deactivate an enhanced WhatsApp channel more than 5 times in 72 hours. Refreshing a sandbox deactivates any
active channels in the sandbox.

282
Provide Conversation Support with Messaging in Service Customize the Messaging Opt-In and Opt-Out Experience
Cloud

Checking a Channel's Status


To see whether a channel is active, go to the Messaging Settings page in Setup. Find your channel in the list and look at the Active
column. If the checkbox is selected, the channel is active.

Customize the Messaging Opt-In and Opt-Out Experience


With the help of consent keywords, your customers tell you when and whether you can message
EDITIONS
them on a particular Messaging channel in Service Cloud.
Available in: Lightning
Experience. View required
Respect Your Customers’ Preferences
editions.
In most Messaging channels, customers who start a conversation by sending a message to your
This Messaging
company are deemed to consent to communication. There are a few exceptions to this rule: in
article for In-App,
short code channels, customers must send one or more keywords to explicitly opt into receiving
applies to: Messaging
messages. And in enhanced Messaging channels, you can choose to require customers to explicitly
for Web,
opt in.
standard
Customers’ consent levels for a channel range from Opted Out—meaning no messages are and
allowed—to Double Opted In—meaning the customer verified twice that your company can enhanced
message them on that channel. WhatsApp,
standard
In Salesforce, each customer’s communication preference is tracked on their messaging user record
and
for a particular channel. A customer can have different consent statuses across different channels.
enhanced
For example, they can explicitly opt into communication on your WhatsApp channel and opt out Facebook
on your SMS channel. Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

283
Provide Conversation Support with Messaging in Service Customize the Messaging Opt-In and Opt-Out Experience
Cloud

Just as customers have their own consent level for a channel, you choose a required consent level for each channel that you create.
When a customer’s consent level for a channel meets the required consent level, they can receive messages on the channel.

Consent Level Description


Implicit Opt-In By sending your company a message, the customer indicates that they consent to receive messages
on this channel. In enhanced channels and Messaging for In-App and Web, customers don’t receive
an automatic opt-in message when they’re implicitly opted in to receive messages.

Explicit Opt-In The customer explicitly consents to receive messages from your company. Here’s what that might
look like:
• Customer: Hi, I need help with an order.
• You: (Opt-in prompt) Thanks for connecting with us! To opt in to receiving messages, reply Yes.
• Customer: (Opt-in keyword) Yes
• You: (Opt-in confirmation) Thanks for opting in and allowing us to send you messages.

Double Opt-In The customer explicitly consents to receive messages from your company, and then confirms their
consent. Here’s what that might look like:
• Customer: Hi, I need help with an order.
• You: (Opt-in prompt) Thanks for connecting with us! To opt in to receiving messages, reply Yes.
• Customer: (Opt-in keyword) Yes
• You: (Double opt-in prompt) To confirm your response, reply Start.
• Customer: (Double opt-in keyword) Start
• You: (Opt-in confirmation) Thanks for opting in and allowing us to send you messages.

Opt-Out The customer sends an opt-out keyword, such as STOP. When a customer opts out, they receive an
opt-out confirmation message. They then stop receiving messages, and all of their open chats are
closed.
In addition to using opt-out keywords, customers can opt out from receiving messages in Apple
Messages by swiping left on a chat in Apple Messages to delete it, and then replying Yes to the
confirmation prompt.
If a customer blocks your company on Facebook Messenger, agents can’t contact that customer
again. If a customer deletes the Facebook Messenger message thread, agents can’t contact that
customer again until the customer resumes the conversation.

284
Provide Conversation Support with Messaging in Service Customize the Messaging Opt-In and Opt-Out Experience
Cloud

Consent Level Description


In any channel, if a customer opts out of messages and then sends a new message, they’re considered
to have opted back into receiving messages. If the channel’s consent type is Explicit Opt-In or
Double-Opt-In, they’re then prompted for an opt-in keyword.

Customize Your Consent Conversations in Enhanced Messaging Channels


To customize the consent settings for an enhanced Messaging channel, go to the Messaging Settings page in Setup and click your
channel’s name. There, you can:
• Set your channel’s required consent level in the Consent Type field.
• Write an opt-in prompt.
• Set keywords that customers can use to opt into receiving messages, opt out of receiving messages, ask for help, or make a custom
request.
• Write the auto-responses that customers receive when they send keywords. The keyword must be the only content of the message
for it to trigger an auto-response.
• Set keywords and responses for languages other than your default language. A keyword can be used only once across the languages
you add.

For help customizing each auto-response, see Customize Auto-Responses in Service Cloud Messaging Channels.

Customize Your Consent Conversations in Standard Messaging Channels


To customize consent settings for a standard Messaging channel, go to the Messaging Settings page in Setup and click Edit in the
channel’s action menu.

285
Provide Conversation Support with Messaging in Service Customize the Messaging Opt-In and Opt-Out Experience
Cloud

We get you started with some default opt-in and opt-out keywords, but you can replace these keywords with your own. For help
customizing each auto-response, see Customize Auto-Responses in Service Cloud Messaging Channels.

SEE ALSO:
Messaging User Fields
Object Reference: MessagingEndUser

286
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Interactive Messaging Components


Help support agents and customers exchange information faster in enhanced Messaging channels
EDITIONS
and Messaging for In-App and Web. Share links, questions with predefined options, time slots,
post-conversation surveys, and more. Available in: Lightning
You can create several types of messaging components for agents to send: questions with static Experience. View required
(predefined) options (1), questions with dynamic options (2), auto-responses (3), payment requests editions.
(4), time selectors (5), enhanced links (6), authentication requests (7), custom components (8), forms
This Messaging
(9), and notifications. for In-App,
article
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

287
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Here are some ways that messaging components can help you create a consistent, familiar, and fast service experience for customers.

Agent’s Goal Solution Agent Experience


Direct the customer to a web page that Create an enhanced link component with Use the messaging component action in
describes your newest service. an appealing image and link to the page. the messaging window to select and send
the component.

Find out what the customer needs help Create a question with static options Use the messaging component action in
with. component that shows the customer a list the messaging window to select and send
of common contact reasons to choose from. the component.

Determine which order the customer is Create a question with dynamic options Run a flow to send the component.
inquiring about. component that shows the customer a list
of their recent orders to choose from.

Find an open appointment time that works Create a time selector component that Run a flow to send the component.
for the customer. shows the customer a list of available time
slots to choose from.

At the end of a messaging session, Create an auto-response component that No agent action needed. In the settings of
automatically send a link to a customer includes a personalized survey link. a Messaging for In-App and Web channel,
satisfaction survey. admins select an auto-response component
in the Conversation Acknowledgment, Start
Conversation, Inactive Conversation, and
End Conversation fields. The appropriate
component is sent automatically when the
customer sends an opening message, the

288
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Agent’s Goal Solution Agent Experience


agent joins, the session is marked inactive,
or the session ends.

Quickly gather information from customers Create a form component that generates a Use the messaging component action in
by having them respond to a series of record, such as a contact or work order, from the messaging window to select and send
questions. a customer’s responses. the component.

Request payments using Apple Pay. Create a payment component that sends Run a flow to send the component.
customers a payment request.

Verify a customer’s identity using a Create an authentication component that Use the messaging component action in
third-party authentication provider such as prompts customers to log into Google. the messaging window to select and send
Google. the component.

Share an external app in messaging Create a custom component that lets Use the messaging component action in
sessions, such as your company mobile app. customers access your mobile app’s the messaging window to select and send
functionality, such as product browsing, the component.
from within the messaging session.

Send automated messages to notify Create a notification component that a flow No agent action needed. Admins create a
customers about case updates, product sends to customers when certain criteria are flow that sends the component when
shipments, or something else. met. specific criteria are met.

Create and manage messaging components on the Messaging Components page in Setup.

IN THIS SECTION:
Messaging Component Types and Formats
With messaging components, you can send structured content such as questions with options in enhanced Messaging channels
and Messaging for In-App and Web. Learn the purpose, format, and setup process of each component type.
Get to Know the Messaging Component Builder
The Messaging Component Builder is your workshop where you can customize and preview all types of messaging components.
Learn where and how to get things done in the Builder.
Create and Send Enhanced Links in Messaging Sessions
An enhanced link is a web page link that includes an image and custom link text. Create enhanced link messaging components that
agents can send to customers in supported enhanced Messaging channels or Messaging for In-App and Web.
Create and Send Questions with Static Options in Messaging Sessions
Create questions with static options to help agents quickly gather information from customers. For example, create a question that
asks customers to select the reason for their inquiry. Agents can send the question component to customers in supported enhanced
Messaging channels and Messaging for In-App and Web.
Create and Send Questions with Dynamic Options in Messaging Sessions
To quickly locate the record that a customer is inquiring about, let agents send customers a question with a dynamic list of records
to choose from. For example, ask customers to choose from a list of their recent orders or cases. Create your question and options
in Setup, and then add a flow that agents run to send the question to customers in a messaging session.
Create and Send Time Selectors in Messaging Sessions
Prompt customers to select from a list of time slots during messaging sessions. For example, ask customers to select a time for a
service visit or delivery. Create a time selector messaging component, and then link it to a flow and an Apex class.

289
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Auto-Response Components in Messaging Sessions


Create a text or link response that’s sent automatically when a customer initiates a messaging session, an agent joins, a customer
stops responding, or a session ends. Auto-response messaging components are supported only in Messaging for In-App and Web,
Bring Your Own Channel, and Bring Your Own Channel for CCaaS.
Create and Send Secure Forms in Messaging Sessions
To let agents send secure forms to customers in supported Messaging channels, create a form messaging component. Forms let
you quickly gather sensitive information from customers, such as network passwords or credit card information.
Create and Send Authentication Requests in Messaging Sessions
Let agents verify a customer’s identity during an enhanced Apple Messages for Business messaging session. Using an authentication
messaging component, prompt the customer to log into an authentication provider such as Google.
Create and Send Payment Requests in Messaging Sessions
Request payments from customers during messaging sessions with a payment messaging component. Agents can send the
component to prompt the customer to make a payment with Apple Pay.
Share External Apps in Messaging Sessions
Create a custom messaging component so agents can embed an external mobile app in enhanced Apple Messages for Business
messaging sessions. Customers can then access the app’s capabilities, such as search functionality, within their Apple Messages
chat.
Add Dynamic Content to Messaging Components
When you create messaging components for agents to use in enhanced Messaging channels or Messaging for In-App and Web,
you can use formulas to add dynamic, session-specific content to the component.
Translate Messaging Components into Your Customer’s Language
Show messaging components in a customer’s preferred language with the help of Translation Workbench. For example, when you
send a French-speaking customer a question with three options, show the question and options translated into French.
Add Images to Messaging Components with Constants, Parameters, and Formulas
Many types of messaging components can include images, such as enhanced links, forms, and questions with options. Images in
messaging components give your customers helpful visual cues, reinforce company branding, and add some color—literally and
figuratively—to everyday service interactions. Learn how to control which images are shown in a messaging component that an
agent or bot sends to a customer.
Considerations for Messaging Components
Before creating messaging components for agents to send in messaging sessions, review important considerations.

290
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Messaging Component Types and Formats


With messaging components, you can send structured content such as questions with options in
EDITIONS
enhanced Messaging channels and Messaging for In-App and Web. Learn the purpose, format, and
setup process of each component type. Available in: Lightning
A messaging component’s appearance in a messaging session varies depending on three things. Experience. View required
editions.
• The type of channel where it’s used—for example, an enhanced Facebook Messenger channel
versus an enhanced WhatsApp channel. This Messaging
• The formats that you select when you create the component. You can add and customize one article for In-App,
or more formats to control how a component appears to customers. Some formats are available applies to: Messaging
only in certain channels or look different depending on the channel. If you don’t add any formats for Web,
enhanced
or your selected formats aren’t available, your component appears in the default text-only
WhatsApp,
format.
enhanced
• The capabilities of the device that the customer is using to exchange messages. For example, Facebook
in Apple Messages for Business channels, the Quick Replies format isn't supported in some Messenger,
older iOS versions, and the Form format isn't supported in the Messages app on Mac computers. enhanced
Apple
Messages
Messaging Component Types for Business,
enhanced
Component Description Supported Channel Setup LINE, Bring
Type Types and Formats Your Own
Enhanced link Web page link that includes Messaging for In-App and Basic (under 5 Channel,
an image and custom link Web: Rich Link, Text minutes). and Bring
Your Own
text. Enhanced WhatsApp: Text Channel for
Ideal for: Sharing frequently Enhanced Facebook CCaaS
visited web pages, such as Messenger: Media, Text
your company’s home page This Standard
or a product profile. Enhanced SMS: Text article WhatsApp,
doesn’t standard
Enhanced Apple Messages
apply to: Facebook
for Business: Rich Link, Text
Messenger,
Enhanced LINE: Rich Link, and
Text standard
and
Bring Your Own Channel
enhanced
and Bring Your Own
SMS
Channel for CCaaS: Rich
channels
Link, Text

Question with Question with a list of Messaging for In-App and Intermediate
static options predefined clickable Web: Card Carousel, (about 10
choices. Buttons, Quick Replies, Text minutes).
Ideal for: Standardizing Enhanced WhatsApp:
common introductory Buttons, List Selector, Text
questions, such as the Enhanced Facebook
reason for a customer’s Messenger: Buttons, Card
inquiry. Carousel, Quick Replies, Text

291
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Component Type Description Supported Channel Types and Setup


Formats
Enhanced SMS: Text
Enhanced Apple Messages for Business:
List Selector, Quick Replies, Text
Enhanced LINE: Card Carousel, Buttons,
Quick Replies, Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Card
Carousel, Buttons, List Selector, Quick
Replies, Text

Question with dynamic Question with a list of customer-specific Messaging for In-App and Web: Card Advanced (30 or more
options records. Carousel, Buttons, Quick Replies, Text minutes).
Ideal for: Identifying the record that the Enhanced WhatsApp: Buttons, List Requires flows.
customer is asking about. For example, Selector, Text
ask customers to choose from a list of Enhanced Facebook Messenger:
their recent orders or cases. Buttons, Card Carousel, Quick Replies,
Text
Enhanced SMS: Text
Enhanced Apple Messages for Business:
List Selector, Quick Replies, Text
Enhanced LINE: Card Carousel, Buttons,
Quick Replies, Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Card
Carousel, Buttons, List Selector, Quick
Replies, Text

Time selector Prompt with a list of open time slots. Messaging for In-App and Web: Advanced (30 or more
Ideal for: Scheduling appointments. For Buttons, Quick Replies, Text minutes).
example, ask customers to select a time Enhanced WhatsApp: Buttons, List Requires flows and Apex.
for a service visit or delivery. Selector, Text
Enhanced Facebook Messenger:
Buttons, Quick Replies, Text
Enhanced SMS: Text
Enhanced Apple Messages for Business:
Time Selector, Quick Replies, Text
Enhanced LINE: Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Text

292
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Component Type Description Supported Channel Types and Setup


Formats
Auto-response Text or web page link that’s sent Messaging for In-App and Web: Web Intermediate (about 10
automatically in specific scenarios. Page, Text minutes).
Ideal for: Sending personalized Bring Your Own Channel and Bring
greetings, goodbyes, and links to Your Own Channel for CCaaS: Text
surveys.

Form List of secure fields for customers to Messaging for In-App and Web: Form, Intermediate (about 10
complete. Text minutes).
Ideal for: Generating records from Enhanced WhatsApp: Text
customer responses, such as contacts Enhanced Facebook Messenger: Text
or work orders.
Enhanced SMS: Text
Enhanced Apple Messages for Business:
Form, Text
Enhanced LINE: Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Form,
Text

Notification Informational message, such as a Messaging for In-App: Rich Link, Text Advanced (30 or more
delivery update. Enhanced WhatsApp: External minutes).
Ideal for: Notifying customers about Template, Text Requires flows.
case or order updates. Enhanced Facebook Messenger: Text
(no flow support; only manual sending
from the Service Console is supported)
Enhanced SMS: Text
Enhanced Apple Messages for Business:
Rich Link, Text
Enhanced LINE: Rich Link, Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Rich Link,
Text

Authentication Screen where customers enter login Messaging for In-App and Web: Text Advanced (30 or more
credentials for an authentication service Enhanced WhatsApp: Text minutes).
such as Google. Requires Apex.
Enhanced Facebook Messenger: Text
Ideal for: Verifying a customer’s identity.
Enhanced SMS: Text
Enhanced Apple Messages for Business:
Authentication, Text
Enhanced LINE: Text

293
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Component Type Description Supported Channel Types and Setup


Formats
Payment Request to complete a payment using Messaging for In-App and Web: Text Advanced (30 or more
Apple Pay. Enhanced WhatsApp: Text minutes).
Ideal for: Gathering payments during Enhanced Facebook Messenger: Text Requires flows and Apex.
Apple Messages for Business messaging
sessions. Enhanced SMS: Text
Enhanced Apple Messages for Business:
Payment, Text
Enhanced LINE: Text

Custom External app embedded in a messaging Messaging for In-App and Web: Text Intermediate (about 10
session. Enhanced WhatsApp: Text minutes).
Ideal for: Sharing an app with Enhanced Facebook Messenger: Text
customers, such as your own mobile
app. Enhanced SMS: Text
Enhanced Apple Messages for Business:
External Application, Text
Enhanced LINE: Text
Bring Your Own Channel and Bring
Your Own Channel for CCaaS: Text

If you add multiple formats to a messaging component, Salesforce uses the most suitable format while trying to respect your priority
order.

294
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: Create a question with options component with five options. Add the Buttons and Quick Replies formats, with Buttons
as the highest-priority format. In a Facebook Messenger conversation, the component appears in the Quick Replies format because
the Buttons format supports only three options. If the component includes only three options, the higher-priority format is used.

Messaging Component Formats


You can add the following formats to messaging components. The Text format is added by default.

Format Description Appearance


Authentication • Used for: Authentication components
• Supported in: Enhanced Apple Messages for
Business
• Displays a link for the customer to log into an
authentication provider to verify their identity.

295
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance


Buttons • Used for: Question with options components,
time selector components
• Supported in: Messaging for In-App and Web,
enhanced WhatsApp, enhanced Facebook
Messenger, enhanced LINE, Bring Your Own
Channel, and Bring Your Own Channel for CCaaS
• Displays a text prompt and clickable button
options. Enhanced WhatsApp and enhanced
Facebook Messenger channels support up to 3
options. Buttons can appear horizontally or
vertically depending on the channel type and
word length.
For components sent by agents or bots in enhanced
WhatsApp channels, if a list option is over 24
characters, the option text is truncated in the Buttons
format.

Card Carousel • Used for: Question with options components


• Supported in: Messaging for In-App and Web,
enhanced Facebook Messenger, enhanced LINE,
Bring Your Own Channel, and Bring Your Own
Channel for CCaaS
• Displays a text prompt and up to 10 clickable
option cards (in Enhanced Facebook Messenger)
or up to 5 clickable option cards (in Messaging
for In-App and Web), each with an image and
text label.

External Application • Used for: Custom components


• Supported in: Enhanced Apple Messages for
Business
• Displays a link to an external application or iOS
extension.

External Template • Used for: Notification components No image available.

• Supported in: Enhanced WhatsApp

296
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance


• Displays a template message that was created
and approved in WhatsApp Business Manager.
Templates can’t contain buttons or footers.

Form • Used for: Form components


• Supported in: Messaging for In-App and Web,
enhanced Apple Messages for Business, Bring
Your Own Channel, and Bring Your Own Channel
for CCaaS
• Displays a list of fields for customers to complete.

List Selector • Used for: Question with options components,


time selector components

297
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance


• Supported in: Enhanced WhatsApp, enhanced
Apple Messages for Business, Bring Your Own
Channel, and Bring Your Own Channel for CCaaS
• Displays a clickable text prompt that leads to a
vertical list of up to 10 clickable options.
These limits apply to components sent by agents or
bots in enhanced WhatsApp channels:
• If the question or title of a component is over 20
characters, the List Selector format can’t be used
and the component appears in the next available
format—usually, the Text format.
• If a list option is over 24 characters, the option
text is truncated in the List Selector format.

Media • Used for: Enhanced link components


• Supported in: Enhanced Facebook Messenger,
Bring Your Own Channel and Bring Your Own
Channel for CCaaS
• Displays a link name and image.

Payment • Used for: Payment components


• Supported in: Enhanced Apple Messages for
Business
• Displays a link for the customer to make a
payment using Apple Pay.

298
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance


Quick Replies • Used for: Question with options components,
time selector components
• Supported in: Messaging for In-App and Web,
enhanced Facebook Messenger, enhanced Apple
Messages for Business, enhanced LINE, Bring Your
Own Channel, and Bring Your Own Channel for
CCaaS
• Displays a text prompt and clickable button
options. Enhanced Facebook Messenger channels
support up to 13 options. Buttons can appear
horizontally or vertically depending on the
channel type and word length.

Rich Link • Used for: Enhanced link components, notification


components
• Supported in: Messaging for In-App and Web,
enhanced Apple Messages for Business,
enhanced LINE, Bring Your Own Channel, and
Bring Your Own Channel for CCaaS
• Displays a link name and image.

Text • Used for: All types of components Here’s what the auto-generated Text format of a
question with static options looks like in the
• Supported in: All types of channels
Messaging Component Builder.
• Displays a customizable plain text version of a
messaging component. The Text format is the
default format for messaging components, and
is used if the formats added to the component
aren’t available or supported in a channel. The
Text format of a messaging component is
automatically added when you create the
component, and uses formula templates to
display the same text as other formats.

299
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance


When the component is sent in text format,
customers see the question and options that you
provided when you created the component:
Where are you located?
Select an option:
California
Arizona
Nevada
New Mexico
Somewhere else

Time Selector • Used for: Time Selector components


• Supported in: Enhanced Apple Messages for
Business, Bring Your Own Channel, and Bring
Your Own Channel for CCaaS
• Displays a prompt and a list of clickable time slots.

Web Page • Used for: Auto-response components


• Supported in: Messaging for In-App and Web,
Bring Your Own Channel, and Bring Your Own
Channel for CCaaS
• Displays a link name and URL.

300
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Format Description Appearance

SEE ALSO:
Supported Functions in Messaging Component Formulas
Facebook Documentation: Quick Replies
Facebook Documentation: Buttons
Facebook Documentation: Generic Template (Carousel)
Facebook Documentation: Media Template
WhatsApp Documentation: Interactive Object
Apple Documentation: Interactive Message Types

301
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Get to Know the Messaging Component Builder


The Messaging Component Builder is your workshop where you can customize and preview all
EDITIONS
types of messaging components. Learn where and how to get things done in the Builder.
The Builder opens when you perform either of these actions on the Messaging Components page Available in: Lightning
in Setup. Experience. View required
editions.
• You create a messaging component.
• You click the name of a messaging component. This Messaging
article for In-App,
Let’s look at a messaging component in the Builder. Messaging
applies to:
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

302
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The component name appears in the header bar. The tabs in the left-hand navigation menu each contain settings that control the
appearance and behavior of your messaging component.

Tab Name Description Tasks Completed on this Tab


Details Manage a component’s details such as its name, • Update the component name, which
developer name, description, type, and language. agents see in the Service Console.
Depending on the component type, the Details tab
• Update the component description, which
also shows other settings such as the associated
appears only in the Builder.
global action.
• Update the component language to
indicate which language its text uses. This
field is informational and appears only in
the Builder.
• Add or remove formats to your
component, and drag them into priority
order.

Constants Manage standard and custom constants that you can • View and edit standard constants.
reference in your component’s properties. The text
• Add and remove custom constants, which
and images that you provide when creating your
can be images or text.
component are all saved as standard constants. You
can also add custom constants. For example, to show • Edit list options and add images to them.
an image in the component link sent to customers,
add the image as a custom constant and then
reference it in a component property.

303
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Tab Name Description Tasks Completed on this Tab


Parameters Manage standard and custom parameters that you • View and edit standard parameters.
can reference in your component’s properties. In
• Add and remove custom parameters.
some types of components, standard parameters are
added automatically. For example, time selectors
include a standard parameter that represents the
time slots shown in the component. You can also
add up to 5 custom parameters per component, such
as a RecordId parameter that lists a product name.

Customization This tab appears only for form components. • View the global action associated with the
component.
• Update the number of minutes after
which links to the form expire in
messaging sessions.

Payment Provider This tab appears only for payment components. View the payment provider associated with
your messaging component.

Authentication Provider This tab appears only for authentication components. View the authentication provider associated
with your messaging component.

Component Formats Manage the formats that the component is available Click a format tab to complete these tasks.
in. The Text (plain text) format is added by default, • View the channels that support that
but all components offer additional formats that you format.
can add to control its appearance and behavior.
• Customize the format properties for the
When you add a format to the component, it appears
component. Configure each property to
as a tab in the Component Formats section.
use a literal value, a constant, or a formula
template that references the component’s
constants or parameters.
• View a preview of the component in that
format.

SEE ALSO:
Messaging Component Types and Formats
Add Dynamic Content to Messaging Components
Add Images to Messaging Components with Constants, Parameters, and Formulas

304
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Enhanced Links in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
Bring Your
Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
Facebook
Messenger,
standard
and
enhanced
SMS, and
enhanced
LINE
channels

305
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

An enhanced link is a web page link that includes an image and custom link text. Create enhanced
USER PERMISSIONS
link messaging components that agents can send to customers in supported enhanced Messaging
channels or Messaging for In-App and Web. To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

Note: In enhanced WhatsApp and LINE channels, enhanced link components are available only in the Text format. When this
format is used, customers may see a link preview on page 477 or just the link title and URL. If you plan to create a screen flow that
automatically shares links in WhatsApp or LINE, enhanced link components are a good option. Otherwise, agents can simply copy
and paste a URL into a messaging session.

Step 1: Create an Enhanced Link


To get started, create your enhanced link on the Messaging Components page in Setup.
1. From Setup, enter Messaging Components in the Quick Find box, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Select Enhanced Link.
4. Enter your link text and URL, and then upload an image.

306
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

5. Enter a name and description for your enhanced link—for example, Company Home Page or Services Website.
These values aren’t visible to customers, but agents see the name in the list of messaging components in the Service Console. Assign
a name that indicates the link’s destination and purpose so agents know when to use it.

6. Click Done.
The Messaging Component Builder opens.
7. On the Component Details page, further customize your component.
a. In the Component Formats section, control the way your link appears in each type of Messaging channel. Click Add Format,
select a format, and then click Done.

Note: Each type of messaging channel has its own supported formats. To find out which formats a channel type supports,
see Messaging Component Types and Formats. If you plan to use the component in several types of Messaging channels,
it’s a good idea to add at least one format per channel type. For example, if an enhanced link component will be used in
both enhanced Facebook Messenger channels and Messaging for In-App and Web, you can add the Media and Rich Link
formats, respectively.

b. In the left-hand sidebar, click a format type to customize its properties.

307
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. In the Component Properties pane, configure your title, image, and URL for each format. To keep it simple, select Constant for
each Type field and select the only available constant, which comes from the information that you entered a few steps ago.
Then, click Save.

308
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

You can configure an enhanced link component to use dynamic inputs—for example, to show different images or lead to
different URLs depending on the nature of the messaging session. However, using constants is more straightforward. To view,
edit, or create constants, click Constants in the left-hand sidebar.

d. Arrange the formats you selected in priority order. If a component can’t be shown in the highest-priority format, the next format
is used.
e. When you’re done editing your component, click Save and then click Back to exit the Messaging Component Builder.

Step 2: Send an Enhanced Link in a Messaging Session


You can send enhanced links to customers in enhanced Messaging channels and Messaging for In-App and Web.
1. During an active messaging session, click the messaging component action in the messaging window.

309
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

2. Optionally, use the filter at the top to show only enhanced links.
3. Select the link you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.

Example: When an agent sends an enhanced link component in an enhanced Facebook Messenger channel, the agent sees:

The customer sees:

310
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

311
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Questions with Static Options in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

312
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create questions with static options to help agents quickly gather information from customers. For
USER PERMISSIONS
example, create a question that asks customers to select the reason for their inquiry. Agents can
send the question component to customers in supported enhanced Messaging channels and To create messaging
Messaging for In-App and Web. components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

Step 1: Create a Question with Options


To get started, create your question with options on the Messaging Components page in Setup.
1. From Setup, in the Quick Find box, enter Messaging Components, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Select Question with Options, and then select Static Options.
4. Enter your question and options. If you plan to use your component in enhanced WhatsApp channels, keep your question under
20 characters and your options under 24 characters.

313
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

5. Enter a name and description for your question.


These values aren’t visible to customers, but agents see the name in the list of messaging components in the Service Console. Assign
an informative name so agents know when to use the component.

6. Click Done.
The Messaging Component Builder opens.
7. On the Component Details page, further customize your component.
a. In the Component Formats section, control the way your component appears in each type of Messaging channel. Click Add
Format, select a format, and then click Done.

Note: Each type of messaging channel has its own supported formats. To find out which formats a channel type supports,
see Messaging Component Types and Formats. If you plan to use the component in several types of Messaging channels,
it’s a good idea to add at least one format per channel type. For example, if a question with options component will be
used in both enhanced Facebook Messenger and enhanced WhatsApp channels, you can add the Buttons and List Selector
formats, respectively.

b. In the left-hand sidebar, click a format type to customize its properties.

314
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. In the Component Properties pane, configure each format’s properties. To keep it simple, select Constant for each Type field
and select the only available constant, which comes from the information that you entered a few steps ago. Then, click Save.
d. Arrange the formats you selected in priority order. If a component can’t be shown in the highest-priority format, the next format
is used.
e. To show an image with each list option, click Constants in the left sidebar. Edit each constant and upload an image. Some
component formats don’t support images.
f. When you’re done editing your component, click Save, then click Back to exit the Messaging Component Builder.

Step 2: Send a Question with Options in a Messaging Session


You can send questions with options to customers in enhanced Messaging channels and Messaging for In-App and Web.
1. During an active messaging session, click the messaging component action in the messaging window.

315
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

2. Optionally, use the filter at the top to show only questions with options.
3. Select the link you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.

Example: When an agent sends a question with options component in an enhanced Facebook Messenger channel, the agent
sees:

The customer sees:

316
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

317
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Questions with Dynamic Options in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

318
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

To quickly locate the record that a customer is inquiring about, let agents send customers a question
USER PERMISSIONS
with a dynamic list of records to choose from. For example, ask customers to choose from a list of
their recent orders or cases. Create your question and options in Setup, and then add a flow that To create messaging
agents run to send the question to customers in a messaging session. components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

1. From Setup, in the Quick Find box, enter Messaging Components, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Click Question with Options, and then select Dynamic Options.
4. Enter your question. For example, Where are you located? If you plan to use your component in enhanced WhatsApp
channels, keep your question under 20 characters and your options under 24 characters.
5. Select an object. Only Case, Product, Asset, Order, and custom objects can be selected.
6. From the list of object fields, select the plain text display field. For example, if you’re working with a custom Location object, select
the Location Name field to show a list of location names.

319
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

7. Enter a name and description for your question.


These values aren’t visible to customers, but agents see the name in the Service Console.
8. Click Done.
The Messaging Component Builder opens.
9. On the Component Details page, further customize your component.
a. In the Component Formats section, control the way your component appears in each type of Messaging channel. Click Add
Format, select a format, and then click Done.

Note: Each type of messaging channel has its own supported formats. To find out which formats a channel type supports,
see Messaging Component Types and Formats. If you plan to use the component in several types of Messaging channels,
it’s a good idea to add at least one format per channel type. For example, if a question with options component will be
used in both enhanced Facebook Messenger and enhanced WhatsApp channels, you can add the Buttons and List Selector
formats, respectively.

320
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

b. In the left-hand sidebar, click a format type to customize its properties.


c. In the Component Properties pane, configure each format’s properties. To keep it simple, use the auto-created constant for the
question and the auto-created parameter to show records by field value, such as Location Name. Then, click Save.
d. Arrange the formats you selected in priority order. If a component can’t be shown in the highest-priority format, the next format
is used.
e. When you’re done editing your component, click Save > Back to exit the Messaging Component Builder.

After you create your component, it’s time to link it to a flow that agents can use to send it to a customer. Then, add the flow to the
Service Console and test it.

IN THIS SECTION:
Set Up a Flow to Send Questions with Options in Messaging Sessions
To let agents send a question with dynamic options in supported enhanced Messaging channels or Messaging for In-App and Web,
create a flow and associate it with your question component. Then, add the flow to the Service Console.

SEE ALSO:
Messaging Component Types and Formats
Add Dynamic Content to Messaging Components

321
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Set Up a Flow to Send Questions with Options in Messaging Sessions


To let agents send a question with dynamic options in supported enhanced Messaging channels
EDITIONS
or Messaging for In-App and Web, create a flow and associate it with your question component.
Then, add the flow to the Service Console. Available in: Lightning
Experience. View required
User Permissions Needed editions.
To open, edit, or create a flow in Flow Builder: Manage Flow This Messaging
article for In-App,
To create or edit a console app: Customize Application
applies to: Messaging
AND View Setup and Configuration for Web,
enhanced
WhatsApp,
enhanced
Note: If you plan to create multiple messaging components that are linked to flows, here Facebook
are two ways to help agents quickly find the flow they need in the Service Console: Messenger,
• Group the Flow components in an Accordion component. To help agents understand enhanced
the purpose of the accordion component, enter a custom section label—for example, Apple
Messaging Components (Dynamic). Messages
for Business,
• Group all messaging component flows as sub-flows within one larger flow. When an enhanced
agent runs the flow, they select the relevant sub-flow to insert the messaging component LINE, Bring
they need. Your Own
Channel,
1. In Flow Builder, create a screen flow.
and Bring
2. Create a Variable resource of data type Text, called recordId, and make it available for input. Your Own
This resource stores the ID of the messaging session. Channel for
3. Add your own custom flow logic. CCaaS

a. To add a Record Collection Variable and show a collection of records, select Allow multiple This Standard
values (collection). The flow must populate the variable with the same object type that article WhatsApp,
the messaging component needs. For example, if your messaging component shows a list doesn’t standard
of cases, your flow should produce a variable that is a collection of Case records. apply to: Facebook
Messenger,
b. Add a Get Records element and define conditions to get the records of interest. For example, and
if your messaging component shows a list of cases, create an element that gets cases with standard
a high priority and a status of New. and
enhanced
4. Add a Screen flow component. Within that screen, add an Enhanced Message component. SMS
a. For Messaging Session ID, enter the recordId Variable that you created in step 2. channels
b. Select the messaging component that you want to use.
c. For Record Variable, enter the Record Collection Variable described in step 3.

5. Save and activate the flow.


6. Add the flow to the Service Console so agents can send the component during messaging sessions. See Add Messaging to the
Service Console.
7. Send the question with options in enhanced Messaging channels or Messaging for In-App and Web.
a. During an active messaging session, in the Service Console, find the Flow component that’s linked to the question with options.
b. Run the flow to insert the component into the message field.

322
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. Click Send.
In this enhanced Facebook Messenger channel, the agent sees:

The customer sees:

323
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: This flow sends a question with options component that prompts the customer to select the case that they’re inquiring
about. The component is linked to the flow on the screen labeled Case Screen.

SEE ALSO:
Build a Flow
Flow Screen Input Component: Enhanced Message

324
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Time Selectors in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
and
enhanced
Apple
Messages
for Business
channels

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

325
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Prompt customers to select from a list of time slots during messaging sessions. For example, ask
USER PERMISSIONS
customers to select a time for a service visit or delivery. Create a time selector messaging component,
and then link it to a flow and an Apex class. To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

1. From Setup, in the Quick Find box, enter Messaging Components, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Click Time Selector.
4. Enter a prompt and a plain text option, and then click Next. If you plan to use your component in enhanced WhatsApp channels,
keep your prompt under 20 characters.

5. Enter a name and description for your time selector component.


These values aren’t visible to customers, but agents see the name in the Service Console.

326
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

6. Click Done.
The Messaging Component Builder opens.
7. On the Component Details page, further customize your component.
a. In the Component Formats section, control the way your component appears in each type of Messaging channel. Click Add
Format, select a format, and then click Done.

Note: Each type of messaging channel has its own supported formats. To find out which formats a channel type supports,
see Messaging Component Types and Formats. If you plan to use the component in several types of Messaging channels,
it’s a good idea to add at least one format per channel type. For example, if a time selector component will be used in
both enhanced Facebook Messenger and enhanced WhatsApp channels, you can add the Buttons and List Selector formats,
respectively.

b. In the left-hand sidebar, click a format type to customize its properties.


c. In the Component Properties pane, configure each format’s properties. To keep it simple, use the auto-created constant for the
question. Then, click Save.

d. Arrange the formats you selected in priority order. If a component can’t be shown in the highest-priority format, the next format
is used.
e. When you’re done editing your component, click Save > Back to exit the Messaging Component Builder.

After you create your component, it’s time to link it to a flow that agents can use to send it to a customer. The flow must also reference
an Apex class that provides the list of available time slots. Then, add the flow to the Service Console and test it.

IN THIS SECTION:
Set Up a Flow to Send Time Selectors in Messaging Sessions
Let agents send time selector components in supported enhanced Messaging channels and Messaging for In-App and Web. Create
a screen flow, associate it with a messaging component and an Apex class, and add it to the Service Console.

327
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: Apex Class for Time Selector Messaging Components


Time selector messaging components send customers a prompt and a list of available time slots for them to choose from. To generate
the list of time slots each time the component is sent, create an Apex class. The Apex class determines the time slot start time,
duration, and time zone.

Set Up a Flow to Send Time Selectors in Messaging Sessions


Let agents send time selector components in supported enhanced Messaging channels and
EDITIONS
Messaging for In-App and Web. Create a screen flow, associate it with a messaging component
and an Apex class, and add it to the Service Console. Available in: Lightning
Experience. View required
User Permissions Needed editions.
To open, edit, or create a flow in Flow Builder: Manage Flow This Messaging
article for In-App,
To create or edit a console app: Customize Application
applies to: Messaging
AND View Setup and Configuration for Web,
enhanced
WhatsApp,
enhanced
Note: If you plan to create multiple messaging components that are linked to flows, here Facebook
are two ways to help agents quickly find the flow they need in the Service Console: Messenger,
• Group the Flow components in an Accordion component. To help agents understand and
the purpose of the accordion component, enter a custom section label—for example, enhanced
Messaging Components (Dynamic). Apple
Messages
• Group all messaging component flows as sub-flows within one larger flow. When an for Business
agent runs the flow, they select the relevant sub-flow to insert the messaging component channels
they need.
This Standard
1. In Flow Builder, create a screen flow. See the example for guidance. article WhatsApp,
2. Add the flow to the Service Console so agents can send the component during messaging doesn’t standard
sessions. See Add Messaging to the Service Console. apply to: Facebook
Messenger,
3. Send the time selector in enhanced Messaging channels or Messaging for In-App and Web. standard
a. During an active messaging session, in the Service Console, find the Flow component that’s and
linked to the time selector. enhanced
SMS,
b. Run the flow to insert the component into the message field. enhanced
c. Click Send. LINE, Bring
Your Own
In this enhanced Facebook Messenger channel, the agent sees:
Channel,
and Bring
Your Own
Channel for
CCaaS

328
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The customer sees:

329
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: This flow sends a time selector component and asks the customer to select a time slot for an appointment. The
component is linked to the flow on the screen labeled Time selected screen.

SEE ALSO:
Build a Flow
Flow Screen Input Component: Enhanced Message
Set Up a Flow to Send Questions with Options in Messaging Sessions
Example: Apex Class for Time Selector Messaging Components

330
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: Apex Class for Time Selector Messaging Components


Time selector messaging components send customers a prompt and a list of available time slots
EDITIONS
for them to choose from. To generate the list of time slots each time the component is sent, create
an Apex class. The Apex class determines the time slot start time, duration, and time zone. Available in: Lightning
This Apex class provides example time slots at several intervals, each set by a pair of Datetime Experience. View required
statements. editions.

Example: This Messaging


article for In-App,
public with sharing class MessagingTimeSlotOptions { applies to: Messaging
for Web,
@InvocableMethod enhanced
public static List<List<RichMessaging.TimeSlotOption>> WhatsApp,
getTimeSlotOptions(){
enhanced
List<List<RichMessaging.TimeSlotOption>> result = new
Facebook
List<List<RichMessaging.TimeSlotOption>>();
Messenger,
List<RichMessaging.TimeSlotOption> options = new
List<RichMessaging.TimeSlotOption>{
and
new RichMessaging.TimeSlotOption( enhanced
Datetime.now().addHours(1), Apple
Datetime.now().addHours(2)), Messages
new RichMessaging.TimeSlotOption( for Business
Datetime.now().addHours(3), channels
Datetime.now().addHours(4)),
This Standard
new RichMessaging.TimeSlotOption(
Datetime.now().addHours(25), article WhatsApp,
Datetime.now().addHours(26)), doesn’t standard
new RichMessaging.TimeSlotOption( apply to: Facebook
Datetime.now().addHours(27), Messenger,
Datetime.now().addHours(28)) standard
}; and
enhanced
result.add(options); SMS,
return result; enhanced
} LINE, Bring
} Your Own
Channel,
and Bring
SEE ALSO: Your Own
Apex Code Overview Channel for
CCaaS

331
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Auto-Response Components in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
Bring Your
Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

332
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create a text or link response that’s sent automatically when a customer initiates a messaging
USER PERMISSIONS
session, an agent joins, a customer stops responding, or a session ends. Auto-response messaging
components are supported only in Messaging for In-App and Web, Bring Your Own Channel, and To create messaging
Bring Your Own Channel for CCaaS. components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To set up and edit


Messaging channels:
• Configure Messaging
To view channels:
• View Setup and
Configuration

With auto-response messaging components, you can automate common actions. For example:
• At the start of each messaging session, send a welcome message with a link to your Terms and Conditions web page.
• At the end of each messaging session, send a link to a page showing your current promotions.
• At the end of each messaging session, send a link to a customer satisfaction survey.
• When a customer remains inactive for a certain number of minutes, send them a message letting them know that the agent is
moving on to another customer.
To use auto-response components, create the component in Setup. Then, add the component to a Messaging for In-App and Web
channel and specify when it’s sent.
1. From Setup, enter Messaging Components in the Quick Find box, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Select Auto-Response, and then click Next.
4. Enter the auto-response. For example: Thanks for letting us help you today!
If you plan to include a link, enter the introductory text only. You can add the link in a minute. For example: Sign up for our
newsletter.

5. Enter a name and description for your component, and click Done.
The Messaging Component Builder opens.
6. On the Component Details page, further customize your auto-response.
a. If your auto-response is text-only, you’re all set. Skip to step 8.

333
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

b. To add a link to your auto-response, click Add Format and select Web Page.
c. Click Web Page in the left-hand menu and customize its properties in the Component Properties pane.
d. Under Message Configuration, select Constant for Type and $Constants.Title for Constant. This adds the auto-response text
that you provided earlier.
e. Under URL Configuration, select Literal and enter the link URL.

f. Under Display Configuration, select Chat Message or Popup. In Messaging for In-App, all auto-responses appear as chat
messages regardless of this setting.
g. (Optional) Under Web Page Parameters, reference parameters specific to the messaging session, web page, or app.
h. Click Save.

7. Configure the plain text version of your auto-response to include the URL.
a. Click Text in the left-hand menu.
b. Edit the Formula Template field to include the URL.

334
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. Click Save.

8. Add the component to your Messaging Channel.


a. From Setup, enter Messaging Settings in the Quick Find box, and then select Messaging Settings.
b. If you’re adding the component to a Messaging for In-App and Web channel, find your channel in the list, and click Edit in its
action menu. If you’re adding the component to a Bring Your Own Channel messaging channel, find your channel in the list,
and click its name.
c. Scroll down to the Automated Responses section of the page. In the Conversation Acknowledgment, Start Conversation, End
Conversation, and Inactive Conversation fields, select an auto-response component. You can use the same component for
multiple fields.

9. Optionally, use the Messaging for In-App or Web APIs (Web, iOS, Android) to send additional parameter values to the component.
10. Test the component in a Messaging for In-App and Web session.
Keep these considerations in mind.
• The messaging component action in the messaging window doesn’t show auto-response components. These components are sent
only if they’re selected in a Messaging for In-App and Web channel’s settings.
• When an auto-response component is sent in a Messaging for In-App and Web channel, agents see a generic placeholder in the
transcript. Agents can’t see the content of the auto-response.

IN THIS SECTION:
Set Up Post-Chat Surveys for Messaging for In-App and Web
At the end of a Messaging for In-App and Web session, automatically send the customer a link to a Salesforce Feedback Management
survey.
Troubleshooting Auto-Response Messaging Components
You can encounter error messages when sending an auto-response messaging component.

335
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Personalize the URL for your Auto-Response Component


To personalize the URL being sent by an auto-response messaging component, use a placeholder. Personalizing the URL creates a
dynamic experience for the end user. For example, use a placeholder to reference a language code in the URL, which presents the
URL to the end user in their preferred language.

SEE ALSO:
Add Dynamic Content to Messaging Components
Customize Auto-Responses in Service Cloud Messaging Channels
Messaging for Web Developer Guide
Messaging for In-App Developer Guide

336
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Set Up Post-Chat Surveys for Messaging for In-App and Web


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

337
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

At the end of a Messaging for In-App and Web session, automatically send the customer a link to
USER PERMISSIONS
a Salesforce Feedback Management survey.
To create messaging
components:
Step 1: Create Your Survey
• Customize Application
You can send post-chat surveys created in Salesforce Feedback Management or via a third-party AND View Setup and
solution. This article focuses on surveys created in Salesforce Feedback Management. Configuration
1. Ensure that you have the correct licensing for Salesforce Surveys, then create a survey in OR
Salesforce. Optionally, include merge fields to personalize the text shown in the survey. System Administrator
2. Generate and copy your survey link. The link automatically contains several parameters, such To set up and edit
as an invitationId, surveyName, and UUID. Messaging channels:
• Configure Messaging
Step 2: Create an Auto-Response Messaging Component To view channels:
• View Setup and
Create an auto-response messaging component that’s linked to your survey. This component is
Configuration
used to send the survey at the end of a messaging session.
1. From Setup, enter Messaging Components in the Quick Find box, and then select
Messaging Components.
2. Click New Component.
3. Select Auto-Response, and then click Next.
4. Enter your introductory text without your survey link.

5. Enter a name and description for your component, and click Done.
The Messaging Component Builder opens.
6. On the Component Details page, further customize your auto-response.
a. Click Add Format, select Web Page, and then click Done.
b. Select Web Page in the left-hand menu and configure its properties in the Component Properties pane.

338
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. Under Message Configuration, select Constant for Type and $Constants.Title for Constant. Completing this step ensures that
your survey introductory text appears above the link.
d. Under URL Configuration, select Survey Link for Type.
e. Under Display Configuration, select Popup to open the survey link in the chat window, or Chat Message to show the survey
link as a clickable link preview. In Messaging for In-App, all auto-responses appear as chat messages regardless of this setting.
f. Save your changes.

7. Update the plain text version of your component, which is used if the Web Page format isn’t available.
a. Click Text in the left-hand menu.
b. The Formula Template field contains your survey introductory text. After the text, add the survey URL that you copied from the
Survey Builder.

339
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. Save your changes.

Step 3: Update Your Channel Settings


Associate your messaging component with the Messaging for In-App and Web channel where you want customers to receive the
post-chat survey link.
1. From Setup, enter Messaging Settings in the Quick Find box, and then select Messaging Settings.
2. Find your Messaging for In-App and Web channel in the list, and click Configure Survey in its dropdown action menu.

3. Select the survey you created, and click Save to return to the list of channels.
4. Click the name of your Messaging for In-App and Web channel.
5. Scroll to the Automated Responses section of the channel settings.
6. In the End Conversation field, select your auto-response component.
7. Save your changes.
The survey link is sent to customers when a Messaging for In-App and Web session ends.

340
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Step 4: Test Your Post-Chat Survey


Verify that your survey works as intended.
1. Start and then end a sample Messaging for In-App and Web session.
2. Verify that the survey was sent.
When an auto-response component containing a Salesforce Feedback Management survey is sent, here’s how it looks in the Enhanced
Conversation component.

Here’s how one of the survey screens might look to a Messaging for Web customer.

When the auto-response is sent in a Messaging for In-App and Web session and the user completes the survey, a survey invitation record
is automatically created.
• If the messaging user is associated with a contact, lead, or case that includes a contact, the identifying record is associated with the
survey response. When you view the survey responses in the Analyze tab of the Survey Builder, the Participant ID is the record ID of
the contact, lead, or case.
• If the messaging user is anonymous, meaning it isn’t associated with a contact, lead, or case that includes a contact, the survey
response isn’t linked to the messaging user. As a workaround, include a required survey question where the person provides their
name, and use the name and survey response date to match the response to a contact or messaging session.

SEE ALSO:
Troubleshooting Auto-Response Messaging Components

341
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Troubleshooting Auto-Response Messaging Components


You can encounter error messages when sending an auto-response messaging component.
EDITIONS
Error Message Solution Available in: Lightning
Add the auto-response URL as a CSP Trusted Experience. View required
Refused to frame
URL. If Display Configuration is set to Pop-Up editions.
‘<your auto-response URL>’
because Message, select Allow site for frame-src under This Messaging
it violates the following CSP Directives. Depending on the contents of article for In-App,
Content the URL, check additional CSP directives. For applies to: Messaging
Security Policy directive: example, if the web page is supposed to render for Web,
“frame-src ‘self’ images, select Allow site for img-src. Bring Your
Own
Channel,
Refused to frame ‘<your 1. If using a Visualforce page, add it as a Trusted and Bring
auto-response URL>’ Domain for Inline Frames. In the IFrame Type Your Own
because an ancestor violates field, select Surveys. Save your changes. Return Channel for
the following to the Session Settings page in Setup and ensure CCaaS
Content Security Policy that Enable clickjack protection for customer
directive: frame Visualforce pages with standard headers This Standard
ancestors 'self'”
isn’t selected. article and
doesn’t enhanced
2. If you’re trying to host a survey in an iFrame WhatsApp,
apply to:
for a different domain than the parent page, standard
ensure that you have the Salesforce Feedback and
Management license. enhanced
Facebook
The auto-response URL can’t be loaded in an Messenger,
Refused to display
iframe. The owners of the web page and its standard
‘<your auto-response URL>’ in
a HTTP headers control this configuration. If your and
frame because it set deployment lives on an external website, fix it enhanced
‘X-Frame-Options’ to on the external website, not in Salesforce. If your SMS,
‘sameorigin’. deployment lives on a VisualForce page, the enhanced
workaround is to downgrade Clickjack Apple
protection and remove Visualforce-specific Messages
instructions. for Business,
and
enhanced
Blocked form submission to Opt out of applying iframe restrictions on the
LINE
‘<your auto-response URL>’ client side by adding this snippet to your code
channels
because snippet (external website) or your <head>
the form's frame is sandboxed markup (Experience site):
and the 'allow-forms'
permission embeddedservice_bootstrap.settings.omitSandbox
is not set = true;
You typically see this error message when trying
to show a pop-up message auto-response on
a website with functionality that’s restricted in
our top-level container iframe. Setting the flag
to true removes all restrictions from the
container iframe. Security implications apply to
recommending this workaround. When you

342
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Error Message Solution


bypass other security restrictions that sandboxing prevents, your
web page for a pop-up message auto-response can become
vulnerable to malicious code.

343
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Personalize the URL for your Auto-Response Component


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for Web,
applies to: Bring Your
Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Messaging
article for In-App,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
and
enhanced
LINE
channels

344
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

To personalize the URL being sent by an auto-response messaging component, use a placeholder.
USER PERMISSIONS
Personalizing the URL creates a dynamic experience for the end user. For example, use a placeholder
to reference a language code in the URL, which presents the URL to the end user in their preferred To create messaging
language. components:
• Customize Application
AND View Setup and
Understand Placeholders Configuration OR System
There are two types of placeholders that you can use to personalize an auto-response URL. Administrator

1. Core Parameters, also known as Web Page Parameters - These parameters typically represent To set up and edit
Messaging channels:
messaging session-related values. They’re configured in Salesforce in the Messaging Component
• Configure Messaging
builder under Web Page Parameters.
To view channels:
2. Client Page Parameters, frequently known as API parameters - These parameters typically
• View Setup and
represent page-specific or end user context, such as language or location. They’re configured Configuration
on the customer’s website using JavaScript and the Auto-Response API.

Use Placeholders to Personalize a URL in an Auto-Response


1. Choose a name for your parameters. In this example, we call them Language and MessagingSessionName.
2. Add each parameter name as a placeholder in your URL.
a. A placeholder is a set of double curly braces that surround a parameter. If the parameter is called language, its placeholder would
be formatted as {{Language}}. If the parameter is referencing a Messaging Session Name field, its placeholder would be
{{MessagingSessionName}}.
b. In this example, our URL looks like
https://www.example.com/{{Language}}?MessagingSessionName={{MessagingSessionName}}.

3. Add the URL to an auto-response component in the Messaging Component Builder.


a. From the Messaging Components page in Setup, click the name of the auto-response messaging component to open the
Builder.
b. Select + Add Format.
c. Select Web Page and click Done.
d. Select Web Page under Component Formats.
e. In the Message Configuration section, add the text portion of your message. In this example, we select Literal as the Type, and
enter Please take our survey! in the Text field.
f. In the URL Configuration section, add the version of the URL that you configured in step 2. In this example, we select Literal as
the Type and enter
https://www.example.com/{{Language}}?MessagingSessionName={{MessagingSessionName}}
in the Text field.

345
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

4. In the Display Method field, select Pop-Up Message.


5. If you intend to use Auto-Responses API to populate the URL placeholders, set that up and skip the remaining steps.
6. Under Web Page Parameters, click Add Parameter. Fill in the details of your parameters.
a. We’ll format the {{MessagingSessionName}} placeholder in the URL configuration as a core parameter. We’ll name it
MessagingSessionName and then configure a corresponding Web Page Parameter by setting the Type to Object Field and then
setting the Parameter to $Parameters.MessagingSession (which tells the component what object to reference), and select
Messaging Session Name (which tells the component what field on the object to reference).

346
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Secure Forms in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web, and
enhanced
Apple
Messages
for Business
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

347
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

To let agents send secure forms to customers in supported Messaging channels, create a form
USER PERMISSIONS
messaging component. Forms let you quickly gather sensitive information from customers, such
as network passwords or credit card information. To create messaging
When a customer submits their form responses, Salesforce creates a record of them. Admins control components:
• Customize Application
whether agents can see the responses. A customer can’t view their submitted responses.
AND View Setup and
Each form is linked to a “Create a record” global action in Salesforce, such as a global action to create Configuration
a contact record. The record’s visibility settings for each field determine which form responses are OR
visible to agents.
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

Step 1: Create a Form


To get started, create a global action that creates a record. Then, link it to a new form messaging component on the Messaging Components
page in Setup.
1. Create a global action to link to your messaging component.
a. Go to the Global Actions page in Setup.
b. Click New Action.
c. For action type, select Create a Record.
d. Select a target object, which is the type of record that the action will create. Any custom object and the following standard
objects are supported: Case, Contact, Order, Product, and Asset.
e. Complete the remaining fields and click Save.

348
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

f. Add fields from any object to the action layout, and customize their order. Global actions that are linked to a form messaging
component can contain these types of fields: Text, Text Area, Text Area (Long), Email, Checkbox, Date/Time, Number, Phone,
Picklist, Picklist (Multi-Select), and URL. All other field types, including lookup fields, aren’t supported. If an unsupported field is
added to the global action layout, it won't be visible in the form component and can cause an error. We recommend creating
help text for any field that requires a specific format, such as a Phone field.

2. Go to the Messaging Components page in Setup.


3. Click New Component.
4. Click Form, and then click Next.
5. Enter a title and select a global action to link to your component. Only global actions that create records appear in the dropdown
list. The title appears in the messaging session as a link to the form.

6. Click Next and add a name and description for your component.
These values aren’t visible to customers, but agents see the name in the list of messaging components in the Service Console. Assign
a name that indicates the component’s purpose so agents know when to use it.

7. Click Done.
The Messaging Component Builder opens.

349
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

8. In the Component Formats section, control how the component looks in messaging sessions. Click Add Format, select Form, and
then click Done.
9. In the left-hand sidebar, click the Form format type to update its properties. First, select the top field in the form preview to edit the
form’s overall properties. Then, select one field at a time to configure the prompt, response, and keyboard shown for that field.

These properties apply only to Apple Messages for Business, and aren't used in Messaging for In-App and Web: Initial Message, Initial
Image, Welcome Screen Title, and Welcome Screen Message.

10. After you update the Form format properties, click Save.
11. In the left-hand sidebar, click the Text format type to update its properties.
The plain text version is sent if your preferred format isn’t available or doesn’t load. While global action-based forms can’t be sent in
plain text, you can edit your component’s plain text version so it contains a link to a public form or shows a text-only list of the
questions that appear in your form.

350
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

12. In the left-hand sidebar, click Customization. Optionally, change the expiration limit for the form. By default, when the form is sent
in a messaging session, customers have 5 minutes to submit their responses before the link expires.
13. When you’re done editing your component, click Save. Agents can now select it from a list of messaging components in the Service
Console.
14. If you want your form component to be used in a Messaging for Web deployment for an Experience Builder or Commerce Cloud
site, republish your deployment after creating or editing the component. Otherwise, messaging users can’t receive the form in
messaging sessions.

Step 2: Send a Form in a Messaging Session


You can send form messaging components to customers in enhanced Apple Messages for Business channels and Messaging for In-App
and Web channels.
1. During an active messaging session, click the messaging component action in the messaging window of the Service Console.

351
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

2. Optionally, use the filter at the top to show only forms.


3. Select the form that you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.

Example: When an agent sends a form component in a Messaging for In-App channel, the customer sees the form’s initial
message and image (if you provided one) in a chat bubble. After opening the link, the customer proceeds through the welcome
screen and form questions, which appear in separate screens.

352
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

When the customer submits the form, the conversation transcript updates to show the record that was created by the form’s
associated global action. The customer sees the form confirmation message and image in the chat bubble, but isn’t notified that
a record was created.

If a customer refreshes their browser tab while filling out a form, their form responses are cleared for security reasons. After a
customer submits a form, they can’t click the form link in their messaging session to submit new responses. If needed, the agent
can resend the form component to gather new responses.

353
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Authentication Requests in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article Apple
applies to: Messages
for Business
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

354
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Let agents verify a customer’s identity during an enhanced Apple Messages for Business messaging
USER PERMISSIONS
session. Using an authentication messaging component, prompt the customer to log into an
authentication provider such as Google. To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

You can authenticate users with one of Salesforce’s standard authentication providers, such as Google, Salesforce, and Facebook. Or,
you can create a custom authentication provider, which involves a few extra steps.

Step 1: Prepare for Authentication


To get started adding an authentication option to your enhanced Apple Messages for Business channel, configure the app you’ll use for
authentication, create an Apex class, add your authentication provider in Setup, and update your settings in Apple Business Register.
1. In the settings of your external identity provider, create an authentication app.
2. In your authentication app settings, copy these values and save them for later: App Client ID, App Client Secret, OAuth URL, Token
URL.
3. In Salesforce, configure a standard or custom authentication provider.
For steps, see Configure a Predefined Authentication Provider or Create a Custom Authentication Provider. If you use a custom
authentication provider, you must also create a custom metadata type.

4. On the Apex Classes page in Setup, create an Apex class to be used during authentication. The class must implement the
RichMessaging.AuthRequestHandler interface. For details and an example, see AuthRequestHandler Interface.
5. If you’re using a custom authentication provider and your Apex class makes any HTTP callouts to fetch information, add each HTTP
base URL as a corresponding remote site on the Remote Site Settings page in Setup.
6. If you didn’t already, add and configure your authentication provider in Setup.
a. On the Auth Providers page in Setup, click Edit next to an existing authentication provider or click New to add one.
b. Select Link to messaging components.
c. In the Registration Handler field, select the Apex class that you created.
d. In the Token Endpoint URL field, add the Token URL that you copied from your authentication app.

355
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

e. Complete the remaining fields and save your changes.

7. Configure your Apple Messages for Business channel to allow authentication.


a. Go to register.apple.com and sign in with the Apple ID of the administrator or technical contact for the Messages for Business
account.
b. Open the channel that you want to configure.
c. In the Integrated Oauth2 Authentication section, click Edit.
d. Update the Oauth URL, Token URL, and Client Identifier with your app’s Authorize Endpoint URL, Token Endpoint URL, and Client
Identifier.
e. Save and submit the updates for review by Apple. This process may take a few days.

Step 2: Create an Authentication Messaging Component


After completing the preparation steps, create an authentication messaging component that agents can use to verify customers’ identity
in messaging sessions.
1. Go to the Messaging Components page in Setup.
2. Click New Component.
3. Click Authentication, and then click Next.
4. Select your authentication provider, enter a prompt, and upload an image that appears with the authentication request. Then, click
Next.

5. Leave the plain text version of your component as is, and click Next.
6. Add a name and description for your component.
These values aren’t visible to customers, but agents see the name in the list of messaging components in the Service Console. Assign
a name that indicates the component’s purpose so agents know when to use it.

7. Click Done. The Messaging Component Builder opens.

356
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

8. In the Component Formats section, control how the component looks in messaging sessions. Click Add Format, select
Authentication, and then click Done.
9. In the left-hand sidebar, click the Authentication format type to update its properties.
a. Leave the Authentication Configuration section, which shows your authentication provider’s scope and secret as read-only
values, as is.
b. In the Message Configuration section, provide a prompt that asks the customer to enter their login credentials. Customers click
the prompt to view the login screen. To use the prompt that you entered when you created the component, select Constant
and select the only available constant.
c. In the Confirmation Configuration section, select Literal and enter a message to show to customers after they enter their login
credentials.
d. In the Image Configuration section, provide an image to show with the component. To use the image that you uploaded when
you created the component, select Constant and select the only available constant.

10. Optionally, in the left-hand sidebar, click the Text format type to update the plain text version of your component.
11. In the Details section of your component, find the Callback URL field and copy the URL.
12. Click Save.
Your component is available to agents in the Service Console.
13. Add two redirect URLs to allow the identity provider to communicate with Salesforce.
a. In the settings of your external identity provider, go to the authentication app you created.
b. Add two URLs to the list of redirect URLs: https://auth.businesschat.apple.com and the callback URL that you
copied from your authentication component details.

357
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Step 3: Send an Authentication Request in a Messaging Session


You can send authentication messaging components to customers in enhanced Apple Messages for Business channels.
1. During an active messaging session, click the messaging component action in the messaging window.

2. Optionally, use the filter at the top to show only authentication components.
3. Select the component that you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.
5. The customer clicks the component link and enters their login credentials.
6. If the credentials are correct, you—the agent—see an Authentication successful message. If the credentials are incorrect, you see
an Authentication denied message. You can give them a second chance by sending the authentication component again.

358
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: When an agent sends an authentication component in an enhanced Apple Messages for Business channel, the customer
sees:

The agent sees:

To view all authentication attempts made in a messaging session, go to the Messaging Session Authentication Results related list on
the messaging session record. Each record in this list shows the verification level, status of the authentication request (active or expired),
and the time that the request expired or will expire.
By default, authentication requests that use Salesforce-supported authentication providers expire after one hour, but you can change
this limit using Apex. External authentication providers have their own expiration limits.

359
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create and Send Payment Requests in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article Apple
applies to: Messages
for Business
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

360
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Request payments from customers during messaging sessions with a payment messaging
USER PERMISSIONS
component. Agents can send the component to prompt the customer to make a payment with
Apple Pay. To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

1. Configure your Apple Pay settings and Messaging channel settings, and create a payment processing Apex class. For steps, see Add
Apple Pay to a Messaging Channel.
2. In Setup, go to the Messaging Components page.
3. Click New Component.
4. Click Payment, and then click Next.
5. Select the ProcessPaymentHandler Apex class that you created, and enter a prompt. Provide a URL that is sent if the component
must be sent in plain text format, and select or upload an image that appears with the payment request.

361
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The prompt, plain text URL, and image are all saved as constants behind the scenes. You can reference those constants when you
customize your component’s behavior and appearance in the Messaging Component Builder.

6. Edit the plain text version of your component to add text to accompany the URL you entered. The URL is represented on this screen
as {!$Constants.Url}.

The plain text format is used if the component is sent in a Messaging channel that’s not an enhanced Apple Messages for Business
channel, or if the preferred format isn’t available.

7. Click Next and add a name and description for your component.
8. Click Done. The Messaging Component Builder opens.

362
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

9. Add a format to customize how the component looks in messaging sessions. Click Add Format, select Payment, and then click
Done.
10. In the left-hand sidebar, click the Payment format type to update its properties.

363
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

a. To use the prompt and image you provided earlier, in the Prompt Configuration and Image Configuration sections, select
Constant and select the only available constant.
b. For currency, provide your three-letter ISO 4217 currency code for the currency used in your payment requests.
c. For Merchant Domain, provide the domain that you saved when verifying your merchant domain while adding Apple Pay to
your channel.

11. After you update the remaining format properties, click Save. Next, create Apex classes and a flow that agents can run to send the
payment component to customers.
When you create a payment component, three standard parameters are also created. You can reference these parameters in flows, Apex,
or the component properties.
• PaymentLineItems: The items for purchase that are listed in the payment request. When a payment request is sent, an Apex class
populates the list of items.
• PaymentTotal: The total listed on the payment request. When a payment request is sent, an Apex class calculates the total.
• ShippingMethods: The shipping methods that you support. When a payment request is sent, an Apex class populates the shipping
method information.
To view the parameters, open your messaging component in the Messaging Component Builder and click Parameters in the left-hand
sidebar.

364
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

IN THIS SECTION:
Set Up a Flow to Send Payment Requests in Messaging Sessions
Create Apex classes and a screen flow that agents can run to send payment messaging components to customers in messaging
sessions. The flow executes the Apex classes and passes the transaction details into the payment messaging component.

Set Up a Flow to Send Payment Requests in Messaging Sessions


Create Apex classes and a screen flow that agents can run to send payment messaging components
EDITIONS
to customers in messaging sessions. The flow executes the Apex classes and passes the transaction
details into the payment messaging component. Available in: Lightning
Experience. View required
User Permissions Needed editions.
To open, edit, or create a flow in Flow Builder: Manage Flow This Enhanced
article Apple
To create or edit a console app: Customize Application
applies to: Messages
AND View Setup and Configuration for Business
channels

This Messaging
1. Go to the Apex Classes page in Setup. article for In-App,
2. Create a series of Apex classes that determine the content of payment requests using your own doesn’t Messaging
product information. For reference documentation, see RichMessaging Namespace. apply to: for Web,
standard
3. In Flow Builder, create a screen flow that agents can run to send a payment messaging and
component to customers in messaging sessions. enhanced
4. Add the flow to the Messaging Session page layout so agents can run it during messaging WhatsApp,
sessions. See Add Messaging to the Service Console. standard
and
5. Send the component in enhanced Apple Messages for Business channels. enhanced
a. During an active messaging session, in the Service Console, find the Flow component that’s Facebook
linked to the question with options. Messenger,
standard
b. Run the flow that’s linked to your payment component. The admin configures the flow’s
and
steps, start button label, and location, so it may look different from our example. enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

365
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

c. Insert the message and finish the flow.


A placeholder appears below the message field. No preview of the component is available.
d. Click Send in the message field. The component is sent to the customer and appears in the conversation transcript.

e. If a message indicates that the payment was not successful, agents can try again by resending the payment component. Payment
requests expire after 5 minutes.

366
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: In this example flow, after a starting screen prompts the agent to click Next, three Apex actions execute the payment
line items, shipping methods, and payment totals Apex classes. A final screen inserts the payment messaging component into
the message body to be sent by the agent.

367
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Share External Apps in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Enhanced
article Apple
applies to: Messages
for Business
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

368
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Create a custom messaging component so agents can embed an external mobile app in enhanced
USER PERMISSIONS
Apple Messages for Business messaging sessions. Customers can then access the app’s capabilities,
such as search functionality, within their Apple Messages chat. To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

To send and receive


messages in Messaging:
• Messaging Agent

You can also use custom messaging components to share custom Lightning Web Components, custom iMessage extensions, or any
URL that opens in a web view.
For example, suppose you want to let customers browse your products without navigating away from Apple Messages. Create a custom
messaging component that’s linked to your business’s mobile app. When agents send the component in a messaging session, customers
can click it to open the app within Apple Messages. They can then use the app’s product search to find the product they’re looking for.

Step 1: Create a Custom Messaging Component


To get started, create your custom messaging component on the Messaging Components page in Setup.
1. From Setup, enter Messaging Components in the Quick Find box, and then select Messaging Components.
2. Click New Component, and then click Next.
3. Click Custom, and then click Next.
4. Enter a prompt and upload an image to show with the prompt.

369
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

5. Enter a name and description for your component.


These values aren’t visible to customers, but agents see the name in the list of messaging components in the Service Console. Assign
an informative name so agents know when to use the component.
6. Click Done.
The Messaging Component Builder opens.
7. In the Component Formats section, control the way your component appears in Apple Messages for Business channels. Click Add
Format, select External Application, and then click Done.
8. In the left-hand sidebar, click the External Application format type to update its properties.
a. In the App Name Configuration section, select Literal and enter the public name of the external app that your component is
associated with.
b. In the Prompt Configuration section, provide the text prompt that’s shown with the component. To use the prompt that you
entered when you created the component, select Constant and select the only available constant.
c. In the Bundle ID Configuration section, select Literal and enter the bundle ID of the external app. To find the bundle ID, go to
appstoreconnect.apple.com. Select your app and view its information.
d. In the Team ID Configuration section, select Literal and enter the team ID associated with your Apple developer account. To
find your team ID, log into developer.apple.com and view your membership details.
e. In the Apple ID Configuration section, select Literal and enter the Apple ID associated with the external app. To find the Apple
ID, go to appstoreconnect.apple.com. Select your app and view its information.
f. In the Image Configuration section, provide the image shown with your custom component. To use the image that you uploaded
when you created the component, select Constant and select the only available constant.
g. Optionally, in the Arguments section, add arguments to pass information to the external app.

9. After you’re finished updating the External Application format properties, click Save.
10. In the left-hand sidebar, click the Text format type to customize the plain text version of your component, which is used if your
preferred format isn’t available or won’t load.
11. When you’re done editing your component, click Save. Agents can now select it from a list of messaging components in the Service
Console.

370
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Step 2: Send a Custom Messaging Component in a Messaging Session


You can send custom messaging components to customers in enhanced Apple Messages for Business channels.
1. During an active messaging session, click the messaging component action in the messaging window.

2. Optionally, use the filter at the top to show only custom components.
3. Select the component that you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.

371
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Example: The agent sees:

The customer sees:

372
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Add Dynamic Content to Messaging Components


When you create messaging components for agents to use in enhanced Messaging channels or
EDITIONS
Messaging for In-App and Web, you can use formulas to add dynamic, session-specific content to
the component. Available in: Lightning
Formulas fall into two categories: formula templates and sObject formulas. You can use both to Experience. View required
customize different parts of a messaging component. editions.

• Formula templates consist of a text body with possible merge fields. When a message that This Messaging
includes a formula template is sent, the merge fields are replaced with contextual information article for In-App,
such as an order number or customer name. Use formula templates to customize the Text applies to: Messaging
version of a messaging component. for Web,
enhanced
• sObject formulas are object-specific formulas that create field values based on contextual data.
WhatsApp,
Use sObject formulas to customize any supported format of a messaging component except
enhanced
for Text.
Facebook
Formula templates and sObject formulas can contain both plain text and contextual data from a Messenger,
data source. Two types of data sources are supported: constants and parameters. enhanced
Apple
Data Source Definition How to Reference Messages
for Business,
Constant Metadata that is defined as part $Constants.<constant_name> enhanced
of the messaging component. In this syntax, replace LINE, Bring
Constants support multiple <constant_name> with Your Own
data types, including text, URL, the name of a constant. For Channel,
and image. example: and Bring
Your Own
$Constants.Title
Channel for
CCaaS
Parameter Metadata that is defined as part $Parameters.<parameter_name>
of the messaging component, In this syntax, replace This Standard
with the data that it contains <parameter_name> with article WhatsApp,
provided dynamically when a the name of a parameter. For doesn’t standard
message is rendered. apply to: Facebook
example:
Parameters support the same Messenger,
$Parameters.MyCaseParam
data types as constants and and
references to records such as standard
cases or products. and
enhanced
SMS
channels
IN THIS SECTION:
Customizing Messaging Components with Formula Templates
When you create a messaging component, you can add and configure one or more formats to control the component’s appearance
in different Messaging channels. The default format of messaging components is Text, which is a plain text version of the component.
Customizing Messaging Components with sObject Formulas
Use sObject formulas to control the way that your messaging components appear in any non-Text format.
Supported Functions in Messaging Component Formulas
Before you customize components in the Messaging Component Builder, review which functions are and aren’t supported.

373
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Customizing Messaging Components with Formula Templates


When you create a messaging component, you can add and configure one or more formats to
EDITIONS
control the component’s appearance in different Messaging channels. The default format of
messaging components is Text, which is a plain text version of the component. Available in: Lightning
We generate the Text version of a component for you when you create the component. If you want Experience. View required
to, you can use formula templates to modify the Text version and create a personalized message editions.
for your customers.
This Messaging
It’s possible to reference fields from the Messaging Session object or the Messaging User object article for In-App,
(since it's linked to Messaging Session) in an auto-response formula template for Start Conversation, applies to: Messaging
End Conversation, and Inactive Conversation. It’s not possible to reference fields from the Messaging for Web,
Session or Messaging User objects in Conversation Acknowledgement because you'd also have to enhanced
use a flow to populate the data, and the flow wouldn't run in time for Conversation WhatsApp,
Acknowledgement. enhanced
Facebook
For some component types, you can provide the plain text version of your component during the Messenger,
New Component guided setup flow. To further edit the plain text version of a messaging component enhanced
after it’s created, click the component name on the Messaging Components page in Setup. The SMS,
component opens in the Messaging Component Builder. Then, click the Text format in the left-hand enhanced
sidebar to customize it. Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

374
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The center of the Messaging Component Builder shows a preview of the component in the selected format. In the properties panel on
the right, you can edit the formula template for any fields with a type of Template.

Use Merge Fields to Show a Single Value


Example: In this message, merge fields are used to show record field values. A MyCase Param parameter of type Case
Record ID is referenced to show the Case Number and Subject fields in the content of the message.

Your reference number for this case is:


{$Parameters.MyCaseParam.CaseNumber}{!BR()}.
The subject of your case is: “{!$Parameters.MyCaseParam.Subject}”

Use Merge Fields to Show Multiple Values


Merge fields also let you present multiple values in a list. For example, for questions with options components, the options are provided
by a list constant (for static options) or by a list parameter (for dynamic options).
To insert a list of values into the plain text version of a component, use a custom List Template merge field in the message definition.
The definition of the merge field includes:
• A unique name
• The data source of type list that provides the list data to be generated at sending time
• A separate formula template that defines the content for each entry in the list
Use the List Template merge field in the formula template with this syntax:
$ListTemplates.<list_template_name>

Replace <list_template_name> with the unique name of the merge field.

375
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The merge field’s formula template (used to generate list items) can reference any constant, parameter, and any of these merge fields
related to the list item being generated.
• $ListItem.Index—the current index of the entry of the list being created.
• $ListItem.Value—the actual value of the current entry of the list being created.
• $ListItem.IsFirst—true when the first list item is being created, and false otherwise.
• $ListItem.IsLast—true when the final list item is being created, and false otherwise.
Use $ListItem.IsFirst and $ListItem.IsLast to apply special logic to the first or last list item.

Example: Here’s a formula template for the Text format of a question component with static options. The formula template uses
an OptionsList List Template merge field to show the list of options.
{!$Constants.Title}{!BR()}
Select an option:{!BR()}
{!$ListTemplates.OptionsList}

The definition of the OptionsList merge field references the Options list constant and includes the following formula template to
generate each list item:
{!$ListItem.Index}. {!$ListItem.Value.Name}{!IF(NOT($ListItem.IsLast),BR(),””)}
The definition is structured to insert a line break after all list items except the last one.
Each item in the list is a complex type with multiple fields (Name, Image, and Subtitle). In this example, only the Name field of the Option
entry is used to create list values.
When the formula templates are evaluated and the list items are created, the plain text version of the messaging component appears
as follows, depending on how the constants are set up:
What do you need help with?
Select an option:
1. Cancel my order
2. Change my shipping address
3. Change the delivery date

IN THIS SECTION:
Send a Personalized Customer Greeting with a Formula Template
Send a personalized greeting to an end-user automatically when an agent accepts their messaging session. Create a Start Conversation
auto-response messaging component that contains a formula template.

376
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Send a Personalized Customer Greeting with a Formula Template


Send a personalized greeting to an end-user automatically when an agent accepts their messaging
EDITIONS
session. Create a Start Conversation auto-response messaging component that contains a formula
template. Available in: Lightning
Before building this recipe, consider these caveats: Experience. View required
editions.
• It’s possible to reference fields from the Messaging Session object or the Messaging User object
(since it's linked to Messaging Session) in an auto-response formula template for Start This Messaging
Conversation, End Conversation, and Inactive Conversation. It’s not possible to reference fields article for In-App
from the Messaging Session or Messaging User objects in Conversation Acknowledgement applies to: and
because you'd also have to use a flow to populate the data, and the flow wouldn't run in time Messaging
for Conversation Acknowledgement. for Web
channels
• Salesforce custom object fields are different from pre-chat custom fields. We’ll reference both
types of fields in this recipe. Learn more about the relationship and differences between these This Standard
two types of fields. article and
doesn’t enhanced
In this example, we’ll create an auto-response Start Conversation greeting that references the
apply to: WhatsApp,
Agent’s name and the Customer’s name.
standard
and
Create and Map your Fields enhanced
Facebook
1. Ensure that you have the desired Salesforce object field set up in your org. If you intend to
Messenger,
reference a custom Salesforce field, create it now. In this example, we pull the end-user’s name
standard
from the Messaging User field on the Messaging Session object. We also pull the agent’s name
and
from the Last Modified By field on the Messaging Session object. enhanced
2. Create a Pre-Chat form field where the end-user inputs data that travels back to the Salesforce SMS,
field you identified or created in step 1. In this example, we’ll create a custom pre-chat field enhanced
called Messaging User Name. We don’t need to create a Last Modified By custom pre-chat field Apple
because your org automatically populates the Salesforce field called Last Modified By. Messages
for Business,
3. Map your custom pre-chat field to your Salesforce custom field using a flow. In this example, enhanced
we map the Messaging User Name pre-chat field to the Messaging User field on the Messaging LINE, Bring
Session object in Salesforce. Your Own
Channel,
Create Your Auto-Response Component and Formula Template and Bring
Your Own
1. From Setup, enter Messaging Components in the Quick Find box, and then select Channel for
Messaging Components. CCaaS
2. Click New Component, and then click Next.
3. Select Auto-Response, and then click Next.
4. Enter the auto-response. For example: Custom Greeting.
5. Enter a name and description for your component, and click Done. The Messaging Component Builder opens.
6. Under Component Formats, select Text.
7. In the Type field, select Template.
8. In the Formula Template field, enter your greeting with parameters that reference the desired Salesforce custom fields. In this example,
our formula template looks like:

377
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

a. Hi there {!$Parameters.MessagingSession.MessagingEndUser.Name}, my name is


{!$Parameters.MessagingSession.LastModifiedBy.FirstName}, nice to meet you.

9. Save your changes.

Add the Auto-Response Component to Your Channel


1. From Setup, enter Messaging Settings in the Quick Find box, and then select Messaging Settings.
2. Find your channel in the list, and click Edit in its action menu.
3. Choose whether to add your component to the Start Conversation, End Conversation, or Inactive Conversation fields. In this example,
we’ll select our component in the Start Conversation field.
4. Test the component in a Messaging for In-App and Web session.

378
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Customizing Messaging Components with sObject Formulas


Use sObject formulas to control the way that your messaging components appear in any non-Text
EDITIONS
format.
While you can use formula templates to customize the Text format of messaging components, Available in: Lightning
sObject formulas customize all other supported formats, such as Buttons, Card Carousel, List Selector, Experience. View required
and Quick Replies. sObject formulas create values that are related to parameters of the RecordId editions.
type. For example, in a question component with dynamic options where each option references
This Messaging
a record, use sObject formulas to create the values for the options’ titles or images. for In-App,
article
sObject formulas in messaging components behave similarly as they do elsewhere in Salesforce, applies to: Messaging
such as with custom formula fields. They can also reference any parameters and constants that for Web,
have been autogenerated or manually added to the component. View a messaging component’s enhanced
constants and parameters by opening the component in the Messaging Component Builder. WhatsApp,
enhanced
Tip: A messaging component can have up to 5 custom parameters. To access more data Facebook
while respecting this limit, try adding relationships between the MessagingSession object Messenger,
and other objects. Then, use merge fields in a formula to access data up to 3 levels deep. This enhanced
example formula fetches a custom field value on a custom record that’s associated with a Apple
case, which in turn is associated with a messaging session: Messages
{!$Parameters.MessagingSession.Case.Custom_Record__c.CustomField__c} for Business,
enhanced
Example: This sObject formula shows the title of a dynamic option for a list of case records. LINE, Bring
It consists of the case number, a dash, and the case subject: CaseNumber & “ - “ & Your Own
Subject Channel,
and Bring
Because the formula is specific to the case object and can’t be applied to other objects, it
Your Own
directly references case field names without adding the Case. prefix.
Channel for
Here’s how a list item using this formula appears in a messaging session: CCaaS
00001006 - Generator assembly instructions unclear This Standard
article WhatsApp,
doesn’t standard
SEE ALSO: apply to: Facebook
Add Dynamic Images to Messaging Components Messenger,
and
standard
and
enhanced
SMS
channels

379
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Supported Functions in Messaging Component Formulas


Before you customize components in the Messaging Component Builder, review which functions
EDITIONS
are and aren’t supported.
Available in: Lightning
Supported Functions Experience. View required
editions.
• +
• - This Messaging
article for In-App,
• * applies to: Messaging
• / for Web,
• ^ enhanced
WhatsApp,
• = enhanced
• <> Facebook
• < Messenger,
enhanced
• >
SMS,
• <= enhanced
• >= Apple
Messages
• AND
for Business,
• NOT enhanced
• OR LINE, Bring
Your Own
• &
Channel,
• TEXT and Bring
• DATE Your Own
• DAY Channel for
CCaaS
• MONTH
This Standard
• YEAR
article WhatsApp,
• TODAY standard
doesn’t
• NOW apply to: Facebook
• TIMENOW Messenger,
and
• TIMEVALUE standard
• HOUR SMS
• MINUTE channels

• SECOND
• MILLISECOND
• ADDMONTHS
• WEEKDAY
• DATEVALUE
• DATETIMEVALUE
• ISNUMBER
• ISNULL
• ISBLANK

380
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

• ISPICKVAL
• NULLVAL
• BLANKVALUE
• MOD
• MAX
• MIN
• ROUND
• GEOLOCATION
• ABS
• SQRT
• CEILING
• FLOOR
• MCEILING
• MFLOOR
• LOG
• EXP
• LN
• DISTANCE
• VALUE
• LEN
• LEFT
• MID
• RIGHT
• BEGINS
• CONTAINS
• SUBSTITUTE
• TRIM
• LPAD
• RPAD
• UPPER
• LOWER
• FIND
• CURRENCYRATE
• IF
• CASE
• INCLUDES
• CASESAFEID
• BR
• TRUE
• FALSE

381
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

• NULL
• NOUNESCAPE_STRING_LITERAL
• STRING_LITERAL
• TEMPLATE_STRING_LITERAL
• NUBMER
• IDENT
• MESSAGINGIMAGE

Unsupported Functions
HTML-generating functions aren’t supported.
• IMAGE
• HYPERLINK
• GETSESSIONID
• PREDICT
• DYNAMIC_REF (”[]”)
• DYNSAMICREF_IDENT

SEE ALSO:
Add Dynamic Images to Messaging Components

382
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Translate Messaging Components into Your Customer’s Language


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

383
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Show messaging components in a customer’s preferred language with the help of Translation
USER PERMISSIONS
Workbench. For example, when you send a French-speaking customer a question with three options,
show the question and options translated into French. To create messaging
components:
Note: Automated messaging doesn’t yet support translated messaging components. If • Customize Application
you’re using a flow to automatically send notification messaging components, the original, AND View Setup and
untranslated version of the component is sent to customers. Configuration
OR
SEE ALSO: System Administrator
Enable or Disable Translation Workbench
To send and receive
Add Translated Languages and Translators messages in Messaging:
Export Data Translation Files • Messaging Agent
Import Translated Files To import and export
translation files:
Configure Field-Level Security
• Manage Translation
AND Customize
Step 1: Set Up Translation Workbench Application

To get started, enable Translation Workbench and select your languages.


1. Enable Translation Workbench in Setup.
2. Add one or more languages. For example, if your default org language is English but you want messaging components to be available
in French and Spanish, add French and Spanish.

Step 2: Prepare Your Messaging Components for Translation


Two parts of a messaging component can be translated:
• The component name, which agents see in the Service Console.
• All constant values, which are managed from the Constants tab in the Messaging Component Builder. Constants determine the text
in the messaging component that customers receive in a message. Several standard constants are automatically added when you
first create a component. You can also add custom constants.
If any text in a messaging component is literal, rather than determined by a constant, it can’t be translated and remains in the default
org language. To verify that a messaging component uses constants for all text that you want translated, create or open the component
in the Messaging Component Builder.
1. In Setup, go to the Messaging Components page.
2. Click the name of the messaging component that you want to be translated.
3. In the left-hand sidebar, click the Text format.
4. In the properties pane, review each Formula Template field. If the formula template contains literal text instead of constants, create
a custom constant that can replace the literal text. For example, in this question with options component, a constant must replace
the phrase “Select an option” in the first formula template so it can be translated.

384
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

a. In the left-hand sidebar, click Constants.


b. Click New.
c. Give your constant a name, such as SelectionPrompt, and save it.
d. Click the Text format again.
e. In the formula template, replace the literal text with your constant. In this example, Select an option becomes
{!$Constants.SelectionPrompt}.
f. Save your changes.

5. If another format was added, click the format name in the left-hand sidebar.
6. In the properties pane, verify that the Type field for all text to be translated is set to Constant and that a constant is selected in the
field after it. In this example, the Quick Replies format on a question with static options component is correctly configured.

385
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

7. After you configure the properties of all formats added to your component, save your changes.

Note: Some text in a messaging component doesn’t need to be translated, such as URLs. This text can stay as literal text in a
formula template or component property.

Step 3: Translate Your Component Text


To provide translated versions of a messaging component, manually enter the translation or import a batch of translated text. If you plan
to translate multiple messaging components or translate to multiple languages, importing is faster.

Important: A messaging component is translated only if Translation Workbench contains translations of all of the component's
text constants. For example, if your component includes three constants, provide translations of all three constants. If a translation
of any constant is missing, the component isn't translated. This rule helps agents avoid sending a message that uses multiple
languages.
Provide translations manually:
1. In Setup, go to the Translate page under Translation Workbench.
2. In the Language field, select the language to which you want to translate your messaging component; for example, French.
3. In the Setup Component field, select Messaging Component.
4. In the Messaging Component field, select the developer name of the component to be translated.
5. In the Object field, select Messaging Component Name. The component name appears in a table.
6. Hover over the table and click the pencil icon, then enter the translation of the messaging component name. For example, agents
whose language is set to French see the French name of the component in the Service Console.
7. In the Object field, select Constant Values. All of the component’s constants appear in a table.
8. Hover over the table and click the pencil icon, then enter the translation of each constant.
9. Save your changes.
To provide translations in a batch, export a data translation file from the Export page in Setup under Translation Workbench. When
exporting, select the Messaging Component Name or Constant Values object. After completing one file per language, import them on
the Import page.

386
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Step 4: Send Translated Messaging Components


After you provide translated versions of your messaging components, your support team can send them to customers.
1. (Admin task) Enable access to the Messaging User Language field for agent profiles, and then add it to the Messaging Session page
layout. Agents need edit access this field to send translated messaging components.
2. At the start of a messaging session, update the Messaging User Language field on the messaging session record to list the customer’s
preferred language. You can gather this information contextually or via a bot question that auto-completes the field.
3. Click the messaging component action and click Insert on a component to send.
4. Click Send. If Translation Workbench contains a version of the component in the customer’s preferred language, the customer sees
the messaging component in their language.

Example: Your default org language is English, and you created a range of messaging components in English. To support your
French-speaking customers, you upload French translations of the components in Translation Workbench.
When a customer initiates a messaging session with a French message, the agent updates the Messaging User Language on the
session record to French. Any components that the agent sends during the session appear to the customer in French.

If a component is available in an agent’s default language, the agent sees the component name in their language in the list of messaging
components shown in the Service Console. Otherwise, it shows the original component name.

Note: Auto-response messaging components are messages sent at key moments in a conversation: when the customer sends
an opening message, the agent joins, the customer stops responding, or the session ends. They're used in Messaging for In-App
and Web, Bring Your Own Channel, and Bring Your Own Channel for CCaaS. While auto-response messaging components can be
translated like any other component, the messaging session record must list a Messaging User Language so Salesforce knows
what language to use. Because the Conversation Acknowledgment auto-response is sent before an agent can join the session
and identify the messaging user's language, this particular auto-response is never translated.

Step 5: Keep Translations Up to Date


If a messaging component is updated in the Messaging Component Builder, it’s important to update translations of the component to
reflect the changes. Regularly check for outdated translations and update them as needed.
On the Translate page in Setup, Out of date is selected on any translations whose original language underwent an update after the
translated version was saved. You can manually update individual translations on the Translate page. Or, go to the Export page and
export a list of messaging component translations marked Out of date.

387
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Add Images to Messaging Components with Constants, Parameters, and Formulas


Many types of messaging components can include images, such as enhanced links, forms, and
EDITIONS
questions with options. Images in messaging components give your customers helpful visual cues,
reinforce company branding, and add some color—literally and figuratively—to everyday service Available in: Lightning
interactions. Learn how to control which images are shown in a messaging component that an Experience. View required
agent or bot sends to a customer. editions.

This Messaging
Static Versus Dynamic Images article for In-App,
If you want a messaging component to always show the same (static) image or images, use constants applies to: Messaging
to define the images. Using constants is the simplest way to include images in a messaging for Web,
enhanced
component.
WhatsApp,
To show different (dynamic) images in a messaging component based on messaging session enhanced
characteristics or other custom criteria, provide the images via parameters or sObject formulas. Facebook
Adding dynamic images is more advanced than adding static images, but it’s an effective way to Messenger,
personalize messages sent to customers. For example, in a list of the customer’s three most recently enhanced
purchased products, show an image of each product next to the product name. Or in an enhanced Apple
link messaging component, show a URL and image that vary depending on the season or the end Messages
user’s location. for Business,
enhanced
LINE, Bring
Get Started Your Own
Channel,
and Bring
IN THIS SECTION:
Your Own
Add Static Images to Messaging Components Channel for
If you want a messaging component to always show the same image or images, define the CCaaS
images in the Messaging Component Builder using constants. Standard constants are
This Standard
auto-created, while you create custom constants manually.
article WhatsApp,
Add Dynamic Images to Messaging Components doesn’t standard
If you want a messaging component to show different images depending on the situation, apply to: Facebook
define the images in the Messaging Component Builder by using parameters or sObject formulas. Messenger,
Adding dynamic images to messaging components is more advanced than adding static images, and
but it’s an effective way to personalize messages sent to customers. standard
and
enhanced
SMS
channels

388
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Add Static Images to Messaging Components


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

389
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

If you want a messaging component to always show the same image or images, define the images
USER PERMISSIONS
in the Messaging Component Builder using constants. Standard constants are auto-created, while
you create custom constants manually. To create messaging
First, let’s review the differences between standard and custom image constants. While this article components:
• Customize Application
focuses on image constants, the same principles apply for text and URL constants. All constants are
AND View Setup and
found on the same tab in the Messaging Component Builder. Configuration
OR
Type How It’s Examples Editable? Deletable?
Created System Administrator

Standard image When you upload • When you Yes, from the No, but you can To send and receive
constants an image during Constants tab in replace an messages in Messaging:
create an
the New the Messaging original uploaded • Messaging Agent
enhanced link
Component and upload Component image by editing
setup flow, a an image to Builder. its standard
standard constant show with constant. You can
is created for it. the link, the also choose not
image is to use the
saved as a constant.
standard
constant.
• When you
create a
payment
messaging
component
and upload
an image to
show with it,
the image is
saved as a
standard
constant.

Custom image Add custom • After creating Yes, from the Yes, from the
constants constants after a question Constants tab in Constants tab in
finishing the New with options, the Messaging the Messaging
Component add a custom Component Component
setup flow. Use image Builder. Builder.
the ImageAsset constant to
type. show with
the question.
• After creating
a form
messaging
component,
add a custom
image

390
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Type How It’s Created Examples Editable? Deletable?


constant to show
with the form link.

Now, review the process for adding static images to a messaging component.

1. Create the messaging component in Setup.


a. From Setup, enter Messaging Components in the Quick Find box, and then select Messaging Components.
b. Click New Component.
c. Complete the flow to create your component. When the component is created, the Messaging Component Builder opens.

2. Add one or more supported formats to the component.


a. From the Details tab in the Messaging Component Builder, click Add Format and select a format.
b. For each format that you add, click its name in the navigation menu and check the properties pane to determine how many
images it can include. For example, look for properties named Initial Image or Confirmation Image.

3. Manage your constants on the Constants tab.


a. If you uploaded an image while creating the component, it’s shown as a standard constant in the Constant section. To change
a constant’s name or update its image file, click Edit.
b. To include other images, add them in the Custom Constant section. Use the ImageAsset type.

391
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

4. Update each format’s image properties to use image constants.


a. Click a format name in the navigation menu, such as List Selector.
b. For each image property, select the Constant type and select an image constant. If you don’t want to include an image, leave
the type as None.

5. To send the component during a messaging session, agents can select it from a list in the messaging component action and click
Send. If you configured an image property to use an image constant, the customer sees the image in the messaging component.

Note: In some list formats such as List Selector and Card Carousel, you can show an image with each list option. To add images
to your list options, edit each item in the Options section of the Constants tab when viewing your messaging component. Then,
reference that constant in the format’s image property for its list options.

SEE ALSO:
Add Dynamic Images to Messaging Components
Send Messaging Components in Messaging Sessions

392
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Add Dynamic Images to Messaging Components


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
and
enhanced
SMS
channels

393
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

If you want a messaging component to show different images depending on the situation, define
USER PERMISSIONS
the images in the Messaging Component Builder by using parameters or sObject formulas. Adding
dynamic images to messaging components is more advanced than adding static images, but it’s To create messaging
an effective way to personalize messages sent to customers. components:
• Customize Application
When an agent or bot sends a messaging component with dynamic images, Salesforce provides
AND View Setup and
the right images based on parameters that you set. For example, in a list of the customer’s three Configuration
most recently purchased products, show an image of each product next to the product name. Or
OR
in an enhanced link messaging component, show a URL and image that vary depending on the
season or the end user’s location. System Administrator

Images can be provided as Image ID parameters or URL parameters, depending on how your image To send and receive
is stored in Salesforce. Alternatively, define images using an sObject formula. messages in Messaging:
• Messaging Agent

Provide Images via an Image ID Parameter


Here are the high-level steps to add dynamic images to messaging components with image ID parameters.

Let’s walk through these steps to create an enhanced link messaging component with a dynamic image.
1. Create the messaging component in Setup.
a. From Setup, enter Messaging Components in the Quick Find box, and then select Messaging Components.
b. Click New Component.
c. Complete the flow to create your enhanced link. Because an image is required, upload a generic image.
When the component is created, the Messaging Component Builder opens.

2. Add one or more supported formats to the component.


a. From the Details tab in the Messaging Component Builder, click Add Format and select a format, such as Rich Link.

394
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

b. For each format that you add, click its name in the navigation menu and check the properties pane to see how many images
you can include. Look for properties with “Image” in the title. The Rich Link format has one image property.

3. In a separate browser tab, prepare the images that you plan to use in your messaging component. Upload them as files or assets,
or store them in a custom field that contains a URL leading to the image.

Tip: If you save the images as files or assets, perform a query from the Salesforce Developer Console to gather the image ID
of the associated ContentVersion or ContentAsset record. You can then reference this ID in your flow. ContentVersion IDs start
with 069, while ContentAsset IDs start with 03S. In this example ContentVersion URL, the ID is 0691Q00000YOjliQAD:
https://yourwebsite.com/lightning/r/0691Q00000YOjliQAD/view.

4. Back in the Messaging Component Builder, create a custom parameter to provide the link image.
a. From the Parameters tab, click New in the Custom Parameters section.
You can add up to 5 custom parameters.

b. Enter a name and API name, and select ImageId as the type.
c. Select Required if the parameter must be provided for the component to be sent.
The flow to insert the component fails if it doesn’t provide this parameter.

d. Leave List deselected. Image parameters can’t be lists.

395
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

5. Update each format’s image properties to use image parameters.


a. Click a format name in the navigation menu, such as Rich Link.
b. For each image property, select the Parameters type and select an image parameter. If you don’t want to include an image,
leave the type as None.

6. On the Flows page in Setup, create a screen flow that agents can run to send the messaging component to a customer. While flows
are highly customizable, refer to these steps for guidance.
a. Create a text variable named recordId and make it available for input. This resource stores the ID of the messaging session.
b. Create a second text variable named imageId and make it available for input. This resource stores the ID of the image asset.
c. Add a screen containing an Enhanced Message component.
d. In the inputs section of the Enhanced Message component, enter your recordId variable as the Messaging Session ID and select
the messaging component.
e. In the custom parameters section of the Enhanced Message component, select the custom imageId parameter and imageId
variable.

396
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

f. Add other flow logic to define when a particular image is used. For example, use a decision element paired with assignment
elements to populate the imageId variable with a specific ContentVersion ID based on the user’s location. Or, add a Get Records
screen that retrieves a ContentVersion or ContentAsset record matching your criteria.
g. Save, debug, and activate your flow.

7. Add the flow to your Messaging Session page layout. See Add Messaging to the Service Console.
8. To send the messaging component in a messaging session with its images populated, the agent runs the flow in the Service Console.

Provide Images via a MESSAGINGIMAGE Formula


On some image properties on messaging component formats, the Type field on the image property doesn’t show Parameter as an
option. In these properties, you can instead provide the image dynamically with a MESSAGINGIMAGE formula.
A MESSAGINGIMAGE formula transforms an image URL into an image in a messaging component. It contains two parameters.
• The imageUrl parameter defines the custom object field containing the image URL.
• The mimeType parameter defines the content type, such as jpeg, jpg, or png.
The formula takes this format: MESSAGINGIMAGE(imageUrl, mimeType). Here’s a simple example formula from an image
property on the List Selector format: MESSAGINGIMAGE(Image__c, “image/jpeg”)

397
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

The button text is provided via a standard parameter, shown in the Button Configuration section. The accompanying flow can then
define which records are shown as list options, while the MessagingImage formula transforms each record’s image URL into the
image shown with the list option.

398
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

Considerations for Messaging Components


Before creating messaging components for agents to send in messaging sessions, review important
EDITIONS
considerations.
Available in: Lightning
General Considerations Experience. View required
editions.
• Messaging components are supported only in enhanced Messaging channels and Messaging
for In-App and Web. This Messaging
article for In-App,
• Enhanced bots can send any messaging component except auto-response, including enhanced
applies to: Messaging
links, time selectors, and questions with options.
for Web,
• In enhanced SMS messaging channels, supported messaging components are only available enhanced
in the default Text format. WhatsApp,
• Package your messaging components lets you move them between Salesforce orgs without enhanced
recreating any settings. You can even package a standard Einstein bot with messaging Facebook
components to share your bot template between sandbox and production. To get started, Messenger,
choose a type of package. enhanced
SMS,
enhanced
Auto-Response Components Apple
Messages
• Auto-response messaging components are supported only in Messaging for In-App and Web
for Business,
and Bring Your Own Channel.
enhanced
• When an auto-response component is sent, agents see a generic placeholder in the transcript. LINE, Bring
Agents can’t see the content of the auto-response. Your Own
• The messaging component action in the messaging window doesn’t show auto-response Channel,
components. These components are sent only if they’re selected in a channel’s settings. and Bring
Your Own
Channel for
Enhanced Link Components CCaaS
• In enhanced WhatsApp and enhanced LINE channels, enhanced link components are available This Standard
only in the Text (plain text) format. In this format, customers can see a link preview on page 477 article WhatsApp,
or just the link title and URL. If you plan to create a screen flow that automatically shares links doesn’t standard
in WhatsApp and LINE, enhanced link components are a good option. Otherwise, agents can apply to: Facebook
simply copy and paste a URL into a messaging session. Messenger,
• The Rich Link format of enhanced link messaging components must contain a URL, image, and and
link text. standard
SMS
channels
Form Components
• Form messaging components must be linked to a global “Create a record” action that creates
a custom object or one of these standard objects: Case, Contact, Order, Product, and Asset.
• Global actions that are linked to a form messaging component can contain these types of fields: Text, Text Area, Text Area (Long),
Email, Checkbox, Date, Date/Time, Number, Phone, Picklist, Picklist (Multi-Select), and URL. All other field types, including lookup
fields, aren’t supported. If an unsupported field is added to the global action layout, it won't be visible in the form component and
may cause an error.
• In enhanced WhatsApp, enhanced Facebook Messenger, and enhanced LINE channels, form messaging components are available
only in the Text (plain text) format. While global action-based forms can’t be sent in plain text, you can edit your component’s plain
text version so it contains a link to a public form or shows a text-only list of your form questions.

399
Provide Conversation Support with Messaging in Service Interactive Messaging Components
Cloud

• If you create a form component for use in a Messaging for Web deployment for an Experience Builder or Commerce Cloud site,
republish your deployment after creating or editing the component. Otherwise, messaging users can’t receive the form in messaging
sessions.

Notification Components
• Notification messaging components can be sent manually using the messaging component action in the messaging window, or
via a flow using the Send Conversation Messages flow action.
• Automated messaging doesn’t yet support translated messaging components. If you’re using a flow to automatically send notification
messaging components, the original, untranslated version of the component is sent to customers.
• To be sent in a WhatsApp channel, a notification messaging component must be linked to a WhatsApp messaging template that is
created in WhatsApp Business Manager and approved by WhatsApp. For details, see Send Automated Messages in Enhanced
Messaging Channels.
• Buttons and dynamic footers aren’t supported in WhatsApp templates that are linked to a notification component, and should be
removed from the template in WhatsApp Business Manager. Buttons invite a response from the customer, whereas notification
components are designed to share information that requires no response. If a template contains buttons or a dynamic footer, those
sections aren’t visible or configurable in the Messaging Component Builder.
• When a notification messaging component is sent to a customer in an enhanced WhatsApp channel, it counts as one outbound
message regardless of whether it’s sent within the 24-hour customer care window.
• In enhanced Facebook Messenger, enhanced LINE, Bring Your Own Channel, and Bring Your Own Channel for CCaaS, notification
messaging components are available only in the Text (plain text) format, and can only be sent manually using the messaging
component action in the messaging window of the Service Console. You can’t use flows to send notification messaging components
in these channels.
• If you use the metadata API to redeploy a notification messaging component that’s linked to an approved WhatsApp template—for
example, if you’re migrating components between orgs—you must then reconfigure the component to avoid problems during
sending. Open the component in the Messaging Component Builder, remove the External Template format, re-add the same format,
and reconfigure its properties.

Questions with Options and Time Selector Components


• Question with options and time selector messaging components have these limitations in enhanced WhatsApp channels:
– Images don’t appear with list options. Even if you’ve added images to your component by updating its constants, customers
see only the accompanying text.
– If the question or title is over 20 characters, the List Selector format can’t be used and the component appears in the next available
format—usually, the Text format.
– If a list option is over 24 characters, the option text is truncated in the List Selector and Buttons formats.

• Question with options have these limits in LINE channels:


– You can provide up to four options for Buttons, 13 options for Quick Replies, and 10 options for Card Carousels.
– If a question with options includes too many options, it may be sent as plain text. This may also happen if one of the options is
too long.

• The messaging component action in the messaging window doesn’t show questions with dynamic options or time selectors. Agents
can send these types of components to customers by running a flow in the Service Console to insert the component into the message
field, and then clicking Send.

400
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Payment Components
Currently, Apple Pay payments made in Apple Messages for Business channels via a payment messaging components are supported
only in the sandbox. Don’t add Apple Pay to your channel in production.

Set Up Automated Notifications in Service Cloud Messaging


Send automated messages to customers in supported Messaging channels based on certain events.
EDITIONS
For example, notify customers about the status of their case: “John, your case #1234 has been
resolved.” Automated messaging is also known as triggered outbound messaging. Available in: Lightning
The way you set up and send an automated notification depends on the channel where it’s sent. Experience. View required
editions.
Channel Type Setup Method Sending Method Messaging
This
Standard WhatsApp channels Submit a template to Salesforce A flow sends the message. article for In-App,
for review by WhatsApp. Then, applies to: standard
create the approved template Facebook
on the Messaging templates Messenger,
standard
page in Setup.
and
Standard SMS and standard Create a template on the A flow sends the message. enhanced
Facebook Messenger channels Messaging Templates page in In SMS channels, automated WhatsApp,
Setup. standard
messages are supported only
and
within the country of the enhanced
channel’s phone number. For SMS,
example, in a channel with a enhanced
US phone number (+1), you LINE, and
can send automatic messages enhanced
only to US phone numbers. Apple
Messages
Enhanced WhatsApp channels Create a template in WhatsApp A flow sends the message. for Business
Business Manager. Then, create Agents can also send them channels
a notification messaging manually from the Service
This Messaging
component on the Messaging Console.
article for Web,
Components page in Setup,
doesn’t enhanced
and link it to your template.
apply to: Facebook
Messaging for In-App, Create a notification messaging A flow sends the message. Messenger,
enhanced SMS, and enhanced component on the Messaging Agents can also send them Bring Your
Apple Messages for Business Components page in Setup. manually from the Service Own
channels Console. Channel,
and Bring
Your Own
Channel for
In Messaging for In-App, you can also set up push notifications. Push notifications alert customers
CCaaS
about new messages sent by agents or automation. For example, after a flow sends a message to
a customer in your iOS app, a push notification informs the customer that they received a message.

Note: In enhanced Facebook Messenger, enhanced LINE, Bring Your Own Channel, and Bring Your Own Channel for CCaaS,
agents can send notification messaging components manually from the Service Console by clicking the messaging component
action and selecting a component. However, you can’t send them via automation.

401
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

IN THIS SECTION:
Set Push Notifications for Messaging for In-App
Set push notifications for your iOS or Android mobile apps in your Messaging for In-App channel. Unlike messages that are automated
or sent by agents, push notifications are temporary and don’t appear in a user’s messaging history.
Send Automated Messages in Enhanced Messaging Channels
Using a flow and a notification messaging component, send customers automated messages to notify them about a product delivery,
case update, or something else.
Send Automated Messages in Standard Messaging Channels
Using a flow, send customers automated, template-based messages in standard Messaging channels to notify them about a product
delivery, case update, or something else.

402
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Set Push Notifications for Messaging for In-App


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: channels

This Messaging
article for Web,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

403
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Set push notifications for your iOS or Android mobile apps in your Messaging for In-App channel.
USER PERMISSIONS
Unlike messages that are automated or sent by agents, push notifications are temporary and don’t
appear in a user’s messaging history. To set up this feature:
Before you set up push notifications, review and prepare platform-specific information. • Customize Application
AND
To learn more about iOS device notifications, see Apple’s Notifications Overview. You also need
access to the Apple credentials for iOS. Modify Metadata
Through Metadata API
To learn more about Android device notifications, see Google’s Notifications Overview. Before you Functions
set up push notifications, also complete these setup tasks for Android.
To modify permission sets
1. Confirm that you have access to the Firebase credentials for Android.
and profiles:
2. Enable the Firebase Cloud Messaging API by visiting • Manage Profiles and
Permission Sets

https://console.developers.google.com/apis/api/fcm.googleapis.com/overview?project=projectID
(enter your projectID in the URL).
3. Apply the Firebase Cloud Messaging API Admin role to your Google Cloud project’s service account that you authorized in Salesforce.
With this role, you can create & send push notifications. For your list of Google accounts, visit
https://console.cloud.google.com/iam-admin/iam?project=projectID (enter your projectID in
the URL).
With your platform information ready, follow these steps.
1. From Setup, in the Quick Find box, enter Embedded Service, and then select Embedded Service Deployments.
2. Next to the Embedded Service deployment that you want, click View .
3. From the Push Notifications section, click Set Notifications.

4. Enter the information for your push notifications by platform.

404
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Here’s an overview of the required iOS fields.

Field Purpose/Limitation
App Identifier The application bundle of your iOS app.

APNS Host Select the host that matches your application build, either
Production or Development.

Key Identifier The 10-character key ID from Apple for your encryption key.

Team Identifier The 10-character team ID for developing your company’s apps.

Signing Key Upload the token connection .p8 signing key file provisioned
in the Apple Developer account associated with your application.

Here’s an overview of the required Android fields.

Field Purpose/Limitation
Firebase Project Name The name of the Firebase project associated with your Android
app.

Firebase Database URL The Firebase URL for the database associated with your app.
Usually in the form
https://projectName.firebase.com.

Service Account JSON The service account file provisioned from the Firebase Project
associated with your application. Contains project information
and a private signing key for authorization to FCM services.

5. Save your work.

Note: Each deployment contains a pair of Apple and Android notification credentials. To ensure the mobile app uses the correct
credentials, configure the deployment’s developerName in the mobile SDK.

405
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Send Automated Messages in Enhanced Messaging Channels


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: enhanced
WhatsApp,
enhanced
SMS,
enhanced
LINE, and
enhanced
Apple
Messages
for Business
channels

This Messaging
article for Web,
doesn’t standard
apply to: and
enhanced
Facebook
Messenger,
standard
WhatsApp,
standard
SMS, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

406
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Using a flow and a notification messaging component, send customers automated messages to
USER PERMISSIONS
notify them about a product delivery, case update, or something else.
Automated messages appear in a customer’s messaging history. They don’t require a response, but To open, edit, or create a
if the customer does respond, their response is routed back to your support team. flow in Flow Builder:
• Manage Flow
To create, edit, or view
processes:
• Manage Flow
AND View All Data
To create messaging
components:
• Customize Application
AND View Setup and
Configuration
OR
System Administrator

Step 1: (Enhanced WhatsApp Only) Prepare Your Templates in WhatsApp Business Manager
In WhatsApp channels, automated messages must be based on a WhatsApp template that you create in WhatsApp Business Manager.
When an automated message is sent in an enhanced WhatsApp channel, it counts as one outbound message regardless of whether it’s
sent within the 24-hour customer care window.
1. If you’re upgrading from a standard channel or migrating a number from an external business service provider (BSP), copy your
message templates from the original WhatsApp Business account (WABA) to the new WABA associated with your enhanced channel.
a. In Setup, go to the Messaging Settings page.
b. In the list of channels, click the name of your enhanced WhatsApp channel.
c. In the Message Templates section, enter the ID of your original WABA that was associated with your standard channel or external
BSP. The original WABA and your new channel WABA must be associated with the same Meta Business ID.
d. Click Copy Templates.

407
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

e. When you receive confirmation that the templates were copied, navigate to your new WABA’s settings in WhatsApp Business
Manager.

2. In WhatsApp Business Manager, create new message templates or recreate any that couldn’t be copied from a previous WABA.
a. Follow the WhatsApp documentation: Create message templates for your WhatsApp Business account.
b. Important: Remove any buttons or dynamic footers from your templates. Buttons invite a response from the customer, whereas
notification components are designed to share information that requires no response. If a template contains buttons or a dynamic
footer, those sections aren’t visible or configurable in the Messaging Component Builder.
c. Wait until your template status updates to indicate that it’s approved, which can take up to a day.

Step 2: Create Notification Messaging Components


A notification messaging component determines the content of your automated message. Depending on the channel where it is sent,
you can add special formats to further control your component’s appearance.
1. Create a notification messaging component in Setup. To provide notification messages in multiple languages, create a separate
messaging component for each language.
a. Go to the Messaging Components page in Setup.
b. Click New Component.
c. Click Notification, then click Next.
d. Enter the plain text version of your automated message, using merge fields to add information like the customer’s name or case
status. Upload an image, which is used in some component formats. Then, click Next.
e. Enter a name and description for your component. For example, Order Status Change.
f. Click Done. The Messaging Component Builder opens.
g. Optionally, in the left-hand menu, click Text to further customize the plain text version of your automated message. The Text
version is used in enhanced SMS channels or in any channel where your preferred format isn’t available.
h. Save your changes.

2. (Messaging for In-App and Apple Messages for Business only) Optionally, include a rich link in your automated message.
a. Click Add Format. Select Rich Link, and then click Done.

408
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

b. In the left-hand menu, click Constant to replace the example URL and link title with your own.
c. In the left-hand menu, click Rich Link to confirm the format properties. For the image, URL, and link title, select Constant and
select the only available constant.
d. Save your changes.

3. (Enhanced WhatsApp channels only) Connect your messaging component to an existing WhatsApp message template.
a. On the Details page of your component in the Messaging Component Builder, click Add Format. Select External Template,
and then click Done.

b. Click Select Template.


c. Select your WhatsApp Business account. Then, select your template from a list of your approved templates.
d. In the properties pane, update your template’s properties—for example, select a standard object’s field value to show in your
message.
e. If you want to edit your template in WhatsApp, click Open in WhatsApp Business Manager and make your edits. When you
return to the Messaging Component Builder, refresh the page to see your changes.
f. Save your changes.

409
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Step 3: Create a Flow to Send Your Messaging Component


Create a flow that sends the notification messaging component under certain conditions.
Your flow only sends messages to customers who have a messaging user record associated with the messaging channel where you
want to send it. For example, if your customer Leo doesn’t have a messaging user record that’s associated with your enhanced WhatsApp
channel, the flow can’t send Leo an automated message in WhatsApp. Messaging user records are auto-created when customers contact
you in the channel, but you can also create them manually on page 451.
1. From Setup, in the Quick Find box, enter Flows, then select Flows.
2. Click New Flow.
3. Select the flow type, and click Next. The Flow Builder canvas opens.
4. Add a collection variable for the Messaging User object. This collection variable is populated with a list of messaging user record IDs
based on your criteria. For example, you can configure your flow to send an automated message to a subset of messaging users
based on channel and consent status.
5. Add an action to the canvas. The New Action window opens.
6. Select the Send Conversation Messages action and complete the fields.

410
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

a. In the Messaging Users field, select the collection variable that you created.
b. In the Messaging Component field, select your new messaging component.
c. Select when the message can be sent.
d. Select whether to apply the messaging end user's consent preferences for a channel when determining who receives the message
(recommended).

You can use values from earlier in a flow to set inputs for the message. If the action fields don’t contain valid inputs, the flow fails.
To track messages sent by this flow action, query the ConvMessageSendRequest object.

Tip: If needed, agents can also manually send notification messaging components to customers. Click the messaging component
action in the messaging window, and select and send the component.

SEE ALSO:
Flow Core Actions: Send Conversation Messages

411
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Send Automated Messages in Standard Messaging Channels


Using a flow, send customers automated, template-based messages in standard Messaging channels
EDITIONS
to notify them about a product delivery, case update, or something else.
Automated messages appear in a customer’s messaging history. They don’t require a response, but Available in: Lightning
if the customer does respond, their response is routed back to your support team. Experience. View required
editions.
Each automated message is based on a messaging template that determines the message content.
You can add merge fields to your templates to include personalized data, such as the customer’s This Standard
name or case status. A template can be used for multiple types of Messaging channels. After you article WhatsApp,
create templates, create a flow to send the template-based messages. applies to: standard
Facebook
Note: Messaging User fields can’t be inserted as merge fields. You can access fields only Messenger,
from these objects: Account, Asset, Case, Contact, Lead, Location, Opportunity, Organization, and
Service Contract, User, and any custom object with Allow Activities enabled. When Field standard
Service is enabled, you can also access fields from these objects: Assigned Resource, SMS
Maintenance Plan, Return Order, Service Appointment, Work Order. When Work.com is channels
installed with Broadcast permissions, the Employee object is available.
This Messaging
1. (Standard WhatsApp channels only) Submit your template to the WhatsApp enablement team article for In-App,
for approval. Follow the WhatsApp message template guidelines. Wait until you receive doesn’t Messaging
confirmation that your template is approved, which can take 2-5 business days. apply to: for Web,
2. Create your messaging template in Setup. enhanced
WhatsApp,
a. From Setup, enter Messaging in the Quick Find box, and select Messaging Templates. enhanced
b. Click New. Facebook
Messenger,
c. Enter a name and description for your template. enhanced
d. In the Message field, enter your message. Use merge fields to insert variables into the SMS,
message, such as the customer's name or case status. enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To create messaging
templates and view errors:
• Configure Messaging
To view channels:
• View Setup and
Configuration

412
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

If you’re creating a standard WhatsApp template, copy and paste the approved template while replacing the parameter
placeholders with your merge fields. The remaining template content must match your WhatsApp submission exactly, including
spaces and line breaks.

e. Select the channels where this template will be available: All channels, SMS, WhatsApp, or Facebook Messenger.

f. Optionally, select a template category if the template will be used in standard WhatsApp channels. The Template Category field
merely helps you organize your templates in Salesforce, and doesn’t affect the way that WhatsApp processes templated messages.
g. Click Save.

After you create a messaging template, create a flow that manages the sending of the message.

IN THIS SECTION:
Create a Flow to Send Messages in Standard Channels
Set up automation that sends template-based messages in standard Messaging channels when certain conditions are met.
Troubleshoot Errors for Automated Messages in Standard Messaging Channels
If something goes wrong when a flow tries to send a message notification in a standard Messaging channel, review the Messaging
Templates error log to find out what happened.

413
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Create a Flow to Send Messages in Standard Channels


Set up automation that sends template-based messages in standard Messaging channels when
EDITIONS
certain conditions are met.
When a flow sends an automated message, Salesforce does three things. Available in: Lightning
Experience. View required
• Create a messaging user record for the recipient, if one doesn’t exist already.
editions.
• Create a messaging session record with a transcript of the sent message and an unchanging
status of Ended. This Standard
article WhatsApp,
• Add any message errors to the Messaging Templates Error Log page in Setup.
applies to: standard
1. From Setup, in the Quick Find box, enter Flows, then select Flows. Facebook
2. Click New Flow. Messenger,
and
3. Select the flow type, and click Next. standard
The Flow Builder canvas opens. SMS
4. Add an action to the canvas. channels
The New Action window opens. Messaging
This
5. Enter Message Notification in the search, and then select Message Notification. article for In-App,
doesn’t Messaging
6. Fill out the fields for the Message Notification core action.
apply to: for Web,
You can use values from earlier in a flow to set inputs for the message notification. If the message enhanced
notification fields don’t contain valid inputs, the flow fails. WhatsApp,
enhanced
Field Description Facebook
Messenger,
Messaging Channel Unique Name The developer name associated with the enhanced
messaging channel. SMS,
enhanced
Messaging Template Unique Name The developer name associated with the
Apple
messaging template.
Messages
Context Record ID A record that can provide context for merge for Business,
fields. For the message to send successfully, all enhanced
merge fields must be filled. LINE, Bring
Your Own
ConversationBroadcast Record Optional. ID of the conversation broadcast Channel,
ID record that links all messages within a broadcast. and Bring
Your Own
Recipient Phone Number Optional. The destination phone number that Channel for
the message is sent to. Use if Recipient CCaaS
Record ID lists an object other than
MessagingEndUser, or if Recipient
Record ID isn't completed. USER PERMISSIONS

Recipient Record ID Optional. ID of a MessagingEndUser or a record To open, edit, or create a


with a phone number, such as a contact record. flow in Flow Builder:
• Manage Flow
Triggered Outbound Type Optional. The type of message. Enter either
Standard or Broadcast.

414
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Note: Though both are optional, use either Recipient Phone Number or Recipient Record ID to ensure the
Message Notification action works.

SEE ALSO:
Build a Flow

415
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

Troubleshoot Errors for Automated Messages in Standard Messaging Channels


If something goes wrong when a flow tries to send a message notification in a standard Messaging
EDITIONS
channel, review the Messaging Templates error log to find out what happened.
1. From Setup in Lightning Experience, enter Messaging in the Quick Find box, and select Available in: Lightning
Messaging Templates Error Log. Experience. View required
editions.

This Standard
article WhatsApp,
applies to: standard
Facebook
Messenger,
and
standard
SMS
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To create messaging
templates and view errors:
• Configure Messaging
To view channels:
• View Setup and
Configuration

416
Provide Conversation Support with Messaging in Service Set Up Automated Notifications in Service Cloud Messaging
Cloud

2. To view an error’s details, click the down arrow in the error’s action menu and select View.
When you're troubleshooting errors, keep this information in mind.
Messaging sends messages only to recipients who meet certain criteria.
Recipients are excluded when they don’t meet all the criteria:
• The recipient must have a corresponding Messaging User record.
• The Mobile Number field on the Messaging User record must be populated.
• The recipient must be opted in to receiving messages from you.
• The sender numbers you select must be associated with a messaging queue.
Broadcast messaging templates can’t be deleted after use.
If a template has been used in a broadcast message, you can’t delete it. Check the Conversation Broadcasts tab to see whether a
template has been used.
Recipients might receive multiple messages.
If they’re opted into multiple sender numbers, recipients can receive multiple messages. We recommend regularly reviewing your
Messaging User records to remove duplicates and check your recipients’ opt-in statuses.
Messaging templates aren’t supported in some Messaging channels.
Messaging templates are used only in standard SMS, standard Facebook Messenger, and standard WhatsApp channels. Enhanced
channels and Messaging for In-App and Web use a different method for sending automated messages.
Messaging errors are automatically deleted after 30 days. Deleted errors no longer appear in the error log. You can also delete an error
from the list view or error detail page.

SEE ALSO:
Messaging Error Codes in Service Cloud
Report on Messaging Activity in Service Cloud

417
Provide Conversation Support with Messaging in Service Using Enhanced Bots in Messaging Channels
Cloud

Using Enhanced Bots in Messaging Channels


To take advantage of Salesforce AI features, add an enhanced bot to your Messaging for In-App
EDITIONS
and Web channels or enhanced Messaging channels. Standard Messaging channels support standard
bots. Available in: Lightning
With enhanced bots, you can apply the flexibility of Omni-Channel Flow and powerful business Experience. View required
rules to route conversations to and from a bot. Plus, add rich content such as files and hyperlinks editions.
to your bot conversations.
This Messaging
Keep these considerations in mind when working with enhanced bots. article for In-App,
applies to: Messaging
• Enhanced bots can't be used in standard Messaging channels.
for Web,
• You must use Omni-Channel Flows to route messaging sessions to bots. enhanced
• Bots can send files, but the same file sharing limits apply for both bots and agents. WhatsApp,
• In enhanced Messaging channels and Messaging for In-App and Web, enhanced bots can send enhanced
messaging components of these types: enhanced link, time selector, and questions with options. Facebook
Messenger,
• If your bot includes a question with static options and will be used in enhanced WhatsApp or enhanced
Apple Messages for Business channels, use the Menu rather than the Buttons format when SMS,
configuring it in the Bot Builder. If Buttons is selected, the end user doesn't see the question enhanced
until they select an option. Apple
• Messages sent by a bot to WhatsApp in quick succession may not be delivered in order Messages
depending on how the Meta API processes the messages. for Business,
enhanced
• We recommend configuring your bot’s welcome dialog to be transparent with your customers.
LINE, Bring
– Tell customers that they’re messaging with a bot. Your Own
– Tell customers that conversation transcripts, even in conversations that include only a Channel,
customer and a bot, are saved in Salesforce. and Bring
Your Own
To make sure that you address any compliance considerations, check with your legal counsel. Channel for
CCaaS

SEE ALSO: This Standard


Set Up Enhanced Bots article WhatsApp,
doesn’t standard
Considerations for Enhanced Bots
apply to: Facebook
Messenger,
and
standard
SMS
channels

418
Provide Conversation Support with Messaging in Service Customize Auto-Responses in Service Cloud Messaging
Cloud Channels

Customize Auto-Responses in Service Cloud Messaging Channels


Customize auto-responses for common scenarios in messaging sessions, and set keywords that
EDITIONS
customers can use to perform actions like opting out of receiving messages. Some auto-response
options are available only in enhanced Messaging channels and Messaging for In-App and Web. Available in: Lightning
To respect your customers’ time, we recommend keeping auto-responses short, around 1-2 Experience. View required
sentences. An auto-response shouldn’t exceed the character limit for your channel type. editions.

1. From Setup in Lightning Experience, enter Messaging in the Quick Find box, and then select This Messaging
Messaging Settings. article for In-App,
applies to: Messaging
2. Find your channel in the list. Click the down arrow on the right-hand side and select Edit.
for Web,
Important: In enhanced Messaging channels and Messaging for In-App and Web, standard
clicking Edit shows only some of the channel settings. To edit additional auto-response and
settings, such as the required level of consent and language-specific keywords, click the enhanced
channel name in the list of channels. WhatsApp,
standard
3. In the Automated Responses section, enter the messages that you want to send to customers. and
enhanced
4. Save your changes.
Facebook
Messenger,
Field Description Example Required? standard
Conversation The reply sent to a customer’s initial Thanks for your No and
Acknowledgment message. It assures the customer that message. An enhanced
you received their message. In agent will be with SMS,
enhanced
channels that require customers to you shortly. Just
Apple
opt in to receiving messages, the so you know, we
Messages
conversation acknowledgment is sent record and track
for Business,
after the opt-in confirmation. conversations to
enhanced
If a bot is in use, the Conversation help improve LINE, Bring
Acknowledgment field is disabled your experience. Your Own
because the bot responds to the Channel,
customer’s initial message. In and Bring
Messaging for In-App and Web Your Own
channels, create an auto-response Channel for
messaging component to use as your CCaaS
Conversation Acknowledgment
message. USER PERMISSIONS

Start The message sent to a customer when Hello, how can I No To set up and edit
Conversation an agent joins the conversation. In help you today? Messaging channels:
Messaging for In-App and Web • Configure Messaging
channels, create an auto-response To view channels:
messaging component to use as your • View Setup and
Start Conversation message. Configuration

End Conversation The message sent to a customer when Thanks again for No
the agent or customer ends the contacting us. We
conversation. In Messaging for In-App appreciate your
and Web channels, create an business.

419
Provide Conversation Support with Messaging in Service Customize Auto-Responses in Service Cloud Messaging
Cloud Channels

Field Description Example Required?


auto-response messaging component to use as your
End Conversation message.

Inactive Conversation (Messaging for In-App and Web only) The message It looks like you’re busy, No
sent when a conversation is automatically marked so we’re going to help
inactive after a specified period of inactivity. Create another customer now.
an auto-response messaging component to use as
your End Conversation message.

Opt-In Prompt (Not available in Messaging for In-App and Web) Asks
To subscribe to Short codes only
customers to opt in to receive messages on this [Campaign Name]
channel. To opt in, customers can reply with an opt-in
[Description] Alerts, reply
keyword. You can’t customize the prompt for other START. Reply HELP for
languages. help. Reply STOP to
To customize the opt-in prompt for enhanced cancel at any time.
Messaging channels, set the channel’s Consent Type Msg&data rates may
to Explicit Opt-In. apply.

Opt-In Keywords (Not available in Messaging for In-App and Web) START, OPT IN Short codes only
Keywords your customers can send to agree to
receive messages on this channel. You can add opt-in
keywords for every language you support.

Opt-In Confirmation (Not available in Messaging for In-App and Web) The By default, the opt-in SMS and short codes only
message sent after a customer sends an opt-in message is “Thanks for
keyword. The confirmation acknowledges that the opting in and allowing us
customer consents to receiving messages from your to send you messages.”
company on this channel.
In enhanced Messaging channels, customers don’t
receive an opt-in confirmation when they’re implicitly
opted in to receive messages.

Opt-Out Keywords Keywords your customers can send to opt out of STOP Yes
receiving messages on this channel. When a
customer sends an opt-out keyword, they receive an
opt-out confirmation, and then stop receiving
messages. You can add opt-out keywords for every
language you support. The default keywords are:
• Stop
• Stopall
• Unsubscribe
• Cancel
• End
• Quit

Opt-Out Confirmation The message sent after a customer sends an opt-out By default, the opt-out Yes
keyword. You can customize this for every language message is “You’ve opted

420
Provide Conversation Support with Messaging in Service Customize Auto-Responses in Service Cloud Messaging
Cloud Channels

Field Description Example Required?


you support. American and European privacy out of receiving
regulations require opt-out confirmation. messages from us, so we
won’t contact you again.”

Double Opt-In Prompt (Not available in Messaging for In-App and Web) Asks To confirm your Short codes only
customers to confirm that they agree to receive subscription to
messages on this channel. This message is sent in [Campaign Name]
channels that require double consent. To opt in, [Description] Alerts, reply
customers can reply with a double opt-in keyword. YES. Reply HELP for help.
Reply STOP to cancel at
any time. Msg&data rates
may apply.

Double Opt-In Keywords (Not available in Messaging for In-App and Web) CONFIRM, YES, Y
Keywords your customers can send to doubly agree
to receive messages on this channel. You can add
double opt-in keywords for every language you
support. Your opt-in keywords and double opt-in
keywords should be different.

Help Keywords Keywords your customers can send to request help HELP, AIDE Short codes only
during a conversation. You can add help keywords
for every language you support.

Help Response The response sent to customers when they send a [Campaign Name] Short codes only
help keyword. You can customize this for every [Description] Alerts: Help
language you support. at [source of help] or [toll
free number]. Msg&data
rates may apply.
[Message frequency].
Text STOP to cancel.

Custom Keywords Keywords your customers can send to receive a INFO Short codes only
custom response. For example, use custom keywords
to automate the sharing of company-specific
information, or to comply with country-specific
regulations. You can add custom keywords for every
language you support.

Custom Response The response sent to customers when they send a [Campaign Name] Short codes only
custom keyword. You can customize this for every [Description] Alerts:
language you support. Contact us at [web URL]
or [email address].
Msg&data rates may
apply. [Message
frequency]. Text STOP to
cancel.

421
Provide Conversation Support with Messaging in Service Customize Auto-Responses in Service Cloud Messaging
Cloud Channels

Field Description Example Required?


Consent Type (Available only in enhanced Messaging channels) Not applicable. Not applicable.
The level of consent required from customers for your
company to send them messages on this channel.
• Implicit Opt-In—(Default) By sending your
company a message, the customer consents to
receive messages.
• Explicit Opt-In—The customer must send an
opt-in keyword to receive messages.

Tip: In addition to customizing auto-responses, save agents time during messaging sessions by giving them predefined “quick
text” messages, like greetings, answers to common questions, and descriptions of company policies. Quick text can include merge
fields, line breaks, and special characters, and is a great way to standardize your company messaging.

SEE ALSO:
Customize the Messaging Opt-In and Opt-Out Experience
Create and Send Auto-Response Components in Messaging Sessions
Standardize Responses with Quick Text
Messaging for Web Developer Guide
Messaging for In-App Developer Guide

422
Provide Conversation Support with Messaging in Service Update Service Cloud Messaging Channel Settings
Cloud

Update Service Cloud Messaging Channel Settings


To view and configure the settings of a Messaging channel, click the channel name on the Messaging
EDITIONS
Settings page in Setup.

Note: If you don’t see a setting, click Edit in the channel’s action menu to view additional Available in: Lightning
settings. Experience. View required
editions.

This Messaging
General Channel Settings article for In-App,
applies to: Messaging
Field Description for Web,
standard
Active Not editable. Indicates whether the channel’s
and
messaging traffic is traveling to and from
enhanced
Salesforce. Some channels must be activated
WhatsApp,
on page 282 in Setup.
standard
Business Hours The operating hours for your business, when and
agents are available. Available only if Einstein enhanced
Bots is in use. Facebook
Messenger,
Channel Address Identifier A UUID that identifies a deployed messaging standard
channel. This identifier is unique across orgs, so and
a channel with the same Messaging Platform enhanced
Key in a sandbox and production has a different SMS,
Channel Address Identifier for each. enhanced
Apple
Channel Name The name of the channel. Messages
For Facebook Messenger channels, if you update for Business,
the name of your Facebook page in Facebook, enhanced
the old name still appears in the Messaging LINE, Bring
Your Own
channels list view. To show the new name,
Channel,
delete and re-add the channel for that page.
and Bring
Your Own
Developer Name The developer name of the channel. This value
Channel for
is a concatenation of the messaging platform
CCaaS
key and the channel type.

Messaging Channel ID A unique identifier of the messaging channel


Salesforce record.

Messaging Platform Key (Not editable) A unique key for a channel that
the end user can message.
• In SMS, WhatsApp, and LINE channels, the
platform key is the phone number
associated with this channel.
• In Facebook Messenger channels, the
platform key is the Facebook page ID
associated with this channel.

423
Provide Conversation Support with Messaging in Service Update Service Cloud Messaging Channel Settings
Cloud

Field Description
• In Apple Messages for Business channels, the platform key is
the Apple Messages identifier.
• In Messaging for In-App and Web, the platform key is identical
to the Channel Address Identifier.
To encrypt this field, use deterministic encryption. If you use
probabilistic encryption, Messaging doesn't work as expected.

Platform Type Indicates whether the channel is Standard or Enhanced.


Messaging for In-App and Web, Bring Your Own Channel, and
Bring Your Own Channel for CCaaS use the Enhanced platform
type.
When a standard SMS or Facebook Messenger channel is upgraded,
the platform type changes from Standard to Enhanced.
When a standard WhatsApp channel is upgraded, the original
channel’s platform type remains Standard and a new channel
is created with a platform type of Enhanced.

Type The type of Messaging channel:


• Apple Messages for Business
• Custom (Bring Your Own Channel or Bring Your Own Channel
for CCaaS)
• Embedded Messaging (Messaging for In-App and Web)
• Facebook
• LINE
• Text (SMS)
• WhatsApp

Unified Messaging Enabled If selected, indicates that the channel is in use in a Unified
Messaging channel.

Routing Settings
Field Description
Enable Advanced Routing Route the channel’s messaging sessions based on the logic in the
specified Omni-Channel flow. If not selected, sessions are routed
to a specific queue.
Enabling advanced routing doesn’t enable enhanced
Omni-Channel routing, which is a separate feature that can’t be
used with standard Messaging channels.
This field is available only in standard channels.

424
Provide Conversation Support with Messaging in Service Update Service Cloud Messaging Channel Settings
Cloud

Field Description
Fallback Queue The queue that receives messaging sessions that the Omni-Channel
flow is unable to route.
This field is available in standard channels if Enable Advanced
Routing is selected, and visible in enhanced channels if the
routing type is Omni-Flow.

Flow Definition The Omni-Channel flow used to route messages in this channel.
This field is available in standard channels if Enable Advanced
Routing is selected, and visible in enhanced channels if the
routing type is Omni-Flow.

Queue The queue that messages sent to this channel are routed to. You
can’t delete queues.

Routing Configuration The routing configuration used to route messages in this channel.
A routing configuration defines the relative priority and relative
size of work items, and specifies how work items are routed to
agents.
This field is available in standard channels if the routing type is
Channel Skills.

Routing Type The type of routing for this channel.


In standard channels, possible values are Omni-Channel and
Channel Skills. Select Channel Skills to route
messages based on agent skill. Otherwise, select
Omni-Channel.
In enhanced channels, possible values are Omni-Queue and
Omni-Flow. Select Omni-Queue to use queue-based routing.
Select Omni-Flow to route with an Omni-Channel flow, which
supports routing to bots.

Skill The skill or skills associated with this channel.


This field is available in standard channels if the routing type is
Channel Skills.

Consent Settings & Auto-Response Settings


See Customize Auto-Responses in Service Cloud Messaging Channels on page 419.

425
Provide Conversation Support with Messaging in Service Update Service Cloud Messaging Channel Settings
Cloud

Conversation Channel Definition Settings


Field Description
Connected App Name The name of the connected app used to manage authentication
between the Salesforce Interaction Service API and the Messaging
or CCaaS partner’s system.
This field is available only in Bring Your Own Channel and Bring
Your Own Channel for CCaaS.

Connected App Type The owner of the connected app used to manage authentication
between the Salesforce Interaction Service API and the Messaging
or CCaaS partner’s system. If set to Partner, the partner creates
the connected app and includes it in their managed package. If
set to Customer, the admin creates the connected app.
This field is available only in Bring Your Own Channel and Bring
Your Own Channel for CCaaS.

Conversation Channel Definition A record in Salesforce that contains metadata for any Bring Your
Own Channel or Bring Your Own Channel for CCaaS integration.
This field is available only in Bring Your Own Channel and Bring
Your Own Channel for CCaaS.

Contact Center Settings


Field Description
API Name The API name of the connected contact center.
This field is available only in Bring Your Own Channel for CCaaS.

Name The name of the connected contact center.


This field is available only in Bring Your Own Channel for CCaaS.

Additional Channel Settings


Field Description
Add User Verification Turns on user verification on page 74.
This field is available only in Messaging for In-App and Web.

Authorization Token Expiration Time for Verified Users The expiration time in minutes of the Salesforce authorization token
for verified users. When the token expires, your web or in-app client
must provide a valid user identity token.
This field is available only in Messaging for In-App and Web.

426
Provide Conversation Support with Messaging in Service Update Service Cloud Messaging Channel Settings
Cloud

Field Description
Automatically mark conversations inactive after a period of If selected, the status of a messaging session changes to Inactive
customer inactivity after a specified period of inactivity.
This field is available only in Messaging for In-App and Web, Bring
Your Own Channel, and Bring Your Own Channel for CCaaS.

Let customers download their conversation transcripts If selected, customers can download a PDF of their conversation
transcript.
This field is available only in Messaging for In-App and Web.

Let customers send attachments to agents If selected, customers can send file attachments to agents.
This field is available only in Messaging for In-App and Web.

Minutes to Timeout If Automatically mark conversations inactive... is selected, this


setting determines how many minutes of inactivity cause the
session status to change to Inactive.
This field is available only in Messaging for In-App and Web, Bring
Your Own Channel, and Bring Your Own Channel for CCaaS.

Show estimated wait time If selected, customers see their estimated wait time to chat with
an agent.
This field is available only in Messaging for In-App and Web.

SEE ALSO:
Customize Auto-Responses in Service Cloud Messaging Channels

427
Provide Conversation Support with Messaging in Service Customize the Profiles, Queues, or Flows that Agents Can
Cloud Transfer To

Customize the Profiles, Queues, or Flows that Agents Can Transfer To


Reduce long transfer destination lists when agents just need to deliver a session to the right place
EDITIONS
quickly. Choose whether to offer all profiles, queues, and flows, or just offer some.
1. In Setup, enter Presence Configurations and select Presence Configurations. Available in: Lightning
Experience. View required
2. Locate the presence configuration that you’d like to customize, and click Edit.
editions.
3. Under Agent Settings, locate the Transfer Destinations node.
This Messaging
4. To offer all profiles, queues, or flows to your agents, select the Select all profiles, Select all article for In-App,
queues, or Select all flows boxes. applies to: Messaging
5. To make only some profiles, queues, and flows available to agents, highlight the profile, queue, for Web,
or flow in the Available box, then click Add to move it to the Selected box. enhanced
WhatsApp,
6. Save your changes. enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

428
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Optimize Messaging for In-App and Web


After you complete the basic setup of your Messaging for In-App and Web channel, you can add
EDITIONS
additional features to customize the agent and customer messaging experience. For example, set
business hours for your channel, show customers an estimated wait time in the messaging window, Available in: Lightning
or control the actions that customers can take in a messaging session. Experience. View required
editions.
IN THIS SECTION: Messaging
This
Show the Emoji Keyboard in Messaging for Web article for In-App
Choose to allow messaging for web customers to send emoji to agents in messaging applies to: and
conversations. On the Embedded Service Deployment Settings page, turn on the keyboard. Messaging
for Web
Show Customers an Estimated Wait Time in the Messaging Window channels
Automatically tell customers how many minutes they have to wait before being connected to
an agent. Build customer trust by setting expectations. This Standard
article and
Add Terms and Conditions Acceptance to your Pre-Chat Form enhanced
doesn’t
Inform your customers that you track or record conversation data, or share other important apply to: WhatsApp,
information, by presenting your Terms and Conditions automatically through your pre-chat standard
form. and
enhanced
Set Business Hours in Messaging for In-App and Web
Facebook
Don’t leave your customers waiting. Prevent customers from starting new messaging sessions
Messenger,
outside of your business hours. After setting business hours, the Messaging for Web button standard
disappears when you’re not working, and Messaging for In-App customers will see a banner and
letting them know that your business hours are over. Use the API to prevent incoming Messaging enhanced
for In-App conversations outside of business hours. SMS,
Customize the Enter or Return Key in Messaging for Web enhanced
By default, Messaging for Web is configured so that the Enter or Return key sends a message. Apple
Messages
To make it start a new line of text instead, change the deployment settings.
for Business,
Prevent End Users from Sending File Attachments in Messaging for In-App and Web enhanced
Choose whether your end users can send file attachments to agents in Messaging for In-App LINE, Bring
and Web. Your Own
Channel,
Customize Your UI with Lightning Web Components
and Bring
To update the look and feel of your customer-facing messaging interface, create and add Your Own
Lightning Web Components. Channel for
Clone Your Messaging for In-App Deployment CCaaS
To prevent outages for customers who haven’t yet upgraded to the latest version of your mobile
app, clone your Messaging for In-App deployment before releasing a new feature. Roll out the
new feature on the cloned version of the deployment while allowing customers who haven’t yet upgraded to keep using the older
version.

429
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Show the Emoji Keyboard in Messaging for Web


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for Web
applies to: channels

This Messaging
article for In-App,
doesn’t standard
apply to: and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

430
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Choose to allow messaging for web customers to send emoji to agents in messaging conversations.
USER PERMISSIONS
On the Embedded Service Deployment Settings page, turn on the keyboard.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then To set up this feature:
select Embedded Service Deployments. • Customize Application
AND
2. Click the edit button to the right of your deployment, and select View.
Modify Metadata
3. Click Edit Settings. Through Metadata API
4. Select Show Emoji Keyboard, and save your changes. Functions
5. Publish your deployment. To modify permission sets
and profiles:
• Manage Profiles and
Permission Sets

431
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Show Customers an Estimated Wait Time in the Messaging Window


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

432
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Automatically tell customers how many minutes they have to wait before being connected to an
USER PERMISSIONS
agent. Build customer trust by setting expectations.
Estimated wait time can appear in several scenarios as long as certain conditions are met. To set up this feature:
• Customize Application
Possible scenarios that trigger Estimated Wait Time include:
AND
• A customer initiates a messaging session, and they’re routed directly to a queue or to a flow
Modify Metadata
that routes to a queue. Through Metadata API
• An agent transfers to a flow that routes to a queue. Functions
• A bot transfers to a flow that routes to a queue. To modify permission sets
Conditions that must be met to show Estimated wait time include: and profiles:
• Manage Profiles and
• You activated Estimated Wait Time.
Permission Sets
• Agents accepted at least 10 messaging requests in the last 10 minutes in the corresponding
queue.
• To trigger estimated wait time when a customer creates a messaging session, the Routing Type field for your deployment in Messaging
Settings must be set to Omni-Queue or Omni-Flow with a selected flow that routes to a queue. This condition isn’t required to trigger
estimated wait time when an agent transfers to a flow that routes to a queue or when a bot transfers to a flow that routes to a queue.

Note: If the estimated wait time is less than 1 minute, we round it up to 1 minute.

1. From Setup, in the Quick Find box, enter Messaging Settings, and then select Messaging Settings.
2. Click the edit button to the right of your deployment, and then select Edit.
3. Click Show estimated wait time.
4. Save your changes.

433
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Add Terms and Conditions Acceptance to your Pre-Chat Form


Inform your customers that you track or record conversation data, or share other important
EDITIONS
information, by presenting your Terms and Conditions automatically through your pre-chat form.

Note: Terms and Conditions works with the default pre-chat component. If you add custom Available in: Lightning
LWC components to your pre-chat form, Terms and Conditions doesn’t work. Experience. View required
editions.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then
select Embedded Service Deployments. This Messaging
article for In-App
2. Click the dropdown arrow corresponding to your deployment, and select View. and
applies to:
3. On the Settings card, click Edit Settings. Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
4. To activate the Terms and Conditions feature, click Show Terms and Conditions in pre-chat
enhanced
and Require users to accept Terms and Conditions before chatting. Apple
5. Save your changes. Messages
for Business,
6. Back on the Embedded Service Deployment Settings page for your deployment, from the
enhanced
Custom Labels card, click Set Custom Labels. From here, create a message that presents Terms
LINE, Bring
and Conditions to your end users. Create a separate version of this message in each language
Your Own
that you support. Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up this feature:


• Customize Application
AND Modify Metadata
Through Metadata API
Functions

7. From the Chat Group dropdown menu, select Pre-Chat. This selection tells Messaging for In-App and Web where, in the end user
experience, to present the Terms and Conditions message.

434
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

8. From the Label Group dropdown menu, select Terms and Conditions.
9. From the Label Type dropdown menu, select Standard. This menu selection tells Messaging for In-App and Web that you’re writing
standard, end user-facing text, as opposed to accessibility text for screen readers.
10. In the Terms and Conditions Label field, create a placeholder and paste it into the message that you’ll send to end users. To create
the placeholder: (1) Enter URL Text, such as Privacy Policy. This gets hyperlinked to the URL you create next. (2) Enter a URL
that links to the page where your Terms and Conditions are hosted. Click Copy. (3) To create the customer-facing message, paste
the copied placeholder into the Terms and Conditions Label field and craft the rest of the message around it.

11. Click Finish.


12. Republish your deployment from the Embedded Service Settings page.

435
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Set Business Hours in Messaging for In-App and Web


Don’t leave your customers waiting. Prevent customers from starting new messaging sessions
EDITIONS
outside of your business hours. After setting business hours, the Messaging for Web button
disappears when you’re not working, and Messaging for In-App customers will see a banner letting Available in: Lightning
them know that your business hours are over. Use the API to prevent incoming Messaging for Experience. View required
In-App conversations outside of business hours. editions.
1. Create a business hours record.
This Messaging
2. From Setup, enter Embedded Service Deployments, and click Embedded Service article for In-App
Deployments. applies to: and
Messaging
3. Click the dropdown arrow to the right of your deployment, and select View.
for Web
4. Click Edit Settings. channels
5. In the Business Hours field, select your business hours record. Standard
This
6. Save your changes. article and
doesn’t enhanced
7. On the Settings page for your deployment, click Publish.
apply to: WhatsApp,
After adding business hours to your Messaging for Web deployment, the chat button disappears standard
outside of business hours. After adding business hours to your Messaging for In-App deployment, and
a banner appears that lets the customer know when it’s outside of business hours, but you’ll need enhanced
to use the API to prevent incoming conversations. Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To create business hours:


• Manage Business Hours
Holidays
To add business hours to
your deployment:
• Customize Application
AND Modify Metadata
Through Metadata API
Functions

436
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

For both Messaging for In-App and Web, you can use our API to override business hours rules and hide or show your chat button at
different times.

IN THIS SECTION:
Create a Case When a Messaging Session Starts Outside of Your Business Hours
Let end users submit a case when trying to message outside of business hours. Use an Apex class and a bot to run a business hours
check, then create the case from a flow.

SEE ALSO:
Developer Guide: Show or Hide the Chat Button on Page Load

437
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Create a Case When a Messaging Session Starts Outside of Your Business Hours
Let end users submit a case when trying to message outside of business hours. Use an Apex class
EDITIONS
and a bot to run a business hours check, then create the case from a flow.
Available in: Lightning
Create an Apex Class Experience. View required
editions.
Create a public Apex class that checks if an end user is attempting to message outside of your
business hours. This Messaging
article for In-App
applies to: and
Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To create business hours:


• Manage Business Hours
Holidays
To add business hours to
your deployment:
• Customize Application
AND Modify Metadata
Through Metadata API
Functions

438
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

1. Add this code snippet to your Apex class.


public class CheckWithinBusinessHours {

@InvocableMethod(label = 'Check Within Business Hours')


public static List<Boolean> makeGetCallout(List<String> Name) {

String BHName= String.valueOf(+Name[0]);

// Get Business hours based on name, input from bot


BusinessHours bh = [SELECT Id FROM BusinessHours WHERE name= :BHName];

// Create Datetime with current date/time in local time zone


Datetime targetTime = Datetime.now();

// Find whether the time is within business hours


Boolean isWithin= BusinessHours.isWithin(bh.id, targetTime);

return new List<Boolean>{isWithin};

}}

Create Business Hours


Create a business hours record for your Apex class to reference.
1. Create a set of business hours. For the purposes of this recipe, don’t associate a business hours record with your Messaging for In-App
and Web deployment.

Create a Flow
Create an Auto-Launched flow that creates a case when a customer messages outside of business hours.
1. Create a new flow. Select Autolaunched Flow (No Trigger)as the flow type.
2. Create a new flow Resource:
a. In the Resource Type field, select Variable.
b. In the API Name field, enter CaseNumber.
c. In the Data Type field, select Text.
d. In the Data Type field, select Text.
e. Click Done.

3. Create a second flow Resource:


a. In the Resource Type field, select Variable.
b. In the API Name field, enter Subject.
c. In the Data Type field, select Text.
d. Select Available for input.
e. Click Done.

439
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

4. A CaseId from Create_Case variable is generated automatically when the Create Records element is added to your flow.To create a
Case record and return the Case Number to the user in the bot, add a Create Records element.
a. In the How to Set the Record Fields dropdown, select Manually.
b. In the Object dropdown, select Case.
c. Under Set Field Values for the Case, select Subject in the Field dropdown and enter Einstein Bot Case in the Value
dropdown.
d. Click Done.

5. Save and activate your flow.

Add the Apex Class to Your Bot


Update your bot by adding the Apex class. While this Apex action could be placed and executed anywhere in your bot, this example
invokes the class in the Transfer to Agent dialog.
1. Add an Apex action component to the Transfer to Agent dialogue for your bot. This component lets you associate the Apex class
that you created in step 1 to your bot.
a. In the Action Type field, select Apex.
b. In the Action Name field, select the apex class you created in step 1.
c. Verify that the Input field displays Name (string).
d. In the Source field, select Value.
e. In the Custom Value, enter the name of your business hours record.
f. Verify that the Output field displays Output (Boolean).
g. Click inside the Variable Name field, and select +New Boolean Variable.
h. In the Type field, select Custom.
i. In the Name field, enter IsWithinBusinessHours. To give it the same API name, click inside the API Name field.
j. Verify that the Data Type field displays Boolean.
k. Save your changes.
l. Save your changes in the Bot Builder.

2. Add a dialogue that creates a case if the Apex class returns false when checking to see if the messaging session is initiated outside
of business hours.
a. Click the + icon to the right of the search field in the Bot Builder, and select New Dialogue.
b. Name your dialog, give it a description, and optionally, assign it to a dialog group.
c. Add a Flow component to the dialogue.
d. Verify that the Action Type field displays Flow.
e. In the Action Name field, select the flow that you created previously.
f. Verify that the Input field displays Subject (string).
g. In the Source field, select Value.
h. In the Custom Value field, enter Einstein Bots Case.
i. Verify that the Output field displays CaseNumber (string).
j. In the corresponding Variable Name field, select + New Text Variable.

440
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

k. In the Type field, select Custom.


l. In the Name field, enter Case Number. To give the text variable a similar API name, click inside the API field.
m. Verify that the Data Type field displays Text.
n. Save your changes.
o. Save your changes to the Bot Builder.

3. Return to the Transfer to Agent dialogue and add a Redirect to Dialogue component. This component redirects to the Create a Case
dialogue when an end user tries to message outside of business hours.
a. Click +Add Condition.
b. In the Variable Name field, select IsWithinBusinessHours (boolean).
c. In the Operator field, select Is False.
d. In the Rule Action field, select Redirect to Dialogue.
e. In the Redirect Type field, select Dialogue.
f. In the Dialogue Case field, select the dialogue that you created in step 4b.

4. Save your changes in the bot builder.


5. Activate your bot.

441
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Customize the Enter or Return Key in Messaging for Web


By default, Messaging for Web is configured so that the Enter or Return key sends a message. To
EDITIONS
make it start a new line of text instead, change the deployment settings.
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then Available in: Lightning
select Embedded Service Deployments. Experience. View required
editions.
2. Select View from the dropdown menu for your deployment.
3. Click Edit Settings. This Messaging
article for Web
4. Select Press Enter or Return to start a new line of text. To use the Enter or Return key to applies to: channels
send a message, deselect the checkbox.
This Messaging
5. Save your changes.
article for In-App,
Note: When the Enter or Return button is set to send a message, start a new line of text by doesn’t standard
pressing Option + (Enter or Return) (Mac) or pressing Alt + (Enter or Return) (Windows). When apply to: and
the Enter or Return button is set to start a new line of text, send a message by pressing Option enhanced
+ (Enter or Return) (Mac) or by pressing Alt + (Enter or Return) (Windows). WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up this feature:


• Customize Application
AND Modify Metadata
Through Metadata API
Functions

442
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Prevent End Users from Sending File Attachments in Messaging for In-App and Web
Choose whether your end users can send file attachments to agents in Messaging for In-App and
EDITIONS
Web.
By default, end-users can send file attachments to agents. To prevent end-users from sending file Available in: Lightning
attachments to agents: Experience. View required
editions.
1. From Setup, enter Messaging Settings and select Messaging Settings.
2. Click the downward arrow to the right of your messaging channel, and select Edit. This Messaging
article for In-App
3. In the Attachments section, deselect Let customers send attachments to agents. applies to: and
4. Save your changes. Messaging
for Web
channels

This Standard
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To choose whether
end-users can send file
attachments:
• Customize Application

443
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Customize Your UI with Lightning Web Components


To update the look and feel of your customer-facing messaging interface, create and add Lightning
EDITIONS
Web Components.
1. Create a Lightning web component. Available in: Lightning
Experience. View required
2. From Setup, Enter Embedded Service Deployments, and select Embedded Service
editions.
Deployments.
3. Click the downward arrow to the right of your deployment, and select View. This Messaging
article for In-App
4. Click Add Custom UI Components. applies to: and
5. Select a component from the Custom Component dropdown that corresponds with the desired Messaging
standard UI element. for Web
channels
6. Save your changes.
This Standard
7. Publish your deployment.
article and
doesn’t enhanced
apply to: WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

444
Provide Conversation Support with Messaging in Service Optimize Messaging for In-App and Web
Cloud

Clone Your Messaging for In-App Deployment


To prevent outages for customers who haven’t yet upgraded to the latest version of your mobile
EDITIONS
app, clone your Messaging for In-App deployment before releasing a new feature. Roll out the new
feature on the cloned version of the deployment while allowing customers who haven’t yet upgraded Available in: Lightning
to keep using the older version. Experience. View required
editions.
Note: Dropdown values and mobile push credentials aren’t cloned. Instead, they’re referenced
in the cloned deployment. If you change dropdown values or mobile push credentials in the This Messaging
original deployment, they’re updated across all deployments that were cloned from the article for In-App
original deployment where they’re referenced. applies to: channels
1. From Setup, in the Quick Find box, enter Embedded Service Deployments, and then Messaging
This
select Embedded Service Deployments. for Web,
article
2. From the dropdown menu to the right of your deployment, select Clone. doesn’t standard
apply to: and
3. Give your cloned deployment a name and confirm that the correct Messaging Channel is enhanced
referenced. WhatsApp,
4. Save your changes. standard
and
5. Publish your new, cloned deployment.
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To set up this feature:


• Customize Application
AND Modify Metadata
Through Metadata API
Functions

445
Provide Conversation Support with Messaging in Service Work with Messaging Data
Cloud

Work with Messaging Data


Learn how to safely manage and report on messaging activity. It’s important to understand how
EDITIONS
messaging data is stored in Salesforce and which steps you can take to honor your customers’
preferences. Available in: Lightning
Experience. View required
IN THIS SECTION: editions.

Protect Customer Data and Privacy in Service Cloud Messaging This Messaging
Honor your Messaging customers’ special requests regarding the handling of their personal article for In-App,
data. applies to: Messaging
for Web,
Track Messaging Users in Salesforce standard
When a customer messages your company, Salesforce creates a messaging user record for and
them. The messaging user record can include the customer’s name, phone number or Facebook enhanced
name, and consent status. Messaging user records are required for your recipients, even if you’re WhatsApp,
sending messages to contacts, employees, or person accounts. standard
Report on Messaging Activity in Service Cloud and
enhanced
To track your service team’s messaging activity in Messaging channels, create custom report
Facebook
types on Messaging objects.
Messenger,
Allow End Users to Download a Transcript of a Messaging Session standard
While Messaging for In-App and Web shows messaging history in the conversation window and
to verified end users, unverified end users want to review messaging history. Now, unverified enhanced
and verified end users can download a PDF conversation transcript after the session ends. SMS,
enhanced
Delete Messaging Customer Data Apple
For compliance reasons, Salesforce admins can delete a customer’s personal identifiable Messages
information (PII) from standard and enhanced Messaging channels and Messaging for In-App for Business,
and Web channels. The PII is removed when their messaging user records and all associated enhanced
conversations are deleted. LINE, Bring
Your Own
Channel,
SEE ALSO: and Bring
Trailhead: Service and Data Cloud: Quick Look Your Own
Channel for
CCaaS

446
Provide Conversation Support with Messaging in Service Protect Customer Data and Privacy in Service Cloud
Cloud Messaging

Protect Customer Data and Privacy in Service Cloud Messaging


Honor your Messaging customers’ special requests regarding the handling of their personal data.
EDITIONS

How Messaging Data is Stored Available in: Lightning


Experience. View required
Salesforce automatically creates and saves a transcript for each messaging session. Messages editions.
exchanged with a bot are also stored in the conversation transcripts. To be transparent with your
This Messaging
customers, you can include this information in the auto-response shown when customers send a
article for In-App,
message to your company. Here are a few sample Conversation Acknowledgment messages:
applies to: Messaging
Thanks for your message. An agent will be with you shortly. for Web,
Just so you know, we may record and track conversations to help standard
improve your experience. and
enhanced
Before we get started, note that your conversations may be
WhatsApp,
stored for quality, training, or other purposes.
standard
This article isn’t legal advice, so to make sure that you address any compliance considerations related and
to the storage or use of messaging transcripts, check with your legal counsel. enhanced
Facebook
Messenger,
How You Can Protect Customer Data standard
Customers might ask your company to handle their data in the following ways. and
enhanced
• Delete personal data associated with a customer who has messaged your company via SMS,
Messaging. enhanced
• Track customers’ approval for how your company interacts with them via Messaging. Apple
Messages
• Restrict how Messaging processes personal data.
for Business,
• Export customer-related data. enhanced
Here are several ways to address their requests. LINE, Bring
Your Own
• Add new fields to objects associated with data privacy. If data privacy fields are added to objects,
Channel,
admins can search for those fields and manually delete personal data. You can also perform
and Bring
global searches for customer data on each object. Your Own
• To delete personal data associated with a customer who has sent messages to your company Channel for
in a Messaging channel, delete the customer’s messaging user records. When the messaging CCaaS
user record is deleted, all related messaging sessions and transcripts are also deleted.
• Export Messaging conversation transcripts.
• Hide or replace sensitive data in messaging sessions and transcripts—for example, hide Social Security numbers.

Encryption at Rest
In standard Messaging channels with Lightning Experience, the following fields can be encrypted at rest.
• LiveChatTranscript fields: Body, SupervisorTranscriptBody
• MessagingEndUser fields: Name, MessagingPlatformKey, ProfilePictureUrl
• ConversationEntry fields: ActorName, Message
In enhanced Messaging channels and Messaging for In-App and Web, these fields can be encrypted at rest.
• MessagingEndUser fields: Name, MessagingPlatformKey, ProfilePictureUrl

447
Provide Conversation Support with Messaging in Service Protect Customer Data and Privacy in Service Cloud
Cloud Messaging

• ConversationContextEntry fields: CustomDetailContextKey, CustomDetailContextValue


• ConversationEntry fields: ActorName, Message, Payload, EntryPayload
• ConversationParticipant fields: ParticipantDisplayName
Encryption at rest isn’t supported in standard Messaging channels with Salesforce Classic.

Compliance Certifications
To learn more about Salesforce compliance certifications, see compliance.salesforce.com.
Some Messaging channels aren’t able to be certified for HIPAA compliance because their associated third-party applications or technology
(SMS, WhatsApp, Apple Messages for Business, Facebook Messenger, and possibly some Partner Messaging channels) aren’t HIPAA-certified.

SEE ALSO:
Store Customers’ Data Privacy Preferences
Customize Auto-Responses in Service Cloud Messaging Channels
Encrypt New Data in Standard Fields
Accessing Messaging and Voice Conversation Data

448
Provide Conversation Support with Messaging in Service Track Messaging Users in Salesforce
Cloud

Track Messaging Users in Salesforce


When a customer messages your company, Salesforce creates a messaging user record for them.
EDITIONS
The messaging user record can include the customer’s name, phone number or Facebook name,
and consent status. Messaging user records are required for your recipients, even if you’re sending Available in: Lightning
messages to contacts, employees, or person accounts. Experience. View required
A messaging user record is created for each channel the customer uses. For example, a single editions.
contact may be represented by two messaging user records: one for their Facebook Messenger
This Messaging
interactions with your company, and one for their SMS interactions. By linking messaging user for In-App,
article
records to contacts or other Salesforce records, you can get a full picture of the customer’s applies to: Messaging
interactions with your service team. for Web,
View the history of a messaging user’s exchanges with your company in the Messaging Sessions standard
related list. and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

449
Provide Conversation Support with Messaging in Service Track Messaging Users in Salesforce
Cloud

IN THIS SECTION:
Create Messaging Users
Salesforce automatically creates messaging user records for customers when they message your business. However, you can also
mass-create messaging user records for WhatsApp and SMS channels.
Messaging User Fields
Messaging user records represent a link between a messaging channel and a user. The messaging user record includes details like
the customer’s name, phone number or Facebook name, and consent status, and allows you to quickly review all messaging sessions
that took place with the customer in a channel.

450
Provide Conversation Support with Messaging in Service Track Messaging Users in Salesforce
Cloud

Create Messaging Users


Salesforce automatically creates messaging user records for customers when they message your
EDITIONS
business. However, you can also mass-create messaging user records for WhatsApp and SMS
channels. Available in: Lightning
To mass-create messaging user records, import a CSV file of user data into Salesforce with Data Experience. View required
Loader. Doing so lets you add new messaging user records for users who haven’t yet sent you a editions.
message in that channel. This way, your team can initiate messaging sessions with opted-in users
This Standard
or send automated messages. and
article
Importing messaging users is best for businesses that have a set of historical customer data that applies to: enhanced
includes information like phone numbers and consent status. For example, if you’re migrating or WhatsApp,
upgrading to an enhanced WhatsApp channel, you may have this data from your previous WhatsApp and
channel or implementation. standard
and
Because you need a messaging user's platform key to mass-create messaging user records, it's not enhanced
possible to use this method for LINE, Apple Messages for Business, or other channels unless your SMS
business has messaged with them previously in Salesforce. channels
Tip: You can also create messaging users manually from the Messaging Users tab. This Messaging
article for In-App,
1. Find the Messaging Channel ID of the channel where you want to add users. Messaging
doesn’t
a. From Setup, go to the Messaging Settings page. apply to: for Web,
standard
b. Click the name of the messaging channel in the list.
and
c. Copy and save the Messaging Channel ID value. enhanced
Facebook
2. Populate the following data into a CSV file. Messenger,
a. Customer first name and last name. enhanced
Apple
b. Messaging platform key: The phone number associated with the messaging user. Exclude
Messages
hyphens, parentheses, and spaces, and include the country code with a + sign.
for Business,
c. Messaging channel: Text or WhatsApp enhanced
d. The Messaging Channel ID you copied in Step 1 LINE, Bring
Your Own
e. Messaging Consent Status: DoublyOptedIn, ExplicitlyOptedIn, Channel,
ImplicitlyOptedIn, or OptedOut and Bring
To add a user to multiple channels, create separate entries in the CSV file per channel, per user. Your Own
For example, create two entries for a user who communicates with your company over SMS Channel for
CCaaS
and WhatsApp.

3. Open Data Loader on your computer.


USER PERMISSIONS
4. In Data Loader, select Insert.
To create messaging user
5. Select Password Authentication, then log in with your org credentials.
records
6. Select Show All Salesforce Objects and select the Messaging User object. • "Create" on messaging
users
7. Import the CSV file you created earlier.
To use Data Loader
8. Automap the fields and run reports.
• See Data Loader
documentation

451
Provide Conversation Support with Messaging in Service Track Messaging Users in Salesforce
Cloud

After a messaging user record is created, it takes about 10 minutes before you can see it in the Send Message action, which is how agents
initiate conversations with customers.

SEE ALSO:
Start a Messaging Session with a Customer
Accessing Messaging and Voice Conversation Data

Messaging User Fields


Messaging user records represent a link between a messaging channel and a user. The messaging
EDITIONS
user record includes details like the customer’s name, phone number or Facebook name, and
consent status, and allows you to quickly review all messaging sessions that took place with the Available in: Lightning
customer in a channel. Experience. View required
editions.
Field Description
This Messaging
Contact Contact record that’s linked to the messaging user record. article for In-App,
applies to: Messaging
Account Account record that’s linked to the messaging user record.
for Web,
External ID The messaging user’s contact information: standard
and
• (SMS and LINE channels) The messaging user’s phone enhanced
number WhatsApp,
• (Facebook Messenger channels) The messaging user’s standard
Facebook name and
• (WhatsApp channels) The phone number associated with enhanced
the messaging user’s WhatsApp account Facebook
Messenger,
• (Apple Messages for Business channels) An opaque ID standard
generated by Apple which is unique to the relationship and
between the user’s Apple ID and your business’s Business enhanced
ID SMS,
enhanced
Locale The locale of the messaging user. Apple
Messages
Messaging Channel The channel that the messaging user sent the message to.
for Business,
Messaging Platform Key The phone number, Facebook page ID, Apple Messages identifier, enhanced
or web or mobile app identifier associated with the messaging LINE, Bring
user. Your Own
Channel,
Message Type Indicates the types of messages sent: and Bring
• Text Your Own
Channel for
• WhatsApp CCaaS
• Facebook
• LINE
• Apple Messages for Business
• Embedded Messaging (shown for Messaging for
In-App and Web channels)

452
Provide Conversation Support with Messaging in Service Track Messaging Users in Salesforce
Cloud

Field Description

• Custom (shown for Bring Your Own Channel and Bring Your Own Channel for
CCaaS)

Messaging User Name The name of the messaging user. Because this field is editable, we don’t recommend
referencing it in automation. Instead, use the Messaging Platform Key.

Messaging Consent Status Indicates whether the messaging user gave implicit, explicit, or double consent. If the
messaging user revokes their consent, the status is set to Opt-Out.
A messaging user engages over a channel and gives implicit consent. The messaging
user must take an extra step to give explicit or double consent over a channel. In short
code or enhanced Facebook Messenger channels, messaging users can use a keyword
to give consent. Usually, messaging users give consent outside of Messaging.

Profile Picture URL The URL of the messaging user’s profile picture.
You can see profile pictures only for messaging users that use HTTPS URLs. Chrome and
Firefox no longer support mixed content downloads.

SEE ALSO:
Object Reference: MessagingEndUser
What’s Service Cloud Messaging?

453
Provide Conversation Support with Messaging in Service Report on Messaging Activity in Service Cloud
Cloud

Report on Messaging Activity in Service Cloud


To track your service team’s messaging activity in Messaging channels, create custom report types
EDITIONS
on Messaging objects.
Consider creating reports based on the following objects. Available in: Lightning
Experience. View required
• ConversationEntry: (Standard messaging channels only) Represents a message or an event in
editions.
the chat history between an agent and a messaging user.
• MessagingSession: Represents a session with a messaging user on a Messaging channel. This Messaging
article for In-App,
• MessagingSessionMetrics: Provides information about a messaging session, such as agent and
applies to: Messaging
end user response time.
for Web,
• MessagingEndUser (Messaging User): Represents a single address—such as a phone number standard
or Facebook page—communicating with a single Messaging channel. and
Review these sample report configurations for ideas. enhanced
WhatsApp,
standard
Reporting Goal Configuration
and
Track the average length of closed sessions by Create a custom report type with Messaging enhanced
channel type. Sessions as the primary object. Filter or sort the Facebook
report based on these fields: Messenger,
standard
• AcceptTime
and
• AgentMessageCount enhanced
• AgentType SMS,
enhanced
• ChannelType
Apple
• EndedByType Messages
• EndTime for Business,
enhanced
• EndUserMessageCount
LINE, Bring
• Status Your Own
Use the EndedByType field to compare the Channel,
number of sessions closed by bots, end users, and Bring
agents, or automation. Your Own
Channel for
Track the typical response time of agents and (Supported only in enhanced Messaging CCaaS
customers. channels and Messaging for In-App and Web)
Create a custom report type with Messaging
Sessions as the primary object and Messaging
Session Metrics as the secondary object. Six
Messaging Session Metrics records are
generated for each completed messaging
session. These records track, respectively:
• Average end user response time
• Average agent response time
• Maximum end user response time
• Maximum agent response time
• Agent message count

454
Provide Conversation Support with Messaging in Service Report on Messaging Activity in Service Cloud
Cloud

Reporting Goal Configuration


• End user message count
Be sure to include the MessagingSessionMetricType
field in your custom report. Messaging Session Metrics records are
available only for sessions created October 1, 2024 or later.

Track your accounts with the most active messaging users. Create a custom report type with Messaging Users as the primary
object. Filter or sort the report based on these fields:
• AccountId
• MessageType
• MessagingChannelId

Track inbound and outbound messages that weren’t delivered in Create a custom report type with Conversation Entries as the
standard messaging channels. primary object. Filter or sort the report based on the ActorType
and MessageStatusCode fields.

Track conversations by channel. Create a custom report type with Messaging Sessions as the primary
object. Filter or sort the report based on the ChannelName field.

Track conversations by channel type. Create a custom report type with Messaging Sessions as the primary
object. Filter or sort the report based on the ChannelType field.

Track conversations by day or conversations by day and by channel. Create a custom report type with Messaging Sessions as the primary
object. Filter or sort the report based on the StartTime and
ChannelName fields.

Tip: Use Data Cloud to report on enhanced Messaging channel transcripts. See Analyze Conversation Transcript Data in Data
Cloud.

SEE ALSO:
Create a Custom Report Type
What’s Service Cloud Messaging?
Accessing Messaging and Voice Conversation Data
Trailhead: Service and Data Cloud: Quick Look

455
Provide Conversation Support with Messaging in Service Allow End Users to Download a Transcript of a Messaging
Cloud Session

Allow End Users to Download a Transcript of a Messaging Session


While Messaging for In-App and Web shows messaging history in the conversation window to
EDITIONS
verified end users, unverified end users want to review messaging history. Now, unverified and
verified end users can download a PDF conversation transcript after the session ends. Available in: Lightning
Experience. View required
editions.
Turn On Download Transcripts
This Messaging
1. Before an end user can download a transcript of their Messaging for In-App and Web
article for In-App
conversation, an Admin must enable it:
applies to: and
2. From Setup, enter Messaging Settings, and select Messaging Settings. Messaging
3. Click the downward arrow to the right of your channel, and select Edit. for Web
channels
4. Select Let customers download their conversation transcripts.
This Standard
5. Save your changes.
article and
NOTE: It’s not possible to download a transcript from an app built on Mobile Publisher. doesn’t enhanced
apply to: WhatsApp,
standard
Download a Transcript and
To download a transcript of the messaging conversation, an end user clicks the Menu icon, then enhanced
selects Request Chat Transcript. Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

456
Provide Conversation Support with Messaging in Service Allow End Users to Download a Transcript of a Messaging
Cloud Session

What’s Included in a Downloaded Transcript


• A transcript can contain up to 200 conversation entries. A conversation entry is defined as a single block of text that was initiated
by an agent, end user, bot, or auto-response. A conversation entry also includes updates about an agent’s status, such as joining or
leaving the conversation. Read receipts and estimated wait time are not considered conversation entries.
• All time stamps are displayed in the GMT time zone and can’t be localized.
• The following languages aren’t supported: Arabic, Hebrew, Amharic, Armenian, Bengali, Burmese, Georgian, Gujarati, Kannada,
Khmer, Malayalam, Punjabi, Tagalog, Tamil, Telugu, Urdu, Yiddish.
• Any unsupported character is replaced with a “?”.
• Emojis either display in greyscale or text.

457
Provide Conversation Support with Messaging in Service Delete Messaging Customer Data
Cloud

Delete Messaging Customer Data


For compliance reasons, Salesforce admins can delete a customer’s personal identifiable information
EDITIONS
(PII) from standard and enhanced Messaging channels and Messaging for In-App and Web channels.
The PII is removed when their messaging user records and all associated conversations are deleted. Available in: Lightning
Complete these steps for each messaging user record associated with the customer. Because a Experience. View required
messaging user record relates to a specific channel, a customer can have multiple messaging user editions.
records if they've communicated with your business in multiple channels.
This Messaging
1. Go to the messaging user record found in the Messaging Users tab or Messaging Users related article for In-App,
list. applies to: Messaging
for Web,
2. On the messaging user record, select Delete.
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To delete messaging user


records:
• "Delete" on messaging
users

458
Provide Conversation Support with Messaging in Service Delete Messaging Customer Data
Cloud

If you’re using enhanced messaging and are assigned the End Messaging Sessions permission, you can close the conversation from
the messaging user record. Click Close Conversation without deleting the messaging user record, which is helpful when you have
multiple open conversations with one messaging user.

3. If the messaging user still has open conversations in the channel, we show a message letting you know that we've started the process
of deleting them. After 10 minutes, check back and select Delete again.
4. A confirmation message indicates that the messaging user and its associated conversations were deleted.

SEE ALSO:
Accessing Messaging and Voice Conversation Data
Block Sensitive Data in Messaging Sessions and Voice Call Transcripts

459
Provide Conversation Support with Messaging in Service Message with Customers in the Service Console
Cloud

Message with Customers in the Service Console


Learn how to interact with customers in standard and enhanced Messaging channels.
EDITIONS

IN THIS SECTION: Available in: Lightning


Experience. View required
Open Messaging
editions.
Access Messaging through the Service Console app that your admin set up. Log into
Omni-Channel to start chatting with customers. This Messaging
article for In-App,
Accept a Message and Chat with a Customer
applies to: Messaging
When a new message arrives in Messaging, it appears in the Omni-Channel utility or sidebar. for Web,
Start a Messaging Session with a Customer standard
Proactively start messaging sessions with customers in Service Cloud by sending them a message. and
Agent-initiated outbound messaging is available in all Messaging channels except Messaging enhanced
for Web. WhatsApp,
standard
Send Images and Files in Messaging Sessions and
Sometimes, only a picture will do. Resolve customer inquiries faster by sending images and enhanced
files during Service Cloud messaging sessions. Facebook
Messenger,
Send Links in Messaging Sessions
standard
To share a link with a customer in a messaging session, send an enhanced link messaging and
component, which includes a link title, URL, and image. Or, copy and paste the URL into the enhanced
messaging field and send it. SMS,
Send Voice Messages in Messaging Sessions enhanced
If a customer is more comfortable with spoken instruction, honor their preference. Record and Apple
send voice messages up to 1 minute long in supported enhanced Messaging channels. Messages
for Business,
Send Messaging Components in Messaging Sessions enhanced
Messaging components let you send structured content, such as a question with clickable LINE, Bring
options, to customers in enhanced Messaging channels and Messaging for In-App and Web. Your Own
Admins create messaging components ahead of time so that agents can quickly select and Channel,
send them during messaging sessions. and Bring
Your Own
Transfer a Messaging Session
Channel for
Increase your capacity to accept incoming messaging sessions by transferring an existing CCaaS
messaging session. Agents can transfer a messaging session to another qualified agent, queue,
or routing flow. Agents in a partner contact center can also transfer to contacts external to your
Salesforce organization if routing is controlled by a partner vendor.
Inactivate a Messaging Session
When an unresolved conversation has gone idle for a certain period of time, mark it Inactive so that you can accept an incoming
messaging session.
End a Messaging Session
When you’re done helping a customer, end the messaging session from the conversation window or from the Messaging Sessions
list view.
Messaging Error Codes in Service Cloud
Identify errors that agents may encounter during standard and enhanced messaging sessions.

460
Provide Conversation Support with Messaging in Service Message with Customers in the Service Console
Cloud

Troubleshooting the Send Message Action in Messaging


In enhanced Messaging channels and Messaging for In-App, use the Send Message global action to proactively message a customer
in a specific channel. If you have trouble finding the recipient or sending your message, review these troubleshooting tips.

461
Provide Conversation Support with Messaging in Service Open Messaging
Cloud

Open Messaging
EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

462
Provide Conversation Support with Messaging in Service Open Messaging
Cloud

Access Messaging through the Service Console app that your admin set up. Log into Omni-Channel
USER PERMISSIONS
to start chatting with customers.
1. Open the app that contains Messaging. To send and receive
messages in Messaging for
a. To open the App Launcher, on the left side of the navigation bar, click . In-App and Web:
• Messaging for In-App
b. Click the app that contains Messaging. Usually, this is your Service Console app.
and Web permission set
The name of the app might vary depending on how your admin set up Salesforce. When license
in doubt, your admin can tell you which app to use. AND
Messaging for In-App
2. Log into Omni-Channel. Messages are routed only to agents who are logged in.
and Web user
a. To open the Omni-Channel utility (pictured) or sidebar, click Omni-Channel in the footer permission
of your screen. To send and receive
b. Click the dropdown menu and select your status. If you’re online, a green dot is shown next messages in standard and
to the status. Now you’re ready to chat with customers. enhanced Messaging
channels:
• Messaging Agent

463
Provide Conversation Support with Messaging in Service Accept a Message and Chat with a Customer
Cloud

Accept a Message and Chat with a Customer


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

464
Provide Conversation Support with Messaging in Service Accept a Message and Chat with a Customer
Cloud

When a new message arrives in Messaging, it appears in the Omni-Channel utility or sidebar.
USER PERMISSIONS
1. To accept a message and open the messaging session window, click the checkmark icon.
To send and receive
To see the first message that a customer sent, hover your mouse over the checkmark icon. The
messages in Messaging for
first message can give you context about why the customer is contacting your company. In-App and Web:
2. To send a message to the customer, enter your message and press Enter on your keyboard. • Messaging for In-App
and Web permission set
Tip: To add more context to the messaging session, use the lookup fields on the Details license
tab to associate the session with a case, lead, or opportunity. AND
Messaging for In-App
and Web user
permission
To send and receive
messages in standard and
enhanced Messaging
channels:
• Messaging Agent

465
Provide Conversation Support with Messaging in Service Start a Messaging Session with a Customer
Cloud

Start a Messaging Session with a Customer


USER PERMISSIONS EDITIONS

To initiate messaging sessions in standard Agent Initiated Outbound Messaging Available in: Lightning
channels: AND Messaging Agent Experience. View required
editions.
To initiate messaging sessions in enhanced Initiate Messaging Sessions This Messaging
channels and Messaging for In-App: AND Messaging Agent article for In-App,
applies to: standard
To auto-create messaging user records Send Initial Message to Individual and
when initiating enhanced SMS messaging enhanced
sessions: WhatsApp,
standard
To view the Start Conversation button on B2C and
Person Account records: enhanced
To create global actions and modify page Customize Application Facebook
layouts: Messenger,
AND
standard
View Setup and
enhanced
SMS,
enhanced
Proactively start messaging sessions with customers in Service Cloud by sending them a message.
Apple
Agent-initiated outbound messaging is available in all Messaging channels except Messaging for
Messages
Web. for Business,
Outbound messages don't use agent capacity until the customer responds. When you send a enhanced
message, you can close the tab while you wait for a response. LINE, Bring
Your Own
Channel,
In an Enhanced Messaging Channel or Messaging for In-App and Bring
Your Own
Channel
Channel for
Use the Send Message global action to start a messaging session with a customer. CCaaS
Agents can only initiate enhanced messaging sessions with a customer if the customer has a Messaging
This
messaging user record that’s linked to the desired messaging channel. Messaging user records are for Web
article
created automatically when customers first message you. If no record exists, you can create them doesn’t channels
manually on page 451 as long as you already gathered your customer’s messaging consent elsewhere. apply to:
If it’s an enhanced SMS channel, we create it for you. It takes about 10 minutes for a newly created
messaging user record to become available in the Send Message action.

Note: We recommend that you don’t use a Start Conversation auto-response messaging component in your messaging channel
if you allow agents to send outbound messages.
1. Enable Enhanced Omni-Channel.
2. (One-time setup task for admins) Add the Send Message action to the global action layout.
a. From Setup, enter Publisher Layouts in the Quick Find box, then select Publisher Layouts.
b. Drag the Send Message action to the Mobile and Lightning Actions section of the palette.
This action isn’t available if you don’t have an active enhanced Messaging channel or Messaging for In-App channel.

466
Provide Conversation Support with Messaging in Service Start a Messaging Session with a Customer
Cloud

c. Save your changes.

3. (One-time setup task for admins) If you plan to let agents initiate messaging sessions in a Messaging for In-App channel, verify that
opt-out keywords have been set for your channel. On the Messaging Settings page in Setup, click your channel’s name and verify
that the Opt-Out Keywords field contains at least one keyword.
4. Start a conversation with a customer from any page in Salesforce.
a. In the Omni-Channel utility or sidebar, set yourself as available.
b. In the global action menu, click Send Message.

c. Select a recipient. You can click the icon to look up an account, lead, contact, or messaging user. This field may already be
completed, depending on which record you’re viewing.
d. Select a messaging channel. Only messaging channels associated with the select recipient are shown.
e. Click Start Conversation.

467
Provide Conversation Support with Messaging in Service Start a Messaging Session with a Customer
Cloud

f. Enter your message. Optionally, click the microphone icon to record a voice message. Click the plus icon to view other messaging
actions, including inserting quick text, adding emoji, sending messaging components, and attaching files. Then, click Send.

When initiating messaging sessions, keep these considerations in mind:


• In enhanced WhatsApp, if more than 24 hours have passed since the selected messaging user’s last message, agents can’t write
freeform messages, but they can send notification messaging components. The component must be linked to an approved WhatsApp
message template and can’t contain dynamic content.

468
Provide Conversation Support with Messaging in Service Start a Messaging Session with a Customer
Cloud

• In enhanced Facebook Messenger, if more than 7 days have passed since the selected messaging user’s last message, agents can’t
use the Send Message action.
• An end user who’s engaged in a different messaging session can’t simultaneously receive an agent-initiated outbound message. In
this scenario, the agent sees an error message.
For help with the Send Message action, see Troubleshooting the Send Message Action in Messaging.

In a Standard Messaging Channel from a Messaging User Record


Use the Start Conversation record action on a messaging user record to start a messaging session with a customer.
1. In the Omni-Channel utility or sidebar, set yourself as available.
2. From the App Launcher, click Messaging Users to open the Messaging Users tab.
3. Click the messaging user record in question.
4. Click Start Conversation.
A new messaging session starts.
5. Send one or more messages, and then wait for the customer to respond.
If you don’t see the Start Conversation button, here are possible reasons why.
• The user opted out of receiving messages.
• You’re not assigned to the queue that’s associated with the channel.
• Agent-initiated outbound messaging isn’t supported in the channel. The Start Conversation action is available in standard SMS
channels, and is in beta in standard Facebook Messenger and standard WhatsApp channels. Enhanced Messaging channels use a
different action.

In a Standard Messaging Channel from Other Records


Start a messaging session from a contact, person account, case, lead, or opportunity record.
1. In the Omni-Channel utility or sidebar, set yourself as available.
2. On the Messaging User record detail page, edit the appropriate lookup field: Case, Lead, Account, Contact, or Opportunity.
3. Select the record you want to link to, such as a specific case.
4. Click Save.
5. Navigate to the record you linked to the Messaging User.
6. From the actions menu, select Start Conversation.
7. Select the Messaging User record that you want to have a conversation with. A contact can be associated with more than one
Messaging User, so there may be several to choose from.
8. Click Start Conversation.
A new messaging session starts.
9. Send one or more messages, and then wait for the customer to respond.
To view the Start Conversation button on a person account or contact record, the person account or contact must be associated with
the messaging user record.
To view the Start Conversation button on a lead, case, or opportunity record:
• An inbound messaging session for the messaging user must exist in the channel, and the messaging session must be associated
with the record where you want to start the conversation.

469
Provide Conversation Support with Messaging in Service Start a Messaging Session with a Customer
Cloud

• The button must be added to the record page layout in question: lead, case, or opportunity.

SEE ALSO:
Ending or Inactivating Messaging Sessions Automatically
Lifecycle of a Messaging Session in Service Cloud
Troubleshooting the Send Message Action in Messaging

470
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

Send Images and Files in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

471
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

Sometimes, only a picture will do. Resolve customer inquiries faster by sending images and files
USER PERMISSIONS
during Service Cloud messaging sessions.
Supported file types and maximum attachment size vary depending on the channel type. To send and receive
messages in Messaging for
In-App and Web:
Channel Type Maximum File Size Supported File Types
• Messaging for In-App
Messaging for In-App and Web 5 MB .pdf, .png, .jpeg, .jpg, .bmp, .tiff, and Web permission set
.gif license
AND
WhatsApp (Standard) 5 MB .jpg, .jpeg, .png, .pdf
Messaging for In-App
WhatsApp (Enhanced) Varies by file type. For details, .jpeg, .png, .pdf, .txt, .ppt, .pptx, and Web user
see Compare Standard and .pps, .ppsx, .doc, .docx, .xls, .xlsx, permission
Enhanced WhatsApp Channel .csv, .aac, .amr, .mp4, .3gp, To send and receive
Capabilities. .mpeg, .ogg, .rtf, .json messages in standard and
enhanced Messaging
Facebook Messenger 25 MB .jpg, .jpeg, .png, .gif channels:
(Standard) • Messaging Agent

Facebook Messenger 25 MB .jpg, .jpeg, png, .bmp, .tiff,


(Enhanced) .webp, .txt, .pdf, .psd, .rtf, .xls,
.xml, .exe, .zip, .mp3, .mov,
.mp4, .3gp, .gif

Apple Messages for Business 100 MB .png, .jpg, .jpeg, .bmp, .tiff, .txt,
(Enhanced) .pdf, .psd, .rtf, .xls, .xlsx, .doc,
.docx, .ppt, .json, .pptx, .pps,
.ppsx, .csv, .xml, .pkpass, .ics,
.exe, .zip, .usdz, .mp3, .caf, .mov,
.mp4, .3gp, .gif

LINE (Enhanced) Varies by file type. For details, .png, .jpeg, .mpf, .m4a
see Considerations for LINE in
Service Cloud on page 191.

Bring Your Own Channel and 25 MB .png, .jpg, .jpeg, .bmp, .tiff, .gif,
Bring Your Own Channel for .txt, .pdf, .psd, .rtf, .xls, .xlsx, .doc,
CCaaS .docx, .ppt, .pptx, .json, .pps,
.ppsx, .csv, .xml, .mov, .mp4,
.3gp, .3g2, .mpg, .mp3, .caf,
.m4a, .exe, .zip, .ics, .pkpass,
.usdz

SMS long codes (Standard and • AT&T: 1 MB .jpg, .jpeg, .png, .gif
enhanced)
• T-Mobile: 1 MB
• Verizon: 1.2 MB
• Sprint: 2 MB
• US cellular: 500 KB

SMS toll-free long codes 525 KB .jpg, .jpeg, .png, .gif


(Standard and enhanced)

472
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

1. Click the paperclip icon in the messaging window.


2. Select the image or file that you want to send. You can send only one file at a time.
3. If your file is a public link, optionally create an expiration date for it.
4. Click the send icon.

Note:
• In standard channels, agents can’t send text and a file in the same message.
• Images and file attachments sent over SMS long code channels are supported only for US and Canadian numbers associated
with Salesforce North American instances. View your instance on the Company Information page in Setup. SMS short code
channels don’t support images and file attachments.
• In enhanced channels excluding LINE, agents can receive GIFs but not send them. LINE doesn’t support GIFs.
• To let customers view previews of asset files sent by bots or agents, first add the Salesforce CRM Content User feature license
to your org, then to the users who send files.
• To let agents and bots share files in enhanced channels and Messaging for In-App and Web, enable file sharing for enhanced
Messaging channels.

IN THIS SECTION:
Enable File Sharing for Enhanced Messaging Channels
To let agents and bots share files with customers in enhanced Messaging channels and Messaging for In-App and Web, configure
your content delivery settings.
Enable Public Linking on an Asset File
To let customers view previews of asset files sent by agents or bots, enable public link capability on the file.

SEE ALSO:
Share Knowledge Article URLs in Channels
Share Knowledge Articles in Channels in Lightning Knowledge

473
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

Enable File Sharing for Enhanced Messaging Channels


To let agents and bots share files with customers in enhanced Messaging channels and Messaging
EDITIONS
for In-App and Web, configure your content delivery settings.
1. In Setup, enter Content Deliveries in the Quick Find box, and then select Content Available in: Lightning
Deliveries and Public Links. Experience. View required
editions.
2. In the first section, select the first two checkboxes.
3. In the password defaults section, select either the first or the second option. If password This Messaging
protection is required (the third option), agents can’t send files in enhanced messaging channels. article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

USER PERMISSIONS

To enable content deliveries


and public links:
• Customize Application
To create public links:
• Create Public Links

474
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

4. Save your changes.


5. Verify that the Create Public Links user permission is assigned to any user who will share files.
If these settings aren’t configured correctly, agents see an error message when they try to use the Attach action in the messaging window.

475
Provide Conversation Support with Messaging in Service Send Images and Files in Messaging Sessions
Cloud

Enable Public Linking on an Asset File


To let customers view previews of asset files sent by agents or bots, enable public link capability
EDITIONS
on the file.
To allow an agent to enable public linking on an asset file: Available in: Lightning
Experience. View required
1. Make sure that you have the Salesforce CRM Content User feature license.
editions.
2. Enable the Salesforce CRM Content User license for the agent.
This Messaging
3. Temporarily switch to Classic UI. article for In-App,
4. From Setup, enter Content Permissions, and select Content Permissions. applies to: Messaging
for Web,
5. Decide which content permission will allow an agent to set public linking on an asset file, and
enhanced
click Edit.
WhatsApp,
6. Select Deliver Content. enhanced
Facebook
7. Save your changes.
Messenger,
8. Switch back to Lightning Experience. enhanced
9. From the App Launcher, search for Files, and select Files. SMS,
enhanced
10. Select Libraries. Apple
11. Click Asset Library. Messages
for Business,
12. Click Manage Members.
enhanced
13. Ensure that the agent is listed and assigned the role that you gave the Deliver Content permission LINE, Bring
to in steps 5 and 6. If they’re not listed, add them, and select the role that you gave Deliver Your Own
Content permission to in steps 5 and 6. This agent can now create public links for asset files. Channel,
and Bring
14. The agent can test this by clicking the downward arrow that corresponds to their asset file in
Your Own
the Asset Library, and selecting Public Link.
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

USER PERMISSIONS

To enable public linking on


an asset file:
• Salesforce CRM Content
User

476
Provide Conversation Support with Messaging in Service Send Links in Messaging Sessions
Cloud

Send Links in Messaging Sessions


To share a link with a customer in a messaging session, send an enhanced link messaging
EDITIONS
component, which includes a link title, URL, and image. Or, copy and paste the URL into the
messaging field and send it. Available in: Lightning
Experience. View required
User Permissions Needed editions.
To send and receive messages in Messaging for Messaging for In-App and Web permission set This Messaging
In-App and Web: license article for In-App,
AND applies to: Messaging
for Web,
Messaging for In-App and Web user permission standard
To send and receive messages in enhanced Messaging Agent and
enhanced
Messaging channels:
WhatsApp,
standard
and
If you paste a URL into the messaging field and send it, the customer can see a link preview or just enhanced
the text of the URL. What they see depends on several factors, including the link requirements of Facebook
the messaging app (Apple Messages for Business, Facebook Messenger, and so on) and the speed Messenger,
of the connection. To ensure that links appear in a rich format, we recommend creating enhanced standard
link messaging components for frequently shared links. and
In enhanced WhatsApp channels, enhanced link components are available only in the text format, enhanced
so we recommend using the copy and paste method. Sending a URL in WhatsApp typically SMS,
auto-generates a link preview. enhanced
Apple
1. Send an enhanced link messaging component. Messages
a. Click the messaging component action under the messaging field (1). for Business,
enhanced
b. Find the enhanced link component and click Insert.
LINE, Bring
c. Click the send icon. Your Own
Channel,
2. Send a URL via the copy and paste method. and Bring
a. Copy and paste the URL into the messaging field (2). Your Own
Channel for
b. Click the send icon. CCaaS

477
Provide Conversation Support with Messaging in Service Send Links in Messaging Sessions
Cloud

SEE ALSO:
Send Messaging Components in Messaging Sessions
Create and Send Enhanced Links in Messaging Sessions

478
Provide Conversation Support with Messaging in Service Send Voice Messages in Messaging Sessions
Cloud

Send Voice Messages in Messaging Sessions


If a customer is more comfortable with spoken instruction, honor their preference. Record and send
EDITIONS
voice messages up to 1 minute long in supported enhanced Messaging channels.
1. In an active messaging session, click the microphone icon in the message field (1). Available in: Lightning
Experience. View required
2. If you’re prompted, give your web browser access to your microphone.
editions.
3. Speak your message for up to 1 minute.
This Enhanced
4. Click the stop icon (2) when you’re done. article WhatsApp,
5. Optionally, play back your message (3) or delete it (4). applies to: enhanced
Facebook
6. When you’re ready, send it to the customer (5).
Messenger,
enhanced
SMS, and
enhanced
Apple
Messages
for Business
channels

This Messaging
article for In-App,
doesn’t Messaging
apply to: for Web,
enhanced
LINE,
standard
WhatsApp,
standard
Facebook
Messenger,
standard
SMS, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

USER PERMISSIONS

To send and receive


messages in enhanced
Messaging channels:
• Messaging Agent
Create Public Links

479
Provide Conversation Support with Messaging in Service Send Voice Messages in Messaging Sessions
Cloud

After a voice message is sent, the customer can access it for 30 days. Voice messages are included in the conversation transcript just like
any other message.
In standard Messaging channels, agents can’t record and send voice messages or send audio file attachments.

480
Provide Conversation Support with Messaging in Service Send Messaging Components in Messaging Sessions
Cloud

Send Messaging Components in Messaging Sessions


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

481
Provide Conversation Support with Messaging in Service Send Messaging Components in Messaging Sessions
Cloud

Messaging components let you send structured content, such as a question with clickable options,
USER PERMISSIONS
to customers in enhanced Messaging channels and Messaging for In-App and Web. Admins create
messaging components ahead of time so that agents can quickly select and send them during To send and receive
messaging sessions. messages in Messaging for
In-App and Web:
Note: Auto-response messaging components, which are available only for Messaging for • Messaging for In-App
In-App and Web, aren’t sent from the Service Console. Instead, they’re selected in the channel’s and Web permission set
settings. The components are sent to the customer automatically when a messaging session license
starts or ends, or when an agent joins. AND
Messaging for In-App
Send Static Messaging Components and Web user
permission
To send messaging components with static content, use the messaging component action in the To send and receive
messaging window. messages in enhanced
1. During an active messaging session, click the messaging component action. Messaging channels:
• Messaging Agent
To run flows to insert
messaging components into
the messaging window:
• Run Flows

2. Optionally, use the filter at the top to show a particular type of component.
3. Select the component that you want to share and click Insert.
A placeholder appears below the message field. No preview of the component is available.
4. Click Send.

482
Provide Conversation Support with Messaging in Service Send Messaging Components in Messaging Sessions
Cloud

The component is sent to the customer and appears in the conversation transcript. The component’s appearance varies depending on
the channel type, component type, and how the component was configured.

Send Dynamic Messaging Components


To send messaging components with dynamic content, such as time selectors, run a flow in the Service Console. Your admin may group
messaging component flows into one section to make them easier to find.
Your admin configures the flow’s steps, start button label, and location in the Service Console, so it may look different from our example.
1. On the messaging session page, find and run the flow to send the component.

2. Finish the flow.


A placeholder appears below the message field. No preview of the component is available.

3. Click Send in the message field.


The component is sent to the customer and appears in the conversation transcript.

483
Provide Conversation Support with Messaging in Service Send Messaging Components in Messaging Sessions
Cloud

SEE ALSO:
Create and Send Enhanced Links in Messaging Sessions
Create and Send Questions with Static Options in Messaging Sessions
Create and Send Questions with Dynamic Options in Messaging Sessions
Create and Send Time Selectors in Messaging Sessions
Create and Send Secure Forms in Messaging Sessions
Create and Send Authentication Requests in Messaging Sessions
Create and Send Payment Requests in Messaging Sessions
Share External Apps in Messaging Sessions

484
Provide Conversation Support with Messaging in Service Transfer a Messaging Session
Cloud

Transfer a Messaging Session


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

485
Provide Conversation Support with Messaging in Service Transfer a Messaging Session
Cloud

Increase your capacity to accept incoming messaging sessions by transferring an existing messaging
USER PERMISSIONS
session. Agents can transfer a messaging session to another qualified agent, queue, or routing flow.
Agents in a partner contact center can also transfer to contacts external to your Salesforce To transfer enhanced
organization if routing is controlled by a partner vendor. messaging sessions to
flows:
So that you can transfer sessions to other agents, make sure that your admin has selected Enable
• Run Flows
Skills-Based and Direct-to-Agent Routing on the Omni-Channel Settings page in Setup.
To receive transferred
1. In an active messaging session, click the transfer icon in the lower-left corner of the Conversation messaging sessions or end
component. your own messaging
2. Select a recipient type: Agent, Queue, or Flow, or Others (Bring Your Own Channel for CCaaS sessions in Messaging for
In-App and Web:
only). Only agents who are online with a Messaging presence status appear in the list. You can
• Messaging for In-App
see each agent’s capacity percentage, including agents who are at full capacity.
and Web User
permission set license
AND
Messaging for In-App
and Web Agent user
permission
To receive transferred
messaging sessions or end
your own messaging
sessions in enhanced
messaging channels:
• Messaging User
permission set license
AND
Messaging Agent user
permission

Tip: The Agent list shows only agents who are online with a Messaging presence status and who have the Messaging User
or Messaging for In-App and Web User permission set license. You can see each agent’s capacity percentage, including agents

486
Provide Conversation Support with Messaging in Service Transfer a Messaging Session
Cloud

at full capacity. The Queue list shows each queue’s estimated wait time, but no wait time is shown unless agents accepted at
least 10 messaging requests in the queue in the last 10 minutes. The Others list shows contacts external to your Salesforce
organization. Others is an option for Bring Your Own Channel for CCaaS if routing is controlled by a partner vendor.

3. Select a recipient and click Transfer.


4. When the selected agent accepts the transfer, the original agent is removed from the conversation and their tab closes automatically.
After an agent clicks Transfer, the transfer can’t be canceled.
Agents can’t decline transfers, even if the option to let agents decline work requests is selected in your Omni-Channel presence
configuration settings. If an agent is at 100% capacity and a session is transferred to them, the session enters a waiting state in which
the original agent is removed. The transfer completes when the recipient agent is available to accept it.

Tip: To get help from a supervisor during an active messaging session, click the flag icon and enter your message. You and your
supervisor can exchange messages that aren’t visible to the customer. These messages appear in the conversation transcript.

487
Provide Conversation Support with Messaging in Service Inactivate a Messaging Session
Cloud

Inactivate a Messaging Session


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
enhanced
WhatsApp,
enhanced
Facebook
Messenger,
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

This Standard
article WhatsApp,
doesn’t standard
apply to: Facebook
Messenger,
and
standard
SMS
channels

488
Provide Conversation Support with Messaging in Service Inactivate a Messaging Session
Cloud

When an unresolved conversation has gone idle for a certain period of time, mark it Inactive so that
USER PERMISSIONS
you can accept an incoming messaging session.
1. Click the dropdown next to End Chat. To send and receive
messages in Messaging for
2. Select Customer Inactive. In-App and Web:
• Messaging for In-App
and Web permission set
license
AND
Messaging for In-App
and Web user
permission
To send and receive
messages in enhanced
Messaging channels:
• Messaging Agent

If your business uses a tab-based capacity model and you close a session tab without ending the session, you’re prompted to choose
between ending the session and marking it inactive.
If you mark a session inactive and the customer then sends a new message:
• (Tab-based capacity) The session is routed to an available agent.
• (Status-based capacity) You can continue helping the customer.
Inactive sessions are automatically ended on page 490 after approximately 24 hours. In Messaging for In-App and Web, Bring Your Own
Channel, and Bring Your Own Channel for CCaaS, you can also set a time limit for customer inactivity after which a session’s status
automatically updates to Inactive.

SEE ALSO:
Lifecycle of a Messaging Session in Service Cloud
Ending or Inactivating Messaging Sessions Automatically

489
Provide Conversation Support with Messaging in Service End a Messaging Session
Cloud

End a Messaging Session


EDITIONS

Available in: Lightning


Experience. View required
editions.

This Messaging
article for In-App,
applies to: Messaging
for Web,
standard
and
enhanced
WhatsApp,
standard
and
enhanced
Facebook
Messenger,
standard
and
enhanced
SMS,
enhanced
Apple
Messages
for Business,
enhanced
LINE, Bring
Your Own
Channel,
and Bring
Your Own
Channel for
CCaaS

490
Provide Conversation Support with Messaging in Service End a Messaging Session
Cloud

When you’re done helping a customer, end the messaging session from the conversation window
USER PERMISSIONS
or from the Messaging Sessions list view.
1. From the conversation window in an active messaging session that you own, click End Chat. To end Messaging for
In-App and Web messaging
sessions on the session
record:
• Messaging for In-App
and Web permission set
license
To restore your capacity and accept new messaging sessions, close the messaging session tab. AND
2. Alternatively, go to the Messaging Sessions list view to close one or more messaging sessions. Messaging for In-App
This option is available only in standard channels. and Web user
permission
a. Select Messaging Sessions from the Item Picker or find the Messaging Sessions related
AND
list on a messaging user record.
Owner of the messaging
session
To end standard or
enhanced messaging
sessions on the session
record:
• Messaging Agent
AND
Owner of the messaging
session
To end standard Messaging
sessions from a list view:
• End Messaging Session

b. In the list of messaging sessions, find the ones you want to end.
c. Click the action menu next to a messaging session and select End Session. If multiple sessions are selected, select End Sessions
above the list view.

Keep these considerations in mind:


• If you go offline for any reason during an active messaging session, what happens next depends on the capacity model that your
business is using. If tab-based capacity is used, the session status changes to Waiting and the session is routed to an available agent.
If status-based capacity is used, the session remains active.
• If you log out of Omni, you see a warning that any ongoing sessions will end.
• If your business uses tab-based capacity and you close a session tab without ending the session, you’re prompted to choose between
ending the session and marking it inactive.

491
Provide Conversation Support with Messaging in Service Messaging Error Codes in Service Cloud
Cloud

• If you initiate a messaging session and the customer doesn’t respond, the session ends automatically within 24 hours in standard
channels and within 48 to 54 hours in enhanced channels.

SEE ALSO:
Lifecycle of a Messaging Session in Service Cloud
Ending or Inactivating Messaging Sessions Automatically

Messaging Error Codes in Service Cloud


Identify errors that agents may encounter during standard and enhanced messaging sessions.
EDITIONS
When something goes wrong in the middle of a conversation with a customer, you receive a
message that identifies the errors with codes. Verify the meaning of messaging error codes you Available in: Lightning
receive. There are four categories of errors, which are differentiated by their starting number. Experience. View required
editions.

0xxx Errors This Standard


article and
Error codes starting with 0 (0xxx) indicate that a problem occurred when communicating with the applies to: enhanced
third-party messaging provider, such as WhatsApp, or the messaging service carrier. WhatsApp,
standard
Error Message and
enhanced
0001 Can't contact the messaging service right now. Try again later. Facebook
0002 Can't contact the messaging service right now. Try again later. Messenger,
standard
0003 Can't contact the messaging service right now. Ask your admin to check and
the channel settings. enhanced
SMS,
0004 Can’t send your message because it’s outside of the response time frame. enhanced
If it’s supported, send a template-based messaging component. Apple
Otherwise, wait until the user contacts you again. Messages
for Business,
0005 Can’t send this message because you reached your rate limits for this
enhanced
messaging service. Try again later.
LINE, Bring
0006 Can’t send this message because another app is controlling the Your Own
messaging session. Channel,
and Bring
0007 Can’t send this message because your organization violated the Your Own
messaging service’s policies. Ask your Salesforce admin for help. Channel for
CCaaS
0008 Can’t send this message. Try sending the information in a different format.
This Messaging
article for In-App or
doesn’t Messaging
1xxx Errors for Web
apply to:
Error codes starting with 1 (1xxx) indicate a problem with the source address. channels

492
Provide Conversation Support with Messaging in Service Messaging Error Codes in Service Cloud
Cloud

Error Message
1001 Can't send messages from this channel. Ask your admin to check the channel settings and contact
Salesforce Customer Support.

1002 Can't send messages from this channel. Ask your admin to check the channel settings and contact
Salesforce Customer Support.

1003 Can't send messages from this channel because the channel’s phone number isn’t verified. Ask your
Salesforce admin to verify the number. Learn More

1004 Can’t send messages from this channel because the channel’s phone number is blocked. Ask your
Salesforce admin to contact Salesforce Customer Support.

1005 Can’t send messages from this channel because you exceeded your outbound message limit or don’t
have the license required to send messages. If the issue continues, ask your Salesforce admin to
contact Salesforce Customer Support for help.

2xxx Errors
Error codes starting with 2 (2xxx) indicate a problem with the destination address.

Error Message
2001 Can't send messages to this number. Make sure that the contact information is correct and try again.

2002 Can't send messages to this recipient because they blocked you.

2003 Can’t send messages to this recipient. This may be due to an issue with the recipient’s phone number
or app version.

2004 Messages to this recipient are getting blocked by their carrier. Try contacting them another way.

2005 Can’t send messages to this recipient because they haven’t opted in to communication in this channel.

2006 Can’t send this message because the recipient hasn’t subscribed to this type of content.

2007 Can’t send messages because we can’t verify that all of the recipients opted into communication.

2008 Message took too long to send. Try sending again, and if the issue continues, ask your Salesforce
admin to check the timeout limit set in the API.

2009 Can’t send messages to this number. It may no longer be in service, or may be saved in the wrong
format. Verify that it uses the e164 format: +12345678901.

2010 Can’t send messages to this number because it was deactivated or suspended.

2011 Can’t send messages to numbers with this country code.

2012 Can’t send messages to this number because a messaging user with the same number already exists.
Check your messaging user records for duplicates.

2013 Can’t send this message because the messaging end user is engaged in an open messaging session.
Try again later.

493
Provide Conversation Support with Messaging in Service Messaging Error Codes in Service Cloud
Cloud

Error Message
2014 Can’t send messages to this recipient. The user either deleted their account or restricted messages
to friends only.

3xxx Errors
Error codes starting with 3 (3xxx) indicate a problem with the message being sent.

Error Message
3001 Can't send this message because it contains invalid content. Try rewriting it.

3002 Can't send attached files because the file types aren't supported.

3003 Can't send this message because the message body is flagged as spam.

3004 Can't send this message because the message body or consolidated bot response is too large. Try
shortening the message.

3005 Can't send this message because the attachment is too large.

3006 Too many attachments. Try sending your attachments separately.

3007 The message's intent is invalid.

3008 This messaging component’s associated message template isn’t available for this language and
locale. Try sending a different messaging component.

3009 This messaging component and its associated message template contains different numbers of
parameters. Ask your Salesforce admin to check the component settings.

3010 Can't send this message because it contains invalid content. Try rewriting it.

3011 You have too many message templates. Ask your admin to check your templates in WhatsApp
Business Manager.

3012 This messaging component’s associated message template isn’t available for this language and
locale, or the message template isn’t yet approved. Try sending a different messaging component.

3013 This messaging component exceeds the text length limit. Ask your Salesforce admin to update the
associated message template in WhatsApp Business Manager or verify that the component’s
parameters don’t add too much text to the message.

3014 The message template that’s associated with this messaging component may violate WhatsApp
policies. Ask your Salesforce admin to check the template in WhatsApp Business Manager.

3015 Something’s wrong with this messaging component’s parameters. Ask your Salesforce admin to
check the component settings in Setup.

3016 The message template associated with this messaging component was disabled because of quality
concerns. Try sending a different messaging component.

3017 The message template associated with this messaging component is paused because of quality
concerns. Ask your Salesforce admin to check the template in WhatsApp Business Manager.

494
Provide Conversation Support with Messaging in Service Messaging Error Codes in Service Cloud
Cloud

Error Message
3018 Can’t send this message because it contains an unsupported merge field. Try editing or removing
the merge field.

Other Errors

Error Message
9999 Can’t send this message right now. If this happens again, ask your Salesforce admin to contact
Salesforce Customer Support.

495
Provide Conversation Support with Messaging in Service Troubleshooting the Send Message Action in Messaging
Cloud

Troubleshooting the Send Message Action in Messaging


In enhanced Messaging channels and Messaging for In-App, use the Send Message global action
EDITIONS
to proactively message a customer in a specific channel. If you have trouble finding the recipient
or sending your message, review these troubleshooting tips. Available in: Lightning
You can start a messaging session with a customer if the customer already has a messaging user Experience. View required
record associated with the channel you selected. For example, if Ricardo previously chatted with editions.
your company over WhatsApp, he has a messaging user record associated with your WhatsApp
This Messaging
channel, so you can message him in WhatsApp. Messaging user records are created automatically for In-App,
article
when customers first message you. If no record exists, you can create it manually on page 451 as applies to: enhanced
long as you already gathered your customer’s messaging consent elsewhere, or if it’s an enhanced WhatsApp,
SMS channel, we create it for you. enhanced
Facebook
Issue Reason Fix Messenger,
enhanced
You don’t see the Send The action wasn’t added to the On the Publisher Layouts page
SMS,
Message action. global action layout. in Setup, drag the Send
enhanced
Message action to the Mobile Apple
and Lightning Actions section Messages
of the palette and save your for Business,
changes. This action is available enhanced
only if the org contains an LINE, Bring
active enhanced Messaging Your Own
channel or Messaging for Channel,
In-App channel. Then, view the and Bring
global action menu by clicking Your Own
the plus icon in the top-right Channel for
corner of the Service Console. CCaaS

You can also add the Send This Messaging


Message action to the article for Web,
Messaging User record page, doesn’t standard
so agents can select it when apply to: WhatsApp,
viewing a messaging user standard
record. Facebook
Messenger,
You don’t have the Initiate Ask your admin to assign the and
Messaging Sessions user user permission to you or add standard
permission. it to the Messaging Agent SMS
channels
permission set.

You aren’t able to enter a (Enhanced WhatsApp only) If In the Send Message composer,
message in the Send Message more than 24 hours have click the plus icon and then
composer. passed since the selected click the messaging
messaging user’s last message, component icon. Then, select
you can’t send them a freeform a Notification messaging
message. You can only send component to send.
Notification messaging
components that are linked to

496
Provide Conversation Support with Messaging in Service Troubleshooting the Send Message Action in Messaging
Cloud

Issue Reason Fix


an approved WhatsApp template.

(Enhanced Facebook Messenger only) If Try contacting the user in another channel.
more than 7 days have passed since the
selected messaging user’s last message, you
can’t send messages using the Send
Message action.

(All channels) If you used the Send Message Wait for the messaging user to respond.
action to send a message, you can’t send
another message until the messaging user
responds.

When the messaging user responds, the If an agent initiates a messaging session and The new agent can review the user’s
session is routed to a different agent or the customer responds, the session is routed messaging history for context, and if
queue. to your support team according to your needed, transfer the session back to the
routing logic. This means that a different original agent.
agent may pick up the session.

You don’t see the recipient you’re looking The Send Message composer only shows Ensure that the criteria are met for the user
for. messaging users that meet these criteria: you’re trying to contact.
• At least one opt-out keyword is set for If you’re trying to send an SMS message but
the channel, and the messaging user there’s no messaging user record for your
hasn’t opted out. recipient, select their lead, contact, or
• The messaging user and associated account record. If the record contains a
device records were created at least 10 phone number, we create the messaging
minutes before the agent searched for user for you and associate it with the
them. selected enhanced SMS channel.
• The messaging user isn’t currently
engaged in an active messaging session
with your business.

(Enhanced WhatsApp only) You’re trying to For enhanced WhatsApp channels, the Select a messaging component that meets
send a messaging component because the messaging component action in the Send the criteria.
reply period has passed, but the list of Message composer only shows messaging
components is missing the one you want. components that meet these criteria:
• Doesn’t contain dynamic content. For
example, a component with a format
property that relies on parameters is
considered dynamic, and must be sent
using a flow.
• Is a Notification messaging component
that’s linked to an approved WhatsApp
template. Templates are approved in
WhatsApp Business Manager.

497
Provide Conversation Support with Messaging in Service Troubleshooting the Send Message Action in Messaging
Cloud

Issue Reason Fix


(Enhanced SMS only) Your message fails to The phone number for the messaging user Update the phone number on the
send. must include the country code. Use the messaging user record to include the + sign
E164 phone number format. and the country code. If the user doesn't yet
have a messaging user record, update the
phone number on the associated contact,
lead, or account record.

When selecting a recipient, you see multiple A messaging user record is created for each To send your message to the right
messaging user records with the same user who communicates with your business messaging user, follow either of these
name, or multiple records named Guest. in a specific channel. For example, a user approaches:
who has communicated with you over • Open the messaging user record or an
WhatsApp and Facebook Messenger can associated account, contact, or lead.
have two messaging user records, each Then, click Send Message in the global
associated with a different channel. action menu. The messaging user
record is automatically populated based
on the record that you’re viewing.
• If the messaging user record is linked to
an account, contact, or lead, in the Send
Message composer, click the icon on
the first field and select Account,
Contact, or Lead. Select the desired
record, and then select a channel. The
message is sent to the messaging user
associated with the record you selected.

By default, the name of any messaging user To automatically update the name on
record associated with a Messaging for messaging user records from “Guest”,
In-App and Web channel is Guest. admins can:
• Create a flow that populates the
messaging user name with the name
from any linked account, contact, or
lead.
• If pre-chat is enabled, create a flow that
populates the messaging user name
with the name gathered in the pre-chat
form.

498

You might also like