As I understand it, the user pays asynchronously (confirmation of payment can come immediately and in a day or two), and gets access to the service — it can execute requests many times.
In this case, user authorization is needed: login / password, and optionally a cookie, in order not to log in every time. In the database, store the table of accounts: status (paid?), Subscription expiration date (they did not buy themselves access forever), ip from which they came. When changing the address, you can ask to re-login if the application is not for mobile phones. And only through https work, of course.
Without registration, it is also possible, if you become attached to cookies and ip. The link in the letter "thanks for payment, here is your link" leads to a script that
- remembers this visit: date, ip, user-agent;
- puts a cookie, on which you can then enjoy the rights of this user.
Once again, everything is https only.
At other times, the user goes directly to the site that checks this cookie, compares it with the user-agent and, maybe, also the IP, and if everything is ok, it serves.
If not ok - you need to follow the link in that letter again and stamp yourself with a cookie.
And once again: everything is only on https !