---
url: /cashfree-acellemail/guides/set-up-subscriptions.md
description: >-
  Create a plan in Cashfree, copy its plan_id into the Cashfree Subscription
  gateway, then map your AcelleMail plan to it in Remote Plan Mappings so
  recurring billing works.
---

# Set up subscriptions

The **Cashfree Subscription** gateway bills recurring plans through UPI AutoPay, eNACH and card
mandates. Cashfree has **no "list all plans" API**, so the plugin can't discover your plans
automatically — you tell it which plans exist and then **map** each AcelleMail plan to its Cashfree
counterpart. It's a short, one-time setup per plan.

::: info INR-only
Cashfree Subscriptions are **INR-only**, so only INR-priced plans are eligible. A plan in any other
currency won't map.
:::

## Step 1 — Create the plan in Cashfree

In the **Cashfree Dashboard → Subscriptions → Plans**, create each recurring plan (amount, interval,
currency INR). When it's saved, copy its **`plan_id`**.

![A plan in the Cashfree Subscriptions area](/cashfree-acellemail/img/cashfree-set-up-subscriptions-plan.png)
*Cashfree Dashboard → Subscriptions → Plans*

## Step 2 — Paste the plan IDs into the gateway

In AcelleMail go to **Admin → Payment Gateways → Cashfree Subscription → Edit**. In the **Cashfree
Plan IDs** box, paste your `plan_id`s — **one per line** — then save. This is the whitelist of plans
the gateway is allowed to bill.

## Step 3 — Map each local plan

Open **Admin → Remote Plan Mappings**. For each AcelleMail plan, choose the matching Cashfree
`plan_id` and click **Map**. The local plan and the Cashfree plan **must share the same currency and
amount** — otherwise billing would drift from what the customer agreed to.

Only **mapped, INR-priced** plans expose the Subscription gateway to customers. An unmapped plan shows
**"Cashfree Subscription — Not available for this plan"**.

## What the customer sees

On subscribe, the customer is taken to Cashfree's hosted page to **"Authorize ₹:amount recurring
mandate"**. Once authorized, Cashfree auto-debits each cycle and notifies the plugin by webhook, so
renewals happen without the customer returning.

::: tip Recurring debit windows
Per NPCI rules, recurring debits run **outside** the non-peak windows — that is, **not** during
10 AM–1 PM or 5 PM–9:30 PM IST. This is normal; a renewal may land just outside those hours.
:::

## Related pages

* [Subscriptions](/cashfree-acellemail/features/subscriptions)
* [Get your API keys](/cashfree-acellemail/guides/get-api-keys)
* [Configure webhooks](/cashfree-acellemail/guides/configure-webhooks)
* [Going live](/cashfree-acellemail/guides/going-live)
* [Troubleshooting](/cashfree-acellemail/troubleshooting)
