Revenue in Pulse is your customers’ checkout, not your Pulse subscription.
Turn attribution on
Enable revenue on the site, then add data-revenue-attribution="true" to the snippet. The tracker keeps a UUID in sessionStorage for that tab only. Pulse stores a hash, never the raw UUID.
Pass the id at checkout
Put pulse.getAttributionId() in checkout metadata as pulse_attribution_id, or send pulse.conversion with an order id. Either is enough to join a later payment to the visit.
Connect a provider
In site settings you can connect Stripe (webhook, Connect, or a restricted read key), Lemon Squeezy, Polar, Paddle, Creem, Dodo, Whop, or a generic HTTP webhook.
Last-touch
Pulse looks back 48 hours for the latest pageview on that visit hash, skipping thank-you paths you exclude. Source is the UTM source, otherwise the referrer origin, otherwise (direct). Payments without a match still appear, without a guessed page.
Currencies
Amounts stay in their original currency. Pulse never adds euros and dollars into one total. Net is amount minus fees and refunds.