Giter Club home page Giter Club logo

Comments (3)

anshul-kai avatar anshul-kai commented on June 29, 2024

receiptData contains information for your purchase from what I understand. You'd want to verify the information contained in receiptData before enabling premium content.

Receipt validations are ideally performed on a server. This allows you to protect your API keys that something like in-app-purchase would require. Any on-device validation would require you to embed your API keys in your app which is insecure.

I'd highly encourage you to look into a node.js server. It isn't hard to setup and you can get by with a small free AWS EC2 instance running a daily job to check all your receipts.

rn-nodify looks interesting but now sure how compatible it is with something as complex as in-app-purchase.

Hope this helps.

from react-native-in-app-utils.

franvera avatar franvera commented on June 29, 2024

@Twansparant afaik, there is no way of knowing if the user is logged is to the App store. The best option and what I'm doing atm is to verify if the receipt exists before requesting.

You can see my pull request for that: #126

You then check if the receipts exists first, if not: Tell the user that you need to verify the existence of the purchase. Proceed to verify the receipt. If receipt is found, grant access and continue.
If receiptData fails, you can then ask the user to purchase/subscribe or restore purchases to continue

from react-native-in-app-utils.

superandrew213 avatar superandrew213 commented on June 29, 2024

@Twansparant you could easily setup an AWS Lambda + API GateWay endpoint that validates the purchases and subscriptions.

You would just call InAppUtils.receiptData and then call your validation endpoint with receipt data. In your lambda function you can use in-app-purchase to validate the receipts and tell your app if they are valid, expired, canceled, etc.

This way the user won't get prompted to login all the time if you use InAppUtils.restorePurchases. You also don't need to manage a server and it will be cheaper.

from react-native-in-app-utils.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.