Интеграция с ЮКасса
В данной статье будет произведена интеграция с ЮКассой. Весь процесс показан на видео выше.
Важно! Если вы технический специалист и у вас нет необходимых вкладок, то попросите заказчика выдать вам доступ разработчика. Всю необходимую информацию по чекам уточняйте в Юкассе.
Для тестирования можно воспользоваться вашим тестовым магазином и данными тестовых карт.
Настройки интеграции в Юкассе
В Юкассе в разделе «Операции» копируем ShopID. В примере 934500
Именно его мы вставляем в настройки ЮКассы в первое поле.

В разделе «Интеграции» → «Ключ API» выпускаем ключ. В примере test_3xpZ9RxgoqZDi9sh33dN7HG3
именно его мы вставляем в настройки ЮКассы во второе поле.
Важно! Если вы вдруг скромпрометировали ключ, например, на видео, всегда можно удалить его и перевыпустить снова.
В разделе «Интеграции» → «HTTP-уведомления» вставляем вебхук из Автопилота, ставим переключатель и сохраняем

Важно! При перевыпуске ключей старые перестают работать. Будьте внимательны.
Настройки интеграции в Автопилоте
Когда секретный ключ успешно найден, можно приступать к настройке в Автопилоте (рекомендую делать в отдельной вкладке, а вкладку с Кассой при этом не закрывать).
В АП в списке подключенных сообществ найдите нужное и откройте его «Настройки» нажав на соответствующую белую кнопку в карточке сообщества.
В настройках на первой вкладке Интеграции найдите раздел ЮКасса и там:
- вставьте ID магазина (1) в первое поле
- и секретный ключ (2) вставьте во второе поле
- ссылку на вебхук (3) из третьего поля вставьте в ЮКассе в соответствующее поле (см. видео выше). Подробнее про вебхуки тут.

Важно!
Поля 4-8 нужны для чеков. В подсказках есть типы и пояснения, но перед интеграцией обязательно проконсультруйтесь со специалистами из ЮКассы.
Также значения находятся в этой инструкции. Как я говорил в видео, обязательно запрашивайте емейл и телефон, это нужно по закону.
Дальше создайте событие с типом «Оплатил / сделал перевод» (добавьте его в любую команду) и проведите тестовый платеж, чтобы проверить работу интеграции. Рекомендую для начала делать универсальную настройку, как показано ниже.
Команда: «Заказ товара»
Важно!
1) ЮКасса не работает со страницами пожертвований, только со счетами.
2) В примере указана универсальная настройка.
3) Для корректного формирования ссылки обязательно запрашивайте номер телефона у пользователя или email, иначе Автопилот получит от ЮКассы неконкретную ссылку.
Событие:
1) Событие: «Написал сообщение» с товаром:

2) Добавляем условие: «Есть Email» и в реакции на невыполнение пишем текст с просьбой его ввести:
%first_name%, для завершения заказа введите пожалуйста свой email в ответном сообщении.

Действия:
1) Чтобы получить статистику, мы можем сделать страницу товара и потом в разделе «Финансы и счёта» смотреть конверсию. Для этого во временную переменную %page_id%
записываем функцию {page}
{page}%vk_product_title%{/page}
которая найдет страницу товара, либо создаст новую. Подробнее про функцию можно прочитать тут.

2) Для выставления счета добавляем действие: «Создать счет в Автопилоте»
с параметрами по умолчанию. Если Вы планируете после истечения срока жизни ссылки выставлять полную стоимость, то в поле Цена после завершения скидки
вставьте переменную или укажите полную стоимость цифрами
(в примере этого нет). Только не забудьте привязать нужную страницу. Для этого действие переключаем в универсальный режим, нажав на человечка и в поле «Привязан к странице» вставляем переменную %page%
Важно! Если в действии стоит переключатель: «Найден или создан», то Автопилот будет сначала искать старые заказы с аналогичным названием или номером счета. Будьте внимательны. Если нужно обновлять информацию о счёте, то ставьте переключатель: «Обновлен или создан»

3) Действие: «Отправить сообщение» клиенту с текстом и переменной ссылка на оплату %payment_link%
:
%first_name%, отличное решение! Создал Вам заказ товара «%vk_product_title%»
Оплатить и получить доступ можно тут:
%payment_link%

4) Опционально: действием: «Метки диалогов» выставляем метку клиенту «Новый заказ»

Далее вы можете настроить цепочку сообщений, отменить заказ, если клиент не купил. Как это сделать было показано тут.
Команда: «Оплата товара»
Важно! В примере указана настройка на примере одного конкретного товара. Если вам нужна универсальная настройка, можете использовать ресурсы.
Событие:
1) Событие: «Оплатил / сделал перевод» с названием (тут указывается название товара) и ценой (тут указывается стоимость товара):

Действия:
1) Действие: «Отправить сообщение» клиенту с текстом:
Поздравляю, %first_name%!
Ваша оплата успешно получена. Спасибо за интерес к нашему продукту

2) Действием: «Метки диалогов» выставляем метку клиенту с названием курса: «Лётная школа»

3) Действием: «Метки диалогов» отвязываем метку клиенту с названием: «Новый заказ», т.к. заказ уже куплен.

Дальнейшие действия могут быть любыми, нужными вам. Добавление в список клиентов действием: «Добавить в список игроков», одобрение заявку в закрытое сообщество действием: «Одобрить заявку»
4) Опционально (для действия «Одобрить заявку») проверяем ответ сервера, т.к. ключ используемый для этого действия имеет свои ограничения и может слетать. Мы проверяем ответ сервера %response%
, если он равен 1
, то все хорошо, иначе сообщаем о проблемах сотрудникам. Для этого используем действие: «Прервать выполнение команды» с переключателем: прервано если числовая переменная: %response.response%
= 1

5) Действие: «Отправить сообщение» сотрудникам с текстом:
Клиент: %vk_link%
Дата: {date} %F %X{/date}
Проверь скрипт. Ответ сервера: %response%

Тестируем.


Все работает. Теперь попробуем сформировать заказ без email.


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

- Для подключения этих вебхуков, скопируйте эту ссылку (на компе достаточно просто кликнуть по ней) и вставьте в ЮКасса в разделе «Настройки» в соответствующее поле.
- Дальше просто используйте событие «Оплатил / Сделал перевод», где прописывайте нужное название курса и сумму перевода. Вы можете либо одно такое событие со стандартными параметрами добавить в универсальную команду (продвинутый путь). Либо под каждый продукт создавать отдельную команду и отдельное событие (простой путь).
- Настоятельно рекомендуем добавлять в команды с этим событием условие:
числовая переменная%vk_id%
больше0
,
чтобы сервис не присылал вам сообщения об ошибках, если вдруг кто-то купит не через Автопилот.