4

I'm testing IAP with the Google in-app billing API in my Android app. I've made a test purchase, then did a refund on the Google Play Console. I can see the order status is now refunded.

However, when I run the app, I can see that the BillingClient can still find the purchase that was refunded (matched the same order number as the refunded order).

It was working before on previous refunds, but not anymore. I believe the issue is that queryPurchasesAsync may be using a cached result and not getting the latest purchases that the user has made.

Based off Refund customer in-app purchase but BillingClient still indicate user has purchased?, it was suggested to call queryPurchaseHistoryAsync to try to clear the cache. I've done this and waited 24 hours but still can see the purchase in the purchase list.

Is there something going wrong here?

SmallGrammer
  • 893
  • 9
  • 19

1 Answers1

0

I had the same problem, but then i realised I did'n check the "Remove entitlement" checkbox when refunding in the console... If you don't check it - the client gets refund, but keeps the purchase :) so the product is indeed returned when you query it in the app.