Анализи на app
Stripe предоставя вградени анализи за публикуваните в marketplace приложения и Ви дава видимост върху инсталациите, представянето на обявата и ангажираността на потребителите. Можете също така да изградите персонализирани анализи чрез webhook адреси и Stripe API.
Налични отчети
Таблото на Stripe предоставя следните анализи за Вашия публикуван app:
Метрики за инсталации
| Метрика | Описание |
|---|---|
| Инсталации | Общ брой нови инсталации на app за избрания период |
| Деинсталации | Общ брой деинсталации на app за избрания период |
| Кумулативни нетни инсталации | Текущ сбор от инсталациите минус деинсталациите във времето |
Представяне на обявата
| Метрика | Описание |
|---|---|
| Изгледи на обявата | Общ брой прегледи на страницата на Вашата обява в marketplace |
| Уникални изгледи | Уникални посетители, прегледали Вашата обява в marketplace |
| Процент на конверсия месец към месец | Процент от посетителите на обявата, които инсталират app, спрямо предходния месец |
Метрики за растеж
| Метрика | Описание |
|---|---|
| Темп на растеж месец към месец | Растеж на нетните инсталации спрямо предходния месец |
| Процент на отлив | Процент от потребителите с инсталация, които деинсталират за месец |
Актуалност на данните
Caution
Данните от анализите имат закъснение от 48 часа. Данните, които виждате в таблото, отразяват активността отпреди приблизително два дни. Планирайте съобразно това прозорците си за отчитане.
- Данните се обновяват ежедневно със закъснение от 48 часа за обработка
- Историческите данни са налични от датата, на която Вашият app е публикуван за първи път
- Метриките се изчисляват в часова зона UTC
- Експортирайте данните като CSV от таблото на Stripe за външен анализ
Достъп до анализите през API
Можете да получите достъп до анализите на app програмно чрез Stripe Reporting API:
Данни за инсталациите
# Fetch app install reportcurl https://api.stripe.com/v1/reporting/report_runs \ -u sk_live_xxxxx: \ -d "report_type=app.installs.daily" \ -d "parameters[interval_start]=1709251200" \ -d "parameters[interval_end]=1711929600" \ -d "parameters[app_id]=com.tajo.brevo-integration"Изгледи на обявата
# Fetch listing views reportcurl https://api.stripe.com/v1/reporting/report_runs \ -u sk_live_xxxxx: \ -d "report_type=app.listing_views.daily" \ -d "parameters[interval_start]=1709251200" \ -d "parameters[interval_end]=1711929600" \ -d "parameters[app_id]=com.tajo.brevo-integration"Програмен достъп (Node.js)
const stripe = require('stripe')('sk_live_xxxxx');
// Create a report run for app installsconst reportRun = await stripe.reporting.reportRuns.create({ report_type: 'app.installs.daily', parameters: { interval_start: Math.floor(new Date('2025-03-01').getTime() / 1000), interval_end: Math.floor(new Date('2025-03-31').getTime() / 1000), app_id: 'com.tajo.brevo-integration', },});
// Poll for report completionconst checkReport = async (reportId) => { const report = await stripe.reporting.reportRuns.retrieve(reportId);
if (report.status === 'succeeded') { // Download the report file const file = await stripe.files.retrieve(report.result.id); console.log('Report URL:', file.url); return file; }
if (report.status === 'failed') { throw new Error('Report generation failed'); }
// Report still processing return null;};Раздел Users
Разделът Users в анализите на Вашия app показва данни на ниво отделен акаунт:
| Колона | Описание |
|---|---|
| ID на акаунта | Акаунтът в Stripe, който е инсталирал Вашия app |
| Дата на инсталиране | Кога е инсталиран app |
| Статус | Активен или деинсталиран |
| Дата на деинсталиране | Кога е деинсталиран app (ако е приложимо) |
Използвайте тези данни, за да:
- Проследявате статуса на активиране на отделните акаунти
- Се свързвате с акаунти, които са инсталирали, но не са завършили въвеждането в работа
- Разпознавате акаунтите, които са деинсталирали, и да разберете причините за отлива
- Съпоставяте данните за инсталациите със собствените си анализи на платформата
Персонализирани анализи с webhook адреси
За анализи в реално време и по-задълбочени прозрения настройте webhook адреси, които проследяват събитията на app:
Webhook събития
Следете тези събития, за да изградите персонализирани анализи:
| Събитие | Описание |
|---|---|
account.application.authorized | Потребителят е инсталирал Вашия app |
account.application.deauthorized | Потребителят е деинсталирал Вашия app |
Обработчик на webhook
const express = require('express');const stripe = require('stripe')('sk_live_xxxxx');
const app = express();
app.post('/webhooks/stripe-app', express.raw({ type: 'application/json' }), async (req, res) => { const sig = req.headers['stripe-signature']; const webhookSecret = process.env.STRIPE_APP_WEBHOOK_SECRET;
let event;
try { event = stripe.webhooks.constructEvent(req.body, sig, webhookSecret); } catch (err) { console.error('Webhook signature verification failed:', err.message); return res.status(400).send('Webhook signature verification failed'); }
switch (event.type) { case 'account.application.authorized': { const account = event.data.object; console.log('App installed by:', account.id);
// Track in your analytics system await trackEvent('app_installed', { account_id: account.id, timestamp: new Date(event.created * 1000), });
// Trigger onboarding email await sendOnboardingEmail(account.id); break; }
case 'account.application.deauthorized': { const account = event.data.object; console.log('App uninstalled by:', account.id);
// Track churn await trackEvent('app_uninstalled', { account_id: account.id, timestamp: new Date(event.created * 1000), });
// Clean up account data await cleanupAccountData(account.id); break; }
default: console.log('Unhandled event type:', event.type); }
res.json({ received: true });});Connect List API
За платформите в Connect използвайте Connect List API, за да получите информация за акаунтите с инсталиран Ваш app:
const stripe = require('stripe')('sk_live_xxxxx');
// List all connected accounts with your app installedconst getInstalledAccounts = async () => { const accounts = []; let hasMore = true; let startingAfter = null;
while (hasMore) { const params = { limit: 100 }; if (startingAfter) { params.starting_after = startingAfter; }
const response = await stripe.accounts.list(params);
for (const account of response.data) { // Check if your app is installed on this account if (account.settings?.apps?.includes('com.tajo.brevo-integration')) { accounts.push({ id: account.id, email: account.email, created: account.created, }); } }
hasMore = response.has_more; if (response.data.length > 0) { startingAfter = response.data[response.data.length - 1].id; } }
return accounts;};Изграждане на персонализирано табло с анализи
Комбинирайте анализите на Stripe със собствените си данни за цялостна картина:
// Aggregate analytics for reportingconst getAppAnalytics = async (startDate, endDate) => { const [stripeInstalls, brevoSyncStats, activationData] = await Promise.all([ // Stripe install data getStripeInstallReport(startDate, endDate), // Brevo sync metrics from Tajo getBrevoSyncMetrics(startDate, endDate), // Activation funnel from your database getActivationFunnel(startDate, endDate), ]);
return { // Acquisition totalInstalls: stripeInstalls.installs, totalUninstalls: stripeInstalls.uninstalls, netInstalls: stripeInstalls.installs - stripeInstalls.uninstalls, listingConversionRate: stripeInstalls.conversionRate,
// Activation onboardingCompleted: activationData.completedOnboarding, brevoConnected: activationData.connectedBrevo, firstSyncCompleted: activationData.firstSyncCompleted, activationRate: activationData.completedOnboarding / stripeInstalls.installs,
// Engagement totalCustomersSynced: brevoSyncStats.totalCustomers, totalEventsSynced: brevoSyncStats.totalEvents, averageSyncFrequency: brevoSyncStats.avgSyncPerDay,
// Retention churnRate: stripeInstalls.uninstalls / stripeInstalls.totalActive, monthlyGrowthRate: stripeInstalls.momGrowth, };};Ключови метрики за проследяване
За интеграцията на Tajo с Brevo се съсредоточете върху следните метрики:
| Метрика | Цел | Защо е важна |
|---|---|---|
| Процент инсталация към активиране | > 70% | Процент от инсталиралите, които завършват настройката на Brevo |
| Време до първата синхронизация | < 5 минути | Колко бързо потребителите виждат стойност след инсталирането |
| Задържане за 30 дни | > 80% | Процент от потребителите, които са все още активни след 30 дни |
| Месечен процент на отлив | < 5% | Поддържайте деинсталациите ниски с ценна интеграция |
| Процент на конверсия на обявата | > 15% | Процент от посетителите на обявата, които инсталират |
| Синхронизирани клиенти на акаунт | > 100 | Показва дълбочината на използване на интеграцията |
Tip
Настройте автоматични известия за значителните промени в метриките. Внезапен скок в деинсталациите или спад в процента на активиране може да означава дефект или проблем с UX, който изисква незабавно внимание.