Analitika aplikacije
Stripe za objavljene aplikacije na marketplace zagotavlja vgrajeno analitiko, ki vam daje vpogled v namestitve, uspešnost vpisa in angažiranost uporabnikov. Lastno analitiko lahko zgradite tudi z webhooki in s Stripe API.
Caution
Stanje: načrtovano. Na Stripe App Marketplace še ni nobene aplikacije Tajo. Identifikatorji aplikacije, naslovi URL in poverilnice na tej strani so ponazoritvena nadomestila, ne delujoče končne točke.
Razpoložljiva poročila
Nadzorna plošča Stripe Dashboard za vašo objavljeno aplikacijo zagotavlja naslednjo analitiko:
Metrike namestitev
| Metrika | Opis |
|---|---|
| Namestitve | Skupno število novih namestitev aplikacije v izbranem obdobju |
| Odstranitve | Skupno število odstranitev aplikacije v izbranem obdobju |
| Kumulativne neto namestitve | Tekoči seštevek namestitev, zmanjšan za odstranitve, skozi čas |
Uspešnost vpisa
| Metrika | Opis |
|---|---|
| Ogledi vpisa | Skupno število ogledov strani z vpisom vaše aplikacije na marketplace |
| Edinstveni ogledi | Edinstveni obiskovalci, ki so si ogledali vaš vpis na marketplace |
| Mesečna stopnja konverzije | Delež obiskovalcev vpisa, ki namestijo aplikacijo, v primerjavi s prejšnjim mesecem |
Metrike rasti
| Metrika | Opis |
|---|---|
| Mesečna stopnja rasti | Rast neto namestitev v primerjavi s prejšnjim mesecem |
| Stopnja osipa | Delež uporabnikov z nameščeno aplikacijo, ki jo mesečno odstranijo |
Svežina podatkov
Caution
Analitični podatki imajo 48-urni zamik. Podatki, ki jih vidite na nadzorni plošči, odražajo aktivnost izpred približno dveh dni. Temu ustrezno načrtujte svoja obdobja poročanja.
- Podatki se posodabljajo dnevno, z 48-urno zakasnitvijo obdelave
- Zgodovinski podatki so na voljo od datuma prve objave vaše aplikacije
- Metrike se izračunavajo v časovnem pasu UTC
- Za zunanjo analizo podatke iz nadzorne plošče Stripe Dashboard izvozite v obliki CSV
Dostop do analitike prek API
Do analitike aplikacije lahko dostopate programsko, prek Stripe Reporting API:
Podatki o namestitvah
# 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"Ogledi vpisa
# 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"Programski dostop (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;};Zavihek Users
Zavihek Users v analitiki vaše aplikacije prikazuje podatke na ravni posameznega računa:
| Stolpec | Opis |
|---|---|
| ID računa | Račun Stripe, ki je namestil vašo aplikacijo |
| Datum namestitve | Kdaj je bila aplikacija nameščena |
| Stanje | Aktivna ali odstranjena |
| Datum odstranitve | Kdaj je bila aplikacija odstranjena (če je to primerno) |
Te podatke uporabite za naslednje:
- Spremljanje stanja aktivacije posameznih računov
- Nagovarjanje računov, ki so aplikacijo namestili, a niso dokončali uvajanja
- Prepoznavanje računov, ki so aplikacijo odstranili, in razumevanje razlogov za osip
- Povezovanje podatkov o namestitvah z analitiko vaše lastne platforme
Lastna analitika z webhooki
Za analitiko v realnem času in globlje vpoglede nastavite webhooke, ki spremljajo dogodke aplikacije:
Dogodki webhookov
Za gradnjo lastne analitike poslušajte naslednje dogodke:
| Dogodek | Opis |
|---|---|
account.application.authorized | Uporabnik je namestil vašo aplikacijo |
account.application.deauthorized | Uporabnik je odstranil vašo aplikacijo |
Obravnavalnik webhookov
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
Pri platformah Connect uporabite Connect List API, da pridobite informacije o računih, na katerih je nameščena vaša aplikacija:
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;};Gradnja lastne nadzorne plošče za analitiko
Analitiko Stripe združite z lastnimi podatki za celovit pogled:
// 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, };};Ključne metrike za spremljanje
Pri integraciji Tajo Brevo se osredotočite na naslednje metrike:
| Metrika | Cilj | Zakaj je pomembna |
|---|---|---|
| Stopnja od namestitve do aktivacije | > 70 % | Delež tistih, ki so aplikacijo namestili in dokončali nastavitev Brevo |
| Čas do prve sinhronizacije | < 5 minut | Kako hitro uporabniki po namestitvi vidijo vrednost |
| 30-dnevna zadržanost | > 80 % | Delež uporabnikov, ki so po 30 dneh še vedno aktivni |
| Mesečna stopnja osipa | < 5 % | Z uporabno integracijo ohranjajte nizko število odstranitev |
| Stopnja konverzije vpisa | > 15 % | Delež obiskovalcev vpisa, ki namestijo aplikacijo |
| Sinhronizirane stranke na račun | > 100 | Kaže na globino uporabe integracije |
Tip
Nastavite samodejna opozorila za pomembne spremembe metrik. Nenaden skok odstranitev ali padec stopnje aktivacije lahko kaže na napako ali težavo z uporabniško izkušnjo, ki zahteva takojšnjo pozornost.