Статьи об Интернет маркетинг
Meta/Facebook Pixel/Meta CAPI Facebook Ads

Настройка Meta Conversions API через Zapier серверный webhook

Настройка Meta Conversions API через Zapier серверный webhook

Приветствую, друзья!

Это видео идеально подойдет вам, если у вас стоит задача настроить Api конверсии для фейсбук рекламы используя сервис Zapier.

Я поделюсь с вами общей моделью настройки + чек-листом настройки + техническим заданием для разработчиков. Здесь разберем настройку Conversions API через серверный Webhook.

Это один из самых эффективных способов передачи основных конверсий таких как лид и покупка. Благодаря этому методу события минуя браузер и все соответствующие ограничения попадают в Meta с вашего сервера.

И по традиции перед началом видео представлюсь - меня зовут Макс Котенко, уже более 8 лет я занимаюсь web-аналитикой, интернет рекламой и в целом digital-маркетингом.

Консультирую предпринимателей, маркетологов, ppc-специалистов и начинающих веб-аналитиков, разрабатываю индивидуальные обучающие программы, внедряю и настраиваю различные маркетинговые и аналитических инструментов - Google Ads, Meta ads, GA-4, Meta-пиксель, прототипирую лендинги и интернет магазины. Детали и запись на консультацию на моем сайте.

✅ Чек-лист: Настройка Meta Conversion API через Webhook + Zapier

Что необходимо на старте:

Создать аккаунт в Zapier
Зарегистрироваться: https://zapier.com
Бизнес менеджер
Поток данных + Meta Pixel
Подключить Zaiper к Events Manager


✅ Чек-лист: Настройка Meta Conversion API через Webhook + Zapier
───────────────────────────────────────────────────────────────

🧩 ЭТАП 1: Подготовка и постановка задачи

☑️ Определить точку срабатывания события:

• После оформления заказа/заполнения формы
• Страница “Спасибо” (/thank-you) или серверный хук

☑️ Подготовить техническое задание для разработчика:

• Сбор email, phone, IP, user agent, fbp, fbc
• Хэширование email и телефона (SHA256)
• Генерация уникального event_id
• Формирование JSON согласно Meta API
• Отправка POST-запроса на Webhook Zapier

☑️ Проверка с разработчиком:

• Всё собирается и отправляется
• fbp/fbc получены из cookies
• Тестовый POST на мок-адрес отработал

───────────────────────────────────────────────────────────────

⚙️ ЭТАП 2: Создание и настройка Zapier

☑️ Создать новый Zap → Название: Purchase → Meta CAPI

☑️ Шаг Trigger:

• App: Webhooks by Zapier
• Event: Catch Hook
• Скопировать выданный URL
• Передать URL разработчику для отправки данных
• Нажать “Test Trigger” → Убедиться, что данные пришли

───────────────────────────────────────────────────────────────

🌐 ЭТАП 3: Получение доступа к Meta API

☑️ Перейти в Events Manager: https://www.facebook.com/events_manager2/list

☑️ Выбрать нужный Pixel → "Settings"

☑️ Скопировать:
• Pixel ID
• Access Token (сгенерировать, если нет)

───────────────────────────────────────────────────────────────

📡 ЭТАП 4: Настройка Action в Zapier (отправка в Meta)

☑️ Добавить Action:
• App: Webhooks by Zapier
• Event: POST

☑️ Настройки:
• URL: https://graph.facebook.com/v18.0/YOUR_PIXEL_ID/events?access_token=YOUR_ACCESS_TOKEN
• Payload Type: json
• Headers: Content-Type: application/json

☑️ Вставить JSON с переменными:
(см. предыдущий шаблон с {{event_name}}, {{event_time}} и т.д.)

☑️ Нажать “Test Action” → Проверить:
• В Events Manager → вкладка "Test Events"
• Появилось событие "Purchase"

───────────────────────────────────────────────────────────────

🚀 ЭТАП 5: Завершение и запуск

☑️ Нажать “Publish Zap”

☑️ Проверить событие на реальных заказах

☑️ Убедиться:
• Значения передаются корректно
• Событие “Purchase” видно в Meta

───────────────────────────────────────────────────────────────

🧠 ДОПОЛНИТЕЛЬНО (если используется Meta Pixel)

☑️ Добавить тот же event_id в клиентский Pixel:

<script>
  fbq('track', 'Purchase', {
    value: 149.99,
    currency: 'USD',
    content_ids: ['1001'],
    content_type: 'product'
  }, {
    eventID: 'purchase_9876_1714700000'
  });
</script>

───────────────────────────────────────────────────────────────

Техническое задание для разработчиков:
Интеграция события “Purchase” + Lead через Webhook → Zapier → Meta Conversions API

-- 🛠️ Техническое задание: Интеграция событий “Lead” и “Purchase”
-- через Webhook → Zapier → Meta Conversions API

-- ---------------------------------------------------------------
-- 🎯 Цель:
-- Настроить отправку событий Lead и Purchase с сайта в Zapier
-- через Webhook, с дальнейшей передачей в Meta Conversions API.
-- ---------------------------------------------------------------

-- 📍 Где должен срабатывать Webhook:
-- • Lead — при отправке формы или клике на кнопку.
-- • Purchase — после покупки, на странице /thank-you.

-- 📦 Что нужно реализовать:

-- 1. Собрать данные:
-- • Email клиента (SHA256-хеш)
-- • Время события (UNIX timestamp)
-- • Уникальный event_id
-- • action_source = "website"
-- • Для Purchase: value, currency

-- 2. Пример хеширования email (на сервере):

-- const crypto = require('crypto');
-- const hashEmail = crypto.createHash('sha256')
--                      .update(email.trim().toLowerCase())
--                      .digest('hex');

-- ----------------------------------------
-- 📩 Код события LEAD (Client → Zapier):
-- ----------------------------------------
<script>
function sendLeadEvent() {
  var email = "test@example.com"; // динамически подставляемый email
  var hashedEmail = "9d4e1e23bd5b727046a9e3b4b7db57bd"; // SHA256-хеш

  var params = new URLSearchParams({
    event_name: "Lead",
    event_time: Math.floor(Date.now() / 1000),
    event_id: "ev_" + Math.floor(Math.random() * 1000000000),
    em: hashedEmail,
    action_source: "website"
  });

  var img = new Image();
  img.src = "https://hooks.zapier.com/hooks/catch/15157433/2pv28qg/?" + params.toString();
}

sendLeadEvent();
</script>

-- ---------------------------------------------
-- 🛒 Код события PURCHASE (Client → Zapier):
-- ---------------------------------------------
<script>
function sendPurchaseEvent() {
  var data = {
    event_name: "Purchase",
    event_time: Math.floor(Date.now() / 1000),
    event_id: "ev_" + Math.floor(Math.random() * 1000000000),
    em: "973dfe463ec85785f5f95af5ba3906eedb2d931c24e69824bcb8676d6d4a0d2f",
    action_source: "website",
    value: 99.99,
    currency: "USD"
  };

  var url = "https://hooks.zapier.com/hooks/catch/15157433/2pvmoyy/?" +
            "event_name=" + encodeURIComponent(data.event_name) +
            "&event_time=" + data.event_time +
            "&event_id=" + data.event_id +
            "&em=" + data.em +
            "&action_source=" + data.action_source +
            "&value=" + data.value +
            "&currency=" + data.currency;

  var img = new Image();
  img.src = url;
}

sendPurchaseEvent();
</script>

-- ---------------------------------------------------------------
-- ✅ Примечание:
-- Email должен быть заранее захеширован через SHA256.
-- При серверной реализации можно также передавать fbp, fbc, user_agent, ip_address.
-- ---------------------------------------------------------------

Гайд: Настройка Zapier для отправки события Purchase в Meta Conversions API

⚙️ Гайд: Настройка Zapier для отправки события Purchase в Meta Conversions API
───────────────────────────────────────────────────────────────

🎯 Цель:
Настроить связку: Сайт → Webhook → Zapier → Meta (Facebook) Conversions API  
С поддержкой динамического `event_id` и дедупликацией событий между Pixel и API.

📋 Что понадобится:

• Аккаунт в Zapier → https://zapier.com  
• Pixel + Events Manager → https://www.facebook.com/events_manager2/list  
• Access Token + Pixel ID  
• Рабочий Webhook-запрос с сайта (по ТЗ выше)

───────────────────────────────────────────────────────────────

🟢 Шаг 1: Создание Zap

☑️ Перейти на https://zapier.com/app/zaps  
☑️ Нажать "Create Zap"  
☑️ Название: `Purchase → Meta CAPI`

───────────────────────────────────────────────────────────────

🟠 Шаг 2: Trigger — Webhooks by Zapier

☑️ App: Webhooks by Zapier  
☑️ Event: Catch Hook  
☑️ Нажать Continue  
☑️ Скопировать Custom Webhook URL (пример: `https://hooks.zapier.com/hooks/catch/0000000/abcde123/`)  
☑️ Передать URL разработчику  
☑️ Отправить тестовый заказ  
☑️ Нажать "Test Trigger" — убедиться, что данные пришли

───────────────────────────────────────────────────────────────

🌐 Шаг 3: Получение Access Token и Pixel ID

☑️ Перейти в Events Manager: https://www.facebook.com/events_manager2/list  
☑️ Выбрать нужный Pixel → "Settings"  
☑️ Скопировать:
• Pixel ID  
• Access Token (сгенерировать, если нет)

───────────────────────────────────────────────────────────────

📡 Шаг 4: Настройка Action (Webhooks POST в Meta)

☑️ App: Webhooks by Zapier  
☑️ Event: POST

🔧 Настройки:

• URL:
`https://graph.facebook.com/v18.0/YOUR_PIXEL_ID/events?access_token=YOUR_ACCESS_TOKEN`

• Payload Type: `json`  
• Headers: `Content-Type: application/json`

📦 В поле "Data" вставить JSON:

{
  "data": [
    {
      "event_name": "{{event_name}}",
      "event_time": {{event_time}},
      "event_id": "{{event_id}}",
      "action_source": "{{action_source}}",
      "event_source_url": "{{event_source_url}}",
      "user_data": {
        "em": {{user_data__em}},
        "ph": {{user_data__ph}},
        "client_ip_address": "{{user_data__client_ip_address}}",
        "client_user_agent": "{{user_data__client_user_agent}}",
        "fbc": "{{user_data__fbc}}",
        "fbp": "{{user_data__fbp}}"
      },
      "custom_data": {
        "currency": "{{custom_data__currency}}",
        "value": {{custom_data__value}},
        "content_ids": {{custom_data__content_ids}},
        "contents": {{custom_data__contents}},
        "content_type": "{{custom_data__content_type}}
      }
    }
  ]
}

☑️ Выбрать соответствующие поля из Catch Hook  
☑️ Нажать “Test Action”  
☑️ Перейти в Events Manager → вкладка “Test Events” → убедиться, что "Purchase" отображается

───────────────────────────────────────────────────────────────

🚀 Шаг 5: Завершение

☑️ Нажать “Publish Zap”  
☑️ Проверить работу на реальном заказе  
☑️ Проверить дедупликацию: `event_id` должен совпадать с клиентским Pixel

───────────────────────────────────────────────────────────────

🛠 Техническое объяснение: Триггеры Webhook в Zapier и HTTP-методы

🛠 Техническое объяснение: Триггеры Webhook в Zapier и HTTP-методы

═══════════════════════════════════════════════════════════════════

📌 Что такое HTTP-запросы:

• GET — используется для ЗАПРОСА данных с сервера (например, получить список товаров).
• POST — отправка ДАННЫХ на сервер (например, отправить форму, создать заказ).
• PUT — обновление существующих данных на сервере (например, изменить данные заказа).

───────────────────────────────────────────────────────────────────

⚙️ Обзор триггеров Zapier Webhook:

1. 🔹 Catch Hook (Тип: Instant)
───────────────────────────────
• Срабатывает, когда на Webhook URL приходит GET / POST / PUT-запрос.
• Парсит тело запроса в готовые переменные.
• Удобно для JSON и структурированных форм.

📌 Используется, когда:
- Нужны простые поля: email, phone, event_name и пр.
- Не требуется доступ к заголовкам, кукам и IP-адресу.

Пример запроса:
{
  "event_name": "Lead",
  "email": "test@example.com"
}

───────────────────────────────────────────────────────────────────

2. 🔹 Catch Raw Hook (Тип: Instant)
────────────────────────────────────
• Принимает GET / POST / PUT-запрос, но НЕ парсит тело.
• Возвращает сырые queryString, заголовки и всю "техническую" информацию.

📌 Используется, когда:
- Нужно получить user-agent, IP, cookies (_fbp / _fbc).
- Тело запроса нестандартное или поступает в query-параметрах.

Пример:
https://hooks.zapier.com/...?event_name=Lead&em=abc123...

───────────────────────────────────────────────────────────────────

3. 🔸 Retrieve Poll (Тип: Polling)
────────────────────────────────────
• НЕ webhook. Работает как периодический опрос по URL.
• Проверяет наличие новых данных каждые 5–15 минут.

📌 Используется, когда:
- Внешняя система не поддерживает webhook.
- Можно только получать новые записи через API.

Пример:
GET https://api.service.com/new-orders

───────────────────────────────────────────────────────────────────

📊 Таблица-сравнение:

| Триггер          | Реакция         | Парсинг тела | Доступ к заголовкам | Подходит для |
|------------------|------------------|---------------|----------------------|--------------|
| Catch Hook       | Мгновенно (Instant) | ✅ Да        | ❌ Нет               | Формы, JSON  |
| Catch Raw Hook   | Мгновенно (Instant) | ❌ Нет       | ✅ Да                | Метаданные   |
| Retrieve Poll    | По расписанию      | ✅ Да        | ❌ Нет               | Legacy API   |

Серверный GTM или Webhook через Zapier: что выбрать для Meta Conversions API

Meta Conversions API (CAPI) — это инструмент, позволяющий передавать события в рекламный кабинет Meta напрямую с сервера, минуя браузер. Такой подход повышает точность аналитики, помогает обойти блокировщики и обеспечивает стабильную передачу данных.
Но какой способ интеграции выбрать: серверный Google Tag Manager или Webhook через Zapier (или напрямую с backend)?
Разбираемся, в чём разница и в каких случаях лучше использовать каждый вариант.

Когда использовать серверный GTM

Серверный GTM — это промежуточный контейнер между клиентом и внешними платформами. Он принимает события, например, от GA4, и перенаправляет их в Meta, TikTok, Amplitude и другие сервисы.
Подходит, если:
  • Вы уже используете GA4 и хотите отправлять те же события в Meta без повторной настройки.
  • Нужно централизовать и фильтровать события перед отправкой.
  • Важно скрыть токены и ключи от пользователя (они остаются на сервере).
  • Требуется масштабируемое решение — отправка событий сразу в несколько платформ.

Недостатки:

  • Зависит от браузера. Если клиент не отправил событие (например, из-за инкогнито или блокировщика), сервер его не получит.
  • Более сложная настройка и тестирование.
  • Не заменяет настоящую серверную логику (например, события из CRM всё равно нужно отдавать отдельно).

Когда использовать Webhook через Zapier или backend

Этот вариант подойдёт, если:
  • Событие фиксируется на сервере — например, оформление заказа или лид в CRM.
  • Важна надёжность: сервер всегда передаст событие, вне зависимости от настроек браузера пользователя.
  • Нужна простота — в Zapier можно настроить отправку в Meta за считанные минуты.

Преимущества:

  • Не зависит от клиентской части и JavaScript.
  • Гарантирует передачу событий даже при строгих политиках приватности.
  • Не требует установки и настройки контейнеров.

Идеальное решение — комбинировать

Оптимальный подход — использовать оба инструмента:
  • Серверный GTM — для событий, которые рождаются в браузере (например, page_view, add_to_cart).
  • Webhook или сервер — для событий, фиксируемых в backend (например, purchase, lead).
Такой гибридный подход даёт максимум надёжности и позволяет максимально точно передавать пользовательские действия в Meta Ads.

Вывод

Серверный GTM — мощное решение для гибкой маршрутизации событий, особенно в связке с GA4.
Webhook (через Zapier или напрямую с сервера) — быстрый и устойчивый способ передавать ключевые события.
Комбинируйте оба подхода, и вы получите точную, масштабируемую и надёжную систему трекинга событий под требования Meta Conversions API.
Друзья, мы разобрали процесс настройки Api-конверсий с помощью Zaiper и серверного webhook.
Если видео было полезным - поставьте ему лайк и подпишитесь на канал. Здесь я публикую исключительно полезный практический контент, который существенно повышает ваши IT cкилы и улучшает онлайн проекты.

Если интересуют услуги по создание веб-сайтов, настройки веб аналитики, интернет рекламы и в целом диджитал-маркетингу - стратегия и оптимизация. Обращайтесь, детали и запись на консультацию на моем сайте.

Да прибудет с вами Богиня Удачи! До скорых встреч!

Услуги по настройке web-аналитики и интернет рекламы, а также индивидуальные консультации здесь:

https://mahadevmax.co.ua

Web-аналитика (GTM, GA-4)

Google Ads Facebook Ads

Комплексный digital-маркетинг

WEB-Разработка

https://mahadevmax.co.ua
2025-04-20 13:33