Medallia for Salesforce managed package
The Medallia for Salesforce package is an off-the-shelf app to manage feedback throughout the sales and account management process in Salesforce.
The managed package can receive software upgrades and provides compatibility with Salesforce products and interfaces, while also bringing support for your data architecture.
Feature overview
The Medallia for Salesforce package integration supports the following use cases:
| Category | Feature | Description |
|---|---|---|
| Invitation management | Trigger Medallia invitations from case closure | Send Medallia invitations to collect customer feedback after a case is closed in Salesforce. For information see Sending data from Salesforce to Medallia. |
| Trigger Medallia invitations from opportunity closure | Send Medallia invitations to collect feedback from contacts after an opportunity is "Closed" or "Closed Won". For information see Sending data from Salesforce to Medallia. | |
| Schedule relationship or event-based surveys | Schedule Medallia invitations to collect feedback from contacts on a recurring basis such as every year, or after a meeting or conference. For information see Sending data from Salesforce to Medallia. | |
| Record sync | Invitation sync | Synchronize the status of a Medallia email invitation (i.e.: successfully delivered, bounced, etc.) back to Salesforce. For information see Sending data from Medallia to Salesforce. |
| Survey response sync | Synchronize all the questions answered in Medallia back to Salesforce. For information see Sending data from Medallia to Salesforce. | |
| Closed-loop feedback (CLF) sync | Synchronize CLF activity bi-directionally between Medallia and Salesforce. | |
| Reporting | 360° view | View Medallia responses related to accounts and customers. For information see Enabling Experience reporting in Salesforce. |
| Aggregate feedback metrics | View overall account NPS or trending scores over time report modules. For information see Enabling Experience reporting in Salesforce. | |
| Closing the loop | Follow-up cases | Create follow-up cases in Salesforce based on Medallia customer feedback to close the loop. |
Component overview
The Medallia for Salesforce package integration comes with the following components out of the box.
| Category | Component | Description |
|---|---|---|
| Custom objects | Medallia app objects | Use three custom objects (Responses, Invitation, and Feedback Program) to represent response data sent from or to Medallia to trigger email invitations. |
| System objects | Use two back-end custom objects (Logs and Queue) to troubleshoot integration issues when sending invitations to Medallia. | |
| Apex triggers | Most custom objects objects in the package come up with Apex Triggers that fire on either before or after insert operations. These triggers perform automated actions like sending API calls to Medallia. | |
| Apex classes | Sending event-based invitations | Flow Builder templates use two Apex classes (medallia_xm__MedGenericProcess and medallia_xm__MedProcessSendInvitation) to send invitations to Medallia. Use the MedProcessSendInvitation class when sending invitations linked to the Opportunity or Case objects. Use the MedGeneric Process class for invitations linked to all other objects.Note: If creating any custom processes using Apex Triggers or Apex Classes, utilize the Invocable methods in the above classes.
|
| Sending schedule-based invitations | Leverage the MedDailySyncJob class to send pre-scheduled invitations that are created by Feedback Programs in a daily batch. | |
| Flow/Process Builder templates | Sending event-based invitations | Templates to trigger invitations to Medallia when a Case closes or Opportunity is "Closed Won". |
| Follow-up cases | Templates to trigger follow-up cases after Medallia responses are collected. | |
| Reporting views | Page layouts, list views, and tabs | Standard Salesforce components to view Responses, Invitations, Logs, and Feedback Program records. |
| Lightning components | Out-of-the-box lightning components to add to Account Detail page to view aggregate feedback metrics. | |
| Custom button | Add to program button | Custom button provided on contact list views and page layouts to add contacts to recurring or pre-scheduled Feedback Programs. |
| Permission sets | Medallia integration user | Used to provide permission to the integration user that will create records in Salesforce through the Medallia integration. |
| Medallia app admin | Used for administrator users responsible for Medallia integration and setup of Salesforce components | |
| Medallia app user | Used for end users to view Medallia feedback records. | |
| Connected app | Establishes a secure authentication mechanism between Salesforce and Medallia using OAuth. | |
Apex Triggers
The Medallia for Salesforce package includes the following triggers to perform automated actions in your Salesforce org:
| Object | Operation | Description |
|---|---|---|
| Invitation | After Insert | If an Invitation is created with the Date to Send <= now (i.e.: the Invitation must be sent now), create a Queue Item record to send the Invitation's payload to Medallia via API. |
| Queue Item | After Insert | After Queue Item is created, process the Queue Item through the Queue so that an API request is made to Medallia. |
| Response | Before Insert After Insert | Before the Response record is created, identify or create a new Feedback Header
record to tie to the Response. After the Response record is created, there is optional logic to automatically create a case via custom setting. |
| Log | After Insert | Writes to the log object from a platform event trigger whenever there are errors. |
Queue Items
Not every time an invitation record is created in Salesforce, an outbound API call is made to Medallia: in some cases — such as the relationship survey use case — invitation records are stored in SFDC until a certain date or time has elapsed.
When invitations are ready to fire the outbound API call to Medallia, a temporary Queue Item record is created to actually send the payload.
Logs
A backend Logs object that captures errors being thrown within your SFDC org when utilizing the Medallia Managed package is also provided with your managed package. For information, see Troubleshooting for Salesforce Administrators.
Logs messages could show when:
Issues with Invitation records setup
Issues with sending to Medallia's Inbound API such as if temporary outages occur or endpoint is configured incorrectly.
