If you want to sell a plugin that you are continuously improving or expanding, the marketplace needs to allow some form of subscription-based licenses. You cannot offer a lifetime of updates for a fixed price, it is unsustainable. The premium plugins I know in Wordpress include only 1 year of updates (per site) for this very reason. Those that don't either will evolve or disappear.
Unfortunately, the marketplace only allows one-time purchases at the time of this writing.
You can follow the discussion about subscription-based licensing on GitHub:
And read my previous posts about subscription-based licensing:
- Read my previous post about sustainable product pricing here
- Read my previous post about the lifecycle of a plugin here
How to setup subscriptions for plugins on the marketplace without recurring payments
I was brainstorming this problem and came up with a possible construction to restrict plugin updates to 1 year until the marketplace allows subscription-based licensing. Note that this is purely an academic concept and I have no plans to switch to this model for any of my current plugins.
1) Create a base plugin
This plugin creates the database infrastructure and perhaps offers some very basic functionality, but nothing else. This base plugin could be offered for free to attract new users and build a reputation with reviews and ratings.
2) Create a versioned extension
This extension will be updated for 1 full calendar year (e.g. 2019). On the 1st of january of the next year, the old version will no longer receive any more updates. To receive additional updates users have to purchase an upgrade to the next version (e.g. 2020). Alternatively, users can decide not to update and maintain their version of your plugin themselves.
Any future changes to the database need to be made in the base plugin so users are free to uninstall extension version X and install extension version Y without losing data.
If needed, an update to the base plugin can alert the user about breaking changes to previous versions and ask them to confirm the update (e.g. !!! This update is only compatible with extension version Y or later).
If users purchase your extension later in the year, you could offer a discount using coupons. You could simply display the coupon-code on the plugin page.
Thanks for this information, it is quite helpful. But can you help me detail the step-by-step procedure of how to install it and how to use it? Regards, Lewis
1-2 of 2