Перейти к основному содержимому

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

Реферальная программа позволяет клиентам приглашать друзей в программу лояльности и получать вознаграждения. В рамках сценария участвуют две стороны:

  • Реферер — клиент, который приглашает.
  • Реферал — клиент, который регистрируется/совершает действия по приглашению.

Вознаграждение (бонусные баллы или другие преимущества) может начисляться как рефереру, так и рефералу — в зависимости от настроек акций/сценариев в Sailplay.

Что вы получите после внедрения
  • Клиент видит свой реферальный код и делится им.
  • Новый клиент регистрируется или вводит код при покупке.
  • В профилях обоих клиентов фиксируются события/теги, а также (при настроенной механике) начисляются бонусы.

Как это выглядит в событиях и тегах

После успешной регистрации реферала в профиле реферала появляются:

  • Событие «Клиент был приглашен “Имя Фамилия (пригласившего)”»
  • Тег «Регистрация друга по приглашению»

В профиле реферера появляются:

  • Событие «Пригласил клиента “Имя Фамилия (приглашенного друга)”»
  • Тег «Клиент пригласил друга»

Когда реферал совершает покупку (и выполнены условия механики), в карточках могут отображаться события:

  • У реферера«Реферал совершил покупку»
  • У реферала«Подтверждения покупки рефералом»

Реферальный промокод

Программа использует уникальный реферальный промокод — каждый клиент, зарегистрированный в Sailplay, получает индивидуальный код.

Как получить промокод клиента

Получите данные клиента методом:

  • /api/v2/users/info/

В ответе промокод возвращается в поле:

  • referral_promocode

Как показывать промокод клиенту

В интерфейсе (ЛК/МП/сайт):

  • Выведите значение referral_promocode в профиле клиента.

В коммуникациях (email/SMS/push):

  • Подставляйте реферальный код в сообщениях через переменную (см. раздел «Переменные клиентов»).

Создание реферальной связи

Реферальную связь между реферером и рефералом можно создать двумя основными способами.

Важно

Реальная логика начислений (за регистрацию, за покупку, за подтверждение покупки и т. п.) задаётся на стороне Sailplay через акции/сценарии. Интеграция отвечает за корректную передачу реферального кода/идентификаторов.


Способ 1. Реферальный код при покупке

Реферал вводит промокод реферера в момент оформления заказа.

1) Расчёт корзины (calc)

На этапе чекаута отправьте запрос на расчёт акций:

  • /api/v2/marketing-actions/calc/

Передайте промокод реферера в параметре promocodes.

Пример (cURL):

curl --request POST \
--url https://api.sailplay.ru/api/v2/marketing-actions/calc/ \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data token=*** \
--data store_department_id=*** \
--data order_num=171 \
--data 'cart={"1":{"sku":"1","price":1000,"quantity":1},"2":{"sku":"2","price":300,"quantity":3}}' \
--data user_phone=70001234567 \
--data 'promocodes=["<referral_promocode>"]'

2) Создание покупки (new)

После оформления заказа создайте покупку:

  • /api/v2/purchases/new/

Параметры аналогичны (включая promocodes).

Пример (cURL):

curl --request POST \
--url https://api.sailplay.ru/api/v2/purchases/new/ \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data token=*** \
--data store_department_id=*** \
--data order_num=171 \
--data 'cart={"1":{"sku":"1","price":1000,"quantity":1},"2":{"sku":"2","price":300,"quantity":3}}' \
--data user_phone=70001234567 \
--data 'promocodes=["<referral_promocode>"]'
Важно

Реферальная связь при создании покупки образуется только если на системную группу Реферальные промокоды настроена акция в ЛК Sailplay и промокод применится в покупке.


Способ 2. Реферальная связь при регистрации клиента

Связь создаётся в момент регистрации реферала: вы создаёте клиента и одновременно передаёте данные реферера.

Используйте метод создания клиента:

  • /api/v2/users/add/

Передайте идентификаторы реферала (телефон/email/origin_user_id) и один из наборов данных реферера:

  • referrer_promocode — реферальный код реферера
    и/или
  • referrer_phone
  • referrer_email
  • referrer_origin_user_id

Такой подход удобен для «пригласительных ссылок», где вы заранее фиксируете промокод/идентификатор реферера и передаёте его при регистрации реферала.

Рекомендация

Если вы используете invite-link, старайтесь фиксировать реферальный промокод (самый удобный для передачи и хранения на фронтенде), либо один стабильный идентификатор реферера.


Отображение данных по реферальной программе через историю клиента

Чтобы увидеть реферальные события в истории, запросите информацию о клиенте методом:

  • /api/v2/users/info/

и передайте параметр:

  • history=1

Пример: история у реферала

В истории реферала может появиться запись вида:

{
"action": "manual_change_referrer",
"user_name": "Имя Фамилия",
"action_date": "2023-11-17T11:52:43.121",
"user_id": 123456789,
"name": "Покупка приглашенного"
}

Пример: история у реферера

В истории реферера может появиться запись вида:

{
"action": "manual_change_referred",
"user_name": "Имя Фамилия",
"action_date": "2023-11-17T11:52:43.121",
"user_id": 987654321,
"name": "За приглашение друга"
}

Пример: начисления бонусов (если настроено)

Если настроено начисление баллов рефереру/рефералу, в истории могут появляться записи:

У реферера:

{
"action": "referral",
"action_date": "2023-11-17T14:38:54.021",
"is_completed": true,
"points_delta": 1000,
"name": "За регистрацию по приглашению"
}

У реферала:

{
"action": "referred",
"action_date": "2023-11-17T14:38:54.109",
"is_completed": true,
"points_delta": 2000,
"name": "За приглашение друга"
}

Количество приглашённых друзей

Суммарная информация о количестве приглашённых клиентов хранится в системном теге «Кол-во приглашенных друзей».

Чтобы получить значение, запросите список тегов клиента методом:

  • /api/v2/users/tags/list/

количество приглашенных клиентом друзей будет в параметре fire_count

Пример (cURL):

curl --request GET \
--url https://api.sailplay.ru/api/v2/users/tags/list/ \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data token=*** \
--data store_department_id=*** \
--data user_phone=17784604 \
--data 'tags=["Кол-во приглашенных друзей"]' \