B2B · Telegram Mini Apps · TON

Аналитика Mini App без своего data-отдела

Подключите SDK за 5 минут, отправляйте стандартные события из whitelist — и смотрите аудиторию, воронки, retention и кампании в дашборде.

Три шага до первых данных

  1. 1

    Получите API key

    В клиентской панели → Projects → скопируйте ключ pk_… (или получите у оператора TMAdesk). Передайте ключ только своей Mini App.

  2. 2

    Подключите SDK

    Один скрипт в index.html. В Telegram SDK сам подставит user_id, start_param и platform.

  3. 3

    Вызывайте track()

    В нужных местах кода — TMAdesk.track('event_name'). Только имена из whitelist ниже. События уходят пачкой ~раз в 3 сек.

Базовая интеграция

Минимум для старта. Замените pk_… на ключ из клиентской панели.

index.html
<!-- 1. Скрипт SDK -->
<script
  src="https://tmadesk.com/sdk/tmadesk.js"
  data-api-url="https://tmadesk.com/api/v1/events"
></script>

<script>
  // 2. Инициализация
  TMAdesk.init({ projectKey: 'pk_ВАШ_КЛЮЧ_ИЗ_ПАНЕЛИ' });

  // 3. Обязательный стартовый ивент
  TMAdesk.track('miniapp_open');

  // 4. Примеры по ходу UX (см. раздел «События»)
  // TMAdesk.track('content_view', { product_id: 'sku_1', screen: 'catalog' });
  // TMAdesk.track('checkout_started', { order_id: 'ord_42' });
</script>

Проверка

После теста откройте клиентскую панель → Events. Или TMAdesk.flush() для мгновенной отправки.

Важно

API принимает только события из whitelist. Неизвестное имя → 422. Полный список — ниже и в Events API.

Пример воронки (магазин в Mini App)

Типовая цепочка — вызывайте только те события, которые есть в вашем продукте.

Открытие

miniapp_open

Просмотр

content_view

Чекаут

checkout_started

Оплата

payment_initiated

Заказ

order_completed

// Каталог
TMAdesk.track('content_view', { screen: 'catalog' });

// Карточка товара
TMAdesk.track('content_view', { product_id: 'sku_42', screen: 'product' });

// Оформление
TMAdesk.track('checkout_started', { order_id: 'ord_1' });
TMAdesk.track('payment_initiated', { order_id: 'ord_1', amount: '10', currency: 'USDT' });

// Успех
TMAdesk.track('payment_completed', { order_id: 'ord_1' });
TMAdesk.track('order_completed', { order_id: 'ord_1' });

Стандартные события (whitelist)

В панели вы видите те же имена. В коде вызывайте TMAdesk.track('имя') в момент действия пользователя. В properties передавайте контекст (id товара, order_id, причину ошибки).

Старт сессии

Открытие Mini App и идентификация пользователя из Telegram.

miniapp_open

Открытие Mini App

Сразу после загрузки приложения — базовая метрика DAU и сессий.

TMAdesk.track('miniapp_open');
user_identified авто в Telegram

Пользователь определён

SDK отправляет автоматически в Telegram (user_id, start_param, platform).

// В Telegram после init() — автоматически

TON-кошелёк

Подключение кошелька через TON Connect.

wallet_connect_started

Старт подключения кошелька

Пользователь нажал «Подключить кошелёк» / открыл TON Connect.

TMAdesk.track('wallet_connect_started');
wallet_connected

Кошелёк подключён

После успешного TON Connect — передайте адрес в properties.

TMAdesk.track('wallet_connected', { wallet: 'UQ...' });

Продукт

Просмотры экранов и использование фич.

feature_used

Использование фичи

Любое ключевое действие: кнопка, режим, инструмент.

TMAdesk.track('feature_used', { feature: 'spin_wheel' });
content_view

Просмотр контента

Экран каталога, карточка товара, статья.

TMAdesk.track('content_view', { product_id: 'sku_42', screen: 'catalog' });

Оплата и заказы

Воронка от чекаута до завершённого заказа.

checkout_started

Начало оформления

Пользователь перешёл к оплате / корзине.

TMAdesk.track('checkout_started', { order_id: 'ord_1' });
payment_method_selected

Выбор способа оплаты

TON, USDT или другой метод выбран на экране оплаты.

TMAdesk.track('payment_method_selected', { method: 'USDT' });
payment_initiated

Платёж инициирован

Пользователь подтвердил оплату в кошельке.

TMAdesk.track('payment_initiated', { order_id: 'ord_1', amount: '10', currency: 'USDT' });
payment_completed

Платёж завершён

Успешная оплата (клиентский сигнал; on-chain — позже).

TMAdesk.track('payment_completed', { order_id: 'ord_1' });
payment_failed

Платёж не прошёл

Ошибка или отмена на этапе оплаты.

TMAdesk.track('payment_failed', { order_id: 'ord_1', reason: 'timeout' });
order_created

Заказ создан

Заказ записан в вашем бэкенде.

TMAdesk.track('order_created', { order_id: 'ord_1' });
order_completed

Заказ выполнен

Товар выдан / услуга оказана.

TMAdesk.track('order_completed', { order_id: 'ord_1' });

Ошибки

Сбои API, подписи и платежей.

wallet_sign_failed

Ошибка подписи

Пользователь отклонил транзакцию или подпись не прошла.

TMAdesk.track('wallet_sign_failed', { reason: 'rejected' });
api_error

Ошибка API

Сбой запроса к вашему API или критичная ошибка клиента.

TMAdesk.track('api_error', { endpoint: '/api/order', status: 500 });

Уже есть аккаунт?

Смотрите аналитику, события и API-ключи в клиентской панели.