Handling refund/revoke situations

Greetings fellow developers,

We’ll be releasing our new game soon on iOS, Android(Google Play/Amazon) with IAP, letting the user to play the first 3 levels and sell them the remaining levels after for 0.99.

My question is; Google Play and Amazon have the option to refund/revoke the purchase. In that case, what should I do to prevent the user from playing after they refund/revoke the purchase? How do you handle it?

Thank you,

Serkan

@Serkan,

On iOS, when you initialize your store connection, you send it a list of ‘products’ and the store replies with two lists:

  • valid products
  • invalid products

My hope is, once someone buys a non-consumable product that it will come back in the invalid list. i.e. This way you know they can’t buy it again.   

So, when they buy it, you mark locally it was bought.  Then, every time the game relaunches, simply connect to the store and check your list.  If the product moves back over to the ‘valid list’, you know they got a refund.  Mark the product un-purchased in your local storage again.  Oh, and pop up a message telling those cheap B!@#$# what you think of people who try to bypass the system.  :angry:

Hopefully someone will be able to chime in and confirm or deny my logic here.

-Ed

PS - I helped you a while back on a project right?  If so, can you remind me of the game name?  It was a hidden object game that had a problem with squeeze.  Thanks

Hi Ed,

Yes, it’s me :slight_smile: I think I forgot to send you a mail when the game was out. It’s “Tales of the Sanctuary: Chapter 1”. I’m sending you one right now, with a promo code for the game.

That’s harsh Ed :smiley: Not harsh but, you know :smiley:

The problem is not with iOS because Apple doesn’t give refunds but Google Play and Amazon does.

Actually that was something I was trying to avoid because we got a review from a player that she can’t get past the Licensing process so we had to give that up. In case I try to handle it, I would need to take extra measures to let our paying customers play the game while they’re offline. Maybe adding a timer or something but it’s annoying and we can get too many negative reviews for that. I’m wondering if it’s worth the risk.

@Serkan,

On iOS, when you initialize your store connection, you send it a list of ‘products’ and the store replies with two lists:

  • valid products
  • invalid products

My hope is, once someone buys a non-consumable product that it will come back in the invalid list. i.e. This way you know they can’t buy it again.   

So, when they buy it, you mark locally it was bought.  Then, every time the game relaunches, simply connect to the store and check your list.  If the product moves back over to the ‘valid list’, you know they got a refund.  Mark the product un-purchased in your local storage again.  Oh, and pop up a message telling those cheap B!@#$# what you think of people who try to bypass the system.  :angry:

Hopefully someone will be able to chime in and confirm or deny my logic here.

-Ed

PS - I helped you a while back on a project right?  If so, can you remind me of the game name?  It was a hidden object game that had a problem with squeeze.  Thanks

Hi Ed,

Yes, it’s me :slight_smile: I think I forgot to send you a mail when the game was out. It’s “Tales of the Sanctuary: Chapter 1”. I’m sending you one right now, with a promo code for the game.

That’s harsh Ed :smiley: Not harsh but, you know :smiley:

The problem is not with iOS because Apple doesn’t give refunds but Google Play and Amazon does.

Actually that was something I was trying to avoid because we got a review from a player that she can’t get past the Licensing process so we had to give that up. In case I try to handle it, I would need to take extra measures to let our paying customers play the game while they’re offline. Maybe adding a timer or something but it’s annoying and we can get too many negative reviews for that. I’m wondering if it’s worth the risk.