My personal experience with this during testing is that Roku keeps track of the subscriptions and purchases and will block the transaction from repeating if you try to make a person pay for a subscription product again.
They'll get a courtesy dialog box on their screen telling them that they've already paid for the subscription product.
Hello, the issue that is happening is that when a subscription based channel gets deleted and you try to install it again and your subscription is still valid, the channel with either do two things, 1 - say re-subscription was successful and will be on the Home screen but every time the channel is launched it will keep saying you need to subscribe again and so on or 2 - the channel will just say the channel installation failed and Roku says it must be a channel issue. So what users have done in the past is to either 1 - create a new Roku account or 2 - wait a month after the current subscription date has expired then re-subscribe.
It sounds like a Roku issue since the payment is managed prior to channel installation and it's not dealing with in-channel services. I'm pretty sure that GetPurchases only returns the in-channel services/products.