The DemandTools MassEffect module can be used to upsert existing records in any Salesforce object that support the insert/update operations. Records can be upserted one table at a time (per pass) using the standard SOAP API or Bulk API.
When upserting records, a matching key is required to match the records from the input file to the existing records in the desired table. The matching key can one of the following:
- Salesforce Record ID
- External ID (a custom field with the “External ID” attribute)
- Email address (Leads or Contacts)
When a matching record is found it will be updated. If no match is found a new record will be inserted. Below is a quick tutorial that covers upserting records using MassEffect.
More information on the MassEffect Upsert Operation can be found here.