Skip to main content

How Subscriptions Work

Reflow Subscriptions are built on top of Reflow Auth and are powered by Stripe Billing or Paddle depending on your payment provider preferences. Our subscriptions are fully-featured with support for monthly or annual subs, migration between plans with proration, free trials, taxes and more.

The integration with Reflow Auth gives you a complete user registration system that is easy to integrate with your React or vanilla.js project.

Subscription Flow

Here is a typical flow that your users will go through to start a subscription on your website or app:

  1. A visitor on your website visits your Subscription Plans page.
  2. You fetch the configured subscription plans for your project from Reflow's API and render them in a pricing table.
  3. The visitor chooses to subscribe for one of your plans and clicks a Subscribe button.
  4. You call the auth.createSubscription() method with the chosen plan's price id. This opens up a Stripe/Paddle payment form where the user enters their payment information. If the visitor is not signed in they will be prompted to create an account before payment.
  5. Upon completion, Reflow updates your user's subscription status in our backend, delivers payment emails, sends webhooks, and syncs the subscription data with our client library so you can render an updated UI immediately.
  6. After the initial payment, recurring charges will be performed either every month or year, depending on the selected pricing plan. These payments will continue until the subscription is canceled or a payment fails.

Note that this is only an example flow and you can structure it differently. The key moment is the call to auth.createSubscription() with a price ID. You can call this method at any point. See an example integration here.

Subscription Objects

Here is an overview of the main objects that are used in Reflow Subscriptions and how they are connected to each other.


Your Reflow project. It can sell subscriptions, physical products, digital products, and more


Your customers can create accounts for accessing your service by registering using their Google, Apple, or other login.


The plan represents a subscription tier that your users can subscribe to. You can offer as many plans as needed.


The price object describes the cost for subscribing to a certain plan, as well as how often this payment will occur (monthly or yearly).


When a user's account is connected to a one of the available plans and their first payment is completed successfully, a subscription starts. The subscription will remain active and collect recurring payments as long as it's not canceled and payments don't fail.


Every time your project receives money for a subscription billing, a payment object is created to help you track active subscribers and collected revenue.


Can I manage subscriptions on Reflow?

Yes, you can see a full list of all active subscribers in your users dashboard. You can lookup users and manage every aspect of their subscription.

How are failed payments handled?

If a scheduled payment fails because of insufficient funds, expired card, or other reasons, we will immediately contact the customer via email and prompt them to fix the issue.

In the next few days after the failed payment, we will make several more attempts to charge the customer. If all attempts fail, the subscription will be canceled.

Are subscriptions available in the Free Reflow plan?

No, only Reflow PRO has access to subscriptions.

Are any fees charged?

User subscriptions are created directly within your Stripe/Paddle account. Apart from your flat monthly fee for Reflow PRO, we don't charge anything extra, so there are no transaction fees on our end. Keep in mind that Stripe/Paddle will charge their usual transaction fees.

Is PayPal supported as a payment method?

No, subscriptions only work with Stripe and Paddle at this time.

Do all currencies support subscriptions?

Nearly all currencies available in Reflow support subscriptions. However, due to some countries' regulations, neither Stripe nor Paddle are available, and by extension Reflow Subscriptions are not as well. Visit the Currency Support Page for a full list of available currencies.