Introduction

Integrate your SugarCRM system with your CustomerGauge system so that you can send surveys to your SugarCRM contacts, and push those survey results back into SugarCRM.


Please note: This feature is currently in beta, and this support article may be subject to change.


Requirements

  • Admin Access to SugarCRM
  • Admin Access to CustomerGauge
  • A remaining Integration slot in your CustomerGauge system (contact your CSM to increase your number of integrations)


In SugarCRM

To ensure a successful integration, you'll need to set up a few things in SugarCRM.


Setting up for the Integration

  1. Go to the Administration page, "Developer Tools" section → "Configure API Platforms"
  2. Add a new platform with the name "customergauge-integration" — make sure to press the Save button!
    Adding this new platform will ensure that authentication happens smoothly, and users are not causing the integration user from logging out.

  3. Optionally, you can create a dedicated User for CustomerGauge integrations. This is useful so that access is not shared with other people.


Setting up a custom Field for Flagging

To Flag Contacts, you want to make sure you have a Field dedicated for it. This can be a Text, Checkbox, or Datetime field.


Based on your use case, you can set up the following;

  • Text Field: You want to use a Text field if you'd like the indication to be something textual, so that it's clear to your SugarCRM users.
  • Checkbox Field: A common use case is to use a Checkbox Field. This allows users to very easily see if a record is pulled or not.
  • Datetime field: You can use a Datetime field to indicate when a record has been pulled, or when the next pull should occur. This is then of great help in your Pull Filters for recurring Relational surveys.


Setting up a custom Object for Pushing survey results

If you're not pushing back survey results as Cases, chances are high you would want to push them into a new custom object called "Responses".

  1. Go to the Administration page, "Developer Tools" section → "Module Builder".
  2. Create a "New Package" called "CustomerGauge", with the key "CG".
  3. Once the package is created, add a New Module called "Responses" with the Type "basic".
  4. Once saved, make sure to Deploy the CustomerGauge package.
  5. Go to "Studio" (button in the bottom left corner), and find your newly created Responses module.
  6. Go to "Fields", and start adding Fields for everything you want to push back into SugarCRM.
  7. Optionally, you can add a "One to Many" Relationship between Contacts and the Responses module. Then, by providing the Contact ID as part of your Push data, a link is made. You can then add Responses to the Contacts Layout, having all the survey results tied to that Contact visible to your SugarCRM users. You can also use the other options available in Responses, such as Layouts, to kit out your SugarCRM system to fit your business needs.


In CustomerGauge

Once you're all set up in SugarCRM, you can head to your CustomerGauge system, and start setting up your SugarCRM integration.

  1. Go to Integration → "Integration Hub" tab.
  2. Press the "Connect" button below SugarCRM in the CRM Hub.
  3. Authenticate
    1. Instance Name: Give your Integration a short name to quickly recognize it

    2. Description: Describe the purpose of this integration for future reference

    3. Consumer Key: If you have created a specific OAuth Key for this integration, you'll need to add the Consumer Key. By default, the Consumer Key is "sugar".

    4. Consumer Secret: If you have created a specific OAuth Key for this integration, you'll need to add its Consumer Secret. By default, the Consumer Secret is left blank.

    5. Username: Fill in the username of the SugarCRM User that you want to use for this integration.

    6. Password: Fill in the password of the SugarCRM User that you want to use for this integration.

    7. API Platform: Fill in the API Platform name that you've created as part of "Setting up for the Integration".

    8. SugarCRM Site URL: Fill in the URL of your SugarCRM instance. Please ensure it contains both the subdomain and maindomain, up to the trailing slash after the website URL.

  4. Fields to Pull

    1. For each CustomerGauge field, choose the appropriate Object field. Object fields are the fields that are provided by SugarCRM.

  5. Pull Criteria
    1. Decide to pull data manually or automatically
      1. Manually: Choose this if you'd like to press a button to pull data into CustomerGauge — useful when testing
      2. Automatically: Choose this to automatically pull data on a regular interval. You'll be able to choose to pull data automatically on a hourly, daily, weekly, monthly, quarterly, every half year, or yearly basis. You'll also be able to choose at what date to start pulling data.


    2. Filters: You can filter data from SugarCRM, so that you pull only the records you're interested in. A common use case is to match your filter with your Flag. For example, if you Flag "Pulled by CG" with the value "True", you can apply the Filter "Pulled by CG is_not True" to exclude records that have been flagged.

      Additionally, you can add any number of Filters to make just the right data selection you need for this integration. All Filters work in an "AND" kind of way, so you can easily set up a Filter such as "Country is NL" and "Touchpoint is Relational".

    3. Flag Pulled Records: if you'd like to indicate in SugarCRM that a contact has been pulled by CustomerGauge, you can Flag it. Not only gives this great visibility within SugarCRM, it also allows you to use it in your Filters (see above step) to prevent pulling the same records again.
      1. Flagging a date field: When you flag a date field, you can choose a number of days. This allows you to set a future date for when you want to pull that Contact again.
      2. Flagging a boolean field: When you flag a boolean field (true/false), you'll be able to indicate that this contact has been pulled.
      3. Flagging a text field: If you'd prefer to instead provide a static value, you can use a text field to indicate the pulled status.
  6. Fields to Push
    1. This step is optional — if you'd like to just pull data from SugarCRM without pushing survey results, you can skip this step and go straight to the Confirmation step.
    2. Select the object that you want to push your survey results to.
    3. For each of the CustomerGauge fields, choose a matching Object field from your SugarCRM fields to push that CustomerGauge field into.
  7. Confirm
    1. In this last step you can confirm that all the previous steps have been set up correctly. If you are doing a Manual Pull, this is also where you hit the "Save and Pull" button to start pulling your data from SugarCRM.


Known Issues

Restrictions

  • The number of records being pulled through SugarCRM is restricted to up to 100 records per Pull. This counts for both Automatic Pulls, as well as Manual Pulls.

Pull Filters

  • Applying a filter does not include default values of fields, unless the value actually has been updated in SugarCRM to be the same as the default value. For example, if you use a custom checkbox field "Pulled by CG", and then want to filter on that field, none of your records would qualify because their default value is not their actual value.
  • When using a text field as a filter, if the filter value contains an apostrophe character, you should use "contains" rather than "equals".