Интеграция через Google Analytics API

Интеграция — процесс, в рамках которого вы настраиваете отправку данных о целевых действиях на вашем сайте в систему Admitad.

Целевое действие — это покупка, регистрация, заполненная заявка или другое необходимое вам действие, выполненное пользователем, которого веб-мастер Admitad привлек на ваш сайт.

Общая информация: особенности и рекомендации

  • Приступить к интеграции можно только, если в вашей программе:
    • уже сформирована трекинг-ссылка в разделе «Общие настройки»;
    • уже добавлено целевое действие и настроен тариф для него в разделе «Действия».

Если у вас нет менеджера, то вам нужно самостоятельно сформировать трекинг-ссылку (инструкция), а также добавить хотя бы одно действие и хотя бы один тариф (инструкция).
Если у вас есть личный менеджер, он выполнит все эти настройки за вас.

  • Интеграция — обязательный этап для продолжения работы. Без нее невозможно запустить партнерскую программу в Admitad.

  • Чтобы ускорить интеграцию, рекомендуем привлечь к ее выполнению вашего собственного технического специалиста и передать ему эту инструкцию.

Когда интеграция будет завершена, все данные о целевых действиях — дата действия, ID заказа и его сумма и пр. — будут отправляться в Admitad автоматически.

Как работает интеграция через Google Analytics API

Google Analytics API (далее — GA API) — это программный интерфейс сервиса Google Analytics, который позволяет использовать информацию и функционал Google Analytics с помощью HTTP-запросов.

Как это работает

1. Google Analytics собирает информацию о действиях пользователей с помощью «счетчика» (JavaScript кода), который устанавливается на страницы сайта.
Когда пользователь совершает целевое действие, код выполняется и фиксирует информацию о действии, затем отправляет пакеты данных в Google Analytics.

2. Далее Admitad отправляет GET-запрос к Google Analytics API и получает номер заказа, сумму заказа и другие данные о целевом действии.

3. Затем Admitad загружает эти данные, и в результате полученная информация отображается в разделе «Статистика» в аккаунте Admitad.

Обратите внимание, что «счетчик» Google Analytics уязвим для блокировки антирекламными и другими расширениями. Admitad не осуществляет техническую поддержку Google Analytics и не несет ответственность за программы, которые пострадали в результате использования Google Analytics для сбора информации о целевых действиях.
Поэтому рекомендуем использовать стандартную интеграцию через трекинг-код или другие доступные методы интеграции. Подробнее

 

Как выполнить интеграцию через Google Analytics API

Чтобы интегрировать свой сайт через Google Analytics API, выполните следующие шаги (инструкция по каждому из них представлена ниже):

  • настройте отслеживание электронной торговли в Google Analytics;

  • в Google Analytics предоставьте специалисту Admitad доступ к заказам, атрибутированным Admitad;

  • настройте параметры интеграции в Google Analytics и
    разместите предоставленный код с необходимыми значениями параметров на страницах своего сайта;

  • протестируйте настроенную интеграцию;

  • опционально — настройте передачу данных по персональным промокодам;

  • опционально — настройте резервную передачу данных по целевым действиям.

Если в вашей программе больше 1 действия и тарифа, сообщите об этом специалисту Admitad. В этом случае вам будет предоставлена дополнительная информация по настройке интеграции.

Если кроме веб-версии сайта у вас есть мобильная версия сайта и/или форма быстрого заказа или заказа в 1 клик, то для них также нужно настроить интеграцию с Admitad. Подробнее

 

Как настроить отслеживание электронной торговли

Выполните настройку отслеживания электронной торговли для вашего сайта с помощью инструкций Google Analytics:

Как предоставить доступ к заказам Admitad в Google Analytics

Предоставьте служебному аккаунту Admitad доступ к заказам, атрибутированным Admitad, в Google Analytics.

1. Войдите в личный кабинет Google Analytics и в левом нижнем левом углу нажмите «Администратор».

2. На вкладке «Администратор» в колонке «Представление» выберите сайт со статистикой по действиям и нажмите «Настройки представления».

RU_Google-Analytics-API_7.png


3. Сообщите идентификатор представления специалисту Admitad.

RU_Google-Analytics-API_8.png


4. Вернитесь в раздел «Администратор».
Если у вас несколько сайтов, в колонке «Представление» в выпадающем списке выберите сайт с нужной статистикой и нажмите «Управление доступом к представлению».

RU_Google-Analytics-API_9.png


5. В правом верхнем углу нажмите RU_Google-Analytics-API_13.png и выберите «Добавить пользователей».

6. В блоке «Адреса электронной почты» введите email служебного аккаунта Admitad Partner Network, который указан в сопроводительном письме по интеграции.

В блоке «Роли и ограничения в отношении данных, назначенные напрямую» выберите «Читатель» и нажмите «Добавить».

Ru.png


Готово. Вы предоставили служебному аккаунту Admitad доступ к заказам, атрибутированным Admitad.

Теперь Admitad может получать информацию о действиях с помощью GET-запроса к Google Analytics API.

Как настроить параметры интеграции и установить код отслеживания на сайте

Данный этап настройки интеграции актуален только при работе по модели Last Paid Click.

1. В личном кабинете Google Analytics в левом нижнем левом углу нажмите «Администратор».

2. На вкладке «Администратор» в колонке «Ресурс» нажмите «Пользовательские определения» → «Специальные параметры».

RU_Google-Analytics-API_3.png

3. На открывшейся странице нажмите «+Специальный параметр» и добавьте следующие параметры:

Название специального параметра

Область действия

suid

Hit

user_id

Hit

hit_id

Hit

session_id

Сеанс

client_id

Сеанс

action_code

Hit

tariff_code

Hit

 

RU_Google-Analytics-API_4.png


4. Вернитесь на вкладку «Администратор». В колонке «Ресурс» нажмите «Отслеживание → «Код отслеживания».

RU_Google-Analytics-API_5.png

5. Скопируйте свой идентификатор отслеживания. Его нужно будет добавить в код, представленный в следующем пункте.

RU_Google-Analytics-API_6.png


6. Скопируйте код, представленный ниже, и добавьте его на все страницы своего сайта, кроме страницы «Спасибо за покупку».

В коде должны передаваться все необходимые значения переменных.

  • <!-- Global site tag (gtag.js) - Google Analytics -->
        <script async="" src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXXX-X"></script>
        // вместо UA-XXXXXXXXX-X укажите ваш идентификатор отслеживания Google Analytics
    
        <!-- Google Analytics custom dimensions for Admitad -->
        <script>
      function clientid() {
          var match = document.cookie.match('(?:^|;)\\s*_ga=([^;]*)');
          var raw = (match) ? decodeURIComponent(match[1]) : null;
          if (raw) {
              match = raw.match(/(\d+\.\d+)$/);
          }
          var gacid = (match) ? match[1] : null;
          if (gacid) {
              return gacid;
          }
      }
    
      function getTimeStamp() {
          var now = new Date();
          var tzo = -now.getTimezoneOffset();
          var dif = tzo >= 0 ? '+' : '-';
          var pad = function(num) {
              var norm = Math.abs(Math.floor(num));
              return (norm < 10 ? '0' : '') + norm;
          };
          return now.getFullYear() +
              '-' + pad(now.getMonth() + 1) +
              '-' + pad(now.getDate()) +
              'T' + pad(now.getHours()) +
              ':' + pad(now.getMinutes()) +
              ':' + pad(now.getSeconds()) +
              '.' + pad(now.getMilliseconds()) +
              dif + pad(tzo / 60) +
              ':' + pad(tzo % 60);
      }
    
      function getSessionId() {
          return new Date().getTime() +
              '.' + Math.random().toString(36).substring(5);
      }
    
      function uuidv4() {
        return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function(c) {return (c ^ (window.crypto || window.msCrypto).getRandomValues(new Uint8Array(1))[0] & 15 >> c /   4).toString(16)});
      }
    
    
      function referrer() {
          if (document.referrer === "") {
              return "direct none"
          } else return document.referrer
      }
    
      window.dataLayer = window.dataLayer || [];
    
      function gtag() {
          dataLayer.push(arguments);
      }
      gtag('js', new Date());
    
      gtag('config', 'UA-XXXXXXXXX-X'); // вместо UA-XXXXXXXXX-X здесь и в следующей строке укажите ваш идентификатор отслеживания Google Analytics
      gtag('config', 'UA-XXXXXXXXX-X', {
          'custom_map': {
              'dimensionX': 'suid',
              'dimensionX': 'client_id',
              'dimensionX': 'user_id',
              'dimensionX': 'session_id',
              'dimensionX': 'hit_id'
          } // для dimensionX вместо Х вставьте соответствующие индексы параметров (колонка «Индекс»)
      });
      gtag('event', 'apv', {
          'suid': uuidv4(),
          'client_id': clientid(),
          'user_id': 'id пользователя в вашей системе', // если ID неизвестен, нужно передавать пустую строку. Подробнее о настройках User ID
          'session_id': getSessionId(),
          'hit_id': getTimeStamp(),
      });
    </script>

7. Скопируйте код, представленный ниже, и добавьте его на страницу «Спасибо за покупку».

  • <!-- Global site tag (gtag.js) - Google Analytics -->
        <script async="" src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXXX-X"></script>
        // вместо UA-XXXXXXXXX-X укажите ваш идентификатор отслеживания Google Analytics
    
        <!-- Google Analytics Ecommerce with custom dimensions for Admitad -->
        <script> 
    window.dataLayer = window.dataLayer || [];
    
    function gtag() {
        dataLayer.push(arguments);
    }
    gtag('js', new Date());
    
    gtag('config', 'UA-XXXXXXXXX-X'); // вместо UA-XXXXXXXXX-X здесь и в следующей строке укажите ваш идентификатор отслеживания Google Analytics
    gtag('config', 'UA-XXXXXXXXX-X', {
        'custom_map': {
            'dimensionX': 'suid',
            'dimensionX': 'client_id',
            'dimensionX': 'user_id',
            'dimensionX': 'hit_id',
            'dimensionX': 'action_code',
            'dimensionX': 'tariff_code'
        } // для dimensionX вместо Х вставьте соответствующие индексы параметров (колонка «Индекс»)
    
    
    });
    
    ga_items = [];
    
    var list_position = 1; 
    
    // этот фрагмент кода нужно повторить для каждой позиции в корзине
    ga_items.push({
        "id": "{{ item.product_id }}",
        "name": "{{ item.product_title }}",
        "quantity": "{{ item.quantity }}",
        "price": "{{ item.price }}",
        "category": "{{ item.product_type }}",
        "list_position": list_position,
        "variant": "{{ item.variant }}",
        "brand": "{{ item.brand }}",
    });
    list_position = list_position + 1; 
    // конец фрагмента кода, который нужно повторить
    
    function getTimeStamp() {
        var now = new Date();
        var tzo = -now.getTimezoneOffset();
        var dif = tzo >= 0 ? '+' : '-';
        var pad = function(num) {
            var norm = Math.abs(Math.floor(num));
            return (norm < 10 ? '0' : '') + norm;
        };
        return now.getFullYear() + '-' + pad(now.getMonth() + 1) + '-' + pad(now.getDate()) + 'T' + pad(now.getHours()) + ':' + pad(now.getMinutes()) + ':' + pad(now.getSeconds()) + '.' + pad(now.getMilliseconds()) + dif + pad(tzo / 60) + ':' + pad(tzo % 60);
    }
    
    function clientid() {
        var match = document.cookie.match('(?:^|;)\\s*_ga=([^;]*)');
        var raw = (match) ? decodeURIComponent(match[1]) : null;
        if (raw) {
            match = raw.match(/(\d+.\d+)$/);
        }
        var gacid = (match) ? match[1] : null;
        if (gacid) {
            return gacid;
        }
    }
    
    function getSessionId() {
        return new Date().getTime() +
            '.' + Math.random().toString(36).substring(5);
    }
    
    function uuidv4() {
        return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function(c) {return (c ^ (window.crypto || window.msCrypto).getRandomValues(new Uint8Array(1))[0] & 15 >> c /   4).toString(16)});
      }
    
    gtag('event', 'purchase', {
        "transaction_id": "{{ order_number }}",
        "affiliation": "",
        "currency": "{{ shop.currency }}",
        "shipping": "{{ shipping_price }}",
        "items": ga_items,
        "session_id": {{coupon}}, // укажите значение, если у вас есть персональный промокод. Подробнее
        "action_code": "{{ action_code }}", // скопируйте значение из таблицы на странице «Настройка интеграции через Google Analytics API» (меню → Программа → Интеграция → «Далее» → вкладка «Кастомная интеграция» → «Google Analytics API» → «Далее»)
        "tariff_code": "{{ tariff_code }}", // скопируйте значение из таблицы на странице «Настройка интеграции через Google Analytics API» (меню → Программа → Интеграция → «Далее» → вкладка «Кастомная интеграция» → «Google Analytics API» → «Далее»)
        "suid": uuidv4(),
        "client_id": clientid(),
        "user_id": "id пользователя в вашей системе", // если ID неизвестен, нужно передавать пустую строку. Подробнее о настройках User ID
        "session_id": getSessionId(),
        "hit_id": getTimeStamp(),
    });
    </script>

Готово. Вы настроили параметры интеграции и разместили код отслеживания код на страницах сайта.

Теперь сообщите специалисту Admitad, что вы

  • настроили отслеживание электронной торговли,
  • предоставили доступ в Google Analytics к заказам, атрибутированным Admitad,
  • настроили специальные параметры и разместили код со значениями этих параметров на сайте.

Далее специалист Admitad подготовит программу-обработчик заказов, в которой будут использованы следующие параметры:

  • dimensions:

    • ga:transactionId — номер заказа;
    • ga:productSku — номер продукта (может использоваться для определения тарифа);
    • ga:adContent — содержимое метки utm_content (используется для хранения сервисного значения admitad_uid);
    • ga:dateHourMinute — дата и время заказа;
    • ga:currencyCode — код валюты;
  • metrics:

    • ga:itemRevenue — сумма заказа;
    • ga:couponCode — промокод.

Как настроить дедупликацию заказов

Дедупликация — это способ обработки данных, который позволяет правильно определить платный источник трафика, чтобы присвоить ему заказ, а также устранить дублирующие друг друга целевые действия, если они есть.

При интеграции через Google Analytics API настройка дедупликации не требуется:

  • для модели Last Non-direct Click — дедупликация действий настроена по умолчанию.

  • для модели Last Paid Click — последний платный источник трафика будет определяться по значению параметра utm_source перехода на сайт. Если значение utm_source=admitad, то заказ будет атрибутирован Admitad Partner Network.

 

Как тестировать интеграцию после настройки

Для тестирования интеграции через GA API:

1. Получите тестовую партнерскую ссылку на странице «Настройка интеграции через Tracking code» в блоке «Тестирование интеграции».

  • 1.1 В личном кабинете перейдите в раздел «Интеграция» (Программа → Интеграция).

    1.2 Затем нажмите «Далее» и на странице «Способы интеграции» переключитесь на вкладку «Кастомная интеграция».

    1.3 На вкладке «Кастомная интеграция» выберите «Tracking code» и нажмите «Далее».

    1.4 Блок «Тестирование интеграции» расположен в нижней части экрана.

2. Перейдите по ссылке и выполните целевое действие согласно условиям вашей программы.
Например, если вы платите веб-мастерам только, если пользователь покупает определенный товар, — купите именно этот товар.

Рекомендации по тестированию интеграции:

  • Если у вас несколько действий и/или тарифов, сделайте несколько тестовых заказов, чтобы проверить все действия и тарифы.

  • Включите несколько товарных позиций в один из тестовых заказов, чтобы проверить, что позиции и общая сумма заказа передаются корректно.

  • Если у вас есть форма быстрого заказа или заказа «В один клик», сделайте заказ через нее, чтобы проверить интеграцию формы.

3. Откройте личный кабинет Google Analytics и на панели слева выберите «Конверсии» → «Электронная торговля» → «Транзакции».

4. На вкладке «Статистика» нажмите «Дополнительный параметр» (1), затем в открывшемся окне нажмите «Часто используемые» (2) → «Источник» (3).

5. На вкладке «Статистика» в поле для поиска (4) введите «admitad» и нажмите кнопку поиска.

RU_GA_API_testing.png


6. Если интеграция настроена корректно — откроется список заказов, в котором должны отображаться все тестовые заказы, при этом будет указан источник трафика — «admitad».

Готово. Тестирование интеграции завершено.
Сообщите специалисту Admitad об окончании тестирования — программа будет поставлена на подготовку к запуску.

Как настроить передачу данных по персональным промокодам

Настройка передачи данных по промокодам — необязательный этап интеграции.

Персональные промокоды — это промокоды, которые содержат уникальное кодовое слово, по которому отслеживаются целевые действия. Такие промокоды закрепляются за конкретными веб-мастерами. Подробнее о персональных промокодах

Для работы с персональными промокодами:

  • в форме оформления заказа на сайте должно быть поле «Промокод»;
  • в личном кабинете Google Analytics должна быть подключена и настроена передача тегов Enhanced Ecommerce.

Чтобы настроить передачу данных по персональным промокодам:

1. Создайте персональный промокод с уникальным кодовым словом для своего сайта.

2. Скопируйте персональный промокод из формы оформления заказа в параметр coupon в Google Analytics. Примеры:

  • gtag.js — новый тип Google Analytics
  • analytics.js — старый тип Google Analytics

При поступлении заказа со значением coupon, соответствующим созданному в системе персональному промокоду, заказ будет присвоен тому веб-мастеру, которому принадлежит этот промокод.

При передаче заказов с обычным промокодом (не персональным) настройка передачи данных по промокоду не требуется.

 

Как настроить резервную передачу данных

Если «счетчик» Google Analytics был заблокирован антирекламным расширением в браузере пользователя, то целевое действие пользователя может быть не зафиксировано в сервисе Google Analytics.

Чтобы целевое действие было корректно зарегистрировано, вы можете дополнительно передавать информацию о действиях в Google Analytics из своей базы данных по протоколу передачи статистических данных Google Measurement Protocol.

RU_Google-Analytics-API_12.png


Для резервной передачи данных о целевых действиях необходимо:

1. При переходе пользователя на сайт, извлекать значения UTM-меток из аффилиатной ссылки и перезаписывать их, если приходят новые

  • <!--?php 
    
    $cookie_name = 'utm_cookie';
    $expires_days = 90;
    
    foreach ($_GET as $param_name => $param_value) {
        if (substr($param_name, 0, 4) === 'utm_') {
            $cookie_string = $cookie_string . $param_name . '=' . $param_value . ';';
        }
    }
    
    if (isset($cookie_string)) {
        setcookie($cookie_name, $cookie_string, time() + $expires_days * 24 * 60 * 60, '/');
    }
    ?-->
    

2. Передавать UTM-метки вместе с информацией о заказе в базу данных сайта.

3. Передавать информацию о заказе из базы данных сайта в Google Analytics по протоколу Google Measurement Protocol.

Вы можете настроить передачу информации из базы данных сайта в Google Analytics по протоколу Google Measurement Protocol согласно документации Google.

Была ли статья полезной?
0 0 0