Stripe integration with expo react native app - stripe-payments

I'm building an app using expo and react native, and I am planning to use Stripe for processing payments.
I do not want to use Expo payments since it requires me to detach the project to accept payments on iOS as described here.
According to this comment, the input fields where a user enters credit card information need to be hosted by the payment provider (in my case, Stripe) for PCI compliance. Am I correct in assuming that this means I cannot use tipsi-stripe library?
Stripe does not provide react native components as far I can see. In that case, all I can think of is to embed Stripe elements or checkout component as a WebView in my react native app so that the input fields are hosted by Stripe. Is there an easier or "more native" way that I am missing?

Your understanding on integrating Stripe API is correct. To avoid most of the PCI compliance complexity, you will need to use Stripe Element/Checkout or Mobile SDK[0].
So you can either
Hosting the Elements/Checkout and use in the WebView
Using Mobile SDK
And for number 2, since you are using react-native, you can use Tipsi-Stripe because tipsi-stripe is built on top of the Stripe Mobile SDK.
[0] https://stripe.com/docs/security#validating-pci-compliance

Related

How can i add the functionality in my web App So that my Application user can create their Paypal Account using API in Nodejs?

Actually in my application i want the functionality in which user can create their paypal's account on API calling or any SDk function invoking I want this implementation in node js I integrated the package
https://www.npmjs.com/package/paypal-adaptive
because it has a function of
paypalSdk.createAccount(payload, callback);
but error occurs besides this i dont know is it a perfect approach or not and please tell me
Is it possible if my application can create paypal account using API from my App?
Adaptive Accounts and Adaptive Payments were deprecated years ago, and cannot be used.
In a regular PayPal Checkout flow, an account can always be created when making a payment, so it's unclear why your app needs something additional for this.
The closest thing to something for account creation would be seller onboarding with the partner referrals API. You must be an approved partner to use that integration.

Is there a way to integrate a Stripe payment on my website with Firebase backend service without using any other backend service?

I began to develop an online store website with html, css and js, I use Firebase as backend. Then came up the payment part, I want to use Stripe for that, and it turns out that I have to use Node.js to manage that payment part. (or any other server technology)
I have to say that I'm very novice in back-end (and stripe) and the idea was to get rid of that part (the reason why I use Firebase) except that the payment part requires it.
My question is:
Is it enough to use Firebase only as a backend to manage the payment part with Stripe?
If no,
can I use node.js(express framework) just on the payment page and not extend it to all the other pages with those routing things? Or do I have to deploy it on the whole website?
Thanks.
There is a Firebase Extension that is built by Stripe and states:
Use this extension as a backend for your Stripe payments.
It makes use restricted API keys so you have granular control over what records can be created/read/updated by the extension.
I think that sounds easier that trying to work out an Express app for a single payment page.

Can I implement Stripe checkout in React without my own backend server?

I have a React frontend deployed on Netlify. I want to implement a simple payment system where user can enter the amount they want and pay using Stripe checkout or even PayPal. I wanted to know If this is possible without paying for a separate backend. Or is there any other self hosted payment gateway you can suggest?
thanks! :)
Technically, you can use client-only Stripe Checkout, however it's not the recommended path: https://stripe.com/docs/payments/checkout/client
Client-only is not recommended because it lacks many of the features made possible with a client-server integration. Furthermore, the client-only integration is not currently (as of this post) receiving new features or upgrades.
If you don't want to do server-sided development, then Stripe Checkout (client-only integration) is the way to go. Everything you need can be done on Stripe dashboard.
Stripe now has a solution called Stripe Payment Links. It's a client-only solution... in fact it requires no code!
As you can see on Stripe docs The Stripe API uses API keys to authenticate requests. - so this means that you need a secure way to integrate with them, without exposing those keys.
So the best way would be to use some serverless backend (FaaS) for that, like Amazon Lambda, GCP Cloud Functions etc.
Here's a good article, how to integrate Stripe with webtask.io, which should be pretty simple to use

Marketplace that allows payment on behalf of third party

I am currently developing a marketplace type of website. When it comes to handling payments, I would like to be able to charge customers on behalf of sellers.
Which payment gateway API should I use (if this is even possible)? I am using React and Node.
For reference, what I was looking for was something like Stripe Connect. According to their website: "Marketplaces and platforms use Stripe Connect to accept money and pay out to third parties. Connect provides a complete set of building blocks to support virtually any business model, including on-demand businesses, e‑commerce, crowdfunding, and travel and events."

Stripe Xamarin. in app, Sign up and pay subscriptions plan, Can it be done?

I been working on a app where the common user can subscribe to different plans, which give different perks.
I been trying to do this by using Stripe's payment component from xamarin component store
But for me, it seems like this component only give you the option to request a payment, but not subscript to a plan.
this leave me think, the only way i can make this happen, is to make the whole "payment and subscriptions to the plan" code on native IOS and Android, which i after bind up against my PCL
So to conclude what i'm looking for is a more simple way to create this functionality,
Thanks for your time,
So the Xamarin extension should really only be used to collect the credit card details and "tokenize" the card. The actual handling of the charge is done by your backend server (as described in the documentation for the extension under "Sending the token to your server"). Once you pass the otken to your backend, you can actually do anything you like with it-- including attach it to a Customer Record by setting the source-attribute when calling the Create a Customer API Endpoint. Once you've created the Customer record, you can then create a Subscription using your Plans.

Resources