Focus on item value and UX
For a technical producer, this purchase confirmation prototype should make every player action and result the player can inspect easy to evaluate. Write how to show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. Map preview, confirmation, a player cancellation, not enough Koin, pending, success, delivery, owned, and reload. Give every failure a safe next action. Use the concept to test where an offer belongs, what the player understands, and how delivery appears in play. Do not label simulated Koin as Robux or a Roblox developer product.
Respect experience context
Consider shared sessions, avatar identity, age context, moderation, and platform interface expectations. Avoid fake platform dialogs or claims that an external browser state proves Roblox ownership.
Create a separate Roblox plan
Developer products, marketplace rules, receipts, persistence, refunds, security, and platform review need Roblox-specific implementation. Carry only the tested player promise and state scenarios forward.
Name every state and owner
Separate preview, confirmation, pending, success, delivery, owned, insufficient Koin, cancel, interrupted, and reopened states. Assign later production work for identity, persistence, native billing, security, refunds, policy, and monitoring.
Define idempotent recovery
Repeated confirmation, a slow response, navigation during delivery, and reopening must resolve to one result. Record which state is authoritative and how the player can safely retry without another grant or Koin deduction.
Turn the prototype into tickets
Capture the visible behavior first, then create implementation tasks with expected examples for each transition and platform boundary. Do not translate a working browser interaction into an unsupported claim that backend commerce is complete.
Repeat the complete choice
The confirmation should repeat the selected item, exact Koin amount, visible Koin balance, remaining balance, and ownership rule without introducing a different offer. Test that behavior using Roblox experience designers. This page does not create Roblox developer products or process Robux.
Separate confirm from cancel
Use distinct actions with clear labels and enough spacing for the target input method. Returning to the game should never spend Koin. Test that behavior using Roblox experience designers. This page does not create Roblox developer products or process Robux.
Prevent repeated confirmation
After confirmation, show a pending state and disable repeated input until the result is known. A slow response should not create duplicate grants. Test that behavior using Roblox experience designers. This page does not create Roblox developer products or process Robux.