Building subscription apps
Subscription apps allow developers and merchants to build subscription experiences directly into Shopify's checkout. Using Subscription APIs, you can sell goods and services in multiple ways.
Using our docs and tutorials, you can familiarize yourself with all aspects of the subscription apps creation process, from explore and build, through to launch:
- Explore - Review the requirements for building an app that uses subscriptions.
- Build - Follow the Getting started guide to create a subscription app.
- Launch - Follow the launch checklist to submit your app to the Shopify App Store.
The requirements for building an app that uses subscriptions depends on the type of app that you're building.
- Public apps need to meet specific requirements to be published on the Shopify App Store.
- Custom apps: You can request Subscription APIs access through the Partner Dashboard. Your app will receive access as long as it's designed according to our documented principles and patterns.
- Private apps: Private apps can't use extensions or request access to protected scopes, so they can't use subscriptions. If you're building a solution for a single store, then use a custom app.
Migrating to use Subscription APIs
If you already have a subscription app and need to migrate to use Subscription APIs, then refer to the Subscription API migration guide.
If your existing subscription app uses Stripe to process subscription payments, then you can import pay-as-you-go contracts directly into Shopify without the need to migrate credit cards. For more information, refer to Migrating existing subscription contracts to Shopify.
This section specifies the prohibited actions associated with using the Subscription APIs. The list is not exhaustive and might be updated at any time:
- Vaulting cards: Vaulting cards for any purpose other than processing recurring payments for a specific product isn't supported.
- Overbilling: Billing against a customer's card can only be done as specified by the contract. Don't overbill against any card.
- Updating contracts inappropriately: Subscription contracts only need to be updated to reflect what the customer has agreed to.
- Unclear contracts: It needs to be clear to the customer what they're agreeing to. The storefront needs to clearly state the conditions of the contract.
- Stale contracts: Don't let contracts become stale in Shopify. As soon as a customer agrees to a contract change, the updates need to be reflected in Shopify. This helps to ensure that merchants are never locked into a particular subscription provider.
- Selling plans without subscription contracts: Don't create selling plans as a means to only have additional pricing control without handling the resulting subscription contracts.
- Unsupported usage: The APIs are built to support subscriptions. Don't use the APIs to solve for other business use cases like instalments, layaways, or pre-orders.
Any failure to abide by these prohibitions constitutes a breach of Shopify’s API Terms. We might update these prohibitions from time to time, so please check back for any changes that might impact you.
There are some limitations that you need to be aware of:
- Scripts that discount subscription price or shipping rates apply to the first payment only.
- Gift cards used to pay for subscriptions only apply to the first payment.
- To use subscriptions, the merchant needs to be using Shopify Payments, PayPal Express, or Authorize.net as a payment gateway.
- Customers can't use accelerated checkouts or local payment methods to purchase subscriptions.
- Subscriptions don't support local delivery or local pickup options.
- Merchants can't sell subscriptions through Shopify POS yet, but we're planning to add support for this later in the year.
- Subscriptions don't support "Buy X get Y" discounts.
- Selling plan titles don't support translations for multi-language storefronts.
- Selling subscriptions using draft orders is not supported, but is planned for later this year.
- The Order Edits API doesn't support subscriptions.
Some subscription features are in development and will be released later this year. Below you’ll find the features on our roadmap and our estimated launch dates. These dates might change but represent our current best estimates.
|Feature||Target launch date|
|(Plus) Checkout.liquid support||Launched Feb 2021|
|(Plus) Scripts support||Launched Feb 2021|
|Paying for subscriptions with a gift card||Launched Feb 2021|
|Improvements to shipping calculation for carts containing subscriptions and one-time purchases||Launched April 2021|
|Additional gateway: PayPal Express||Launched May 2021|
|Additional gateways: Authorize.net||Launched June 2021|
|Storefront API||Q3 2021|
|Additional gateways: Stripe||Q4 2021|
|Wallets support: Shop Pay, Apple Pay, G Pay||H2 2021|
|Local pickup||H2 2021|
|Local delivery||H2 2021|
|CSV exports||H2 2021|
|Draft orders||H1 2022|
|Shopify POS||H1 2022|
Frequently asked questions
What should I do if I have merchants dependent on features in my legacy subscription app that are currently unresolved limitations of the new APIs?
Any existing installs can continue to use your app at this time. All new installs, apps, and opportunities should use the new Subscription APIs. We'll continue to release more features and support for subscriptions over the coming months, as outlined above and going forward.
Where can I learn more about subscriptions?
For more information on subscriptions, refer to our Partner Blog post, where we give some background information on why we built this feature.
We are always looking for feedback on our APIs. If you have any specific questions, concerns, or feedback on the Subscription APIs, then visit our Subscriptions API forums.