Demandbase for Salesforce Setup

  • Updated

Systems Used

  • ABM Platform (Required)
  • Salesforce.com (SFDC) Enterprise Edition and Above (Required)

Overview

The Demandbase For Salesforce App surfaces account website engagement and intent data from Demandbase directly within Salesforce to help marketers score and prioritize accounts and report on Demandbase data in Salesforce reports.

How it Works

The Demandbase Salesforce app pushes data into Salesforce from the ABM Platform audiences you created previously using a CRM report. The account data pushed into Salesforce helps you create customized account scoring by using the indicators meaningful to your business. You can then view and report on accounts based on their score to gain insights and focus.

Setup Steps

Follow these steps to set up the Demandbase for Salesforce App.

Step 1. Set Up OAuth and Admin

You'll need to set up these items prior to starting the installation steps here.

  • SFDC OAuth connection with ABM Platform
  • SFDC Admin as an admin-level user in the ABM Platform

Step 2. Connect Test and Production Environments

Total Time: 3 minutes

Role: Demandbase Admin

2.1. Prepare the Test Environment/UAT

To proceed with the UAT connection, you’ll want to connect your CRM OAuth connection from Demandbase to your test environment at this time.

NOTE: If currently the Salesforce connections shows that it’s connected to a production instance URL, by switching to UAT you will disconnect your SFDC data from syncing to Demandbase ABM Analytics. However, reconnecting to production after testing is complete will restore production data. Only do this if you have approval from the business consumers of ABM Analytics data, Conversion, or CRM Audiences.

2.1.1. Log in to the ABM Platform and click Setup, then on the Salesforce Integration card click Manage Authorization.

Salesforce_card2.png

2.1.2. On the Salesforce Connected App screen, confirm that you are connected to Salesforce.

preinstallation_step_1.png

2.1.3. Connect the CRM OAuth to UAT

  • Sign out of any existing SFDC sessions or do this in a new incognito tab.
  • In a new tab sign into your SFDC UAT environment.
  • From the Salesforce Connected App screen in the ABM Platform, click Revoke.
  • Reconnect by clicking Connect and signing into your UAT SFDC account.

2.1.4. Connect the CRM OAuth to Production

  • Sign out of any existing SFDC sessions or do this in a new incognito tab.
  • In a new tab sign into your SFDC production.
  • From the Salesforce Connected App screen in the ABM Platform, click Revoke.
  • Reconnect by clicking Connect and signing into your production SFDC account.

Learn More

Step 3. Install and Configure

Total Time: 15 minutes

Role: SFDC Administrator

3.1. If you have not received the package link, ask your Demandbase CSM/Onboarding team for acquiring the install link.

3.1.1. Copy the package link and paste it after your .com URL.

Example package link

https://acme.salesforce.com/packaging/installPackage.apexp?p0=XXXXXXXXXXXXXXX

3.1.2. When prompted for Admins, your selection of All Users or Specific Profiles depends on your use case.

  • If installing in UAT: Go ahead and choose Install for Admins Only so you can do all the testing, you can add other end users to the Permission Sets as needed.
  • If installing in Production: If you have many users who will use the application then choose Install for All Users or Install for Specific Profiles. Otherwise, you’ll need to add each user one at a time to the Permission Sets.

install_salesforce1.png

3.1.3. Wait for the application to install. You may see a screen indicating you’ll receive an email when it’s complete. This is normal and can take several minutes depending on your Salesforce queue and how busy it is.

3.2. Check Installation Status

3.2.1. After receiving the email that installation is complete, navigate to Setup > Quick Find  then search for Installed Packages and navigate to it.

3.2.2. Look for the package from Step 3.1 named Demandbase For Salesforce 

3.3. Configure Permission Sets

3.3.1. Navigate to SetupQuick Find and search for Permission Sets and open it.

3.3.2. Find the following two Permission Sets and ensure the specific Profile or users have been assigned as needed. If you installed for All Users, then it’s likely not needed but each SFDC org may vary.

Permission Sets

  • Demandbase for Salesforce User (Use this for standard users who should view the application but not make any changes)
  • Demandbase for Salesforce Admin (Use this for Advanced users who should modify and push data to Salesforce)

Permission Set Definition

Artifact Type Demandbase for Salesforce User Demandbase for Salesforce Admin Description
Demandbase for Salesforce App App Read Read The salesforce app containing the "Accounts" and the "Demandbase" tabs.
Audiences  Visual Force Page Read Read Visual force page containing Demandbase for Salesforce App.
Account List Custom Object Read, View All Read, Create, Edit, Delete, View All, Modify All Audience
Website Activities Custom Object Read, Create, Edit, Delete, View All, Modify All Read, Create, Edit, Delete, View All, Modify All Audience Level Engagement
Account List Pages Custom Object No Access Read, Create, Edit, Delete, View All, Modify All page of accounts used while saving
Account List Account Custom Object Read, Create, Edit, Delete, View All Read, Create, Edit, Delete, View All, Modify All Audience Account
Account Intent Custom Object Read, View All Read, Create, Edit, Delete, View All, Modify All Account Intent
Account List Opportunities Custom Object Read, Create, Edit, Delete, View All, Modify All Read, Create, Edit, Delete, View All, Modify All Audience related Opportunities
Account List Products Custom Object Read, Create, Edit, Delete, View All, Modify All Read, Create, Edit, Delete, View All, Modify All Audience related Products
Account Field Mappings  Custom Object No Access Read, Create, Edit, Delete, View All, Modify All Custom Field Mappings for Save to Salesforce
Save to Salesforce Button No Access Full Access Allows a user to push data to Salesforce
Save to Pardot Button No Access Full Access Allows a user to push data to Pardot
Set Default Custom Fields Button No Access Full Access Allows a user to push data to Custom Fields
Create Account List Button Full Access Full Access Allows a user to create Audiences/Account Lists

 

3.4. Set up the Auth Credentials

3.4.1. Navigate to App Launcher again (Or Plus icon) to open a new Tab.

3.4.2. Navigate to Demandbase API and keep it open.

3.4.5. In a new browser tab, navigate to app.demandbase.com and log in.

3.4.6. Navigate to Cogwheel > Settings > Access Tokens.

setting_up_auth_creds_step_6.png

3.4.7. Go ahead and generate a new Access Token.

3.4.8. Copy this token and paste it into the Demandbase API Token field in the app Demandbase API in Salesforce.

Screen_Shot_2019-08-08_at_5.20.09_PM.png

3.4.9. Save 

Step 4. Run the Application

Total Time: 2 minutes

4.1. Navigate to either the App Launcher in Lightning or a new tab in Salesforce Classic.

4.2. Scroll to the Demandbase tab with a “lightning” icon and click to open it.

4.3. At this time the app should load and you’ll see the Demandbase Platform in Salesforce.

4.4. This is enough to ensure the application was installed successfully and you can proceed to do more integration testing if desired.

Running it in Classic

Running_the_app_1.png

running_the_app_2.png

Running it in Lightning

running_app_3.png

Successful Load

running_the_app_4.png

Step 5. Test the App

Total Time: 10 minutes (may vary depending on Salesforce queue of each customer)

Role: SFDC Administrator

Prerequisites:

  • You’re a Salesforce Admin
  • You’ve installed the application and followed the pre-installation instructions
  • Your Demandbase account has at least one Demandbase Profile (see Creating a Profile)
  • You have created a CRM Audience (see creating a CRM Audience)
Note: ONLY CRM Audiences can have the “Save to Salesforce” functionality because they contain CRM accounts and we have a mapping to push data to them. Otherwise, it will simply say “View in Demandbase Platform”. Testing_the_app_Note_1.png

5.1. Push Data to Salesforce - Save to Salesforce

5.1.1. On the left-hand side filters, choose Account List Source drop-down.

5.1.2. Select CRM.

Pushing_data_to_Salesforce_step_2.png

NOTE: If you don’t see any Account Lists see Step 5 Prerequisites.

5.1.3. Click Save to Salesforce for any CRM based list. This will kick off a series of Apex Batch Jobs so it will take some time depending on the size of the list (for example, the number of accounts) and the resources available to your Salesforce instance. Once the push is complete, you’ll get a popup saying it has completed.

pushing_data_into_salesforce_step_3_a.png

5.1.4. You can navigate away if you wish or open a new tab.

pushing_data_to_salesforce_step_4_-_a.png

pushing_data_to_salesforce_step_4_-_b.png

5.2. Confirming Data Has Been Saved

In general, the Demandbase Intent and web engagement data is stored in custom objects. This step navigates through those objects to make sure there is data.

5.2.1. Navigate to App Launcher or click the Plus sign for new tabs in Classic to find the tab titled Account Lists.

Screen_Shot_2019-08-09_at_10.15.25_AM.png

 

NOTE: If you do not see the Account List tab you may not have permission. To acquire permission please contact your Salesforce admin.

   

5.2.2. Open the Account List tab.

 

You should see a custom object with a name similar to A-0000. This represents the Account List primary object for the list you just pushed over.

NOTE: If you do not see any objects perhaps you’re looking at only “recent” and you need to set your view to “All”.
confirming_data_step_3_a.png

5.2.3. Drill into the A-0000 object and you should see some familiar data about the Account List.

  • In Classic scroll down to Account List Accounts or in Lightning click Details and you should see the accounts related to this list.

DETAILS

confirming_data_step_5.png

 

RELATED

confirming_data_step_6.png

5.2.5. Click into an account custom object by clicking into one of the AA-000000 objects.

Here you should see data about an account as one would find in the Demandbase Platform.

Learn More

See the Demandbase Salesforce Data article for all the data fields available in custom objects.

NOTE: If you cannot find any of the custom objects or they are totally empty see this Troubleshooting guide.

Step 6. Store the Data

Total Time: 15-10 minutes

Role: SFDC Administrator

Demandbase stores data into custom objects by default. See the FAQ for more information. However, we recognize it’s still useful for this data to be in custom fields so we’ve created this capability using the Demandbase Mappings tab.

6.1. Initial Set-Up

6.1.1 Navigate to the App Launcher or click the new Tab plus sign in Classic to add a new tab

6.1.2. Open the tab called Demandbase Mappings.

  • Here you will see all the Demandbase attributes one can map to a custom field. To understand the definition of the data attributes please see Demandbase Salesforce Data.
  • You’ll find in the 3rd column, Account Custom Field is your custom fields on the Account record. Custom fields on the Account is the only place our data can be stored at this time.
  • If you don’t have any custom fields on the Account for these fields, you can create them based on what the business users want to push over to SFDC. See Create Custom Fields for the Demandbase Mapping
NOTE: Account List is a required field and must be included in the mapping. It must also point to Account List so make sure to use Lookup(Account List) as shown in the example field setup screenshot below in 6.2.5.

Storing_data_into_custom_fields_step_2a.png

6.1.3. Check the Enable checkbox for each field.

6.1.4. Click Save. This will take some time as it’s an Apex Job which depends on your Salesforce instances' available resources and how busy the queue is. Once complete it will no longer show a message.

storing_data_into_custom_fields_step_7.png

6.1.5. Navigate back to the Demandbase tab and for any audience click Set Custom Field Default. This is required to save to custom fields.

When the mapping has been saved, you can test it out by following the Pushing Data to Salesforce section above.

6.2. Create Custom Fields for the Demandbase Mapping

NOTE: If your business decides to use the custom field mapping then you’ll want to ensure you understand what each data field entails. Please refer to our Demandbase Salesforce Data article for definitions.

If you’re an admin wondering what the field types should be, then navigate to Demandbase Mappings tab in SFDC and view the second column. Intent circled as an example.

For Intent which is a multi-picklist you’ll want to set it up as such:

6.2.1. Create a multi-picklist.

6.2.2. Select the radio button: “Enter Values, with each value separated by a new line”

6.2.3. Type in “Intent:” or a simple placeholder text like a dash.  This is just so the list has a value for now so we can create the field.

6.2.4. Uncheck the “Restrict picklist to the values defined in the value set”. Demandbase will automatically update this picklist with new values from the application side.

6.2.5. Fill out the rest of the required fields and Save.

creating_custom_fields_step_3.png

Example Custom Field Setup

Screen_Shot_2019-08-09_at_11.04.36_AM.png

Limitations:

Saving to custom account fields will not work in the following situations:

  • Current User does not have write access to the Account List's related Account Records.
  • Current User does not have write access to the Account Custom Fields which were mapped through Demandbase Mappings API.
  • A custom Account trigger causes the Account custom field updates to fail
  • Salesforce cannot lock fields for updating because you have other jobs or users editing those accounts.
  • Only Users with "Modify All Data" permission(i.e. Admins) can modify the Account Field Mappings Custom Metadata. 

6.3. Set Custom Field Default (Required)

When you push data to Salesforce via Save to Salesforce you push it over for one Audience at a time. Let’s say you have 2 Audiences, "Enterprise Target Accounts" and "Enterprise Q1 Cloud Security Ad Campaign." Let’s say GE is in both Audiences and each one has its own unique profile, keywords and data.

Let’s assume you have an Account custom field called "Account_Intent_c."

6.3.1. You push Save to Salesforce on the Enterprise Target Accounts Audience

  • GE’s intent is “ERP.”
  • Account_Intent_c =  ERP.

6.3.2. Later you decide to push Save to Salesforce on the Enterprise Q1 Cloud Security Ad Campaign.

  • In this Audience GE’s intent is “Cloud Security”.
  • Account_Intent_c =  Cloud Security.
  • You have overwritten the previous Intent value.

6.3.3. To prevent different Audiences from overwriting custom field data, you MUST select the Set Custom Field Default on an Audience to make that Audience be the default for Custom Fields. All the data is still in custom objects for any Audience but this prevents two Audiences that both have GE in them from overriding each other.

Screen_Shot_2020-10-14_at_10.27.36_AM.png

Tip

Create a master Audience of all accounts with a main Profile and set it as custom field default so there’s only Audience responsible for custom field updates.

 

Was this article helpful?

8 out of 8 found this helpful