This is really a security issue by Google, so I am going to suggest a workaround.
Along with the promo code, they provide users with a server identifier generated by your server, when receiving a promotion, they check the server identifier and accept the purchase only once.
When using from the market, send the identifier using a referrer. When using the application, you have your own logic for providing the server identifier.
There is no other solution on the bottom line, but some of them identify users with some kind of identifier.
Ilya_Gazman May 19 '17 at 19:28 2017-05-19 19:28
source share