Store

Loading store…

Billing Diagnostics

Use this panel on a device running the installed TWA (not a plain Chrome tab). It runs feature checks and a sample getDetails call.

/>
Available products: coins_10, coins_100, coins_1000, coins_2500, coins_5000, coins_10000

Active Purchases (from Play)

Lists current unacknowledged / unconsumed purchases returned by digitalGoods.listPurchases(). Use a row's Fill button to auto‑populate Recovery. Refresh after recovering to confirm it disappeared.

Recovery ("You already own this item")

If Play blocks a new purchase with You already own this item, the prior token wasn’t consumed yet. Enter the productId and its purchaseToken then press Recover. You can obtain the token from a previous Test Purchase Result or server logs.

Expectations for success:

  • paymentRequestInWindow = true
  • hasDigitalGoods = true (for price fetching)
  • sampleGetDetails returns an array with your product
  • canMakePayment = true (optional but nice)

If hasDigitalGoods is false inside the TWA: verify Play Store Chrome up-to-date, origin verified (asset links), and app installed from Play (internal test track) with products active.

TWA Status Check: window.matchMedia('(display-mode: standalone)').matches = loading...