Check out our free Chrome Extension.

Salesforce Integration

Overview

Salesforce provides customer relationship management service and also sells a complementary suite of enterprise applications focused on customer service, marketing automation, analytics, and application development.

With the Salesforce integration enabled, accounts on all paid plans can manually create new Sales accounts from Store Leads domains. Existing Sales accounts can also be manually updated.

Accounts on the Pro, Elite or Enterprise plans can also:

  • Automatically update all existing Salesforce accounts and leads with the latest Store Leads data. This can be configured to happen automatically as soon as we refresh our data (weekly) or triggered manually.
  • Automatically update Salesforce accounts when they are manually created or modified within Salesforce.
  • Automatically update Salesforce leads when they are manually created or modified within Salesforce.
  • Automatically create new Salesforce accounts for any new stores on a list.
  • Export domains to a CSV file that is compatible with Salesforce CSV import. This is useful for initially creating accounts in Salesforce or for manual bulk updates.

Requirements

You will need the following to enable the Salesforce integration.

  • To connect to Salesforce with a user account that has permission to use the Salesforce API. You may wish to create a Salesforce API user for this purpose.
  • The Account object in Salesforce must have the following fields visible to the API user. You may need to set field-level permissions so that the fields are visible to the API user.
    • Website
    • IsDeleted

Enabling the Salesforce Integration

  1. To enable the Salesforce integration, visit the Integrations page in the Dashboard and click on Salesforce.

    Salesforce Integration Summary
    Salesforce Integration Summary.
  2. You'll see a page that summarizes the Salesforce integration. Click the enable button to proceed.

    Enable Salesforce Integration
    Enable Salesforce Integration.
  3. At this point, you may be asked to login to your Salesforce instance. You'll also be asked for permission to allow Store Leads to manage data in your Salesforce instance. You must approve this request in order to use the Salesforce integration.

    Once you approve the request, your Salesforce integration will be enabled. As soon as the integration is enabled, we scan your Salesforce instance to see if there is any overlap between accounts in Salesforce and domains in the Store Leads database.

    Note: When the Salesforce integration is first enabled, you will be establishing the "Organization Connection" between Salesforce and Store Leads. All automated enrichment performed by Store Leads will be done with the Salesforce account credentials that you use here. Often, it is best to use a dedicated API account to establish the Organization connection.

    Note: Please contact us if you'd like to connect to a sandbox instance for testing.

Connecting to Salesforce with Individual Accounts

When the Salesforce integration is enabled by the Store Leads account owner, it establishes an "Organization Connection" to Salesforce. This means that:

  • All automated actions that Store Leads performs in Salesforce will be done using the Salesforce credential supplied when establishing the organization connection.
  • If you have shared access to your Store Leads account with other users, then any manual actions performed by those users will also default to using the Salesforce credentials of the organization connection. To fix this, each Store Leads user can also connect to Salesforce using their own Salesforce account credentials. Doing so ensures that accounts created manually by a user are attributed to the right person in Salesforce. Each account should visit the Integrations page, click on the "Salesforce" link and then click on the "Connect to Salesforce" button.
Enable Salesforce Integration
Enable Salesforce Integration.

Disabling the Salesforce Integration

If you wish to deactivate the integration, simply click the disable button.

Disable Salesforce Integration
Disable Salesforce Integration.

General Configuration

The Salesforce integration provides the following general configuration options.

  • Create separate Salesforce accounts for each of the merchant's subdomains. If there are 3 domains for a single merchant (www.merchant.com, uk.merchant.com and merchant.ca), all 3 will be created as separate Salesforce Accounts if this setting is enabled. If this setting is disabled, only a single Account (with the highest ranked domai) will be created in Salesforce. This does not apply to stores on provider domains such as merchant.myshopify.com.
  • Use Salesforce Bulk API. Using the Bulk API uses fewer Salesforce API calls and speeds up bulk enrichment. Note that this feature is only available on certain Salesforce plans and requires a specific account permission ("Manage Data Integrations"). Be sure to add that permission to the Salesforce account that you are using for your Organization connection.
  • Send Daily Integration Error Email. Enable this option to receive a daily email of any errors that occurred when trying to enrich records.
Salesforce configuration
Salesforce configuration.

Account Enrichment

By default, Store Leads will automatically enrich Salesforce accounts every week when we publish our weekly data update. Salesforce accounts are also enriched shortly after they are created or changed. Salesforce accounts are only enriched if they have a Website that matches a store in our database that your plan can access.

Fields Mappings For Salesforce Accounts

Store Leads will not send any data to Salesforce until you configure field mappings. Field mappings determine which Store Leads data is written to specific fields in Salesforce Accounts.

To configure these field mappings, visit the Integrations page, click Salesforce and go to the Account Field Mappings section.

Salesforce Account Custom Fields
Salesforce Account Custom Fields.

You may need to create new Account fields within Salesforce Setup to accomodate Store Leads data. Be sure to configure field-level permissions so that the field is visible to the connected account.

The following fields can be sent to Salesforce.

Aliases
  • A list of alternate domain names for the store's ecommerce website.
  • Suggested field type: Text (with max length 2048)
Android App ID
  • The id of the store's Android app (if any).
  • Suggested field type: Text (with max length 255)
Android App URL
  • The url of the store's Android app (if any).
  • Suggested field type: Text (with max length 255)
Average Product Price
  • The average price of products sold in the store's ecommerce website. Values in the major unit of the store's currency (e.g., dollars of USD).
  • Suggested field type: Number
Average Product Weight
  • The average weight of products sold in the store's ecommerce website (in grams).
  • Suggested field type: Number
Brands Page URL
  • The url of the store's brands page (if any).
  • Suggested field type: Text (with max length 1024)
Categories
  • A list of the store's ecommerce website categories. Categories represent the store's industry vertical (e.g., "/Apparel" or "/Beauty & Fitness/Face & Body Care")
  • Suggested field type: Multipicklist (unrestricted)
Categories (Top-level only)
  • A list of the store's ecommerce website top-level categories. Categories represent the store's industry vertical (e.g., "/Apparel" or "/Beauty & Fitness")
  • Suggested field type: Multipicklist (unrestricted)
City
  • The city of the merchant (if known)
  • Suggested field type: Text (with max length 64)
Company IDs
  • A list of company ids (e.g., "CVR nr. 94052542") found on the store's website.
  • Suggested field type: Text (with max length 256)
Contact Page URL
  • The url of the store's contact page (if any).
  • Suggested field type: Text (with max length 1024)
Country Code
  • The store's country code.
  • Suggested field type: Text (with max length 2)
Created At
  • The date at which the store's ecommerce website was created.
  • Suggested field type: Date
Currency Code
  • The 3-letter ISO currency code used on the store's ecommerce website.
  • Suggested field type: Text (with max length 3)
Description
  • A text description of the store's ecommerce website. Generally used to describe the goods and services provided by the merchant. Comes from the meta description tag on the stores's home page.
  • Suggested field type: TextArea (Long)
E-Commerce Plan
  • The name of the ecommerce platform's pricing plan that the merchant is using (if known). e.g. "Shopify Plus"
  • Suggested field type: Text (with max length 64)
Email adddress (1st)
  • The company's first email address.
  • Suggested field type: Text (with max length 64)
Email addresses
  • The email address(es) listed on the company's ecommerce website
  • Suggested field type: Text (with max length 512)
Employees
  • The number of employees working at the company that runs the store (if known).
  • Suggested field type: Number
Estimated Page Views (Monthly)
  • An estimate of monthly page views for the store.
  • Suggested field type: Number
Estimated Sales (Monthly)
  • The store's estimated monthly sales (based on traffic estimates to the store's ecommerce website). Values in USD dollars.
  • Suggested field type: Number
Estimated Sales (Yearly)
  • The store's estimated yearly sales (based on traffic estimates to the store's ecommerce website). Values in USD dollars.
  • Suggested field type: Number
Estimated Visits (Monthly)
  • An estimate of monthly visits for the store.
  • Suggested field type: Number
FAQ Page URL
  • The url of the store's FAQ page (if any).
  • Suggested field type: Text (with max length 1024)
Facebook Account
  • The name of the company's Facebook account.
  • Suggested field type: Text (with max length 64)
Facebook Account URL
  • The URL of the company's Facebook account.
  • Suggested field type: Text (with max length 1024)
Facebook Group
  • The name of the company's Facebook group.
  • Suggested field type: Text (with max length 128)
Facebook Group URL
  • The URL of the company's Facebook group.
  • Suggested field type: Text (with max length 1024)
Features
  • A list of features enabled on the domain. e.g., "Shopify Pay"
  • Suggested field type: Text (with max length 512)
Financing Page URL
  • The url of the store's financing page (if any).
  • Suggested field type: Text (with max length 1024)
Full Address
  • The full address of the store (includes street address, city, state, country if known).
  • Suggested field type: Text (with max length 255)
Instagram Account
  • The name of the company's Instagram account.
  • Suggested field type: Text (with max length 64)
Instagram URL
  • The URL of the company's Instagram account.
  • Suggested field type: Text (with max length 1024)
Last Crawled At
  • The date at which the store's website was last crawled.
  • Suggested field type: Date
Last Plan Change At
  • The date at which the store's ecommerce platform's pricing plan was last changed.
  • Suggested field type: Date
Last Platform
  • The ecommerce platform that the store previously used (if any), prior to switching to their current platform
  • Suggested field type: Picklist
Last Platform Change At
  • The date at which the store changed from their last ecommerce platform to their current ecommerce platform.
  • Suggested field type: Date
LinkedIn Company URL
  • The URL of the company's LinkedIn page.
  • Suggested field type: Text (with max length 1024)
Magento Apps
  • A list of Magento apps installed on the store's ecommerce website
  • Suggested field type: TextArea (Long)
Merchant Name
  • The name of the merchant that is selling on the store's ecommerce store.
  • Suggested field type: Text (with max length 255)
Monthly E-Commerce App Spend (USD)
  • The estimated amount the store spends on ecommerce apps every month.
  • Suggested field type: Number
Phone number (1st)
  • The company's first phone number.
  • Suggested field type: Text (with max length 64)
Phone number (2nd)
  • The company's second phone number.
  • Suggested field type: Text (with max length 64)
Phone number (3rd)
  • The company's third phone number.
  • Suggested field type: Text (with max length 64)
Phone numbers
  • The phone number(s) listed on the company's ecommerce website
  • Suggested field type: Text (with max length 512)
Pinterest Account
  • The name of the company's Pinterest account.
  • Suggested field type: Text (with max length 64)
Pinterest Followers
  • The number of Pinterest followers
  • Suggested field type: Number
Pinterest Followers Delta 30-day
  • The change in the number of Pinterest followers over the last 30 days.
  • Suggested field type: Number
Pinterest URL
  • The URL of the company's Pinterest account.
  • Suggested field type: Text (with max length 1024)
Platform
  • The ecommerce platform of the store's ecommerce website. (e.g., shopify or magento)
  • Suggested field type: Picklist
Platform Domain
  • The name of the store's "platform domain". Some ecommerce platforms provide a unique internal domain (e.g., merchant.myshopify.com) that is associated with each store. Merchants can use this domain for their store but most choose to purhcase and register a custom DNS domain.
  • Suggested field type: Text (with max length 128)
Platform Rank
  • The Store Leads platform rank for the domain - a measure of the store's popularity relative to all other stores on the same platform.
  • Suggested field type: Number
Platform Rank Percentile
  • The Store Leads platform rank percentile for the domain - a measure of the store's popularity relative to all other stores on the same platform.
  • Suggested field type: Number
Product Variant Count
  • The number of product variants (aka SKUs) sold on the store's ecommerce website.
  • Suggested field type: Number
Product to Vendor Ratio
  • The ratio of products sold to distinct vendors. This can be useful when trying to distinguish brands (which typically have a higher ratio since they sell their own products) from retailers (which typically have a lower ratio since they typically sell products from multiple vendors).
  • Suggested field type: Number
Products Sold
  • The number of products sold on the store's ecommerce website.
  • Suggested field type: Number
Rank
  • The Store Leads rank for the domain - a measure of the store's popularity relative to all other stores.
  • Suggested field type: Number
Rank Percentile
  • The Store Leads rank percentile for the domain - a measure of the store's popularity relative to all other stores.
  • Suggested field type: Number
Record Source
  • The source of the record (always set to "Store Leads")
  • Suggested field type: Text (with max length 32)
Retailer Page URL
  • The url of the store's retailer page (if any).
  • Suggested field type: Text (with max length 1024)
Returns Page URL
  • The url of the store's returns page (if any).
  • Suggested field type: Text (with max length 1024)
Shipping Carriers
  • A list of shipping carriers that the store uses.
  • Suggested field type: Multipicklist (unrestricted)
Shopify Apps (Identifiers)
  • A list of Shopify app identifiers installed on the store's ecommerce website
  • Suggested field type: Multipicklist (unrestricted)
Shopify Apps (Names)
  • A list of Shopify app names installed on the store's ecommerce website
  • Suggested field type: Multipicklist (unrestricted)
State or Province
  • The state or province of the merchant (if known)
  • Suggested field type: Text (with max length 64)
State or Province Code
  • The state or province code of the merchant (if known)
  • Suggested field type: Text (with max length 64)
Status
  • The store's status (e.g., active or inactive)
  • Suggested field type: Text (with max length 32)
Store Domain
  • The DNS domain name of the ecommerce store.
  • Suggested field type: Text (with max length 255)
Store Locator Page URL
  • The url of the store's store locator page (if any).
  • Suggested field type: Text (with max length 1024)
Street Address
  • The street address of the store (if known).
  • Suggested field type: Text (with max length 255)
TLD+1
  • The "top-level domain plus one" for the domain. For a domain named www.merchant.com, the TLD+1 is merchant.com
  • Suggested field type: Text (with max length 64)
Technologies
  • A list of third-party technologies installed on the store's ecommerce website
  • Suggested field type: Multipicklist (unrestricted)
Theme Name
  • The name of the current theme used on the store's ecommerce website.
  • Suggested field type: Text (with max length 255)
Theme Style
  • The style of the current theme used on the store's ecommerce website.
  • Suggested field type: Text (with max length 255)
Theme Vendor
  • The vendor of the current theme used on the store's ecommerce website.
  • Suggested field type: Text (with max length 255)
Theme Version
  • The version of the current theme used on the store's ecommerce website.
  • Suggested field type: Text (with max length 255)
TikTok Account
  • The name of the company's TitTok account.
  • Suggested field type: Text (with max length 255)
TikTok Followers
  • The number of TikTok followers
  • Suggested field type: Number
TikTok Followers Delta 30-day
  • The change in the number of TikTok followers over the last 30 days.
  • Suggested field type: Number
TikTok URL
  • The URL of the company's TikTok account.
  • Suggested field type: Text (with max length 1024)
Title
  • The title tag on the store's ecommerce website home page
  • Suggested field type: Text (with max length 255)
Tracking Page URL
  • The url of the store's tracking page (if any).
  • Suggested field type: Text (with max length 1024)
TrustPilot Average Rating
  • The average rating of TrustPilot reviews for the domain.
  • Suggested field type: Number
TrustPilot Reviews
  • The numer of reviews for the domain.
  • Suggested field type: Number
Twitter Account
  • The name of the company's Twitter account.
  • Suggested field type: Text (with max length 255)
Twitter Followers
  • The number of Twitter followers
  • Suggested field type: Number
Twitter Followers Delta 30-day
  • The change in the number of Twitter followers over the last 30 days.
  • Suggested field type: Number
Twitter URL
  • The URL of the company's Twitter account.
  • Suggested field type: Text (with max length 1024)
Vendor Count
  • The number of distinct vendors of products sold on the store's ecommerce website. (Only available for Shopify stores)
  • Suggested field type: Number
YouTube Account
  • The name of the company's YouTube account.
  • Suggested field type: Text (with max length 255)
YouTube Followers
  • The number of YouTube followers
  • Suggested field type: Number
YouTube Followers Delta 30-day
  • The change in the number of YouTube followers over the last 30 days.
  • Suggested field type: Number
YouTube URL
  • The URL of the company's YouTube account.
  • Suggested field type: Text (with max length 1024)
ZIP or Postal Code
  • The zip or postal code of the merchant (if known)
  • Suggested field type: Text (with max length 32)
iOS App ID
  • The id of the store's iOS app (if any).
  • Suggested field type: Text (with max length 255)
iOS App URL
  • The url of the store's iOS app (if any).
  • Suggested field type: Text (with max length 255)

Calculated Values for Accounts

In addition to the properties configured in the Account Field Mapping section, it is also possible to write calculated values to account fields. Calculated values write the results of an arbitrary expression to fields in Salesforce. Expressions are written in Common Expression Language.

Salesforce Account Calculated Values
Salesforce Account Calculated Values.
Example Expressions

StoreLeadsTechnologies__c.split(';').size()

Returns the number of different technologies used on the domain.

StoreLeadsTechnologies__c.contains('Affirm')

Returns true if the domain is using the Affirm technology.

StoreLeadsCategories__c
  .split(';')
  .map(s, s.startsWith('/Apparel') ? 'Apparel, Footwear & Accessories' :
    s.startsWith('/Beauty & Fitness') ? 'Health & Beauty' :
    s.startsWith('/Home & Garden') ? 'Home Goods & Furniture' :
    s.startsWith('/Sports') ? 'Outdoor & Sporting Goods' :
    s.startsWith('/Health') ? 'Health & Beauty' :
    s.startsWith('/Pets') ? 'Pets' :
    s)
  .join(';')

Maps Store Leads category names to custom category names.

In addition to the mapped fields, expressions can also reference data that Store Leads collects for each domain.

Limitations:

  • An expression cannot reference a field that does not originate from Store Leads.

Writing expressions can be a little tricky, so don't hesitate to ask for help.

Note that calculated values are only available on the Elite or Enterprise plan.

Manual Creation of Salesforce Accounts

The Salesforce integration allows you to manually create accounts in Salesforce from Store Leads domains. To do so, click on the Salesforce tab in the domain detail view.

Salesforce tab
Salesforce tab.

As long as the domain does not already exist in Salesforce, you'll be given the option to create a Salesforce Account for the domain.

Create Salesforce Account
Create Salesforce Account.

As soon as you click Create Account in Salesforce, Store Leads will create a new Salesforce account for the domain and set all the standard and custom fields configured for the integration.

Manual Update of Salesforce Accounts

When you're looking at a domain in Store Leads that already exists as a Salesforce Account, the Salesforce tab will show you details for the existing Salesforce account and any contacts and leads associated with the account. Click on the "Enrich Salesforce Account" button to trigger a manual enrichment of the account.

Existing Salesforce account
Existing Salesforce account.

Bulk Creation of Salesforce Accounts (via CSV Import)

To bulk create new Salesforce Accounts, use the Store Leads Export tool and select the Salesforce Account CSV format.

Salesforce Account CSV Export Format
Salesforce Account CSV Export Format.

If the export file contains less than 50,000 records, use the Salesforce Data Import Wizard.

If the export file contains more than 50,000 records, use the Salesforce Data Loader.

Automatic Enrichment of Salesforce Accounts

We can automatically keep the data you store in Salesforce in sync with the latest data on Store Leads. This feature is called automatic enrichment. When it is enabled, Salesforce accounts are enriched within 15 minutes of being created or updated in Salesforce and immediately after we do our weekly data updates. Accounts are matched to stores in our database using the "Website" field. Your paid plan must also have access to the store in question.

To enable automatic Salesforce account enrichment, visit the Salesforce section of the Integrations page and enable the following option.

Salesforce Account Enrichment
Salesforce Account Enrichment.

Note: Automatic enrichment is only available to accounts on the Pro or Elite plans.

Automatic Salesforce Account Creation On New Store Leads Data

New Salesforce accounts can automatically be createdduring our weekly data updates for stores matching any custom criteria. This is can be done by using a "Salesforce Account Action" within a Workflow.

Every week, as soon as we complete our data update, we'll find all stores matching the workflow criteria and create new Salesforce accounts for all stores that do not already exist in Salesforce.

As an example, you can define a list as a saved search that contains all stores with at least 250,000 Instagram followers. By enabling this option on the list, you can ensure that your Salesforce instance will include all accounts that have at least 250,000 Instagram followers (both now and in the future).

Note: Automatic account creation is only available to accounts on the Pro or Elite plans.

Lead Enrichment

Store Leads can automatically enrich Salesforce leads every week when we publish our weekly data update. Salesforce leads will also be enriched automatically shortly after they are created or changed.

To enable enrichment of Salesforce leads, check the "Enrich leads" option.

Salesforce Enrich Leads Option
Salesforce Enrich Leads Option.

By default, Salesforce leads are only enriched if one of the following is true:

  • The lead has a Website that matches a store in our database that your plan can access. Website matching is fuzzy, so it doesn't matter if the Website starts with http:// or https:// or if it includes www. at the beginning of the domain name.
  • The lead has an Email with a domain name that matches a store in our database that your plan can access. Email domain matching is also fuzzy.

This logic can be configured in the Lead Matching Logic section.

Salesforce Lead Matching Logic
Salesforce Lead Matching Logic.

Fields Mappings For Salesforce Leads

Store Leads will not send any data to Salesforce leads until you configure lead field mappings. Lead field mappings determine which Store Leads data is written to specific fields on Salesforce Leads.

To configure lead field mappings, visit the Integrations page, click Salesforce and go to the Lead Field Mappings section.

Calculated Values for Leads

In addition to the properties configured in the Lead Field Mapping section, it is also possible to write calculated values to lead fields. Calculated values write the results of an arbitrary expression to fields in Salesforce. Expressions are written in Common Expression Language.

Salesforce Calculated Values
Salesforce Calculated Values.
Example Expressions

StoreLeadsTechnologies__c.split(';').size()

Returns the number of different technologies used on the domain.

StoreLeadsTechnologies__c.contains('Affirm')

Returns true if the domain is using the Affirm technology.

StoreLeadsCategories__c
  .split(';')
  .map(s, s.startsWith('/Apparel') ? 'Apparel, Footwear & Accessories' :
    s.startsWith('/Beauty & Fitness') ? 'Health & Beauty' :
    s.startsWith('/Home & Garden') ? 'Home Goods & Furniture' :
    s.startsWith('/Sports') ? 'Outdoor & Sporting Goods' :
    s.startsWith('/Health') ? 'Health & Beauty' :
    s.startsWith('/Pets') ? 'Pets' :
    s)
  .join(';')

Maps Store Leads category names to custom category names.

In addition to the mapped fields, expressions can also reference data that Store Leads collects for each domain.

Limitations:

  • An expression cannot reference a field that does not originate from Store Leads.

Writing expressions can be a little tricky, so don't hesitate to ask for help.

Note that calculated values are only available on the Elite or Enterprise plan.

Manual Creation of Salesforce Accounts

The Salesforce integration allows you to manually create leads in Salesforce from the generic emails in the Store Leads database or from contact information from a personal data vendor. To do so, you'll need to enable the following option on the Integrations page.

Salesforce manual lead creation
Salesforce manual lead creation.

Note that enabling this option requires that we scan all your existing leads in Salesforce. We need to know which leads already exist so that we do not create duplicate leads. See the Information Security Considerations section for more information.

After the option is enabled, click on the Salesforce tab in the domain detail view.

Salesforce tab
Salesforce tab.

You will see a list of existing leads with an email domain that matches the domain of the store that you're currently looking at (if any). You'll also have the option to create new Salesforce leads.

Create Salesforce Lead
Create Salesforce Lead.

Automatic Enrichment of Salesforce Leads

We can automatically keep the data you store in Salesforce in sync with the latest data on Store Leads. This feature is called automatic enrichment. When it is enabled, Salesforce leads are enriched within 15 minutes of being created or updated in Salesforce and immediately after we do our weekly data updates. Leads are matched to stores in our database using the "Email" and "Website" fields. Your paid plan must also have access to the store in question.

To enable automatic Salesforce lead enrichment, visit the Salesforce section of the Integrations page and enable the following option.

Salesforce Lead Enrichment
Salesforce Lead Enrichment.

Note: Automatic enrichment is only available to accounts on the Pro or Elite plans.

Contact Enrichment

Store Leads can automatically enrich Salesforce contacts every week when we publish our weekly data update. Salesforce contacts will also be enriched automatically shortly after they are created or changed.

Salesforce contacts are only enriched if one of the following is true:

  • The contact is associated with a Salesforce Account that matches a store in our database that your plan can access.
  • The contact has an Email with a domain name that matches a store in our database that your plan can access.

To enable enrichment of Salesforce contacts, check the "Enrich contacts" option.

Salesforce Enrich Contacts Option
Salesforce Enrich Contacts Option.

Fields Mappings For Salesforce Contacts

Store Leads will not send any data to Salesforce contacts until you configure contact field mappings. Contact field mappings determine which Store Leads data is written to specific fields on Salesforce Contacts.

To configure contact field mappings, visit the Integrations page, click Salesforce and go to the Contact Field Mappings section.

Calculated Values for Contacts

In addition to the properties configured in the Contact Field Mapping section, it is also possible to write calculated values to contact fields. Calculated values write the results of an arbitrary expression to fields in your CRM. Expressions are written in Common Expression Language.

Salesforce Calculated Values
Salesforce Calculated Values.
Example Expressions

StoreLeadsTechnologies__c.split(';').size()

Returns the number of different technologies used on the domain.

StoreLeadsTechnologies__c.contains('Affirm')

Returns true if the domain is using the Affirm technology.

StoreLeadsCategories__c
  .split(';')
  .map(s, s.startsWith('/Apparel') ? 'Apparel, Footwear & Accessories' :
    s.startsWith('/Beauty & Fitness') ? 'Health & Beauty' :
    s.startsWith('/Home & Garden') ? 'Home Goods & Furniture' :
    s.startsWith('/Sports') ? 'Outdoor & Sporting Goods' :
    s.startsWith('/Health') ? 'Health & Beauty' :
    s.startsWith('/Pets') ? 'Pets' :
    s)
  .join(';')

Maps Store Leads category names to custom category names.

In addition to the mapped fields, expressions can also reference data that Store Leads collects for each domain.

Limitations:

  • An expression cannot reference a field that does not originate from Store Leads.

Writing expressions can be a little tricky, so don't hesitate to ask for help.

Note that calculated values are only available on the Elite or Enterprise plan.

Manual Creation of Salesforce Accounts

The Salesforce integration allows you to manually create contacts in Salesforce from the generic emails in the Store Leads database or from contact information from a personal data vendor. To do so, you'll need to enable the following option on the Integrations page.

Salesforce manual contact creation
Salesforce manual contact creation.

Note that enabling this option requires that we scan all your existing contacts in Salesforce. We need to know which contacts already exist so that we do not create duplicate contacts. See the Information Security Considerations section for more information.

After the option is enabled, click on the Salesforce tab in the domain detail view.

Salesforce tab
Salesforce tab.

You will see a list of existing contacts associated with the domain of the store that you're currently looking at (if any). You'll also have the option to create new Salesforce contacts.

Create Salesforce Contact
Create Salesforce Contact.

Automatic Enrichment of Salesforce Contacts

We can automatically keep the data you store in Salesforce in sync with the latest data on Store Leads. This feature is called automatic enrichment. When it is enabled, Salesforce contacts are enriched within 15 minutes of being created or updated in Salesforce and immediately after we do our weekly data updates. Contacts are matched to stores in our database using the "Email" and "Website" fields. Your paid plan must also have access to the store in question.

To enable automatic Salesforce contact enrichment, visit the Salesforce section of the Integrations page and enable the following option.

Salesforce Contact Enrichment
Salesforce Contact Enrichment.

Note: Automatic enrichment is only available to accounts on the Pro or Elite plans.

Using Salesforce Data Within Store Leads

Your Salesforce data can also be used/displayed within Store Leads in a variety of ways, including search filtering and viewing Salesforce attributes for each store in the database.

Search Filter

With the Salesforce integration enabled, new search filters are available that can be used to show all stores in the database that also exist as accounts (or leads) in your Salesforce instance. This filter is also supported in Advanced Search, allowing you to filter out stores that already exist in Salesforce (a great way to look at new leads).

Salesforce search filter.

To filter out stores that already exist in Salesforce, run an Advanced Search, and create a filter on the "Integration Companies" field with Operation set to "Not Or".

Advanced search to filter out stores that already exist as Salesforce accounts.

Note: These search filters are only available to accounts on the Pro or Elite plans.

Custom Search Filters

Accounts on the Enterprise plan can also use arbitrary fields in Salesforce as Store Leads search filters. To get started:

  • go to the Integrations page
  • click on Salesforce
  • click on the Search tab
  • Select the Account Fields to use as Store Leads search filters
Configure Account Search filters.

Newly created custom search filters will take a few hours to appear in Store Leads but, after this initial delay, any updates to records in Salesforce will be reflected in the Store Leads search index within a few minutes.

Custom search filters can be used in Basic and Advanced search.

Example Custom Search Filter.

Search Results

Salesforce data can be displayed as a column in search results. To do so, customize the columns displayed in search results to include "Salesforce Account".

This provides a way to visually filter search results by showing the stores that already exist in Salesforce. You can also click on the "Salesforce Account" link to open the Salesforce Account page directly from search results.

Store Details

With the Salesforce integration enabled, a new "Salesforce" tab is available when viewing store details.

Store CRM details.

The list of fields to display for Salesforce Accounts, Contacts and Leads can be fully customized. Data display is fetched on demand from the Salesforce API and is never stored by Store Leads. For more details, read displaying Salesforce data within Store Leads.

Chrome Extension

It's also possible to display data for Salesforce Accounts, Contacts and Leads within the Store Leads Chrome Extension.

Best Practices

  • Connect your organization to Salesforce using a dedicated Salesforce API account. If you connect to Salesforce using an account linked to a person, the Store Leads integration with Salesforce will break if that person's account is disabled in Salesforce (which often happens when the person leaves the company).
  • Enable the "Use Salesforce Bulk API" option under "Salesforce Configuration Options". Using the Bulk API uses fewer Salesforce API calls and speeds up bulk enrichment. Note that this feature is only available on certain Salesforce plans and requires a specific account permission ("Manage Data Integrations"). Be sure to add that permission to the Salesforce account that you are using for your Organization connection.
  • Enable the "Daily Integration Error Email" option under the "General" tab. Store Leads is sometimes unable to enrich records in Salesforce due to validation checks and other configuration within Salesforce. For instance, we may try to write data to a field that no longer exists or has a restricted picklist that is not accepting the incoming value. When enabled, this email includes a summary of errors seen in the last 24 hours.
    Salesforce Integration Error Email option
    Salesforce Integration Error Email option.
  • Each person using Store Leads should also connect to Salesforce with their personal account. If they do not, then all Salesforce API calls made when using Store Leads are done with the organization connection. As a result, newly created accounts and leads will not be attributed to the right person.

Information Security Considerations

Since your Salesforce instance contains PII, it is natural to have concerns about information security when connecting a new app to Salesforce. Here is an overview of how Store Leads interacts with Salesforce.

After the Salesforce integration is enabled, Store Leads will query all Account records to determine which Accounts already exist in Salesforce. This is necessary so that:

  • the Store Leads web interface/chrome extension can tell whether a store already exists in your CRM, and
  • to enrich all your existing Account records on a weekly basis and
  • to prevent creating duplicate records

To accomplish this, each Account's Website and Id attribute are retrieved using the Salesforce API and stored in our database. These are the only attributes accessed at this time.

By default, only Account enrichment is enabled. If you choose to enable the "Enrich Leads" option in your integration (or manual creation of leads), then we also need to pull and persist the lead Id and the Lead's email domain (which is obtained from the lead's email address and/or Website since leads don't always have an email) for the same reasons listed above. The email address is never persisted in raw form. Instead, a one-way hash of the email is persisted so that we can show you which emails (from our database) already exist in your Salesforce instance. In addition, this data is never shared.

The only time that attributes other than Website and Id are retrieved for an Account record (or Email/Website/Id for Leads), is when a Store Leads user looks at the Salesforce data for Accounts, Leads or Contacts through the Store Leads website or Chrome extension. Both of those features allow each user to configure which attributes to pull from the CRM but these attributes are never stored. They are pulled from the Salesforce API live (to render the page) and never persisted. This data might include PII but since a) it is not persisted and b) it is configurable, it should hopefully be a minor concern.