Skip to main content

GetCourse - Как загружать клиентов через Webhook

Для проектов, где воронки в Телеграм построены на стандартном конструкторе геткурса данные о пользователях можно передавать GET запросами прямо из GetCource.

ВАЖНО! Для того чтобы вы могли в GC создать процесс и передать TG_ID на вкбхук, вам сначала нужно научить GC записывать TG_ID каждого пользователя в доп. поле.

Геткурс по умолчанию этого делать НЕ умеет.

Поэтому нужно ему помочь. Благо это вопрос 15 минут. 

Первый вариант. Воронка ТГ собрана в GC на процессах. Если у вас воронка в телеграм собрана на геткурсе, вы можете вытащить tg_id из самого геткурса. 

Недавно появилась официальная возможность подтянуть в доп поля все user_id и username. Это официальное расширение от Геткурс, которое стоит всего 500р/ месяц. 

Так же есть кастомные скрипты, которые на нашей памяти внедряют самостоятельно некоторые тех.спецы, за которые нет необходимости платить. 

Но я бы рекомендовал не изобретать велосипед и использовать родное решение. 

IMG_9957.jpeg

2. Сайт упакован в MiniApp . Если вы используете наше более продвинутое решение с проксированием ссылок через miniapp, то действовать нужно по другому.

  • При настройках прокси - ссылки (миниапа), вас нужно указать передачу сервисных UTM. Метка telegram_id по умолчанию включается при активации галочки, tg_id динамически подставится в соответствующую ютм метку. Так же в метках вы можете передавать и другие сервисные параметры типа username / ФИО / наличие премиума, если вам для чего либо нужна эта информация в геткурс. Вы можете изменить название метки что либо написав в поле вместо telegram_id. Если название метки вас устраивает - просто ничего не трогайте:) 

    IMG_1652.jpeg
  • Далее Telegram_ID из UTM метки вы просто записываете в доп. поле клиента.  Для 99% технических специалистов это максимально простая задача.  В большинстве школ уже стоит скрипт, который записывает UTM в доп. поля клиента. Вам просто нужно в скрипт на вашем лендинге добавить доп метку. В самой форме добавить скрытое доп. поле, в которое скрипт и будет записывать значение UTM метки telegram_id и передавать в доп поле карточки клиента. 

Отмечу, что способ с передачей tg_id через MiniApp самый надежный, так как в таком случае за 100% оставивших заявку фиксируется tg_id в геткурсе.  Первый способ приводит к потере от 20 до 40% tg_id, так как просто далеко не все проваливаются в тг бота на странице благодарности после регистрации на бесплатник. 

  • Теперь, когда вы решили вопрос с TG_ID, происходит я стандартная отправка GET запроса в VORTEX.

    Отправка и пример корректного GET запроса из GC в VORTEX.
  • 1. Получение ссылки для отправки GET-запроса в сервисе

    Описание изображения

    Ссылку для отправки вебхуков можно получить прямо в сервисе, нажав на кнопку копирования. Для того чтобы отправить по ней данные о продажи с помощью GET-запроса нужен сервис, откуда его отправлять.

Напомним, чтобы получить вебхук, нужно создать группу конверсий на вкладке «продажи» и выбрать Вебхук в качестве источника. 

Как это сделать описано здесь - https://docs.vortex.pro/sections/72-okno-upravlenie-konversiiami/page/kak-zagruzat-klientov-v-servis-algoritm


2.Создание связки в сервисе и копирование ключа для запросов.

Подробная инструкция как отправлять запросы содержится в документации getcourse по ссылке:https://getcourse.ru/blog/276215
и производится в следующем окне:

Описание изображения

Чтобы передать данные о продажеах в/ этом случзаеказах, необходимо сдоздбавить в ссылку-запрос, в которойую будут сгенериспользроватьсял VORTEX  следующие переменные:
В нём передаётся продажа от клиента со следующими параметрамиы:

telegram_id - телеграм айди покупателя (важное поле). Всегда лучше отправлять именно ID. 
username - юзернейм покупателя (важное поле)
(!) В теле запроса обязательно должен присутствовать либо telegram_id , либо username. Если отправляете tg_id - username не отправляйте. 
purchase_price = цена покупки (руб) (опциональное поле)
purchase_name - название покупки (опциональное поле)

Заготовка ссылки для передачи GET запроса с данными о КОНВЕРСИИ из процесса GetCource, в которой передаётся tg_id, цена и название конверсии:

https://app.vortex.pro/api/sales/auto-collectors/webhook/add-sale?key=API_KEY&telegram_id={object.user.TGID}&purchase_name={object.positions}&purchase_price={object.payed_money}

Обратите внимание:

1. Ссылка для запроса с нужным ключом уже копируется прямо из нашего сервиса. Её менять не нужно. API_KEY - это тот самый ключ, что сгенерировал Vortex. 
2. &telegram_id={object.user.TGID}
Вместо TGID вам нужно вставить название переменной, которую вы задали в доп поле для клиентов для получения tg id для клиентов. Это обязательная часть запроса, которая необходима для добавления конверсии в сервис.
3. &purchase_name={object.positions}
positions - это стандартное поле в ГК, в котором содержится название вашей конверсии. Это необязательная часть запроса. Если вы не планируете передавать название конверсии, то удалите её из запроса
4. &purchase_price={object.cost_money_value}
cost_money_value - это стандартное поле в ГК, в котором содержится сумма оплаченная клиентов в конверсии. Это необязательная часть запроса. Если вы не планируете передавать сумму конверсии, то удалите её из запроса.

Как посмотреть информацию об успешности отправки вебхука на сервис:

Можно выбрать переменную, в которую будет записываться ответ от сервиса на попытку отправить вебхук. После этого посмотреть на то, что записано в этой переменной.

Если вебхук отправлен успешно, то в поле будет следующая информация:
{"detail":"Successfully added sale"}

Видео-объяснение с примером:

Процесс по пользователям:

https://app.vortex.pro/api/sales/auto-collectors/webhook/add-sale?key=1d80de0716ef4dfd86e18b8dc216444f&telegram_id={object.chat_ID}&username={object.Telegram}&purchase_price=123&purchase_name=тест


Процесс по заказам:


https://app.vortex.pro/api/sales/auto-collectors/webhook/add-sale?key=1d80de0716ef4dfd86e18b8dc216444f&telegram_id={object.user.chat_ID}&username={object.user.Telegram}&purchase_price={object.cost_money_value}&purchase_name={object.positions}