Setting up Salesforce
- Setting up Salesforce
- How will the data be mapped into Dreamdata?
- Can we include custom objects in Dreamdata?
- What events will be included automatically into Dreamdata?
- Can we include more events into customer journeys?
- FAQ:
- What specific access is required for the integration?
- What Salesforce objects do we pull?
- Do you need both read and write access to Salesforce API? Can write access be restricted?
- How does Dreamdata handle rate limits?
- How much data do we retrieve?
- How do we handle Parent & Child accounts?
- What if an account have more than one domain?
Dreamdata needs to connect to your CRM system in order to work properly. This is used to collect data on your customer accounts and link it to the tracking data, thus being able to create attribution to touches in your customer journeys.
Setting up Salesforce
- On Dreamdata's main menu, go to "Data Platform" and then select "Sources".
- On the Sources page, scroll down the the CRM subsection and select "Salesforce".
- Click "Enable" (a new tab will open).If you wish to use your sandbox environment for testing please toggle Use sandbox environment on.
- If you haven't selected a CRM system for your Dreamdata account yet, chances are that you might be prompted with the following question "Is Salesforce your Primary CRM?". Select the option that applies for you.
- If you aren't already signed in, sign into your Salesforce account. Make sure that the account used has access to the needed data as detailed in the FAQ section below.
- You'll be asked to allow access to Dreamdata. Click "Allow".
- You're all set 🔥 It can take up to between 24 – 48 hours before all the historical data available for your plan begins to appear.
How will the data be mapped into Dreamdata?
- Account: Your accounts will be mapped to Companies in Dreamdata. This will enable you to see all of your sales and marketing activities for each company in one place.
- Contact: Your contacts will be mapped to Contacts in Dreamdata. This will allow you to track the engagement of individual contacts across multiple channels.
- Opportunity: Your opportunities will be mapped to Deals in Dreamdata. This will give you a clear picture of your sales pipeline, including the value of each deal and the stage of the sales process it's in.
- Lead: Your leads can potentially be mapped to Contacts, Companies, and Deals in Dreamdata.
- Contacts and unconverted leads: An object containing the union of your leads that did not convert and your contacts.
- Task and Campaign Member: Your tasks and campaign members will be mapped to Events in Dreamdata. These events can then be linked to specific customer journeys and applied with attributions.
Account, Contact and Opportunity are included in all our plans, including the free one! Everything else is only available for paid plans.
Can we include custom objects in Dreamdata?
If you have created a custom object in Salesforce and would like to use it in Dreamdata to build stage models based on it, you can do so by going to the Salesforce source page and adding your custom object.
After clicking the Add Custom Object button you will be prompted to select the custom object you desire to include. To be able to map the custom object, you need to select one of the existing objects (Account, Contacts or Leads) and select which property from your custom object represents the ID of an account, contact or lead.
The custom object data will be available in Dreamdata within 24 hours. This feature is available for Business and Enterprise plans.
What events will be included automatically into Dreamdata?
After your Salesforce data is synced, we create the following 6 type of events and link them to relevant customer journeys automatically.
For the Task object:
- meeting
- When Type or Task Subtype equals to 'Meeting'
- And Status equals to 'Completed'
- These events will be mapped to 'Meetings' Channel and 'Meeting' Source
- Timestamp of these events are set with Completed Date/Time
- phone_call
- When Type or Task Subtype or SalesLoft Type equals to 'Call'
- And Status equals to 'Completed'
- These events will be mapped to 'Calls' Channel and 'Call' Source
- Timestamp of these events are set with Completed Date/Time property
For the Campaign Member object:
- registered_event
- When Campaign Type equals to 'Event'
- These events will be mapped to 'Events' Channel and 'Events' Source
- Timestamp of these events are set with Campaign Member Created Date property
- attended_event
- When Campaign Type equals to 'Event'
- These events will be mapped to 'Events' Channel and 'Events' Source
- Timestamp of these events are set with Campaign Member First Responded Date property
- registered_webinar
- When Campaign Type equals to 'Webinar'
- These events will be mapped to 'Events' Channel and 'Events' Source
- Timestamp of these events are set with Campaign Member Created Date property
- attended_webinar
- When Campaign Type equals to 'Webinar'
- These events will be mapped to 'Events' Channel and 'Events' Source
- Timestamp of these events are set with Campaign Member First Responded Date property
Can we include more events into customer journeys?
Absolutely! Dreamdata offers flexibility in terms of customising and including more events into customer journeys based on the Salesforce objects mentioned below:
- Campaign Member
- Task
- Event
- Contact
- Account
- Lead
To include additional events, you can collaborate with your dedicated customer success manager. They can guide you on the steps to follow and help you add or exclude the events as required. Dreamdata's ability to include custom events based on Salesforce objects enables businesses to capture more granular data and obtain a better understanding of customer behavior. With this valuable insight, you can optimize your customer journeys and improve your marketing and sales efforts.
FAQ:
What specific access is required for the integration?
- General User Permissions -> Access Activities
- Administrative Permissions -> API Enabled, View All Users and View Roles and Role Hierarchy
- Standard Object Permissions ->Â View All access needed for: Accounts, Campaigns, Contacts, Leads and Opportunities
- Record Type Settings for: Accounts, Campaigns, Campaign Members, Contacts, Events, Leads, Opportunities and Task
Field level permissions can also be used to give access to all the individual fields needed. It is important to keep the fields with permissions fixed to ensure all relevant data can be seen in Dreamdata reports. If any new fields should be added please reach out to friends@dreamdata.io.
What Salesforce objects do we pull?
By default we pull all fields of the following objects:
- Account
- AccountContactRelation
- AccountContactRole
- AccountHistory
- Contact
- ContactHistory
- Campaign
- CampaignMember
- Event
- Lead
- LeadHistory
- Opportunity
- User
- OpportunityContactRole
- OpportunityHistory
- OpportunityFieldHistory
- RecordType
- Task
Do you need both read and write access to Salesforce API? Can write access be restricted?
- Dreamdata always prioritizes read-only access for integrations when this option is available. However, in the case of Salesforce, this capability is not provided by Salesforce. The scopes employed by Dreamdata, namely id, api, and refresh_token, ensure the identification of the person who connect Salesforce and the retrieval of necessary data. It's important to note that Dreamdata does not perform any data modification within Salesforce.
How does Dreamdata handle rate limits?
- Dreamdata synchronizes your Salesforce data daily, at the time selected in the Data Modelling Schedule tab (under Settings). However, if 80% of the daily API quota limit has already been utilized before the data retrieval process, Dreamdata will not sync data on that particular day to prevent any disruption to your daily operations. Rest assured that any missing data will be retrieved and updated during the subsequent sync, ensuring a complete and accurate synchronization when there is sufficient daily API quota available.
How much data do we retrieve?
- If the API quota limit is not already utilized, we try to pull all the records that were created or updated since our last successful data retrieval. This process occurs in batches of 2 000 records, ensuring that we stay within 80% of the API quota limit between each batch. If 80% of the API quota limit is reached we stop further data retrieval.
How do we handle Parent & Child accounts?
- Dreamdata does not use the Parent or Child hierarchy from Accounts at the moment. You can read more about it here.
What if an account have more than one domain?
- Salesforce currently do not have naitive support for multiple domains per account.