Integration · Polar
Pay partners on the real Polar order.
TrackRev is SaaS affiliate software for indie hackers and small SaaS teams, with no limit on tracked revenue. A read-only Polar token, the customer_metadata field carrying your TrackRev visitor id, and a webhook on order.created join every Polar subscription and one-time sale to the partner click that earned it, in the same ledger as Stripe, Paddle Billing, and Lemon Squeezy.
Webhook first, API poll as the safety net.
Polar's webhook lands order.created in seconds. The hourly API poll reads the orders endpoint and backfills anything the webhook missed — so a webhook flake or a retry storm never costs you a sale.
- Webhook signed with your Polar secret, idempotent on Polar event id
- Hourly poll reconciles against the orders + subscriptions REST API
- Out-of-order events resolve to the latest subscription state, not the first
| Newsletter | 4,212 | $8,420 |
| 3,108 | $5,140 | |
| YouTube | 1,927 | $3,860 |
| Direct | 1,512 | $1,910 |
Both Polar product types, one commission model.
Polar's one-time digital products and recurring subscriptions are both first-class. Renewal orders carry the original subscription's customer_metadata back through to TrackRev, so a newsletter partner whose referral becomes a $96 annual subscription keeps earning on every renewal.
- order.created handles one-time product sales
- subscription.* events track the recurring lifecycle (active, canceled, past_due)
- Recurring multiplier configurable per program (one-time, N months, lifetime)
Polar revenue sits next to your Stripe, Paddle, and Lemon Squeezy numbers.
No separate surface per processor. Partner commissions and the channels table show total revenue across every connected billing system, with a per-source filter when you need it. Switch attribution models (last-touch, first-touch, linear) and Polar revenue re-attributes alongside the rest.
- One ledger across Stripe, Paddle Billing, Polar, Lemon Squeezy, Creem and Dodo Payments
- Per-processor filter when you need to reconcile against Polar's dashboard
- Webhook fires sale.created out to your warehouse with the source flag set
| Newsletter | 4,212 | $8,420 |
| 3,108 | $5,140 | |
| YouTube | 1,927 | $3,860 |
| Direct | 1,512 | $1,910 |
Setup
How do I connect Polar to TrackRev?
A pixel on your site, a read-only Polar token, a webhook URL. Two minutes.
Drop the first-party pixel
One script tag, sets a first-party cookie on your apex domain. Exposeswindow.trackrev.visitorId()for your Polar checkout to consume.
<script async
src="https://app.trackrev.io/p.js"
data-id="ws_..."
data-cookie-domain=".yoursite.com"></script>Pass the visitor id through Polar checkout
Polar's create-checkout call accepts acustomer_metadataobject — drop the visitor id in there.
// Create-checkout — drop the TrackRev visitor id in customer_metadata.const checkout = await polar.checkouts.create({ product_id: "prod_xxx", customer_email: user.email, customer_metadata: { trackrev_visitor_id: window.trackrev?.visitorId() ?? null, }, success_url: "https://yoursite.com/thanks",});Paste a read-only API token + webhook URL
Scoped to orders, subscriptions, and customers — read access only. The webhook URL is workspace-scoped and signed.
# Polar Dashboard → Settings → Developers → New token# Scopes (read-only):# orders:read# subscriptions:read# customers:read# Paste the polar_oat_... token into TrackRev → Integrations → Polar# Polar Dashboard → Settings → Webhooks → Add endpoint: https://api.trackrev.io/webhooks/polar/ws_xxxx # Events:order.createdsubscription.createdsubscription.updatedsubscription.canceledrefund.createdWhat TrackRev tracks from Polar
What does TrackRev sync from Polar?
One-time orders
Every order.created webhook is matched on customer_metadata or email, then credited to the originating click.
Subscriptions
Subscription lifecycle events — created, updated, canceled — keep renewal revenue tied to the original click.
Refunds
refund.created reverses revenue and any pending affiliate commissions on the next sync tick.
Hourly reconcile
API poll backfills any orders the webhook missed — no manual replays, no permanently lost sales.
Multi-currency
Native currency stored per order, USD via daily ECB rate for cross-currency channel totals.
Email fallback
Missing customer_metadata? Email-to-visitor binding catches the attribution anyway.
Run an affiliate program on Polar without a second tool.
Paid TrackRev workspaces flow Polar orders through the same commission engine as Stripe and Paddle. A partner's tagged TrackRev link drops the visitor id into Polar's customer_metadata; the webhook closes the loop; the commission row writes itself. Refunds via refund.created reverse pending commissions before payout. No plan caps the revenue you track.
- Commissions accrue from real Polar orders, not raw clicks
- Recurring commissions follow Polar subscription renewals
- Refunds + cancellations reverse pending commissions automatically
- CSV payout exports for PayPal and Wise, scheduled payout batches, mark paid with a reference
| Newsletter | 4,212 | $8,420 |
| 3,108 | $5,140 | |
| YouTube | 1,927 | $3,860 |
| Direct | 1,512 | $1,910 |
FAQs
How does TrackRev's Polar integration work?
Questions5
Connect Polar. Pay partners on orders that settled.
Webhook + API safety net. Plans from $29/mo, no limit on tracked revenue, 0% fees.