Open source · MIT licensed

Good things deserve a way in.

Keydrop is a self-hosted app for indie developers. Manage and hand out redemption codes, discount codes and license keys, from your own Cloudflare account.

Free forever · Runs on Cloudflare Workers + D1 · No per-code fees

Works with the tools you already use

  • Stripe Checkout
  • Cloudflare Workers
  • Cloudflare D1
  • App Store offer codes
  • CSV · Excel
  • Webhooks
  • MCP
  • REST API
  • Email OTP
  • Better Auth

Features

From a code to a customer.

Everything you need to issue, sell and track codes, without building it yourself.

A home for every code

Generate codes or import them from CSV and Excel. Encrypted at rest, searchable, ready to hand out.

Deliver on your terms

Public or private claim links with rules you combine: who, when, how many.

Paid, then delivered

Stripe Checkout sells one code per order, with refunds that can revoke it.

More than a code

Memberships, credits and device-bound licenses come built in.

Yours to build on

An open-source foundation that runs on your own Cloudflare account.

Built to connect

Scoped API tokens, signed webhooks and an MCP server for your backend and AI agents.

Deploy

Live on your own Cloudflare in minutes

No servers to manage. The free Workers plan is enough to get started.

  1. 01

    Click Deploy to Cloudflare

    Cloudflare copies Keydrop into your GitHub account and creates a Worker and a D1 database.

  2. 02

    Fill in five settings

    Your site URL, the admin email and three random secrets. Stripe and email can come later.

  3. 03

    Open /setup and start

    Choose the admin password, create your first product and import or generate codes.

wrangler.jsonc · secrets
# Generate a secret
$ openssl rand -hex 32

APP_URL             https://codes.your-app.com
ADMIN_EMAIL         you@your-app.com
BETTER_AUTH_SECRET  ••••••••••••••••
SETUP_SECRET        ••••••••••••••••
CODE_ENCRYPTION_KEY ••••••••••••••••

$ open https://codes.your-app.com/setup
✓ Keydrop is ready.

Everything in the box

  • Redemption, discount, license and external-platform codes
  • CSV and Excel import with column mapping
  • AES-GCM encryption at rest
  • Nested AND / OR eligibility rules
  • Stripe Checkout with refund handling
  • Three out-of-stock strategies
  • Memberships and credit ledgers
  • License activation with device limits
  • REST API with product-scoped tokens
  • MCP server, read-only by default
  • Signed webhooks with retries
  • Email sign-in codes and code delivery
  • Quick handout page for your phone
  • Share images drawn on your device
  • Eight interface languages, including right-to-left
  • Light and dark themes

Open source

Free, and yours to change

Keydrop is MIT licensed. Use it for commercial products, change anything, and keep your data in your own account. Pull requests and translations are welcome.

code types in one inventory
4
interface languages
8
to deploy on Cloudflare
1 click
per-code fees
$0

Questions

Is Keydrop really free?

Yes. Keydrop is MIT licensed and has no paid plan. You pay only for your own Cloudflare usage, and the free Workers plan is enough for small projects.

Do I need my own server?

No. Keydrop runs on Cloudflare Workers with a D1 database in your Cloudflare account. Deploying takes one click.

Do I need Stripe?

Only if you want to sell codes. Free claim campaigns, direct assignment and the API work without Stripe.

Can I hand out App Store offer codes?

Yes. Import App Store offer codes, promo codes or any other platform's codes from CSV or Excel, then distribute them like any other code.

Can I change the look and the copy?

Yes. All text lives in one file per language, and the README lists which files to edit for the brand, colors, homepage and icons.

Do I have to credit Keydrop?

No. The MIT license only asks you to keep the license file. The small “Powered by Keydrop” link is on by default, and you can turn it off.

Give your product a way in.

Deploy Keydrop to your own Cloudflare account and hand out your first code today.