The following is a guideline to follow when using the recipe "List Load for Salesforce". Please read these guidelines before cloning the recipe.
Preparation
This project uses Openprise's App Factory List Load app. We recommend you review the following video on building a list loading app before cloning this recipe.
Overview
This recipe provides the following:
- Jobs that process a list and load the records into Salesforce, and adds them to the campaign identified in the list
- An App Factory app to submit lists for loading
- An App Factory app to review the list load results.
- A bot to run the above jobs using the App Factory application.
The assumption is that your Salesforce objects are being imported on a regular basis by pre-existing bots.
Preparation
- Create a spreadsheet in Google drive for the template for the lists to be loaded. This spreadsheet will only be used to define the attributes for the list to be loaded by the list load app. Please use the exact column names shown below.
Column name Openprise data type Added as New Lead text, single value Added To Campaign text, single value Address text, single value Campaign ID text, single value Campaign Membership text, single value Status text, single value Campaign Name text, single value City text, single value Company text, single value Country text, single value Email Address text, single value First Name text, single value First Responded Time text, single value Job Title text, single value Last Name text, single value LinkedIn Profile URL text, single value No. of Employees text, single value Phone Number text, single value Postal Code text, single value Rejected text, single value State text, single value Transaction ID text, single value Uploaded By text, single value Upload Time date Website URL text, single value - Add one record to the template by adding a sample email (ie. junk@junkmail.com). You can leave all other values in the spreadsheet blank.
- Create a data source named from the above spreadsheet. When creating the data source:
- The Data source name should be List Load Template.
- The source technology and data format for the data source should be Google Drive - Sheets.
- On the Map screen (during data source creation), change the data type for the attribute Upload Time to the Date data type.
- All other fields can be left as the default data type of Text, single value.
- Note: Two additional columns will be added when the data source is created: OPFileNames and OPAutoDate. These attributes should remain in the data source.
- Import the above data source. You should end up with a data source that has one record in it with the junk email. This data source is only used to define the columns expected for processing by the list load app.
- Create data sources for Salesforce Account, Contacts and Leads objects with at least the following attributes. Note: If these data sources are already created, please verify that the following attributes are defined in the data sources.
Lead Contact Account Id Id Id City Mailing City Name Company
Website Country Mailing Country Country Email Email First Name First Name Last Name Last Name Employees Phone Business Phone Zip/Postal Code Mailing Zip/Postal Code State/Province Mailing State/Province Street Mailing Street Title Title Website -
Create new data targets: Create a new data target for Leads, Contacts and CampaignMembers with the following attributes:
- Leads - all attributes listed in the table above
- Contacts - all attributes listed in the table above
- CampaignMember - Campaign Member Id, and Status
Clone
To clone the project recipe, navigate to Projects Recipes and select the project recipe to clone.
You will need to provide:
- Project name
- Prefix and/or suffix for all objects in the project
- Data source to be used in the project
- Data target to be used in the project
Examine the cloned project
We recommend you look through all the newly created project elements to familiarize yourself with what has been created.
Look for:
- Any job that is marked with errors. These errors must be manually corrected.
- Export tasks that write back to Salesforce. Make changes by selecting any values that want to write back to Salesforce. Note: Any Export task to Salesforce has been bypassed for your protection. We recommend that you run the jobs with the bypass enabled so you can review any data changes before writing data back to Salesforce.
- Review logic in the jobs to validate that it meets your requirements for cleaning the incoming list data and matching it to any existing lead, contact, and account.
- Review logic in the job that rejects a list record due to missing data. By default, these jobs will only reject records with a missing email address, or a duplicate record identified by a duplicate email address. You may want to add tasks to identify other missing data values such as country, company name, and/or campaign id.
- Please note that these jobs are built with the assumption that you have a separate, active process to handle duplicate records in Salesforce. If you have duplicate records in your instance, you'll need to change the job SF_List02 - Match to existing to properly handle the case when a list record matches multiple leads or contacts.
- Check that you have an automated bot that imports Leads and Contacts on a frequent basis so if a list is loaded twice in close succession, duplicate records are not created in Salesforce.
Test the App
When you're ready to test, change any export task that is bypassed to allow updates. Then, prepare a series of sample lists to test the list load app. It is suggested you test each use case separately for ease of diagnosing errors, and only include a few records in each test. Results should be verified in both the App and in Salesforce directly.
For example, test the following use cases:
- A list of records missing an email address. (These should all be rejected).
- A list of records that match existing leads in Salesforce. Select emails for records that can be updated without affecting other processes (eg. test leads).
- A list of records that match test contacts in Salesforce.
- A list of net new records.
- A list that includes a Campaign ID to verify that the leads and contacts processed by the app are correctly added to the campaign.
To run each test:
- Launch the App Portal and locate the List Load application.
- Run the application
- Load a test list into the UI, and optionally remap any columns needed. This is only needed if your list has different column names from the file spreadsheet used to create your initial data source
- Select the "Load with Mapping" button after the list has been dropped into the app.
- Let the app process the list, and check the outputs using the List Load Review app.
- Check the results using Salesforce directly by looking up the records that should have been updated and/or added.
- Repeat for each test.