SubscriptionService

if possible could you add a way to make subscriptions work in multiple places? i want to make a “premium” subscription that works on all of my games, not just one specifically and so people would have even more reason to buy it

my best approach at this would be somehow hosting the data (if player’s subscription is active or not, etc) off-site, like a custom panel or some discord bot, and then the module checks if the player bought that subscription on all my games, if so, then grant access to subscription perks

then again, my approach isn’t very good and you could probably figure out an even better way in around 10 minutes, but that’s how I would do it

In sub-places it works, but on others not.

You could generate a Roblox API Key of the Purchase Place.
Then, use the API Key to access DataStoreService. (using your own hosted server, since you can’t access roblox apis with HttpService)

I’ll think more about this, find a solution and I’ll insert it into the module.


Quick Reminder:
:warning: SubscriptionService is still on Beta, and it can have unknown bugs relating to Robux Purchases. Please consider using it for meanwhile developing. If any bug is found, we’ll update as fast as possible to fix it.

I have a few questions.

How would I go on to use Roblox API keys? I can’t really figure them out.

And also, would it be possible to use ProfileService insted of DSS? It’s more secure and it’s what all my games use

  1. /dashboard/credentials

  2. Click on Create API Key
    image

  3. Name your API Key and add a description to it (opcional)

  4. On the “Access Permisions” category, add DataStore, and click “Add API System

  5. On the DataStore, type your Main Subscription Game Name, and hit enter.

  6. Click on the game

  7. On the “Security” field, add the IP of your server. (soon SubscriptionService’s server), and click “Add IP Address

  8. Add expiration for the API Key if you want.

  9. Click “Save and Generate Key
    image

  10. You will see this, click “COPY KEY TO CLIPBOARD

  11. Save your KEY! You won’t be able to see it again…

Now you have your API key created.

You can use Python modules like roblox-open-cloud-api · PyPI or NodeJS modules like rbxcloud - npm (npmjs.com) to see datastore values (what you gave access for)

If you are using this, you can’t really use ProfileService, I think.

I will change into ProfileService. Thanks!

1 Like

Thank you a lot for this, I really couldn’t figure this out and I’m definitely going to use this sometime. :upside_down_face:

Please consider doing so, it would improve this a hundred times. I can try to make it work myself if you want and send you a converted version later.

1 Like

I think you edited what I said! :sweat_smile:

“Please consider doing so, it would improve this a hundred times. I can try to make it work myself if you want and send you a converted version later.” ~ that’s what you said, not me

oops im sorry, i meant to put it there as something i said. i was trying to quote the “i’ll switch it to profileservice” (this >>>

)

:sweat_smile:

1 Like

Maybe also add where non Roblox premium gets a free trial but it’ll be less time than premiums?

1 Like

I think the game is broken I walked over the prompt but nothing happened?

I will look into it. Maybe I disabled the script or something…

man i would really like that :frowning: Can I maybe get the UI?

I don’t know how to use ProfileService. If you’d like to help me…
Also, since I’m going to add API Keys, ProfileService won’t work well.

I just updated and it’s now working back! Thanks

Why are you using ChatGPT? Generally not useful

Because it’s useful, it makes it easier to describe the code for you all, even if you understand it

I’ll attempt to fork your module to use ProfileService and send it to you, because anything that uses the default Roblox DataStoreService and is related to purchases is guaranteed to get a bunch of angry people that essentially lost their robux because whatever they bought has been erased due to DSS’s data issues (only on games with over 200+ people playing at the same time, but still a big problem).

And about API keys, I believe they use their own DataStores for storing the data; outside of the game itself. Which means you could have ProfileService to save the actual module’s data inside of the game, but still have API Keys using and sharing data using DataStores. So while API Keys would still use DSS and (Maybe) risk data loss (Again, maybe. Perhaps they’re using a more secure piece of code for the API Keys’ DataStores, but we don’t know that), the games would have their data protected by ProfileService.

4 Likes

I’m currently facing a problem and that is:

If a player doesn’t join the game, the subscription doesn’t update itself and won’t expire. Through roblox, and external services. How to fix this?

It will expire when the user joins. But the way, it’s a hard way to resolve. One thing I thought, it’s make a python script that haves access to the DataStore, and check for every user. If expired, set to NONE. It’s one of the ways to fix your problem.

I could introduce this in one update, if needed.

This would be a life saver, if you can do it. I’m busy on programming other stuff, and haven’t had the correct time to sit down and do this, thank you for this module and I’m looking forward to it.

1 Like

Any ETA on when the new subscriptionservice update will be released? What I’m reading there was a bug fixes, python scripts, and some more I believe.

Is this module intended for long term use? Such as subscriptions lasting for 30+ days where players may leave and rejoin multiple times, or is it solely for short uses where the player won’t leave the game?