• Home
  • Pardot Tips & Tricks: How to Setup Pardot Salesforce Selective Sync with Process Builder or Flows

Pardot Tips & Tricks: How to Setup Pardot Salesforce Selective Sync with Process Builder or Flows

Automated Selective Syncing from Salesforce to Pardot

This solution will work with ALL levels of Pardot using Salesforce Enterprise Edition or greater.

THE REQUEST/USER STORY:

Sales & Marketing Users would like to specify which Salesforce records create a New Prospect in Pardot.

Currently, the Salesforce Connector in Pardot includes the option to ‘Automatically create Prospects in Pardot if they are created as a Lead or Contact in Salesforce’.

THE SOLUTION:

WebhooksByCypress is an Apex Class that allows an HTTP POST from a flow in Salesforce. This class uses an @invocablemethod, which means it can be used with Process Builder or Flows in Salesforce.


Scroll below to view step by step instructions for setting up your first Salesforce flow with the Webhooks Package:


Additional Benefits of this Managed Package

In addition to enabling Selective Syncing from Salesforce to pardot, this Managed Package solves the following use cases:

  • Custom Object Integration: Triggering Pardot Prospect Sync from Custom Salesforce Objects
  • Better Channel Attribution: Simplified Method for Pardot Campaign Attribution from Salesforce Channels
  • Improved Segmentation: Use Multiple Pardot Form Handlers for each Salesforce integration, app & flow decision.
  • Custom Systems Integration: Works with Other Integrations that accept Querystrings (Zapier, HubSpot, AWS, xMatters)

HOW TO USE THIS PACKAGE

Once you’ve installed the Managed Package, there are some steps you’ll need to complete before getting the package to work.

Setup Remote Site Settings

In order for our HTTP POST to work from SalesForce, we need to make sure our Remote Site settings include https://go.pardot.com. Alternatively, you can also add your tracker domain.

This assures Salesforce TRUSTS the endpoint URL for Pardot. Optionally, a tracker domain can be used. We have found using go.pardot.com is a clean solution, but remember the form handler will need to use the domain included in the remote site setting!

  1. From Setup, Quickfind Remote Site Settings
  2. Create a new remote site
  3. Name: PardotFormHandler
  4. Site/url: https://go.pardot.com

Using WebHooksbyCypress

Webhooks by Cypress are designed to work with Process Builder or Flows in Salesforce. In this example, we’ll be using Pardot form handlers. However, we’ve tested this with many other tools that accept HTTP POST and it works just fine! (For example, Webhooks by Zapier!)

The Apex class has been built to allow a url variable to be added in Process Builder or flow (see below). This is where we’ll add a URL with some variables from Salesforce. Depending on whether you’re using Process Builder, Flow to create a formula for your URL, or using a formula field created on the record itsself is up to you. This method will execute the HTTP POST method in salesforce to whatever is passed through to the url variable.

WebHooksbyCypress with Process Builder: In Process Builder, you add an Apex Action. Name your action whatever you’d like, we recommend Send to Pardot. Find the wh4sf__WebHooksbyCypressBatchJob Apex Class and add the url variable from the Set Apex Variable. Create a formula that includes your Pardot Form handler and whichever values you’d like to send to your form handler by appending the query string to your form handler

Salesforce Webhooks with Process Builder

WebHooksbyCypress with Flows: In Flow, you will likely create a New Resource to generate your webhook URL. Here’s an example of a Resource we created:

Creating a Formula Resource Salesforce Flow

This has been designed to be a flexible way to make HTTP callouts from Salesforce flow or process builder. There are many use cases I have not yet explored, including using this with custom objects, let us know what you come up with!

Troubleshooting Webhooks by Cypress

Issue: I am unable to find the APEX class when I am creating a flow

Confirm you are searching for the correct Apex Class:

The correct Apex class being used for this package is wh4sf__WebHooksbyCypressBatchJob

Has the package been installed?

As a Salesforce Admin navigate to the Installed Packages section, from your Setup Menu Navigate to Apps>Packaging>Installed Packages.

Issue: My flow is setup, but I am not seeing any activity in the Pardot form handler

Is the Pardot Form Handler URL accepted by your Salesforce Org

Confirm the domain being used with the Pardot Form Handler is included in Salesforce’s Remote Site Settings

for more troubleshooting assistance click here

3 Comments

  1. Can this APEX class also be used for contacts connected to an Account as well as for Leads?

    1. Hi Lorenzo,

      Yes! This APEX class can be used with any trigger, including custom objects if needed.

      For example, you could have installed the Zoom Webinar for Salesforce Integration, it works with the Zoom Webinar Attendees Object as well.

      It can send a webhook from any object, if you’re using it for Pardot, the most important thing is that there is an ’email’ field, so Pardot can create a prospect.

  2. Leveraging selective sync in Salesforce Pardot can be a game-changer for optimizing your marketing and sales efforts. By strategically choosing which data to sync, you can streamline workflows, enhance data integrity, and drive more targeted engagement, ultimately leading to increased success in your marketing automation initiatives.

Comments are closed.