/Docs
Register

Revenue integrations

Bring real revenue into Reignat. Connect a payment provider and see revenue, orders, and conversion rate next to your traffic.

Overview

Revenue integrations let you attach the money side of your business to your analytics. Once a provider is connected, Reignat shows revenue, orders, and conversion rate across your dashboard, including per country, page, referrer, and visitor.

You connect a provider per project under Settings, in the Revenue API section. This is separate from the tracker's transaction() call, which only records that a conversion happened without an amount.

Supported providers

Pick one provider per project. Most connect with an API key. RevenueCat connects with a webhook.

PolarAPI key

Paste an Organization Access Token (polar_oat_…). Adds Average Order Value and MRR.

StripeAPI key

Paste a restricted, read-only secret key.

Lemon SqueezyAPI key

Paste an API key from your store settings.

PaddleAPI key

Paste an API key from your Paddle dashboard.

Dodo PaymentsAPI key

Paste an API key from your Dodo dashboard.

RevenueCatWebhook

Connect a webhook instead of a key. Best for mobile app revenue.

Connect with an API key

For Polar, Stripe, Lemon Squeezy, Paddle, and Dodo:

  1. Open Settings for your project and find the Revenue API section.
  2. Choose your provider from the Pick your payment provider menu.
  3. Paste your provider API key into the field and click Connect.

Your key is encrypted at rest. A read-only key is enough. To switch providers, disconnect the current one first.

Use a restricted or read-only key wherever your provider supports it. Reignat only needs to read orders and subscriptions.

Connect RevenueCat

RevenueCat sends purchases to Reignat over a webhook:

  1. In the Revenue API section, choose RevenueCat and click Generate webhook.
  2. Copy the Webhook URL and the Authorization header value shown.
  3. In the RevenueCat dashboard, go to Project Settings, Integrations, Webhooks, and add a new webhook.
  4. Paste the URL and set the Authorization header to the value you copied.

The webhook URL has this shape:

Webhook URL
https://your-reignat-domain.com/api/webhooks/revenuecat/<project-id>

To attribute a purchase to a specific visitor, set the reignat_visitor_id subscriber attribute in your app to the visitor ID Reignat assigns. Without it, revenue is still recorded and grouped by country and time.

Reignat ingests purchase events (initial purchases, renewals, and one-time purchases). Cancellations, expirations, and billing issues are ignored.

Display currency

Choose a display currency in the same Settings section. Amounts are shown in that currency across your reports. The default is USD.

Attribute revenue to a visitor

Once a provider is connected, all revenue, orders, and country totals show automatically — you don't have to do anything. The step below is only needed to also break revenue down by the traffic source, page, and visitor that drove each sale.

Attribution works by attaching the Reignat visitor id to the order asreignat_visitor_id. The tracker exposes it on the page as window.reignat.visitorId.

Automatic — Polar & Lemon Squeezy

Their checkout is a hosted link, so the tracker tags it for you. No code needed — just link to your Polar or Lemon Squeezy checkout normally.

One line — Stripe, Paddle & Dodo

These create checkout on your server, so pass the visitor id as metadata when you start checkout.

Stripe Checkout (one-time payments):

server.ts
// Read window.reignat.visitorId on the client and send it to your server, then:const session = await stripe.checkout.sessions.create({  mode: "payment",  line_items: [/* … */],  // Lands on the PaymentIntent → Charge, where Reignat reads it.  payment_intent_data: { metadata: { reignat_visitor_id: visitorId } },}) // For subscriptions, attach it to the subscription instead:// subscription_data: { metadata: { reignat_visitor_id: visitorId } }

Paddle (Paddle.js overlay):

checkout.ts
Paddle.Checkout.open({  items: [/* … */],  customData: { reignat_visitor_id: window.reignat?.visitorId },})

Dodo Payments — set it on the payment/subscription you create:

server.ts
metadata: { reignat_visitor_id: visitorId }

RevenueCat uses a subscriber attribute instead — see Connect RevenueCat.

Without the visitor id, a sale still counts toward your revenue, order, and country totals — it just won't be attributed to a specific source or page.

What you see

After connecting, revenue appears throughout the dashboard:

  • Totals for revenue, orders, and conversion rate above the chart, plus AOV and MRR when Polar is connected.
  • A revenue overlay on the main chart, and a Revenue metric you can switch the report tables to.
  • Revenue, orders, and revenue per visitor broken down by country, page, referrer, device, browser, and OS.
  • A revenue column on the Visitors list.
If your project has public stats enabled, revenue figures are visible on the public share page too. Keep that in mind before sharing.