Skip to main content
Cashfree Subscriptions lets you set up and manage recurring payments for your customers.
  • INITIALIZED – Subscription created, authorization pending.
  • BANK APPROVAL PENDING – Authorization successful, pending bank approval.
  • ACTIVE – Subscription registered across NPCI and destination bank.
  • ON HOLD – A charge has failed for the subscription.
  • PAUSED – Subscription is paused by the merchant.
  • COMPLETED – Subscription completed its scheduled duration.
  • CUSTOMER CANCELLED – Subscription cancelled by the customer.
  • CUSTOMER PAUSED – Subscription paused by the customer.
  • EXPIRED – In seamless subscriptions, authorization wasn’t attempted before expiry.
  • LINK EXPIRED – In non-seamless subscriptions, authorization wasn’t attempted before expiry.
Yes. You can retry the last failed charge via the Dashboard or API.
Refer to the retry subscription charge API for details.
No. You can’t extend the expiry date of a subscription. You can cancel the subscription and create a new one.
Yes. You can test any subscription model in the test environment before going live.
You can use webhooks to receive notifications for all transactions.
Follow these steps to configure webhooks.
Yes. You can update the recurring amount of an active subscription using the Update Recurring Amount API.
The customer is authenticated by their bank using either net banking or debit card credentials. Debit card credentials are used only for authentication. Therefore, the mandate remains valid even if the debit card expires.
Mandate creation and transactions may fail due to operational or customer-related issues. View the common failure reasons.
Only savings accounts and individual (proprietor) current accounts are supported. Most destination banks do not support mandates for proprietor current accounts. For unsupported cases, consider using Physical NACH.
Yes. Customers can pause or cancel a mandate from their UPI app (Mandates > Active Mandates > Pause/Cancel > Submit).
No. Only the customer can resume a paused mandate from their UPI app.
The expiry period for an eNACH mandate can be set up to a maximum of 30 years.
If the card expires, the subscription is marked as card_expired.
Yes. The subscription_card_expiry_reminder webhook is triggered 6 days before the card expiry.
Once the card expires, the subscription moves to card_expired status. Further charges cannot be processed.
The merchant must create a new mandate using the updated card details. The customer must then authorise the new mandate.
Cashfree offers four different payment methods, each with specific limits on the allowed subscription amounts, as outlined below.
  • UPI AutoPay
  • Cards
  • eNach
  • Physical Mandate
Learn more about these payment modes.
Yes, it is fully compliant with the new Digital Lending Guidelines by RBI. NBFCs and Fintechs can use Cashfree Payments to collect repayments, disburse credit, and co-lend without a hassle.
Cashfree Subscriptions caters to various industries with diverse use cases. Some of the top ones include:
  • NBFCs and digital lending apps
  • OTT platforms
  • Ed-tech platforms
  • E-commerce companies
  • Investment firms
  • Insurance providers
  1. Go to Subscription Dashboard > All subscriptions > Create Subscriptions
  2. Enter details – Add customer info, subscription ID, recurring amount, due date, and max debits.
To create a new subscription from the dashboard, go to Subscriptions Dashboard > All Subscriptions > Create Subscription.You can also create multiple subscriptions at once using the dashboard. Go to Subscriptions Dashboard > Batch Subscriptions > Upload File to upload a file that contains all the information required for multiple subscriptions.Learn more
For On-Demand subscriptions, when you want to initiate a large number of payments for multiple subscriptions, you can use the Bulk Payments feature.
Cashfree supports importing mandate information for a subscription. You can move any historical mandate data to Cashfree and continue processing transactions in Cashfree. Cashfree Payments ensures a smooth mandate porting experience.To initiate the porting process:
  1. Contact Cashfree support: Initiate the porting process by nominating Cashfree as your payment processing partner for your Utility Code or mandates.
  2. Partner bank coordination: Share the mandate list with your partner bank to update their systems. Our team will guide you through the process.
  3. Import mandates: Upload the updated mandate list into Cashfree’s system.
  4. Start processing payments: Once imported, you can begin processing payments seamlessly through Cashfree. Learn more about importing mandates.
Once the eMandate is successfully created, the corresponding transactions can get declined due to the reasons listed below:
Multiple auths will appear if the customer attempts the transaction more than once.
Yes, subscription may move to SUCCESS state or it may move to FAILED state based on bank’s confirmation. But the subscription state will move to terminal state.
No, the subscription will move to SUCCESS.
Offers are not currently supported with Subscriptions.
The customer’s phone number is primarily used for sending payment links to customers and sending subscription mandate notifications for recurring payments. It may also be used for transaction-related communication where applicable. This applies to both domestic and international transactions wherever relevant.
It is not mandatory for the merchant to perform OTP validation at their end. However, since the customer’s phone number is used to send payment links and important mandate notifications, we expect the number to be accurate. If an incorrect number is provided, the customer may not receive the communication.
Yes, Cashfree performs a basic validation check to ensure the phone number is in the correct format. For Indian transactions, this includes verifying that it is a valid 10-digit mobile number. This is only a format-level validation and does not include OTP-based verification.
If a subscription remains in the INITIALIZED state and the configured expiry time is reached, and there is no successful authorization/payment against the subscription (or the authorization attempt fails), the subscription will continue to remain in the INITIALIZED state. Once the subscription crosses its expiry time, it will be moved to the EXPIRED state.
No. The debit amount cannot change after the PDN is initiated. If the executed debit amount differs from the amount notified in the PDN, the transaction is declined by the issuing bank due to the amount-match logic enforced at the issuing bank.
Once the authorization payment is successfully completed and the subscription moves to the ACTIVE state, the behaviour is different. Even if the merchant has not specified the number of cycles (max_cycles), when the subscription reaches its configured expiry time (expires_on), the subscription will be moved to the COMPLETED state and not the EXPIRED state.