Tutorials

Tutorials for common types of loyalty and reward programs

Tutorial 1: How to set up a points-based loyalty program

Let's say you want to give rewards to your customers in the form of points. And if a customer earns 100 points, they can unlock a reward, which can be a custom coupon or discount.

LoyaltySurf supports participant metadata, which makes this loyalty program possible to implement.

Let's imagine you will give your users 10 points each time they do something, and that it will take 100 points to unlock a reward.

How to set up this loyalty program:

  1. Create your first LoyaltySurf campaign and at the first step in the campaign editor, create a new reward. In the advanced reward settings, make sure the loyalty actions required is 1 (this is the default).

  2. Next, we need to add your users into your LoyaltySurf campaign:

    1. For your existing users, you'll need to import them by clicking Add > Import Participants from your admin dashboard.

    2. For new users, you'll need to call /POST Add participant every time someone new signs up

  3. Whenever your user performs an action, call /POST Update participant to update their metadata value. For example:Participant.metadata.points = Participant.metadata.points + 10.

    1. On the API response, check if (Participant.metadata.points > 100) then call /POST trigger loyalty action by email, which will unlock the reward for the participant.

  4. Then after the reward is unlocked, implement the following:

    1. Set up webhooks to automate reward fulfillment (so that the user gets their reward).

    2. Call /POST Update participant and decrement Participant.metadata.points by 100 to make sure the participant's points are reset.

Last updated