1 Reply Latest reply on Apr 10, 2018 1:15 PM by Grégoire Michel

    How to update people in Marketo with Salesforce ID values?

    Marty Chang

      Given an existing person in Marketo that also exists as a contact under an account in Salesforce, is there a way to update the person in Marketo to hold the corresponding Salesforce Account ID and Salesforce Contact ID? And on a similar note, given an existing person in Marketo that also exists as a lead in Salesforce, is there a way to update the person in Marketo to hold the corresponding Salesforce Lead ID?

       

      We are planning to build and deploy a brand new Salesforce org, with a requirement to migrate existing data from the current, legacy CRM system. Ideally, I would love to use Salesforce's "Set Audit Fields upon Record Creation" feature to migrate the historically accurate Created Date and Created By values. However, I am worried about a catch 22.

      • If I turn on Marketo's Salesforce Sync, the Created Date will reflect when the sync was enabled, with all records appearing to be created by Marketo Integration. There is no way to update the audit fields via data migration after the records have already been created by Marketo.
      • If I migrate the records first from the legacy CRM system into Salesforce, I cannot turn on Marketo's Salesforce Sync without creating a complete set of duplicate records which then have to be merged.

       

      If possible, the following steps seem to be ideal. But this process would only be possible if there's a way to update existing people in Marketo with existing Salesforce IDs.

      1. Enable "Set Audit Fields" in Salesforce
      2. Migrate historical data from legacy CRM system into Salesforce
      3. Update Marketo with new Salesforce IDs
      4. Turn on Salesforce Sync in Marketo
        • Re: How to update people in Marketo with Salesforce ID values?
          Grégoire Michel

          Hi Marty,

           

          The problem is that these iDs cannot be accessed from Marketo smart lists and also that you need to pay attention to uppercase/lower case conditions.

           

          You will have to do the following:

          1. Create a formula field in SFDC on the lead object. Call it SFDC ID18 and use casesafeID(id) as a formula. as the formula name reads, it generate a 18 characters ID that is case safe (meaning A=a). This is the ID you can read in the SFDC lightning experience URL (while in the classic interface, the ID is the 15 characters case dependent ID).
          2. Do the same on the contact object, with the exact same name.
          3. Let these 2 fields sync to Marketo. They will be mapped in 1 field on Marketo side since you have given them the same name.
          4. Force an update on the leads and records in SFDC for which you need the field (or on your whole database, if the number of records is not too large). That can be done with a data loader.
          5. in Marketo, you will then be able to use the SFDC ID18 field as a filter in smart campaigns. Combine with SFDC Type [Person] = contact or SFDC Type [Person] = lead  if you need to specifically target leads or contacts, but the SFDC ID18 should be enough anyway.

           

          -Greg