LNKS

Payments

Connect your Stripe account so users can subscribe to your paid plans. Five-minute setup, fully automated.

Payments

Connect Stripe so your users can subscribe to your paid plans. We use your Stripe account directly — money lands with you, not us. We don't take a cut.

Setup takes about a minute. Open Admin → Payments.

Step-by-step

1. Sign in to Stripe

Open dashboard.stripe.com in a new tab. If you're testing first, switch to test mode at the top — same flow, no real money.

2. Find your secret key

Top right → DevelopersAPI keys. Under Standard keys, click Reveal on your Secret key. Copy it.

It starts with sk_live_… (real money) or sk_test_… (test mode).

3. Paste it into LNKS

Back in Admin → Payments:

  • Paste the secret key
  • (Optional) Paste your publishable key — only needed for future client-side widgets, skip for now
  • Pick your currency
  • Click Connect Stripe

That's it. We auto-test the key, register the webhook on your account, and lock everything in. You'll see a green Connected pill.

You don't have to touch your Stripe dashboard for webhook setup — we did it for you.

After connecting

The Payments tab shows:

  • Account — the email + Stripe account ID you connected
  • Secret key — masked (sk_live_…ABCD) so you know which one is in use
  • Currency — locks once you set a price on any plan or take your first subscription
  • Charges — Stripe's charges_enabled flag. If it says "Pending", finish onboarding in your Stripe dashboard (verify your business, add payout details). Connecting the key works before that, but you can't actually take money until charges are enabled.
  • Webhook — the URL we registered on your account. You shouldn't ever need to touch it.

How users subscribe

Set monthly / yearly / lifetime prices on a plan. The plan gets a public page at https://your-domain.com/plans/<id> — share that URL, or click Share on the plan row to copy it.

A logged-in user clicking Subscribe goes through Stripe Checkout (Stripe-hosted form, fully PCI-compliant, no work for you). On success they're back on their account dashboard with the new plan applied. Webhooks keep their subscription state in sync — renewals, cancellations, failed payments all update automatically.

Disconnecting

Disconnect in the Payments tab clears your stored keys and removes the webhook from your Stripe account. Existing subscriptions in Stripe keep running on Stripe's side; we just stop processing events for them. Reconnect anytime.

What's stored

  • Your secret key — encrypted at rest with AES-256-GCM. We never log the plaintext.
  • Your webhook signing secret — same.
  • Your publishable key, account ID, account email — plaintext (these aren't secret).
  • A stripe_customer_id per user once they've checked out — also not secret.

Test mode

If you connected with a sk_test_ key, you're in test mode. Use Stripe's test cards4242 4242 4242 4242 with any future expiry + any CVC works for happy-path. Disconnect and reconnect with your sk_live_ key when you're ready to take real money.