I'm trying to design a policy for processing (or refusing) refunds for 
unmanaged in-app purchases.  Refunds for managed purchases are quite simple 
in concept since the app can simply "unflip the bit" that the managed 
purchase corresponds to.  If you granted access to higher levels, you can 
simply take them away again.  The refund is tightly correlated with the 
account and the device so you (the developer) don't have to keep that 
association, you let google process the money and you let the app "undo" 
the managed purchase.

However, unmanaged purchases are kind of messy.  You can buy the same thing 
over and over again, they cannot be easily associated with a google account 
to verify the inventory, and unmanaged purchases are often nonbinary in 
nature, i.e., if an unmanaged purchase is in-game-currency (canonical gold 
coins) then you could buy 100 coins for $.99 and spend half those coins in 
the game...and then -- rather unfairly -- want a refund of your original 
purchase.  It is difficult from for the developer to identify that this is 
an unfair request at the time the refund request is made, so the developer 
cannot easily determine whether to refuse the refund.

As described above, it is difficult to flatly refuse to grant refunds on 
unmanaged purchases because it is difficult to determine whether the 
original purchase has been fully or partially "used up" in the game.  I am 
attempting to implement a server-side database of unmanaged purchases so I 
know who had bought what *and* the extent to which those purchased items 
have been used up...but it is difficult to associate google purchases 
(google accounts) with devices or app installations...and it is devices 
which would report their unmanaged purchases to my server, not google 
accounts.  Sure, my app can identify itself with a UUID, but how do I know 
which *google account* that installation (and its unmanaged purchases) go 
with.  To put it differently, if I receive a refund request, how do I look 
the installation up in my server database to see if the unmanaged purchase 
has been partially or fully used up such that the refund request from that 
google account is unfair and should be denied?

At any rate, I'm just swimming through these issues trying to decide how I 
want to handle them, and I'm extremely curious what sorts of solutions 
other developers have come up with.  This could make for a very riveting 
discussion if others care to participate.

*Cheers!*

Cheers!

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to