Understanding ImpulseMinio licensing

How license keys work for ImpulseMinio — the IMINIO- prefix, auto-captured install domain, the 1-hour cache and 7-day grace, and what happens at expiry.

Last updated 20 days ago

Understanding ImpulseMinio licensing

ImpulseMinio's free tier covers the complete single-region S3 product surface — provisioning, billing, customer dashboard, lifecycle, the Security & Maintenance pipeline. The licensed tier adds multi-region routing, cross-region replication, custom domains, migration, and the multi-provider cap lifts.

This article is about how the license itself works on your install.

Key prefixes

  • IMINIO-XXXX-XXXX-XXXX — production license. $499/yr, one WHMCS install.
  • IMDEV-XXXX-XXXX-XXXX — dev companion license. Used for staging WHMCS installs alongside production.

If you have both a production and a staging WHMCS, you don't need to buy two licenses. The dev companion key is bound to the same purchase.

The install domain is auto-captured

You don't enter your WHMCS domain when buying a license. On the first successful validation, the licensing endpoint records the domain straight from your install — specifically from tblconfiguration.SystemURL, not $_SERVER['SERVER_NAME'] or gethostname(). That's the domain the license is bound to from then on.

Practical consequence: if you change SystemURL (e.g. move WHMCS to a new domain), the next validation fails because the cached install domain no longer matches. You'll need to move the license through the licensing portal (see "Migrating the license" below).

How validation runs

License validation runs through ImpulseCore's shared licensing client. ImpulseMinio doesn't ship its own validation code — it calls ImpulseCore::* and trusts Core's result.

  • The WHMCS licensing API returns XML, not JSON. Core parses the response and exposes a typed result to the module.
  • Successful validations are cached for 1 hour. The next call within the hour returns the cached result without hitting the network.
  • Licensing-server errors (network blip, upstream outage) honour a 7-day grace on the last good result. Customers don't notice transient failures.
  • Every validation — success or failure — writes to Core's audit log, scoped to module impulseminio. That's where you check if licensing starts misbehaving.

Where the license shows up

  • Tools → License in the addon — paste, verify, view current status.
  • License badge in the tab strip — grey "Free" or blue "Licensed".
  • Core's Overview tab — license status alongside the module registry row.
  • Core's audit log — every validation, every failure.

What happens at expiry

  • Network blip during a validation. Cached result is honoured for up to 7 days. Customers don't notice.
  • Subscription expires (on the licensing server side). The module enters a 14-day soft-expiry mode. Licensed features keep working; the admin UI shows a banner asking you to renew.
  • 14-day soft-expiry elapses. New replication jobs, new custom domains, and new region servers are blocked. Existing customer data and configuration stay live and accessible. The Free tier surface still works.

Renew at any point during soft-expiry to restore full functionality without any data loss or customer disruption.

Migrating the license to a new domain

License keys are bound to your WHMCS SystemURL. To move:

  1. Open the licensing portal at impulsehosting.com/clientarea with the email the license was issued to.
  2. Use the Reissue / Move License action on the license row, enter the new domain.
  3. Back in WHMCS on the new server, open Tools → License → Verify License Now — the cached failure clears and the new domain is accepted.

The licensing portal allows one move every 30 days without a support ticket. Frequent moves trigger a manual review.

When validation fails

If validation starts failing and you don't think it should be:

  1. Check Core's audit log for the last validation row from impulseminio. The XML error code is logged verbatim.
  2. Confirm tblconfiguration.SystemURL matches the domain on file with the licensing portal.
  3. Confirm outbound HTTPS to impulsehosting.com/modules/servers/licensing/verify.php is reachable from your WHMCS host.
  4. Click Verify License Now on the addon's Tools tab to force a fresh check (bypasses the 1-hour cache).

Related