License Guide

EduNest LMS uses two independent licensing layers, plus the marketplace (Envato) license that governs how you may use the product. This guide covers all three. Always refer to the official Envato license terms as the authoritative source for usage rights.

A. The CreativeCape Product License

The product license ties your purchase code to a single domain. It is verified offline so it doesn't depend on a live connection on every request.

How it works (the model)

  1. Activate once. You enter your purchase code for your domain. The CreativeCape license server (default https://creative-cape.com, overridable with LICENSE_SERVER_URL) binds the code to that domain and returns a signed RS256 token.
  2. Verify offline. EduNest verifies that token's signature on every check using a public key baked into the product — no code to configure. (You can override the key with LICENSE_PUBLIC_KEY for key rotation, but you normally never touch it.) The token is also checked against your current domain.
  3. Daily heartbeat. When due, EduNest re-validates with the license server in the background. A successful heartbeat refreshes the "last verified" timestamp.
  4. Fail-open grace. If the license server is unreachable, EduNest keeps running for a 14-day grace window measured from the last successful verification, so a network blip never takes a live site down.

Where the license is enforced

Enforcement is deliberately soft: the product is not hard-blocked. Instead:

  • An admin License Gate prompts you to activate inside the admin panel.
  • A public License Banner appears on the storefront when unactivated.

The activated record is stored as a single row in the app_license table.

Activating your domain

You can activate during the Install Wizard (License step) or anytime in Admin → License:

Action What it does
Activate Binds your purchase code to the current domain and stores the signed token.
Recheck Forces an immediate server re-validation (heartbeat) and refreshes status.
Deactivate Releases this domain's seat and clears the local license, so you can move domains.

Dev-host bypass

Local and private hosts skip licensing entirely (dev mode) — and everything, including premium add-ons, is unlocked there for building and testing. This applies to:

  • localhost, 127.0.0.1, ::1
  • any *.localhost and *.test host
  • private LAN ranges (10.x, 192.168.x, 172.16–31.x)

Moving to a new domain

The license is bound to one domain. To move: Deactivate on the old domain (releases the seat — this still clears locally even if the server is temporarily unreachable), then Activate on the new domain. If you forget to deactivate, activating elsewhere reports a domain mismatch until the seat is freed.

Public status endpoint

GET /api/license/status returns the non-secret state for the installation: the activation state, the license type, the graceEndsAt deadline, the unlocked entitlements, and a human-readable message. It deliberately omits the purchase code, domain, and detailed dates. (The full, masked detail lives behind the permission-gated admin endpoint GET /api/v1/admin/license.)

B. Add-on Licensing

EduNest ships 93 built-in add-ons (53 integration channels + 40 features). They're all in the product source — there is no zip to install. Licensing simply unlocks what you've paid for, and a premium add-on must pass a two-gate model: it must be unlocked (licensed) and then switched on (admin toggle).

Two ways to unlock a premium add-on

  1. License entitlements. Your product license carries an entitlements list. An add-on is unlocked when the list contains:
    • * or all (full unlock), or
    • the channel id (whole-channel unlock, e.g. payments), or
    • the exact <channel>:<provider> key (e.g. payments:stripe), or, for feature add-ons, the exact feature id.
  2. Per-add-on purchase code. Buy an add-on separately, then enter its purchase code in Admin → Add-ons. EduNest exchanges the code once with the license server for an RS256 token bound to { addon, domain }, stores it in the addon_licenses table, and verifies it offline on every check thereafter. This survives the server being briefly unreachable and can't be forged.

On a dev host, or with a */all master entitlement, everything is unlocked.

Free vs premium

A small free set works with no key at all:

Job Free provider
Email email:smtp
Analytics analytics:ga4
Payments payments:cod, payments:bank, payments:paypal
Storage storage:r2
Video video:youtube, video:vimeo

Everything outside that set is a premium add-on — including the other 20 payment gateways, premium email/video/storage providers, chat, chatbot, live chat, CAPTCHA, SMS, social login, WhatsApp, analytics extensions, and all 40 feature add-ons (Certificates, Exams, Forums, Gradebook, SCORM, and so on).

C. The Envato License (Regular vs Extended), in plain English

EduNest is sold under Envato's standard licensing. Which one you need depends on whether your end users pay to access what you build.

Regular License

Choose the Regular License when end users are not charged to access your platform.

  • You run a free-to-access learning site, academy, or internal training portal.
  • It's fine if the project is commercial or for a client — what matters is that end users don't pay to access it.
  • One Regular License covers one single end product (one LMS / one website).

You may not use a Regular License for a platform where users pay to access it. For that you need the Extended License.

Extended License

Choose the Extended License when end users are charged, or you run EduNest as a paid/SaaS product.

  • Learners pay a fee, subscription, or membership to access courses.
  • You operate it as a SaaS where customers pay to use the service.
  • The end product itself is sold or monetized through paid access.

As with the Regular License, one Extended License covers one single end product. A staging/test copy of the same single end product is fine; a second, separate platform needs a second license.

Third-Party Licenses

EduNest bundles open-source libraries that keep their own licenses (mostly MIT). Your Envato license applies to the EduNest source code itself, not to these packages, which remain governed by their respective licenses. Third-party services (Neon, Cloudflare R2, payment gateways, email providers, etc.) are governed by their own terms of service. See Credits for the full list.

Updates

  • Free lifetime updates are included with every license.
  • Updates ship bug fixes, compatibility improvements, and new add-ons (see the Changelog).
  • Updates do not change your license tier — your Regular/Extended terms continue to apply.

© CreativeCape Solutions · creative-cape.com · support@creative-cape.com