# Subscriptions

> Let shoppers subscribe to a variant every week, month or year, paid by card through your own Stripe account, with an order for each renewal and cancelling from the shop account.

Source: https://docs.bifrostorbit.com/commerce/everyone/subscriptions/

A subscription sends the same thing again every period, such as a bag of Northwilds trail coffee every month or a new map pack every year. Shoppers pay by card, on your own Stripe account, and Commerce Orbit adds an order for each period.

## Offer a subscription

On the product, under **Downloads and subscriptions**, choose **Add a subscription plan** for a variant. Each variant can have up to 6 plans. A plan has:

- **Every** and **Period:** how often, such as every 2 weeks or every month, up to every 12
- **Price each time** in your main currency. A plan is often a little cheaper than buying once.
- **Name**, such as Monthly. Leave it empty to use "Every month".

Shoppers choose **Buy once** or a plan on the product page. The cart shows the plan on the line.

## Checkout

A cart with a subscription is paid by card. Every subscription in one order needs the same period; shoppers check out others separately. The first payment covers the first period and everything else in the cart. A subscription that is posted also charges its delivery each period, at the price of the first order.

## Every period

Stripe takes the payment on your account at the start of each period. When it goes through, Commerce Orbit adds a paid order for the subscription, takes the stock, sends the order confirmation and tells your team, so you send it like any other order. The order history says which subscription it renews.

If a payment fails, the subscription shows **Payment failed** while Stripe tries again, by the rules in your Stripe settings. Stripe can email the customer to update their card.

## See and cancel them

**Subscriptions** lists every subscription with the customer, what they get, how often, the price, the status and how many orders it has made.

| Status | Means |
| --- | --- |
| **Active** | Renews at the next date shown. |
| **Payment failed** | The last payment didn't go through. Stripe tries again. |
| **Ends soon** | Cancelled, and runs until the date shown. |
| **Cancelled** | Ended. |

Customers cancel from their shop account, and you can cancel for them with **Cancel**. Either way the subscription runs until the end of the period they have paid for, and nothing more is charged. To give money back, refund the last order.

Cancelling the first order of a subscription, or refunding it in full, ends the subscription at once instead, as the customer never got what they signed up for.

## Before you start

Your Stripe key needs write access to Customers, Products, Prices, Subscriptions and Invoices, as well as what Commerce Orbit already asks for. The **Payments** page shows whether it has them. Until it does, products show only their one-off price. See [Connect Stripe](https://docs.bifrostorbit.com/commerce/everyone/connect-stripe/#features-that-need-more-access). Stripe tells Commerce Orbit about renewals through the same webhook as payments; the first subscription adds the subscription events to it. If you connected Stripe before subscriptions came, connect it again under **Payments** if renewals don't show as orders. See [Connect Stripe](https://docs.bifrostorbit.com/commerce/everyone/connect-stripe/).
