PromptProductPurchase not translating

Reproduction Steps


My game have the source language pt-br.

I have this on my LocalScript:

local IdDevProd = 1385551173
MarketplaceService:PromptProductPurchase(Player, IdDevProd)

And I have this Developer Product:

And I have a translation:



Expected Behavior

The text in pt-br for the specific Developer Product inside the prompt should be automatically translated.

Actual Behavior

In Studio I get:
tijFzKJ2Bx

And in Roblox Player:
tijFzKJ2Bx

The text in pt-br for the specific Developer Product inside the prompt should be automatically translated.

Issue Area: Engine
Issue Type: Other
Impact: High
Frequency: Constantly

5 Likes

Hey @rogeriodec_games, thanks for flagging - we’re looking into this now. We’ll keep you updated on what we find. Appreciate your patience!

3 Likes

hey @rogeriodec_games, thanks for your patience.
The ID (ie 1385551173) that you’re using to retrieve translations is actually the wrong ID.
That ID actually refers to the item’s ‘virtual economy product ID’.

For translations, we use the item’s ‘developer product ID’.

This is the API link to retrieve the correct developer product IDs for developer products linked to your universe (replace {universeId} with your experience’s ID, which in this case is 1180285076):

https://apis.roblox.com/developer-products/v1/universes/{universeId}/developerproducts?pageNumber=1&pageSize=100

You should see a response like this for your current universe:

[{"id":20821757,"name":"1.000.000 moedas","Description":null,"shopId":1180354126,"iconImageAssetId":null},{"id":20821727,"name":"500.000 moedas","Description":null,"shopId":1180354126,"iconImageAssetId":null}]

For the item named 500.000 moedas, the developer product ID to use for translations is 20821727.

Please try that and let us know if this works!

Sorry, but I think you are mistaken.

First, if you look at the OP’s screenshots, you’ll see that the prompt is showing up correctly for the product. This means the ID is CORRECT.

Well, switching to the Asset Id you mentioned:

-- local IdDevProd = 1385551173
local IdDevProd = 20821727
MarketplaceService:PromptProductPurchase(Player, IdDevProd)

… the product is not found:
image

The only problem is with the translation, not the Id.

1 Like

@hydr0h0mie @melonwhine

Just to confirm that it’s indeed a bug, adding the line below, you’ll see that GetProductInfo brings up the translated text, but PromptProductPurchase doesn’t:

local IdDevProd = 1385551173
local ProductInfo = MarketplaceService:GetProductInfo(IdDevProd, Enum.InfoType.Product)
print("ProductInfo.DisplayName: ", ProductInfo.DisplayName)
MarketplaceService:PromptProductPurchase(Player, IdDevProd)

1 Like

Hi @rogeriodec_games, thanks for the additional details, we really appreciate it. This is indeed a bug -we’ve roped in the right team to look into a fix for this.

3 Likes

Hey @rogeriodec_games - this issue should now be resolved. Please let us know if you are still running into any difficulties!