Uygulama Analitiği
Stripe, yayınlanmış pazar yeri uygulamaları için yerleşik analitik sunar ve kurulumlar, listeleme performansı ve kullanıcı etkileşimi hakkında görünürlük sağlar. Ayrıca webhook’ları ve Stripe API’yi kullanarak kendi özel analitiğinizi de kurabilirsiniz.
Kullanılabilir raporlar
Stripe Dashboard, yayınlanmış uygulamanız için şu analitikleri sunar:
Kurulum metrikleri
| Metrik | Açıklama |
|---|---|
| Installs | Seçilen dönemdeki toplam yeni uygulama kurulumu sayısı |
| Uninstalls | Seçilen dönemdeki toplam uygulama kaldırma sayısı |
| Cumulative Net Installs | Zaman içinde kurulumlar eksi kaldırmaların birikimli toplamı |
Listeleme performansı
| Metrik | Açıklama |
|---|---|
| Listing Views | Uygulamanızın pazar yeri listelemesinin toplam sayfa görüntülenmesi |
| Unique Views | Pazar yeri listelemenizi görüntüleyen benzersiz ziyaretçi sayısı |
| MoM Conversion Rate | Listelemeyi görüntüleyenlerin uygulamayı kurma oranının aydan aya yüzdesi |
Büyüme metrikleri
| Metrik | Açıklama |
|---|---|
| MoM Growth Rate | Net kurulumlarda aydan aya büyüme |
| Churn Rate | Kurulum yapmış kullanıcıların aylık olarak kaldırma yüzdesi |
Veri tazeliği
Caution
Analitik verilerinde 48 saatlik gecikme vardır. Panelde gördüğünüz veriler yaklaşık iki gün önceki etkinliği yansıtır. Raporlama dönemlerinizi buna göre planlayın.
- Veriler, 48 saatlik işleme gecikmesiyle günlük olarak güncellenir
- Geçmiş veriler, uygulamanızın ilk yayınlandığı tarihten itibaren kullanılabilir
- Metrikler UTC saat diliminde hesaplanır
- Dış analiz için verileri Stripe Dashboard’dan CSV olarak dışa aktarın
API üzerinden analitiğe erişme
Uygulama analitiğine, Stripe Reporting API’yi kullanarak programatik biçimde erişebilirsiniz:
Kurulum verileri
# 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"Listeleme görüntülenmeleri
# 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"Programatik erişim (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 sekmesi
Uygulamanızın analitiğindeki Users sekmesi, hesap düzeyindeki tekil verileri gösterir:
| Sütun | Açıklama |
|---|---|
| Account ID | Uygulamanızı kuran Stripe hesabı |
| Install Date | Uygulamanın kurulduğu tarih |
| Status | Aktif veya kaldırılmış |
| Uninstall Date | Uygulamanın kaldırıldığı tarih (varsa) |
Bu verileri şunlar için kullanın:
- Hesap bazında etkinleştirme durumunu izlemek
- Kurulum yapan ancak katılım sürecini tamamlamayan hesapları takip etmek
- Uygulamayı kaldıran hesapları belirlemek ve kayıp nedenlerini anlamak
- Kurulum verilerini kendi platform analitiğinizle ilişkilendirmek
Webhook’larla özel analitik
Gerçek zamanlı analitik ve daha derin içgörüler için uygulama olaylarını izleyecek webhook’lar kurun:
Webhook olayları
Özel analitik oluşturmak için şu olayları dinleyin:
| Olay | Açıklama |
|---|---|
account.application.authorized | Kullanıcı uygulamanızı kurdu |
account.application.deauthorized | Kullanıcı uygulamanızı kaldırdı |
Webhook işleyici
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 platformlarında, uygulamanızın kurulu olduğu hesaplar hakkında bilgi almak için Connect List API’yi kullanın:
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;};Özel analitik paneli oluşturma
Kapsamlı bir görünüm için Stripe analitiğini kendi verilerinizle birleştirin:
// 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, };};İzlenmesi gereken temel metrikler
Tajo Brevo entegrasyonu için şu metriklere odaklanın:
| Metrik | Hedef | Neden önemli |
|---|---|---|
| Kurulumdan etkinleştirmeye oranı | > %70 | Kurulum yapanların Brevo kurulumunu tamamlama yüzdesi |
| İlk senkronizasyona kadar geçen süre | < 5 dakika | Kullanıcıların kurulumdan sonra ne kadar hızlı değer gördüğü |
| 30 günlük elde tutma | > %80 | 30 gün sonra hâlâ aktif olan kullanıcıların yüzdesi |
| Aylık kayıp oranı | < %5 | Değerli bir entegrasyonla kaldırma sayısını düşük tutun |
| Listeleme dönüşüm oranı | > %15 | Listelemeyi görüntüleyenlerin kurulum yapma yüzdesi |
| Hesap başına senkronize edilen müşteri | > 100 | Entegrasyon kullanımının derinliğini gösterir |
Tip
Metriklerdeki önemli değişiklikler için otomatik uyarılar kurun. Kaldırma sayısındaki ani artış veya etkinleştirme oranındaki düşüş, acil ilgi gerektiren bir hataya ya da UX sorununa işaret ediyor olabilir.