0% found this document useful (0 votes)
48 views

Salesforce Entitlements Implementation Guide

Uploaded by

Jose Tabeayo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

Salesforce Entitlements Implementation Guide

Uploaded by

Jose Tabeayo
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 50

The Admin's Guide to

Entitlement Management
Salesforce, Winter ’23

@salesforcedocs
Last updated: September 23, 2022
© Copyright 2000–2022 salesforce.com, inc. All rights reserved. Salesforce is a registered trademark of salesforce.com, inc.,

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

INTRODUCTION TO ENTITLEMENT MANAGEMENT ....................1


What’s Entitlement Management? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Entitlements: Terms to Know . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Entitlement Management Limits and Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

PLANNING YOUR IMPLEMENTATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6


Planning for Entitlement Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Entitlement Management Setup Checklist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

SETTING UP ENTITLEMENT MANAGEMENT . . . . . . . . . . . . . . . . . . . . . . . . . . 10


Set Up Entitlements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Set Up Service Contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Add Contract Line Items to Service Contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Set Up Entitlement Management in Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Report on Entitlements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

ENFORCING SERVICE LEVELS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23


Set Up Milestones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Set Up Entitlement Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

ENTITLEMENT VERSIONING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Updating an Entitlement Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Create a New Version of an Entitlement Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Use a New Version of an Entitlement Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

LEARN MORE ABOUT ENTITLEMENT MANAGEMENT . . . . . . . . . . . . . . . . . . 46


Where to Learn More . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
INTRODUCTION TO ENTITLEMENT MANAGEMENT

What’s Entitlement Management?


Entitlement management helps you provide the correct support to your customers. Its variety of
EDITIONS
features let you define, enforce, and track service levels as part of your support management process.
Entitlement management features include: Available in both: Salesforce
Classic and Lightning
• Entitlements, which let support agents determine whether a customer is eligible for support.
Experience
• Entitlement processes, which let you design timelines that include all the steps that your support
team must complete to resolve support records like cases or work orders. Available in: Professional,
Enterprise, Performance,
• Service contracts, which let you represent different kinds of customer support agreements like
Unlimited, and Developer
warranties, subscriptions, or maintenance agreements. You can restrict service contracts to
Editions with the Service
cover specific products. Cloud
• Experience access to entitlements, which lets Experience users view entitlements and service
contracts and create support records from them.
• Reporting on entitlement management, which lets you track the way entitlements are used in your Salesforce org and whether service
contract terms are being met.
Because entitlement management is highly customizable, you have full control of which features you use and how you set them up to
reflect your customer support model. We’ll walk you through important planning decisions and setup steps to help you make the most
of entitlement management. To get started, we recommend that you check out the Entitlement Management Trailhead module:
Entitlement Management.

Important: Only users in orgs with the Service Cloud can enable, create, and update entitlement management items.

Entitlements: Terms to Know


Learn useful terms related to entitlement features in Salesforce.
EDITIONS
Entitlement
A unit of customer support in Salesforce, such as “phone support” or “web support.” It’s typically Available in both: Salesforce
used to represent terms in warranties. You can associate entitlement with accounts, assets, Classic and Lightning
contacts, and service contracts. View entitlements from the Entitlements tab or the Entitlements Experience
related list on accounts, assets, contacts, and service contracts.
Available in: Professional,
Note: In Lightning Experience, the Entitlements related list isn’t available on Contacts. Enterprise, Performance,
Unlimited, and Developer
Entitlement Contact Editions with the Service
Contacts who are entitled to customer support—for example, a named caller. The Contacts Cloud
related list on an entitlement shows which contacts are eligible for that entitlement. You can
remove or add contacts directly from the related list, or by updating the contact record itself.
Your business may not allow you to provide support to customers unless they are a contact on the entitlement.

1
Introduction to Entitlement Management Entitlements: Terms to Know

Note:
• Contacts on an account don’t automatically inherit the account’s entitlements. Depending on your business processes,
you may need to create a separate entitlement for each contact on an account. You can also set up an Apex trigger that
automatically assigns an entitlement to a contact when you create the contact.
• Entitlement contacts don’t have page layouts, search layouts, buttons, links, or record types.
• The same visibility and sharing settings that apply to the parent account apply to contacts. Associating a contact with an
entitlement doesn’t share the entitlement record with the contact or the related experience user.

Entitlement Template
Predefined terms of customer support that can be quickly added to products in Salesforce. For example, you can create entitlement
templates for phone or web support so users can easily add entitlements to products purchased by customers.

Note: In Lightning Experience, the contact related list isn’t available on Entitlements.

Entitlement Management
A collection of Salesforce features that help you provide the correct service levels to your customers. It includes:
• Entitlements, which let support agents determine whether a customer is eligible for support.
• Entitlement processes, which are timelines that include all the steps that your support team must complete to resolve support
records like cases or work orders.
• Service contracts, which let you represent different kinds of customer support agreements like warranties, subscriptions, or
maintenance agreements. You can restrict service contracts to cover specific products.
• Experience access to entitlements, which lets experience users view entitlements and service contracts and create support records
from them.
• Reporting on entitlement management, which lets you track the way entitlements are used in your Salesforce org and whether
service contract terms are being met.
Depending on your business needs, you may decide to use all of these features or just a few of them.
Service Contract
A customer support agreement between you and your customers. Service contracts in Salesforce can represent warranties,
subscriptions, service level agreements (SLAs), and other types of customer support. View service contracts in the Service Contracts
tab or on the Service Contracts related list on accounts and contacts.
Contract Line Item
Specific products covered by a service contract. View contract line items in the Contract Line Items related list on service contracts
(not contracts!). You can only use contract line items if your org uses products.

Note: Schedules aren’t available for contract line items, and experience users can’t access them.

Entitlement Process
A timeline that includes all the steps (milestones) that support agents must complete to resolve a support record. Each process
includes the logic needed to determine how to enforce the correct service level for your customers. Entitlement processes come in
two types: Case and Work Order.
Not all entitlements need processes. For example, a simple entitlement might just state that a customer is eligible for phone support
24/7. If you need to add time-dependent steps or service levels to that definition—for example, if you want a supervisor to be notified
by email when a customer’s case goes unresolved for two hours—you need an entitlement process.
Milestone
A required step in your entitlement process. Milestones are metrics that represent service levels to provide to each of your customers.
Examples of milestones include First Response and Resolution Time on cases.

2
Introduction to Entitlement Management Entitlement Management Limits and Limitations

Milestone Action
A time-dependent workflow action that occurs on a milestone in an entitlement process. For example, you might add the following
actions to a milestone:
• Send an email alert to certain users one hour before a first response milestone is scheduled to expire
• Update certain fields on a case one minute after a first response is completed
There are three types of milestone actions:
• Success actions are triggered when a milestone is completed
• Warning actions are triggered when a milestone is about to be violated
• Violation actions are triggered when a milestone is violated
You can automate tasks, email alerts, field updates, and outbound messages for each action type.

Entitlement Management Limits and Limitations


These limits and limitations apply to entitlements and their related features.
EDITIONS

Available in both: Salesforce


Limits Classic and Lightning
Experience
Limit Details
Available in: Professional,
Maximum entitlement processes per org 1,000 Enterprise, Performance,
Unlimited, and Developer
Maximum milestones per entitlement process 10
Editions with the Service
Maximum service contracts in a service contract 10,000 Cloud
hierarchy

Maximum contract line items in a contract line 10,000


item hierarchy

Limitations
Experience Limitations
• Entitlements are only supported in experiences built using Salesforce Tabs + Visualforce and can’t be added to Lightning
Experience.
Entitlement Limitations
• Every entitlement must be associated with an account.
• You can’t share entitlements. Entitlements inherit their parent account’s sharing settings. To update an entitlement, you need
Read access on the parent account.
• If you’re using entitlement processes, manage customers’ work orders and cases on separate entitlements. This is because an
entitlement process only runs on records that match its type. For example, when a Case entitlement process is applied to an
entitlement, the process only runs on cases associated with the entitlement. If a work order is also associated with the entitlement,
the process won’t run on the work order.
• Merge fields for entitlements on cases aren't supported. For example, if you add the Entitlement Name
{!Case.Entitlement} merge field to an email template, the field is not populated on the template.

3
Introduction to Entitlement Management Entitlement Management Limits and Limitations

• Entitlement contacts don’t have page layouts, search layouts, buttons, links, or record types.
• Entitlements don’t automatically apply to cases created with Web-to-Case or Email-to-Case. For details on how to auto-add
entitlements to these types of cases, see Automatically Add Entitlements to Cases from Web, Email, and Experiences.
• An email violation is triggered to the Queue if there is an email address associated with it. Queue members don't receive the
violation email.
Milestone Limitations
• You can’t add milestones to support records without using entitlement processes. Entitlement processes apply milestones to
support records.
• Milestones aren’t marked completed automatically. For details on how to auto-complete milestones on records that match
unique criteria, see Auto-Complete Case Milestones.
• Actions on time-based milestones sometimes execute a few seconds before their target date. For example, if you set up a violation
action to occur 0 minutes after the milestone is violated, the action can execute in the minute before the target date.
• After an entitlement process is activated, you can’t delete its milestones or create milestone actions. But you can create versions
of entitlement processes with different milestone settings and apply the new version to existing entitlements.
• By default, the tracker shows only one milestone countdown at a time. To view upcoming milestones, use the links in the tracker.
• The Milestone component and tracker doesn’t appear in the Salesforce mobile app.
• Business hours on entitlement processes aren’t supported in change sets. To transfer an entitlement process with business hours
from one Salesforce org to another, use one of these approaches:
– Create the entitlement process from scratch in the new org.
– Use an alternative method to transfer the entitlement process, such as the Ant Migration Tool.
– Remove the business hours from the entitlement process before adding it to a change set.
– Case Milestone doesn't have system fields to identify who completes or changes the milestone.

Service Contract Limitations


• You can only use contract line items if your org uses the Product object.
• You can’t create list views for contract line items.
• You can’t share contract line items. Contract line items inherit their parent service contract’s sharing settings. For example, users
with the Read permission on service contracts inherit the Read permission on contract line items.
• In the Salesforce mobile app, contract line items can be edited and deleted but not created.
• You can’t select a record type when creating contract line items. To change a line item’s record type from the default type,
manually update the record after it’s created.

Note: If you experience issues with the Root Service Contract field being blank, contact Salesforce for help.

Lightning Experience Limitations


• The Entitlements related list isn’t available on contacts.
• The Entitlement Templates related list isn’t available on products.
• The Contacts related list isn’t available on entitlements.
• The Business Hours field isn't available on the Case Milestones related list.
• The Milestone Status Icon field on cases isn’t available.
• In the Object Milestones related list on work orders, only the following fields are supported: Created By, Created Date, Last
Modified By, Last Modified Date, Deleted, Object Milestone ID, Object Milestone Name, Stopped Time (Mins), Elapsed Time
(Mins), Target Date, Completion Date, and Parent Object.
• The Status Icon field on service contracts isn’t available.

4
Introduction to Entitlement Management Entitlement Management Limits and Limitations

• When you're adding multiple contract line items to a service contract, picklist fields on contract line items show all values in your
org rather than only the values corresponding to the line item’s record type. But selecting a value corresponding to a different
record type results in an error. This issue doesn’t occur when you edit a single line item.
• When you clone a case that’s related to an entitlement record, the Entitlement Process Start Time carries over from the cloned
case.

5
PLANNING YOUR IMPLEMENTATION

Planning for Entitlement Management


Entitlement management is highly customizable, which means you have many choices during
EDITIONS
setup. Before you begin the setup process, it’s essential to choose an entitlement management
model. Available in both: Salesforce
Classic and Lightning
Experience
Choose What Determines Support Eligibility
Available in: Professional,
You can set up entitlement management so customers are eligible for support based on one or Enterprise, Performance,
several of the following types of records: Unlimited, and Developer
• Accounts: Any contact on the account is eligible for support. Editions with the Service
Cloud
• Contacts: Specific contacts are eligible for support.
• Assets: Specific assets (purchased products) are eligible for support.
• Service contracts: Customers are eligible for support based on a specific service contract.
• Contract line items: Specific products covered by a service contract are eligible for support.
Your approach depends on how detailed you want your support process to be. If you prefer to keep it simple, just have your support
agents determine support eligibility based on accounts. Here’s what this approach looks like:

6
Planning Your Implementation Planning for Entitlement Management

Choose a Setup Model


There are three general ways to set up entitlement management. Once you’ve decided what should determine support eligibility, review
the three models and select the one that best meets your business needs. You can always change which model you’re using.

Entitlement model What determines support eligibility Use this model if


Entitlements only (simplest option) Support agents determine whether a • There's no need to manage your
customer is eligible for support at the customers' entitlements as part of a
account, contact, or asset level. service contract
• Your entitlements don't have a renewal
process
• Entitlements aren't purchased by your
customers; they're bundled with
products (warranties)
• Your customers' entitlements are short
term and managed independently of
each other

Entitlements + service contracts Support agents determine whether a • Entitlements are purchased and
customer is eligible for support based on managed separately from the products
their service contract. they cover and are part of a service
contract
• Your customers' entitlements are
renewed at a contract level
• You use Salesforce for customer support
but not necessarily for service contract
management

Entitlements + service contracts + contract Support agents determine whether a • You use Salesforce for customer support
line items (most complex option) customer is eligible for support based on and to manage your customers' service
the products covered in their service contracts
contract.
• Your support team manages service
contract transactions, such as transfers,
mergers, and renewals
• Warranties, subscriptions, or other
support products appear as line items
on your sales orders and map to one or
more entitlements
• Entitlements are created and updated
through an integration with your order
management system

Regardless of the setup model you choose, you can enhance your support process with other entitlement management features. For
example, you can:

7
Planning Your Implementation Entitlement Management Setup Checklist

• Create entitlement processes to enforce required, time-dependent steps in your support process
• Use entitlement versioning to create and maintain multiple versions of entitlement processes
• Add entitlements to experiences
• Report on entitlements
After you select a setup model, head to the invaluable Entitlement Management Setup Checklist.

Entitlement Management Setup Checklist


When you set up entitlement management, you decide which features to use. Use this checklist
EDITIONS
to confirm that you’ve set up entitlement management in a way that fits your support processes.
Available in both: Salesforce
Step Complete if... Classic and Lightning
You’re thinking about using entitlements in Experience
Read Planning for Entitlement Management
your org. Available in: Professional,
Enterprise, Performance,
Set Up Entitlements You want customer support eligibility to be
Unlimited, and Developer
determined at the account or contact level.
Editions with the Service
Enable Entitlements You want to use entitlements in your org. Cloud

Customize Entitlements You want to control which fields users see


on entitlements, and how and where users USER PERMISSIONS
associate entitlements with other records.
To set up entitlement
Set Up Entitlement and Asset Lookup You want to control which entitlements and management
Filters on Cases assets users can link to a case. • Manage Entitlements

Give Users Access to Entitlement You want to give users the appropriate user
Management permissions, field access, and tab access.

Set Up an Entitlement Template You want to predefine the terms of support


for specific products.

Automatically Add Entitlements to You want the correct entitlement to be added


Cases from Web, Email, and Experiences automatically to cases created using
Web-to-Case, Email-to-Case, or experiences.

Set Up Milestones You want to define required steps that


support agents must complete to close a
support record.

Customize Milestone Page Layouts You want to control which milestone-related


fields users see.

Enable Milestone Feed Items You want automatic notifications to be added


to the feed and the record owner’s profile
page when a milestone is completed or
violated.

Set Up the Milestone Tracker You want your support team to be able to
see a list of upcoming and completed

8
Planning Your Implementation Entitlement Management Setup Checklist

Step Complete if...


milestones and countdowns for active and overdue milestones.

Limit User Updates to Milestones You want to prevent users from updating milestones unless
certain criteria are met.

Create a Milestone You want to define a required step in your support process.

Auto-Complete Case Milestones You want milestones to be automatically marked Completed


on cases that match unique criteria.

Set Up Entitlement Processes You want to be able to apply the required steps in your support
process to specific records.

Create an Entitlement Process You want to create a timeline that includes all of the steps that
your support team must complete to resolve support records.

Customize Entitlement Process Fields You want to control which entitlement process fields users see.

Add a Milestone to an Entitlement Process You want to specify which required support steps occur, and
when, on your timeline.

Add a Milestone Action to an Entitlement Process You want to define time-dependent workflow actions that
occur at every step (milestone) in an entitlement process when
the milestone is nearing violation, violated, or completed.

Apply an Entitlement Process to an Entitlement You want a specific entitlement’s support records to follow the
steps defined in your entitlement process.

Create a New Version of an Entitlement Process You want to update an entitlement process.

Use a New Version of an Entitlement Process You want to apply a new version of an entitlement process to
new or existing entitlements.

Set Up Service Contracts You want customer support eligibility to be determined at the
service contract level.

Add Contract Line Items to Service Contracts You want to be able to limit a service contract to cover specific
products.

Set Up Entitlement Management in Experiences You want customers or partners to be able to view their
entitlements and service contracts and create support records
from them.

Report on Entitlements You want to view and share data on entitlements and service
contracts.

Give your support team entitlement management guidelines. You want your support team to understand:
• How to verify that a customer is entitled to support
• How to link cases or work orders to entitlements
• How entitlement processes affect the way they resolve
cases or work orders

9
SETTING UP ENTITLEMENT MANAGEMENT

Set Up Entitlements
Entitlements are units of customer support in Salesforce, such as “phone support” or “web support”.
EDITIONS
Set up entitlements in your Salesforce org to help support agents determine whether a customer
is eligible for support. Available in both: Salesforce
Classic and Lightning
1. Enable Entitlements Experience
Enable entitlements in your Salesforce org to help support agents deliver the correct service Available in: Professional,
level to your customers. Enterprise, Performance,
2. Customize Entitlements Unlimited, and Developer
Customize entitlement fields and page layouts based on your business needs and how your Editions with the Service
Cloud
agents work.
3. Set Up Entitlement and Asset Lookup Filters on Cases
Set up lookup filters on entitlement-related case fields to restrict the entitlements that users can select on a case.
4. Give Users Access to Entitlement Management
After you set up entitlement management, make sure that users have the appropriate user permissions, field access, and tab access.
5. Set Up an Entitlement Template
Entitlement templates let you predefine terms of support that users can add to products.
6. Automatically Add Entitlements to Cases from Web, Email, and Experiences
Entitlements don’t automatically apply to cases created using Web-to-Case, Email-to-Case, or experience. However, you can add
entitlements to these features using Apex code.

Enable Entitlements
Enable entitlements in your Salesforce org to help support agents deliver the correct service level
EDITIONS
to your customers.

Note: Only users with a standard System Administrator profile can enable entitlements. Available in both: Salesforce
Classic and Lightning
1. From Setup, enter Entitlement Settings in the Quick Find box, then select Experience
Entitlement Settings.
Available in: Professional,
2. Select Enable Entitlement Management. Enterprise, Performance,
Unlimited, and Developer
3. Click Save. This takes you to a page where you can customize entitlement management settings.
Editions with the Service
You’ll come back to those settings later on in the entitlement management setup process.
Cloud

USER PERMISSIONS

To enable entitlements:
• “Customize Application”

10
Setting Up Entitlement Management Customize Entitlements

Customize Entitlements
Customize entitlement fields and page layouts based on your business needs and how your agents
EDITIONS
work.
1. Customize entitlements fields. Available in both: Salesforce
This customization lets you control what information users add to entitlements. Classic and Lightning
Experience
Tip: Create custom entitlement fields that are specific to your industry or your support
Available in: Professional,
processes. For example:
Enterprise, Performance,
• Customize the values for the Type field to match the types of entitlements your Unlimited, and Developer
team provides or sells, like online support or online training. Editions with the Service
• If your business charges for entitlement renewals, create a currency field on Cloud
entitlements named Cost to Renew.
USER PERMISSIONS
2. Customize entitlement page layouts.
This customization lets you specify which fields and related lists users see on entitlements. To edit page layouts and set
field history tracking:
Consider making the following customizations:
• Customize Application
• Add the Status Icon field so users can easily see whether the entitlement is active,
expired, or inactive.
• Add the Cases, Contacts, and Work Orders related lists so users can:
– View cases, contacts, and work orders associated with entitlements
– Create cases or work orders automatically associated with the correct entitlements
– Add contacts to entitlements

• Add the Work Orders Per Entitlement and Remaining Work Orders fields so users can track how many work orders were agreed
to and how many are still available.

Note: In Lightning Experience, the Entitlement Templates related list isn’t available on product page layouts.

3. Set field history tracking on entitlements.


This customization lets you see when field values were changed. Changes are listed in the Entitlement History related list on
entitlements. From the object management settings for entitlements, go to the fields section and click Set History Tracking.

4. Customize other objects’ page layouts.


• Add the Entitlement Name lookup field to case and work order page layouts. This field lets users add entitlements to
cases or work orders.

Important: To let a user create cases from entitlements or change a case’s assigned entitlement, make the Entitlement
Name field on cases editable for their profile.

• Add the Entitlements related list to other objects’ page layouts:

Add the Entitlements related list to this object’s page So users can view and create entitlements when...
layouts...
Accounts Any contact on the account is eligible for support

Contacts Specific contacts are eligible for support

Assets Specific assets (purchased products) are eligible for support

11
Setting Up Entitlement Management Set Up Entitlement and Asset Lookup Filters on Cases

Note: In Lightning Experience, the Entitlements related list isn’t available on Contacts.

5. Make the Entitlements tab visible in Salesforce and any custom apps.
The Entitlements tab is where users create and edit entitlements. Add the tab to an app or instruct your users to add it to an existing
tab set in Salesforce. To see the Entitlements tab, users need the “Read” permission on entitlements.

Set Up Entitlement and Asset Lookup Filters on Cases


Set up lookup filters on entitlement-related case fields to restrict the entitlements that users can
EDITIONS
select on a case.
For example, when experience users create a case and use the lookup on the Entitlement Available in both: Salesforce
Name field, you can set up lookup filters so they can choose only entitlements registered to their Classic and Lightning
account or contact. Experience

1. From Setup, enter Entitlement Settings in the Quick Find box, then select Available in: Professional,
Entitlement Settings. Enterprise, Performance,
Unlimited, and Developer
2. Choose the item(s) you'd like returned in the lookup fields.
Editions with the Service
Cloud
Lookup Field on Cases Click... To Return...
Asset Same account on the Assets registered to the
USER PERMISSIONS
case account on the case.
To set up entitlement-related
Tip: If you want the lookups on cases:
lookup field to return • Manage Entitlements
all assets that share an
account with the case,
select only this option.

Same contact on the Assets registered to the


case contact on the case.

Entitlements on the Assets associated with


case's account entitlements that belong to
the case’s account.

Entitlements on the Assets associated with


case's contact entitlements related to the
case’s contact.

Note: In Lightning
Experience, the
Entitlements related
list isn’t available on
Contacts.

Entitlement Active status Entitlements with an Active


Status.

12
Setting Up Entitlement Management Give Users Access to Entitlement Management

Lookup Field on Cases Click... To Return...


Same account on the case Entitlements associated with the account
on the case.

Same asset on the case Entitlements associated with the asset on


the case.

Same contact on the case Entitlements associated with the contact


on the case.

Choosing multiple items acts as an AND function, so the more items you select, the more it restricts the options returned. For example,
choosing Same account on the case and Same contact on the case means the Asset lookup field only
returns assets registered to both the account and the contact on the case.

Tip: Choose items that match the way your support agents verify support eligibility. For example, choose the account-related
items if your support agents verify support eligibility based on accounts.

3. Click Save.

Note: Equivalent lookup filters aren’t available for work orders.

Give Users Access to Entitlement Management


After you set up entitlement management, make sure that users have the appropriate user
EDITIONS
permissions, field access, and tab access.
1. Assign entitlement management permissions to users. Available in both: Salesforce
Classic and Lightning
Users Who Will Need These Permissions Permissions Are Experience
Auto-Enabled on These
Available in: Professional,
Standard Profiles
Enterprise, Performance,
Set up entitlement “Manage Entitlements” System Administrator Unlimited, and Developer
management, including Editions with the Service
milestones, entitlement Cloud
processes, and entitlement
templates USER PERMISSIONS
Provide entitlement “Customize Application” System Administrator
To create and edit users:
management to an AND • Manage Internal Users
experience
“Create and Set Up
Experiences”

Create or update custom “Manage Custom Report System Administrator


report types that include Types”
entitlement management

Create and run reports based “Create and Customize Standard User, Solution
on entitlement management Reports” Manager, Contract Manager,
custom report types

13
Setting Up Entitlement Management Give Users Access to Entitlement Management

Users Who Will Need These Permissions Permissions Are Auto-Enabled on


These Standard Profiles
Marketing User, and System Administrator

Create cases with entitlements “Create” on cases Standard User, Solution Manager, Contract
AND Manager, Marketing User, and System
Administrator
“Read” on entitlements

Change a case’s entitlement “Edit” on cases Standard User, Solution Manager, Contract
AND Manager, Marketing User, and System
Administrator
“Read” on entitlements

Create work orders with entitlements “Create” on work orders Standard User, Solution Manager, Contract
AND Manager, Marketing User, and System
Administrator
“Read” on entitlements

Change a work order’s entitlement “Edit” on work orders Standard User, Solution Manager, Contract
AND Manager, Marketing User, and System
Administrator
“Read” on entitlements

Verify or view entitlements “Read” on entitlements Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator

Create entitlements “Create” on entitlements None: enable the permission in a


permission set or custom profile

Change entitlements “Edit” on entitlements None: enable the permission in a


permission set or custom profile

View entitlement contacts “Read” on entitlement contacts Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator

Change entitlement contacts “Create” on entitlement contacts None: enable the permissions in a
AND permission set or custom profile

“Delete” on entitlement contacts

Verify or view service contracts “Read” on service contracts Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator

Create service contracts “Create” on service contracts None: enable the permission in a
permission set or custom profile

Change service contracts “Edit” on service contracts None: enable the permission in a
permission set or custom profile

14
Setting Up Entitlement Management Give Users Access to Entitlement Management

Users Who Will Need These Permissions Permissions Are Auto-Enabled on


These Standard Profiles
Verify or view contract line items “Read” on contract line items Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator

Add contract line items to service contracts “Edit” on service contracts None: enable the permissions in a
AND permission set or custom profile

“Create” on contract line items and “Read”


on products and price books

Change contract line items on service “Edit” on service contracts None: enable the permissions in a
contracts AND permission set or custom profile

“Edit” on contract line items and “Read” on


products and price books

Tip: If a standard profile doesn’t include a certain user permission, you can create a permission set and enable the permission
in it. Or, clone the standard profile and enable the permission in the custom profile.

2. Set field-level security.


Choose which entitlement management fields users can view and edit. Field-level security settings let you specify users’ access to
fields in several areas of the user interfaces:
• Detail and edit pages
• Related lists
• List views
• Reports
• Search results
• Email and mail merge templates
• Experiences
You can set field-level security from a permission set, profile, or a particular field.

Important: To let a user create cases from entitlements or change a case’s assigned entitlement, make the Entitlement
Name field on cases editable for their profile.

SEE ALSO:
Salesforce Help: Field-Level Security

15
Setting Up Entitlement Management Set Up an Entitlement Template

Set Up an Entitlement Template


Entitlement templates let you predefine terms of support that users can add to products.
EDITIONS
You can create entitlement templates for specific products so support agents can quickly add the
right entitlement whenever a customer purchases the product. For example, you can create Available in both: Salesforce
entitlement templates for web or phone support so agents can easily add entitlements to products Classic and Lightning
offered to customers. Experience

Note: In Lightning Experience, the contact related list isn’t available on Entitlements. Available in: Professional,
Enterprise, Performance,
Purchased or installed products are represented in Salesforce as assets. That means: Unlimited, and Developer
Editions with the Service
• A product (for example, “Laser Scanner”) is linked to an entitlement template
Cloud
• A corresponding asset (for example, the laser scanner purchased by ABC Labs) is linked to an
entitlement that was created from the entitlement template
USER PERMISSIONS
Note: Entitlement templates are only available if entitlements and products are enabled in
your org. To create entitlement
templates:
Tip: The Entitlement Management Trailhead module introduces you to common terms and • Manage Entitlements
walks you through the process of creating an entitlement template. And, it’s fun! To get
started, see Entitlement Management.
1. Add the Entitlement Templates related list to product page layouts.
2. Optionally, add the Type and Business Hours fields to the Entitlement Templates related list. This lets users view the type
of entitlement, such as Web or phone support, and any business hours that apply to the entitlement.
3. Create an entitlement template.
a. From Setup, enter Templates in the Quick Find box, then select Entitlement Templates.
b. Click New Template.
c. Enter any details:

Field Description
Entitlement Template Name The name of the entitlement template.
Use a descriptive name, like Phone Support. This helps
users better understand entitlement templates when they see
them on related lists for products.

Term (Days) The number of days the entitlement is in effect.


For example, if you want the entitlement template to entitle
all customers who purchase this product to 90 days of phone
support, enter 90.

Entitlement Process The entitlement process associated with the entitlement.

Per Incident Lets you limit the number of cases the entitlement supports.
The admin determines whether this field is visible.

Cases Per Entitlement The total number of cases the entitlement supports.
This field is only available if Per Incident is selected.

16
Setting Up Entitlement Management Automatically Add Entitlements to Cases from Web, Email,
and Experiences

Field Description
Business Hours The entitlement’s supported business hours.

Type The type of entitlement, such as Web or phone support.


Admins can customize this field’s values.

4. Click Save.
5. Add the entitlement template to a product.
a. Go to the product detail page.
b. Click Add Entitlement Template on the Entitlement Templates related list.
c. Select the entitlement template.
d. Click Insert Selected.
e. Click Done.
Now when a user creates an asset and links it to that product, the Entitlements related list on the asset includes an entitlement
created from the entitlement template. That way, support agents responding to a call about the asset can quickly see what kind of
support the customer is entitled to receive.

Automatically Add Entitlements to Cases from Web, Email, and Experiences


Entitlements don’t automatically apply to cases created using Web-to-Case, Email-to-Case, or
EDITIONS
experience. However, you can add entitlements to these features using Apex code.
When a case is created via Web-to-Case, Email-to-Case, or an experience, it isn’t automatically Available in both: Salesforce
associated with an entitlement. When a case’s Entitlement field is empty, this sample trigger Classic and Lightning
checks whether the case contact has an active entitlement. If the contact has an active entitlement, Experience
the entitlement is added to the case. If the contact doesn’t have an active entitlement, the trigger Available in: Professional,
then checks whether the case account has an active entitlement. If the case account has an active Enterprise, Performance,
entitlement, the entitlement is added to the case. The trigger helps ensure that cases are resolved Unlimited, and Developer
according to your customer support agreements. Editions with the Service
To define this case trigger in your Salesforce org: Cloud

1. From Setup, enter Case Triggers in the Quick Find box, then select Case Triggers.
2. Click New. USER PERMISSIONS

3. Copy the text below and paste it in the text field. To define Apex triggers:
• Author Apex
4. Click Save.

trigger DefaultEntitlement on Case (Before Insert, Before Update) {


Set<Id> contactIds = new Set<Id>();
Set<Id> acctIds = new Set<Id>();
for (Case c : Trigger.new) {
contactIds.add(c.ContactId);
acctIds.add(c.AccountId);
}
List <EntitlementContact> entlContacts =

17
Setting Up Entitlement Management Automatically Add Entitlements to Cases from Web, Email,
and Experiences

[Select e.EntitlementId,e.ContactId,e.Entitlement.AssetId
From EntitlementContact e
Where e.ContactId in :contactIds
And e.Entitlement.EndDate >= Today
And e.Entitlement.StartDate <= Today];
if(entlContacts.isEmpty()==false){
for(Case c : Trigger.new){
if(c.EntitlementId == null && c.ContactId != null){
for(EntitlementContact ec:entlContacts){
if(ec.ContactId==c.ContactId){
c.EntitlementId = ec.EntitlementId;
if(c.AssetId==null && ec.Entitlement.AssetId!=null)
c.AssetId=ec.Entitlement.AssetId;
break;
}
}
}
}
} else{
List <Entitlement> entls = [Select e.StartDate, e.Id, e.EndDate,
e.AccountId, e.AssetId
From Entitlement e
Where e.AccountId in :acctIds And e.EndDate >= Today
And e.StartDate <= Today];
if(entls.isEmpty()==false){
for(Case c : Trigger.new){
if(c.EntitlementId == null && c.AccountId != null){
for(Entitlement e:entls){
if(e.AccountId==c.AccountId){
c.EntitlementId = e.Id;
if(c.AssetId==null && e.AssetId!=null)
c.AssetId=e.AssetId;
break;
}
}
}
}
}
}
}

18
Setting Up Entitlement Management Set Up Service Contracts

Set Up Service Contracts


Service contracts are agreements between you and your customers for a type of customer support.
EDITIONS
Service contracts can represent different kinds of customer support, such as subscriptions or service
level agreements (SLAs). Available in both: Salesforce
Note: Entitlements must be enabled in your org for you to set up service contracts. Classic and Lightning
Experience
From the object management settings for service contracts:
Available in: Professional,
1. Customize service contract fields. Enterprise, Performance,
This lets you control what information users add to service contracts. You can create custom Unlimited, and Developer
service contract fields that are specific to your industry or support process. Editions with the Service
Cloud
2. Customize service contract page layouts.
This lets you specify which fields and related lists users see on service contracts. Consider making USER PERMISSIONS
the following customizations:
• Add the Status Icon field so users can easily see whether the service contract is active, To set up service contracts:
expired, or inactive. • Manage Entitlements

• To let users make one service contract the parent of another, add the Parent Service AND
Contract field and Child Service Contracts related list. You can also add the read-only Customize Application
Root Service Contract field so users can see the top-level service contract in a
service contract hierarchy. A service contract hierarchy can contain up to 10,000 service
contracts.

3. Set field-level security on service contract fields.


This lets you choose which service contract fields users can access.

4. Set field history tracking on service contracts.


This lets you see when field values were changed. Changes are listed in the Service Contract History related list on service contracts.
From the object management settings for service contracts, go to the fields section, and then click Set History Tracking.

5. Make the Service Contracts tab visible in Salesforce and any custom apps.
The Service Contracts tab is where users create and edit service contracts and contract line items. Add the tab to an app or instruct
your users to add it to an existing tab set in Salesforce. Users need the “Read” permission on service contracts to see the Service
Contracts tab.

6. Add the Service Contracts related list to account and contact page layouts.
This lets users create, update, and verify service contracts from accounts and contacts.

19
Setting Up Entitlement Management Add Contract Line Items to Service Contracts

Add Contract Line Items to Service Contracts


Set up contract line items to be able to specify which products a service contract covers. Contract
EDITIONS
line items only display to users on the Contract Line Items related list on service contracts (not on
contracts!). You can only use contract line items if your Salesforce org uses products. Available in both: Salesforce
Note: Entitlements must be enabled in your org for you to set up contract line items. Classic and Lightning
Experience
From the object management settings for contract line items:
Available in: Professional,
1. Customize contract line item fields. Enterprise, Performance,
This lets you control what information users add to contract line items. You can create custom Unlimited, and Developer
contract line item fields that are specific to your industry or support process. Editions with the Service
Cloud
2. Customize contract line item page layouts.
This lets you specify which fields and related lists users see on contract line items. Consider USER PERMISSIONS
making the following customizations:
• Add the Status Icon field so users can easily see whether the line item is active, To set up service contracts
and contract line items with
expired, or inactive.
entitlements:
• To let users make one line item the parent of another, add the Parent Contract • Manage Entitlements
Line Item field and Child Contract Line Items related list. You can also add the read-only
AND
Root Contract Line Item field, which lists the top-level line item in a contract
Customize Application
line item hierarchy. A contract line item hierarchy can contain up to 10,000 line items.

3. Customize other objects’ page layouts.


This lets you choose how users can associate contract line items with other records. Consider making the following customizations:
• (Required) Add the Contract Line Items related list to service contract page layouts. This lets users create, edit, and delete contract
line items from service contracts.
• Add the Contract Line Items related list to asset layouts. This lets users view and change associations between assets and contract
line items.
• Add the Contract Line Item lookup field to entitlement page layouts. This lets users associate a line item with a particular
entitlement.

4. Set field-level security on contract line items.


This lets you choose which contract line item fields users can access.

5. Set field history tracking on contract line items.


This lets you see when field values were changed. Changes are listed in the Contract Line Item History related list on contract line
items. From the object management settings for contract line items, go to the fields section, and then click Set History Tracking.

Note: Schedules aren't available for contract line items, and experience users can’t access them.

20
Setting Up Entitlement Management Set Up Entitlement Management in Experiences

Set Up Entitlement Management in Experiences


Add entitlement management to your experiences to let customers or partners view their
EDITIONS
entitlements and service contracts.
Follow these steps to expose entitlements or service contracts in an experience. These objects are Available in: Salesforce
supported only in experiences built using Salesforce Tabs + Visualforce, and can’t be added to Classic
Lightning Experiences.
Experiences are available in:
1. Update user profiles. Enterprise, Performance,
a. Clone the Customer Experience User, Customer Experience Plus User, or Partner Experience Unlimited, and Developer
Editions with the Service
User profiles and enable the “Read” permission on entitlements and/or service contracts.
Cloud
Note: Remember to click Edit Profiles at the bottom of the detail page to activate
Entitlement Management is
the new profiles.
available in Professional,
b. Optionally, on the profiles of delegated experience moderators, enable the “Create” and Enterprise, Performance,
Unlimited, and Developer
“Delete” permissions on entitlement contacts. This lets moderators update entitlement
Editions with the Service
contacts.
Cloud
c. Verify that the tab visibility for the Entitlements and/or Service Contracts tabs is Default On.

2. Add the Entitlements and/or Service Contracts tabs to the experience. USER PERMISSIONS
3. Add the Entitlement Name field to case and work order page layouts assigned to To create, customize, or
experience users. activate a experience:
This lets users add entitlements to cases and work orders. • Create and Set Up
experiences AND is a
Note: To avoid exposing your internal support processes, we recommend not adding member of the
the following fields to case and work order page layouts for experience users: experience they’re
updating
• Entitlement Process Start Time
To set up entitlement
• Entitlement Process End Time
management:
• Stopped • Manage Entitlements
• Stopped Since To assign user licenses:
• Manage Internal Users
4. Optionally, add the Entitlements related list to account and contact page layouts assigned to
experience moderators. This lets moderators create cases automatically associated with the
right entitlements.

21
Setting Up Entitlement Management Report on Entitlements

Report on Entitlements
Use custom report types to define report criteria that users can use to run and create reports on
EDITIONS
entitlements, service contracts, and contract line items.
After you set up entitlement management, your Salesforce org automatically includes the following Available in both: Salesforce
custom report types: Classic and Lightning
Experience
Custom Report Type Description Report Type Location Available in: Professional,
Accounts with entitlements Lists accounts with Accounts & Contacts Enterprise, Performance,
with contacts entitlements that include Unlimited, and Developer
contacts (named callers). Editions with the Service
Cloud
Service contracts with contract Lists service contracts with Customer Support Reports
line items contract line items (products).
USER PERMISSIONS
Service contracts with Lists service contracts with Customer Support Reports
entitlements entitlements. To create or update
entitlement management
Cases with milestones Lists cases with milestones. Customer Support Reports custom report types:
• Manage Custom Report
Note: This report type Types
can’t be customized.
To create and run reports
based on entitlement
management custom report
To customize entitlement management custom report types: types:
• Create and Customize
1. From Setup, enter Report Types in the Quick Find box, then select Report Types. Reports
2. From the All Custom Report Types page, you can:
• Define a new custom report type. You can't select entitlements as a primary object.
• Update a custom report type's name, description, report type category, and deployment status.
• Delete a custom report type.

Important: When you delete a custom report type, all the data stored in the custom report type is deleted and cannot
be restored from the Recycle Bin.

Tip: If you want to view a list of work orders with milestones in your org, use the Object Milestones custom report type to create
a work order report.

22
ENFORCING SERVICE LEVELS

Set Up Milestones
Milestones represent required steps in your support management process, like first response times.
EDITIONS
Set up and customize milestones in your org so they can be added to entitlement processes and
applied to support records like cases and work orders. Available in both: Salesforce
Before setting up milestones, make sure that you understand where milestones can appear. See Classic and Lightning
Where Can I View Milestones? Experience

Available in: Professional,


1. Customize Milestone Page Layouts Enterprise, Performance,
Customize your page layouts for milestones to help support agents and supervisors track support Unlimited, and Developer
progress. Editions with the Service
Cloud
2. Enable Milestone Feed Items
Help support agents monitor support activity by enabling milestone feed items. This option
posts a notification to the feed and the record owner’s profile page when a milestone is completed or violated.
3. Set Up the Milestone Tracker
The milestone tracker gives support agents a complete view of upcoming and completed milestones, and displays countdowns for
active and overdue milestones. Add it to the case feed, work order feed, a custom page, or the Service Console.
4. Limit User Updates to Milestones
Add validation rules to milestones to prevent users from updating milestones unless certain criteria are met.
5. Create a Milestone
Milestones represent required steps in your support process, such as case resolution time and first response time. You create master
milestones in your org and then add them to entitlement processes to enforce different service levels on support records, like cases
and work orders.
6. Auto-Complete Case Milestones
Create an Apex trigger that automatically marks milestones Completed on cases that match unique criteria. In your trigger, define
which events and related case criteria must be satisfied for a milestone to be marked Completed. You can implement a similar trigger
to auto-complete work order milestones.

23
Enforcing Service Levels Customize Milestone Page Layouts

Customize Milestone Page Layouts


Customize your page layouts for milestones to help support agents and supervisors track support
EDITIONS
progress.
1. Add any of the following fields to case and object milestone detail pages. Available in both: Salesforce
Use Setup in Salesforce Classic: Classic and Lightning
Experience
• To edit case milestone detail page layouts, from Setup, enter Case Milestones in
the Quick Find box, then click Page Layouts under Case Milestones. Available in: Professional,
Enterprise, Performance,
• To edit object milestone detail page layouts (which apply to work order milestones), from
Unlimited, and Developer
Setup, enter Object Milestones in the Quick Find box, then click Page Layouts
Editions with the Service
under Object Milestones. Cloud

Field Description
USER PERMISSIONS
Actual Elapsed Time The amount of time that it took to complete
a milestone. To create and edit page
layouts:
(Elapsed Time) – (Stopped Time) = (Actual
• Customize Application
Elapsed Time)
To create milestones:
Note: If you want to be able to display • Manage Entitlements
this field, Enable stopped time and
AND
actual elapsed time must be selected
Customize Application
on the Entitlement Settings page.
To enable the Stopped Time
Completed Icon that indicates milestone completion. and Actual Elapsed Time
fields:
Completion Date The date and time the milestone was
• Manage Entitlements
completed.

Elapsed Time The time it took to complete a milestone.


Automatically calculated to include any
business hours on the support record. Elapsed
time is calculated only after the Completion
Date field is populated.

Entitlement Process The entitlement process that is being used for


the record. Entitlement processes are optional.

Start Date The date and time that the milestone tracking
started.

Stopped Time How long an agent has been blocked from


completing a milestone. For example, an
agent might wait for a customer to reply with
more information.

Note: Enable stopped time and


actual elapsed time must be selected
on the Entitlement Settings page. Then
give your agents access to the field
through field-level security.

24
Enforcing Service Levels Customize Milestone Page Layouts

Field Description
Target Date The date and time to complete the milestone.

Target Response The time to complete the milestone. Automatically calculated


to include any business hours on the support record.

Time Remaining The time that remains before a milestone violation. Automatically
calculated to include any business hours on the support record.

Time Since Target The time that has elapsed since a milestone violation.
Automatically calculated to include any business hours on the
support record.

Violation Icon that indicates a milestone violation.

2. Add milestone elements to case and work order page layouts.


Use Setup in Salesforce Classic or Lightning Experience.
a. Add milestone fields.

Field Description
Milestone Status The milestone’s status.

Milestone Status Icon An icon that corresponds to the milestone status:


• Compliant
• Open Violation
• Closed Violation

Note: In Lightning Experience, the Milestone Status


Icon field on cases isn’t available.

Entitlement Process Start Time The time the record enters the entitlement process.

Entitlement Process End Time The time the record exits the entitlement process.

b. Add the Case Milestones or Object Milestones related list to display the record’s milestones.
In Lightning Experience, the Case Milestones related list doesn't support the Business Hours field. Only certain fields in the Object
Milestones related list are supported.

25
Enforcing Service Levels Enable Milestone Feed Items

Enable Milestone Feed Items


Help support agents monitor support activity by enabling milestone feed items. This option posts
EDITIONS
a notification to the feed and the record owner’s profile page when a milestone is completed or
violated. Available in both: Salesforce
Important: Classic and Lightning
Experience
• Chatter and entitlements must be enabled in your org.
Available in: Professional,
• Enabling milestone feed items doesn’t create feed items for milestones that have already
Enterprise, Performance,
been completed or violated.
Unlimited, and Developer
• If you add entitlement management to an experience, enabling milestone feed items Editions with the Service
also makes feed items visible to experience users. Cloud

1. From Setup, enter Entitlement Settings in the Quick Find box, then select
Entitlement Settings. USER PERMISSIONS
2. Select Enable milestone feed items. This enables feed items for both cases and work orders. To enable milestone feed
When milestones feed items are posted, agents can click the milestone name to view its details. items:
• Manage Entitlements

Set Up the Milestone Tracker


The milestone tracker gives support agents a complete view of upcoming and completed milestones,
EDITIONS
and displays countdowns for active and overdue milestones. Add it to the case feed, work order
feed, a custom page, or the Service Console. Available in both: Salesforce
Often, support agents’ performance is measured by how often they meet milestones. The milestone Classic and Lightning
tracker helps agents be prepared for support deadlines by showing them: Experience

• The time remaining until an active milestone reaches its Target Date Available in: Professional,
• The time passed since an overdue milestone’s Target Date Enterprise, Performance,
Unlimited, and Developer
• A list of upcoming milestones
Editions with the Service
• A list of completed milestones Cloud
When a milestone is in progress, the milestone is represented by a green circle. The circle winds
down clockwise as time elapses. The remaining time is shown in the center of the circle. When the USER PERMISSIONS
time to complete the milestone expires, the circle turns red. The amount of time that the milestone
is overdue is shown in the center of the circle. If more than 24 hours remain on a milestone, the To create and edit page
countdown displays in days (for example, 1d). When fewer than 24 hours remain, the countdown layouts:
format switches to hours/minutes/seconds. • Customize Application

In Salesforce Classic To assign page layouts:


• Manage Users
To set how time displays in
the milestone tracker:
• Manage Entitlements

26
Enforcing Service Levels Set Up the Milestone Tracker

In Lightning Experience

1. Expose the milestone tracker to support agents.


In Salesforce Classic, you can:
• Add it to the case feed. If you plan to use milestones on work orders, follow the same steps to add the tracker to the work order
feed.
a. From the object management settings for cases, go to Page Layouts.
b. In the Case Page Layouts section, click Edit, and then click Feed View in the page layout editor.
c. In the Other Tools and Components section, select the Milestone Tracker and specify where on the page you want it to
appear.
d. Click Save.

• Add it to a custom Visualforce page using the <apex:milestoneTracker> component.


• Add it as a component to the Service Console.
In Lightning Experience, go to Lightning App Builder and add the Milestones component. See Create and Configure Lightning
Experience Record Pages . In the Lightning App Builder, you can opt to hide the Mark Completed link from your agents.

2. Set how the milestone tracker displays time remaining or time overdue on milestones.

Note: By default, the tracker displays actual hours.

To make it display time remaining or time overdue in business hours, follow these steps.
a. From Setup, enter Entitlement Settings in the Quick Find box, then select Entitlement Settings.
b. In the Milestone Tracker section, deselect Show the time remaining in actual hours, not business hours.
c. Click Save.

Example: Suppose an active milestone’s business hours are 9 a.m. to 5 p.m. Right now, it’s 4:30 p.m. and the milestone’s Target
Date is 11:00 a.m. tomorrow.
• If the milestone tracker shows the remaining time in business hours (the default setting), it displays a countdown of 2 hours
and 30 minutes (4:30 to 5 p.m. today and 9 to 11 a.m. tomorrow).
• If the milestone tracker shows the remaining time in actual hours, it displays a countdown of 18 hours and 30 minutes (4:30
p.m. today to 11:00 a.m. tomorrow).

27
Enforcing Service Levels Limit User Updates to Milestones

Limit User Updates to Milestones


Add validation rules to milestones to prevent users from updating milestones unless certain criteria
EDITIONS
are met.

Note: To create validations rules, use Setup in Salesforce Classic. Don’t worry, your validation Available in both: Salesforce
rules still apply in Lightning Experience. Classic and Lightning
Experience
1. From the object management settings for case milestones, go to Validation Rules.
Available in: Professional,
2. Click New.
Enterprise, Performance,
3. Enter the rule details. Unlimited, and Developer
Editions with the Service
4. Save your changes.
Cloud
Example: This validation rule prevents users from selecting milestone completion dates
that are earlier than the case creation date. You can create a similar validation rule for work
USER PERMISSIONS
orders from the object management settings for Object Milestones in Setup.
To define or change field
Field Value validation rules:
• Customize Application
Rule Name milestone_completion_date
To create or edit milestones:
Description A milestone’s completion date • Manage Entitlements
must be later than the case
creation date.

Error Condition Formula CompletionDate <


Case.CreatedDate

Error Message Error: The milestone


completion date must be later
than the case creation date.

Error Location Top of Page

28
Enforcing Service Levels Create a Milestone

Create a Milestone
Milestones represent required steps in your support process, such as case resolution time and first
EDITIONS
response time. You create master milestones in your org and then add them to entitlement processes
to enforce different service levels on support records, like cases and work orders. Available in both: Salesforce
Tip: The Entitlement Management Trailhead module introduces you to common terms and Classic and Lightning
Experience
walks you through the process of creating milestones. And it’s fun! To get started, see
Entitlement Management. Available in: Professional,
1. From Setup, enter Milestones in the Quick Find box, then select Milestones under Enterprise, Performance,
Entitlement Management. Unlimited, and Developer
Editions with the Service
2. Click New Milestone. Cloud
3. Enter a name and description. Try to name milestones after common support tasks, like “First
Response Time” or “Resolution Time.” Descriptive names help users understand milestones
USER PERMISSIONS
when they see them on cases, work orders, or entitlement processes.
4. Select a recurrence type. To create milestones:
• Manage Entitlements
Recurrence Type Description Example
No Recurrence The milestone occurs only First Response
once on the record. Resolution Time

Independent The milestone occurs Response Time


whenever the milestone
criteria are met on the record.

Sequential The milestone occurs on Customer Contact Made


repeat whenever the
milestone criteria are met on
the record.

5. Click Save.
You can’t apply a milestone to a record by itself. It must be part of an entitlement process. So after you create your milestone, add it to
an entitlement process.

Tip: You can add validation rules to a milestone so that users can update a milestone only if it meets specific standards. For details,
see Limit User Updates to Milestones.

29
Enforcing Service Levels Auto-Complete Case Milestones

Auto-Complete Case Milestones


Create an Apex trigger that automatically marks milestones Completed on cases that match unique
EDITIONS
criteria. In your trigger, define which events and related case criteria must be satisfied for a milestone
to be marked Completed. You can implement a similar trigger to auto-complete work order Available in both: Salesforce
milestones. Classic and Lightning
Experience
Tip: In Lightning Experience, agents can click the Mark Completed link in the Milestones
component to mark a milestone completed. It’s not automation, but it is easy. For more Available in: Professional,
information, see Set Up the Milestone Tracker. Enterprise, Performance,
The following triggers mark specific types of milestones Completed when the case they are on Unlimited, and Developer
meets unique criteria. We’ve also provided a milestone utility Apex class and accompanying unit Editions with the Service
Cloud
tests. Define the milestone utility class before you use any of the triggers.
Milestone Utility Apex Class
Apex classes reduce the size of your triggers and make it easier to reuse and maintain Apex USER PERMISSIONS
code. To define this Apex class in your org:
To define Apex triggers and
1. From Setup, enter Apex Classes in the Quick Find box, then click Apex Classes. classes:
• Author Apex
2. Click New.
3. Copy the class text and paste it into the text field.
4. Click Save.
public class MilestoneUtils {
public static void completeMilestone(List<Id> caseIds,
String milestoneName, DateTime complDate) {
List<CaseMilestone> cmsToUpdate = [select Id, completionDate
from CaseMilestone cm
where caseId in :caseIds and cm.MilestoneType.Name=:milestoneName
and completionDate = null limit 1];
if (cmsToUpdate.isEmpty() == false){
for (CaseMilestone cm : cmsToUpdate){
cm.completionDate = complDate;
}
update cmsToUpdate;
}
}
}

Apex Class Unit Test


You can set up Apex unit tests in the developer console to scan your code for any issues.
/**
* This class contains unit tests for validating the behavior of Apex classes
* and triggers.
*
* Unit tests are class methods that verify whether a particular piece
* of code is working properly. Unit test methods take no arguments,
* commit no data to the database, and are flagged with the testMethod
* keyword in the method definition.
*
* All test methods in an organization are executed whenever Apex code is deployed
* to a production organization to confirm correctness, ensure code

30
Enforcing Service Levels Auto-Complete Case Milestones

* coverage, and prevent regressions. All Apex classes are


* required to have at least 75% code coverage in order to be deployed
* to a production organization. In addition, all triggers must have some code coverage.
*
* The @isTest class annotation indicates this class only contains test
* methods. Classes defined with the @isTest annotation do not count against
* the organization size limit for all Apex scripts.
*
* See the Apex Language Reference for more information about Testing and Code Coverage.
*/
@isTest
private class MilestoneTest {

static testMethod void TestCompleteMilestoneCase(){

List<Account> acts = new List<Account>();


Account myAcc = new Account(Name='TestAct', phone='1001231234');
acts.add(myAcc);

Account busAcc = new Account(Name = 'TestForMS', phone='4567890999');


acts.add(busAcc);
insert acts;
Contact cont = new Contact(FirstName = 'Test', LastName = 'LastName', phone='4567890999',
accountid = busAcc.id);
insert(cont);

Id contactId = cont.Id;

Entitlement entl = new Entitlement(Name='TestEntitlement', AccountId=busAcc.Id);


insert entl;

String entlId;
if (entl != null)
entlId = entl.Id;

List<Case> cases = new List<Case>{};


if (entlId != null){
Case c = new Case(Subject = 'Test Case with Entitlement ',
EntitlementId = entlId, ContactId = contactId);
cases.add(c);
}
if (cases.isEmpty()==false){
insert cases;
List<Id> caseIds = new List<Id>();
for (Case cL : cases){
caseIds.add(cL.Id);
}
milestoneUtils.completeMilestone(caseIds, 'First Response', System.now());
}
}

static testMethod void testCompleteMilestoneViaCase(){

List<Account> acts = new List<Account>();

31
Enforcing Service Levels Auto-Complete Case Milestones

Account myAcc = new Account(Name='TestAct', phone='1001231234');


acts.add(myAcc);

Account busAcc = new Account(Name = 'TestForMS', phone='4567890999');


acts.add(busAcc);
insert acts;
Contact cont = new Contact(FirstName = 'Test', LastName = 'LastName', phone='4567890999',
accountid = busAcc.id);
insert(cont);

Id contactId = cont.Id;

Entitlement entl = new Entitlement(Name='TestEntitlement', AccountId=busAcc.Id);


insert entl;

String entlId;
if (entl != null)
entlId = entl.Id;

List<Case> cases = new List<Case>{};


for(Integer i = 0; i < 1; i++){
Case c = new Case(Subject = 'Test Case ' + i);
cases.add(c);
if (entlId != null){
c = new Case(Subject = 'Test Case with Entitlement ' + i,
EntitlementId = entlId);
cases.add(c);
}
}
}
}

Sample Trigger 1
You can create a milestone named Resolution Time that requires cases to be closed within a certain length of time. It’s a great way
to enforce case resolution terms in SLAs. This sample case trigger marks each Resolution Time milestone Completed when its case
is closed. This way, the support agent doesn’t have to manually mark the milestone completed after closing the case.

Note: This trigger references the milestone utility test class, so be sure to define the test class first.

To define this trigger in your org:


1. From Setup, enter Case Triggers in the Quick Find box, then click Case Triggers.
2. Click New.
3. Copy the trigger text and paste it into the text field.
4. ClickSave.
trigger CompleteResolutionTimeMilestone on Case (after update) {
if (UserInfo.getUserType() == 'Standard'){
DateTime completionDate = System.now();
List<Id> updateCases = new List<Id>();
for (Case c : Trigger.new){
if (((c.isClosed == true)||(c.Status == 'Closed'))&&((c.SlaStartDate

<= completionDate)&&(c.SlaExitDate == null)))

32
Enforcing Service Levels Auto-Complete Case Milestones

updateCases.add(c.Id);
}
if (updateCases.isEmpty() == false)
milestoneUtils.completeMilestone(updateCases, 'Resolution Time', completionDate);

}
}

Sample Trigger 2
You can create a milestone named First Response that requires agents to get in touch with a case contact within X minutes or hours
of the case’s creation. It’s a nice way to ensure that your support team is communicating with case contacts as soon as possible. This
sample email trigger marks a First Response milestone Completed when an email is sent to the case contact. That way, the support
agent doesn’t have to manually mark the First Response milestone Completed after they email the case contact.

Note: This trigger references the milestone utility test class, so be sure to define the test class first.

To define this trigger in your org:


1. From Setup, enter Email Triggers in the Quick Find box, then click Email Triggers.
2. Click New.
3. Copy the trigger text and paste it into the text field.
4. ClickSave.
trigger CompleteFirstResponseEmail on EmailMessage (after insert) {
if (UserInfo.getUserType() == 'Standard'){
DateTime completionDate = System.now();
Map<Id, String> emIds = new Map<Id, String>();
for (EmailMessage em : Trigger.new){
if(em.Incoming == false)
emIds.put(em.ParentId, em.ToAddress);
}
if (emIds.isEmpty() == false){
Set <Id> emCaseIds = new Set<Id>();
emCaseIds = emIds.keySet();
List<Case> caseList = [Select c.Id, c.ContactId, c.Contact.Email,
c.OwnerId, c.Status,
c.EntitlementId,
c.SlaStartDate, c.SlaExitDate
From Case c where c.Id IN :emCaseIds];
if (caseList.isEmpty()==false){
List<Id> updateCases = new List<Id>();
for (Case caseObj:caseList) {
if ((emIds.get(caseObj.Id)==caseObj.Contact.Email)&&
(caseObj.Status == 'In Progress')&&
(caseObj.EntitlementId != null)&&
(caseObj.SlaStartDate <= completionDate)&&
(caseObj.SlaStartDate != null)&&
(caseObj.SlaExitDate == null))
updateCases.add(caseObj.Id);
}
if(updateCases.isEmpty() == false)
milestoneUtils.completeMilestone(updateCases,
'First Response', completionDate);
}

33
Enforcing Service Levels Auto-Complete Case Milestones

}
}
}

Sample Trigger 3
While the previous trigger dealt with email messages, this sample case comment trigger marks a First Response milestone Completed
when a public comment is made on the case. You can use it if a public case comment is a valid first response in your support terms.

Note: This trigger references the milestone utility test class, so be sure to define the test class first.

To define this trigger in your org:


1. From Setup, enter Case Comment Triggers in the Quick Find box, then click Case Comment Triggers.
2. Click New.
3. Copy the trigger text and paste it into the text field.
4. Click Save.
trigger CompleteFirstResponseCaseComment on CaseComment (after insert) {
if (UserInfo.getUserType() == 'Standard'){
DateTime completionDate = System.now();
List<Id> caseIds = new List<Id>();
for (CaseComment cc : Trigger.new){
if(cc.IsPublished == true)
caseIds.add(cc.ParentId);
}
if (caseIds.isEmpty() == false){
List<Case> caseList = [Select c.Id, c.ContactId, c.Contact.Email,
c.OwnerId, c.Status,
c.EntitlementId, c.SlaStartDate,
c.SlaExitDate
From Case c
Where c.Id IN :caseIds];
if (caseList.isEmpty() == false){
List<Id> updateCases = new List<Id>();
for (Case caseObj:caseList) {
if ((caseObj.Status == 'In Progress')&&
(caseObj.EntitlementId != null)&&
(caseObj.SlaStartDate <= completionDate)&&
(caseObj.SlaStartDate != null)&&
(caseObj.SlaExitDate == null))
updateCases.add(caseObj.Id);
}
if(updateCases.isEmpty() == false)
milestoneUtils.completeMilestone(updateCases,
'First Response', completionDate);
}
}
}
}

34
Enforcing Service Levels Set Up Entitlement Processes

Set Up Entitlement Processes


Entitlement processes are timelines that include all of the steps (milestones) that your support team
EDITIONS
must complete to resolve cases or work orders. Set up an entitlement process to apply to
entitlements in your Salesforce org. Available in both: Salesforce
Classic and Lightning
1. Create an Entitlement Process Experience
Create an entitlement process to give support agents a timeline of required steps to follow Available in: Professional,
when solving support records. Each process includes the logic necessary to determine how to Enterprise, Performance,
enforce the correct service level for your customers. Unlimited, and Developer
2. Customize Entitlement Process Fields Editions with the Service
Cloud
If you intend to use entitlement processes in your Salesforce org, customize page layouts to
ensure that support agents can see and interact with entitlement processes.
3. Add a Milestone to an Entitlement Process
Add milestones to entitlement processes to define required steps in your support process.
4. Add a Milestone Action to an Entitlement Process
Milestone actions are time-dependent workflow actions that occur at every step (milestone) in an entitlement process. After you
create an entitlement process and add milestones to it, add milestone actions to the milestones.
5. Apply an Entitlement Process to an Entitlement
You’ve created an entitlement process; now it’s time to use it! Apply an entitlement process to a customer’s entitlement so all support
records linked to the entitlement use that process.

Create an Entitlement Process


Create an entitlement process to give support agents a timeline of required steps to follow when
EDITIONS
solving support records. Each process includes the logic necessary to determine how to enforce
the correct service level for your customers. Available in both: Salesforce
You must create milestones before you create an entitlement process. Classic and Lightning
Experience
Tip: The Entitlement Management Trailhead module introduces you to common terms and
walks you through creating an entitlement process. And, it’s fun! To get started, see Entitlement Available in: Professional,
Management. Enterprise, Performance,
Unlimited, and Developer
1. From Setup, enter Entitlement Processes in the Quick Find box, then select Editions with the Service
Entitlement Processes under Entitlement Management. Cloud
2. Click New Entitlement Process.
3. Select an entitlement process type. If you intend to use the process to enforce milestones on USER PERMISSIONS
cases, select Case. If you intend to use the process to enforce milestones on work orders, select
Work Order. (If work orders aren’t enabled in your org, you only see the Case option.) To view entitlements:
• Read on entitlements
Note: If you’re using entitlement processes, manage customers’ work orders and cases
To change entitlements:
on separate entitlements. This is because an entitlement process only runs on records • Edit on entitlements
that match its type. For example, when a Case entitlement process is applied to an
entitlement, the process only runs on cases associated with the entitlement. If a work To create and update
entitlement processes:
order is also associated with the entitlement, the process won’t run on the work order.
• Manage Entitlements
4. Enter a name—for example, Standard Support Process—and a description.

35
Enforcing Service Levels Create an Entitlement Process

5. If you want to enable the process, select Active.

Tip: We recommend waiting to activate an entitlement process until you add milestone actions to it. You can’t update or
delete milestone actions on a process after it’s activated and applied to a record.

6. Optionally, if entitlement versioning is enabled, select Default Version to make this version of the entitlement process the default.
7. Choose the criteria for records to enter and exit the entitlement process.

Field Description More Actions to Take?


Record* enters the process Based on record created date No
Select if records should enter the process
when they’re created.

Based on a custom date/time field on Yes, a drop-down list displays for selecting
the record the custom date/time. You can only
Select if you want the value of a custom choose a custom date/time, not a custom
date/time field on the record to determine date.
when the record enters the process.

Record exits the process Based on when record is closed No


Select if records should exit the process
when they're closed.

Based on custom criteria Yes, select one of the following:


Select if records should exit the process • Choose criteria are met and
based on criteria you define. select the filter criteria that a record
must meet for it to exit the process.
For example, set a case filter to
Priority equals Low if you
want cases with the Priority field
marked Low to exit the process.
Choose formula evaluates
to true and enter a formula that
returns a value of “True” or “False.”
Salesforce triggers the rule if the
formula returns “True.”

• Choose formula evaluates


to true and enter a formula that
returns a value of “True” or “False.”
Records exit the process if the formula
returns “True.” For example, the
formula (Case: Priority
equals Low) AND(Case:
Case Origin equals
Email, Web) moves cases out of
the process if their Priority field

36
Enforcing Service Levels Customize Entitlement Process Fields

Field Description More Actions to Take?


is Low and the Case Origin field
is marked Email or Web.

*The field names you see will reflect the entitlement process type you selected.

8. Optionally, choose the business hours you’d like to apply to the entitlement process. The business hours you set here calculate the
Target Date for all the milestones on this entitlement process. To learn more, see How Business Hours Work in Entitlement Management.
9. Save your changes.

Important: All users, even those without the “View Setup and Configuration” user permission, can view entitlement processes
via the API.

Customize Entitlement Process Fields


If you intend to use entitlement processes in your Salesforce org, customize page layouts to ensure
EDITIONS
that support agents can see and interact with entitlement processes.
1. Add these fields to case and work order page layouts. Available in both: Salesforce
Classic and Lightning
Field Description Experience

Timeline (available only on case page How far along a case is to reaching an Available in: Professional,
layouts) entitlement process’s milestones. You can click Enterprise, Performance,
or hover your mouse pointer over each Unlimited, and Developer
milestone to view its details. These icons Editions with the Service
represent milestones: Cloud


USER PERMISSIONS
Completed milestone
• To edit page layouts:
• Customize Application

Violated milestone

You can drag the Handle icon ( ) along the


Timeline Zoom tool to view past and future
milestones. If an entitlement process applies
to the case, this field appears.

Stopped Lets you stop an entitlement process on a


record, which might be necessary if you’re
waiting for a customer’s response.

Tip: If you want to use this feature,


give your agents access to the field
through field-level security.
If a case is stopped and a user doesn’t
have access to the Stopped field, the

37
Enforcing Service Levels Add a Milestone to an Entitlement Process

Field Description

Case Milestone component in Lightning Experience


continues to track time for them, even though the timer
is paused.
Until the Stopped field is updated (unpaused), each time
the user refreshes the case record, the milestone timer
restarts from the current local time. If this is happening,
the user might not have access to the Stopped Since field.
Make sure that this field is also added and available to
your agents so that the time remains paused from the
time it was Stopped last.
Don’t confuse your users; give them access to the Stopped
and Stopped Since fields.

Stopped Since The date and time the entitlement process was stopped on the
record.

Tip: If you want to use the Stopped feature, make sure


that the Stopped Since field is also added to the page
layout and that your agents have access to this field
through field-level security.

2. Save your changes.

Add a Milestone to an Entitlement Process


Add milestones to entitlement processes to define required steps in your support process.
EDITIONS
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes. Available in both: Salesforce
Classic and Lightning
2. Click the name of an entitlement process.
Experience
3. If you’re using versioning, click the name of the entitlement process again under Entitlement
Process Versions. Available in: Professional,
Enterprise, Performance,
4. Click New on the Milestones related list. Unlimited, and Developer
5. Choose the milestone. Editions with the Service
Cloud
6. In Time Trigger (Minutes), enter the number of minutes in which users must
complete the milestone before it triggers an action.
Or, if you’d like the trigger time for the milestone to be calculated dynamically based on the USER PERMISSIONS
milestone type and properties of the case or work order, click Enable Apex Class for the Time
To add milestones to
Trigger (Minutes). entitlement processes:
Note: You must have a custom Apex class that implements the • Manage Entitlements
Support.MilestoneTriggerTimeCalculator Apex interface to use this
option.

38
Enforcing Service Levels Add a Milestone to an Entitlement Process

7. If you selected Enable Apex Class for the Time Trigger (Minutes), use the lookup to specify an Apex class for the dynamically
calculated milestone.
8. Choose when the milestone starts:

Select To Use If
Milestone Criteria Calculate the milestone Target Date A milestone’s Target Date is based
when the milestone is applied to a support on when it’s applied to a record. Use if the
record (matches the record criteria). milestone is recurring.

Note: An entitlement process


usually starts when the record is
created, but its milestones aren’t
always applied right away.

Entitlement Process Calculate the milestone Target Date A milestone's Target Date is based
when the entitlement process starts (by on the start of the entitlement process. For
default, when a support record is created). example, first response and resolution
times on a case always calculate their
Target Date when the entitlement
process starts.

9. Optionally, select the business hours that you want to apply to the Target Date calculation for this milestone. If you don’t specify
business hours for the milestone, then the Entitlement Process business hours are used. If neither are specified, then the business
hours on the case or work order are used.
10. Specify the order in which Salesforce should process the milestones. This applies to situations where a support record matches the
criteria of multiple milestones at the same time.
11. Enter the criteria a record must match for the milestone to apply to it:
• Choose criteria are met and select the filter criteria that a record must meet for a milestone to apply to it. For example,
set a case filter to Priority equals High if you want the milestone to apply to cases with the Priority field marked
High.
Choose formula evaluates to true and enter a formula that returns a value of “True” or “False.” Salesforce triggers
the rule if the formula returns “True.”

• Choose formula evaluates to true and enter a formula that returns a value of “True” or “False.” The milestone
applies to records if the formula returns “True.” For example, the formula (Case: Priority equals High) AND
(Case: Case Origin equals Email, Web) applies the milestone to cases where the Priority field is High
and the Case Origin field is marked Email or Web. You can’t use the Case Owner field in formulas.

12. Click Save.

Note: Milestones are measured in minutes and seconds, but their start and end times are only accurate to the minute. For example,
suppose a milestone is triggered at 11:10:40 a.m. and the time to complete the milestone is 10 minutes. In this case, the milestone
target time is 11:20:00 am, not 11:20:40. As a result, the remaining time for the agent to complete the milestone is 9 minutes and
20 seconds, not the full 10 minutes.

39
Enforcing Service Levels Add a Milestone Action to an Entitlement Process

Add a Milestone Action to an Entitlement Process


Milestone actions are time-dependent workflow actions that occur at every step (milestone) in an
EDITIONS
entitlement process. After you create an entitlement process and add milestones to it, add milestone
actions to the milestones. Available in both: Salesforce
1. From Setup, enter Entitlement Processes in the Quick Find box, then select Classic and Lightning
Entitlement Processes. Experience

2. Click the name of an entitlement process. Available in: Professional,


3. Click the name of a milestone on the Milestones related list. Enterprise, Performance,
Unlimited, and Developer
4. If you want to add a warning or violation action, add a time trigger first. After you add a trigger, Editions with the Service
the option to add a workflow action appears. Success actions use the milestone’s time trigger. Cloud
Tip: If you want a violation action to fire immediately after the milestone is violated, set
the time trigger to 0 minutes. USER PERMISSIONS
5. Click Add Workflow Action and select an option. To add milestone actions to
entitlement processes:
Workflow Action What It Does Example • Manage Entitlements
AND
New Task Create a workflow task Create a task for a support
agent to call a customer when Customize Application
a First Response milestone is
violated.

New Email Create an email alert Notify case owners when a


First Response milestone on
their case is near violation.

New Field Update Define a field update Update the case Priority field
to High when a First
Response milestone is near
violation.

New Outbound Message Define an outbound message Send data about parts or
services to an external system
after a First Response
milestone is completed.

Select Existing Action Select an existing action Use an existing email alert to
notify a case owner when
their case is near violation of
a first response.

Note: Time-triggered actions only occur during your Salesforce org’s business hours. You can add up to 10 actions and 10 time
triggers to each type of milestone action.

40
Enforcing Service Levels Apply an Entitlement Process to an Entitlement

Apply an Entitlement Process to an Entitlement


You’ve created an entitlement process; now it’s time to use it! Apply an entitlement process to a
EDITIONS
customer’s entitlement so all support records linked to the entitlement use that process.
1. Go to the entitlement. Available in both: Salesforce
Classic and Lightning
2. In the Entitlement Process lookup field, select the process you want to apply.
Experience
Important: If you’re using entitlement processes, manage customers’ work orders and
Available in: Professional,
cases on separate entitlements. This is because an entitlement process only runs on
Enterprise, Performance,
records that match its type. For example, when a Case entitlement process is applied to Unlimited, and Developer
an entitlement, the process only runs on cases associated with the entitlement. If a work Editions with the Service
order is also associated with the entitlement, the process won’t run on the work order. Cloud
3. Click Save.
USER PERMISSIONS
Tip: If you’ve set up entitlement templates, you can associate an entitlement process with
a template so all entitlements created using that template automatically use the selected To edit entitlements:
entitlement process. • Edit on entitlements

41
ENTITLEMENT VERSIONING

Updating an Entitlement Process


Entitlement versioning lets you create multiple versions of an entitlement process, even if it’s
EDITIONS
assigned to active entitlements and support records.
Use entitlement versioning if: Available in both: Salesforce
Classic and Lightning
• You want to make several versions of an entitlement process that have minor differences
Experience
• You want to update an entitlement process to reflect changes in your business processes
Available in: Professional,
You might find that an entitlement process needs to be updated seasonally, or that you need to
Enterprise, Performance,
roll back to a previous version. Unlimited, and Developer
Note: To create multiple versions of entitlement processes, entitlement versioning must be Editions with the Service
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings Cloud
page in Setup.
When you create versions of entitlement processes with the same name, the version number
and notes help you differentiate between versions. Salesforce prevents you from disabling
entitlement versioning so you always know which version you’re working with.

When you create a new version of an entitlement process, you can change any of the following:
• Name
• Description
• Whether the process is active
• Whether the version is the default
• Entry criteria
• Exit criteria
You can also add notes about the version. This makes it easy to differentiate between multiple versions of the same process, especially
if they have the same name.
On new versions of entitlement processes that are currently in use, you can add new milestones, but you can’t edit existing ones. On
new versions of processes that aren’t currently in use, you can both add new milestones and edit existing ones.
Once you create a new version of an entitlement process, you can choose to apply it to all entitlements and support records assigned
to the previously used version, or only to new entitlements and support records. All versions of an entitlement process must be the same
type: Case or Work Order.

42
Entitlement Versioning Create a New Version of an Entitlement Process

Create a New Version of an Entitlement Process


Entitlement versioning lets you create multiple versions of an entitlement process, even if it’s
EDITIONS
assigned to active entitlements and support records. You can use multiple versions of an entitlement
process at the same time in your Salesforce org. Available in both: Salesforce
Note: To create multiple versions of entitlement processes, entitlement versioning must be Classic and Lightning
Experience
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings
page in Setup. Available in: Professional,
When you create versions of entitlement processes with the same name, the version number Enterprise, Performance,
and notes help you differentiate between versions. Salesforce prevents you from disabling Unlimited, and Developer
entitlement versioning so you always know which version you’re working with. Editions with the Service
Cloud
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes.
USER PERMISSIONS
2. Click the name of the entitlement process for which you want to create a new version.
To create and update
3. In the Entitlement Process Versions list, click the version of the process from which you want entitlement processes:
to create a new version. • Manage Entitlements
4. On the Entitlement Process Detail page, click Create New Version.
5. Add details about the new version. Follow these best practices:
• Use the Version Notes field to explain what makes the version you’re creating different from others. This makes it easier
to differentiate between multiple versions of the same entitlement process.
• Leave the name as is.
• Click Active to be able to use the new version.
• Click Default if you want to make the new version the default version of the process. This makes it easier to find in lookup field
searches.

6. Click Save.
After saving, you can modify the entitlement process’ milestones if needed.

Important:
• On new versions of entitlement processes that are currently in use, you can add new milestones, but you can’t edit existing
ones. On new versions of processes that aren’t currently in use, you can both add new milestones and edit existing ones.
• All versions of an entitlement process must be the same type.

When you create a new version of an entitlement process, it isn’t automatically applied to entitlements that were using the previous
version. To learn how to apply a new version of an entitlement process to existing and new entitlements, see Use a New Version of an
Entitlement Process.

43
Entitlement Versioning Use a New Version of an Entitlement Process

Use a New Version of an Entitlement Process


After you create a new version of an entitlement process, you can choose to apply it to all
EDITIONS
entitlements assigned to the previous version, or only to new entitlements. When you apply an
entitlement process to an entitlement, it also applies the process to that entitlement’s active support Available in both: Salesforce
records. Classic and Lightning
Experience
Note: To create multiple versions of entitlement processes, entitlement versioning must be
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings Available in: Professional,
page in Setup. Enterprise, Performance,
When you create versions of entitlement processes with the same name, the version number Unlimited, and Developer
and notes help you differentiate between versions. Salesforce prevents you from disabling Editions with the Service
Cloud
entitlement versioning so you always know which version you’re working with.

Applying an Entitlement Process to a New Entitlement


USER PERMISSIONS
Scenario: You’re creating an entitlement and want to apply a particular version of an entitlement
process to it. To create and update
entitlement processes:
1. Choose the entitlement process you want in the Entitlement Process lookup field on the • Manage Entitlements
entitlement.

Tip: After you click the lookup icon on the Entitlement Process field, select “All Versions” in
the lookup dialog box. Otherwise, you can only choose from the default versions of existing
entitlement processes.
Applying an Entitlement Process to an Existing Entitlement
Scenario: You made a new version of an entitlement process, and you want to switch all the entitlements that were using the previous
version over to your new version.
1. From Setup, enter Entitlement Processes in the Quick Find box, then select Entitlement Processes.
2. Click the name of the entitlement process you want to work with.
The list on the main Entitlement Processes page shows the default version of each process. Click the name of a process to see a list
of all available versions of it.
3. On the detail page for the entitlement process, click the name of the new version that you want to apply to existing entitlements
(and by default, to cases or work orders linked to those entitlements).
4. Click New Update Rule.
5. Choose the version of the entitlement process you want to update from.
You can update from any other version of the process, whether or not it’s active.
6. Depending on the differences between the old and new versions of the entitlement process, updating an entitlement to the new
version can trigger milestone warning and violation actions on that entitlement’s support records (such as cases or work orders). To
avoid such warnings and violation actions, select Don’t Trigger New Milestone Warnings and Violations. We recommend
selecting this so you don’t trigger violation warnings on old entitlements and support records.
7. Click Save.
The update rule detail page shows the estimated number of entitlements and support records that will be updated to use the new
process.
8. Click Start to begin the update process.

44
Entitlement Versioning Use a New Version of an Entitlement Process

Usually the update process completes within an hour, but it depends on the number of entitlements and records being updated.
Throughout the update process, the update rule detail page refreshes periodically to show the number of entitlements and records
processed. To stop the update at any time, click Stop.
When the update rule displays a Completed status, all related entitlements and support records have been updated to use the new
version of the entitlement process. If the status is Completed With Exceptions, some records couldn't be updated to the new
version because of errors. To find out which records weren't updated and why, contact Salesforce Support.

Note: Cases that have already exited the previous version of your entitlement process—for example, if a case has been
closed—aren’t updated to use the new entitlement process.

45
LEARN MORE ABOUT ENTITLEMENT MANAGEMENT

Where to Learn More


You can find more helpful reference information about entitlement management features at help.salesforce.com.
Learn More About Entitlements
Search for these titles:
• Entitlements
• Guidelines for Working with Entitlements
• Verify Entitlements
• Entitlement Fields
Learn More About Service Contracts and Contract Line Items
Search for these titles:
• Service Contracts
• Guidelines for Working with Service Contracts
• Service Contract Fields
• Contract Line Items
• Guidelines for Working with Contract Line Items
• Contract Line Item Fields
Learn More About Milestones and Entitlement Processes
Search for these titles:
• Milestones
• Milestones: Supported Objects
• Milestone Statuses
• Milestone Actions
• Milestone Recurrence Types
• Entitlement Processes
• How a Record Moves Through an Entitlement Process
• How Business Hours Work in Entitlement Management

46

You might also like