Einstein Bots
Although this is beyond the scope of this book, I want to spend a few minutes talking about Einstein Bots. Einstein Bots, which is an add-on for Live Agent (Chat), provides us with an automated way to interact with customers without using one of the precious resources of our call center: the agent’s time.
With a point and click configuration (Apex customization is also possible), any Live Agent (Chat) chat can be put in charge by an automated bot so that it can answer a customer’s questions in a human-like fashion, thus solving the easiest issues a customer may have (for example, a product specifications list, common questions, store opening hours, order status inquiries, and more).
Whenever the customer doesn’t receive the right answer or wants more information on a certain subject, fail-safe mode is activated, which directly transfers the chat to a human agent.
Do not pretend your bot is a human.
Bots can also be used to help the customer identify issues, while the real answer will be given by a human agent after the issue has been addressed.
Einstein Bots is a relatively new feature, so expect it to become feature-rich in the upcoming releases of Salesforce.
For a deep dive into Einstein Bots, please refer to Salesforce Help at https://help.salesforce.com/articleView?id=bots_service_intro.htm&type=5, or follow the awesome trail at https://trailhead.salesforce.com/content/learn/trails/service_einstein.
Entitlements for SLA management (and more)
Our call center is ready to achieve its potential, but before we close this chapter, let’s add the last piece of the puzzle.
Let’s talk about SLAs. If we are building service processes, we are giving our customers a way to contact us if something is wrong with their product.
Our company sells highly specialized software: if a software license is purchased, the customer receives email and chat support, but if they purchase, let’s say, 10,000 licenses, we can provide 24/7 phone support.
In Salesforce, SLAs are handled with entitlements. In this scenario, we can create an entitlement object related to the customer’s account.
If the customer calls the call center, the agent can have a look at the account’s related list to see whether phone call support is available. If it isn’t, the agent can suggest a new deal so that the customer can upgrade their service experience. If the SLA is okay, the agent can answer the customer and create a case for support if needed.
Because these features are not fully supported in Lightning, let’s switch to Salesforce Classic to configure them and then go back to Lightning Experience to see the differences between them.
You can enable entitlements from Setup | Entitlement Settings.
The standard entitlement object is now enabled, the Entitlements related list is available on accounts, assets, and contacts (Lightning Experience does not support contacts at the time of writing, that is, Summer 2019), and the entitlements tab can be added to your apps.
For a detailed list of all the required permissions so that you access every entitlements feature, please refer to Salesforce Help at https://help.salesforce.com/articleView?id=entitlements_giving_users_access.htm&type=5.
Add the entitlements-related list to the account object (this will work in LEX as well) and create a new entitlement:

New Entitlement on account
We can add new custom fields to the Entitlement object that make sense for your company’s support processes (I would customize the Type picklist field first by adding my company’s entitlements types).
Note that if the END DATE expires, the status will expire as well:

Entitlement status modification on SLA expiration
Entitlements can be added to accounts, assets, service contracts, and contacts by hand (you have a loyal/strategic customer that you want to take care of and so you’ll want to manually add an entitlement).
If you want to link an entitlement to a product (we sell 1-year support with our new software), we can use Entitlement Templates.
Create a new template by going to Setup | Entitlement Templates:

Entitlement Template creation
Now, we can define an entitlement that is automatically assigned to an asset when its product field is associated with it.
The Entitlement Template’s lookup is not available on Lightning Experience (as of summer 2019), so go back to Classic and add the template to our product:

Entitlement Template on a product
Now, let’s create a new asset by filling in its product lookup:

Entitlement created automatically after the Entitlement Template