License keys

Assign, deliver, export, and validate software license keys.

Zwely gives software sellers a straightforward license key management workflow without building checkout, delivery, exports, and license validation from scratch.

01

Keep keys tied to products

Each key belongs to a product, which helps prevent one product key from unlocking another product.

02

Send keys automatically

Delivery emails can include the license key, license download button, product details, and support reply-to settings.

03

Validate safely

Use client-safe validation tokens for product-scoped license checks, or server API keys when you need richer customer and order context.

Practical guide

How to deliver and validate license keys without a manual entitlement mess

License keys are the bridge between a software sale and actual access. A buyer purchases a product, receives a key, and your app or support team needs to know whether that key is real, which product it belongs to, and whether the related order is still valid.

Zwely helps software sellers assign, deliver, export, and validate license keys without building a custom licensing backend from scratch. It is meant for real product workflows where checkout, delivery, support, and validation all need to agree.

01

What license key management needs to get right

A license key system sounds simple until the edge cases show up. A key might be unassigned, assigned to the wrong product, tied to a refunded order, entered with the wrong customer email, or pasted into a different app. If you only have a spreadsheet of keys, those situations become hard to reason about.

Zwely's approach is product-centered. Keys belong to products, checkouts assign keys, orders keep customer and payment context, and the API can validate whether a key is valid for the product being checked.

That product-specific context matters because a license key should not be treated as a generic coupon code. It is proof of entitlement for a particular digital product.

02

Delivering keys after checkout

When a buyer purchases a license-key product, the email should make the next step obvious. It should show the product, include the license key, explain any download or activation step, and give the buyer a way to reach you if something doesn't work.

Zwely's delivery email can include the assigned key and, when relevant, a download button too. That is useful for software products that need both an installer and a key, or for downloadable assets that include a licensed component.

The goal is to avoid the classic support loop where the customer has a receipt but can't find the key, or has the key but can't find the download.

03

Validating a license key for a specific product

A key is not just valid or invalid in the abstract. The useful question is whether this key is valid for this product. That distinction helps prevent accidental unlocks, support confusion, and overly broad client-side checks.

Zwely's license validation endpoints are designed around that question. The rich server-to-server endpoint can return more context for trusted backends, including customer and order details. The public validation endpoint uses product-scoped validation tokens and returns only non-sensitive fields.

That lets you choose the right integration pattern. A backend service can use richer context. A client app can use a narrower product-scoped token when it needs a safer validation path.

04

What valid means in practice

A useful validation response should do more than say true or false. It should explain why. In Zwely, a valid key means the key exists for the product, was assigned through checkout, has customer and order context, and is not tied to a failed or refunded order.

Invalid states matter too. A key can be not found, unassigned, mismatched to the email, connected to a refunded order, or connected to an inactive order. Those statuses help your app show a better message and help your support team understand what happened.

This is especially important for software businesses because activation errors can become support tickets quickly. Clear statuses make the system easier to debug.

05

Exporting and auditing license keys

License data often needs to leave the app for accounting, migration, support, or analysis. You may want to see all keys, which product each key belongs to, and which customer purchased it if the key has been assigned.

Zwely includes license key exports so you can review that information outside the app. The export is helpful when you're reconciling a launch, moving records into another system, or checking inventory before another promotion.

Exports also reduce lock-in. A licensing workflow should help you operate, not trap your product data in a place you can't use.

06

A safer licensing setup for small software teams

A small software business shouldn't have to choose between no license validation and a custom licensing platform that takes months to build. Zwely gives you a practical middle path: sell the product, assign the key, deliver the key, and validate it through a documented API.

The most important security habit is keeping the right keys in the right places. Account API keys should stay on your server. Product-scoped validation tokens are narrower and better suited to client-safe validation flows. Raw secrets should never be shipped where customers can inspect them.

With that pattern, you can start with a clean license workflow and improve the activation experience over time.

07

Planning license inventory before a launch

License inventory is easy to ignore until a launch is already moving. If the product requires pre-generated keys, you should know how many keys are available, whether they are unique, and what happens if the pool runs low.

Zwely's product-level key pools make this easier to reason about. You can prepare keys for each product and keep assigned keys connected to orders instead of manually matching rows after the fact.

08

Explaining activation to customers

A license key is only useful if the customer knows what to do with it. The delivery email should show the key, the product should explain where to enter it, and your docs should cover the most common activation questions.

Zwely can deliver the key and keep the order context, but your product experience should make activation feel natural. Clear labels and screenshots inside your app or docs can prevent avoidable support tickets.

09

Reducing fraud and accidental sharing

No lightweight license system can stop every bad actor, but it can make casual sharing and accidental misuse less attractive. Product-scoped validation, order-aware statuses, and private delivery all help set a better baseline.

The important thing is to design for the risk you actually have. A small plugin launch may need simple key validation. A high-priced professional tool may need more server-side checks. Zwely gives you a practical starting point that can grow with your product.

10

Refunds, revocation, and support language

Refunds are sensitive because the customer may already have the key. Your policy should explain what happens to access after a refund, and your validation flow should reflect the order state instead of pretending nothing changed.

Zwely's validation statuses help you represent that reality. If an order is refunded, your app or support response can say something clearer than invalid key. That makes the situation easier for both sides.

11

Creating internal docs for license operations

Even small teams benefit from a short internal license playbook. It should explain how keys are generated, where they are stored, how to check an order, how to answer common activation issues, and what not to expose publicly.

Zwely gives you the tools, but documented habits keep the workflow secure. That matters as soon as anyone besides the founder helps with support.

Common questions

Questions people ask before choosing a setup

Can Zwely validate whether a license key belongs to a product?

Yes. License validation is product-aware, so a key can be checked against the product it is supposed to unlock.

Can validation return customer or order details?

The server-to-server endpoint can return richer details. The client-safe endpoint intentionally omits sensitive customer and order information.

Can I export license keys?

Yes. Zwely includes license key exports with product and customer context when available.

What happens to refunded orders?

Validation treats refunded order states differently so your app can avoid treating those keys as active purchases.

Ready when you are

Add a checkout flow without rebuilding your site.

Start with one product, one button, and one clean delivery email. You can add more polish when the product is already moving.

Create your first checkout button