Skip to main content
  1. Home
  2. Connectors
  3. Stripe - Klaviyo
Stripe Klaviyo

Send events from your Stripe-billed app to Klaviyo

Each event is resolved to a person against a 750M+ device graph before it reaches Klaviyo, so flows trigger on a known profile rather than an anonymous session.

US device IDs in the graph
750M+
Match rate on events
90%+
Identity window, per customer
Lifetime
Most brands are live
<20 min

How it flows

How a Stripe event reaches Klaviyo. Sent from your app, resolved to a person, then forwarded.

01 Capture

Captured from Stripe

For apps that bill through Stripe, send payment and subscription events to Upstack with the Upstack Pixel and JavaScript SDK, resolved to a customer before they reach the tools you spend on.

See the Stripe integration
StripeWhat it sends
  • subscription_initial_purchaseyou fire it for the first subscription order
  • subscription_recurring_purchaseon invoice.paid for an existing subscription
  • payment_succeededmaps to invoice.paid or charge.succeeded
  • payment_refundedmaps to charge.refunded
  • amount / currencyamount in cents, with invoiceId and subscriptionId

02 Understand

Resolved to one person before it leaves

Every Stripe event is matched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer rather than two strangers.

How resolution works
Upstack DataResolved before it is sent
  • IdentityMatched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer.
  • customer_typeNew or returning, resolved before send.
  • DeduplicationOne order produces one event, so a single purchase cannot trigger the same flow twice.
  • Bot and fraud filteringAutomated traffic never becomes a profile, so list quality and deliverability are not paying for it.

Messaging mistakes are expensive and public. These controls exist so a flow never fires against a profile that should not have received it.

03 Activate

Delivered to Klaviyo

Attach re-identified emails to events before they reach Klaviyo, so browse and cart flows fire for people the pixel lost.

See the Klaviyo integration
KlaviyoWhat it receives
  • email / phonethe profile key: no profile, no send
  • external_idtie a browse to a known person
  • $valueflow and campaign revenue attribution
  • event propertieswhat the flow branches on

Which events reach Klaviyo

Each Upstack event is mapped to the Klaviyo event below before it is sent.

Upstack eventSent to Klaviyo asKey data on the event
Product viewViewed ProductProductName, ProductID, Price, ImageURL
Add to cartAdded to CartProductName, ProductID, Price, Quantity, CartValue
CheckoutStarted CheckoutCartValue, ItemCount, CheckoutURL
PurchasePlaced OrderOrderID, Revenue, Items, DiscountCodes

Upstack’s identity resolution attaches the visitor’s email before an event is forwarded, and syncs profile properties ($first_name, $last_name, $city, $region) plus custom identity properties to Klaviyo.

The catch

Stripe sees the payment, not the browse.

A customer who abandoned twice before paying looks like a first-time buyer with no history, so flows built on Stripe data alone have nothing to personalize against.

Where to check in KlaviyoSending you can audit

Klaviyo Analytics Metrics

The event appears as its own metric, and the profile count on it is the number you were losing before.

What changes

What changes when Stripe feeds Klaviyo. Two gains on the Klaviyo side, two on the Stripe side.

Klaviyo

Recover carts you couldn’t email

Anonymous browsers are resolved to a known profile, so abandonment flows can trigger for visitors Klaviyo never identified.

Klaviyo

Profiles, not sessions

Events arrive attached to a resolved customer, so flow logic and segmentation work on a person.

Stripe

Subscription purchases as events

Fire subscription_initial_purchase for the first order and subscription_recurring_purchase each time a renewal is paid, so first orders and renewals are reported separately.

Stripe

Payments and refunds

payment_succeeded, payment_failed and payment_refunded each map to a Stripe event (invoice.paid or charge.succeeded, invoice.payment_failed, charge.refunded), so money events reach Upstack when your app fires them.

Setup

Live in under 20 minutes.

You need admin access to a Klaviyo account, with permission to create a Private API key with Full Access.

Upstack dashboardExample
Klaviyo Destination Healthy
Read the full Klaviyo setup guide
  1. 01

    Install the Upstack Pixel and SDK

    Add the Upstack Pixel to your app, then fire the subscription and payment events with the JavaScript SDK when Stripe reports them, such as subscription_recurring_purchase when invoice.paid fires for an existing subscription.

  2. 02

    Add the Klaviyo destination

    Under Destinations, add Klaviyo with a Private API key named UpstackData, created with Full Access under Settings, Account, API Keys in Klaviyo. The key starts with pk_ and is shown only once.

  3. 03

    Check metrics in Klaviyo

    Upstack marks the destination Healthy, and Analytics, Metrics in Klaviyo shows Upstack events such as Added to Cart - Upstackified within a few minutes of live traffic. Then contact Upstack support to set up your Upstack abandonment flows.

FAQ

Questions about Stripe and Klaviyo.

Which events does Klaviyo receive?

ViewContent as Viewed Product, AddToCart as Added to Cart, InitiateCheckout as Started Checkout and Purchase as Placed Order.

Which customer parameters are sent to Klaviyo?

Upstack’s identity resolution attaches the visitor’s email before an event is forwarded, and syncs profile properties ($first_name, $last_name, $city, $region) plus custom identity properties to Klaviyo.

How do I check that Stripe events are reaching Klaviyo?

Upstack marks the destination Healthy, and Analytics, Metrics in Klaviyo shows Upstack events such as Added to Cart - Upstackified within a few minutes of live traffic. Then contact Upstack support to set up your Upstack abandonment flows.

How long does it take to connect Stripe to Klaviyo?

Most brands are live in under 20 minutes. Once Stripe events reach Upstack, every destination receives the same resolved events, Klaviyo included.

Related connectors

See all 408 connectors

Get Stripe talking to Klaviyo.

A 15-minute walkthrough of this connector on your own account.

21-day free trial, no card. Month to month.