Connect Stripe

Link your Stripe account in two clicks and let the sync run.

Connect your account

From Overview (or Settings → Stripe), click Connect Stripe. You're redirected to Stripe's own OAuth screen — approve the connection and you're back in churnhook.

  • The connection uses Stripe Connect (Standard). You grant access from Stripe's side, and can revoke it there at any time.
  • No secret key ever leaves Stripe. churnhook authenticates with its own platform credentials; your account's API keys are never stored.
  • You can connect a test-mode account first and switch to live later.
  • Win-back Checkout needs your connected account's public business name. Set it in the Stripe Dashboard — OAuth can't fill that field for you.

The first sync

Right after connecting, churnhook imports your customers and subscriptions in the background. You can leave the page — Overview shows progress and refreshes itself once the import finishes.

If the import stays stuck on "syncing" for a while, go to Settings → Stripe → Troubleshooting → Force a resync. A stuck import is automatically marked failed and a new one starts.

Subscriptions that were already past due before you connected show up right away in To handle → Unpaid, marked at risk — even though no sequence has run for them yet. The same goes for cancels already scheduled (on Leaving) and cancellations that already happened (on Win-back). Stripe doesn't replay those past events: once your sequences are ready and you're on Premium, the Enroll button on each list starts the journey for these customers. It's a choice you make, not something automatic. On the trial the button stays locked — see Billing. On a new workspace, Recovery stays off until you turn a flow on — connecting Stripe does not start mail by itself.

Keeping data fresh

After the first import, Stripe webhooks keep everything in sync in real time — Settings → Stripe shows this as Automatic sync. You can still re-import on demand from Settings → Stripe → Troubleshooting → Force a resync, but this is only needed if something looks off, not a daily task; the same section shows the status and counts of the last sync. If the churnhook plan has been paused for a while, that resync waits until you subscribe again — see Billing.

Disconnecting

In Settings → Stripe, the danger zone has Disconnect. Syncing and recovery stop, but data already imported is kept.

You can only reconnect that same Stripe account — a different one is refused. Switching from test to live mode reconnects that account in a different mode, it doesn't change which account you're on.