Connecting Salsa Engage with Gravity Forms


Cornershop Creative is the creator of the Salsa Engage Gravity Forms Add-On. This add-on allows for sending data from Gravity Forms created and managed in WordPress into a designated Salsa Engage account. You can choose what data to send to Salsa and what fields the data should go into on a form-by-form basis.

The Add-On allows for two types of data to be passed to Salsa:

  • Supporter Information - contact information like name, email, address, and segments

  • "Offline" Donation Information - transaction information like amount, date, and transaction ID.


First, download the Add-On here.

After you've installed the Add-On, you need to connect the add-on to your Engage account. 

Go to Forms > Settings in the WordPress administrator interface and select Engage API in the left sidebar. Complete the Engage API key field. You can find this value from within Engage by going to Settings > API > Integration API and copying/pasting the provided "access token" in the Engage API Settings section.

Note that this screen also offers a "Clear cache" button which can be used to refresh this plugin's record of your Engage supporter segments.

Supporter Mapping

Mapping Gravity Forms fields to Engage fields needs to be done on a form-by-form basis.

First, create a new form by following this Gravity Forms guide.

For each form that you want to connect to Engage, you must manually map fields, so the Gravity Form knows where to send — or not to send — the information collected.

To create an API connection:

  • From the left hand navigation menu, navigate to Forms

  • From the list of forms, hover over the form you want to connect with Engage, hover over Settings, then click on Engage API 

  • This screen will identify if a "feed" has been created for this form. If none has been set up, but you have properly configured your Engage API key setup, the screen will look like this:

  • Click on the Add New button or the link for "create one." 

  • First, you may want to rename the API Feed to something more meaningful than the default.

  • Map the fields from your form to the corresponding Engage field. The left column contains a list of all supporter fields in your Engage account. The right side dropdowns contain a list of all fields on your specific form. While Gravity Forms will attempt to automatically map the fields that it can identify, these may need adjustments.

  • Note that Email must be mapped - this is Salsa’s main way of tracking supporter records. 

  • Beneath the field mapping is a list of the Segments present in your Engage account. From here you may select one or more segments users submitting this form will be added to — this functionality is particularly useful in combination with "conditional logic" outlined below. Note: this list of segments is updated in WordPress hourly; if you've recently created a new segment in Engage and you don't see it here, use the "clear cache" button on the APi settings page of the Add-On.

  • If your Gravity Form collects U.S. dollar payments that you wish to track in Engage, you can enable the "record as offline donation" checkbox to have transaction information from form payments logged in Engage. Note: you must configure payment processing within Gravity Forms (using an Add-On like Paypal or Stripe) — Engage will not process payments submitted via Gravity Forms, just record that they occurred.

  • Once everything is configured, click the blue Save/Update Settings button to save your connection. Data will start flowing to Engage as users complete this form.


Conditional Logic

The feed interface also contains a setting for setting up conditional logic:

Conditional logic allows you to set up a feed to only send data to Engage under certain conditions. For example, you may want users who select a certain interest on a form to be assigned to one segment, and users who select a different interest to go to a different segment.

Using conditional logic, you can set up multiple Engage feeds and set them only to process when specific criteria are met.

In this example, we have a field called Events where users can select if they're interested in Spring, Summer, Fall, or Winter events:



Here, you want users to be added to the corresponding segment(s) in Engage depending on which season(s) they select. To do this, you'll need to create 4 separate feeds, then use conditional logic to indicate which feeds should be processed when.

  • From the list of forms, hover over the form you want to connect with Engage, hover over Settings, then click on Engage API.

  • Click Add New to create a new feed.

  • Give your new feed an appropriate name, like "Summer Events".

  • Map your fields as noted above.

  • In this example, the box for the group for Summer Events is checked because this will be the feed for people who chose that option.

  • At the bottom of the screen, enable the checkbox for Conditional Logic: Enable Condition. A new set of options will appear.

  • For Process this feed..., you can choose:

    • Any - The data will be sent to Engage per the mapping in this feed if any of the conditions you set in the next step match

    • All - The data will be sent to Engage per the mapping in this feed only if all of the conditions you set in the next step match

  • Choose the first field and items for the condition. In this example, this feed will process to Engage if a user selected "Summer" for Events.

  • You can add additional fields using the plus sign.

  • Click Update Settings to save your changes.

  • Repeat this process to add feeds for each of your other conditions, e.g. Spring, Fall and Winter.

  • Each feed will only process and send data to Engage if it meets the conditions that were set for it.

Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.