Design for touch and small screens
For a technical producer, this inventory delivery prototype should make every player action and clearly displayed outcome easy to evaluate. Write how to connect successful purchase to a visible owned or quantity state. Map preview, confirmation, cancellation, too little Koin, pending, success, delivery, owned, and reload. Give every failure a safe next action. Use comfortably separated confirm and cancel controls, readable Koin amounts, and a layout that survives portrait, landscape, browser chrome, and an on-screen keyboard without hiding the item.
Expect interruption
Simulate locking the phone, changing tabs, receiving a call, and returning with a slow connection. The player should see one understandable result and retain a safe route back to play.
State the platform limit
A mobile browser prototype is not an App Store or Google Play binary. Native billing APIs, device identity, refunds, entitlements, and submission need separate implementation and review.
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.
Connect success to the item
A success message is not delivery. Place the cosmetic, consumable, unlock, or upgrade in the screen where the player expects to use it. Test that behavior using mobile web games. Mobile web is not the same as an App Store or Google Play binary.
Show ownership and quantity
Use owned, equipped, unlocked, or remaining quantity as appropriate. The state should match the promise made on the offer card. Test that behavior using mobile web games. Mobile web is not the same as an App Store or Google Play binary.
Verify delivery after reload
Reload the prototype and return to inventory. The item should remain visible without subtracting Koin or granting a second copy. Test that behavior using mobile web games. Mobile web is not the same as an App Store or Google Play binary.