Billing
Polar
Polar orders and subscriptions as canonical revenue.
At a glance
- Category
- Billing
- Required
- Yes — billing is the one required slot
- Auth
- OAuth preferred, API key or token as fallback
- Powers
- Revenue, Retention, Profitability
- Freshness
- Stale after 6 hours
- Webhook
- Yes — signed, per project
- Key format
polar_…
Connect it
- 1Press Connect on Polar and authorize the OAuth app if it is configured for your workspace.
- 2Otherwise create an organization access token in Polar → Settings and paste the polar_ value.
- 3Add the webhook URL shown after connect to Polar → Webhooks and paste the signing secret back into Seiton.
The organization access token is created here: polar.sh.
Webhook
The exact URL — including this project's id — is shown in the product after you connect. Copy it from there rather than building it by hand.
https://www.seiton.online/api/webhooks/polar?website_id={WEBSITE_ID}Events worth enabling:
order.paidsubscription.canceled
website_id is not optional
The signature is verified against the vault secret of that specific project. Without the query parameter the endpoint refuses the request rather than guessing which project a payload belongs to.
Worth knowing
- Attribution uses checkout metadata.visitor_id.
Disconnecting
Disconnect from the Integrations page. Seiton deletes the stored credentials, removes any webhook endpoint it created in your account, and strips the fields this provider owned out of your snapshots — those metrics go back to insufficient data rather than freezing at their last value.
Revoking the token or OAuth grant inside Polar works just as well and stops reads immediately. The connection then shows as revoked on the next sync, with the reason.
