works with stripe

Stripe is built for payments. Keyplar delivers what they pay for.

Stripe runs your checkout, tax, and payouts. Keyplar picks up the moment payment succeeds — issuing license keys, serving downloads, granting repository access, and giving every buyer a portal. No changes to your checkout, no code required.

a clean division of labour

You keep Stripe. You gain delivery.

Keyplar never touches the money. It complements Stripe rather than replacing any part of it.

stripe

Stripe handles

  • Checkout, Payment Links & subscriptions
  • Cards, wallets & local payment methods
  • Tax calculation and merchant-of-record
  • Payouts to your bank account

keyplar

Keyplar handles

  • License keys issued per purchase, validated via API
  • File downloads over signed, expiring URLs
  • Repository invitations — and revocations
  • A branded customer portal for every buyer
  • Refund-aware access: refunded orders lose their grants
  • Import of your existing Stripe orders and products

setup

Connected in an afternoon

Four steps. None of which involve changing how you sell.

  1. Step 01

    Connect your Stripe account

    Paste a restricted API key into your Keyplar settings. Credentials are encrypted per store, and a restricted key means Keyplar can only do what delivery requires.

  2. Step 02

    Add one webhook endpoint

    Point a Stripe webhook at your store's /webhooks URL. Keyplar verifies signatures, deduplicates retries, and normalizes events — checkout completions, refunds, subscription changes.

  3. Step 03

    Map products, attach benefits

    Match your Stripe Prices to Keyplar products, then attach license keys, files, repository access, or links to each. Unmapped Prices are created automatically so no order is ever lost.

  4. Step 04

    Sell exactly as before

    Nothing changes about your checkout. After payment, buyers are redirected to their order — every benefit granted, no account required to see what they bought.

POST /api/v1/licenses/activate

License keys for software sold on Stripe

Stripe doesn't issue license keys — Keyplar does, and your app talks to them server to server: validate on launch, activate per seat, deactivate when a machine is retired.

  • Keys with your own prefix, expiry, and activation limits
  • Per-instance activation tracking for seat-limited licenses
  • Every response resolves the order, product, and customer
  • Disable or revoke a key instantly — refunds do it for you
api/v1/licenses/validateTry it
Try:

Send a key to see the response.

Sample keys only — nothing leaves your browser.

webhooks

Already on Lemon Squeezy or Polar too?

Every gateway feeds the same delivery path. Each one names its events differently and returns a different checkout parameter — adapters absorb that, so what happens after payment never changes.

Connect Stripe alone, or run all three side by side. Gateways are unlimited on every plan, and a customer who bought on two of them still sees one account.

webhooksTry it
event
checkout.session.completed
checkout param
session_id
product mapping
Price ID

↓ same delivery, every gateway

  • License keyACME-7F2A-9D41-C8E3Granted
  • File downloadacme-studio-2.4.1.zipGranted
  • Repository accessacme/studio-proGranted

Same pipeline downstream — connect one gateway or all three.

built like infrastructure

Handled with the care payments deserve

Encrypted credentials

Your Stripe keys are encrypted at rest, per store, and only ever used server-side.

Signed URLs only

Files are never public. Every download link is signed and expires — no guessable paths.

Hashed API keys

License API keys are hashed at rest and compared in constant time. Rate-limited per key.

Verified webhooks

Every event is signature-verified and deduplicated, so retries never double-grant.

Idempotent by design

Webhooks, imports, and re-runs converge on the same state. Nothing duplicates.

Refund-aware access

Refunds revoke downloads, invalidate keys, and remove repository collaborators automatically.

Questions about the integration? Write to support@keyplar.com — or see everything Keyplar delivers.

straight answers

Stripe + Keyplar

Does this work with Stripe Payment Links?

Yes. Keyplar fulfills from webhooks, so it works with Payment Links, Stripe Checkout, and any integration that produces a completed checkout — no code on your side.

Stripe is becoming a merchant of record. Doesn't that cover this?

Merchant-of-record covers the money side: tax, compliance, invoicing. It doesn't issue license keys, host downloads, invite buyers to repositories, or give customers a portal. That delivery layer is what Keyplar adds on top of Stripe.

What Stripe permissions does Keyplar need?

A restricted API key with read access to products, checkout sessions, orders, and subscriptions — plus webhook events. Keyplar never initiates charges and never needs your full secret key.

What happens on refunds?

When a refund webhook arrives, the order is marked refunded and its grants are revoked: downloads stop, GitHub collaborator access is removed, and license keys are invalidated.

Can I import sales I made before connecting Keyplar?

Yes. The import tool backfills your Stripe catalog, order history, and subscriptions, so long-time customers get portal access to their past purchases too.

order.paid → delivered

Give your Stripe checkout a delivery layer.

Connect Stripe, attach benefits, and your next sale fulfills itself.

14-day trial · $29/mo after · cancel anytime