Configuring Salesforce
Depending on your needs you may need Cases and/or Chats integration.
Cases Integration allows you to synchronize all Guuru interactions
with your Salesforce CRM.
Chats Integration allows our platform to be plugged in into your
Salesforce installation providing a seamless experience to your business and
customers with our solution.
The integration is done through a few configuration settings on your Salesforce environment and Guuru account.
Estimated time to complete
From 30 minutes to 1 hours depending on the level of expertise of the resource involved
Creating an integration user
The steps below guide you through the creation of a Guuru user to be used by the integration.
Although not mandatory, it is highly recommended that you create a user in your Salesforce organization solely for integration purposes.
- Open your Salesforce instance and login with an account that is allowed to create users.
- Go to Setup (setup your current app), which usually can be found in the top right corner.
- Under Administration, Users, open Users.
- Click New User and fill in the following (recommended) details:
- Last Name: Guuru
- Alias: guuru
- Email: guuru@your-company.com (must be unique, we might send email notifications to this address in case of problems)
- Username: can be the same as email
- Nickname: Guuru
- Title: Bot
- User License: Salesforce
- Profile: Standard User
- All other checkboxes and fields should be unchecked or empty.
- Optionally, go back to the Salesforce home screen, open People (click the dotted icon in the left and type People). Open the user Guuru. Click in the Profile Picture and select Update Photo. We recommend that you use the Guuru avatar picture to clearly identify (visually) the actions performed by Guuru.
Cases
Our Salesforce Cases integration automatically creates, updates and closes cases keeping all interactions that come through Guuru synchronized with Salesforce.
Optionally, interactions transferred in Guuru can be assigned to a queue of your choosing to be handled by your team in Salesforce.
Assigning the required permissions
The steps below guide you through the creation of a Case Creator permission set that gives the user you just created the required permissions to create and manage cases in Salesforce.
Under Administration, Users open Permission Sets.
Click New and fill in the following details:
2.1. Label: Case Creator
2.2. API Name: CaseCreator
2.3. Click Save.
Click Object Settings, then Cases and check the following permissions:
3.1. Object Permissions: Read, Create, Edit, Delete.
3.2. Field Permissions: Read and Edit to all fields. Note that some fields, like Date/Time Opened cannot be checked. That is ok, check all that are checkable.
Under Object Settings, click Contacts and check the following permissions:
4.1. Object Permissions: Read, View All.
Click System Permissions and check API Enabled.
Click Manage Assignments then Add Assignments, check the user Guuru that you created earlier and click Assign.
Creating a queue for transfers
The steps below guide you through the creation of a Queue to which transferred conversations will be assigned.
These steps are optional. Follow them if you want transferred conversations to be handled by your team via Salesforce.
Go to Setup (setup your current app), usually can be found in the top right corner.
Under Administration, Users open Queues.
Click the button New.
Fill in a Label and Queue Name of your choosing, e.g. Transfers.
Under Supported Objects, Available Objects click Case and then Add.
Under Queue Members, Available Members click the members of your team that should handle conversation transfers and click Add.
Click Save.
To find the ID of the queue you just created click Developer Console in the top right corner. Open the Query Editor tab, type
select Id, Name from Group where Type = 'Queue' and Name = 'Transfers'and click Execute.
Considerations
The integration only uses the standard case fields that come with Salesforce out of the box:
| Salesforce Case Field | Values |
|---|---|
| Subject | question (truncated) |
| Description | question (full) |
| Status | New, Working (configurable), Closed |
| Origin | Chat |
| SuppliedName | visitor name |
| SuppliedEmail | visitor email |
| SuppliedPhone | visitor mobile phone |
| Type | conversation category (configurable) |
| RecordTypeId | configured record type |
The rating, referrer and transcript will be created as items in the case feed.
Messaging for In-App and Web
Our Salesforce MIAW integration allows your Salesforce agents to handle conversations transferred from Guuru directly in Salesforce. MIAW uses Salesforce Messaging Sessions to represent conversations between customers and agents. Messaging Channels define how customers connect to Salesforce, while Embedded Service Deployments expose the messaging experience to customers. Some benefits are:
- Let your community of Guurus handle incoming questions when needed
- Seamless handoff to your Agents
- Automate repetitive questions with our out-of-the-box Automation
Enable Messaging
If Messaging is already enabled, you may skip this step.
- In Salesforce Setup, search for Messaging Settings.
- Open Messaging Settings.
- Make sure Messaging is enabled for your Salesforce organization.
Salesforce's current MIAW setup requires Messaging, Omni-Channel, a routing configuration or Omni-Channel flow, a Messaging Channel, and an Embedded Service Deployment.
Enable Omni-Channel
If Omni-Channel is already enabled, you may skip this step.
- In Salesforce Setup, search for Omni-Channel.
- Open the Omni-Channel Settings.
- Enable Omni-Channel and save.
Omni-Channel is used to route messaging sessions to available agents.
Assigning the required permissions (required)
The users handling Guuru conversations in Salesforce need access to Messaging Sessions and the corresponding messaging permissions.
- In Salesforce Setup, search for Permission Sets.
- Create a new permission set for the agents who will handle Guuru conversations.
- Give the users access to the Messaging Session object.
- Enable the required messaging permissions for the users handling conversations, including:
- Messaging Agent
- Initiate Messaging Sessions
- Access Conversation Entries The exact permissions available can depend on the Salesforce messaging configuration in your organization.
- Configure the required Service Presence Statuses and assign the appropriate presence statuses to the permission set.
- Assign the permission set to the Salesforce users who will handle Guuru conversations.
Salesforce documents Messaging Sessions as the standard object used to store messaging conversations, and the Access Conversation Entries permission is required for users to access the messages within those sessions.
Routing Configurations (required)
- Search for Routing and open Feature Settings > Service > Omni-Channel > Routing Configurations
- Click New and fill in with the following details:
- Routing Configuration Name: Hot Transfer
- Developer Name: Hot_Transfer
- Routing Priority: 1 (You can adjust based on your needs)
- Routing Model: Most Available (You can adjust based on your needs)
- Units of Capacity: 5 (You can adjust based on your needs)
The routing configuration can then be associated with the queue or Omni-Channel routing flow used for Guuru conversations.
Messaging Queue (required)
- Search for Queues and open Users > Queues
- Click New and fill in with the following details:
- Label: Hot Transfers
- Queue Name: Hot_Transfers
- Routing Configuration: Lookup for Hot Transfer
- Selected Objects: Messaging Session
- Selected Members: All the desired Agents that will receive chats from Guuru (To test it can be the current system admin). All Members should have Chat User checked in the General Information settings.
- To allow your Agents to follow up with Transferred interactions in Salesforce you may need also to configure the Cases Integration.
Embedded Service Deployments
If you already have an Embedded Service Deployment you may skip this step
- Search for Deployments and open Feature Settings > Service > Embedded Service > Embedded Service Deployments
- If you don't have any, click New Deployment
- Select Embedded Chat, click Next and fill in with the following details:
- Embedded Service Deployment Name: Guuru
- API Name: Guuru
- Site Endpoint: Select the previous created Site Guuru
Testing (optional)
Go to your Developer Settings in Partner Portal and open you chat page.
Considerations
- The Hot-Transfer option will always be available during Agents working hours, although if there are no Agents available we will convert the Hot-Transfer to a Transfer automatically.
Connect Guuru to Salesforce
The steps below will connect Guuru to Salesforce and activate the integration.
Before continuing: Make sure you are logged-in in Salesforce with the user Guuru you created earlier.
- Open the Partner Portal and navigate to Settings, Integrations.
- Under Salesforce, in the field Integration User Username type the username of the integration user you created previously.
- Under Salesforce Cases you can choose:
- The Record Type to use on all the created cases. By default, cases are created with no record type.
- A common Case Type to use on all the created cases instead using the Chat Category as per default.
- The Status to be set on cases which are currently being handled by
Guurus or have been hot transferred to Agents. By default, this status is set to
Working.
- If you wish to allow your Agents to handle chats, fill in the following
under Salesforce Chat
- Chat Api Endpoint: Search for Embedded Service Deployments , open Install Code Snippet look for the script tag and copy the Url attribute
- Embedded Service Deployment API Name: Select your previously created Embedded Service Deployment name
- If you wish to handle transferred conversations in Salesforce, fill the
following under Transfers
- Transfers Queue ID: Transfers
- Click Authorize.
Final considerations
Make sure your storage limits in Salesforce are enough to accommodate all chats. We do not upload files to Salesforce, but every case counts toward your storage limit.
Read Monitor Data and Storage Resources for more information.
Make sure you have enough licenses to not hit the rate limits of Salesforce. In case rate limits are hit occasionally, during peaks, we will retry in a few minutes for a reasonable period of time and no chats will be lost.
However, if your rate limits are not high enough to accommodate the normal
influx of chats for long periods of time (days) you will eventually start losing chats in Salesforce.
Read API Request Limits and Allocations for more information.
Troubleshooting
If you need help or if you are experiencing some problems setting up the integration, please get in touch with our support.