Интеграция через Webhook
Webhook — это универсальный способ отправки данных в любой сервис, который умеет их принимать. Это может быть CRM (amoCRM, Битрикс24, SberCRM), сервис автоматизации (Zapier, Make, n8n), Google Sheets или ваш собственный сервер.
Как это работает
Когда посетитель отправляет форму, Poptimizer делает HTTP-запрос на указанный вами URL с данными формы. Принимающий сервис обрабатывает эти данные: создаёт сделку, добавляет строку в таблицу, отправляет email — зависит от настроек на стороне сервиса.
Что понадобится
- URL для приёма данных (получите в сервисе, с которым интегрируетесь)
- 5 минут времени
Настройка интеграции
Шаг 1. Получите URL для приёма данных
Этот URL вы получаете в сервисе, с которым хотите интегрироваться:
- Zapier — создайте Zap с триггером «Webhooks by Zapier» → «Catch Hook»
- Make (Integromat) — создайте сценарий с модулем «Webhooks» → «Custom Webhook»
- n8n — добавьте ноду «Webhook»
- CRM — посмотрите в документации раздел «Входящие вебхуки» или «API»
Примеры URL:
https://hooks.zapier.com/hooks/catch/123456/abcdef/
https://hook.eu1.make.com/abcdefghijklmnop
https://your-n8n.com/webhook/form-data
Шаг 2. Создайте интеграцию в Poptimizer
- Откройте попап в редакторе
- Нажмите «Интеграции» в верхнем меню
- Нажмите «Добавить интеграцию»
- Выберите «Webhook»
- Заполните форму:
- Название — как интеграция будет отображаться (например, «amoCRM» или «Zapier → Google Sheets»)
- URL — адрес для отправки данных
- Метод — обычно POST (оставьте по умолчанию)
- Нажмите «Создать»
Шаг 3. Протестируйте
- Нажмите кнопку «Тест» рядом с интеграцией
- Проверьте, что данные дошли до сервиса
Формат отправляемых данных
По умолчанию данные отправляются в формате JSON:
{
"popupId": "abc123",
"timestamp": "2025-01-26T15:30:00.000Z",
"data": {
"email": "ivan@example.com",
"name": "Иван Иванов",
"phone": "+7 999 123-45-67"
}
}
Плоский формат
Некоторые сервисы лучше работают с «плоскими» данными (без вложенности). Выберите формат «Плоский» в настройках:
{
"popupId": "abc123",
"timestamp": "2025-01-26T15:30:00.000Z",
"email": "ivan@example.com",
"name": "Иван Иванов",
"phone": "+7 999 123-45-67"
}
Кастомный формат
Если сервис требует особую структуру данных, используйте кастомный шаблон:
{
"lead": {
"email": "{{data.email}}",
"name": "{{data.name}}",
"phone": "{{data.phone}}"
},
"source": "poptimizer",
"campaign": "landing_page"
}
Переменные в двойных фигурных скобках заменятся на реальные данные.
Дополнительные заголовки
Некоторые сервисы требуют авторизацию или специальные заголовки. Добавьте их в разделе «Заголовки»:
| Заголовок | Значение |
|-----------|----------|
| Authorization | Bearer your-api-token |
| X-API-Key | your-api-key |
| Content-Type | application/json |
Примечание: Заголовок
Content-Type: application/json добавляется автоматически.Превью данных
Перед созданием интеграции вы можете посмотреть, какие данные будут отправляться. Раздел «Превью полей» показывает все поля из вашей формы.
Эта информация поможет правильно настроить приём данных на стороне сервиса.
Примеры интеграций
amoCRM
- В amoCRM перейдите в Настройки → Интеграции → Webhooks
- Создайте входящий вебхук
- Скопируйте URL и вставьте в Poptimizer
- Настройте маппинг полей в amoCRM
Битрикс24
- Создайте входящий вебхук в разделе Приложения
- Выберите права доступа (CRM, контакты)
- Используйте полученный URL
Google Sheets (через Zapier)
- Создайте Zap: Webhooks → Google Sheets
- Используйте URL из Zapier
- Настройте маппинг колонок
Подробный пример с Zapier: Интеграция через Zapier
Отладка
Данные не приходят
- Проверьте URL — он должен быть полным (начинаться с
https://) - Нажмите «Тест» и проверьте статус
- Посмотрите логи на стороне принимающего сервиса
Ошибка авторизации (401, 403)
Проверьте заголовки авторизации. Возможно, нужно добавить API-ключ или токен.
Неправильный формат данных
Попробуйте другой формат (плоский или кастомный). Посмотрите документацию сервиса — какую структуру он ожидает.
Безопасность
- Токены и ключи в заголовках хранятся в зашифрованном виде
- Данные передаются только по HTTPS
- URL вебхука не виден посетителям сайта
Нужна помощь с настройкой конкретного сервиса? Напишите на js@asychev.ru — мы составим пошаговую инструкцию для вашего случая или добавим нативную интеграцию.
Следующие шаги:
- Пример: Zapier — пошаговая настройка автоматизации
- Настройка Telegram — мгновенные уведомления