GrowSurf Docs
Help CenterSystem StatusContact SupportYour Dashboard →
  • Welcome
  • Getting Started for Web
    • Google Tag Manager
    • Participant Auto Authentication
  • Getting Started for Native Mobile
  • Developer Tools
    • Embeddable Elements
    • JavaScript SDK
      • Tutorials
      • Single Page Applications
      • API Reference
    • REST API
      • Tutorials
      • Objects
      • API Reference
      • API Guidelines
      • API Response Codes
    • Webhooks
      • Securing Your Webhooks (optional)
      • Examples
      • Events Reference
    • Metadata
  • Integrations
    • ActiveCampaign
      • Tutorials
    • Amplitude
    • AWeber
      • Tutorials
    • Brevo (formerly Sendinblue)
      • Tutorials
    • Cal.com
    • Calendly
    • Campaign Monitor
      • Tutorials
    • Chargebee
    • Constant Contact
      • Tutorials
    • ConvertKit
      • Tutorials
    • Customer.io
      • Tutorials
    • Drip
      • Tutorials
    • EmailOctopus
      • Tutorials
    • Fullstory
    • GetResponse
      • Tutorials
    • Google Ads
    • Google Analytics
    • Heap
    • Help Scout
    • HubSpot
      • Tutorials
    • Intercom
      • Tutorials
    • Klaviyo
      • Tutorials
    • LinkedIn Ads
    • Mailchimp
      • Tutorials
    • MailerLite
      • Tutorials
    • Mailjet
      • Tutorials
    • Make
      • Tutorials
    • Marketo
      • Tutorials
    • Meta (Facebook) Ads
    • Mixpanel
    • Pabbly Connect
      • Tutorials
    • PayPal
    • Pendo
    • PostHog
    • Recurly
    • Salesforce
      • Tutorials
    • Segment
    • SendGrid
      • Tutorials
    • Slack
    • Stripe
    • Tango Card
    • Typeform
    • X (Twitter) Ads
    • Zapier
      • Tutorials
      • Using Filters
      • Troubleshooting
Powered by GitBook
On this page
  • Referral Trigger
  • Description
  • How to Set Up
  • Stripe Metadata
  • Test Mode
  • Troubleshooting Tips
  • Coupons/Credits
  • Description
  • How to Set Up
  • Stripe Metadata
  • Test Mode
  • Troubleshooting Tips

Was this helpful?

  1. Integrations

Stripe

Trigger referrals on new Stripe charges or automatically apply Stripe coupons or credits as rewards.

Last updated 28 days ago

Was this helpful?

Note: The Stripe integration is only available to users on a GrowSurf paid plan.

Referral Trigger

Description

When you connect your Stripe account to your GrowSurf campaign and enable Referral Trigger, GrowSurf will automatically detect and trigger referrals on new Stripe charges.

GrowSurf will check if the Stripe customer's email address matches a GrowSurf participant's email address. If a match is found, then a referral will trigger, giving referral credit to the referrer and unlocking any rewards, if applicable. If a referral has already been triggered (and referral credit already was awarded), then nothing else will happen because referral credit can only be awarded once.

Even if the Stripe customer's email address changes, GrowSurf will track those changes to ultimately ensure the referral trigger ties back to the referrer.

Here's how to set up Stripe referral triggers:

How to Set Up

Important Note: Unless your campaign is configured to add participants automagically (), you'll need to make sure you first call JavaScript or REST API to add new participants.

Step 1: In Campaign Editor > 4. Options > Integrations, click the Connect to Stripe button

Step 2: Once connected, GrowSurf will have Referral Trigger enabled by default.

(Optional) Step 3: You can add a referral trigger hold period by toggling the Show advanced settings section.

Note: The referral trigger hold period is useful for preventing fraud and helps minimizes losses due to refunds and chargebacks. During this hold period, if there is a refund or chargeback, the referral trigger will be cancelled completely.

Stripe Metadata

GrowSurf will also update metadata for Stripe customers who trigger referrals.

Metadata Key

Description

Example

GrowSurf Participant ID

The GrowSurf participant ID of the Stripe customer who was referred

xyz456

GrowSurf Participant URL

The URL of the referred Stripe customer

https://growsurf.com/dashboard/campaign/abc123/participant/xyz456/participant/xyz456

GrowSurf Referrer ID

The ID of the participant who referred the Stripe customer

hij789

GrowSurf Participant Referred By URL

The URL of the participant who referred the Stripe customer

https://growsurf.com/dashboard/campaign/abc123/participant/hij789

GrowSurf Participant Referred By Email

The email address of the participant who referred the Stripe customer

bob@loblaw.com

Test Mode

Our Stripe integration comes with a test mode that allows you to test triggering referrals without using live payments. When you toggle Test Mode on, GrowSurf will also process all test mode payments made in your Stripe account.

Important note: When you go live with your campaign, please make sure to switch back to live mode. Otherwise, referral triggers will not be issued in live mode while test mode is enabled.

Troubleshooting Tips

  • When testing out the Stripe Referral Trigger integration, make sure to view participants' activity logs for details that can help you troubleshoot any issues.

  • If you were expecting a referral to be triggered in live mode, double-check that you do not have test mode enabled.

  • If your Stripe customer changes their email address and then makes a payment in Stripe (which triggers a referral), there needs to be at least a few minutes between those events, or else the referral trigger will not register. This is because GrowSurf relies on Stripe sending out a webhook event which notifies GrowSurf of the Stripe customer's new email address.

Coupons/Credits

Description

When a GrowSurf participant unlocks a reward, apply a coupon or credit to a Stripe customer.

Even if the Stripe customer's email address changes, GrowSurf will track those changes to ultimately ensure the Stripe coupon/credit gets applied to the right Stripe customer.

How to Set Up

Step 1: In Campaign Editor > 4. Options > Integrations, click the Connect to Stripe button.

You must first select a default currency for your GrowSurf campaign in order to use Stripe. Your default currency determines whether Stripe coupons or credits can be applied to your Stripe customers or subscriptions. For example, if your default currency is USD then the coupon or credit that you set up can only be redeemed for Stripe customers or subscriptions that are using USD.

Step 2: Once connected, click the Coupons/Credits tab and connect a reward(s) to Stripe by clicking the Connect a Reward button.

Note: When you connect to Stripe, Referral Trigger will be enabled by default. If you are triggering referrals another way, disable the toggle in the Referral Trigger tab.

Click on either Coupon or Credit. If coupon is selected, enter the details of the coupon including the name, type, and discount. You can also click Show advanced coupon settings to view more customization settings.

Advanced feature tip: Issue different reward amounts by using dynamic rewards

Dynamic rewards let you offer different reward values based on specific attributes of the referred friend (such as the pricing plan they signed up for) or referrer (such as their partner status).

For example, you can award $50 in credits to winners when their referral signs up for your base plan or $100 in credits when they sign up for a higher-costing plan.

Note: By default, coupons are recommended. However, if you want rewards to be stackable (e.g, $10 off for every referred friend, 100% off for one month), you have two options:

  1. Select "Coupon" and make sure you apply coupons to Subscriptions instead of Customers.

  2. Alternatively, you can choose to apply a "Credit" (instead of "Coupon").

If credit is selected, enter the details of the credit including the description and credit amount, which is applied to the customer's balance every time this reward is unlocked.

Then hit Save. Now, anytime this reward is unlocked by a winning participant, a Stripe coupon or credit will also be applied to the Stripe customer or subscription associated with the GrowSurf participant email address.

With double-sided rewards, you have full flexibility in choosing who gets the coupon or credit reward: (1) just the referrer, (2) just the referred person, (3) or both referrer and referred person.

Once you save the reward, you should see a green dot, indicating that the Stripe Coupons/Credits integration is enabled.

Stripe Metadata

GrowSurf will also update metadata for the Stripe coupon with information.

Metadata Key

Description

Example

GrowSurf Campaign ID

The unique ID of the GrowSurf campaign

abc123

GrowSurf Participant ID

The GrowSurf participant that unlocked the Stripe coupon

xyz456

GrowSurf Participant URL

The URL of the GrowSurf participant that unlocked the Stripe coupon

https://growsurf.com/dashboard/campaign/abc123/participant/xyz456

GrowSurf Reward Description

The description of the GrowSurf campaign reward

Refer a friend and get 2 months free!

GrowSurf Participant Reward ID

The unique ID of the participant's unlocked reward

hij630

Test Mode

Our Stripe integration comes with a test mode that allows you to test coupons/credits without using live coupons/credits. When you toggle Test Mode on, GrowSurf will apply coupons/credits only to your Stripe account in test mode. It is important to note that Stripe coupons/credits created in test mode will only apply to Stripe customers and Stripe Subscriptions that exist within your Stripe account when test mode is toggled on.

To enable test mode, toggle the Test Mode switch at the bottom-right, then connect a reward(s).

Please note that the rewards you connect while Test Mode is enabled are completely separate from the rewards you connect while in live mode.

Important note: When you go live with your campaign, please make sure to switch back to live mode. Otherwise, coupons/credits will not be issued in live mode while test mode is enabled.

Troubleshooting Tips

If there is an issue with applying Stripe coupons or credits, GrowSurf will send out a notification email to the campaign owner. The issue will also be stated in the participant's detail page when you view their reward or when you view the participant's activity logs.

Here are some common reasons why there may be failures:

  • The customer with the associated GrowSurf participant email address does not exist in Stripe (please make sure to check live or test mode depending on if you have toggled on Test Mode in the GrowSurf Stripe integration)

  • If dynamic reward rules are enabled for the Stripe reward, there may have been no matching rule found.

  • If you were expecting a coupon/credit to be applied in live mode, double-check that you do not have test mode enabled.

  • If your Stripe customer changes their email address right before the Stripe reward gets applied, they may not receive it. This is because GrowSurf relies on Stripe sending out a webhook event which notifies GrowSurf of the Stripe customer's new email address, but if there is not at least a few minutes before the reward event, GrowSurf will not know about the Stripe customer's email change.

Other notes:

  • If you have manual reward approval enabled for your campaign: Stripe coupons/credits will only be issued to the winner(s) only after you approve the reward.

  • If the referral was triggered recently (or if the reward was approved recently), please allow for a few minutes of server processing before viewing the participant's reward from your GrowSurf admin dashboard. During this time, the data displayed for the participant's reward may not be accurate.

For more details on Stripe Testing, .

If there was a failure, you will need to manually issue the Stripe reward from your .

Only companies based in the can use the Stripe coupons/credits integration.

see here
Learn more →
Stripe dashboard
following 135+ countries
see image
growsurf.addParticipant()
/POST Add Participant