Use cases

Sell through Stripe and unlock features in your app by pulling live payment state—no license keys, no entitlement server.

Desktop & mobile apps

Check paid status when the app opens and toggle pro features instantly. Users pay once and stay unlocked on every device they sign in with.

  1. Pull the payment hook on launch
  2. Match the user's email to an active payment
  3. Enable or disable features in the UI

One-time upgrades

Sell lifetime access with Stripe Checkout. Refunds and disputes surface as canceled on the next pull, so access stays aligned with Stripe.

  1. Create a one-time Stripe Price
  2. Start checkout via Payhook
  3. Unlock after confirmation

Subscriptions

Offer monthly or annual plans with live subscription status on every pull. Open Stripe Customer Portal so users can update billing or cancel themselves.

  1. Create a recurring Stripe Price
  2. Checkout in subscription mode
  3. Link to billing portal for manage flow

Plugins & extensions

Ship a paid tier for editor plugins, design tools, or browser extensions without building key generation, validation, or revocation infrastructure.

  1. Embed an unlock button or custom CTA
  2. Send users to Stripe Checkout
  3. Pull state from the client on next open

Cross-platform tools

One Stripe account and one payment hook can power Mac, Windows, web, and mobile clients. Stripe remains the source of truth across every platform.

  1. Share one hook ID across apps
  2. Use the same pull URL everywhere
  3. Keep product IDs aligned with Stripe

Email confirmation

When checkout happened elsewhere, send a confirmation link by email so the user can unlock on the device where your app is installed.

  1. User pays on web or another device
  2. Payhook sends an email link challenge
  3. App pulls fresh state after confirm

Payhook vs license keys