• Applicable Software: MokoGIT
  • Min Version Number: 02.00.00
  • Max Version Number: Not Applicable

MokoGIT includes a built-in commercial license management system for organizations that sell extensions or applications (Joomla, Dolibarr, Electron apps, and more). It handles license-key generation, validation, update-feed gating, domain enforcement, and payment-system integration — so you can license and deliver paid software straight from your repositories.

Two levels

  • Organization — packages and keys shared across every repo in the org (/{org}/-/licenses).
  • Repository — the same, scoped to one repo, plus per-repo update-feed URLs (/{owner}/{repo}/licenses).

License packages

A package defines a subscription tier (for example “Pro Annual” or “Basic Monthly”):

  • Duration — key validity in days (0 = lifetime).
  • Max sites — maximum unique domains a key may activate (0 = unlimited).
  • Channels — which update streams the package grants access to.
  • Active — whether the package is currently sold.

Every org/repo also gets a protected Master (Internal) package with an internal key — unlimited access to all channels; it can be revoked but not edited or deleted.

License keys

  • Keys look like MOKO-XXXX-XXXX-XXXX-XXXX and are hashed (SHA-256) before storage — the full key is shown once at creation, so store it securely.
  • Each key can carry a licensee name/email, a domain restriction, a max-sites override, and a custom expiry date.

Gating downloads

License keys tie into the Update Server: set a repository's Feed Visibility to Require license key and consumers must present a valid key to list versions and download updates. Domain and channel access are checked at validation time.

Selling & automation (API)

  • Purchase webhook — POST /api/v1/repos/{owner}/{repo}/license-keys/purchase creates a key from a payment event (Stripe, PayPal, etc.). A payment_ref makes it idempotent, so a retried webhook returns the existing key instead of creating a duplicate.
  • Validation — the public POST .../license-keys/validate endpoint checks a key + domain for client-side license checks.
  • Admin endpoints (token + repo admin) manage packages and keys — list, create, edit, delete, and view usage logs.

Where to manage it

  • Repository: {owner}/{repo} → Licenses.
  • Organization: {org} → Licenses (shared across all repos in the org).

Get help

Open a support ticket or call (931) 820-0265.