I should note one important thing about our subscriptions - they are not binding. If you get a subscription for 1 month you can download, install and forever use all modules that we made (3rd party developers sell their modules as they want - subscriptions or one time fee). If you stop paying the subscription fee modules won’t stop working. They will only stop updating to newer versions. In effect we charge the fee for two things - access to updates and the right to send us direct support emails, or in other words we charge for ongoing service.
Collecting one time fee for something we have to do continually, hopefully for many years, is not sustainable and can quickly become a Ponzi scheme where development would rely on influx of new clients to pay for work needed by ever growing pool of old clients. The only workaround is to collect one time fees large enough to be able to freeze funds at interest accounts and spread them over time, ideally matching average Client LTV. But then, you can just do it yourself - set aside that money and use them to pay for monthly subscription.