Постбеки (прием постбеков)

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

Где получить Postback URL?

Через меню «Обслуживание > Postback URL» или при добавлении партнерской сети.

Как самостоятельно собрать Postback URL

При добавлении партнерской сети у вас будет в поле «Postback URL» базовый адрес. Теперь вам необходимо найти документацию на сайте партнерки о настройке постбека. В частности, необходимо:

  1. Список токенов
  2. Инструкция по передаче subid/clickid

Список токенов поможет составить цепочку параметров. Например, в рекламной сети есть токены {SID1}, {STATUS}, {PAYOUT}. Значит параметры к адресу добавляем такие: &subid={SID1}&status={STATUS}&payout={PAYOUT}. С полным списком доступных параметров Keitaro можете ознакомиться разделом ниже.

Теперь вам нужно определить через какой параметр нам можно передать наш subid. Допустим, его передают через sid1. Значит, пишем «&sid1={subid}» в поле «Параметры офферов»

Если в логе конверсий не начинают появляться записи, посмотрите страницу «Обслуживание > Логи > Полученные постбеки».

Параметры постбека

  • subid — уникальный код клика Keitaro (обязательный параметр);
  • tid — Transaction ID, уникальный ID действия со стороны партнерки;
  • payout — сумма полученного дохода;
  • cost — стоимость лида (расход);
  • status — статус конверсии;
  • currency — валюта дохода и расхода (usd, eur или rub).
  • sub_id_1..10
  • extra_param_1..10
  • return — строка ответа, для случаев когда партнерка ждет определенный ответ. Пример, &return=OK.

Эти параметры используются для «обучения» Keitaro статусам партнерки:

  • sale_status — какие статусы считать продажами. Пример, «&sale_status=status1,status2»;
  • lead_status — какие статусы считать лидами. Пример, «&lead_status=status3,status4»;
  • rejected_status — какие статусы считать за отклоненные. Пример, «&rejected_status=status5,status6»;

Статусы конверсии

Конверсия в Keitaro имеет 4 состояния:

  • Лид (lead) — был получен лид, но выплата еще не перечислена. В товарных партнерках это состояние называется «Холд».
  • Продажа (sale) — лид подтвержден, выплата произведена.
  • Отклонено (rejected) — лид отклонен партнерской сетью. Если ранее у конверсии стоял статус «Продажа», выплата отменяется.
  • Ребилл (rebill) — конверсия в этом статусе говорит о том, что приведенный клиент совершил еще одну покупку или продление услуги. Вы видите эту конверсию в отчете Конверсии, но показатели лидов и продаж при этом не увеличиваются. Если партнерская сеть поддерживает допродажи (ребиллы), необходимо включить опцию «Допродажи» в настройках оффера.

Возможные переходы состояний:

  • Продажа
  • Отклонение
  • Продажа → Ребилл (если у оффера включена опция «Допродажи»)
  • Лид → Продажа
  • Лид → Продажа → Ребилл
  • Лид → Отклонение (если у оффера включена опция «Допродажи»)

Допускается также смена состояний «Лид → Лид», что позволяет организовать многоэтапное ведение лида. Например, «Корзина → Заказ → Оплата → Звонок».

Обучение Keitaro статусам

Названия статусов могут быть произвольные, но у них обязательно должна быть связь с одним из системных статусов. Связь можно указать через параметры постбека. Например, у нас 3 статуса: accept, confirm, reject. Тогда в постбеке передается следующее:

&lead_status=accept&sale_status=confirm&rejected_status=reject

В отчете конверсии, вы можете добавить колонку «Оригинальный статус», чтобы видеть полученные статусы.

Отправка постбека с сайта в Keitaro

Принцип настройки постбека следующий:

  1. Трекер отправляет subid через параметр до сайта
  2. Сайт принимает параметр и сохраняет в сессии
  3. После совершения действия, сайт делает HTTP-запрос (постбек-запрос) в трекер.

Ниже примеры под разные случаи. Если вы используете лендинги, посмотрите также страницу Лендинги,

Отправка постбека на PHP

1. На страницах, где происходит первое посещение вашего сайта, нужно принимать _subid и записывать в сессию:

<?php
if (!headers_sent() && !session_id()) {
      session_start();
}
if (isset($_GET['_subid'])) {
    $_SESSION['subid'] = $_GET['_subid'];
}

2. После успешного совершения действия пользователем, отправляем постбек:

$url = 'http://POSTBACK_URL?payout=100&status=sale&subid=' . urlencode($_SESSION['subid']);
file_get_contents($url);

Отправка постбека после сабмита формы

На первой странице поставьте код сохранения subid в сессии:

if (!headers_sent() && !session_id()) {
      session_start();
}
if (isset($_GET['_subid'])) {
    $_SESSION['subid'] = $_GET['_subid'];
}

Теперь сможете отправить постбек

$url = 'http://POSTBACK_URL?payout=100&status=sale&subid=' . urlencode($_SESSION['subid']);
file_get_contents($url);

Отправка постбека на JS

Вставьте этот код на вашей странице:

<script type="text/javascript">
var postbackUrl = 'POSTBACK_URL';
function sendPostback(params, cb) {
    var pattern = new RegExp('subid=([^&]+)');
    var params = params || {};
    params.subid = ((v=window.location.search.match(pattern))==null?'':v[1]);
    params.return = 'img';
    var img = document.createElement('img');
    img.src = postbackUrl + '?' + paramsToString(params);
    img.height=0;
    img.width=0;
    img.onload = cb;
    document.getElementsByTagName("body")[0].append(img);
};
function paramsToString (params) {
    var str = [];
    for (var p in params) {
        if (params.hasOwnProperty(p)) {
            str.push(encodeURIComponent(p) + "=" + encodeURIComponent(params[p]));
        }
    }
    return str.join("&");
};
</script>

Замените в нем POSTBACK_URL на ваш. Взять Postback URL можно на странице партнерские сети, добавив новую сеть.

Теперь можно отправлять постбек вызвав функцию: sendPostback(params)

Пример:

<script type="javascript/text">
sendPostback({status: 'sale', revenue: 100, currency: 'rub', sub_id_10: 'item 828'})
</script>

Пример с коллбеком:

<script type="javascript/text">
$('#submit').click(function() {
  sendPostback({status: 'sale'}, function(){
    $('form').submit();
  });
  return false;
});
</script>

Если вы включили предзагрузку лендинга, параметр subid нужно дописать вручную. Замените строку

params.subid = ((v=window.location.search.match(pattern))==null?'':v[1]);

на

params.subid = '{subid}';

Отправка постбека с сайта, где стоит Click Client

Click Client сохраняет subid в сессии, поэтому вы можете сразу вызывать постбек не беспокоясь о передаче subid:

$url = 'http://POSTBACK_URL?payout=100&status=sale&subid=' . urlencode($_SESSION['subid']);
file_get_contents($url);

Отправка постбека через tracking pixel

Этот способ не рекомендуется, т.к. расчитан на использование cookies.

<img src="%%POSTBACK_URL%%?status=lead&payout=10&currency=usd" width="1" height="1" />

Как отправлять допродажи (ребиллы)?

В первую очередь, проверьте, что у ваших офферов включена опция «Допродажи». Чтобы отправить постбек с допродажей, нужно передавать, кроме «subid» еще и дополнительный параметр «tid».

http://POSTBACK_URL?subid=123&tid=456

Значение «tid» должно быть уникальным при каждой следующей допродаже.

Неправильно выставляются статусы?

Чтобы «обучить» Keitaro новым статусам, передавайте параметры «lead_status», «sale_status», «rejected_status». В них перечисляйте новые статусы.

Пример:

http://POSTBACK_URL?lead_status=register&sale_status=paid,rebill&rejected_status=refund...

Статус «register» за лид. Статусы «paid» и «rebill» считать за продажу. Статус «refund» за отклонение.

Как определить причину неработающего постбека?

Частые причины:

  • Используется прямой URL в потоках вместо оффера;
  • Отправляется тестовый постбек с несуществующим subid. Keitaro принимает только если по subid есть клик в базе;
  • В настройках оффера не выбрана партнерская сеть.

Все постбеки логируются и лог можно посмотреть на странице «Обслуживание > Логи > Входящие постбеки». Ниже описание ошибок.

Ошибка в логе "SubId not found"

Причины:

  1. В потоке не передается subid перехода на оффер;
  2. В постбеке не возвращается subid;

Решение:

  1. Проверьте, что в ссылке на оффер имеется передача subid, через макрос {subid}. О том, как передавать subid, почитайте в разделе помощи на сайте партнерки.
  2. Проверьте, что в постбеке имеется передача subid. В разделе помощи партнерки посмотрите, какие макросы для этого предусмотрены. Также попробуйте собрать новый Postback URL

Ошибка в логе "Conversion by pair "SubId + tid" is already exists. Postback ignored."

Причины:

  1. Запрос был отправлен несколько раз;
  2. Совершен ребилл, но не передан параметр «tid».

Как конвертируется сумма в другой валюте?

В момент получения платежа, забираются текущие котировки с Google Finance и сумма переводится в валюту, которая выставлена в настройках Keitaro.

Пример: подключение постбека к admitad.com

  1. На странице «Партнерские сети», нажмите на кнопку «Создать».
  2. Выберите из шаблонов «admitad.com»;
  3. Скопируйте содержимое «Postback URL»;
  4. Зайдите в admitad.com на странице «Tools > Postback URL»;
  5. Нажмите «Add Postback URL»;
  6. В строке «Status» поставьте галочки у всех статусов;
  7. В поле «Link» вставьте скопированный ранее Postback URL;
  8. Нажмите в самом низу страницы «Save»;
  9. При добавлении офферов, к URL добавляйте subid={subid}.

Почему отклоняется постбек в cityads.ru?

Это связано с тем, что их интерфейс срезает параметры в адресе. Например, при добавлении http://tds.com/?postback=1&key=123 из адреса удалятся postback=1&key=123, что делает постбек нерабочим.

Для этих случаев предусмотрен дополнительный формат адресов http://domain/KEY/postback.

Почему не засчитался тестовый постбек?

Тестовый постбеки не передают реальные subid кликов, поэтому отклоняются Keitaro.

Для каких партнерских сетей имеются шаблоны?

7offers.ru, actionpay.net, affiliatecube.com, ad1.ru, ad2games.com, adinfo.ru, actionads.ru, actionpay.ru, adwad.ru, advertstar.ru, advertise.ru, admitad.com, biznip.ru, cityads.ru, everad.ru, cpagetti.com, cpaexchange.ru, cpapolice.biz, cpate.ru, clickdealer.com, ctr.ru, gdeslon.ru, gg.agency, himba.ru, hotpartner.biz, iqoption.com, instal.com, kma.biz, leads.su (tradeleads.su), leadprofit.biz, leadtrade.ru, monsterleads.pro, M1-shop.ru, moneysyst.biz, myragondigital.ru, mobilecashout.com, shakes.im, shakes.pro, primelead.com.ua, salesdoubler.com.ua, unileadnetwork.com, wapclick.io, wapcombine.com, wap.click, mcwap.ru, mobionetwork.me, richwap.ru, money4leads.biz, juddy.biz, my.zorkanetwork.com, ero-advertising.com, adult-dealer.net, wap.cash, leadsale.com, cpalead.com, clicktimes.ru, m3dcash.com, leadgid.ru, zoolley.com, expertmobi.com, maxbounty.com, cpaway.com, wapconvert.com.

Что нужно для добавления нового шаблона?

Для добавления нового шаблона, пришлите нам на support@keitarotds.com следующую информацию:

  1. Список доступных токенов/макросов
  2. Инструкция по передаче subid/clickid
  3. Валюта выплат

Не работают постбеки от ad1

Уберите из ссылок оффера «/sub1» и проверьте наличие в поле «Параметры оффера» содержимого «/{subid}».