I’m currently making an online service in which someone can click the buy button, and they will be taken to the PayPal site where they can pay an auto renewing bill. After, their account will be granted with full access to the server. Here’s my plan:
Once the user clicks the buy button, they are first taken to a page on my website which shoots their IP into a database. They are redirected to the PayPal page, which is set to redirect to another page on my site after a successful purchase. PHP will check the IP and see which user it belongs to. A username and password box is shown, and if details have been entered correctly, PHP pulls up their user records and tells the database they have paid.
It seems like it will work, I just have one problem. I’m not 100% sure, but I believe to cancel subscriptions they need to go through PayPal. If so, how would I set it to tell my database if the user has paid, so that it can stop giving out the service to this person if they cancel?
Unfortunately, I don’t have a good answer to the question you are asking, but I would like to help with the previous paragraph.
Paypal as a very extensive API system allowing your website to confirm which user actually paid. I personally haven’t used it to the extent you are planning, but I’ve seen it done many times. You can have PayPal post the completion variables back to your website. I’m sure their forum has links to "the right way" to do this.
Again, I don’t know how your website can make sure someone is still up to date on their Paypal subscription. This sounds like a good question for the paypal developer forum.