Реферальная программа в WhatsApp

Функционал созданного бота:
1. Генерация реферальной (партнерской) ссылки;
2. Проверка, есть ли пользователь уже в базе;
3. Уведомление пригласившего о новом реферале;
4. Регистрация пользователей в базе;
5. Запрос списка рефералов.

  1. Чтобы мы могли понять, от кого пришел пользователь, бот создает ссылку по шаблону: link = https://wa.me/(ваш номер, к которому подключен бот)?text=You%20were%20recommended%20by%20#{phone}%20Hello

Вместо #{phone} подставляется номер телефона клиента, того самого, который запросил свою реферальную ссылку.

Сгенерированную ссылку мы отправляем не как текст блока, а как вложение (ссылку с уведомлением о клике), так ссылка выглядит короче.

2. Итак, у нас есть ссылка, по которой новые пользователи приходят в бот. При переходе по партнерской ссылке у клиента открывается окно чата с предварительно заполненным сообщением (как показано ниже)

Команда проверки сработает только в том случае, если бот найдет номер телефона из полученного сообщения от клиента.

Третий шаг:

  • разделить фразу на компоненты с помощью команды splitter (инструкция здесь)
  • настроить стрелку с регулярным выражением (и проверить, корректен ли номер телефона)
  • сохранить номер телефона из сообщения в переменную (например, #{ref})
  • проверить номер телефона клиента (того, кто перешел по ссылке) на предмет того, не является ли он уже чьим-то рефералом (ранее приглашенным кем-то другим и записанным в нашу базу). Это делается с помощью функции поиска по столбцу (инструкция здесь)

  1. Теперь поместим пригласившего и приглашенного в базу данных (инструкция здесь)
  2. Добавим в бота специальную команду, которая позволяет просматривать список рефералов (инструкция здесь)

В других мессенджерах создать такую реферальную систему еще проще, потому что данные о пригласившем передаются через скрытый параметр при переходе, и новому клиенту не нужно отправлять текст вроде «Меня пригласил этот номер».