# Capi No Code Setup

> Server-side события (Meta CAPI, GTM, офлайн-конверсии) БЕЗ кода — Zapier/n8n/Albato + CRM. Триггеры: «настрой CAPI». НЕ аукцион → meta-ads-launch-ru.

- Skill: `jhamidun/capi-no-code-setup-2` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add jhamidun/capi-no-code-setup-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/jhamidun/capi-no-code-setup-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: JHamidun (https://skillmd.com/u/jhamidun)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/jhamidun/capi-no-code-setup-2

---


# CAPI / Server-Side Tracking без кода (RU)

Пошаговый гайд по настройке **серверной передачи событий** (Conversions API, server-side tracking) **без программирования** — через no-code инструменты. Это «глубокий» технический скилл: `meta-ads-launch-ru` и `google-ads-pro-ru` дают обзор Pixel/CAPI, а здесь — реализация от первого события до проверки матчинга.

> **⚠️ Meta признана экстремистской в РФ.** Раздел Meta CAPI — для международных/СНГ-проектов. Для оплаты и доступа к Meta из РФ — `meta-ads-launch-ru`.

## Когда использовать

- Настроить server-side передачу событий для рекламного кабинета **без разработчика**.
- Передать в Meta/Google **глубокие события из CRM**: квал-лид, звонок, оплату, LTV.
- Загрузить **офлайн-конверсии** обратно в кабинет (Яндекс по Client ID, Meta по External ID).
- Победить потерю событий: блокировщики рекламы, iOS 14.5+ ATT, удаление cookies, длинный цикл сделки.
- Настроить **дедупликацию** браузерного пикселя и серверного CAPI (один Event ID).
- Собрать пайплайн `CRM → no-code → Conversions API` на Zapier / Make / n8n / Albato.

**НЕ использовать для:** аукционной логики и стратегий ставок (→ `meta-ads-launch-ru`, `google-ads-pro-ru`); сводных дашбордов и сквозной отчётности (→ `performance-analytics`); кастомной разработки серверного эндпоинта или собственного server-side GTM-контейнера на хостинге (→ `senior-devops`); генерации трафика и креативов.

## Зачем вообще server-side / CAPI

Браузерный пиксель видит событие **только в браузере пользователя**. Этого больше недостаточно — четыре причины:

| Проблема | Что теряется | Что чинит server-side |
|----------|--------------|------------------------|
| **Блокировщики рекламы / ITP** | uBlock, Brave, Safari ITP режут пиксель → события не отбиваются | Сервер отправляет событие напрямую в API платформы, минуя браузер |
| **iOS 14.5+ ATT** | После App Tracking Transparency часть iOS-юзеров не трекается пикселем | CAPI передаёт серверные сигналы, не зависящие от разрешения в браузере |
| **Длинный цикл сделки (B2B)** | Продажа через недели после клика → пиксель её уже не свяжет с рекламой | CRM отдаёт событие «оплата» в CAPI с привязкой к исходному клику (FBC/Client ID) |
| **События вне веб-части** | Звонок, оплата по счёту, статус сделки в CRM — пиксель их физически не видит | Сервер/CRM передаёт их как серверное событие |

**Главный принцип:** Meta/Google должны понимать **весь путь лида**, а не только клик. Чем больше и качественнее серверных событий → тем лучше алгоритм оптимизируется на нужных людей и тем точнее lookalike. Практический консенсус по server-side GTM для Google: **«Больше данных = лучше почва»** — подключать однозначно, особенно если есть события вне веба (purchase). Даже потери после iOS 14.5 — **не повод не строить, а наоборот**.

**Дедупликация — не опция, а обязательное условие.** При правильной настройке одно и то же событие приходит и от пикселя (браузер), и от CAPI (сервер). Без общего идентификатора оно задвоится. Решение — единый **Event ID** (см. `references/meta-capi.md`).

## Платформы server-side — что куда

| Платформа | Механизм server-side | Что передаём |
|-----------|----------------------|--------------|
| **Meta (FB/IG)** | **Conversions API (CAPI)** | лид, квалификация, звонки, продажи, LTV — серверные события |
| **Google Ads** | **server-side GTM** + **Enhanced Conversions** + офлайн-конверсии | конверсии с хешированными данными первой стороны, импорт из CRM |
| **Яндекс.Директ** | **офлайн-конверсии** в Метрику по Client ID | квал-лид/оплата из CRM → Метрика → Директ (см. `yandex-direct-pro-ru`) |
| **TikTok / LinkedIn / X** | Events API / CAPI — **тот же паттерн** | те же серверные события (out of scope деталей, паттерн идентичен Meta) |

> Детали Meta — `references/meta-capi.md`. Атрибуция и офлайн-конверсии — `references/attribution.md`.

## Workflow внедрения (порядок — от точного к широкому)

Порядок важен: **не наоборот**. Сначала чистый матчинг, потом масштаб.

```
1. Пиксель/тег на сайте          → события на сайте в реальном времени
2. Стандартные события           → PageView, ViewContent, Lead, Purchase (Meta их «понимает»)
3. CAPI / server-side            → серверные события из CRM с 7 параметрами матчинга
4. Test Events                   → проверка в реальном времени (нет дублей, веб+сервер совпадают)
5. Дедупликация                  → единый Event ID для browser + server
6. Офлайн-конверсии              → квал-лид/оплата/LTV обратно в кабинет (External ID / Client ID)
7. Проверка матчинга            → Event Match Quality в Events Manager, сверка с CRM
```

## No-code реализация — 4 платформы

Логика одинаковая на всех: **триггер в CRM → нормализация полей → отправка в Conversions API → проверка в Test Events**. Различается только инструмент. Подробные сценарии с примерами полей — `references/no-code-platforms.md`.

```
Триггер в CRM (новый лид / смена статуса на «квалифицирован» / оплата)
   → нормализация и хеширование полей (email, phone, country, zip, External ID, FBC, FBP)
   → отправка в Conversions API (event_name + event_time + event_id + user_data)
   → проверка в Events Manager → Test Events
```

| Инструмент | Когда выбрать | Особенность |
|------------|---------------|-------------|
| **Zapier** | быстрый старт, облако, готовые коннекторы CRM ↔ Facebook CAPI | проще всего; платный по объёму задач; зарубежная оплата |
| **Make (Integromat)** | визуальные сценарии, webhook → Meta/Google, гибкий маппинг | дешевле Zapier на объёме; модуль HTTP/JSON для любого API |
| **n8n** | **self-hosted**, полный контроль, 0 за объём | свой сервер, данные не уходят наружу; нужен JSON workflow. Cross-link: скилл `n8n` |
| **Albato** | **российская альтернатива** Zapier — для клиентов с РФ-юрлицом (санкции) | RU-биллинг, RU-коннекторы CRM (your CRM, Битрикс24) |

**CRM-нативные интеграции (без отдельного no-code слоя):**

| CRM | Что есть из коробки |
|-----|---------------------|
| **HubSpot** | нативный коннектор к Meta CAPI — события из воронки уходят на сервер Meta |
| **your CRM** | интеграции/виджеты для передачи статусов сделки в CAPI |
| **Битрикс24** | вебхуки на смену стадии → no-code слой (n8n/Make/Albato) → CAPI; настройка вебхуков — в REST-документации Битрикс24 |

> Если у CRM есть нативный коннектор — он проще no-code слоя. Если логика нестандартная (нормализация полей, фильтр по стадии, обогащение FBC/FBP) — берём Zapier/Make/n8n/Albato.

## Meta CAPI — суть (детали в reference)

**7 параметров матчинга** — чем больше совпадений, тем точнее Meta «склеит» серверное событие с конкретным пользователем:

`email` · `телефон` · `страна` · `zip` · `External ID` · `FBC` (Facebook Click ID) · `FBP` (Facebook Browser ID)

- `email`, `телефон`, `страна`, `zip`, `External ID` — **хешируются SHA-256** перед отправкой (PII не уходит в открытом виде).
- `FBC` / `FBP` — берутся из cookies `_fbc` / `_fbp`, связывают серверное событие с конкретным кликом и сессией. **Не хешируются.**
- **Event ID** (`event_id`) — одинаковый для браузерного и серверного события одного действия → Meta схлопывает дубли.

Полный разбор (хеширование, нормализация, Event ID, Test Events, Event Match Quality) — `references/meta-capi.md`.

## Офлайн-конверсии (full-funnel)

Без полной воронки нельзя принимать решения: по CPL самая дешёвая кампания «выигрывает», но дешёвые лиды могут почти не покупать, а дорогие — давать кратно больше денег. Чтобы алгоритм это знал, **возвращаем в кабинет глубокие события из CRM**:

- **Meta:** серверное событие `Purchase` / кастомная конверсия (квал-лид, оплата) через CAPI с привязкой по **External ID** + хешированным email/телефон.
- **Google:** **офлайн-конверсии** (импорт из CRM) + **Enhanced Conversions** (хешированные данные первой стороны).
- **Яндекс:** **офлайн-конверсии** в Метрику по **Client ID** → Директ оптимизируется на квал-лиды/оплаты (см. `yandex-direct-pro-ru`).

Цель — оптимизировать не на дешёвый лид, а на **когортную выручку**. Детали и связка Client ID/External ID — `references/attribution.md`.

## Атрибуция — без неё цифры не сходятся

Server-side даёт данные, но **их нужно правильно атрибутировать**, иначе AI/аналитика бесполезны («без качественных данных AI бесполезен»).

- **Модели:** Last Click / First Click / **Multi-Touch (MTA)**. Короткий цикл → Last Click / Last Non-Direct Click; длинный (B2B) → MTA. Для исключения брендового шума — **Last Non-Brand Click**.
- **Единый часовой пояс** для всех источников — иначе расхождения в отчётах.
- **Порог атрибуции:** доля атрибутированных данных **< 95% → доп. проверки**.
- **Unknown source:** **1-10% — норма**, **20-40% — проблема** (растёт неатрибутированная выручка → падает доверие к аналитике).
- Регулярная **сверка**: рекламные кабинеты ↔ CRM, контроль числа атрибутированных лидов и платящих.

Полностью — `references/attribution.md`.

## Чек-лист внедрения (короткий)

```
[ ] Пиксель/тег стоит на сайте, события на сайте отбиваются
[ ] Стандартные события настроены (PageView, ViewContent, Lead, Purchase)
[ ] Выбран no-code инструмент (Zapier / Make / n8n / Albato) или нативный коннектор CRM
[ ] Триггер CRM настроен (новый лид / смена статуса / оплата)
[ ] Поля нормализованы и хешируются (email/phone/country/zip/External ID SHA-256)
[ ] FBC/FBP прокидываются из cookies (_fbc/_fbp)
[ ] CAPI/server-side отправляет event_name + event_time + event_id + user_data
[ ] Test Events: события приходят ровно ОДИН раз, нет дублей, поток стабильный
[ ] Дедупликация: один Event ID для browser + server (не задваивается)
[ ] Офлайн-конверсии настроены (квал-лид/оплата/LTV → кабинет по External ID / Client ID)
[ ] Event Match Quality в Events Manager — приемлемое (проверка матчинга)
[ ] Единый часовой пояс во всех источниках
[ ] Атрибуция: доля >95%, Unknown в норме (1-10%), сверка с CRM настроена
```

## Worked example — типовой продукт с self-hosted стеком

Типовой полный стек: CRM в Postgres + **self-hosted n8n** + платёжка (ЮKassa) + воронка подписка/лид → продукт. Пайплайн:

```
Оплата в платёжке / смена стадии в CRM
   → webhook → n8n (self-hosted)
   → нормализация: hash(email), hash(phone), country=RU, External ID = user_id,
      FBC/FBP из сохранённых при заходе cookies
   → Meta CAPI (event=Purchase, value=сумма, event_id=<order_id>)
   + Google Enhanced Conversions (хешированный email)
   → Test Events: проверить, что Purchase пришёл 1 раз и совпал с браузерным
```

n8n предпочтителен: 0 за объём, данные не уходят в зарубежное облако (важно для PII по 152-ФЗ). Готовый workflow — скилл `n8n`.

## Структура скилла

| Файл | Когда читать |
|------|--------------|
| `SKILL.md` (этот) | обзор, зачем server-side, workflow, 4 платформы, чек-лист |
| `references/meta-capi.md` | Meta CAPI детально: 7 параметров, SHA-256 хеширование, нормализация, Event ID, Test Events, Event Match Quality |
| `references/no-code-platforms.md` | Zapier / Make / n8n / Albato пошагово + примеры сценариев и маппинга полей + нативные CRM |
| `references/attribution.md` | модели атрибуции, офлайн-конверсии, External ID / Client ID, единый часовой пояс, пороги Unknown |

## Связь с другими скиллами

- **`meta-ads-launch-ru`** — запуск Meta Ads, обзор Pixel+CAPI (этот скилл углубляет его `references/pixel-capi.md`).
- **`google-ads-pro-ru`** — Google Ads, Enhanced Conversions, server-side GTM в контексте аукциона.
- **`yandex-direct-pro-ru`** — офлайн-конверсии в Метрику по Client ID (детали загрузки — там).
- **`n8n`** — готовые self-hosted workflow для CAPI-пайплайна.
- **Вебхуки твоей CRM** (Битрикс24/amoCRM/HubSpot) — смена стадии сделки как триггер для server-side; настраиваются в документации самой CRM, готового навыка в паке нет.
- **`performance-analytics`** / `full-funnel-analytics-ru` — сводная отчётность и дашборды поверх собранных данных.
- **API Яндекс.Метрики** — загрузка офлайн-конверсий (offline_conversions) напрямую через API; готового навыка в паке нет.

> **Сквозная аналитика под ключ:** существуют платные b2b SaaS сквозной аналитики (от ~$1k/мес) с учётом всех сессий и многопоследовательности — платная альтернатива ручному пайплайну. Дорого; для большинства проектов достаточно no-code + Google Sheets прототипа.

