Skip to content
Subset

User guide

Activating a licence

Where the licence key goes, what the key looks like, what each error message means, and why the free plugins never ask you for one.

A licence key unlocks the Pro add-on. The free plugins on WordPress.org never ask for one and never check in with us at all — if you are running a free version, there is nothing on this page you need.

What you get when you buy

One licence key, shown in your dashboard and emailed to you. It looks like this:

subset_BVVRMRVPNMP4DA5BVMNYAUMVQKG7FBNR

subset_ and then 32 characters, 39 in total. There are no 0, 1, I, L or O characters anywhere in a key — both halves of every confusable pair are left out, so a key containing one of them is simply not a key, and we never have to guess whether you meant O or 0.

The last character is a check character. It is not part of the secret; it is arithmetic over the rest, and it catches every single mistyped character and every pair of swapped neighbours before we even look the key up. That is why a typo comes back as “check this for a mistyped character” rather than “no such licence”.

Activate it

  1. Install and activate the Pro add-on for the plugin you bought.
  2. Go to Settings → Subset → Licence (placeholder — not final).
  3. Paste the key and save.

The screen then shows which plugins the key covers, how many site slots are in use, and when the term ends. On a multisite network, activate at the network level — see Multisite.

That is the whole of it. There is no account to connect, no OAuth, and no separate “deactivate on the old site first” step unless you have run out of slots.

Planned for 1.0.0

The licence screen ships with the first Pro release. The API it calls — activate, deactivate and check at api.subsetwp.com — is already live and already enforces everything described here.

What leaves your site

One HTTPS request when you save the key, and one on a schedule after that. It carries your site address, an opaque per-install id, the plugin slug, and — recorded but never parsed — your WordPress, PHP and plugin versions. That is the list.

No post content, no user data, no visitor data, no page-load-time phone home. The scheduled check is cacheable and a day-old answer is a usable one, which is what lets the plugin keep working when we are unreachable.

Messages you might see

These are the actual messages the licence API returns, with what they mean.

MessageWhat happened
That licence key looks almost right…A mistyped character. The check character did not add up — retype it
That does not look like a Subset licence keyWrong shape entirely. Usually a truncated paste, or an order number
We do not recognise that licence keyWell-formed, but not one of ours. Check you copied from the right email
This licence does not include that pluginA real key for a different plugin. The bundle covers all of them
This licence has no site slots leftSee Moving a licence
This licence has expired. Your site keeps working…Renew to restore updates and support — nothing switches off
This licence has been revoked. Please contact supportRefunded, suspended or revoked. Talk to us
Too many requests. Please try again shortly…A rate limit, not a problem with your licence. Wait and save again

“This licence does not include that plugin” is reported before expiry, deliberately: it is a fact about the key that stays true after a renewal, so renewing and retrying does not then produce a second, different complaint.

Deactivating

Deactivation is never refused. Not when the licence has expired, not when it has been revoked, not when the site was never activated in the first place — freeing a slot only ever costs us, and refusing it would strand a slot on a licence you are about to renew.

Deactivating twice is also fine, and so is deactivating a site that is already gone.

If the key will not save

  • Check the plugin, not the key. A single-plugin licence is for that plugin. The bundle covers all four.
  • Check the site address. We treat example.com and https://www.Example.com/ as one site, but example.com/blog is a different install — see What counts as a site.
  • Check outbound HTTPS. Some hosts block outbound requests from PHP by default. The plugin needs to reach api.subsetwp.com on port 443 to activate. If it cannot, the plugin still runs — you simply will not get updates until it can.