I'm currently evaluating whether Firebase will be suitable for an app I am making. The only potential sticking point I have found is taking payments - what are the options currently available?
Asked
Active
Viewed 1.6k times
1 Answers
21
Firebase is a real-time data store, focused on lightning-fast, scalable solutions for sharing data between hundreds to millions of clients simultaneously. It does not offer any payment processing solutions internally.
A third party service like Stripe will integrate quite easily with Firebase, and tools like Zapier can help with pushing data from Stripe back into Firebase upon completion of transactions.
Generally, the process looks something like this:
- User initiates transaction on your site
- Client code sends them to Stripe to enter their CC info
- Client code obtains a token representing the secure transaction
- A server process is notified by stripe when the transaction is validated
- The sever submits the payment authorization with the token
- Stripe sends a transaction receipt to the server process or Zapier, which would be stored back in Firebase
An advantage of this approach is that your are not storing any credit card or sensitive data and therefore are not subject to PCI compliance and stringent bank/e-commerce regulations.

Sheraz Ahmad Khilji
- 8,300
- 9
- 52
- 84

Kato
- 40,352
- 6
- 119
- 149
-
2In 4) you mentioned a server process is notified by stripe when the transaction is validated. Where does the server process run? – windchime Dec 02 '14 at 22:54
-
1This is your purview. Suggestions in my personal order of preference: Google Compute, Heroku, Amazon S3, Nodejitsu. Generally I just fire up a node.js script for speed and convenience, and utilize a [queue strategy](https://github.com/firebase/firebase-work-queue) – Kato Dec 03 '14 at 15:46
-
@Kato I came across a major drawback while using Stripe.js for my payments in mobile app. Stripe.js has to be loaded via CDN and is essential for bootstraping an angular based mobile app like ionic. If the network connectivity breaks or is slow the app freezes during the launch. Braintree is a much better option if used with a queue strategy – Nikhil May 14 '16 at 01:01
-
`Stripe` requires using a secret key associated with your account and `Braintree` requires generating a token server-side (using a private key) for transactions. As far as I can tell there is no way to achieve this without a setting up a server for that purpose. I am also talking about user to user transactions (Stripe connect or Braintree marketplace). I believe people giving you money can be done but I'm not sure. – Jacob Phillips Sep 14 '16 at 02:16
-
There is now an option called firestripe... check the link https://firebase.google.com/docs/use-cases/payments?hl=es – NaturalDevCR Jul 13 '20 at 21:35