Subscription Status and Workflow

In this article, you will learn about the various subscription statuses along with its workflow.

A subscription can go through various states once it is created. They are explained in the table below:

Subscription StatesDescription
INITIALIZEDA subscription is in the INITIALIZED state when it is created. This status shows the subscription is created but the customer has not authorized it yet.
BANK APPROVAL PENDINGThis state indicates that your customer has authorized the mandate. However, we are yet to receive the final confirmation from the bank before we can activate the subscription.
ACTIVEThe subscription is ACTIVE when the bank has authorised the subscription and you can start collecting payments for this subscription.
ON HOLDA subscription moves to the ON HOLD state when the recurring payment fails for a periodic subscription. When it is re-activated, the subscription is updated from the ON HOLD state to the ACTIVE state.
PAUSEDA subscription moves to the PAUSED state when you pause your periodic subscriptions. Only a periodic subscription that is in the ACTIVE state can be paused.
COMPLETEDA subscription is COMPLETED when the maximum number of cycles is reached or the subscription expiry is reached.
CUSTOMER CANCELLEDThis state indicates that your customer has cancelled their subscription at the bank’s end. If a subscription is cancelled by your customer it cannot be resumed.
CUSTOMER_PAUSEDThis state indicates that your customer has paused their subscription from their UPI application. If a subscription is paused by your customer only they can resume it.
EXPIREDAn EXPIRED status indicates that the subscription has passed its expiry date and cannot be resumed. A subscription that is EXPIRED cannot accept any fresh payment requests.
LINK EXPIREDThis status indicates that the subscription link has expired and there has been no successful authorisation done by the customer for this Subscription. This is one of the terminal states and no further action can be performed on these subscriptions. This is applicable only to all non-seamless Subscriptions that were created post 4th May 2023.

The Subscription workflow is shown below. For a comprehensive overview of all possible subscription states, please refer to the detailed tables provided below in this document.

Subscription Lifecycle

Subscription Lifecycle

State Name: INITIALIZED

All possible states to which a subscription can move when it is INITIALIZED are mentioned in the table below.

Subscription StateDescription
INITIALIZED -> BANK APPROVAL PENDINGA subscription moves from the INITIALIZED state to the BANK APPROVAL PENDING when your customer completes the authorisation.
INITIALIZED -> CANCELLEDA subscription moves from the INITIALIZED state to the CANCELLED state when you cancel the subscription.
INITIALIZED -> LINK EXPIREDA subscription moves from the INITIALIZED state to the LINK EXPIRED when the checkout link expires.

State Name: BANK APPROVAL PENDING

All possible states to which a subscription can move when it is BANK APPROVAL PENDING are mentioned in the table below.

Subscription StateDescription
BANK APPROVAL PENDING -> ACTIVEA subscription moves from the BANK APPROVAL PENDING to the ACTIVE state when the bank approval is successful.
BANK APPROVAL PENDING -> COMPLETEDA subscription moves from the BANK APPROVAL PENDING state to the COMPLETED state when the subscription has reached the expiry date.
BANK APPROVAL PENDING -> CANCELLEDA subscription moves from the BANK APPROVAL PENDING state to the CANCELLED state when you cancel the subscription.
BANK APPROVAL PENDING -> INITIALIZEDA subscription moves from the BANK APPROVAL PENDING state to the INITIALIZED state if the authorisation is unsuccessful (this is not applicable for eNACH).

State Name: ACTIVE

All possible states to which a subscription can move when it is ACTIVE are mentioned in the table below.

Subscription StateDescription
ACTIVE -> COMPLETEDA subscription moves from the ACTIVE state to the COMPLETED state when the maximum number of cycles is completed or if the subscription expiry date is passed.
ACTIVE -> ON HOLDA subscription moves from the ACTIVE state to the ON HOLD state if the periodic subscription payment has failed. The subscription will be put on hold.
ACTIVE -> CANCELLEDA subscription moves from the BANK APPROVAL PENDING state to the CANCELLED state when you cancel the subscription.
ACTIVE -> CUSTOMER CANCELLEDA subscription moves from the ACTIVE state to the CUSTOMER CANCELLED state when your customer cancels the subscription.
ACTIVE -> CUSTOMER PAUSEDA subscription moves from the ACTIVE state to the CUSTOMER PAUSED state when your customer pauses the subscription.

State Name: ON HOLD

All possible states to which a subscription can move when it is ON HOLD are mentioned in the table below.

Subscription StateDescription
ON HOLD -> CANCELLEDA subscription moves from the ON HOLD state to the CANCELLED state if you cancel the subscription.
ON HOLD -> CUSTOMER CANCELLEDA subscription moves from the ON HOLD state to the CUSTOMER CANCELLED state if your customer cancels the subscription.
ON HOLD -> COMPLETEDA subscription moves from the ON HOLD state to the COMPLETED state if the subscription reaches its expiry date.
ON HOLD -> ACTIVEA subscription moves from the ON HOLD state to the ACTIVE state if the subscription is re-activated.
ON HOLD -> CUSTOMER PAUSEDA subscription moves from the ON HOLD state to the CUSTOMER PAUSED state if your customer pauses the subscription.

State Name: PAUSED

All possible states to which a subscription can move when it is PAUSED are mentioned in the table below.

Subscription StateDescription
PAUSED -> ACTIVEA subscription moves from the PAUSED state to the ACTIVE state when it is reactivated.
PAUSED -> COMPLETEDA subscription moves from the PAUSED state to the COMPLETED state if the subscription expiry date is reached.
PAUSED -> CANCELLEDA subscription moves from the PAUSED state to the CANCELLED state if you cancel the subscription.
PAUSED -> CUSTOMER CANCELLEDA subscription moves from the PAUSED state to the CUSTOMER CANCELLED state if your customer cancels the subscription.

State Name: CUSTOMER PAUSED

Subscription StateDescription
CUSTOMER PAUSED -> ACTIVEA subscription moves from the CUSTOMER PAUSED state to the ACTIVE state when it is resumed.
CUSTOMER PAUSED -> ON HOLDsubscription moves from the CUSTOMER PAUSED state to the ON HOLD state when it is put on hold.

CUSTOMER_CANCELLED use cases for different payment methods are mentioned below -

  • eNACH: Information that the customer has cancelled the mandate is known only when a charge is raised on this mandate. This charge will always fail as per the cut-off timelines. Refer here for payment statuses.

Cut-off Timelines:

Charge Subscription API ScenarioseNACHUPICards
Raised on: T(before 7am)
scheduledOn: null
Charge will be raised on TNot allowedNot allowed
Raised on: T(after 7 am)
scheduledOn: null
Charge will be raised on T+1Not allowedNot allowed
Raised on: T(before 7am)
scheduledOn: T
Charge will be raised on TNot allowedNot allowed
Raised on: T(after 7am)
scheduledOn: T
Not allowedNot allowedNot allowed
Raised on: T
scheduledOn : T+1 (cut-off time for UPI is 6pm on T for the charge to be raised on T+1).
Charge will be raised on T+1Charge will be raised on T+1Not allowed
Raised on: T
scheduledOn: T+2
Charge will be raised on T+2Charge will be raised on T+2Charge will be raised on T+2
Raised on: T
scheduledOn: T+3…T+14
Charge will be raised on T+3..T+14Charge will be raised on T+3..T+14Charge will be raised on T+3..T+14
Raised on: T
scheduledOn : T+15
Not allowedNot allowedNot allowed
  • UPI AutoPay: This update is instant i.e. the status is updated as and when your customer cancels the mandate from their UPI application.

Notifications

When a subscription is created or payment gets processed, a notification via an email or text message will be sent to your customers. This is in compliance with NPCI’s regulations.‌

Cashfree Payments sends notifications to your customers at different stages of the subscription lifecycle described below:

EventEmail NotificationText Notification
Subscription request initiated

This notification is sent when your customers initiate a checkout process through Cashfree's checkout page.
FalseTrue
Subscription rejected for payment

This notification is sent when your customers or their bank rejects the subscription.
FalseTrue
Subscription created for payment

This notification is sent when a subscription is created successfully and approved for payments through your customer's bank account.
TrueTrue
Upcoming payment (For periodic subscriptions - 48 hours prior to debit)

This notification is sent to your customers 48 hours prior to the subscription payment deduction. This will help customers ensure they have sufficient funds in their account.
FalseTrue
Payment confirmation - Success

This notification is sent to your customers when the payment for a subscription is successful.
TrueTrue
Payment confirmation - Failure

This notification is sent to your customers when the payment for a subscription has failed.
TrueTrue
Subscription Cancelled

This notification is sent to your customers when a subscription has been cancelled.
TrueTrue
Subscription created
A notification with the checkout link is sent to your customers. This is sent only if the notification is set as true during creation.
TrueTrue

General Pointers

  1. A subscription ends if any one of the following conditions are satisfied:
    • The maximum cycle reaches the given limit.
    • The subscription reaches the expiry date set during creation.
    • The subscription is cancelled from the dashboard or via API.
    • When your customer cancels it.