# KClient JS
advanced expert team enterprise
KClient JS подключает Keitaro к удаленным ресурсам посредством JS-кода. При клике по ссылке сайта выполняет действия и настройки кампании, которую подключаете к сайту. Опционально, выполняет динамическую подмену контента без видимого редиректа.
KClient JS удобен для работы с различными конструкторами сайтов, где нет возможности разместить PHP код KClient PHP.
# Обязательная информация перед настройкой
- KClient JS подключается исключительно на сайты, которые находятся на сторонних хостах или серверах. Не добавляйте код KClient JS на сайт или webview, которые загружены как локальный лендинг или оффер в Keitaro. 
- Ссылка кампании (tracking link) при работе с KClient JS — это ссылка на сайт, на который добавляется трекинг-код из кампании трекера. Путь трафика при работе с KClient JS: сайт с трекинг-кодом -> Keitaro -> выполнение действий и настроек кампании, из которой взят трекинг-код. 
- Домен, припаркованный к Keitaro и домен сайта, на который ставите трекинг—код - это обязательно два разных домена. 
# Настройка интеграции
- Создайте кампанию в Keitaro.
- Откройте вкладку "Tracking" в кампании;
- Выберите «KClient JS» из списка

- Добавьте код в <head>сайта, на который подключаете интеграцию.
# Настройки KClient JS
Доступные настройки:

Сохранять уникальные клики — данная опция позволяет отправлять уникальные клики в трекер;
Конвертировать в base64 — конвертирует код интеграции в base64, что позволяет добиться большей уникальности и защищает от блокировки кода браузерными расширениями;
Код интеграции — результирующий код интеграции, который необходимо добавить в проект. Рекомендуем добавлять код в тег <head>, что позволит коду начать работу быстрее при загрузке страницы.
TIP
Если выбираете опцию Отправлять уникальные клики в трекер, но необходимо протестировать кампанию, добавьте в URL параметр _new=1.
Пример:
https://example.com/?_new=1
# Подключение к конструкторам сайтов
# Shopify
Открываем магазин и переходим в Themes → Actions → Edit code.
Слева выбираем необходимую страницу. Если главная, выберите theme.liquid. И ставим код в тег <head>:

Сохраняем, код подключен.
# Taplink
Создайте страницу, далее перейдите в Настройки → Общие → Вставка HTML кода

Вставляйте код в обычном виде, без base64.

Сохраняем.
# Tilda
Создайте сайт и откройте список страниц, после нажмите Настройки

Перейдите в раздел "Дополнительно" и пролистайте вниз до блока HTML-КОД ДЛЯ ВСТАВКИ ВНУТРЬ HEAD
Необходимо поставить js—код, но данная опция доступна на платных тарифах:

После добавления кода не забудьте опубликовать сайт заново, чтобы правки вступили в силу.
# Flexbe
Создайте сайт и в шапке формы перейдите в Настройки:

Далее, нажмите Вставка кода и Перед закрывающим тегом .
Импортируйте код:

Сохраните изменения.
# GitHub pages
Создайте новый репозиторий:

Откройте index и вставляйте JS—код:

Сохраните и сделайте push в GitHub. При открытии страницы из репозитория срабатывает js—код:

# KClient JS FAQ
Как фильтровать ботов?
Действие «Do nothing» оставит бота на сайте, на котором стоит скрипт. Второй поток — это целевое действие для всех остальных.

В потоке «Bot Protection» выставляете любой набор фильтров, который нужен для отлова ботов.
В потоке Flow 2 выставляете целевое действие. Если выбирается локальный лендинг/оффер, то лендинг/оффер выгружается на сайт с интеграцией без редиректа и смены домена, в случае если трафик не попадет в бот поток.
С какими конструкторами скрипт несовместим?
- WIX
- Google.Sites
Выявляет ли ботов?
При генерации скрипта можете включить опцию — base 64, что позволит генерировать код скрипта в уникальном зашифрованном виде, избегая в содержании ключей вида "tracker", "api" и других похожих значений, которые помогают ботам детектить работу трекера.
При переходе на сайт, где установлен код, нет действия.
Первым делом, перейдите в кампанию в Keitaro, откройте в правом углу над потоками "Лог" и сделайте клик по сайту.
Если лог остаётся пустым, проверьте, правильно ли вставлен код интеграции.
Код необходимо вставлять в HEAD.
Лог трафика присутствует, но при переходе на сайт нет действия.
Убедитесь, что протоколы, которые используются в кампании и на сайте, одинаковые. Если сайт работает на HTTP, то и ссылка кампании использует HTTP.
Аналогично и с HTTPS: если сайт работает на HTTPS, то и ссылка кампании использует HTTPS.
При переходе по ссылке сайта вечный редирект.
Проверьте в потоках наличие ссылки на сайт с интеграцией. Указывать в потоке сайт, в котором стоит код KClient JS, нет необходимости.
Это приводит к бесконечному редиректу, переход на сайт открывает кампанию, в которой в потоке стоит ссылка на сайт, а в нём — код KClient JS.
Это замкнутый круг.
При переходе на сайте ошибка — MIXED CONTENT.
- Проверьте, что все ссылки внутри кода сайта на HTTP. При работе с HTTPS на сайте присутствуют ссылки со старым протоколом, что приводит к ошибкам в браузере. 
- Если работаете с доменом в Cloudflare, убедитесь, что в режимах настройки SSL на Cloudflare установлен режим Flexible. 
- Обновитесь до последней версии трекера. 
