Local receipt validation
I read that receipts need to be validated when using StoreKit rather than StoreKit2, and that the options for server or local validation. Also with the apple server for validating no longer available, lightweight apps that don't have their own server really need to do local validation.
I see nothing in your documentation about receipt validation, and nothing in your source (although I might have missed it, if it's there please correct me).
Can your framework be used along with local validation currently? I see a receipt (I think) returned as a String from the refresh receipts function but don't see how to access it after a purchase, say. I've read suggestions that the receipt be locally validated: on start-up, when a purchase succeeds, and when purchases are restored.
Thanks, I hope I can use flare. I implemented IAP years ago coding directly to the APIs and it was bad, definitely didn't want to reinvent that wheel again. Today I have a Mac app supporting fairly old systems (since the project it's fork of did already), and was facing the posibility of upping the App Store version's system requirements only for sake of allowing StoreKit2 for a single upgrade IAP, or cobbling together a StoreKit wrapper from abandoned, no-longer supported repos and samples. It would be nice to use one that was being maintained and is well tested.
Yes, you need to validate receipts after the transaction according to Apple’s documentation.
Unfortunately, Flare can't validate receipts locally. I used a backend receipt validation method some years ago. Most frameworks on GitHub that perform validation simply send a request to Apple to validate a receipt, but based on Apple’s documentation, it is not secure to perform local validation for StoreKit 1. Also, in my experience, we always use a server-side solution for receipt validation and have never needed local validation. For this reason, I decided not to implement this functionality in Flare.
Fair enough. Thanks
@jpmhouston, I am closing this issue. If you have any questions, please open a new one.