ThirdPartyPrompt | Making AllowThirdPartySales readable again

As many of you know, the AllowThirdPartySales property under workspace is deprecated and non-functional. AllowThirdPartySales has been an internal game configuration for years now, unchangable and even unreadable at runtime for normal scripts.

ThirdPartyPrompt is a lightweight utility designed to indirectly restore the readability of that setting.

:file_folder: Get the Asset here for free


The ModuleScript provides two simple client-side functions.

module.PromptThirdPartyPurchase(modelId: number): boolean

Prompts the purchase of a specific modelId to the user. This function assumes the asset does not belong to the experience owner (it does not perform owner verification).
Returned boolean is neither a consistent marker for a successful purchase nor for the AllowThirdPartySales property.
Note: You must call this function first to force Roblox to evaluate the purchase request and trigger the possible rejection of transaction needed for the next function!


module.GetAllowThirdPartySales(): boolean

This returns the deduced AllowThirdPartySales property after PromptThirdPartyPurchase was ran.
The returned value should be interpreted as follows:

nil = PromptThirdPartyPurchase hasn’t been run yet or has been run incorrectly
false = AllowThirdPartySales is very likely disabled
true = It is assumed that AllowThirdPartySales is enabled