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:

CategoryFeature Description
Invitation managementTrigger 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 closureSend 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 surveysSchedule 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 syncInvitation syncSynchronize 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 syncSynchronize all the questions answered in Medallia back to Salesforce. For information see Sending data from Medallia to Salesforce.
Closed-loop feedback (CLF) syncSynchronize CLF activity bi-directionally between Medallia and Salesforce.
Reporting360° viewView Medallia responses related to accounts and customers. For information see Enabling Experience reporting in Salesforce.
Aggregate feedback metricsView overall account NPS or trending scores over time report modules. For information see Enabling Experience reporting in Salesforce.
Closing the loopFollow-up casesCreate 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.

CategoryComponentDescription
Custom objectsMedallia app objectsUse three custom objects (Responses, Invitation, and Feedback Program) to represent response data sent from or to Medallia to trigger email invitations.
System objectsUse two back-end custom objects (Logs and Queue) to troubleshoot integration issues when sending invitations to Medallia.
Apex triggersMost 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 classesSending event-based invitationsFlow 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 invitationsLeverage the MedDailySyncJob class to send pre-scheduled invitations that are created by Feedback Programs in a daily batch.
Flow/Process Builder templatesSending event-based invitationsTemplates to trigger invitations to Medallia when a Case closes or Opportunity is "Closed Won".
Follow-up casesTemplates to trigger follow-up cases after Medallia responses are collected.
Reporting viewsPage layouts, list views, and tabsStandard Salesforce components to view Responses, Invitations, Logs, and Feedback Program records.
Lightning componentsOut-of-the-box lightning components to add to Account Detail page to view aggregate feedback metrics.
Custom buttonAdd to program buttonCustom button provided on contact list views and page layouts to add contacts to recurring or pre-scheduled Feedback Programs.
Permission setsMedallia integration userUsed to provide permission to the integration user that will create records in Salesforce through the Medallia integration.
Medallia app adminUsed for administrator users responsible for Medallia integration and setup of Salesforce components
Medallia app userUsed for end users to view Medallia feedback records.
Connected appEstablishes 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 OperationDescription
InvitationAfter InsertIf 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 ItemAfter InsertAfter Queue Item is created, process the Queue Item through the Queue so that an API request is made to Medallia.
ResponseBefore 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.

LogAfter InsertWrites 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.

How Queue Items work: diagram showing flow for future events

When invitations are ready to fire the outbound API call to Medallia, a temporary Queue Item record is created to actually send the payload.

How Queue Items work: diagram showing flow for real-time events

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.

Note: To view the Logs object, your Salesforce user must have a System Admin profile or be assigned the Medallia App Administrator permission set.