Managing leads or contacts from external sources and making sure they are recorded in CRM without duplicates can be tricky sometimes. Depending on your data source you will need to filter for certain information and compare that to what is already entered in your database making sure you are not allowing duplicates to be created.

Lets say for instance, I would like to have all Leads entered into a Google Sheets document automatically created as a Lead in CRM along with the associated Contact.

In a marketing context, having several leads with the same information is okay (in a sales context this wouldn’t be) since a marketing contact can be linked to more than one. However, what we do want to be sure of is that a particular contact does not already exist.

I won’t waste time by discussing how to connect to a data source. Each scenario is different, but in this example we are simply connecting to a google sheets document and “getting” all new rows at an interval of “every 1 hour”.

The next steps would be to set up the action to create your lead with any required fields.

 

If you want to create a record using the same information as this lead you will need to “List” all Contact records. Setting an OData query filter will limit the amount of records returned, thereby improving the overall performance of the flow.

 

The next step would be to set a condition that checks the length of the body of the above step. Basically, this is just verifying if the contact (with the email address in question) exists or not by checking to see if any information is returned from the list:

 

length(body(‘Datensätze_auflisten’)?[‘value’])

 
 
If the condition is validated as “True”, meaning that no data for the contact has been found, then a contact will be created with the information from the lead record. If it is “False” , of course, there will be no record created.
 
 
In both cases, there is still on more important detail to consider and that is linking the newly created Lead with a Contact. This can sometimes be overlooked but is important for keeping track of the number of leads associated with a particular contact.