I am developing some paid for premium features for my plugin which is already available in the WP Repo.

What are the best ways to validate licensing etc. for premium features? I want to continue to use the repo so "calling home" is not an option as it is against plugin guidelines.

These features are to be purchased annually so there is an expiry to consider. I'm fine with the coding side of things, just looking for a best practice method to provide a license of type without users being able to manipulate the expiry date - I accept the date will be within the DB somewhere and I am fine with that - I trust the users not to manually change

thoughts appreciated


1 Answer 1


The only 100% way to get a paid subscription kind of service working is to move part of the functionality to an external server which is under your control and manage payment, expiry, etc there.

When the code is not under your control you can not limit its use, this is a very basic life fact of software development, especially when the source code can be easily modified. "Calling home" by itself doesn't really help much if I can edit the code and remove the check without hurting the functionality.

Since you can not prevent "bad users" from manipulating your code it is better to avoid thinking too much about protection. If your plugin will provide actual service in a good price point then most people will be willing to pay for it instead of wasting time on pirating it.

Not the answer you're looking for? Browse other questions tagged or ask your own question.