The Admin's Guide to
Entitlement Management
Salesforce, Summer 24
Last updated: July 5, 2024
©
Copyright 20002024 Salesforce, Inc. All rights reserved. Salesforce is a registered trademark of Salesforce, Inc., as are other
names and marks. Other marks appearing herein may be trademarks of their respective owners.
CONTENTS
INTRODUCTION TO ENTITLEMENT MANAGEMENT . . . . . . . . . . . . . . . . . . . . 1
Whats 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
Whats Entitlement Management?
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlement management helps you provide the correct support to your customers. Its variety of
features let you define, enforce, and track service levels as part of your support management process.
Entitlement management features include:
Entitlements, which let support agents determine whether a customer is eligible for support.
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.
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.
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. Well 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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Learn useful terms related to entitlement features in Salesforce.
Entitlement
A unit of customer support in Salesforce, such as phone support or web support. Its typically
used to represent terms in warranties. You can associate entitlement with accounts, assets,
contacts, and service contracts. View entitlements from the Entitlements tab or the Entitlements
related list on accounts, assets, contacts, and service contracts.
Note: In Lightning Experience, the Entitlements related list isnt available on Contacts.
Entitlement Contact
Contacts who are entitled to customer supportfor example, a named caller. The Contacts
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
Note:
Contacts on an account dont automatically inherit the accounts 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 dont 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 doesnt 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 isnt 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 arent available for contract line items, and experience users cant 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 definitionfor example, if you want a supervisor to be notified
by email when a customers case goes unresolved for two hoursyou 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
Entitlements: Terms to KnowIntroduction to Entitlement Management
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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
These limits and limitations apply to entitlements and their related features.
Limits
DetailsLimit
1,000Maximum entitlement processes per org
10Maximum milestones per entitlement process
10,000Maximum service contracts in a service contract
hierarchy
10,000Maximum contract line items in a contract line
item hierarchy
Limitations
Experience Limitations
Entitlements are only supported in experiences built using Salesforce Tabs + Visualforce and cant be added to Lightning
Experience.
Entitlement Limitations
Every entitlement must be associated with an account.
You cant share entitlements. Entitlements inherit their parent accounts sharing settings. To update an entitlement, you need
Read access on the parent account.
If youre 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 wont 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
Entitlement Management Limits and LimitationsIntroduction to Entitlement Management
Entitlement contacts dont have page layouts, search layouts, buttons, links, or record types.
Entitlements dont 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 cant add milestones to support records without using entitlement processes. Entitlement processes apply milestones to
support records.
Milestones arent 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 cant 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 Case Milestone Status field isnt available in list views in Lightning Experience.
The Milestone component and tracker doesnt appear in the Salesforce mobile app.
Business hours on entitlement processes arent 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 cant create list views for contract line items.
You cant share contract line items. Contract line items inherit their parent service contracts 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 cant select a record type when creating contract line items. To change a line items record type from the default type,
manually update the record after its 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 isnt available on contacts.
The Entitlement Templates related list isnt available on products.
The Contacts related list isnt available on entitlements.
The Business Hours field isn't available on the Case Milestones related list.
The Milestone Status Icon field on cases isnt 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.
4
Entitlement Management Limits and LimitationsIntroduction to Entitlement Management
The Status Icon field on service contracts isnt available.
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 items record type. But selecting a value corresponding to a different
record type results in an error. This issue doesnt occur when you edit a single line item.
When you clone a case thats related to an entitlement record, the Entitlement Process Start Time carries over from the cloned
case.
5
Entitlement Management Limits and LimitationsIntroduction to Entitlement Management
PLANNING YOUR IMPLEMENTATION
Planning for Entitlement Management
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlement management is highly customizable, which means you have many choices during
setup. Before you begin the setup process, its essential to choose an entitlement management
model.
Choose What Determines Support Eligibility
You can set up entitlement management so customers are eligible for support based on one or
several of the following types of records:
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.
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. Heres what this approach looks like:
6
Choose a Setup Model
There are three general ways to set up entitlement management. Once youve 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 youre using.
Use this model ifWhat determines support eligibilityEntitlement model
Support agents determine whether a
customer is eligible for support at the
account, contact, or asset level.
Entitlements only (simplest option)
There's no need to manage your
customers' entitlements as part of a
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
Support agents determine whether a
customer is eligible for support based on
their service contract.
Entitlements + service contracts
Entitlements are purchased and
managed separately from the products
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
Support agents determine whether a
customer is eligible for support based on
Entitlements + service contracts + contract
line items (most complex option)
You use Salesforce for customer support
and to manage your customers' service
contracts
the products covered in their service
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 for Entitlement ManagementPlanning Your Implementation
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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To set up entitlement
management
Manage Entitlements
When you set up entitlement management, you decide which features to use. Use this checklist
to confirm that youve set up entitlement management in a way that fits your support processes.
Complete if...Step
Youre thinking about using entitlements in
your org.
Read Planning for Entitlement Management
You want customer support eligibility to be
determined at the account or contact level.
Set Up Entitlements
You want to use entitlements in your org.
Enable Entitlements
You want to control which fields users see
on entitlements, and how and where users
associate entitlements with other records.
Customize Entitlements
You want to control which entitlements and
assets users can link to a case.
Set Up Entitlement and Asset Lookup
Filters on Cases
You want to give users the appropriate user
permissions, field access, and tab access.
Give Users Access to Entitlement
Management
You want to predefine the terms of support
for specific products.
Set Up an Entitlement Template
You want the correct entitlement to be added
automatically to cases created using
Web-to-Case, Email-to-Case, or experiences.
Automatically Add Entitlements to
Cases from Web, Email, and Experiences
You want to define required steps that
support agents must complete to close a
support record.
Set Up Milestones
You want to control which milestone-related
fields users see.
Customize Milestone Page Layouts
You want automatic notifications to be added
to the feed and the record owners profile
Enable Milestone Feed Items
page when a milestone is completed or
violated.
You want your support team to be able to
see a list of upcoming and completed
Set Up the Milestone Tracker
8
Entitlement Management Setup ChecklistPlanning Your Implementation
Complete if...Step
milestones and countdowns for active and overdue milestones.
You want to prevent users from updating milestones unless
certain criteria are met.
Limit User Updates to Milestones
You want to define a required step in your support process.
Create a Milestone
You want milestones to be automatically marked Completed
on cases that match unique criteria.
Auto-Complete Case Milestones
You want to be able to apply the required steps in your support
process to specific records.
Set Up Entitlement Processes
You want to create a timeline that includes all of the steps that
your support team must complete to resolve support records.
Create an Entitlement Process
You want to control which entitlement process fields users see.
Customize Entitlement Process Fields
You want to specify which required support steps occur, and
when, on your timeline.
Add a Milestone 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.
Add a Milestone Action to an Entitlement Process
You want a specific entitlements support records to follow the
steps defined in your entitlement process.
Apply an Entitlement Process to an Entitlement
You want to update an entitlement process.
Create a New Version of an Entitlement Process
You want to apply a new version of an entitlement process to
new or existing entitlements.
Use a New Version of an Entitlement Process
You want customer support eligibility to be determined at the
service contract level.
Set Up Service Contracts
You want to be able to limit a service contract to cover specific
products.
Add Contract Line Items to Service Contracts
You want customers or partners to be able to view their
entitlements and service contracts and create support records
from them.
Set Up Entitlement Management in Experiences
You want to view and share data on entitlements and service
contracts.
Report on Entitlements
You want your support team to understand:
Give your support team entitlement management guidelines.
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
Entitlement Management Setup ChecklistPlanning Your Implementation
SETTING UP ENTITLEMENT MANAGEMENT
Set Up Entitlements
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlements are units of customer support in Salesforce, such as phone support or web support.
Set up entitlements in your Salesforce org to help support agents determine whether a customer
is eligible for support.
1. Enable Entitlements
Enable entitlements in your Salesforce org to help support agents deliver the correct service
level to your customers.
2. Customize Entitlements
Customize entitlement fields and page layouts based on your business needs and how your
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 dont 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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To enable entitlements:
Customize Application
Enable entitlements in your Salesforce org to help support agents deliver the correct service level
to your customers.
Note: Only users with a standard System Administrator profile can enable entitlements.
1. From Setup, enter Entitlement Settings in the Quick Find box, then select
Entitlement Settings.
2. Select Enable Entitlement Management.
3. Click Save. This takes you to a page where you can customize entitlement management settings.
Youll come back to those settings later on in the entitlement management setup process.
10
Customize Entitlements
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To edit page layouts and set
field history tracking:
Customize Application
Customize entitlement fields and page layouts based on your business needs and how your agents
work.
1. Customize entitlements fields.
This customization lets you control what information users add to entitlements.
Tip: Create custom entitlement fields that are specific to your industry or your support
processes. For example:
Customize the values for the Type field to match the types of entitlements your
team provides or sells, like online support or online training.
If your business charges for entitlement renewals, create a currency field on
entitlements named Cost to Renew.
2. Customize entitlement page layouts.
This customization lets you specify which fields and related lists users see on entitlements.
Consider making the following customizations:
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 isnt 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 cases assigned entitlement, make the Entitlement
Name field on cases editable for their profile.
Add the Entitlements related list to other objects page layouts:
So users can view and create entitlements when...Add the Entitlements related list to this objects page
layouts...
Any contact on the account is eligible for supportAccounts
Specific contacts are eligible for supportContacts
Specific assets (purchased products) are eligible for supportAssets
11
Customize EntitlementsSetting Up Entitlement Management
Note: In Lightning Experience, the Entitlements related list isnt 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
EDITIONS
Available in: Salesforce
Classic
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To set up entitlement-related
lookups on cases:
Manage Entitlements
Set up lookup filters on entitlement-related case fields to restrict the entitlements that users can
select on a case.
For example, when experience users create a case and use the lookup on the Entitlement
Name field, you can set up lookup filters so they can choose only entitlements registered to their
account or contact.
1. From Setup, enter Entitlement Settings in the Quick Find box, then select
Entitlement Settings.
2. Choose the item(s) you'd like returned in the lookup fields.
To Return...Click...Lookup Field on Cases
Assets registered to the
account on the case.
Same account on the
case
Asset
Tip: If you want the
lookup field to return
all assets that share an
account with the case,
select only this option.
Assets registered to the
contact on the case.
Same contact on the
case
Assets associated with
entitlements that belong to
the cases account.
Entitlements on the
case's account
Assets associated with
entitlements related to the
cases contact.
Entitlements on the
case's contact
Note: In Lightning
Experience, the
Entitlements related
list isnt available on
Contacts.
Entitlements with an Active
Status.
Active statusEntitlement
12
Set Up Entitlement and Asset Lookup Filters on CasesSetting Up Entitlement Management
To Return...Click...Lookup Field on Cases
Entitlements associated with the account
on the case.
Same account on the case
Entitlements associated with the asset on
the case.
Same asset on the case
Entitlements associated with the contact
on the case.
Same 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 arent available for work orders.
Give Users Access to Entitlement Management
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create and edit users:
Manage Internal Users
After you set up entitlement management, make sure that users have the appropriate user
permissions, field access, and tab access.
1. Assign entitlement management permissions to users.
Permissions Are
Auto-Enabled on These
Standard Profiles
Need These PermissionsUsers Who Will
System AdministratorManage EntitlementsSet up entitlement
management, including
milestones, entitlement
processes, and entitlement
templates
System AdministratorCustomize Application
AND
Create and Set Up
Experiences
Provide entitlement
management to an
experience
System AdministratorManage Custom Report
Types
Create or update custom
report types that include
entitlement management
Standard User, Solution
Manager, Contract Manager,
Create and Customize
Reports
Create and run reports based
on entitlement management
custom report types
13
Give Users Access to Entitlement ManagementSetting Up Entitlement Management
Permissions Are Auto-Enabled on
These Standard Profiles
Need These PermissionsUsers Who Will
Marketing User, and System Administrator
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Create on cases
AND
Read on entitlements
Create cases with entitlements
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Edit on cases
AND
Read on entitlements
Change a cases entitlement
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Create on work orders
AND
Read on entitlements
Create work orders with entitlements
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Edit on work orders
AND
Read on entitlements
Change a work orders entitlement
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Read on entitlementsVerify or view entitlements
None: enable the permission in a
permission set or custom profile
Create on entitlementsCreate entitlements
None: enable the permission in a
permission set or custom profile
Edit on entitlementsChange entitlements
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Read on entitlement contactsView entitlement contacts
None: enable the permissions in a
permission set or custom profile
Create on entitlement contacts
AND
Change entitlement contacts
Delete on entitlement contacts
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Read on service contractsVerify or view service contracts
None: enable the permission in a
permission set or custom profile
Create on service contractsCreate service contracts
None: enable the permission in a
permission set or custom profile
Edit on service contractsChange service contracts
14
Give Users Access to Entitlement ManagementSetting Up Entitlement Management
Permissions Are Auto-Enabled on
These Standard Profiles
Need These PermissionsUsers Who Will
Standard User, Solution Manager, Contract
Manager, Marketing User, and System
Administrator
Read on contract line itemsVerify or view contract line items
None: enable the permissions in a
permission set or custom profile
Edit on service contracts
AND
Add contract line items to service contracts
Create on contract line items and Read
on products and price books
None: enable the permissions in a
permission set or custom profile
Edit on service contracts
AND
Change contract line items on service
contracts
Edit on contract line items and Read on
products and price books
Tip: If a standard profile doesnt 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
Important: To let a user create cases from entitlements or change a cases assigned entitlement, make the Entitlement
Name field on cases editable for their profile.
SEE ALSO:
Salesforce Help: Field Permissions
15
Give Users Access to Entitlement ManagementSetting Up Entitlement Management
Set Up an Entitlement Template
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create entitlement
templates:
Manage Entitlements
Entitlement templates let you predefine terms of support that users can add to products.
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
entitlement templates for web or phone support so agents can easily add entitlements to products
offered to customers.
Note: In Lightning Experience, the contact related list isnt available on Entitlements.
Purchased or installed products are represented in Salesforce as assets. That means:
A product (for example, Laser Scanner) is linked to an entitlement template
A corresponding asset (for example, the laser scanner purchased by ABC Labs) is linked to an
entitlement that was created from the entitlement template
Note: Entitlement templates are only available if entitlements and products are enabled in
your org.
Tip: The Entitlement Management Trailhead module introduces you to common terms and
walks you through the process of creating an entitlement template. And, its 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:
DescriptionField
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.
Entitlement Template Name
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.
Term (Days)
The entitlement process associated with the entitlement.Entitlement Process
Lets you limit the number of cases the entitlement supports.
The admin determines whether this field is visible.
Per Incident
The total number of cases the entitlement supports.
This field is only available if Per Incident is selected.
Cases Per Entitlement
16
Set Up an Entitlement TemplateSetting Up Entitlement Management
DescriptionField
The entitlements supported business hours.Business Hours
The type of entitlement, such as Web or phone support.
Admins can customize this fields values.
Type
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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To define Apex triggers:
Author Apex
Entitlements dont 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.
When a case is created via Web-to-Case, Email-to-Case, or an experience, it isnt automatically
associated with an entitlement. When a cases Entitlement field is empty, this sample trigger
checks whether the case contact has an active entitlement. If the contact has an active entitlement,
the entitlement is added to the case. If the contact doesnt have an active entitlement, the trigger
then checks whether the case account has an active entitlement. If the case account has an active
entitlement, the entitlement is added to the case. The trigger helps ensure that cases are resolved
according to your customer support agreements.
1. From Setup, enter Case Triggers in the Quick Find box, then select Case Triggers.
2. Click New.
3. Copy the text below and paste it in the text field.
4. Click Save.
Example:
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);
}
17
Automatically Add Entitlements to Cases from Web, Email,
and Experiences
Setting Up Entitlement Management
List <EntitlementContact> entlContacts =
[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
Automatically Add Entitlements to Cases from Web, Email,
and Experiences
Setting Up Entitlement Management
Set Up Service Contracts
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To set up service contracts:
Manage Entitlements
AND
Customize Application
Service contracts are agreements between you and your customers for a type of customer support.
Service contracts can represent different kinds of customer support, such as subscriptions or service
level agreements (SLAs).
Note: Entitlements must be enabled in your org for you to set up service contracts.
From the object management settings for service contracts:
1. Customize service contract fields.
This lets you control what information users add to service contracts. You can create custom
service contract fields that are specific to your industry or support process.
2. Customize service contract page layouts.
This lets you specify which fields and related lists users see on service contracts. Consider making
the following customizations:
Add the Status Icon field so users can easily see whether the service contract is active,
expired, or inactive.
To let users make one service contract the parent of another, add the Parent Service
Contract field and Child Service Contracts related list. You can also add the read-only
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
Set Up Service ContractsSetting Up Entitlement Management
Add Contract Line Items to Service Contracts
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To set up service contracts
and contract line items with
entitlements:
Manage Entitlements
AND
Customize Application
Set up contract line items to be able to specify which products a service contract covers. Contract
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.
Note: Entitlements must be enabled in your org for you to set up contract line items.
From the object management settings for contract line items:
1. Customize contract line item fields.
This lets you control what information users add to contract line items. You can create custom
contract line item fields that are specific to your industry or support process.
2. Customize contract line item page layouts.
This lets you specify which fields and related lists users see on contract line items. Consider
making the following customizations:
Add the Status Icon field so users can easily see whether the line item is active,
expired, or inactive.
To let users make one line item the parent of another, add the Parent Contract
Line Item field and Child Contract Line Items related list. You can also add the read-only
Root Contract Line Item field, which lists the top-level line item in a contract
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 cant access them.
20
Add Contract Line Items to Service ContractsSetting Up Entitlement Management
Set Up Entitlement Management in Experiences
EDITIONS
Available in: Salesforce
Classic
Experiences are available in:
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlement Management is
available in Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create, customize, or
activate a experience:
Create and Set Up
experiences AND is a
member of the
experience theyre
updating
To set up entitlement
management:
Manage Entitlements
To assign user licenses:
Manage Internal Users
Add entitlement management to your experiences to let customers or partners view their
entitlements and service contracts.
Follow these steps to expose entitlements or service contracts in an experience. These objects are
supported only in experiences built using Salesforce Tabs + Visualforce, and cant be added to
Lightning Experiences.
1. Update user profiles.
a. Clone the Customer Experience User, Customer Experience Plus User, or Partner Experience
User profiles and enable the Read permission on entitlements and/or service contracts.
Note: Remember to click Edit Profiles at the bottom of the detail page to activate
the new profiles.
b. Optionally, on the profiles of delegated experience moderators, enable the Create and
Delete permissions on entitlement contacts. This lets moderators update entitlement
contacts.
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.
3. Add the Entitlement Name field to case and work order page layouts assigned to
experience users.
This lets users add entitlements to cases and work orders.
Note: To avoid exposing your internal support processes, we recommend not adding
the following fields to case and work order page layouts for experience users:
Entitlement Process Start Time
Entitlement Process End Time
Stopped
Stopped Since
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
Set Up Entitlement Management in ExperiencesSetting Up Entitlement Management
Report on Entitlements
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create or update
entitlement management
custom report types:
Manage Custom Report
Types
To create and run reports
based on entitlement
management custom report
types:
Create and Customize
Reports
Use custom report types to define report criteria that users can use to run and create reports on
entitlements, service contracts, and contract line items.
After you set up entitlement management, your Salesforce org automatically includes the following
custom report types:
Report Type LocationDescriptionCustom Report Type
Accounts & ContactsLists accounts with
entitlements that include
contacts (named callers).
Accounts with entitlements
with contacts
Customer Support ReportsLists service contracts with
contract line items (products).
Service contracts with contract
line items
Customer Support ReportsLists service contracts with
entitlements.
Service contracts with
entitlements
Customer Support ReportsLists cases with milestones. This
report type can't be
customized.
Cases with milestones
1. From Setup, enter Report Types in the Quick Find box, then select Report Types.
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
Report on EntitlementsSetting Up Entitlement Management
ENFORCING SERVICE LEVELS
Set Up Milestones
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Milestones represent required steps in your support management process, like first response times.
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.
Before setting up milestones, make sure that you understand where milestones can appear. See
Where Can I View Milestones?
1. Customize Milestone Page Layouts
Customize your page layouts for milestones to help support agents and supervisors track support
progress.
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 owners 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
Customize Milestone Page Layouts
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create and edit page
layouts:
Customize Application
To create milestones:
Manage Entitlements
AND
Customize Application
To enable the Stopped Time
and Actual Elapsed Time
fields:
Manage Entitlements
Customize your page layouts for milestones to help support agents and supervisors track support
progress.
1. Add any of the following fields to case and object milestone detail pages.
Use Setup in Salesforce Classic:
To edit case milestone detail page layouts, from Setup, enter Case Milestones in
the Quick Find box, then click Page Layouts under Case Milestones.
To edit object milestone detail page layouts (which apply to work order milestones), from
Setup, enter Object Milestones in the Quick Find box, then click Page Layouts
under Object Milestones.
DescriptionField
The amount of time that it took to complete
a milestone.
(Elapsed Time) (Stopped Time) = (Actual
Elapsed Time)
Actual Elapsed Time
Note: If you want to be able to display
this field, Enable stopped time and
actual elapsed time must be selected
on the Entitlement Settings page.
Icon that indicates milestone completion.Completed
The date and time the milestone was
completed.
Completion Date
The time it took to complete a milestone.
Automatically calculated to include any
Elapsed Time
business hours on the support record. Elapsed
time is calculated only after the Completion
Date field is populated.
The entitlement process that is being used for
the record. Entitlement processes are optional.
Entitlement Process
The date and time that the milestone tracking
started.
Start Date
How long an agent has been blocked from
completing a milestone. For example, an
Stopped Time
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
Customize Milestone Page LayoutsEnforcing Service Levels
DescriptionField
The date and time to complete the milestone.Target Date
The time to complete the milestone. Automatically calculated
to include any business hours on the support record.
Target Response
The time that remains before a milestone violation. Automatically
calculated to include any business hours on the support record.
Time Remaining
The time that has elapsed since a milestone violation.
Automatically calculated to include any business hours on the
support record.
Time Since Target
Icon that indicates a milestone violation.Violation
2. Add milestone elements to case and work order page layouts.
Use Setup in Salesforce Classic or Lightning Experience.
a. Add milestone fields.
DescriptionField
The milestones status.Milestone Status
An icon that corresponds to the milestone status:Milestone Status Icon
Compliant
Open Violation
Closed Violation
Note: In Lightning Experience, the Milestone Status
Icon field on cases isnt available.
The time the record enters the entitlement process.Entitlement Process Start Time
The time the record exits the entitlement process.Entitlement Process End Time
Note: Case Milestone Status isnt available in list views in Lightning Experience.
b. Add the Case Milestones or Object Milestones related list to display the records 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
Customize Milestone Page LayoutsEnforcing Service Levels
Enable Milestone Feed Items
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To enable milestone feed
items:
Manage Entitlements
Help support agents monitor support activity by enabling milestone feed items. This option posts
a notification to the feed and the record owners profile page when a milestone is completed or
violated.
Important:
Chatter and entitlements must be enabled in your org.
Enabling milestone feed items doesnt create feed items for milestones that have already
been completed or violated.
If you add entitlement management to an experience, enabling milestone feed items
also makes feed items visible to experience users.
1. From Setup, enter Entitlement Settings in the Quick Find box, then select
Entitlement Settings.
2. Select Enable milestone feed items. This enables feed items for both cases and work orders.
When milestones feed items are posted, agents can click the milestone name to view its details.
Set Up the Milestone Tracker
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create and edit page
layouts:
Customize Application
To assign page layouts:
Manage Users
To set how time displays in
the milestone tracker:
Manage Entitlements
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.
Often, support agents performance is measured by how often they meet milestones. The milestone
tracker helps agents be prepared for support deadlines by showing them:
The time remaining until an active milestone reaches its Target Date
The time passed since an overdue milestones Target Date
A list of upcoming milestones
A list of completed milestones
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
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
countdown displays in days (for example, 1d). When fewer than 24 hours remain, the countdown
format switches to hours/minutes/seconds.
In Salesforce Classic
26
Enable Milestone Feed ItemsEnforcing Service Levels
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 milestones business hours are 9 a.m. to 5 p.m. Right now, its 4:30 p.m. and the milestones 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
Set Up the Milestone TrackerEnforcing Service Levels
Limit User Updates to Milestones
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To define or change field
validation rules:
Customize Application
To create or edit milestones:
Manage Entitlements
Add validation rules to milestones to prevent users from updating milestones unless certain criteria
are met.
Note: To create validations rules, use Setup in Salesforce Classic. Dont worry, your validation
rules still apply in Lightning Experience.
1. From the object management settings for case milestones, go to Validation Rules.
2. Click New.
3. Enter the rule details.
4. Save your changes.
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
orders from the object management settings for Object Milestones in Setup.
ValueField
milestone_completion_dateRule Name
A milestone’s completion date
must be later than the case
creation date.
Description
CompletionDate <
Case.CreatedDate
Error Condition Formula
Error: The milestone
completion date must be later
than the case creation date.
Error Message
Top of PageError Location
28
Limit User Updates to MilestonesEnforcing Service Levels
Create a Milestone
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create milestones:
Manage Entitlements
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.
Tip: The Entitlement Management Trailhead module introduces you to common terms and
walks you through the process of creating milestones. And its fun! To get started, see
Entitlement Management.
1. From Setup, enter Milestones in the Quick Find box, then select Milestones under
Entitlement Management.
2. Click New Milestone.
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
when they see them on cases, work orders, or entitlement processes.
4. Select a recurrence type.
ExampleDescriptionRecurrence Type
First Response
Resolution Time
The milestone occurs only
once on the record.
No Recurrence
Response TimeThe milestone occurs
whenever the milestone
criteria are met on the record.
Independent
Customer Contact MadeThe milestone occurs on
repeat whenever the
Sequential
milestone criteria are met on
the record.
5. Click Save.
You cant 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
Create a MilestoneEnforcing Service Levels
Auto-Complete Case Milestones
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To define Apex triggers and
classes:
Author Apex
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.
Tip: In Lightning Experience, agents can click the Mark Completed link in the Milestones
component to mark a milestone completed. Its not automation, but it is easy. For more
information, see Set Up the Milestone Tracker.
The following triggers mark specific types of milestones Completed when the case they are on
meets unique criteria. Weve also provided a milestone utility Apex class and accompanying unit
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
code. To define this Apex class in your org:
1. From Setup, enter Apex Classes in the Quick Find box, then click Apex Classes.
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
Auto-Complete Case MilestonesEnforcing Service Levels
* 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
Auto-Complete Case MilestonesEnforcing Service Levels
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. Its 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 doesnt 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
Auto-Complete Case MilestonesEnforcing Service Levels
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 cases creation. Its 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 doesnt 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
Auto-Complete Case MilestonesEnforcing Service Levels
}
}
}
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
Auto-Complete Case MilestonesEnforcing Service Levels
Set Up Entitlement Processes
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlement processes are timelines that include all of the steps (milestones) that your support team
must complete to resolve cases or work orders. Set up an entitlement process to apply to
entitlements in your Salesforce org.
1. Create an Entitlement Process
Create an entitlement process to give support agents a timeline of required steps to follow
when solving support records. Each process includes the logic necessary to determine how to
enforce the correct service level for your customers.
2. Customize Entitlement Process Fields
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
Youve created an entitlement process; now its time to use it! Apply an entitlement process to a customers entitlement so all support
records linked to the entitlement use that process.
Create an Entitlement Process
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To view entitlements:
Read on entitlements
To change entitlements:
Edit on entitlements
To create and update
entitlement processes:
Manage Entitlements
Create an entitlement process to give support agents a timeline of required steps to follow when
solving support records. Each process includes the logic necessary to determine how to enforce
the correct service level for your customers.
You must create milestones before you create an entitlement process.
Tip: The Entitlement Management Trailhead module introduces you to common terms and
walks you through creating an entitlement process. And, its fun! To get started, see Entitlement
Management.
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes under Entitlement Management.
2. Click New Entitlement Process.
3. Select an entitlement process type. If you intend to use the process to enforce milestones on
cases, select Case. If you intend to use the process to enforce milestones on work orders, select
Work Order. (If work orders arent enabled in your org, you only see the Case option.)
Note: If youre 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 wont run on the work order.
4. Enter a namefor example, Standard Support Processand a description.
35
Set Up Entitlement ProcessesEnforcing Service Levels
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 cant update or
delete milestone actions on a process after its 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.
More Actions to Take?DescriptionField
NoBased on record created date
Select if records should enter the process
when theyre created.
Record* enters the process
Yes, a drop-down list displays for selecting
the custom date/time. You can only
Based on a custom date/time field on
the record
Select if you want the value of a custom
date/time field on the record to determine
when the record enters the process.
choose a custom date/time, not a custom
date.
NoBased on when record is closed
Select if records should exit the process
when they're closed.
Record exits the process
Yes, select one of the following:Based on custom criteria
Select if records should exit the process
based on criteria you define.
Choose criteria are met and
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
Create an Entitlement ProcessEnforcing Service Levels
More Actions to Take?DescriptionField
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 youd 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.
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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To edit page layouts:
Customize Application
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.
1. Add these fields to case and work order page layouts.
DescriptionField
How far along a case is to reaching an
entitlement processs milestones. You can click
or hover your mouse pointer over each
milestone to view its details. These icons
represent milestones:
Timeline (available only on case page
layouts)
Completed milestone
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.
Lets you stop an entitlement process on a
record, which might be necessary if youre
waiting for a customers response.
Stopped
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 doesnt
have access to the Stopped field, the
37
Customize Entitlement Process FieldsEnforcing Service Levels
DescriptionField
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.
Dont confuse your users; give them access to the Stopped
and Stopped Since fields.
The date and time the entitlement process was stopped on the
record.
Stopped Since
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
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To add milestones to
entitlement processes:
Manage Entitlements
Add milestones to entitlement processes to define required steps in your support process.
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes.
2. Click the name of an entitlement process.
3. If youre using versioning, click the name of the entitlement process again under Entitlement
Process Versions.
4. Click New on the Milestones related list.
5. Choose the milestone.
6. In Time Trigger (Minutes), enter the number of minutes in which users must
complete the milestone before it triggers an action.
Or, if youd like the trigger time for the milestone to be calculated dynamically based on the
milestone type and properties of the case or work order, click Enable Apex Class for the Time
Trigger (Minutes).
Note: You must have a custom Apex class that implements the
Support.MilestoneTriggerTimeCalculator Apex interface to use this
option.
38
Add a Milestone to an Entitlement ProcessEnforcing Service Levels
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:
Use IfToSelect
A milestones Target Date is based
on when its applied to a record. Use if the
milestone is recurring.
Calculate the milestone Target Date
when the milestone is applied to a support
record (matches the record criteria).
Milestone Criteria
Note: An entitlement process
usually starts when the record is
created, but its milestones arent
always applied right away.
A milestone's Target Date is based
on the start of the entitlement process. For
Calculate the milestone Target Date
when the entitlement process starts (by
default, when a support record is created).
Entitlement Process
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 dont 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 cant 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
Add a Milestone to an Entitlement ProcessEnforcing Service Levels
Add a Milestone Action to an Entitlement Process
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To add milestone actions to
entitlement processes:
Manage Entitlements
AND
Customize Application
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.
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes.
2. Click the name of an entitlement process.
3. Click the name of a milestone on the Milestones related list.
4. If you want to add a warning or violation action, add a time trigger first. After you add a trigger,
the option to add a workflow action appears. Success actions use the milestones time trigger.
Tip: If you want a violation action to fire immediately after the milestone is violated, set
the time trigger to 0 minutes.
5. Click Add Workflow Action and select an option.
ExampleWhat It DoesWorkflow Action
Create a task for a support
agent to call a customer when
a First Response milestone is
violated.
Create a workflow taskNew Task
Notify case owners when a
First Response milestone on
their case is near violation.
Create an email alertNew Email
Update the case Priority field
to High when a First
Define a field updateNew Field Update
Response milestone is near
violation.
Send data about parts or
services to an external system
Define an outbound messageNew Outbound Message
after a First Response
milestone is completed.
Use an existing email alert to
notify a case owner when
Select an existing actionSelect Existing Action
their case is near violation of
a first response.
Note: Time-triggered actions only occur during your Salesforce orgs business hours. You can add up to 10 actions and 10 time
triggers to each type of milestone action.
40
Add a Milestone Action to an Entitlement ProcessEnforcing Service Levels
Apply an Entitlement Process to an Entitlement
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To edit entitlements:
Edit on entitlements
Youve created an entitlement process; now its time to use it! Apply an entitlement process to a
customers entitlement so all support records linked to the entitlement use that process.
1. Go to the entitlement.
2. In the Entitlement Process lookup field, select the process you want to apply.
Important: If youre 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 wont run on the work order.
3. Click Save.
Tip: If youve set up entitlement templates, you can associate an entitlement process with
a template so all entitlements created using that template automatically use the selected
entitlement process.
41
Apply an Entitlement Process to an EntitlementEnforcing Service Levels
ENTITLEMENT VERSIONING
Updating an Entitlement Process
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
Entitlement versioning lets you create multiple versions of an entitlement process, even if its
assigned to active entitlements and support records.
Use entitlement versioning if:
You want to make several versions of an entitlement process that have minor differences
You want to update an entitlement process to reflect changes in your business processes
You might find that an entitlement process needs to be updated seasonally, or that you need to
roll back to a previous version.
Note: To create multiple versions of entitlement processes, entitlement versioning must be
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings
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 youre 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 cant edit existing ones. On
new versions of processes that arent 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
Create a New Version of an Entitlement Process
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create and update
entitlement processes:
Manage Entitlements
Entitlement versioning lets you create multiple versions of an entitlement process, even if its
assigned to active entitlements and support records. You can use multiple versions of an entitlement
process at the same time in your Salesforce org.
Note: To create multiple versions of entitlement processes, entitlement versioning must be
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings
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 youre working with.
1. From Setup, enter Entitlement Processes in the Quick Find box, then select
Entitlement Processes.
2. Click the name of the entitlement process for which you want to create a new version.
3. In the Entitlement Process Versions list, click the version of the process from which you want
to create a new version.
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 youre 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 cant edit existing
ones. On new versions of processes that arent 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 isnt 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
Create a New Version of an Entitlement ProcessEntitlement Versioning
Use a New Version of an Entitlement Process
EDITIONS
Available in both: Salesforce
Classic and Lightning
Experience
Available in: Professional,
Enterprise, Performance,
Unlimited, and Developer
Editions with the Service
Cloud
USER PERMISSIONS
To create and update
entitlement processes:
Manage Entitlements
After you create a version of an entitlement process, you can choose to apply it to all 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 entitlements active support records.
Note: To create multiple versions of entitlement processes, entitlement versioning must be
enabled in your org. Select Enable Entitlement Versioning on the Entitlement Settings
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 youre working with.
Applying an Entitlement Process to a New Entitlement
Scenario: Youre creating an entitlement and want to apply a particular version of an entitlement
process to it.
1. Choose the entitlement process you want in the Entitlement Process lookup field on the
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 its 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 entitlements support records (such as cases or work orders). To
avoid such warnings and violation actions, select Dont Trigger New Milestone Warnings and Violations. We recommend
selecting this so you dont 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.
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.
44
Use a New Version of an Entitlement ProcessEntitlement Versioning
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 processfor example, if a case has been closedare
updated to use the new entitlement process.
45
Use a New Version of an Entitlement ProcessEntitlement Versioning
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