Thanks for the reply, but I already fixed it.
Your link didn't help at all though, as I know how to set up the IAP, and it was working correctly, apart from the fact that I got charged. I clearly wrote that it worked, that my app was in testmode AND that I got testaccounts. I did however not mentioned that my app was ALSO in Alpha test mode.
I thought the alpha channel was specifically for this kind of testing, and as long as I had the user’s Gmail address on the whitelist, the transaction wouldn’t post. Wrong. The whitelist is ignored for published APK versionCodes.
In fact, it’s even a bit worse than that – the whitelist is ignored for all versionCodes less than or equal to anything published. Let me illustrate that with a concrete example:
1. The production versionCode of my app is 9 – that’s my baseline, before I started implementing IAB.
2. After I had a first cut of IAB done – with versionCode 10 – I published it to my alpha-test group and had a whitelisted user try it. He got charged, because 10 wasn’t unpublished.
3. Learning from these mistakes, I uploaded a later version (13) to Google Play, but did not publish it. I then emailed the APK to some whitelisted testers, who successfully used the IAB feature without being charged.
4. Moving closer to release, I built versionCode 14 and published it to beta. I fully expect users of this version to be charged, and they are.
5. However: the next day, one of my whitelisted test group from step 3 – still on versionCode 13 – tried out the IAB and got charged for it. My best explanation for this is that, even though 13 is still unpublished, the whitelist is ignored, because 14 is published.
source: https://sterlingudell.wordpress.com/201 ... n-android/