Статья была полезной?
С помощью модуля «Воронки» можно решить множество задач в вашем проекте. Одна из них — это организация партнерской программы, в которой партнеры могут приглашать рефералов и получать вознаграждение.
В этой статье разберем, какие настройки понадобятся для запуска партнерской программы через модуль «Воронки». О том, как настроить партнерку через стандартный функционал, читайте в статье «Как запустить партнерскую программу на GetCourse».
Схема воронки для партнерской программы
Используя модуль «Воронки» вы можете реализовать разнообразные схемы партнерской программы. В статье мы рассмотрим простую схему, которая состоит из следующих действий участников:
- Партнер запускает бота, отправляет в него заданную вами команду и получает свою партнерскую ссылку для подключения к боту. После чего распространяет свою ссылку любыми доступными средствами.
- Пользователь запускает бота по полученной партнерской ссылке и становится рефералом.
- Партнеру приходит уведомление о том, что у него появился новый реферал, а также ему начисляются бонусные рубли в аккаунте школы.
При необходимости вы можете добавить или убрать части воронки, чтобы доделать её под свои задачи, например, можно учитывать подписку на канал, регистрацию или авторизацию пользователей.
Настройка партнерской программы через «Воронки»
Чтобы настроить партнерскую программу по схеме выше, подключите к аккаунту бота и добавьте его в сцену:
Настройки сцены
Как связать бота со сценой
- Запуск бота партнером или рефералом
Чтобы партнер или реферал могли пройти по этой воронке, сперва им потребуется запустить бота и зарегистрироваться, предоставив свой email.
Для настройки запуска:
- Добавьте в воронку ноду «Команда бота» и оставьте в ней команду /start.
Нода Команда бота
Настройки ноды
- Перейдите в шапке воронки на вкладку «Запуск».
- Нажмите на значок
над нодой «Команда бота», чтобы указать настройки при запуске блока. - Включите опцию «Установить переменные» и добавьте выражение
chat.partner = event.utm?.startParam || null. Оно поможет связать запуск с партнером, по чьей ссылке перешел реферал. - Нажмите «Применить».
Вкладка Запуск
Настройки ноды при запуске блока
Запрос email при запуске бота
Чтобы партнер мог получить бонусные рубли за приглашение рефералов, необходимо, чтобы он и реферал имели профили в аккаунте школы. Для этого можно добавить запрос email и регистрацию прямо в воронке.
Для настройки:
- Добавьте ноду «Отправить сообщение» и вставьте любой текст для запроса email. Он будет приходить сразу после запуска бота.
Нода для отправки сообщения
Текст сообщения
- Добавьту ноду «Ввод пользователя». Данная ветка будет использоваться для случая, когда пользователь ввел не email, а что-то другое.
- В настройках выберите вариант «содержит любой ввод, который не был перехвачен соседними блоками» и выключите опцию «Сохранить ввод пользователя».
- Нажмите «Применить».
Нода Ввод пользователя
Настройки ноды
- Добавьте ноду «Отправить сообщение», в которой можно уведомить пользователя о том, что он так и не отправил email, и попросить направить его вновь.
Нода для отправки сообщения
Текст сообщения
- Добавьте ещё одну ноду «Ввод пользователя». Она будет использоваться для ветки, когда пользователь отправил email в бота.
- В настройках ноды выберите вариант «соответствует регулярному выражению» и добавьте выражение
^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$. Оно проверяет, соответствует ли введенное пользователем сообщение формату email. - Замените переменную
chat.lastMessageнаchat.email, чтобы на следующем этапе использовать эл. адрес пользователя для регистрации. - Нажмите «Применить».
Нода Ввод пользователя
Настройки ноды
- Добавьте ноду «Зарегистрировать пользователя GetCourse» и укажите в ней переменную
chat.email, чтобы пользователь добавился в базу с присланным email.
Нода для регистрации пользователя
Настройки ноды
- Настройка партнерской ссылки и последующих реакций
Чтобы партнер мог получить свою партнерскую ссылку, нужно настроить команду для бота и универсальную ссылку, которая будет преобразовываться в ссылку партнера для привлечения рефералов.
Для этого:
- Добавьте в воронку ноду «Команда бота».
- Выберите в ней вариант запуска «точно совпадает с любым из вариантов».
- Добавьте команду, с помощью которой партнер сможет получить свою партнерскую ссылку, например, /partner.
- Нажмите «Применить».
Нода «Команда бота»
Настройки ноды
- Добавьте ноду «Отправить сообщение» и вставьте в неё ссылку вида
t.me/название_бота?start={chat.id}. - Нажмите «Применить».
Нода «Отправить сообщение»
Настройки ноды
Настройка реакций при запуске бота по партнерской ссылке
При запуске бота любым пользователем может быть 3 варианта событий, которые необходимо донастроить для корректной работы. В нашем примере в качестве реакции на каждое из событий будет идти отправка сообщения.
Для этого добавьте ноды «Отправить сообщение» для каждого варианта события:
- Пользователь запустил бота по партнерской ссылке и стал рефералом.
- Пользователь запустил бота не по партнерской ссылке.
- Партнер запустил бота по своей же партнерской ссылке.
После чего добавьте текст сообщения для каждого из вариантов и следуйте настройкам ниже.
Вариант 1 — Пользователь запустил бота по партнерской ссылке и стал рефералом. Чтобы отслеживать выполнение данного события:
- Кликните два раза на стрелку и нажмите на «Установить условие».
Ветка От партнера
Установка условий
- Выберите вариант запуска «все условия выполнены»
- Укажите значения переменных
chat.partnerиchat.partner != chat.id, чтобы проверить, что запуск бота был именно по партнерской ссылке, но не партнером, которому принадлежит ссылка. - Нажмите «Применить».
Вариант 2 — Пользователь запустил бота не по партнерской ссылке. Чтобы отслеживать выполнение данного события:
- Кликните два раза на стрелку и нажмите на «Установить условие».
Ветка Не от партнера
Установка условия
- Выберите вариант запуска «ни одно из условий не выполнено»
- Укажите значения переменных НЕ
chat.partner, чтобы проверить, что в ссылке для запуска бота не было партнерского кода. - Нажмите «Применить».
Вариант 3 — Партнер запустил бота по своей же партнерской ссылке. Чтобы отслеживать выполнение данного события:
- Кликните два раза на стрелку и нажмите на «Установить условие».
Ветка По своей ссылке
Установка условия
- Выберите вариант запуска «все условия выполнены»
- Укажите значения переменных
chat.partnerиchat.partner == chat.id, чтобы проверить, что в ссылке есть партнерский код и он принадлежит тому же партнеру, который запустил бота по этой ссылке. - Нажмите «Применить».
- Уведомление партнера о новом реферале и начисление бонусов
Чтобы после того как реферал запустит бота по партнерской ссылке, срабатывали последующие реакции для партнера, необходимо передать данные о реферале в ноду «Событие». Для этого используйте ноду «Вызвать URL».
Передача информации в ноду «Событие»
Для настройки передачи:
- Откройте ноду «Событие» и перейдите на вкладку «Внешний вызов».
- Включите опцию «Разрешить вызов внешней системой».
- Скопируйте ссылку для внешнего вызова.
- Примените настройки.
Нода Событие
Ссылка для вызова внешней системой
- Нажмите на значок
над нодой «Событие», чтобы указать настройки при запуске блока. - Включите опцию «Установить переменные» и добавьте выражение
chat.lastReferalName = event.params.referalName. Оно потребуется для того, чтобы в дальнейшем отправить партнеру имя нового реферала. - Нажмите «Применить».
Настройки при запуске блока
Настройки при запуске блока
- Откройте ноду «Вызвать URL» и вставьте скопированную ссылку.
- Выберите тип запроса POST и тип ответа json.
- В тело запроса добавьте следующий код, чтобы передать данные о реферале для последующих событий.
{
chatId: chat.partner,
customData: {
referalName: chat.userName,
}
}Нода Вызвать URL
Настройки ноды
Подсчет рефералов партнера
Чтобы можно было уведомлять партнера о новом реферале и их общем количестве, необходимо настроить подсчет рефералов в воронке.
Для этого:
- Добавьте ноду «Прокси» и соедините её с нодой «Команда бота» для партнера.
- Нажмите два раза на стрелку и включите опцию «Ограничить кол-во запусков».
- Примените настройки.
Ветка для Прокси
Настройки
- Зайдите в настройки запуска ноды «Прокси» и включите опцию «Установить переменные».
- Добавьте переменную
chat.hasReferals = 0. С её помощью будет начинаться подсчет рефералов партнера. - Нажмите «Применить».
- Добавьте еще одну ноду «Прокси» от ноды «Событие».
- Зайдите в настройки запуска ноды и включите опцию «Установить переменные».
- Добавьте переменную
chat.hasReferals += 1, чтобы при появлении нового реферала у партнера количество текущих увеличивалось на 1. - Нажмите «Применить».
Уведомление партнера о новом реферале
- Добавьте ноду «Отправить сообщение».
- Добавьте текст сообщения. В нашем примере используются переменные:
{chat.lastReferalName}— для отправки имени нового реферала;{chat.hasReferals}— для отправки общего количества рефералов у партнера, которое подсчитывалось через ноды «Прокси».
Обратите внимание
При необходимости вы можете использовать другие переменные, однако их потребуется донастроить и учесть во всей воронке. Подробнее в статье «Локальные и глобальные переменные в воронках».
Нода для отправки сообщения
Текст сообщения с переменными
Начисление бонусов парнеру
По умолчанию в событие для партнера придет только агент chat. Чтобы после появления нового реферала партнеру можно было начислить бонусные рубли, необходимо в агента chat сохранить id реферала.
Для этого:
- В настройках запуска ноды с отправкой сообщения рефералу (ветка при переходе по партнерской ссылке) добавьте переменные.
chat.userName = chat.firstName chat.userId = user.id
- В настройках запуска ноды с отправкой сообщения рефералу (ветка не от партнера) добавьте переменную
chat.userId = user.id
- Добавьте отдельное событие для партнера и скопируйте его идентификатор.
Нода Событие
Настройки ноды
- В ветке партнера после отправки сообщения о новом реферале добавьте ноду «Создать событие».
- Вставьте идентификатор из ноды «Событие».
- Выберите метод вычисления «По выражению».
- Добавьте 2 агента:
- Пользователь с переменной
chat.userId, - Чат с переменной
chat.id.
- Пользователь с переменной
- Нажмите «Применить».
Нода Создать событие
Настройки ноды
- Добавьте ноду «Начислить/Списать баланс» после ноды «Событие» и укажите, какое количество бонусных рублей будет начислено партнеру.
Нода Начислить/Списать баланс
Настройки ноды
Готово! Остается запустить воронку, и партнерская программа настроена.
авторизуйтесь