Что такое постбэк и технология server-to-server
Передача данных по схеме server to server помогает учитывать конверсии, когда ограничения браузера и сбои скриптов мешают отслеживать заявки и покупки. Но ошибки в настройке приводят к потерям событий или дублям. Статья
Передача данных по схеме server to server помогает учитывать конверсии, когда ограничения браузера и сбои скриптов мешают отслеживать заявки и покупки. Но ошибки в настройке приводят к потерям событий или дублям.

Статья объяснит, как работает постбэк, как система связывает конверсию с кликом и какие проверки помогают избежать расхождений в отчетах.
Что такое S2S и как с ним связан постбэк
Рекламный клик, заявка на сайте и оплата в CRM часто попадают в разные системы. Передача данных по схеме server to server связывает эти события без участия браузера на этапе отправки конверсии, но точность учета зависит от идентификаторов, правил обработки и настроек интеграции.
S2S расшифровывается как server-to-server и обозначает прямой обмен данными между серверами. Например, сервер магазина сообщает системе аналитики, что покупатель оплатил заказ. Браузер пользователя не отправляет это уведомление и может к тому моменту уже закрыться.
В контексте рекламного трекинга постбэк представляет собой серверное уведомление о целевом действии или изменении его статуса. Отправитель обращается к заранее настроенному адресу получателя и передает данные, которые тот умеет обрабатывать. В зависимости от интеграции запрос содержит идентификатор клика, тип события, сумму и другие поля.
Эти понятия связаны, но не равнозначны. Серверы обмениваются данными и в платежных сервисах, и в системах управления запасами, а уведомления о конверсиях решают более узкую задачу: передают сведения для учета и атрибуции рекламы.
Где используют серверный трекинг и какие задачи он решает
Партнерские сети используют серверные уведомления, чтобы учитывать действия пользователей и рассчитывать вознаграждение за них. Интернет-магазины передают подтвержденные покупки, сервисы подписки сообщают о первом платеже или продлении. Отделы продаж отправляют из CRM сведения о квалификации заявки и закрытии сделки.
Особую пользу такой обмен приносит там, где результат появляется не сразу. Человек оставляет заявку сегодня, а менеджер подтверждает продажу через неделю. Серверная интеграция передает итог сделки независимо от того, вернулся ли клиент на сайт.
Для рекламной оптимизации качество события важнее самого факта доставки. Если система получает каждую заявку как покупку, алгоритм учится на неверных данных. Поэтому бизнес сначала определяет, какое действие считает результатом, и только затем настраивает его отправку.
Как данные о конверсии проходят от рекламодателя до рекламной системы

Обычная цепочка выглядит так: рекламная площадка приводит посетителя, сайт сохраняет связь с источником, а сервер рекламодателя фиксирует результат. После этого уведомление попадает в партнерскую сеть, трекер или напрямую в рекламную систему. Конкретный маршрут зависит от участников интеграции, а не от обязательного для всех стандарта.
Кто отправляет и принимает постбэк
Отправителем выступает система, которая знает о целевом действии: сервер магазина, CRM или партнерская сеть. Получателем становится система, которой нужны эти сведения для аналитики, расчетов или оптимизации рекламы. Один участник может выполнять обе роли.
Например, партнерская сеть принимает подтверждение продажи от рекламодателя, рассчитывает вознаграждение и отправляет уведомление в трекер партнера. Каждая передача требует своей настройки и проверки.
Как Click ID связывает клик с целевым действием
Click ID служит идентификатором конкретного перехода. Трекер создает его при обработке клика, передает на сайт в параметре ссылки, а сайт сохраняет значение рядом с заявкой или заказом. Когда сервер сообщает о покупке, он возвращает тот же идентификатор.
У рекламной площадки и трекера могут быть разные идентификаторы одного перехода. Для дальнейшей отправки конверсии интеграция сохраняет связь между ними. Потеря этой связи мешает площадке сопоставить полученное событие со своим кликом.
Сам идентификатор не описывает пользователя и не заменяет правила атрибуции. Он помогает найти переход, но именно настройки системы определяют, получит ли этот переход конверсию с учетом срока давности и других условий.
Какие события и изменения статусов можно передавать
Сервер может сообщать о регистрации, заявке, оплате, продлении подписки или возврате. Тип события отвечает на вопрос «Что произошло?», а статус показывает состояние конкретной операции: например, заявка ожидает проверки, подтверждена или отклонена.
Эту разницу важно закрепить в схеме данных. Подтверждение существующей заявки не должно автоматически создавать вторую заявку. А повторная покупка, наоборот, представляет собой самостоятельную операцию и требует отдельного идентификатора.
S2S, пиксель и редирект: чем отличаются способы отслеживания

Браузерный пиксель отправляет данные со страницы пользователя. Обычно разработчик реализует его через JavaScript или загрузку специального изображения. Такой способ удобен для регистрации просмотров и действий на сайте, но зависит от выполнения кода, сетевых условий и ограничений браузера.
Редирект выполняет другую задачу: промежуточный сервер фиксирует переход и перенаправляет посетителя на целевую страницу. Он помогает учитывать клики и добавлять параметры к ссылке, но сам по себе не подтверждает последующую покупку. Поэтому редирект и серверная передача конверсий часто работают вместе, а не заменяют друг друга.
Преимущества и ограничения серверного обмена
Главное преимущество S2S состоит в независимости отправки от открытой страницы. Сервер может передать оплату после банковского подтверждения, а CRM может сообщить о продаже после разговора менеджера с клиентом. Отправитель также получает возможность хранить очередь событий и повторять неудачные запросы.
Однако серверный канал не восстанавливает потерянные идентификаторы и не устраняет ошибки в исходных данных. Если сайт не сохранил связь заказа с рекламным переходом, успешная доставка уведомления эту связь не создаст.
Кроме того, команда берет на себя поддержку интеграции, контроль очередей и обработку сбоев. Серверный обмен также не отменяет требования к согласию пользователей и обработке персональных данных. Компания определяет допустимый состав передаваемых сведений и учитывает правила получателя.
Когда стоит сочетать S2S с браузерным трекингом
Гибридная схема полезна, когда браузер собирает контекст посещения, а сервер подтверждает бизнес-результат. Например, код на странице регистрирует просмотр товара, а платежная система сообщает об успешной оплате.
Если оба канала передают одну покупку, получателю нужен согласованный идентификатор события для устранения дублей. Некоторые платформы поддерживают такую схему через специальное поле, но его название и правила обработки различаются. Без согласованной дедупликации два сообщения рискуют превратиться в две покупки в отчете.
Из чего состоит Postback URL
Адрес приема обычно содержит домен, путь обработчика и параметры запроса. Однако не всякая серверная интеграция передает данные именно в URL: API может принимать POST-запросы с JSON в теле. Само название механизма не задает HTTP-метод.
Пример адреса: параметры, макросы и их значения
Условный шаблон для GET-запроса выглядит так:
https://tracker.example/conversion?click_id={click_id}&transaction_id={transaction_id}&status={status}&payout={payout}¤cy={currency}
Домен в примере служит иллюстрацией, а не рабочим адресом. Имена параметров слева от знака = определяет получатель, тогда как значения в фигурных скобках обозначают макросы отправителя. Конкретная платформа может использовать другой синтаксис.
Перед отправкой система заменяет макросы фактическими значениями. Например, вместо {click_id} подставляет c8f42, а вместо {payout} подставляет 850.00. Если запрос содержит буквальный текст {click_id}, подстановка не сработала и получатель не сможет найти нужный переход по этому значению.
Передача статуса, суммы, валюты и дополнительных данных
Одинаковые названия полей не гарантируют одинаковый смысл. Параметр amount может обозначать стоимость заказа, доход рекламодателя или вознаграждение партнера.
Участники заранее согласуют значение каждого поля, формат числа и единицы измерения. Для валюты получатель может ожидать трехбуквенный код, например RUB или USD. Для статуса он может принимать строго заданные значения, а не произвольные подписи. Интеграция должна преобразовывать внутренние статусы отправителя в значения, которые понимает принимающая сторона.
Дополнительные параметры помогают различать офферы, товары, типы действий и источники трафика. Однако лишние данные усложняют поддержку и повышают риск утечки. Адрес приема не стоит превращать в полную копию карточки клиента.
Правила кодирования значений в URL
Символы &, =, # и некоторые другие имеют специальное значение в адресе. Например, значение sale&bonus без кодирования нарушит структуру строки запроса, а sale%26bonus сохранит амперсанд внутри одного параметра. Разработчик кодирует каждое значение отдельно с помощью стандартной библиотеки работы с URL.
Кодирование всего готового адреса или повторное кодирование уже обработанного значения может испортить запрос. Для текстовых полей стороны также согласуют кодировку, обычно UTF-8.
Как настроить S2S-постбек

Настройка начинается с контракта данных: какие события передает отправитель, какие поля требует получатель и как обе стороны обрабатывают обновления. Этот договор важнее самого адреса. Рабочий URL не спасает интеграцию, если одна сторона отправляет выручку, а другая учитывает ее как партнерское вознаграждение.
Подготовить адрес приема в трекере или собственной системе
В трекере специалист выбирает источник данных и получает адрес обработчика по правилам продукта. В собственной системе разработчик создает endpoint, проверяет обязательные поля и задает понятные ответы на успешные и ошибочные запросы. Получатель должен сохранять принятые события так, чтобы временный сбой дальнейшей обработки не приводил к потере данных.
Для нагруженных интеграций эту задачу часто решает очередь. Отдельные тестовые настройки помогают проверять изменения без влияния на рабочие отчеты.
Настроить передачу Click ID и отправку событий у рекламодателя или в партнерской программе
Сначала команда проверяет путь идентификатора от ссылки до записи о заказе. Значение должно пережить переходы между страницами, отправку формы и передачу заявки в CRM.
При переходе на другой домен интеграция также должна сохранять эту связь в рамках выбранной схемы. Затем специалист задает условие отправки: создание заявки, подтверждение заказа или успешный платеж.
Источник события должен знать реальный результат операции. Например, платежное уведомление дает более надежное основание для учета оплаты, чем открытие страницы благодарности.
Подключить передачу конверсий в рекламную систему при необходимости
Рекламная платформа может принимать конверсии через отдельный API со своей авторизацией и форматом данных. Поэтому пересылка исходного запроса без изменений подходит не для каждой интеграции.
Отправитель сопоставляет названия событий, идентификаторы, время и денежные значения с требованиями площадки. На этом этапе команда проверяет, какую цель использует рекламная кампания. Подтвержденная оплата и первичная заявка должны попадать в соответствующие события, иначе отчетность и обучение алгоритма будут отражать разные бизнес-результаты.
Провести тестовую конверсию и проверить результат
Тест должен проходить весь маршрут, а не только проверять ответ обработчика. Ручной запрос с произвольным идентификатором показывает доступность адреса, но не доказывает, что система связывает реальные покупки с рекламой.
- Выполните тестовый переход и зафиксируйте идентификаторы клика.
- Создайте заявку или заказ и проверьте сохраненные значения.
- Доведите операцию до нужного статуса и найдите исходящий запрос.
- Сопоставьте полученное событие с записью в трекере и, если требуется, в рекламной системе.
- Повторите отправку того же события и проверьте защиту от дублей.
Дополнительный тест должен проверить отклонение заявки или возврат оплаты, если интеграция передает такие изменения. Тогда команда увидит не только успешную доставку, но и корректность полного жизненного цикла операции.
Как обеспечить безопасность и надежную доставку событий

Публичный адрес приема без проверки отправителя создает риск поддельных конверсий. А отсутствие механизма повторной доставки превращает кратковременный сетевой сбой в потерянное событие. Безопасность и отказоустойчивость требуют отдельных правил, даже если тестовая передача уже работает.
Проверка подлинности запросов и защита данных
HTTPS защищает данные при передаче, но сам по себе не подтверждает право отправителя регистрировать конверсию. Для проверки подлинности интеграции используют секретные токены, подпись запроса или другие механизмы, которые поддерживают обе стороны.
- HMAC-подпись позволяет проверить, что подписанные данные не изменились и отправитель знает общий секрет.
- Если схема поддерживает метку времени и уникальный идентификатор запроса, получатель может дополнительно ограничивать повторное использование перехваченных сообщений.
- Список разрешенных IP-адресов служит еще одним барьером, но требует актуализации при изменении инфраструктуры.
Секреты в URL могут попасть в журналы веб-сервера и системы мониторинга. Если протокол допускает авторизацию через заголовки, команда использует этот вариант и маскирует чувствительные значения в логах. Отправитель также исключает персональные данные, которые не нужны для задачи.
HTTP-коды ответа и повторная отправка при сбоях
Код 200 обычно означает успешную обработку запроса, а 202 сообщает о принятии в обработку без подтверждения конечного результата. Но точную трактовку задает контракт API. Некоторые сервисы возвращают описание ошибки в теле ответа даже при HTTP-коде успеха, поэтому отправитель проверяет оба уровня.
Коды 400, 401 и 403 часто указывают на проблемы формата, авторизации или прав доступа. Повтор неизмененного запроса не исправит такую ошибку.
При 429 отправитель учитывает ограничения частоты и заголовок Retry-After, если получатель его возвращает; при сетевых сбоях и временных ошибках 5xx применяет согласованную политику повторов. Интервал между попытками обычно увеличивают, добавляя небольшую случайную задержку, чтобы множество запросов не пришло одновременно.
При тайм-ауте отправитель не знает, сохранил ли получатель событие до разрыва связи. Поэтому надежная повторная доставка требует защиты от дублей.
Обработка дублей и обновлений статуса конверсии
Идемпотентность означает, что повтор одного события не меняет результат после первой успешной обработки. Для этого получатель хранит уникальный ключ события и распознает повторные запросы. Один Click ID для такой задачи не подходит: после одного перехода человек может совершить несколько разных действий. Идентификатор операции помогает найти заказ, а идентификатор события или версия обновления помогает различать изменения этого заказа.
Например, подтверждение и возврат относятся к одной покупке, но несут разный смысл. Получатель должен сохранить обновление, а не отбросить его как обычный дубль. События могут приходить не по порядку. Версия записи или согласованные правила перехода между статусами защищают от ситуации, когда запоздалое сообщение возвращает подтвержденную покупку в состояние ожидания.
Как найти и исправить ошибки в работе постбэка
Диагностика начинается с одной конкретной операции, а не с общей разницы в отчетах. Специалист выбирает заказ, записывает его идентификатор и проверяет каждый участок маршрута. Такой подход показывает точное место сбоя: формирование события, отправку, прием, сопоставление или отображение.
Какие данные искать в логах отправителя и получателя
Полезный журнал содержит время события и попытки отправки, идентификаторы операции и клика, номер попытки, HTTP-код и тело ответа. Получатель со своей стороны фиксирует результат проверки, сохранения и дальнейшей обработки.
Чувствительные данные и секреты обе стороны маскируют. Единый идентификатор запроса помогает сопоставить записи в разных системах. Часовой пояс и формат времени тоже должны быть понятны: без них одна и та же отправка может выглядеть как два разных события.
Почему уведомление не приходит или не связывается с кликом
Если журнал отправителя не содержит попытки, специалист проверяет условие срабатывания и наличие обязательных данных. Если попытка есть, но получатель ее не видит, проверка переходит к адресу, DNS, TLS-соединению, доступности сервера и сетевым ограничениям.
Когда получатель принял сообщение, но не нашел клик, основное внимание требует идентификатор. Частые причины: неподставленный макрос, неверное имя поля, потеря значения при передаче в CRM или отправка в другой аккаунт. Отдельно команда проверяет срок хранения кликов и ограничения атрибуции.
Конверсия приходит с нулевой суммой или неверным статусом
Нулевая сумма не всегда означает техническую ошибку: регистрация может не иметь денежной ценности, а вознаграждение может появляться только после подтверждения. Сначала специалист сравнивает исходную запись с отправленным запросом.
Затем проверяет, какое именно денежное поле использует получатель. Если отправитель передал корректную сумму, причину стоит искать в формате числа, единицах измерения, валюте и правилах обработки. Аналогичный подход работает со статусами: внутренняя метка paid не обязана совпадать со значением, которое ожидает принимающая система.
Число конверсий расходится с отчетами рекламной системы
Расхождение не доказывает потерю данных. Трекер может группировать операции по дате конверсии, а рекламная система может относить их к дате рекламного взаимодействия.
Кроме того, площадки используют собственные окна атрибуции, фильтры и задержки обработки. Перед сравнением команда приводит отчеты к одинаковым условиям:
- выбирает одно событие и одинаковый набор статусов;
- согласует период, часовой пояс и принцип выбора даты;
- учитывает окна атрибуции и правила подсчета повторных действий;
- проверяет дубли, возвраты и задержки поступления данных.
После этого специалист сопоставляет конкретные идентификаторы операций. Проверка отдельных записей позволяет отделить техническую потерю от различий в методике учета.
Частые вопросы о S2S-трекинге
Что такое постбэк и отличается ли он от постбека?
В рекламном трекинге эти варианты написания обозначают один и тот же механизм серверных уведомлений. Разница в написании не указывает на отдельный протокол или способ передачи данных.
Можно ли настроить постбек без стороннего трекера?
Да, собственный сервер может сохранять идентификаторы и передавать события прямо в систему получателя. В таком случае команда самостоятельно реализует сопоставление данных, авторизацию, повторы, защиту от дублей и журналирование. Готовый трекер снимает часть этих задач, но не является обязательным посредником. Собственная интеграция оправдана, если компания готова поддерживать ее после запуска, а не только написать первый обработчик.
Нужен ли S2S, если конверсии уже видны в рекламном кабинете?
Само наличие цифр в кабинете не показывает, как система получила данные и какой результат они отражают. Если площадка уже получает подтвержденные продажи по надежному серверному каналу, дополнительная отправка без отдельной задачи создаст риск дублей.
Если текущий учет опирается только на браузер, серверная интеграция поможет передавать оплаты, результаты обработки заявок и другие события за пределами страницы. Решение зависит от пробелов в существующей схеме, а не от стремления подключить еще один способ измерения.
Можно ли использовать один Postback URL для нескольких офферов?
Да, если обработчик различает офферы по параметрам, сохраненной связи с кликом или другим однозначным признакам. Он также должен учитывать различия в типах событий, статусах, валютах и правилах расчета сумм. Разные партнерские системы могут требовать разные шаблоны макросов даже для одного адреса приема. Поэтому единый endpoint упрощает инфраструктуру, но не отменяет настройку и тестирование каждой интеграции.
Схема server to server подходит магазинам и партнерским проектам, которые связывают рекламу с продажами. Начните с выбора целевого события и проверки сохранения идентификатора клика. При выборе трекера или собственной интеграции оцените совместимость с рекламными площадками, доступность логов и ресурсы на поддержку. Перед запуском проверьте путь конверсии, повторную доставку, защиту от дублей и обновление статусов.
С какими сложностями серверного трекинга столкнулись вы? Поделитесь в комментариях.
Комментарии
Комментариев пока нет — будьте первым.