Google is committed to advancing racial equity for Black communities. See how.

Run Subscription Payments with Stripe

Stripe
Made by Stripe

Controls access to paid content by syncing your subscriptions with Firebase Authentication.

How this extension works

Use this extension to create subscriptions for your users with the Stripe payments platform and manage access control via Firebase Authentication.

Users can sign-up for your digital goods and paid content with Stripe Checkout and manage their subscriptions with the Stripe customer portal.

This extension syncs customers' subscription status with your Cloud Firestore and adds custom claims using Firebase Authentication for convenient access control in your application.

The design for Stripe Checkout and the customer portal can be customized in your Stripe Dashboard branding settings. See this example which is customized to match the Firebase color scheme:

Stripe Checkout Page Stripe Customer Portal

This extension is meant for the web platform. If you're developing native mobile applications and want to sell digital products or services within your app, (e.g. subscriptions, in-game currencies, game levels, access to premium content, or unlocking a full version), you must use the app store's in-app purchase APIs. See Apple's and Google's guidelines for more information.

Additional setup

Before installing this extension, set up the following Firebase services in your Firebase project:

Then, in the Stripe Dashboard:

  • Create a new restricted key with write access for the "Customers", "Checkout Sessions" and "Customer portal" resources, and read-only access for the "Subscriptions" resource.

Billing

This extension uses the following Firebase services which may have associated charges:

  • Cloud Firestore
  • Cloud Functions
  • Firebase Authentication

This extension also uses the following third-party services:

You are responsible for any costs associated with your use of these services.

Note from Firebase

To install this extension, your Firebase project must be on the Blaze (pay-as-you-go) plan. You will only be charged for the resources you use. Most Firebase services offer a free tier for low-volume use. Learn more about Firebase billing.

Starting August 17 2020, you will be billed a small amount (typically less than $0.10) when you install or reconfigure this extension. See the Cloud Functions for Firebase billing FAQ for a detailed explanation.

How to install this extension

Using the Firebase console

To install and manage extensions, you can use the Firebase console.

Install using console

Using the Firebase CLI

To install and manage extensions, you can also use the Firebase CLI:

Step 1: Run the following npm command to install the CLI or update to the latest CLI version.

npm install -g firebase-tools
Doesn't work? Take a look at the Firebase CLI reference or change your npm permissions.

Step 2: Install this extension by running the following command

firebase ext:install firestore-stripe-subscriptions --project=projectId_or_alias
Supports
Authentication Cloud Firestore
Author
In collaboration with
License
Apache-2.0
Version
0.1.8