---
url: /razorpay-acellemail/guides/going-live.md
description: >-
  Move from Razorpay test keys to live keys in Plugin Settings, set the
  production Webhook Secret and URL, and run a small real payment to confirm
  everything works.
---

# Going live

You've been testing with `rzp_test_…` keys and everything works — now you're ready to take real
money. Going live with Razorpay in AcelleMail is a key swap, not a mode toggle: the **environment
switches with the key prefix**, so there's no separate sandbox checkbox to flip. This page walks you
through the cutover.

## 1. Confirm the test flow first

Before switching, make sure the full flow works with your `rzp_test_…` keys: a one-time payment
through the **Razorpay** gateway, and — if you sell recurring plans — a subscription through the
**Razorpay Subscription** gateway with a mapped plan. Fix any issues while you're still in test.

## 2. Swap in your live keys

Open **Admin → Plugins → Razorpay → Settings** and replace your test credentials with your
production pair:

* **API Key ID** — your `rzp_live_…` Key ID
* **API Key Secret** — the matching live Key Secret

::: tip The prefix is the switch
As soon as the Key ID starts with `rzp_live_`, the plugin talks to Razorpay's live environment.
There's nothing else to enable.
:::

## 3. Set the production webhook

In the **Razorpay Dashboard → Webhooks**, set the **production Webhook Secret** and confirm the
webhook **URL** points at your live site:

```
https://YOUR_DOMAIN/cashier/razorpay/webhooks
```

Then paste that same Webhook Secret into **Webhook Secret** in Plugin Settings so live events
verify. See [Configure webhooks](/razorpay-acellemail/guides/configure-webhooks) for the events to
enable.

## 4. Re-save Settings

Click **Save Settings** so the live keys and webhook secret take effect and the license re-checks.

## 5. Run a small live payment

Make one real, low-value payment through the **Razorpay** gateway to confirm the end-to-end flow —
checkout, capture, and the webhook landing back in AcelleMail. Once that clears, you're live.

::: warning Live means real money
A `rzp_live_…` payment is a genuine charge. Use a small amount for the smoke test and refund it from
your Razorpay Dashboard if needed.
:::

## Related pages

* [Get your API keys](/razorpay-acellemail/guides/get-api-keys) — test vs live key prefixes
* [Configure webhooks](/razorpay-acellemail/guides/configure-webhooks) — production URL and secret
* [Settings reference](/razorpay-acellemail/settings) — the Plugin Settings fields
* [Troubleshooting](/razorpay-acellemail/troubleshooting) — payments failing after go-live
