Hi guys! I have been trying to fix this for 2/3 weeks now and I still cannot get it work! It is really getting annoying now :/ ANY help would be appreciated! Thanks :)
I have this dev product - It lets me purchase it and it takes my money but doesn't display the gui or change the value :( Any ideas? Thanks!
Script in button in the Workspace:
local MarketplaceService = game:GetService("MarketplaceService")
local productId = 19750967
MarketplaceService.ProcessReceipt = function(receiptInfo)
for i, player in ipairs(game.Players:GetChildren()) do
if player.userId == receiptInfo.PlayerId then
if receiptInfo.ProductId == productId then
player.PlayerGui.ChoosingMap.Frame.Visible = true
game.Workspace.ChooseMap.Value = true
end
end
end
return Enum.ProductPurchaseDecision.PurchaseGranted
end
localscript in the starterpack:
local buyButton = game.Workspace.Choosemapbutton.SurfaceGui.TextButton
local productId = 19750967
buyButton.MouseButton1Click:connect(function()
game:GetService("MarketplaceService"):PromptProductPurchase(game.Players.LocalPlayer, productId)
end)

3 comments
Why is the button in workspace?
It is a surfacegui button
How many times are you defining ProcessReceipt in all of your scripts in that place? Using Ctrl+Shift+F and searching for ProcessReceipt would be the easiest way to find that out.