Cloud infrastructure for software licensing

You built the hard part. Let people have it.

Licensing, payments, and a place your customers can reach you: the things between a finished product and a sold one. Without running a licensing server of your own.

Free to start · No VPS · No credit card required

Bloom

Licensing, payments and a store: nine things, one account.

Bloom Cloud is licensing and protection infrastructure for software: developers validate license keys over HTTPS, lock them to a machine, revoke them instantly, and manage their customers from a panel or from Discord. It is built for people who write Minecraft plugins, desktop apps, Discord bots, games and developer tools, and do not want to run a licensing server of their own. Bloom does not take payment from your buyers today: you charge them however you already do, and issue the license the moment you have.

OperationalAPI
13msresponse time
Not deployed hereDiscord bot
Full status page
The gap

Most software never gets sold.

Not because it was not good enough. Because selling it used to mean building all of this first.

Building it yourself

  • A VPS to run it on
  • A licensing server, written and hosted
  • A database, backed up and patched
  • A payment integration
  • Somewhere customers can reach you

One Bloom account

  • Connect Bloom
  • Create your product
  • Connect your software
  • Start managing licences

Your product, the day you make it

Still to do · 2 left

Add a package

A package is what somebody buys: a name, a price, and the licence it grants. Without one there is nothing to sell.

  • Write a description
  • Add a package
  • Publish a release
  • Publish the product

2 of 4 done. This disappears when the product is ready.

One account

Nine things, all in the same place.

Tap a node, or tab to it and press enter. Each one is a real part of the product, not a marketing word.

Bloom

License

Issue keys by hand, through the API, or automatically on first run. Hardware-locked, time-limited or lifetime.

Product

The real screens, not a rendering of them.

Every tab below is the panel's own navigation, showing the panel's own data.

The public storefront your customers buy from.

● bloomcloud.pro/my/store
Search the store
StoreMinecraft · Discord bots · Desktop apps
Aurora Launcher
Rubik Development
€29 Listed
Sentry Anti-Cheat
Rubik Development
€9/mo Listed
Bloom SDK Pro
Rubik Development
€49 Listed
Aurora Launcher
Your members see what you sell and reach you in one click. You issue the licence, and it appears on their shelf.
Ask about this€29
The licence check

One request. One answer.

  1. Your software asksOne HTTPS call on launch, with the key and an optional hardware id.
  2. Bloom checksStatus, machine lock, IP lock, expiry, blacklist. In one place.
  3. A verdict comes backValid or refused, with a reason your code can act on.
Request
POST https://bloomcloud.pro/api/v1/licenses/validate
Authorization: Bearer blm_live_••••••••

{
  "key": "BLM-9F2K-7QX4-P1MD",
  "hwid": "d41d8cd98f00b204e9800998ecf8427e"
}
Response
200 OK
{
  "valid": true,
  "license": {
    "status": "active",
    "isLifetime": false,
    "expiresAt": "2027-01-14T00:00:00.000Z",
    "productId": "0f0c…"
  }
}
Selling

From product to paid, in one flow.

  1. ProductWhat you are selling, with its versions.
  2. PackagesMonthly, yearly, lifetime, one machine or three.
  3. CheckoutStripe's own screen. Card details never reach Bloom.
  4. LicenceIssued the moment payment clears.
  5. CustomerAdded to your workspace, with what they bought.
  6. RevenueOn the analytics page, without a spreadsheet.
Discord

Manage it without leaving the chat.

Your Discord server is another window into the same workspace: issue, look up, suspend or revoke a licence with a slash command, and sell straight from the channel your members are already in.

  1. /activate is runA member pastes their key as a slash command.
  2. Bloom checks itThe same validation the API uses, against the guild.
  3. A role is grantedSynced automatically the moment it activates.
  4. Removed on expiryNo manual cleanup when a licence lapses.
Developer API

Built for developers.

Connect Bloom to your software with a REST call, from whatever you already write in. Nothing about your software needs rebuilding.

  • Scoped API keys
  • Validation & activation
  • Webhooks on every event
  • Rate limiting per key
Read the docs
javascript
const res = await fetch('https://bloomcloud.pro/api/v1/licenses/validate', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer ' + process.env.BLOOM_API_KEY,
  },
  body: JSON.stringify({
    key: config.licenseKey,
    hwid: machineId(),        // omit to check without locking to a machine
    version: app.version,
  }),
});

const result = await res.json();
if (!result.valid) {
  throw new Error('License refused: ' + result.reason);
}
How it works

Zero to running your operation from it.

  1. 1

    Sign in with Discord

    Your workspace is provisioned instantly. No VPS, nothing to install.

  2. 2

    Create your product

    Versions, pricing, and how licences get issued.

  3. 3

    Connect your software

    Drop a scoped API key into the language you already write in.

  4. 4

    Issue a licence

    By hand, on purchase, or automatically on first run.

  5. 5

    Take payment

    Stripe's checkout. Nothing to build yourself.

  6. 6

    Watch it happen

    Activations and revenue, live, with webhooks to your own systems.

  7. 7

    Manage from anywhere

    The dashboard, or the Discord bot, whichever is closer to hand.

Security & reliability

Infrastructure you don't have to babysit.

Your licensing infrastructure, hosted in the cloud and kept up to date without a maintenance window on your calendar.

Passwords, hashed

Scrypt, memory-hard, never stored in a form anybody here can read. We cannot tell you your password.

One permission check

Every request into a workspace goes through one check, in one place, against your role in it.

An audit log

Who changed what, including anything Bloom staff do. Yours to read and to export.

Card details never reach us

Checkout and billing are Stripe's own screens. We store an identifier, not a card.

No open port

The application is reached only through a tunnel, runs as a non-root user, read-only filesystem.

Database, not reachable

Not exposed outside the machine at all. The app talks to it over a private network.

Pricing

Start free. Scale when you need to.

No upfront infrastructure costs. Upgrade when your software business grows.

MonthlyYearly

Free

Freeforever

Pro

Most Popular
€14.99/month

Business

€49.99/month
FAQ

Frequently asked questions

The questions developers ask before they move their licensing to the cloud.

Why this exists

I never worked for a company. I built things and kept them to myself, because putting a price on something you made is asking people to tell you what it is worth, and I was not ready to hear the answer. So it stayed on my machine.

Bloom is the thing I wanted then. Not because there is money in it. Because the version of me that never shipped anything was not short of ideas; he was short of a first step that did not feel like the whole decision at once.

Djorr, Bloom Cloud

You build the software. Bloom handles the infrastructure.

License, protect, sell and manage your software, without building your own licensing infrastructure first.

No VPS · No licensing server to maintain · No credit card required

Or start with the docs