Documentation

Stripe revenue

Connect Stripe so paid revenue credits the same journeys as on-site events.

Connect your Stripe account so checkout.session.completed, invoice.paid, and related payment events become attributed conversions with source: stripe.

Setup

  1. Open Attribution settings
  2. Copy your dedicated webhook URL (includes your account id)
  3. In Stripe → Developers → Webhooks, add that endpoint
  4. Subscribe at least to: checkout.session.completed, invoice.paid

Optional / advanced: payment_intent.succeeded, refund.created, refund.updated

  1. Paste the signing secret (whsec_…) back into Intently and save

Intently verifies the signature and deduplicates payments via a stable stripePaymentKey so checkout + payment_intent pairs do not double-count.

Without identity metadata, Stripe revenue may land as unattributed. Pass Intently identity when creating Checkout Sessions or Payment Intents.

On a page where the snippet is installed:

// Session id only (sync)
const metadata = ADT.Attribution.getStripeCheckoutMetadata();

// Session id + user hash when user tracking is on (async)
const metadata = await ADT.Attribution.getStripeCheckoutMetadataAsync();

Use those values as Stripe metadata:

KeyPurpose
intently_session_idTies payment to the browser session
intently_user_hashEnables cross-session lookback when present

Alternatively set Checkout client_reference_id to the Intently session id.

Refunds

refund.created / refund.updated ingest as negative revenue adjustments so refunded dollars do not stay credited to channels.

Reporting

On /attribution, filter Stripe vs On-site vs All. KPIs separate Stripe revenue from track-event revenue. Unattributed Stripe counts surface as warnings with a link back to setup.

Next