WP Plugin with Upgrade option

If you want your plugin being hosted on WordPress.org Plugin Repository, you cannot combine Free and Premium version, in one plugin.

You have to maintain two versions, Lite, hosted on WordPress.org, and Premium, hosted on your website.

Plugins hosted on WordPress.org cannot make any remote requests to your website ( aka “calling home” ), therefore, you will not be able to maintain your customers, their licences, payments, and downloads.