Break and Steal an EggOwner documentation← Portfolio

#Products & Pricing

The shop UI includes passes, currency packs and potions. Every ProductId and GamePassId is currently 0, so the presence of a price label does not mean checkout is configured.

Shop with configured Robux display prices
Actual Studio shop UI. The shown values are configured display prices until valid Roblox offers are connected.

#Connect your Roblox offers

  1. Create the relevant game passes and developer products for your own experience.
  2. Fill GameConfig.Marketplace.GamePassIds and ProductIds with their numeric IDs.
  3. Match each array position to the corresponding item or pack in GameConfig.Shop.
  4. Restart the server and verify the fetched price and Roblox purchase prompt.
  5. Test granting, rejoining and receipt retries before enabling the offers for players.

The IDs for passes and developer products are different categories. Do not put a pass ID into a repeatable-product slot.

#Configured pass labels

Pass keyDisplay price
DoubleCash149 R$
ExtraPetSlots99 R$
DoubleSpeed149 R$
DoubleGrowth99 R$
FastSwing99 R$

#How prices behave

ShopClient.setPrice starts from Marketplace.DisplayPrices. If the offer has a valid ID, it queries Roblox with GetProductInfoAsync and replaces the label with PriceInRobux from that response. Roblox controls the actual checkout price.

Change display prices in the configuration and set the corresponding real price in Creator Dashboard. A display-price edit alone cannot change an actual Roblox offer.

#Receipts and gifts

ShopServer grants developer products through ProcessReceipt, tracks purchase IDs and saves before confirming the receipt. Keep one authoritative receipt handler; adding a second unrelated script that assigns ProcessReceipt can replace this game's handler.

Gifting requires a supported product mapping, an online recipient and valid GiftProductIds. A gift icon does not make unconfigured passes giftable. Inspect ShopServer and test the exact offer before exposing it.

#Before going live

Review every enabled card, verify the grant matches its copy, and test failed or cancelled prompts. There is no client-side shortcut that grants a purchase just because its button was clicked. Unconfigured checkout produces an unavailable message.