@uptimistik is spot on. And with some Androids you need to be super careful about how you delete an app, as some will still keep all the app's data unless you specifically go in and tell it to delete ALL the app's data. Very frustating!
Contact me for custom work - Expert GS developer with 14 years of GS experience - Skype: armelline.support
Where there updates to the purchase tables between releases @FireCroc and are you saving the purchase table with a save table behavior?
If you were saving tables, that's a know (to us at least) thing in the system that we need to get better at teaching people to address.
If not, then I need to double check whether we're saving the Purchase Table automatically and how to fix that.
Basically saved tables load and overwrite the game table, so if you save a table it will always overwrite the game's version. The only way around it is to build a "table migration". Basically build a second table with all the new info and use a loop to run updates to the other table.
I need to check our docs, but our best practices doc should both outline that and let people know to use the IAP tables as a transaction manager and not a system of record. It was designed to be a system of record, but between changes to the app store APIs and issues with how tables work like above, we need to update best practices.