Integrating surveys with Salesforce

This topic describes how to integrate Medallia Agent Connect and Salesforce using a managed package. When the integration is complete, Agent Connect sends survey requests automatically when tickets are solved. Feedback in Agent Connect links directly to Salesforce, enabling your team to see the tickets related to specific pieces of feedback.

Installing the Agent Connect Salesforce Managed Package

Important: You must have Salesforce credentials to download the managed package.
  1. Click one of the following links to download the latest managed package from Salesforce:
  2. On the Installation panel, select All users, select the acknowledgment box, and then click Next.
  3. Grant access to third-party websites, and then click Continue.

    The installation begins.

  4. When the installation is complete, click Done.

Updating the integration status

Complete this procedure in the Agent Connect Configuration app, available from the Salesforce App Launcher.

  1. On the Integration Status tab of the Agent Connect Configuration app, enter the following API information, which you can obtain on the Integrations screen in Agent Connect.

    For more information, see Integrations.

    • Test API Key
    • Production API Key
    • API Secret (data return only)
  2. Enter the email addresses you want to use for alert notifications, and then click Update Integration Status.

    If the integration encounters an error, Agent Connect sends notifications to the email addresses you enter.

    Enter email addresses for error notifications

Creating triggers that email surveys automatically

Use this procedure to create the triggers that enable Agent Connect to email surveys to customers automatically when tickets in Salesforce are closed. The managed package allows for the use of multiple base objects.

Important: Agent Connect can send surveys automatically only when the following criteria are met:
  • The Team Member that has resolved the ticket has an approved Agent Connect profile.
  • The customer’s record includes an email address.
  • A Team Member is assigned to the case when it is solved.
  1. Create a custom lookup field on the Agent Connect Request object.

    This field looks up the base object used to track customer interactions. You must create a custom lookup field for each object used to trigger Agent Connect requests.

    Note: Skip this step for base objects of the types Tasks and Events, since custom lookups are not available for those Salesforce object types.
    1. In the Quick Find field in Salesforce Setup, enter Object, then find and select Agent Connect Request.
    2. Select New > Lookup Relationship.
    3. From the dropdown menu, select your base object.
    4. Enter a field name.

      For example, you might name the field Case_Lookup if the base object is case.

    5. In the Description field enter a description such as, The object that triggers a Agent ConnectRequest.
    6. Click Next.
    7. Set your field-level security.
    8. Click Next, and then click Save.
  2. Create a DateTime field on each base object to store the trigger.

    This field identifies when an interaction is eligible for a Agent Connect feedback request.

    1. For the Field label, enter Send Agent Connect Request at.
    2. For the Description, enter This is the time at which an object becomes eligible to receive a Agent Connect Request.
    3. Click Next.
    4. Set your field-level security.
    5. Click Next, and then click Save.
  3. For each base object, create a trigger (workflow or process builder) that populates the previously created DateTime field, based on actions that your team members complete.

    In the workflow, include the business logic to include and exclude interactions from sending surveys. For example, If you want all cases eligible for survey requests as soon as they are closed, your workflow would populate the custom DateTime field with the time that the case was closed.

    1. In the Quick Find field in Salesforce Setup, enter Workflow, and then select Workflow Rules.
    2. Select New Rule, and then select your base object.
    3. For the Rule Name, enter Send Agent Connect Request.
    4. For the Description, enter Sets the Send Agent Connect Request DateTime field.
    5. Enter the following Rule Criteria:
      • Case Closed equals true
      • Case Contact Email not equal to "leave this blank"
      • Add Any additional business logic as needed. For example, if agents sometimes assign cases to queues after they closing the case, you might enter a criteria of Case Owner is not "Queue Name".
    6. Click Save, and then click Next.
    7. Select Add new workflow action > New field update.
    8. For the Name, enter Set Agent Connect Request DateTime.
    9. For the Description, enter Sets the DateTime field.
    10. For the Field to update, select your newly created custom DateTime field.
    11. To set the new value, select Use a formula, and then enter the formula NOW().
    12. Click Save, and then click Done.
    13. Activate the workflow rule.

Creating field mappings

For your base objects, create field mappings that inform Agent Connect where to find the information required to send a feedback request.

  1. In the Agent Connect Configuration app, open the Field Mapping tab.
  2. In the dropdown, select your base object, and then click Active.

    Create field mappings for your base objects

  3. Map other fields for the base object.

    For list of common field mappings, see the list below.

  4. If you have more then one base object, click the plus icon to add field mappings for that object, and then repeat the previous steps.

Common field mappings

FieldDescription
Customer nameThe correct name associated with the customer in the interaction. Related objects are available here, such as Contact - Full Name.
Customer emailThis email address of the customer in the interaction. The Agent Connect survey is sent to this email address. Related objects available here, such as Contact - Email.
Employee identifierThe employee in the interaction, who needs to be identified in the same way the employee is identified in Agent Connect. This is either an email address or a custom employee ID. The mapping to either field might be something like Owner - Email or Owner - Employee Number.
ChannelThe medium used for the interaction. If this is not stored in Salesforce, use a formula field to provide it.
Agent Connect request eligible custom fieldA reference to the DateTime field storing the point at which an interaction becomes eligible for a Agent Connect survey request. Every five minutes a background job finds objects that have a DateTime between the previous job and the current time, and sends survey requests for each of those objects.
Do Not SendThis is not a required field. Use this field when your team has business rules for when a survey request should not to be sent. This is typically set via formulas or workflow, but can also be a field that is made available to agents to set manually.
TagsThis is not a required field. Tags provide more insight about specific interactions. Case reason and case type are two common examples that can be from any related object. These can be provided as a string, picklist, or picklist (multi) field.
BrandThis is not a required field. If you use multiple brands, this identifies which brand associated with the interaction, which affects the logo and color scheme shown in the request, as well as in reporting. This can be identified in whichever way is easiest for you. A mapping will be set up in Agent Connect to know how to process each brand separately. For more information, see Branding.
LanguageThis is not a required field. If you use multiple languages, this field identifies the language of the interaction so the survey request can also be in that language. If the format does not match as needed, use a formula field to associate them appropriately, and then map to that field. For more information, see Multi-language surveys.
CountryThis is not a required field. This field can provide richer reporting within Agent Connect, especially if you are supporting in multiple languages. If the format does not match as needed, use a formula field to associate them appropriately, and then map to that field. For more information, see Multi-language surveys.

Testing the integration

Testing provides an opportunity to confirm that the field mappings and workflow you configured are behaving as expected. The test period should be long enough to experience all types of use cases and variations of the triggers you configured. Work with your Agent Connect Client Success Manager to fully test your integration, and to resolve any issues.

During testing, all surveys are sent to the address entered in the API Test Email field on the Agent Connect Integrations screen. This enables you to see what your customers see when they receive a survey. You can step through the customer experience selecting a star rating, commenting, and so on.

When testing, Agent Connect does not collect responses. Agents can send requests manually during testing.

To enable testing in the Agent Connect Configuration app, set the Requests Auto-triggering field to Test.

The Requests Auto-triggering field set to Test

Moving the integration to production

When your testing is complete, and everything is working as expected, move your integration to production.

  1. In the Agent Connect Configuration app, set the Requests Auto-triggering and Data Return fields to Production.

    The Requests Auto-Triggering and Data Return fields set to Production

  2. In Agent Connect, open the Integrations setup screen.
  3. For each channel you integrated, switch that field to On, and then click Update.

    Integrated Channels in Stella Connect

Creating a Do Not Send Agent Connect Survey field

Although Medallia recommends that all resolved cases receive a Agent Connect request, there might be some occasions when a survey should not be sent. When this is needed, it is still beneficial to make a Agent Connect API request for reporting about how many requests are skipped because of business rules or agent discretion.

To take advantage of this optional feature, create a new custom Boolean field on your target object. This field can be filled either manually by an agent or programmatically with a formula, as needed by your organization. Agent Connect sends a survey request unless this Boolean value is explicitly set to true. Map that new field in the Field Mappings tab of the Salesforce Agent Connect Configuration app.

Managed package release notes

VersionNotes
v15Bug fix: The timezone offset is updated for all possible offsets.
v14

New features:

  • Agent Connect error alert recipients are customizable. You can now enter the email addresses of the team members you want to be notified when there is an error with a survey or with the integration.
  • Areas of Excellence is now part of the Agent Connect response.

Bug fixes:

  • The Agent Connect icon is updated for Lightning views.
  • The timezone offset is updated for clients located in time zones other than GMT.
v13

New feature: Channel validation has been removed. Agent Connect now supports custom channels. If you have a request with a channel not set up on Agent Connect (such as fax), it will no longer generate an error in Salesforce as invalid. It is displayed on the invalid status page in Agent Connect.

Bug fixes:

  • The Missing Originating Record ID (case is assigned to queue) and print the correct error message is in the Agent Connect Requests list in the app.
  • The correct URL is sent to Agent Connect when you resend a survey by clicking the link on the survey details in Salesforce.