I have upgraded the billingclient library today from:
//implementation 'com.android.billingclient:billing:1.2.1'
//to
implementation 'com.android.billingclient:billing:2.0.3'
I have also completed the required code changes, such as using setSkuDetails instead of setSku, defining a SkuDetailsResponseListener, etc.
Everything seems to be working fine. However, during testings I have noted that my test orders are automatically refunded exactly after five minutes. Clearly this is not happening from my code, because the refunds happen even after turning off my device.
The following is the observed sequence in "Order Management" page of the Google Play Console for one of the testings:
Nov 25 2019 21:10:21, Payment pending, You received a new order.
Nov 25 2019 21:10:21, Chargeable, The customer's form of payment was authorized for $0.00.
Nov 25 2019 21:15:22, Refunding, A refund of $0.99 was initiated on this order.
Nov 25 2019 21:20:22, Charged, The customer's form of payment was successfully charged for $0.00.
Nov 25 2019 21:20:22, Refunded, Google processed your request and applied a refund of $0.99.
Also, I'm not using the reserved product ID for testing static Google Play Billing responses ("android.test.purchased"). I'm using my real Product Id in a testing device using license testers registered in the Google Play Console.
It is giving me enough time to test everything, but is this refund intentional ?
com.android.billingclient:billing-ktx:3.0.3
– Clayborn