Subscriptions enable customers to purchase products on a recurring basis. For example, customers can do the following: - Pay-per-delivery subscription: Pay for products for each delivery. New orders are created at regular intervals. This option is also known as "Subscribe and save". - Pre-paid subscription: Make a single payment upfront and receive products on a regular cadence until the order is fulfilled. Subscription apps enable developers and merchants to build subscription experiences directly into Shopify's ecosystem. This guide describes what a subscription is, subscription APIs, migration to subscription APIs, and limitations for subscription apps. ## Overview of merchant and buyer experiences Subscriptions are deeply integrated across merchant and customer experiences. Here’s a high-level overview:  Learn more about merchant and buyer subscription experiences on Shopify ## How do subscriptions work? Subscriptions include policy configurations and subscription contracts. ### Policy configurations A subscription includes [delivery, pricing, and billing policies](/docs/apps/build/purchase-options#how-do-purchase-options-work). This enables you to build more flexible and extensible apps that support various ways to sell and buy products. [Learn more about policies and selling plans](/docs/apps/build/purchase-options/subscriptions/selling-plans#subscription-shipping-and-delivery).  ### Subscription contracts A subscription contract is the agreement between a customer and a merchant over a specific term for recurring purchases over a set or undefined period of time. [Learn more about subscription contracts](/docs/apps/build/purchase-options/subscriptions/contracts). ## Subscription APIs Shopify provides the following APIs to help you build and manage subscriptions in your app: - **[Selling plan APIs](/docs/api/admin-graphql/latest/objects/sellingplan)**: Create and manage various ways to sell and buy products. - **[Subscription contract APIs](/docs/api/admin-graphql/latest/objects/subscriptioncontract)**: Create and manage subscription agreements between a customer and merchant. - **[Customer payment method APIs](/docs/api/admin-graphql/latest/objects/customerpaymentmethod)**: Store payment methods that can be used to pay for future orders without requiring the customer to manually go through checkout. ## Migrating to use the 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](/docs/apps/build/purchase-options/subscriptions/migrate-to-subscriptions-api). If your existing subscription app uses Stripe to process subscription payments, refer to [Migrating existing subscription contracts to Shopify](/docs/apps/build/purchase-options/subscriptions/migrate-to-subscriptions-api). ## Developer tools and resources To help you build and manage purchase options, Shopify offers the following developer tools and resources.
Tools/Resources | Description |
---|---|
App extensions | Surfaces your app’s purchase options in the Shopify admin |
App proxy | Fetches data from an app proxy server to display on a page of the online store. By using an app proxy, customers can have a seamless experience managing their existing agreements under the shop’s domain. |
Storefront Liquid drops and properties | Allows you to integrate purchase options into a store's theme |