Overview

Subscription Manager (pkg_subsmgr) is a Joomla extension package for managing subscription keys across all your extensions. It provides centralised key generation, validation, expiration tracking, and usage monitoring for components, plugins, and modules.

All extensions are freely available to download as trials. Subscription keys unlock higher tiers with additional features, increased limits, and support access.

Subscription Manager is open source software released under the GNU General Public License v3 (GPL-3.0-or-later).

Subscription Keys

Generate, validate, and track subscription keys with RSA-2048 cryptographic signatures and domain binding.

Editing a subscription key in Subscriptions Manager
Editing a subscription key in Subscriptions Manager
Tiered Subscriptions

Four subscription tiers (Trial, Standard, Premium, Enterprise) with configurable feature limits per tier.

Subscriptions Manager - Product Features
Subscriptions Manager - Product Features
Extensions Directory

Built-in extensions directory with search, filtering, and integrated trial download flow for your users.

Subscriptions Manager Extensions Directory
Subscriptions Manager Extensions Directory

Installation

Step 1: Install the Package

  1. Download the latest pkg_subsmgr package from the extensions directory or from Multizone Limited
  2. Log into your Joomla Administrator
  3. Navigate to Extensions > Install > Install from File
  4. Upload the pkg_subsmgr-x.x.x.zip file and click Install

Step 2: Verify Installation

  1. Go to Extensions > Manage > Manage
  2. Search for "Subscription Manager"
  3. Ensure it shows as installed and enabled

Step 3: Initial Configuration

  1. Navigate to Components > Subscription Manager
  2. Click Options in the toolbar
  3. Configure your settings (subscription duration, email notifications, security)
  4. Click Save & Close
Tip: Extensions are freely downloadable as trials. No subscription key is needed to install or try an extension.

Getting Started

Step 1
Configure Your Extensions

Add the extensions you want to manage to Subscription Manager. Navigate to Components > Subscription Manager > Extensions and click New to register each extension with its element name, version, and description.

A sample extension (com_example) is included to help you understand the setup process. You can use it as a reference when adding your own extensions.

Edit Extension Details in Subscriptions Manager
Edit Extension Details in Subscriptions Manager
Step 2
Set Up Product Features

Define the feature limits for each of your extensions in Product Features. Product features control what each subscription tier unlocks — for example, maximum items, API call limits, or access to premium functionality.

It is your responsibility to ensure that your extension checks and respects the product feature settings for the user's subscription tier. Subscription Manager provides the limits; your extension must enforce them.

Subscriptions Manager - Product Features
Subscriptions Manager - Product Features
Step 3
Create Subscription Keys

Start creating subscription keys for your users through the Subscription Keys interface. Each key is tied to a specific user, extension, and subscription tier.

A generic trial key is automatically created for each extension to reduce friction — users can download and try your extension immediately without needing a key.

Subscription key in Subscriptions Manager
Subscription key in Subscriptions Manager

Your Subscriptions Manager Subscription

Subscription Manager itself is provided in the same way as the extensions it manages — with tiered access. It is freely available as a trial, and paid subscriptions unlock additional capabilities. Each tier builds on the previous one with additional features and higher limits.

Trial
  • Up to 2 extensions
  • Up to 10 keys
  • 1 domain
  • 50 downloads/month
  • 30-day trial period
Standard
  • Up to 5 extensions
  • Up to 50 keys
  • 1 domain
  • 1,000 downloads/month
  • Updates and support
Premium
  • Up to 15 extensions
  • Up to 200 keys
  • 3 domains
  • 10,000 downloads/month
  • Custom branding & webhooks
Enterprise
  • Unlimited extensions
  • Unlimited keys
  • Unlimited domains
  • Unlimited downloads
  • Full API & priority support

Feature Comparison

FeatureTrialStandardPremiumEnterprise
Documentation
Email Notifications
Updates
Support
Custom Branding
Analytics Basic Advanced Advanced
Webhooks
API Access
Priority Support

Tier Limits

TierKeysExtensionsDomainsMonthly DownloadsMonthly Emails
Trial 10 2 1 50 10
Standard 50 5 1 1,000 500
Premium 200 15 3 10,000 5,000
Enterprise Unlimited Unlimited Unlimited Unlimited Unlimited

Managing Subscription Keys

Creating Keys

Subscription keys can be created manually through the admin interface or automatically through API integration. Each key is tied to a specific user, extension, and subscription tier.

To reduce friction for new users, a generic trial key with an expiry date is automatically created for each extension. This allows users to download and start using your extension immediately as a trial without any manual key setup.

Key Types

  • Trial Keys — Time-limited keys for evaluation purposes. A generic trial key is created automatically for each extension so users can get started immediately.
  • Standard Keys — Includes everything in the trial tier plus software updates and access to a support page.
  • Premium Keys — Includes everything in Standard plus custom branding and webhook support.
  • Enterprise Keys — Includes everything in Premium plus API access, usage analytics, and priority support.

Key Statuses

StatusDescription
Active Key is operational. The user has access to features and updates for their subscription tier.
Suspended Key is temporarily disabled. The user reverts to trial access until the key is reactivated.
Expired Key has passed its expiration date. The user reverts to trial access. Can be renewed.

Automatic Expiry

The system automatically checks for and expires keys that have passed their expiration date each time you visit the Keys view. You will see messages about any keys that have been expired and receive notifications about keys approaching expiry.

Toolbar Actions

  • New — Create a new subscription key. Opens the key creation form where you can assign a user, select an extension, choose the tier, and set expiration dates.
  • Edit — Edit the selected key(s). Modify details, notes, or expiry dates.
  • Activate — Activate suspended or expired keys, restoring the user's subscription tier access.
  • Suspend — Temporarily disable keys without deleting them.
  • Delete — Permanently delete keys. This action cannot be undone.

Filtering and Search

Use the search and filter tools to find specific keys. You can search by key value, username, or email address, and filter by status, key type, or extension.


Security Best Practices

Important Security Recommendations
  • Use HTTPS for all key validation requests
  • Regularly review and audit active subscription keys
  • Enable logging to monitor key usage

Subscription keys are security credentials — keep them private and do not share them with others. Each key is tied to your specific subscription and domain.

Key Security Features

  • RSA-2048 Signatures — Subscription keys are cryptographically signed to prevent tampering
  • Domain Binding — Keys can be bound to specific domains with auto-registration
  • Expiration Tracking — Automatic expiry with configurable durations per tier
  • Usage Monitoring — Track usage counts and last validation dates

Troubleshooting

Check that the extension files are correctly configured and exist on the server. Verify that the directory has proper permissions and that the file is accessible to the web server.

Verify the key has not expired, is in active status, and is associated with the correct extension. Check that subscription limits have not been exceeded.

Verify your subscription key is entered correctly and is active. Check that your subscription tier includes the required features.

Subscription Manager uses the standard Joomla update system. Updates are checked and installed through Extensions > Update in your Joomla administrator, just like any other extension.

For updates to work, your server must have an active internet connection to reach the Multizone update server. If updates are not appearing, check that your server's outbound HTTP connections are not blocked by a firewall or proxy, and that DNS resolution is working correctly.

Get support

Contact us

Questions, bug reports, feature requests — get in touch.

  • Website: multizone.co.uk
  • Email: This email address is being protected from spambots. You need JavaScript enabled to view it.
  • In-app help: Each Multizone component has a checklist or explainer on its dashboard and help throughout the component.

What support covers

All Multizone extensions are freely downloadable as trials.

  • Trial — community support via the documentation and changelog.
  • Standard / Premium / Enterprise — direct email support; response priority scales with tier.

Documentation and changelogs for every extension can be found at multizone.co.uk/documentation.

Licences, trademarks, source code licences and attributions

928uk® is a trademark of Multizone Limited, registered in the UK. Multizone and this site is not affiliated with or endorsed by The Joomla! Project™. Any products and services provided through this site are not supported or warrantied by The Joomla! Project or Open Source Matters, Inc. Use of the Joomla!® name, symbol, logo and related trademarks is permitted under a limited licence granted by Open Source Matters, Inc. AdMob™, AdSense™, AdWords™, Android™, Chrome OS™, Chromebook™, Chrome™, DART™, Flutter™, Firebase™, Firestore™, Fuchsia™, Gmail™, Google Maps™, Google Pixel™, Google Play™, Pixelbook Go™, and Pixel™ and other trademarks listed at the Google Brand Resource center are trademarks of Google LLC and this site is not endorsed by or affiliated with Google in any way. Apple and the Apple logo are trademarks of Apple Inc., registered in the U.S. and other countries. App Store is a service mark of Apple Inc. The OSI logo trademark is the trademark of Open Source Initiative. Any other product or company names may be trademarks™ or registered® trademarks of their respective holders. Use of these trademarks in articles here does not apply affiliation or endorsement by any of them.

Where the source code is published here on multizone.co.uk or on our GitHub by Angus Fox, Multizone Limited it is licenced according to the open source practice for the project concerned.

BSD 3-Clause "New" or "Revised" Licence
Original source code for mobile apps are licenced using the same licence as the one used by "The Flutter Authors". This Licence, the BSD 3-Clause "New" or "Revised" Licence (bsd-3-clause) is a permissive licence with a clause that prohibits others from using the name of the project or its contributors to promote derived products without written consent.
GNU General Public Licence v3.0 or later
Original source code for Joomla! published here on multizone.co.uk by Angus Fox, Multizone Limited is licenced using the GNU General Public Licence. This Licence, the GNU General Public Licence Version 3 or later (gpl-3.0+) is the most widely used free software licence and has a strong copyleft requirement. When distributing derived works, the source code of the work must be made available under the same licence.

Please respect the licences and dont use the name of this site or our company to promote derived products without written consent. I mean, why would you? You're not us!

Amazon Associate
As an Amazon Associate we earn from qualifying purchases.
Logo
Our Logo Image is by Freepik. We chose it because its an M and also the letter A twice - and that represents us.
Graphics
Our images representing user experience and interface design are from Freepik here and here and here and here and here.