> ## Documentation Index
> Fetch the complete documentation index at: https://razorpay-881012b3.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Subscriptions

> Know about Subscriptions and list of endpoints.

<div style={{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"0.35rem 0.9rem",border:"1px solid rgba(128,128,128,0.28)",borderRadius:"0.5rem",padding:"0.45rem 0.75rem",margin:"0 0 1.25rem",fontSize:"0.875rem"}}>
  <span style={{fontWeight:600}}>Available in</span>
  <span>🇮🇳 India</span>
  <span>🇸🇬 Singapore</span>
</div>

You can use Subscriptions to charge a customer periodically. A Subscription contains details like the plan, the start date, the total number of billing cycles, the free trial period (if any) and the upfront amount to be collected.

<br />

Below are the steps to integrate Subscriptions. You can also refer to our comprehensive [Subscriptions Integration guide](/docs/payments/subscriptions/integration-guide).

1. [Create a Plan](/docs/api/payments/subscriptions/create-plan)
2. [Create a Subscription](/docs/api/payments/subscriptions/create-subscription)
3. [Checkout Integration](/docs/payments/subscriptions/integration-guide#step-14-integrate-with-standard-checkout/)

Fork the Razorpay Postman Public Workspace and try the Subscription APIs using your [Test API Keys](/docs/api/authentication#generate-api-keys).

<a href="https://www.postman.com/razorpaydev/workspace/razorpay-public-workspace/folder/12492020-33ddca50-ea58-4c30-be41-bd7643a1438c" target="_blank">![Run in Postman](https://run.pstmn.io/button.svg)</a>

<CardGroup cols={2}>
  <Card title="Create a Plan" href="/docs/api/payments/subscriptions/create-plan">
    `POST` `/v1/plans`

    Creates a plan.
  </Card>

  <Card title="Fetch All Plans" href="/docs/api/payments/subscriptions/fetch-all-plans">
    `GET` `/v1/plans`

    Fetches all the plans.
  </Card>

  <Card title="Fetch a Plan With ID" href="/docs/api/payments/subscriptions/fetch-a-plan">
    `GET` `/v1/plans/:id`

    Fetches a plan by its unique identifier.
  </Card>

  <Card title="Create a Subscription" href="/docs/api/payments/subscriptions/create-subscription">
    `POST` `/v1/subscriptions`

    Creates a Subscription.
  </Card>

  <Card title="Create a Subscription Link" href="/docs/api/payments/subscriptions/create-subscription-link">
    `POST` `/v1/subscriptions`

    Creates a Subscription link.
  </Card>

  <Card title="Fetch All Subscriptions" href="/docs/api/payments/subscriptions/fetch-subscriptions">
    `GET` `/v1/subscriptions`

    Fetches all the created Subscriptions.
  </Card>

  <Card title="Fetch Subscription With ID" href="/docs/api/payments/subscriptions/fetch-subscription-id">
    `GET` `/v1/subscriptions/:id`

    Fetches a Subscription details using its unique identifier.
  </Card>

  <Card title="Cancel a Subscription" href="/docs/api/payments/subscriptions/cancel-subscription">
    `POST` `/v1/subscriptions/:id/cancel`

    Cancels a Subscription.
  </Card>

  <Card title="Update a Subscription" href="/docs/api/payments/subscriptions/update-subscription">
    `PATCH` `/v1/subscriptions/:id`

    Updates a Subscription.
  </Card>

  <Card title="Fetch Details of a Pending Update" href="/docs/api/payments/subscriptions/fetch-pending-update-details">
    `GET` `/v1/subscriptions/:id/retrieve_scheduled_changes`

    Fetches details about any update of a Subscription.
  </Card>

  <Card title="Cancel an Update" href="/docs/api/payments/subscriptions/cancel-update">
    `POST` `/v1/subscriptions/:id/cancel_scheduled_changes`

    Cancels an update.
  </Card>

  <Card title="Pause a Subscription" href="/docs/api/payments/subscriptions/pause-subscription">
    `POST` `/v1/subscriptions/:id/pause`

    Pauses an active Subscription.
  </Card>

  <Card title="Resume a Subscription" href="/docs/api/payments/subscriptions/resume-subscription">
    `POST` `/v1/subscriptions/:id/resume`

    Resumes a paused Subscription.
  </Card>

  <Card title="Fetch All Invoices for a Subscription" href="/docs/api/payments/subscriptions/fetch-invoices">
    `GET` `/v1/subscriptions`

    Fetches all the generated invoices for a Subscription.
  </Card>

  <Card title="Link an Offer to a Subscription" href="/docs/api/payments/subscriptions/link-offer">
    `POST` `/v1/subscriptions`

    Links an Offer to a Subscription.
  </Card>

  <Card title="Delete an Offer linked to a Subscription" href="/docs/api/payments/subscriptions/delete-offer">
    `DELETE` `/v1/subscriptions/:sub_id/:offer_id`

    Deletes an Offer linked to a Subscription.
  </Card>
</CardGroup>

## Related Guides

* [About Subscriptions](/docs/payments/subscriptions)
* [Integrate With Subscriptions](/docs/payments/subscriptions/integration-guide)
* [Set Up Webhooks](/docs/webhooks/setup-edit-payments)
* [Webhook Payloads](/docs/webhooks/subscriptions)
