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 metadataarrow-up-right, 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 program and at the first step in the program 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 program:

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

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

  3. Whenever your user performs an action, call /POST Update participantarrow-up-right to update their metadataarrow-up-right 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 emailarrow-up-right, which will unlock the reward for the participant.

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

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

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

Last updated

Was this helpful?