Import serves as the ultimate data loading tool allowing you to insert, update, and upsert records from a file into any standard or customer object while simultaneously standardizing key fields.
- Import and Match a list of Leads from a trade show
- Import new target accounts
- Migrate data from legacy systems
- Insert records into newly created custom objects
- Insert Products and Pricebooks
- Add or reassign account teams
- Update records using email address (or other external ids) as the key
- Populate newly created custom fields
- Save scenario configuration for future jobs
- Transform data on insert or update using standardization formulas
Starting an Import Scenario
To begin a new scenario, select Import from the left navigation bar on your Dashboard.
To start from an existing scenario, select an Import scenario from the Scenarios table on your Dashboard. Your object and record selection criteria will already be set for you. You can keep all settings or change them as you go.
Step 1: Data Mapping
Row 1: Source
- Select the Choose File button and find your source file.
- Accepted file types include .csv, .xls, and .xlsx. (Make sure you are using the latest versions of .xls and .xlsx file types.)
- File size is limited to 10 MB for Free Edition customers and 50 MB for Elements Edition customers.
- If your file has multiple tabs, select the tab to import from. The leftmost tab will be selected by default.
- The Select a subset dropdown allows you to optionally select a subset of records to work with.
- Records to Import lets you check that the number of records detected for import is the expected number, so you know you have imported the correct file.
Note: If you are importing a time zone field, it must be standardized before upload. Use the values in parentheses from this list of Salesforce time zones to standardize your source file before beginning the import process. Other fields may be standardized using the Transform function, discussed below.
Row 2: Operation
Choose whether you want to Insert, Update, or Upsert records into your target object.
- Insert is used to insert new records into any CRM object that supports the insert function. Using the insert option, a record can be inserted into one object at a time (per pass) using the standard SOAP API or Bulk API.
- Update looks for records in your import file that match existing records in your CRM. Only those records will be updated.
- Upsert combines these operations to act on all records in your import file, it allows you to compare a list of records against multiple objects in your CRM. If a contact exists in your CRM, it will be updated; if not, it will be inserted.
Use the Salesforce Object dropdown menu to choose the object where records from your source file are added or updated.
For large jobs, check the box beside Bulk API. This option groups your records into larger batches, so it uses fewer API calls. Learn more about the Bulk API option.
Map Fields
At this point, the Map Fields table appears for your selected object. Choose a target database field from your CRM to map to each import file field, or use the Auto Map feature to save time.
- Auto Map: Some fields may not get mapped automatically, such as Name. In this case, you can search in the dropdown under the Target Database Field column and it will show you the options. Select an option to set the mapping for that field.
- Filter Mappings: Your org may have dozens or even hundreds of fields, and you may not want to map all the available fields. Use Filter Mappings to search for the fields you care about and map only those.
- Add Constant: For a given field, you may want to use the same value for all records. For example, if your import source consists entirely of leads from a trade show or conference, you can choose Lead Source as your target database field and specify Trade Show as the constant value.
- Key Field: Designate a field, like Account ID, as a unique matching key between your import file and your target database. When you select the key icon for a field, that key turns from blue to gold. Only one key field can be selected at a time.
- Certain values, such as Email, will prompt a warning that you’re setting a non-ID field as a key field. This means that your target CRM doesn’t use that field as a unique identifier by default, and the value may in fact not be unique to a single record.
Use the menu with three vertical dots at the right of each row to clear mappings for that row only or transform the data.
- Match Conditions: You have the option to use Match Conditions when updating or upserting during an import.
- Select multiple objects on which to refine your import with multiple criteria. This is done during this initial step.
- Filter the records you will match against and select the fields that will show as you preview your data during the last step of the Match Conditions option.
- Select the fields that should be compared to determine whether a record that is being imported already matches one in your Salesforce account. You can create as many field comparison conditions as you want unique to the objects you have selected.
- You have the option of setting up any condition to match across multiple fields and create as many match steps (or grouping conditions) as you need, including copying match steps that you have previously made and changing their order.
- Configure the following Match Condition Settings:
- Final Matching Conditions. If no matches were found you can specify what to do: create a new record, create account and contact records, do nothing, or limit new duplicates by field (only the first record is imported when a match is found within the file).
- Match Step Settings. This allows you to create an associated task per match condition. Lead and Contact objects have additional settings which are: assign matches to a Salesforce target campaign or apply campaign information from the file itself and add a status (applies per match condition).
- Global Task/Campaign Settings. Allows you to create an associated task globally. Lead and Contact objects have additional settings which are: assign matches to a Salesforce target campaign or apply campaign information from the file itself and add a status (applies globally).
- Create a child object. Use match conditions as a lookup.
- Configure the following Match Condition Settings:
- Preview the records that have a match and that will be imported if you decide.
- The Transform feature can apply formula logic for specific rows to standardize field values, such as phone number or state, as you import them. Learn more about Transform options.
If you use the Update Records or Upsert Records import type, choose how you want to update existing records.
- Update if Empty: If the CRM field for this row is empty, add the import source value.
- Always Update: Add the import source value even if it overwrites the CRM value.
- Do Not Update: Never add the import source value for this row, whether there is a CRM value or not.
- Combine Field: Merge the value in your import source with the existing value in your CRM.
Select Preview > to go to the next step. Moving to this step does not commit changes.
Step 2: Preview
Here, you can preview all results before making changes to your target CRM.
- Import File Fields: These are the records from your source file.
- The carat (>) to the right of the label expands this section to show the content of your records.
- Your key field is noted here in the column label.
- If a field has been transformed, that is also noted in the column label.
- The checkbox beside each row determines whether that record is included in the final import.
- The carat (>) to the right of the label expands this section to show the content of your records.
- Match Criteria: This section notes the target object and condition (Insert, Update, Upsert) to be applied.
- If a record is not found in the target CRM in an Insert or Upsert operation, the condition name is (Create New).
- Contacts: These are the records in the target CRM as they currently exist, before the import action is applied.
If you want to review the processed records before importing, you can choose Export Grid Data to download a file of those records. Saving your scenario (see below) will allow you to leave DemandTools while you review and then return to complete the import process.
To finish, select Import [x] Records. This action will commit changes to your target CRM.
Import Errors
If you encounter an error during the import process, you will see a banner like this:
To see which records encountered the error and what it is, you can reveal a hidden column called Error Message. To reveal this column:
Go to the Preview Grid and open any hamburger menu beside a column label. We'll open the one beside the Row Index label.
With this menu open, select the grid icon to the right of the hamburger icon.
Scroll to the bottom of the column list and find Error Message. Check the box beside this column label.
A new column will be added to the far right side of the Preview Grid. Here you can view the error messages sent to DemandTools by the target CRM. Only the rows that encountered an error will show an error message.
Because the target CRM provides the error messages, DemandTools does not maintain a comprehensive list of possible errors. Contact your CRM if you have questions about an error you receive.
Saving Your Scenario
If you want to re-run or schedule this scenario again in the future, open the Scenarios bar slider and select Save As, then name your scenario and select Save.