PromptBundlePurchase results in core package error

Attempting to purchase a bundle (e.g. Roblox Running Shoes - Red - Roblox) in our experience with PromptBundlePurchase results in a CorePackages error.

Code:

game:GetService(“MarketplaceService”):PromptBundlePurchase(player, 895)

Error:

  16:38:46.534  Error: attempt to perform arithmetic (add) on number and nil  -  Client - makeConsoleImpl:79
  16:38:46.534  CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.forks.SchedulerHostConfig.default:117: 
------ Error caught by React ------
attempt to perform arithmetic (add) on number and nil
------ Error caught by React ------
CorePackages.Packages._Index.IAPExperience.IAPExperience.ProductPurchaseRobuxUpsell.ProductPurchaseRobuxUpsell:133
CorePackages.Packages._Index.UIBlox.UIBlox.Style.withStyle:13 function render
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberBeginWork.new:3132 function updateContextConsumer
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberBeginWork.new:3553 function beginWork
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:245
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:1946
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:1834
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:1783
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:919
CorePackages.Packages._Index.ReactReconciler-d86ebb2a-ca453478.ReactReconciler.ReactFiberWorkLoop.new:837
CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.Scheduler:304
CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.Scheduler:260
CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.forks.SchedulerHostConfig.default:81 function doWork
CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.forks.SchedulerHostConfig.default:104 function performWorkUntilDeadline
  -  Client - SchedulerHostConfig.default:117
  16:38:46.534  Stack Begin  -  Studio
  16:38:46.535  Script 'CorePackages.Packages._Index.Scheduler-d86ebb2a-ca453478.Scheduler.forks.SchedulerHostConfig.default', Line 117 - function performWorkUntilDeadline  -  Studio - SchedulerHostConfig.default:117
  16:38:46.535  Stack End  -  Studio

Expected behavior

The bundle purchase prompt opens and a user is able to purchase the bundle.

3 Likes

Thanks for the report! We’ve filed a ticket in our internal database.

1 Like

Hello @SME_DEV2,

Is this issue still occurring and does it occur when trying to purchase other bundles in your experience?

1 Like

Yes, this issue still occurs. This issue happens with any product ID passed in that is a bundle (dance bundles, shoe bundles).

We’ll try to take a look and resolve it. Interesting since this same PromptBundlePurchase usage behaves as expected in other experiences.

2 Likes

I’ve witnessed this in our experiences before, for us it only occurred when the user did not have enough Robux to purchase the bundle. Additionally, it only happened while testing in studio, in the published experience it worked every time.

Having the same issue, but it is only occurring in studio, works fine in live game.

Our team is currently unable to replicate this error. If there is any more info that can be provided please let us know.

We are able to consistently replicate this on a new account that has no Robux within Roblox Studio.

Hello, could you try again in Studio with an account that has enough Robux to purchase the item? Having sufficient funds is one requirement for being able to purchase a Bundle in Studio

I can confirm that we are no longer getting this error in Roblox Player. If a user does not have Robux or insufficient funds on their account the error still occurs, if the user does have Robux with sufficient funds on their account the prompt appears.

Unfortunately the behavior you stated that having sufficient funds is a requirement for being able to purchase a Bundle in Studio is not documented anywhere (e.g. MarketplaceService | Documentation - Roblox Creator Hub). Are there plans to enable the pop-up to show the insufficient funds version, rather than requiring a full amount of Robux on each developer account?

1 Like

This issue is occuring for me when I try to prompt the player to purchase the Korblox Deathspeaker bundle via clicking a button. Is this happening for anybody else?

This does not occure with any other bundles.

1 Like

I tried reproduce it on my alt that has no robux at all on a fresh new baseplate, but somehow it’s seemingly fixed as there’s now a test purchase prompt rather than nothing and an error

i typed the code on the command bar btw

nevermind the fix only affects what i said in the 1st paragraph, i tested on a existing place and still

 19:47:33.811  Error: Unable to find localization with key: IAPExperience.PurchasePrompt.Text.BuyItemQuestionWithWarning  -  Client
  19:47:33.811  CorePackages.Packages._Index.Scheduler.Scheduler.forks.SchedulerHostConfig.default:117: 
------ Error caught by React ------
Unable to find localization with key: IAPExperience.PurchasePrompt.Text.BuyItemQuestionWithWarning
------ Error caught by React ------
CorePackages.Packages._Index.IAPExperience.IAPExperience.Locale.LocaleService:63 function getString
CorePackages.Packages._Index.IAPExperience.IAPExperience.Locale.MultiTextLocalizer:33 function render
CorePackages.Packages._Index.IAPExperience.IAPExperience.Locale.LocaleConsumer:19 function render
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberBeginWork.new:3132 function updateContextConsumer
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberBeginWork.new:3553 function beginWork
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:245
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:1946
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:1834
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:1783
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:919
CorePackages.Packages._Index.ReactReconciler.ReactReconciler.ReactFiberWorkLoop.new:837
CorePackages.Packages._Index.Scheduler.Scheduler.Scheduler:304
CorePackages.Packages._Index.Scheduler.Scheduler.Scheduler:260
CorePackages.Packages._Index.Scheduler.Scheduler.forks.SchedulerHostConfig.default:81 function doWork
CorePackages.Packages._Index.Scheduler.Scheduler.forks.SchedulerHostConfig.default:104 function performWorkUntilDeadline
  -  Client
  19:47:33.811  Stack Begin  -  Studio
  19:47:33.812  Script 'CorePackages.Packages._Index.Scheduler.Scheduler.forks.SchedulerHostConfig.default', Line 117 - function performWorkUntilDeadline  -  Studio
  19:47:33.812  Stack End  -  Studio