A time-based subscription is a pricing model that charges a consistent, recurring amount for a service. Shopify offers billing intervals for every 30 days and every 365 days.

Merchants must approve the pricing plan. After accepting the charges, the merchant is redirected to a URL that you provide.


## Requirements

- Your app can make [authenticated requests](/docs/api/admin-graphql#authentication) to the GraphQL Admin API.


## Step 1: Create the subscription

1. [Refer to an example](/docs/api/admin-graphql/latest/mutations/appSubscriptionCreate#examples-Create_a_subscription_for_an_app_on_a_recurring_pricing_plan_only_) of creating an app subscription.

1. Make a request to the `appSubscriptionCreate` mutation with the following information:
      - [`name`](/docs/api/admin-graphql/latest/mutations/appSubscriptionCreate#argument-name)
      - [`returnURL`](/docs/api/admin-graphql/latest/mutations/appSubscriptionCreate#argument-returnurl)

1. Use the [`appRecurringPricingDetails`](/docs/api/admin-graphql/latest/input-objects/AppPlanInput#field-appplaninput-apprecurringpricingdetails) field on the line item's plan to provide the following information:
      - [`currencyCode`](/docs/apps/launch/billing#supported-currencies)
      - `price`
      - `interval`

         > Note:
         > The `interval` field accepts `ANNUAL` or `EVERY_30_DAYS`. If not provided, then the default of `EVERY_30_DAYS` is applied.

## Step 2: Monitor subscription updates

To receive a notification when a subscription status changes, such as when a charge is successful, subscribe to the GraphQL Admin API's [`APP_SUBSCRIPTIONS_UPDATE`](/docs/api/admin-graphql/latest/enums/webhooksubscriptiontopic#value-appsubscriptionsupdate) webhook topic.


## Next steps


<div class="resource-card-grid">
  <div>
  <a class="resource-card" href="/docs/apps/launch/billing/subscription-billing/offer-subscription-discounts" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/star"
     data-alt-src="/assets/resource-cards/star-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Discounts
    </h3>
    <p class="resource-card__description">Learn about offering subscription discounts.</p>
  </a>
</div></p>

<p><div>
  <a class="resource-card" href="/docs/apps/launch/billing/subscription-billing" data-theme-mode="">
    <div class="resource-card__indicator-container"><img
     src="/assets/resource-cards/changelog"
     data-alt-src="/assets/resource-cards/changelog-dark"
     aria-hidden="true"
     class="resource-card__icon themed-image"></div>
    <h3 class="resource-card__title">
      Prorated and deferred charges
    </h3>
    <p class="resource-card__description">Learn how Shopify handles prorating and deferring app subscription charges.</p>
  </a>
</div>
</div>