In my previous posts on the "sync with Marketo" "Sync with Marketo" mysteries part 1 and "Sync with Marketo" mysteries part 2, I pointed out the fact it's impossible to know through filtering that a record has stopped sync'ing, except through visiting lead activity logs one by one.
The typical use case is:
A sales person learns a contact has left the company. the salesperson flags the contact as Inactive in SFDC. A workflow automatically unflag the "sync with Marketo" field, the sync immediately stops, meaning that Marketo does not event know the contact is in fact inactive.
In fact, I recently and inadvertently discovered an interesting behavior of the Connector which drives to the possibility to know...
It is based on the fact that SFDC formula fields cannot be updated by Marketo, but always sync from SFDC to Marketo even if the sync raises an error. The only case in which they do not sync from SFDC to Marketo is when the sync is stopped.
Create a formula field in lead and contact objects. Call it "Sync test" or anything else. Put any formula in it. If you want to make it a useful info, copy the SFDC record id into it, you may need it one day (I'll right another post on this).
When you want to test the sync on a record, Create the following smart campaign:
- Trigger: campaign is requested
- Filter: SFDC Type [Person] IS NOT EMPTY (no need to do this on a record that has ever sync'ed)
- + any other filter you see fit
- Change data value, attribute is "sync test", new value is NULL
- Sync lead to SFDC (assign to whatever you want)
- Always run through the flow
Run the smart campaign on the leads you want to test.
When the campaign is over, if the sync is stopped, the "Sync Test" field will still be empty. If the sync is not stopped, the "Sync Test" field will be filled again with the formula value EVEN if the sync did not occur (for instance because of sync error, due to validation rules in SFDC).
The interesting thing is this is that the blocked sync records in Marketo can therefore be queried with the "Sync Test IS EMPTY" filter, for instance to delete them from Marketo.