WISE TOOLS / АНАЛИТИКА / GA4

Конструктор покупки для GA4

Соберите JSON события purchase для передачи офлайн-заказа через GA4 Measurement Protocol. Проверьте сумму товаров, ID транзакции и состав заказа до внедрения на своём сервере.

Обновлено 12 октября 2026 г.Работает локально в браузере
К рабочей зоне

РАБОЧАЯ ЗОНА

Соберите событие purchase

Введите данные заказа. Результат формируется в браузере и не отправляется в Google.

Данные заказа

Все поля остаются в памяти этой вкладки. Конструктор ничего не отправляет и не сохраняет.

Дополнительные поля

Событие purchase

Заполните заказ или откройте пример, затем соберите JSON. При изменении любого поля предыдущий результат очищается.

Где проверять

На своём сервере используйте POST https://www.google-analytics.com/debug/mp/collect с measurement_id и серверным api_secret в параметрах URL. Для отладки добавьте в тело validation_behavior: "ENFORCE_RECOMMENDATIONS". Смотрите validationMessages: тестовый endpoint не записывает событие в отчёты.

После проверки используйте /mp/collect через сервер. HTTP 2xx подтверждает получение запроса, но не обработку события. Не отправляйте API secret из браузера и не публикуйте JSON с реальным Client ID.

ЛОГИКА И ОГРАНИЧЕНИЯ

Как пользоваться результатом

01

Подготовьте связь с заказом

Возьмите Measurement ID веб-потока GA4 и настоящий Client ID, полученный существующим GA4-тегом на сайте. Задайте стабильный transaction_id из вашей системы заказов. Конструктор не запрашивает API secret: он остаётся на вашем сервере.

Для каждой позиции укажите ID или название, цену за единицу и количество. Пример заполнен вымышленными данными; перед внедрением замените его своими данными и проверьте правомерность передачи идентификаторов.

02

Проверьте сумму и формат

Поле value рассчитывается как сумма price × quantity по всем позициям. Tax и shipping выводятся отдельными параметрами, поэтому не прибавляются к value. Цена вводится уже с учётом скидки, если скидка применена.

После изменения любого поля JSON сбрасывается. Скопируйте или скачайте результат только после повторной сборки. Объём тела ограничен правилом Measurement Protocol: менее 130 кБ.

03

Отправляйте только со своего сервера

Сервер отправляет HTTPS POST в /mp/collect с measurement_id и api_secret в query-параметрах. Перед внедрением вызовите /debug/mp/collect с validation_behavior=ENFORCE_RECOMMENDATIONS в теле и изучите validationMessages. Debug endpoint не добавляет покупку в отчёты.

Код ответа 2xx подтверждает получение HTTP-запроса, но не то, что GA4 принял и обработал событие. Отдельно проверьте реальную обработку и защиту от повторной отправки того же заказа. Конструктор не знает историю ваших транзакций и не может установить факт дедупликации в GA4.

FAQ

Короткие ответы перед запуском

Почему здесь нельзя ввести API secret и сразу отправить событие?

API secret должен оставаться на сервере. Браузерная форма только формирует JSON и не делает сетевых запросов к Google.

Можно ли использовать email вместо Client ID?

Нет. Нужен Client ID из существующего GA4-тега. Контактные данные и другие персональные сведения не вставляйте в поля события.

Гарантирует ли transaction_id отсутствие дублей?

Стабильный ID помогает GA4 различать покупки, но конструктор не проверяет прежние отправки. В своей интеграции ведите журнал отправленных заказов и проверяйте повторы.

Почему сумма заказа не включает доставку и налог?

По спецификации события purchase значение value — сумма price × quantity для товаров. Tax и shipping передаются отдельными полями.

ИСТОЧНИКИ

На чём собран материал

Официальные справки и практические разборы, на которые опирается материал. Условия применения и ограничения указаны рядом с рекомендациями.

Google AnalyticsRecommended events: purchase

Параметры purchase, состав items и правило расчёта value.

Google AnalyticsMeasurement Protocol reference

Формат HTTPS-запроса, предел тела и значение HTTP 2xx.

Google AnalyticsValidate events

Проверка через debug endpoint и validationMessages.

Google AnalyticsMeasure ecommerce

Покупки и лимит 200 позиций в items.