checkout.session.completed → delivered

Digital product delivery for Stripe.

License keys, file downloads, links, and GitHub access — handed to your buyer the moment payment clears, and taken back if you refund. Your checkout stays exactly where it is.

Stripe · Lemon Squeezy · Polar — 14-day free trial

checkout.session.completed
$49.00

Delivering · Acme Studio Pro

License key

 

Issuing

File download

acme-studio-2.4.1.zip · signed URL

Signing

Repository access

acme/studio-pro · read

Inviting
Order delivered — no code written1.2s
  • No per-order fees
  • Unlimited orders
  • Unlimited API calls
  • Your gateway, your payouts

A delivery layer, not another storefront. Keyplar starts the moment your provider reports a payment — issuing what was bought and hosting where buyers come back to find it.

benefit.granted

Grants, not receipts

A product carries the benefits it grants. When the order lands, every one is issued at once — and revoked the moment it's refunded.

gateway.connected

Any gateway, one pipeline

Stripe, Lemon Squeezy, and Polar all feed the same delivery path. Run one or run all three; nothing downstream changes.

portal.opened

A portal under your name

Buyers get one account holding every purchase — on your domain, with your logo, and no sign of us.

benefit.granted

Attach anything to a purchase

Five kinds of benefit. License keys, file downloads, repository access, links, and free-form custom content — attached to a product, granted on payment, revoked on refund. Toggle one below and watch the buyer's side change.

admin/products/acme-studio-proTry it

Acme Studio Pro

$49.00 · one-time

Attach or detach — the buyer's view updates instantly.

portal/orders/1042

Order #1042

paid · dev@customer.com

Delivered
  • License keyACME-7F2A-9D41-C8E3Granted
  • Downloadacme-studio-2.4.1.zipGranted

three events, then it runs

Set up once. Deliver forever.

  1. 01 / gateway.connected

    Connect your gateway

    Paste your API key, add one webhook URL. Keyplar starts reading checkouts within minutes — your checkout itself is untouched.

  2. 02 / benefit.attached

    Attach benefits to products

    Map gateway products, then attach what each grants. Anything unrecognized is created for you, so an order is never dropped.

  3. 03 / order.delivered

    Checkout fulfills itself

    Buyers land on their order with everything granted — no account needed. Webhooks catch the ones who close the tab.

POST /api/v1/licenses/validate

A license API that answers the whole question

One call tells you whether a key is valid — and which order, product, and customer it belongs to. When a support email arrives, the answer is already in the payload.

  • validate · activate · deactivate
  • Per-instance activation tracking for seat limits
  • Rate-limited per key, hashed at rest
  • Available on every plan, never metered
api/v1/licenses/validateTry it
Try:

Send a key to see the response.

Sample keys only — nothing leaves your browser.

portal.opened

A customer portal you didn't have to build

  • Orders, downloads, keys, repos, and subscriptions in one account
  • Buyers see their order immediately — before creating an account
  • Magic-link sign-in, so there are no passwords to reset
  • Self-serve subscription cancellation and payment history
Explore the portal
portal.yourstore.comTry it
ACME-7F2A-9D41-C8E32 of 3 seats · no expiryActive

Your domain, your logo — on Pro.

custom domain

It doesn't have to look like our product

On Pro the portal runs on a domain you own. portal.yourstore.com, your logo in the corner, and no “Powered by Keyplar” anywhere a customer can see. Point one DNS record — verification and TLS happen on their own.

Most platforms that handle delivery keep their name on the page. See what upgrading changes.

portal — what your buyers seeTry it
portal.yourstore.comYour domain
Acme Studioyour logo

Order #1042

paid · Acme Studio Pro

© Acme Studio — no Keyplar branding

DNS verified · TLS issued

Switch the plan to compare.

webhooks

One delivery path, whichever gateway sold it

Adapters absorb the differences. Each gateway names its events differently and returns a different checkout parameter — Keyplar normalizes all of it, so what happens after payment is identical.

Connect one or connect all three — gateways are unlimited on every plan, and customers who bought on two of them still see a single 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.

import.completed

Bring your history with you

Four stages, resumable. Catalog, orders, subscriptions, then license keys — backfilled from Stripe, Lemon Squeezy, or Polar. Keys your customers already hold keep working, untouched.

Coming from another platform? See Keyplar as a Lemon Squeezy alternative, a Polar alternative, or a Gumroad alternative.

admin/importTry it

Lemon Squeezy

backfill · all history

  • Catalogqueued
  • Ordersqueued
  • Subscriptionsqueued
  • License keysqueued

Resumable and idempotent — re-running never duplicates.

straight answers

Frequently asked

What exactly is Keyplar?

Keyplar is the delivery layer that runs after your checkout. Stripe, Lemon Squeezy, or Polar processes the payment; Keyplar then grants what was bought — license keys, file downloads, GitHub repository access, links, or custom instructions — and gives your buyers a portal to access it all.

Do I still use my own payment provider?

Yes. Keyplar never touches the money. You keep your own Stripe (or Lemon Squeezy / Polar) account, your own checkout, and your own payout schedule. Keyplar listens to your gateway's webhooks and handles everything after payment.

How does the License API work?

Your app calls POST /api/v1/licenses/validate (or activate / deactivate) with a license key and a server-side API key. The response tells you if the key is valid and includes the order, product, and customer it belongs to — so support questions take seconds, not archaeology.

Can I move my existing customers over?

Yes. The import tool backfills your catalog, orders, subscriptions, and license keys from Stripe, Lemon Squeezy, or Polar. Existing gateway-issued license keys are preserved, so nothing your customers already have stops working.

Does Keyplar charge per order?

No. Plans are flat monthly — $29 or $79 — with unlimited orders and unlimited License API calls on both. You pay your gateway's processing fees and nothing more per sale.

Can I use my own domain and logo?

On the Pro plan, your portal runs on your own domain with your own logo and no Keyplar branding. Starter runs on a keyplar.com subdomain with your store name.

order.paid → delivered

Start delivering in minutes.

Connect Stripe, Lemon Squeezy, or Polar, attach benefits to your products, and your next checkout fulfills itself.

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