Technical producer focus
Turn the purchase into named states and transitions. Separate the player-facing prototype from identity, persistence, native billing, security, and refund work.
Technical Producer guide · HTML5 Games · Koin purchase UX
Use a prototype that runs in a browser to work through purchase confirmation for HTML5 games. The goal is to make the player journey concrete before the team commits to native commerce implementation.
Create this game flow
Turn the purchase into named states and transitions. Separate the player-facing prototype from identity, persistence, native billing, security, and refund work.
Design for the input, layout, interruption, and return behavior players expect from HTML5 games.
Browser delivery does not prove native store billing or platform approval.
Show one non-required item, its preview, specific Koin amount, current Koin balance, and ownership rule in a layout suited to HTML5 games.
Write how to show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. Keep each change visible to the player rather than hiding it in technical state.
Make a player cancellation, too little Koin, pending, interrupted delivery, and reload visually distinct, with a safe next action.
Map preview, confirmation, a cancelled choice, a Koin shortage, pending, success, delivery, owned, and reload. Give every failure a safe next action. Use the prototype to resolve player-facing questions before creating platform integration tasks.
For a technical producer, this purchase confirmation prototype should make every player action and result shown in the game easy to evaluate. Write how to show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. Map preview, confirmation, a cancelled choice, a Koin shortage, pending, success, delivery, owned, and reload. Give every failure a safe next action. Assume a player may open the game from a link in a new browser with limited prior context. Put item identity, Koin balance, and the return route inside the playable experience.
Try refresh, back navigation, a second tab, and returning after the page was suspended. A browser interaction must not imply native-store ownership or silently repeat a delivery action.
If the game uses a canvas, make focus, keyboard input, scaling, and purchase overlays cooperate. Closing the choice should restore game controls without leaving hidden buttons or trapped focus.
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.
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.
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.
The confirmation should repeat the selected item, exact Koin amount, current Koin balance, remaining balance, and ownership rule without introducing a different offer. Test that behavior using HTML5 games. Browser delivery does not prove native store billing or platform approval.
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 HTML5 games. Browser delivery does not prove native store billing or platform approval.
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 HTML5 games. Browser delivery does not prove native store billing or platform approval.
Choose the input and screen behavior for HTML5 games. State the platform limit beside the prototype brief.
Result: An honest scope
Write how to show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. Describe the player action and visible response at each point.
Result: A clear purchase confirmation sequence
Show the item, exact price, balance, confirm, cancel, pending, success, and delivery without payment-provider screens.
Result: A complete player journey
Map preview, confirmation, a player cancellation, too little Koin, pending, success, delivery, owned, and reload. Give every failure a safe next action.
Result: Technical producer focus
Interrupt delivery, repeat the input, and reload. The prototype should never grant twice or leave the player in an unexplained state. Repeat the test after interruption and reload.
Result: A stable prototype
Create a shareable browser session for a technical producer. Focus the IAP prototype on show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. Use a direct Koin item transaction with preview, exact price, confirmation, cancel, insufficient balance, success, delivery, and reload behavior. The technical producer must be able to name every state, owner, failure path, and expected check. Do not add subscriptions, payment-provider UI, revenue analytics, or native platform claims. State this boundary: Browser delivery does not prove native store billing or platform approval.
Keep the item optional. Show its full price in Koin, Koin balance now, confirm, cancel, low-balance, success, visible delivery, and reload states.
Write how to show the exact item, Koin amount, balance impact, and explicit confirm/cancel actions. The result is shown as a playable Koin flow.
No. The player spends Koin directly on one named item or unlock.
Return to the same game state without spending Koin or delivering the item.
Explain the shortage, preserve progress, and do not deliver the item.
No. It covers the player-facing purchase experience, not financial reporting.
No. Browser delivery does not prove native store billing or platform approval.
Open the complete prompt in SEELE, adjust the item and Koin price, then generate a playable version you can test.
Open this prompt in Workspace