Интеграция с LavaTop

Давно хотели интегрировать сервис LavaTop с Автопилотом? В этой инструкции мы покажем как.

Важно! В инструкции не затрагиваются юридические аспекты работы с LavaTop и сложности с доступом, а рассматривается только возможность интеграции.

Итак приступим. Будем считать, что аккаунт у вас уже есть и продукт сделан. Если нет, то смотрим видео, где Андрей все показывает.

Предупреждение! Видео со всеми наворотами в настройке находится в конце статьи, актуальный конспект команд будет по нему, но рекомендуется смотреть все видео пошагово, чтобы перенять мастерство Андрея и научиться интегрироваться с любым сервисом.

План инструкции:

Актуальная документация по сервису Lavatop. Техподдержка сервиса Lavatop — здесь

Создание команды на заказ товара

Важно! В видео показывается команда на заказ конкретной подписки через %offer_id%. Рекомендуется смотреть видео в конце инструкции, ибо конспект по нему и для текста у вас должен быть отдельный емейл для регистрации.

Событие:

1) Написал сообщение с текстом равным: заказ

Естественно ключевик может быть любым.

Пример события
Пример события

2) LAVATOP использует емейл в качестве идентификатора при оплате, поэтому добавляем условие: «Есть Email» и в реакции на невыполнение пишем текст с просьбой его ввести (реакция на выполнение съест милю и сработает если у клиента нет емейла):

%first_name%, ваш Email не обнаружен. 
Введите его отдельным сообщением.
Email нужен для формирования ссылки на подписку в lavatop.
Пример условия
Пример условия
ВАЖНО! В момент когда пользователь напишет Email в ответное сообщение, действия начнут выполняться автоматически (создастся заказ в Justclick). Это особенность сервиса, подробности тут.

3) Для реакции только если пользователь пишет в сообщения сообщества добавляем условие: числовая переменная %is_conv% равна 0

Условие что пишет в личку сообщества
Условие что пишет в личку сообщества

Действия:

1) Для того, чтобы получить ключ Lavatop для запроса мы сначала сохраняем его в ресурс под именем: ключ Lavatop, а потом задаем временную переменную
%xapikey% со значением:

{get}ключ Lavatop|name|body|%event_club_id%|equal{/get}
Получение ключа API Lavatop (скрывать от посторонних глаз)
Получение ключа API Lavatop (скрывать от посторонних глаз)

2) Чтобы сформировать корректную ссылку для подписки задаем временную переменную%offerid% со значением:

1d1a3fa0-41b0-4ed7-9c3f-21efdf363150

Где вместо 1d1a3fa0-41b0-4ed7-9c3f-21efdf363150 — вы вставляете свой offer_id для вашего продукта.

Пример offerid продукта, как его узнать смотрите в видео выше
Пример offerid продукта, как его узнать смотрите в видео выше

3) Для формирования ссылки на подписку добавляем действие «Отправить GET-POST запрос» методом JSON POST на адрес:

https://gate.lava.top/api/v3/invoice
Важно: дополнительные примеры есть в документации Lavatop

Параметры передаваемые в запросе:

  • email— e-mail покупателя,
  • offerId— offerId продукта,
  • currency— RUB (валюта платежа),

и заголовком:

  • X-Api-Key — %xapikey%,
Пример запроса
Пример запроса

3) Оционально, чтобы достать ошибку из запроса задаем временную переменную %error% со значением:

%response.error%
Достаем ошибку от Lavatop
Достаем ошибку от Lavatop

4) Для формирования ссылки на оплату задаем временную переменную %paymenturl% со значением:

%response.paymentUrl%
Достаем ссылку на оплату
Достаем ссылку на оплату

5) Во временной переменной %text_ok% задаем текст при успешно сформированной ссылке на оплату:

%first_name%, вот ваша ссылка на оплату
%paymenturl%
Сообщение при успешно полученной ссылке
Сообщение при успешно полученной ссылке

6) Аналогично временной переменной %text_error% задаем текст при неуспешно сформированной ссылке на оплату:

%first_name%, напишите в диалог, что-то пошло не так
Сообщение пользователю емсли ссылку получить не удается
Сообщение пользователю емсли ссылку получить не удается

7) Чтобы отправить пользователю текст в записимости от ответа LavaTop задаем условная переменная %text%

или

  • %text_error%

То есть, формируем текст клиенту в зависимости от условий.

Формируем текст клиенту
Формируем текст клиенту

8) Отправляем сообщение клиенту в ответ действием «Отправить сообщение в VK» с переменной %text%

Отправляем сообщение клиенту
Отправляем сообщение клиенту

9) Опционально. Для того, чтобы уведомить админа о проблемах добавляем действие: «Прервать/продолжить выполнение команды» с переключателем продолжено, если переменная %text% содержит фразу напишите в диалог

Продолжаем команду только если ссылка не сформирована
Продолжаем команду только если ссылка не сформирована

10) Отправляем сообщение админу (переключатель в ответ → администраторам) действием «Отправить сообщение в VK» с текстом:

Клиент: %vk_link%
Диалог:https://vk.ru/gim%club_id%/convo/%vk_id%?entrypoint=list_all
Пример сообщения админу
Пример сообщения админу

Разбор вебхука

Рекомендуется смотреть для понимания сути интеграции.

В данной части видео Андрей показывает как разобрать вебхук с помощью сайта https://jsonformatter.org/

Особенности сервиса Lavatop

Реакция на оплату

События:

1) Для отлова событий «оплачен заказ» создаем событие
«Упомянут в GET запросе» (входящий запрос).

В дополнительные параметры вписываем &to=json&email_param=buyer.email , сохраняем команду и нажимаем на кнопку «скопировать»

Пример события
Пример события
ВАЖНО! Настройки ниже будут полноценно работать ТОЛЬКО вместе с действиями из этой же статьи! (дальше). Вебхук должен быть один. Смотрите видео «Особенности Lavatop»

2) Для реакции только на успешный платеж добавляем условие:

Условие для реакции только на успешную оплату
Условие для реакции только на успешную оплату

3) Опционально: если нужно реагировать только на оплату определенного продукта добавляем условие:

  • переменная %request.input.eventType% содержит название продукта (в примере TEST PAYMENT AUTOPILOT)
Условие для реакции только на определенный продукт
Условие для реакции только на определенный продукт

Предуждение! Если вам надо реагировать на оплату нескольких продуктов, то вы копируете эту же команду, не меняя блоки, и заменяете только нужные условия / действия. ВЕБХУК не менять копией

Действия:

1) Для того, чтобы сохранить название продукта задаем временную переменную %vk_product_title% со значением:

%request.input.product.title%
Созраняем название продукта
Созраняем название продукта

2) Дальнейшие действия могут быть любыми нужными вам. Например, добавить в список. Для примера отправим сообщение клиенту об успешной оплате действием «Отправить сообщение в VK» c тестом:

Поздравляю, %first_name%! 
Ваша оплата за продукт %vk_product_title% успешно получена.
Продукт находится тут: ссылка на материал
Если у вас будут проблемы с авторизацией (или после авторизации продукт будет недоступен), пишите в этот диалог.
Пример сообщения об оплате
Пример сообщения об оплате

Создание команды на покупку товара c наворотами

Именно эта версия в конспекте выше.

Как видим для Автопилота нет сложностей. Творческих взлётов и успешного внедрения!

Вернуться на главную страницу инструкций
64 views·1 share