Recurring and subscription plans definition

This feature is in beta mode at the moment; feel free to contact us at if you have any issues or recommendations.

Along with standard products, at Snipcart, we allow merchants to charge recurring payments and sell subscription plans. Once you define subscription plans correctly, your customers will be able to subscribe to recurring payments on your website. The payments will be processed directly via your payment gateway, at the time interval of your choosing.

Please note that only users operating with Stripe as a payment gateway will be able to use this feature.

To define a plan, you first need to create a buy button with some specific data attributes. Here is an example of a 20$ monthly subscription plan:

<button class="snipcart-add-plan"
    data-plan-name="My plan"
    data-plan-url="http://{}" />

One important thing to notice here is the class attribute. It needs to include the snipcart-add-plan class.


Here is the list of possible plan attributes:

Attribute Description Required
data-plan-id This is the plan identifier. Each plan must have a unique ID. true
data-plan-name This is the name of the plan. This name will be displayed in the invoices and this is what customers will see on their cart. true
data-plan-url The URL where the button defining the plan is available. true
data-plan-interval The interval of the recurring payments. Possible values are Day, Week, Month or Year true
data-plan-amount The actual price of the subscription. You must provide a valid decimal number. Valid price: 20.00, invalid price: 20,00$. true
data-plan-interval-count If you want a plan where recurring payments will occur each 2 weeks, you could set it to 2 and set data-plan-interval to Week false
data-plan-trial-period If the plan has a trial, it can be specified using this attribute. Specify the trial period in days. false

Invoices and notifications

When a customer subscribes to a plan, he will automatically receive an invoice containing the plan details. On each recurring payment, another invoice will be sent automatically. If the subscription is cancelled, a notification will also be sent via email.


Taxes will be automatically added to the plan amount, so you don't need to include in the data-plan-amountattributes. But you still need to define your taxes in the dashboard.

Plans cancellation

Customers with an active subscription will have access to their invoices history in the customer dashboard that you can include on your website. Head to this section to learn how to set up the customer dashboard on your website. They will be able to cancel their subscription at any time in this dashboard. We may make this optional if we receive requests about it.

Also, as a website administrator, you can always cancel subscriptions yourself directly in the Snipcart admin dashboard. Just find the customer associated to the subscription in the dashboard, click on the subscription itself and hit the Cancel button.


For now, subscriptions will not include shipping details such as weight and more. So if a customer only has a subscription in his cart, the shipping steps will not be available. We plan to add this in the upcoming releases.


At the moment, discounts are not yet supported on subscription plans. They will be added in the upcoming releases as well.