Если у вас онлайн, то вам повезло, сделайте работу платного функционала зависимой от вашего сервера (например часть задач выполняйте там), чтобы без сервера ничего не работало бы. В идеале обфусицировать взаимодействие (сделать так чтобы в пределах одной задачи код работал последовательно то на клиенте то на сервере потом снова на клиенте, только следите чтобы не в ущерб скорости), чтобы отреверсить работу сервера было сложнее чем написать ваш платный функционал заново.
В самом простом случае, можете реализовать ВЕСЬ платный функционал на сервере, а на клиенте только интерфейс (вернуться во времена http rest архиетктуры, ну с оглядкой на эффективность и отзывчивость).