Zentitle Licensing Server / Zentitle Cloud
We store all of your licenses in our cloud server, which your application will communicate with to pull in the information and entitlements for a given license.
For your customers in environments with intermittent, restricted, or no internet connectivity (dark sites), we provide various solutions: offline licensing, relay servers for firewalled environments, LAN licensing servers, etc.
Zentitle Library
For software that is on-premise, embedded in hardware, or in a single tenant cloud: You will use the Zentitle client library to add licensing to your application. You can configure and download the library from your Zentitle dashboard, add it to your application, and use the library to communicate with the Zentitle licensing server. It is fully encrypted communication, using our own AES 256-bit encryption.
Licensing REST API
For SaaS applications, you don’t need to add the Zentitle client library because you fully control the cloud environment (our library is meant to secure applications “out in the wild”). Instead, you can use our Licensing REST API to add licensing to your app.
Management REST API
To create, read, update, and delete licenses, we provide a Management REST API. Used with our webhooks, you can automate your order fulfillment processes (e.g. ecommerce flows, CRM integrations, etc) and integrate Zentitle with your back office systems (billing, ERP, etc).
Product
A product is the application you want to license. You can create multiple products and use Code Profiles to define different plans / tiers for each product.
Feature
You can define any number of features for each product you create and you can enable / disable features for a given customer’s license. You can use Code Profiles to define which features are available for each product plan / tier.
License
A license is what you use to license your product to a customer. You can provide your customers with a license code (which we generate or you can bring in your own) to activate your product.
Account-Based Licensing (ABL)
Instead of a license code, you can allow your end users to login to your product with a username/password (a much nicer end user experience). Within the Zentitle system, we associate these user credentials with underlying license codes.
To make the end user experience even better, we offer integrations with identity providers so you can offer Single Sign On (SSO) to your end users using popular identity providers like Auth0, Okta, Google, etc.
Seat
Seats are the number of devices that can activate your product on a given license. For example, you might sell a customer a 100 seat license so that 100 devices (and no more) can activate your product using that license code.
Entitlements
Entitlements are the rights that a customer has to your product; these are defined within each license. For example, the maximum number of devices that can activate your product, or whether XYZ is enabled/disabled, etc. You can manage entitlements across a large volume of licenses using Code Profiles.
Code Profile
Code Profiles are used to easily define entitlements and other settings for groups of license codes. You can use Code Profiles to define Basic, Better, Best plans of your product.
Trial
Zentitle offers a native trial functionality that is essentially a ticking clock. You can allow people to try out your product for a certain number of days and, when the clock reaches zero, prompt users to provide a license code.
Activation
Zentitle records an “activation” when a device activates your product. You can deactivate devices from your Zentitle dashboard or programmatically with our Management REST API.
We track activations against each license and have best-in-class virtual machine identification and management so we can enforce licensing limits even if someone tries to spin up 100 VMs running your product but their license only allows 10 activations.
ComputerID
We use a ComputerID to identify a device that is running your application. It is not a hardware identifier - this is intentional so that we can continue to identify the same device even if hardware is changed out, and to identify different virtual machines trying to activate your product from the same device.
Lease Period and Dynamic Entitlements
You can optionally set a lease period timer (e.g. 12 hours) to define how frequently an end user’s application must call back to the licensing server to refresh the details of the license. This allows you to make changes to a customer’s license from your Zentitle dashboard (or programmatically using our REST API) and know that those changes will propagate down to the end user.
This is very powerful because you can upgrade/downgrade a customer’s license and those changes will be reflected in the end-user’s application the next time the lease period forces their device to refresh their license details from the cloud. For example, giving access to a new feature or elongating their maintenance end date.
End User Portal (EUP)
We provide a customizable out-of-the-box end user portal that allows your end users to login and see what products they have purchased from you and the licenses to access those products. To allow customers to manage their own licenses, you can assign account admins who can add/remove users from certain licenses. This is used in conjunction with account-based licensing.
NSL, NSA, PSL
NSL - Nalpeiron licensing
NSA - Nalpeiron analytics
PSL - Passive licensing