Case Management - Explain the capabilities, use cases, and how to configure the service entitlements and milestones in Salesforce

...

Overview and Capabilities

Entitlement management is used to define, enforce, and track customer service levels as part of 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.
  • Community access to entitlements, which lets community 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.

Considerations and Limitations

  • Only users in orgs with the Service Cloud can enable, create, and update entitlement management items.
  • Entitlement management is highly customizable and hence has many choices during setup. The first step in the process is to chose an entitlement management model based on the requirements. There are three general ways to set up entitlement management. The model chosen can be changed.
    • Entitlements Only
    • Entitlements with Service Contracts
    • Entitlements with Service Contracts and Contract Line Items
  • Regardless of the setup model chosen, support process can be enhanced with other entitlement management features like:
    • 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 communities
    • Report on entitlements
  • Be aware of these limitations
  • Entitlements cannot be shared, they use the same sharing model as the account they’re associated with. Updating an entitlement needs read access on account.
  • Associating a customer with an entitlement doesn’t share the entitlement with them. For customers to be able to see their entitlements, entitlements must be set up in your external community.

Entitlements

  • Entitlements are units of customer support in Salesforce, such as “phone support” or “web support.” They’re typically used to represent terms in service agreements.

  • Entitlements can be associated with accounts, assets, contacts, and service contracts. For example, a phone support entitlement can be added to an account. When a contact from that account calls your service department, support agents can quickly verify that they’re entitled to phone support.

  • Entitlements can be used on their own or as part of Entitlement Process.

  • Entitlements can be viewed from the Entitlements tabs based on the way they are setup.

  • Entitlement setup includes the below steps

    • Enabling Entitlement management from Setup → Entitlement Settings
    • Customize entitlement fields and page layouts based on business needs. Set Field history tracking and customize other objects (Account, Contact, Assets) page layouts as required.
    • Set up lookup filters on entitlement related case fields to restrict entitlements that can be selected on Case
    • Provide appropriate user permissions, field and tab access settings.
    • Entitlement templates can be created for specific products so support agents can quickly add the right entitlement whenever a customer purchases the product.
    • 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
    • Entitlements don’t automatically apply to cases created using Web-to-Case, Email-to-Case, or communities. Add Entitlements to these features using Apex code through a trigger on case.
    • trigger DefaultEntitlement on Case (Before Insert, Before Update) { List 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 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; } } } } } } } }
  • 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.

Entitlement Contact Contacts who are entitled to customer support—for 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. NOTE

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

Entitlement Template Predefined terms of customer support that can be quickly added to products in Salesforce. For example, you can create entitlement templates for phone or web support so users can easily add entitlements to products purchased by customers. NOTE In Lightning Experience, the contact related list isn’t available on Entitlements.

Milestones

  • Milestones represent required, time-dependent steps in the support process, like the first response or case resolution times.
  • Milestones are added to entitlement processes to ensure that agents resolve support records correctly and on time.
  • An entitlement process can have up to 10 milestones.
  • Milestone can be set up to occur once or to recur until entitlement process exits.
  • Milestone can be independent, sequential or no recurrence type.
  • Once Milestone is linked to an Entitlement Process, Violation, Success and Warning Milestone actions can be added under them. The supported actions are Email Alert, Task creation, Field update or Outbound Message.
  • Milestone set up includes
    • Customizing page layouts of Case Milestone (from Classic) and Object Milestone (work order) detail pages to include fields like (actual elapsed time, completed, Completion Date, Elapsed Time, Entitlement Process, Start date, Stopped Time, Target Date, Target Response, Time Remaining, Time Since Target and Violation)
    • Add milestone elements on case and work order page layouts to include (Milestone Status, Milestone Status Icon, Entitlement Process Start Time, Entitlement Process End Time). Add the Case Milestone or Object Milestone related list to Case or WorkOrder page layouts.
    • From Entitlement Settings Enable milestone feed items to help support agents monitor support activity. This option posts a notification to the feed and the record owner’s profile page when a milestone is completed or violated.
    • Expose the milestone tracker to support agents so that agents can have a complete view of upcoming and completed milestones. It also displays countdowns for active and overdue milestones. This can be added to case feed, work order feed, custom page or to service console.
    • Add validation rules to milestones from Case Milestones (from Classic) or Object Milestones (for work order) to prevent users from updating milestones unless certain criteria are met
    • Create Milestone by providing name, description and Recurrence Type. Recurrence type can be No Recurrence (occurs only once), Independent (Occurs whenever criteria is met on the record), Sequential (occurs on repeat whenever milestone criteria is met on record). Milestone cannot be applied directly to a record, it must be part of an Entitlement process.
    • Create a trigger to automate the Milestone Completion based on criteria. In Lightning Experience agents can click Mark Completed link in Milestones Component.
  • Milestones can be viewed under Milestones Page or under Entitlement Process Page within Entitlement Management Page.
  • Milestones on Support records display one of the three statuses
    • Compliant - Either complete or not in Violation
    • Open Violation - One or more milestones on the record were violated and steps in support process are incomplete.
    • Closed Violation - One or more milestones on the record were violated but the steps in support process are completed.

Entitlement Process

  • Entitlement processes are timelines that include all the steps (or milestones) that support team must complete to resolve support records like cases or work orders.
  • Each process includes the logic necessary to determine how to enforce the correct service level for customers.
  • Not all entitlements require entitlement processes.
  • Entitlement Process set up includes
    • Creation of Entitlement process from Entitlement Management page by giving a name and description. Choose criteria for the records to enter and exit the entitlement process. Optionally, choose the Business Hours which calculate the Target Date for all the milestones on this entitlement process.
    • Customize Entitlement Process Fields by added Timeline, Stopped, Stopped Since fields to the case and work order page layouts.
    • Add milestones to the process to define required steps. While adding milestones to process
      • Time Trigger (Minutes) can be specifies or apex class that is dynamically calculating the time can be specified.
      • Start Time can be configured based on Milestone Criteria (Target date is calculated when the milestone is applied to support record) or Entitlement Process Criteria (Target date is calculated when the entitlement process starts).
      • Optionally, Business Hours can be added so that Target Date calculations use them,
      • Speficy the order for this milestone execution.
      • Specify the entry criteria.
    • Milestones are measured in minutes and seconds, but their start and end times are only accurate to the minute
    • Add the Milestone Actions to entitlement process.
    • Apply the Entitlement Process to an Entitlement using Entitlement Process Lookup on Entitlement record.

Service Contracts and Contract Line Items

  • Service contracts in Salesforce represent a customer support agreement between you and your customers. It can be used to represent warranties, subscriptions, service level agreements (SLAs), and other types of customer support.
  • Contract line items are specific products covered by a service contract, not by a general contract. You can only use contract line items if your Salesforce org uses products.
  • Entitlements must be enabled to set up service contracts.
  • Follow these steps to set up Service Contracts and Contract Line Items
    • Customize Service Contract/Contract Line Items Fields specific to your industry or support process.
    • Customize Service Contract/Contract Line Item Page Layouts as per the requirements.
    • Set FLS and History Tracking on Service Contract/Contract Line Items Fields.
    • Make Service Contract tab visible in Salesforce and any custom apps.
    • Add Service Contract related list to account and contact page layouts.
    • Add Contract Line Items related list to Service Contract page layouts. This allows users to create, edit and delete contract line items.
    • Add Contract Line Items related list to Asset Layouts which allows users to view and change associations between assets and contract line items.
    • Add Contract line item lookup field to entitlement page layouts to allow users to associate line item with an entitlement.
    • Schedules aren’t available for contract line items, and community users can’t access them.
  • Use service contracts if:
    • You want to define specific service levels for your customers, such as warranties, subscriptions, and service level agreements.
    • Your customers’ entitlements are renewed at the contract level. In other words, your business processes allow you to create an entitlement for a customer only if they have an active service contract.
  • Service Contracts can be viewed/created/edited from Service Contracts tab or on the Service Contracts related list on accounts and contacts.
  • Service Contracts can be deleted/shared from Service contracts detail page or deleted from the Service Contracts related list.
  • You can’t share contract line items. Sharing for contract line items is inherited from service contract sharing. For example, users with the “Read” permission on service contracts inherit the “Read” permission on contract line items.

Milestone Actions

  • Milestone actions are time-dependent workflow actions that occur on milestones in an entitlement process.
  • Actions can be added to milestones after the milestone is added to an entitlement process.
  • There are three types of Milestone actions
    • Success Actions - The actions to take when a milestone successfully completes. Success actions still fire on milestones that are completed late.
    • Warning Actions - The actions to take when a milestone is near violation.
    • Violation Actions - The actions to take when a milestone is violated.
  • The actions that are supported within the Milestone actions are similar to that of Workflow actions.
    • Creating a Task
    • Email Alerts
    • Field Update
    • Outbound Message

Entitlement Management Models

Entitlement management can be set up to ensure 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.

Entitlements only (Simple)

  • Support eligibility is determined at account, contact or asset level
  • Use this model if
    • 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

Entitlements with Service Contracts

  • Support eligibility is determined on the basis of Service Contracts
  • Use this model if
    • 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
  • Set up lookup field on Case for Entitlement to display respective Entitlement. This can be manually set of automated through a workflow or through a Trigger depending on how this is configured.
  • If the Entitlement has Entitlement Process associated with it, the related Milestones will be populated on Case Page Layout.

Entitlements with Service Contracts and Contract Line Items (Complex)

  • Support eligibility is determined on the basis of the products covered in their service contract.
  • Use this model if
    • You use Salesforce for customer support and to manage your customers’ service contracts
    • 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
  • Service contracts in Salesforce represent a customer support agreement between you and your customers. It can be used to represent warranties, subscriptions, service level agreements (SLAs), and other types of customer support.
  • Contract line items are specific products covered by a service contract. You can only use contract line items if your Salesforce org uses products.
  • EXAMPLE You can create a service contract that covers products X, Y, and Z, and then create entitlements on the service contract that are assigned to contacts on a particular account. When one of the contacts calls to support, the agent checks whether the entitlement associated with the service contract is active. If it’s active, the agent can provide support for any of the products (represented by the contract line items) covered by the service contract.

References

...