← View All Guides
Salesforce logo
Integration Guide

How to Trigger Referrals from Salesforce with GrowSurf

Use GrowSurf's Salesforce Referral Trigger to credit referrals when the Salesforce record conditions you choose are met.

Want the full setup walkthrough?

Use these docs for exact setup steps, supported fields, and troubleshooting.

GrowSurf's Salesforce integration handles two separate jobs: it can sync GrowSurf participant fields onto Salesforce contacts, and it can trigger a referral when a Salesforce record matches the exact condition you configure.

For attribution, the important setup is the Referral Trigger. Salesforce supplies the record update, while GrowSurf decides whether the participant match is valid, credits the referrer, and unlocks any referral rewards tied to that conversion.

Integration Steps

Connect Salesforce from GrowSurf's Integrations step

GrowSurf Campaign Editor integrations step with the Connect to Salesforce button
Start in Campaign Editor > 4. Options > Integrations, then connect Salesforce before you configure any referral-trigger logic.

Connect Salesforce in GrowSurf first, and make sure the Salesforce user you authorize can create custom fields, assign field permissions, manage contacts, and manage the Salesforce event PushTopic GrowSurf uses for referral-trigger events. GrowSurf uses that connection for both contact-field sync and referral-trigger settings.

If the Salesforce user cannot create or update that PushTopic subscription, GrowSurf may let you connect Salesforce but fail when you try to enable or change a Salesforce referral trigger. In that case, ask your Salesforce admin to grant the missing API and PushTopic permissions before you continue.

Choose the Salesforce record change that should count as a referral

Turn on Referral Trigger, then choose the Salesforce object, direct trigger field, and exact value that should qualify the referral. New setups can use Opportunity, Lead, Contact, Account, or another queryable Salesforce custom object.

Use a single-value trigger field. GrowSurf does not currently support Salesforce multi-select picklist fields or large text / textarea fields for referral triggers, so choose a standard picklist, boolean, or compatible single-line text field instead.

Keep the trigger focused on the business event that actually matters. Common choices are a closed-won opportunity, a lead status that proves handoff or acceptance, or a custom object state that confirms the customer reached the milestone you care about.

Choose how GrowSurf should find the referred participant

GrowSurf keeps participant matching explicit. For new Opportunity setups, Use the Primary Opportunity Contact is the default, while Use all Opportunity Contacts (advanced) stays available as an advanced option. Leads use Lead.Email to find the participant, Contacts use Contact.Email, and Accounts or custom objects must use either a direct email field, a direct Contact lookup, or a direct Lead lookup.

  • Make sure the selected matching path resolves to a real email address.
  • Make sure that email already exists as a participant in the connected GrowSurf campaign.
  • Avoid relying on indirect Salesforce relationship chains, because GrowSurf does not follow them for Salesforce referral triggers.

Add a hold period if matching records still fall out of qualification

If your team sees Salesforce records match the rule briefly and then move back out, turn on a referral trigger hold period. GrowSurf will cancel the referral if the selected Salesforce record stops matching before that hold window finishes.

Validate the attribution in GrowSurf activity logs before you trust the report

Salesforce record updates are processed asynchronously. During testing, update a known record, wait for GrowSurf to receive the event, and inspect the participant activity log before you assume the referral should have credited instantly.

Tips

Use the first Salesforce condition that proves real referral value

Choose the record state that actually represents sales acceptance, qualification, enrollment, or revenue validation for your business. That keeps GrowSurf credit aligned with the outcome you care about instead of an early CRM status that can still reverse later.

Keep participant matching explicit

GrowSurf is easiest to reason about when the participant path is obvious. Prefer a single primary Opportunity contact, a direct email field, or a direct Lead/Contact lookup over anything that depends on indirect Salesforce relationships.

Plan for asynchronous processing while testing

If a record update does not appear immediately, open the participant's GrowSurf activity log first. Salesforce sends these updates asynchronously, and GrowSurf may need a short delay before it can process the event.

FAQ

Can GrowSurf trigger referrals from more than Salesforce opportunities?

Yes. New Salesforce referral-trigger setups can use Opportunity, Lead, Contact, Account, or another queryable Salesforce custom object, as long as you choose a direct trigger field and an exact value to match.

Can I use a Salesforce multi-select picklist field as the trigger?

Not yet. GrowSurf currently supports exact-match triggers on single-value Salesforce fields such as standard picklists, booleans, and compatible single-line text fields. Multi-select picklists and large text / textarea fields are not supported for Salesforce referral triggers.

What Salesforce permissions do I need for referral triggers?

The connected Salesforce user needs enough access to create GrowSurf's contact fields, assign field permissions, manage contacts, and create or update the Salesforce event PushTopic used for referral-trigger events. If Salesforce connects successfully but saving the referral trigger fails, this missing PushTopic permission is one of the first things to check with your Salesforce admin.

How does GrowSurf decide which participant triggered the referral?

That depends on the object you choose. New Opportunity setups default to Use the Primary Opportunity Contact, with Use all Opportunity Contacts (advanced) still available as an advanced option. Leads use Lead.Email, Contacts use Contact.Email, and Accounts or custom objects must use a direct email field or a direct Lead/Contact lookup to identify the participant. GrowSurf then gives referral credit to that participant's referrer.

Can I delay referral credit after the Salesforce record starts matching?

Yes. The Salesforce Referral Trigger settings in GrowSurf include an optional hold period. If the record stops matching during that hold window, GrowSurf cancels the referral instead of crediting it.

Do I need Salesforce contact-field sync to use Salesforce referral triggers?

No. Sync Data and Referral Trigger are configured separately. Use Sync Data when you also want GrowSurf fields such as share URL or referral status on Salesforce contacts, but the referral trigger itself is its own setting.

Trusted by marketing and product teams at fast-growing companies across B2C, SaaS, fintech, AI, healthtech, education, and insurance