how to link a salesforce field in marketo

Serge_Lamarche
Level 2

how to link a salesforce field in marketo

Hello,
I am newbie in Marketo.
we keep having issues with marketo sending emails inappropriately. A campain is set to send email at a certain time according to salesforce fields values. I works too much. I have added a constraint in the smart list that looks at the value of a salesforce field called ''status''. It should send only when this field is ''confirmed''. How can I verify that marketo has the correct ''status'' value for a lead? When I look at the fields in the SFDC tabs, I do not see the field called ''status'' in there. Where is it in marketo? Does marketo look up the ''status'' field directly in Salesforce?
thanks,
Serge.
ps. the page regarding salesforce in knowledge base are still under construction by Anna.
Tags (1)
12 REPLIES 12
Anonymous
Not applicable

Re: how to link a salesforce field in marketo

Hi Serge, 

Marketo does not look directly in the SFDC database but uses the values in its own database. Marketo and Salesforce synch bi-directionally in 5 minute intervals. KB article

So, a few things could be going wrong here. I would troubleshoot in roughly this order. 

1) If the changes in Salesforce have not yet synched over to Marketo (i.e., they happened in the last 5 minutes), then Marketo will use the older value in it's database.  To be sure, you can first force a Salesforce synch using the "Synch Lead to SFDC" flow step, which synchs immediately, to ensure you have the most current value. 

2) If you are using a Salesforce field that is a formula field, changes to these fields do NOT trigger the Salesforce synch. Marketo is essentially blind to the change. 

You will need to first force a Salesforce synch using the "Synch Lead to SFDC" flow step, which synchs immediately, to ensure you have the most current value. 

3) It could be that the integration user between Salesforce and Marketo does not have visibility into the field you are using. This is unlikely because it sounds like the field is available in smart lists which means it is synching. But it is worth checking field level security in Salesforce to be sure.

OR if you are using SFDC professional edition I believe the field needs to be on one of your page layouts in order to synch. 

4) Make sure the logic of your smart list is set to use ALL filters as if it is ANY than your condition could be ignored.  

5) Make sure you are not blocking field updates to this field by checking in the admin. 

In terms of verifying the field value in Marketo, you should find your standard fields in Lead Info or Company Info and your custom fields in the SFDC Custom Fields tab of the Marketo lead record. 

Hope this helps!
Serge_Lamarche
Level 2

Re: how to link a salesforce field in marketo

Hi Justin,
very good answer. Yes, the field is available in the Smart list of course since it is a constraint. The field is of formula type, so your answer is very relevant. However, it is still not visible anywhere in marketo. I'll check later if salesforce security is hiding it.
thanks,
Serge.
Anonymous
Not applicable

Re: how to link a salesforce field in marketo

Hey Serge, if it is a formula field then definitely sounds like it is a case of Marketo not having the most recent data.

You'll need to include a flow step to manually force a sync before whatever action is checking the field value in order for the latest value to be visible in Marketo. 
Serge_Lamarche
Level 2

Re: how to link a salesforce field in marketo

Hi Justin,
okay, I have added the flow step Synch lead to sfdc. However, there, if I add choice, I can see that the status field in question is not showing up in the drop down list.
I have the field security in salesforce reduced to nil, so the field is not hidden anywhere available.

I can see the field in admin > field management. It is under Opportunity Info, which may or may not be the right field in salesforce. In salesforce, the field is passed between objects but only the field in the object called "passenger" is relevant. This is getting confusing. That is why I would like to see the field in Marketo and then verify that changes in salesforce are transmitted to marketo. Fields are also sometimes renamed in marketo, I believe.
thanks,
Serge.
 
Anonymous
Not applicable

Re: how to link a salesforce field in marketo

Hey Serge, 

OK so in Salesforce, on which object is the field located? It has to be defined on one particular object. 

It sounds like it is an opportunity field. If this is the case, what this means is that it is not available as a filter on leads directly because it is defined on a different object. You also can't use it in flow step choices. 

You should still be able to access it but in this case you would need to use the filter

HAS OPPORTUNITY

with a constraint of

your field = x

Note that the relationship between Marketo Lead and opportunities is many-to-many, so that may make your life more difficult if you are trying to access a specific opportunity. 

Also, you shouldn't need to add a choice to the Sync to SFDC flow step -- you just do a sync to ensure Marketo has the most recent data on the lead in its database. 

All this being said, it's worth zooming up a level and considering what exactly you are trying to accomplish. If you are looking to send an email when a contact reaches a certain stage in an opportunity, you may want to map this to a status/lifecycle field at the contact level, which will give you a lot more flexibility in Marketo. 
Serge_Lamarche
Level 2

Re: how to link a salesforce field in marketo

Hi Justin,
You're right on. That is exactly what I was doing ie. HAS PASSENGER, with a constraint of, status = x, and the lead has many passengers over the years (and can have two in the same week). The idea is to send an email when the status = x in the passenger this year/this round, but the status can revert to y anytime by a formula. Not only that, what happens if we have a parent object with the parent field status that can have a different value? ie. parent object status = x, while passenger object status = y. The email should be sent only if passenger object status = x.
You're saying that marketo reads fields in the contact object of salesforce directly? I could probably have a complex formula spewing the correct status there but the emails must be sent at a specific date in another field in the passenger object.
Here are the conditions in filter 1:
Has Passenger = true
Status = x
date: in time frame = today
If all these conditions would apply to the same Passenger object, then it would work fine. It doesn't seems to be. I did a list test and at least one lead with passenger status = y shows up when the filter is status = x.
thanks,
Serge.
 
Anonymous
Not applicable

Re: how to link a salesforce field in marketo

I think your best bet is to get an Apex trigger developed in SFDC that will update a field on the contact object based on the logic you are looking for. 

The benefit here is that you can encode your logic in the Apex trigger and specify exactly what you need (e.g., most recent passenger record where status = x and parent object = y or whatever). 

Another benefit is that the field update on the contact object will trigger the Marketo/SFDC sync, so you can now use it to trigger/filter without needing to worry about the field being out of date. 

The downside is you need to get some Apex coded which makes it harder to change your logic. But in a scenario of this complexity, the pros outweigh the cons in IMHO. 
Serge_Lamarche
Level 2

Re: how to link a salesforce field in marketo

Hi Justin,
the contact object is the only one directly linked to marketo?
By trigger, do you mean an actual SFDC trigger? It would probably be much easier to update a field in contact by formula, or by workflow.
Still, I would like to know what status is showing up in marketo i.e. how does marketo picks it up; and how to add a SFDC field in marketo. The info is lacking in marketo.
thanks,
Serge.
Anonymous
Not applicable

Re: how to link a salesforce field in marketo

Hey Serge, 

Here's the level of access Marketo has to each SFDC object, best of my understanding: 

Leads - Create, Read, Update
Contacts - Read, Update
Activities - Create, Read
Accounts - Read
Opportunities - Read
Other custom child objects of leads/contacts - Read

All account and contact fields that are visible to the integration user will be synched over. Fields on opportunities are not visible as fields related to the lead record but are accessible as constraints in opportunity triggers/filters. 

In terms of how you update the Contact field in SFDC, formulas will not work as you can't access child fields using formulas - you can only traverse upwards to parent fields. Also formulas do not trigger updates to the synch so this is really sub optimal. 

A workflow rule could work but there are restrictions around cross-object updates that may make your life difficult depending on the logic you want.