As the title says, GetSubscriptionProductInfoAsync can only be ran on the client, which is not documented here: MarketplaceService | Documentation - Roblox Creator Hub
Example of the issue:
game.MarketplaceService:GetSubscriptionProductInfoAsync("EXP-XXXXXXXXXXXXXX")
-- Error: Can only call GetSubscriptionProductInfoAsync from Script with RunContext = Client
Expected behaviour:
game.MarketplaceService:GetSubscriptionProductInfoAsync("EXP-XXXXXXXXXXXXXX")
-- Returns the subscription information
Use cases:
If I want to announce to every server that a player subscribed to a subscription, I am currently unable to get it’s price & other variables.
Issue Type: Incorrect behavior / documentation
Impact: Medium
Frequency: Constantly
Edit: I feel like it was meant to be ran on the client because it says “Localized price with the appropriate currency symbol for display (for example, $4.99). For users in unsupported countries, DisplayPrice returns a string without specific price information.”, however I feel like the server should just default to dollars, so I’m not sure if this falls under bug reports or feature requests, because I feel like the server should be able to access that info as well.