Connect Polar
No API key needed. You add one webhook endpoint in Polar with a URL and a secret from your Checkout Sync settings.
- In your Checkout Sync settings, press Connect a checkout, then Polar, then Connect Polar. You'll see a URL and a secret.
- In Polar, open your organization's Settings → Webhooks and press Add Endpoint.
- Paste the URL, leave the format on Raw, and paste the secret into the secret field.
- Tick these events:
order.paid,order.refunded,subscription.canceled,subscription.revoked,subscription.past_due. - Save.
If you'd rather let Polar make its own secret, copy it after saving and paste it into the setup box in your settings under Let Polar make its own secret instead?
Good to know
- Renewals arrive as new paid orders and are recorded as their own purchases in Kit.
- Polar doesn't send a card-update link with failed payments. Add your customer portal link under your Polar connection in your settings: it's
https://polar.sh/your-org/portal, where your-org is your organization slug, the name in your Polar storefront address (in Polar, see Settings → General, or open your storefront and add/portal). We then use it asupdate_payment_urlon Payment failed andmanage_urlon Canceled. - Testing with Polar's sandbox? Connect it as a separate checkout and tick This is a Polar sandbox. Sandbox orders then don't count toward your plan.
Import past orders
To import past customers, Polar needs an access token just for the import. In Polar, open Settings, scroll down to Developers and press New Token. Give it the orders:read scope and a short expiry, and paste it into the import box. We delete it as soon as the import ends.