Skip to Content
SourcesStripeOverview

Stripe

Vendo syncs Stripe payment and subscription data into your analytics destination, with multi-currency revenue reporting and full subscription lifecycle tracking.

Last reviewed September 15, 2026

Source: Vendo imports your payments, refunds and full subscription lifecycle from Stripe. It delivers them to your analytics destination (Mixpanel and others) for revenue, retention and LTV reporting.

What Vendo Syncs

Vendo pulls the Stripe objects needed for accurate revenue reporting:

DataWhat it powers
Charges & paymentsRevenue, payment counts, first vs. recurring payments
RefundsNet revenue, refund tracking
DisputesLost chargebacks subtracted from LTV, dispute counts
CustomersIdentity, profiles, billing location
Invoices & line itemsPer-product revenue breakdowns
Subscriptions & itemsMRR, plan changes, churn
Products & plansPlan names, pricing, billing intervals
Coupons & discountsPromotion and discount tracking
Balance transactionsStripe fees and true net amounts

Vendo also reads your Stripe events stream to detect plan changes and trial activity precisely as they happen.

Vendo reads these Stripe event types to keep subscription and customer records current, including paused, resumed and trial states:

  • customer.subscription.updated
  • customer.subscription.deleted
  • customer.subscription.paused
  • customer.subscription.resumed
  • customer.subscription.trial_will_end
  • customer.updated
  • customer.deleted

Events Delivered to Your Destination

Each event arrives with the customer’s identity and the related invoice, subscription or plan context. Revenue events also carry gross, net and fee amounts in the original currency and in your reporting currency.

EventWhen it fires
Account CreatedA new customer record is created in Stripe (excludes guest purchases)
Payment ReceivedA payment is successfully charged
Payment Received - Line ItemsOne event per line item within a payment, for per-product analysis
Payment FailedA payment attempt is unsuccessful
Payment RefundedA payment is refunded
Subscription StartedThe first payment for a subscription is received
Subscription UpdatedThe plan changes, including upgrades and downgrades
Subscription Cancel RequestedA customer requests cancellation (with the cancellation reason)
Subscription EndedA subscription concludes
Trial Started / Ended / ExtendedA trial period begins, concludes, or is extended
MRRMonthly recurring revenue, calculated across all billing frequencies (net of Stripe fees)

User Profile Properties

Vendo also keeps each customer’s profile up to date in your destination:

PropertyDescription
Customer profileEmail, Stripe customer ID, billing country/region, account creation date
Current subscriptionThe customer’s latest plan, status, amount, and any active discount
LTV (Lifetime Value)Net revenue per customer, after Stripe fees, refunds and lost disputes
DisputesNumber of disputes, and the amount lost to disputes with the status lost

Accurate Multi-Currency Reporting

If you sell in more than one currency, Vendo normalizes every revenue figure to your reporting currency. Totals then add up correctly across your whole customer base.

  • Vendo delivers gross, net, fee and MRR amounts in the original currency and in your reporting currency.
  • Conversions always use the latest known exchange rate. There are no gaps on weekends or for annual plans spread across future months.
  • Vendo detects your default currency and timezone automatically from Stripe when you connect. Reporting day boundaries then match your Stripe dashboard.

Subscription Lifecycle Tracking

Vendo captures the full subscription journey, so you can analyze expansion, contraction and churn:

  • Plan changes: “Subscription Updated” fires on any plan change, not only on changes to the billing interval. This includes same-interval upgrades and downgrades (for example, $20→$50/mo). This is the expansion and contraction signal you need for net revenue retention.
  • Cancellation reason: “Subscription Cancel Requested” carries why the subscription was canceled (for example, payment failed vs. customer-requested). You can then separate involuntary churn from voluntary churn.
  • Current plan as a profile trait: Vendo keeps each customer’s current plan, status and amount on their user profile, ready to segment on.

Identity & Deduplication

  • Identity: Vendo matches customers in your destination by your own User ID (from Stripe metadata), email, or the Stripe Customer ID. The Vendo team sets the option you choose. See Choosing a Mapping ID.
  • Deduplication: Every event carries a stable ID derived from the underlying Stripe record. Re-syncs and backfills never create duplicates.

Platform Details

SettingValue
Sync MethodServer-side via the Stripe API
IdentityUser ID (metadata), email, or Stripe Customer ID
CurrencyOriginal + reporting-currency amounts on every revenue event
Timezone & CurrencyAuto-detected from your Stripe account
DeduplicationStable per-record event ID

Setup

  1. Connect your Stripe account through the Vendo app with OAuth.
  2. Tell the Vendo team which mapping ID to use. The mapping ID is how Vendo identifies customers.
  3. Confirm your reporting currency (Vendo pre-fills it from your Stripe account).
  4. Select which events to deliver to your destination.

Verify Setup

  1. Confirm that the Stripe source status is active in Vendo.
  2. Trigger or find a recent payment or subscription change in Stripe.
  3. Confirm that the matching event appears in your destination.
  4. Check Logs in Vendo for recent sync activity.
Need help?

When you contact support, give your workspace, the source or destination name, the job ID and the first error message.

support@vendodata.com
Last updated on