- 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 StackAdapt. 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 ordersubscription_recurring_purchaseon invoice.paid for an existing subscriptionpayment_succeededmaps to invoice.paid or charge.succeededpayment_refundedmaps to charge.refundedamount / 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 →
Resolved 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.- DeduplicationBrowser and server copies of the same purchase collapse on event ID, so nothing is counted twice.
- Bot and fraud filteringAutomated traffic never reaches the model, because what you keep out of the training set matters as much as what goes in.
03 Activate
Delivered to StackAdapt
Server-side conversions to StackAdapt with hashed identifiers attached, so multi-channel programmatic is measured on your orders.
See the StackAdapt integration →
StackAdaptWhat it receives hashed email / phoneidentity matching on arrivalsa_click_idcredit the click that drove itexternal_idstable person across sessionsevent_iddedupe against the browser pixelvalue / currencyvalue-based bidding
The catch
A retried payment produces several Stripe objects for one purchase.
Forwarding each as a conversion inflates reported performance by the retry rate, which is highest on exactly the campaigns bringing in the least reliable payment methods. Fire the Upstack event when Stripe reports the payment succeeded (invoice.paid or charge.succeeded), so only the settled payment becomes a conversion.
Where to check in StackAdaptDelivery you can audit
StackAdapt › Conversions › Conversion tracking
Server-side conversions are labeled by source, so a deduplicated pair is visible as one.
What changes
What changes when Stripe feeds StackAdapt. Two gains on the StackAdapt side, two on the Stripe side.
StackAdapt
Server-side delivery
Events reach StackAdapt through its server API rather than the browser, so ad blockers and ITP don’t cost you conversions.
StackAdapt
Identity-resolved events
Events sent to StackAdapt carry the resolved customer whenever Upstack can identify one, matched against a 750M+ device graph.
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.
Connect Stripe once and every destination, StackAdapt included, is forwarded the same resolved events.
Upstack dashboardExample
StackAdapt Destination Healthy
Read the full StackAdapt setup guide → -
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.
-
02
Add the StackAdapt destination
Under Destinations, add StackAdapt. Every resolved Stripe event is then forwarded to it.
-
03
Check delivery to StackAdapt
Every conversion is inspectable from the moment it fires to the moment the platform confirms it.
FAQ
Questions about Stripe and StackAdapt.
How do I check that Stripe events are reaching StackAdapt?
Open StackAdapt › Conversions › Conversion tracking. Server-side conversions are labeled by source, so a deduplicated pair is visible as one.
Will a purchase be counted twice?
No. Browser and server copies of the same purchase collapse on event ID, so nothing is counted twice.
How long does it take to connect Stripe to StackAdapt?
Most brands are live in under 20 minutes. Once Stripe events reach Upstack, every destination receives the same resolved events, StackAdapt included.