Интеграция через трекинг-код для финансовых программ

  • Обновлено

Назначение трекинг-кода

Трекинг-код — это код на языке JavaScript, который необходимо разместить на сайте.

Трекинг-код регистрирует целевое действие пользователя на вашем сайте и отправляет в статистику Admitad Affiliate. При срабатывании трекинг-кода серверу Admitad Affiliate будет отправлен запрос с информацией о целевом действии (номер заказа, сумма заказа и другие данные).

Интеграция через трекинг-код для финансовых программ 1

 

Кроме того, трекинг-код отвечает за дедупликацию заказов и crossdevice трекинг.

Обратите внимание:

Подключайте трекинг-код в теге <head> до всех остальных скриптов. Иначе пользователь может уйти со страницы раньше, чем сработает скрипт.

Не рекомендуется устанавливать скрипт в контейнере Google Tag Manager (GTM), так как GTM будет блокироваться популярными блокировщиками рекламы. Это может привеcти к потере заказов, расхождениям в статистике и проблемам при сверке.

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

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

Для начала работы с Admitad Affiliate предоставьте ссылку перехода на ваш сайт, включающую все необходимые вам GET параметры и UTM метки.

Пример ссылки для перехода
https://site.ru/?utm_source=admitad&utm_medium=cpa

На основании ссылки перехода будут сгенерированы партнерские ссылки для наших веб-мастеров. В дальнейшем веб-мастера будут размещать партнерские ссылки на своих ресурсах для привлечения трафика на ваш сайт.

Ссылок перехода может быть и несколько, но только одна из них будет основной ссылкой перехода в программе (по умолчанию).

Установка трекинг-кода

Для установки трекинг-кода подключите скрипт на все страницы сайта.

В процессе интеграции мы отправим вам значение campaign_code.

  •    <script src="https://www.artfut.com/static/tagtag.min.js?campaign_code={your_campaign_code}" 
        async onerror='var self = this;window.ADMITAD=window.ADMITAD||{},ADMITAD.Helpers=ADMITAD.Helpers||{},
        ADMITAD.Helpers.generateDomains=function(){for(var e=new Date,n=Math.floor(new Date(2020,e.getMonth(),
        e.getDate()).setUTCHours(0,0,0,0)/1e3),t=parseInt(1e12*(Math.sin(n)+1)).toString(30),
        i=["de"],o=[],a=0;a<i.length;++a)o.push({domain:t+"."+i[a],name:t});return o},
        ADMITAD.Helpers.findTodaysDomain=function(e){function n(){var o=new XMLHttpRequest,a=i[t].domain,
        D="https://"+a+"/";o.open("HEAD",D,!0),o.onload=function(){setTimeout(e,0,i[t])},
        o.onerror=function(){++t<i.length?setTimeout(n,0):setTimeout(e,0,void 0)},
        o.send()}var t=0,i=ADMITAD.Helpers.generateDomains();n()},window.ADMITAD=window.ADMITAD||{},
        ADMITAD.Helpers.findTodaysDomain(function(e){if(window.ADMITAD.dynamic=e,window.ADMITAD.dynamic)
        {var n=function(){return function(){return self.src?self:""}}(),t=n(),
        i=(/campaign_code=([^&]+)/.exec(t.src)||[])[1]||"";t.parentNode.removeChild(t);
        var o=document.getElementsByTagName("head")[0],a=document.createElement("script");
        a.src="https://www."+window.ADMITAD.dynamic.domain+"/static/"+window.ADMITAD.dynamic.name.slice(1)
        +window.ADMITAD.dynamic.name.slice(0,1)+".min.js?campaign_code="+i,o.appendChild(a)}});
        '></script>

Код, размещенный в атрибуте onerror, предотвращает ошибочное блокирование загрузки скрипта блокировщиками рекламы и антивирусами.

Настройка передачи заказов

Передача информации о заказах

Если ваша компания работает с одной из крупных партнерских сетей, трекинг-код Admitad Affiliate может самостоятельно собирать информацию о заказах, используя уже настроенную интеграцию. Перейдите в раздел «Дедупликация заказов» и ознакомьтесь с примерами для иных партнерских сетей. Этот раздел можно пропустить, если вы нашли свою партнерскую сеть в примерах.

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

Пример кода для заказа

{{value}} — место для подстановки реального значения переменной.

  • <script type"text/javascript">
    ADMITAD = window.ADMITAD || {};
    ADMITAD.Invoice = ADMITAD.Invoice || {};
    ADMITAD.Invoice.broker = 'adm';    // параметр дедупликации (по умолчанию для Admitad)
    ADMITAD.Invoice.category = '1';    // код целевого действия (определяется при интеграции)
    
    var orderedItem = [];              // временный массив 
      
    orderedItem.push({
      Product: {
        category: '1',        // код тарифа (определяется при интеграции)
        price: '{{price}}',   // сумма заказа(передавать при процентном вознаграждении)
        priceCurrency: 'RUB', // код валюты ISO-4217 alfa-3 >(передавать при процентном вознаграждении)
      },
      orderQuantity: '1',       // всегда 1
      additionalType: 'sale'     // всегда sale
    });
    ADMITAD.Invoice.referencesOrder = ADMITAD.Invoice.referencesOrder || [];
    ADMITAD.Invoice.referencesOrder.push({
      orderNumber: '{{order number}}', // внутренний номер заказа (не более 100 символов)
      orderedItem: orderedItem
    });
    // Важно! Если данные по заказу Admitad подгружаются через AJAX, раскомментируйте следующую строку.
    // ADMITAD.Tracking.processPositions();
    </script>

Убедитесь, что сможете найти в своей CMS заказ по значению orderNumber — по нему в дальнейшем будет проводиться сверка.

 

Настройка передачи заказов при использовании AJAX или формы покупки в 1 клик

Если данные по заказу Admitad Affiliate подгружаются через AJAX или вы используете на сайте формы покупки в 1 клик (быстрого заказа), добавьте непосредственно после кода сбора данных заказа следующий скрипт. Выше вы можете увидеть пример его использования в строке с комментарием «Важно!»

<script type="text/javascript">
  ADMITAD.Tracking.processPositions();
</script>

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

Уникальные промокоды — промокоды, закрепленные за конкретным веб-мастером. Подробнее о них здесь.

Если вы намерены работать с уникальными промокодами:

1. Убедитесь, что в форме оформления заказа на сайте присутствует поле «Промокод».

2. Запишите уникальный промокод из формы оформления заказа в параметр promocode.

  • ADMITAD.Invoice.referencesOrder = ADMITAD.Invoice.referencesOrder || [];
    // добавление товарных позиций к заказу
    ADMITAD.Invoice.referencesOrder.push({
      orderNumber: '{{order number}}',  // внутренний номер заказа (не более 100 символов)
      discountCode: '{{promocode}}',      // код уникального промокода
      orderedItem: orderedItem
    });

3. При передаче заказа с уникальным промокодом всегда устанавливайте значение параметра дедупликации «adm», т.к. этот заказ принадлежит Admitad Affiliate.

ADMITAD.Invoice.broker = 'adm';

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

Логика атрибуции

  • Интеграция через трекинг-код для финансовых программ 2

 

Дедупликация заказов

Если вы работаете только с Admitad Affiliate, оставьте значение параметра дедупликации по умолчанию и пропустите этот раздел.

Если вы сотрудничаете более чем с одним платным источником, настройте дедупликацию заказов на вашей стороне для настройки передачи заказов в соответствии с моделью атрибуции Last Paid Click:

1. Сообщите техническому специалисту Admitad Affiliate, какой GET-параметр из страницы входа на сайт вы будете использовать для дедупликации. По умолчанию параметр не добавляется.

2. Создайте cookie дедупликации со значением источника. Cookie должны храниться в течение всего срока по договору (по умолчанию 90 дней).

3. Определите значение параметра дедупликации из cookie при передаче данных о заказе в параметре ADMITAD.Invoice.broker . Это сообщит нам, какому источнику принадлежит заказ. Для заказов Admitad Affiliate используйте значение параметра дедупликации adm. Заказы со значениями других платных источников не будут создаваться. Заказы с неопределённым источником будут создаваться, если на другом устройстве или браузере этого пользователя был визит через веб-мастера Admitad Affiliate в течение времени жизни cookie.

Пример кода с использованием cookie для хранения источника перехода

  • <script type="text/javascript">
    // имя cookie для хранения источника
    // если используется другое имя, укажите его
    var cookie_name = 'deduplication_cookie';
    // число дней жизни куки
    var days_to_store = 90;
    // ожидаемое значение deduplication_cookie для Admitad
    var deduplication_cookie_value = 'admitad';
    // имя GET параметра для дедупликации
    // если у вас используется другой параметр, укажите его имя
    var channel_name = 'deduplication_channel';
    // функция для получения источника из GET параметра
    getSourceParamFromUri = function () {
      var pattern = channel_name + '=([^&]+)';
      var re = new RegExp(pattern);
      return (re.exec(document.location.search) || [])[1] || '';
    };
    
    // функция для получения источника из cookie с именем cookie_name
    getSourceCookie = function () {
      var matches = document.cookie.match(new RegExp(
        '(?:^|; )' + cookie_name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + '=([^;]*)'
      ));
      return matches ? decodeURIComponent(matches[1]) : undefined;
    };
    
    // функция для записи источника в cookie с именем cookie_name
    setSourceCookie = function () {
      var param = getSourceParamFromUri();
      if (!param) { return; }
      var period = days_to_store * 60 * 60 * 24 * 1000; // в секундах
      var expiresDate = new Date((period) + +new Date);
      var cookieString = cookie_name + '=' + param + '; path=/; expires=' + expiresDate.toGMTString();
      document.cookie = cookieString;
      document.cookie = cookieString + '; domain=.' + location.host;
    };
    
    // запись куки
    setSourceCookie();
    
    // определение канала для Admitad
    if (!getSourceCookie(cookie_name)) {
      ADMITAD.Invoice.broker = 'na';
    } else if (getSourceCookie(cookie_name) != deduplication_cookie_value) {
      ADMITAD.Invoice.broker = getSourceCookie(cookie_name);
    } else {
      ADMITAD.Invoice.broker = 'adm';
    }
    </script>

Примеры параметров дедупликации иных партнерских сетей

Если для интеграции с Admitad Affiliate используется трекинг-код другой партнерской сети, после его удаления интеграция с Admitad Affiliate также будет нарушена. Проинформируйте нас перед его удалением.

 

Crossdevice-трекинг

Crossdevice трекинг позволяет веб-мастеру получить вознаграждение за заказ в том случае, когда пользователь использует несколько устройств. Это повысит привлекательность программы для веб-мастеров, которые, к примеру, привлекают мобильный трафик.

Функция работает по умолчанию. При посещении сайта рекламодателя мы собираем уникальный анонимный профиль пользователя. При заказе мы сопоставляем данные в рамках профиля и при наличии admitad_uid создаем заказ. Наиболее корректно функция работает при настроенной дедупликации. Чтобы помочь Admitad Affiliate в точном определении пользователя, вы можете явно передавать уникальный идентификатор пользователя. В его качестве может выступать электронная почта или логин зарегистрированного на сайте пользователя. Уникальный идентификатор пользователя имеет приоритет над анонимным профилем: если вы объявляете accountId, то трекинг-код не передаёт данные анонимного профиля в запросе к Admitad Affiliate — используется ваше значение.

Вставьте сниппет ниже на страницы, где известен логин или email пользователя.

<script type="text/javascript">
   ADMITAD = window.ADMITAD || {};
   ADMITAD.Invoice = ADMITAD.Invoice || {};
   ADMITAD.Invoice.accountId = 'customer@email.ru'; // e-mail или логин пользователя в системе 
</script>


Admitad Affiliate не хранит значение этого параметра и не пересылает его в открытом виде.

Значение переменной необратимо хэшируется Sha256(ADMITAD.Invoice.accountId + salt) и впоследствии используется на стороне Admitad Affiliate в качестве уникального идентификатора заказов пользователя.

Такой идентификатор позволит определить, что заказ принадлежит определенному пользователю, даже если он перейдет на сайт по партнерской ссылке Admitad Affiliate на домашнем компьютере, а купит товар на мобильном устройстве по дороге на работу. Заказ не будет потерян и попадет в статистику Admitad Affiliate.

Тестирование трекинга

1. Убедитесь, что вы подключили трекинг-код и настроили передачу данных о заказе (в том числе и на мобильной версии сайта, если есть), всех формах быстрого заказа и заказа в 1 клик и пр.

В этом вам поможет расширение для Chrome TagTag Check — оно проверит, установили ли вы все необходимые для интеграции скрипты, параметры и cookie на страницах сайта, в т.ч. на странице «Спасибо за покупку».
Установить расширение можно по этой ссылке. Далее перейдите на сайт и откройте его. При правильно настроенной интеграции во всех полях будут стоять галочки. Если какой-то из обязательных элементов отсутствует или некорректен, он будет помечен Интеграция через трекинг-код для финансовых программ 3, а справа будет расшифровка ошибки.

Интеграция через трекинг-код для финансовых программ 4

 

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

Интеграция через трекинг-код для финансовых программ 5

 

2. После этого свяжитесь с отделом трекинга Admitad Affiliate и запросите партнерскую ссылку для тестирования.

Если у вашей программы несколько целевых действий (например, «Регистрация пользователя» и «Одобренная заявка»), необходимо протестировать каждое из них.

3. Перейдите по тестовой партнерской ссылке на ваш сайт. Убедитесь что в строке адреса есть все необходимые вам GET-параметры и UTM-метки.

4. Выполните целевое действие на сайте (например, оставьте заявку).

5. Находясь на странице «Спасибо за покупку», откройте расширение TagTag Check и перейдите на вкладку Запросы трекинга. Убедитесь, что запрос отправлен.

6. Если трекинг настроен корректно, действие появится в статистике Admitad Affiliate (Личный кабинет — Статистика — По действиям). Проверьте соответствие имени целевого действия, номера и суммы тестового заказа с данными в статистике.

Интеграция через трекинг-код для финансовых программ 6

 

После успешного окончания тестирования сообщите об этом техническому специалисту Admitad Affiliate. Программа будет поставлена на подготовку к запуску.

Проблемы при тестировании

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

Проблема Возможное решение
Скрипт не срабатывает. Нет запросов от скрипта на вкладке Network браузера. Неверно подключен скрипт.
Выполните требования раздела Установка трекинг-кода.
Скрипт не срабатывает. Есть ошибки в консоли браузера. Выполните требования раздела Настройка передачи заказов.
Проверьте синтаксис JavaScript на странице «Спасибо».
Скрипт срабатывает. Ошибок в консоли браузера нет. Заказ в статистике не появился. Параметр campaign_code имеет неверное значение или отсутствует.
Проверьте значение campaign_code совместно с техническим специалистом Admitad Affiliate.
Скрипт срабатывает. Ошибок в консоли браузера нет. Параметр campaign_code имеет верное значение. Заказ в статистике не появился. Чтобы выявить ошибку, перейдите в журнал запросов (Инструменты  Журнал запросов). Текст ошибки указан в поле Результат. Исправьте ошибку и проведите повторный тест. Инструкцию по разделу Запросы на платеж можно найти здесь.
Скрипт срабатывает. Ошибок в консоли браузера нет. Параметр campaign_code имеет верное значение. Ошибок в разделе Журнал запросов нет. Заказ в статистике не появился. На стороне Admitad Affiliate временные технические ограничения (задержка логов), проверьте, появился ли заказ через час.
Скрипт срабатывает. Ошибок в консоли браузера нет. Параметр campaign_code имеет верное значение. Ошибок в разделе Журнал запросов нет. Заказ в статистике не появился через час. Обратитесь к специалисту Admitad Affiliate за помощью.

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