ChurnaheadSign in

Stripe, Paddle and Lemon Squeezy

Last updated 1 November 2026

Churnahead reads one billing provider per workspace. Stripe has the richest data and the only webhooks, so some signals and features are Stripe-only. Where Paddle or Lemon Squeezy don’t record something, the signal stays quiet rather than guessing.

Side by side

Stripe Paddle Lemon Squeezy
Connect One-click (read-only scope) or restricted key API key with Read permission API key (cannot be limited; only GET is used)
Sync Daily, plus webhooks within seconds Every 4 hours Every 4 hours
Instant alerts Yes No No
Cancellation scheduled Yes Yes (scheduled cancel) Yes (cancelled status)
Cancellation reason and feedback Yes, from the Customer Portal No No
Payment failed Yes, including the delinquent flag Yes, from transaction payments Yes, from invoices
Card expiring Yes Yes, from the last captured payment’s card No card expiry dates
Refund Yes Yes (adjustments) Yes
Dispute Yes Yes (chargebacks) No disputes
Downgrade, trial ending, discount ending, renewal soon, new customer, tenure cliff Yes Yes Yes
Usage signals Yes Yes Yes
Backtest Yes Yes Yes
Setup check Yes No No

Stripe

  • Access: the one-click connection asks for the read_only scope; a pasted key must be a restricted key with Read on Customers, Subscriptions, Invoices, Charges and PaymentMethods, plus Customer portal if you want the setup check to look at portal settings.
  • Webhooks: with the one-click connection, a scheduled cancellation or a failed payment rescores the account within seconds and sends an instant alert if the signal is new. A self-hosted install points a Stripe webhook endpoint at the API instead.
  • Cancellation reasons: when a customer cancels through the Customer Portal and picks a reason or types feedback, it is quoted on the account and in the digest, and counted on the Why they left page. The setup check tells you if your portal doesn’t ask.

Paddle

  • Key: created under Developer tools, Authentication, with Read on Customers, Subscriptions and Transactions, plus Adjustments and Discounts so refunds, chargebacks and discounts are counted. Sandbox keys (pdl_sdbx_) read the sandbox.
  • How transactions are read: a Paddle transaction is both the invoice and the charge. Its payments list each attempt, so a past-due transaction with two failed payments reads as an open invoice tried twice. Card expiry comes from the card of the last captured payment. A scheduled cancel is a cancellation at period end.

Lemon Squeezy

  • Key: keys can’t be limited to reading, so tell whoever creates one that Churnahead only ever sends GET requests. A key that sees several stores needs the store ID.
  • How subscriptions are read: cancelled reads as active and cancelling at period end, expired as cancelled. Subscription invoices are the invoices; paid ones are also the charges, with their refunds. MRR comes from the subscription’s price and quantity, or the last invoice for usage-based prices.
  • Not available: card expiry dates, cancellation reasons and disputes.

Switching providers

A workspace reads one provider. Connecting another deletes the data synced from the first, so customers who moved between providers aren’t counted twice. If you bill through two providers at once, use two workspaces.