Creating Subscriptions

    Learn how to create and use subscriptions in detail.

    The quickstart guide runs through the basics of creating subscriptions in Stripe, but the built-in flexibility allows for nearly limitless variations on the subscriptions you make:

    This flexibility enables you to design subscriptions that match your customers’ needs.

    Defining products and plans

    A subscription’s particulars are first dictated by the underlying plan. The plan sets the:

    • Unit cost
    • Billing interval
    • Currency

    These three attributes are all fixed on a plan once created, it is not possible to update the value of these attributes later. Instead, you can create a new plan with the desired characteristics.

    The currency is fixed not only on the plan but also on the customer: once a customer starts a subscription using a specific currency, the Customer object in Stripe can only be charged that currency.

    Every plan is attached to a product, which represents the application or service offered to customers.

    Products can have more than one plan, reflecting variations in price and duration—such as monthly and annual pricing at different rates. Refer to the product and plan documentation to learn how to create a product and attach a plan.

    Changing the amount billed

    The plan defines the base cost of a subscription, but the amount actually billed to a customer each interval can be adjusted on a per-customer or per-subscription basis using:

    These adjustments can be made when a subscription is created or as a change to an existing subscription. One-time billing adjustments can also be made using invoice items.

    Supported payment methods

    Most subscriptions are billed to credit cards, although Stripe accepts payments using several alternative methods, including ACH debits. No special steps are required for ACH, but:

    • As with all ACH payments, it takes up to 5 business days to receive confirmation of the payment’s success or failure
    • If an ACH payment on a subscription fails, the subscription automatically moves to its final state per your settings (i.e., ACH subscription payments are never retried)

    Next steps

    Congrats! You’ve learned more about subscriptions at Stripe! You may want to learn about:


    We're always happy to help with code or other questions you might have! Search our documentation, contact support, or connect with our sales team. You can also chat live with other developers in #stripe on freenode.

    Was this page helpful? Yes No


    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.