---
url: /relypay-whmcs/configuration.md
description: >-
  Connect your payment providers to RelyPay — enable each provider, test the
  connection, and wire up webhooks so payment results flow back into WHMCS.
---

# Configuration

Connect at least one payment provider on one screen: **Addons → RelyPay → Providers**. Enter credentials, test, then register RelyPay's webhook URL in the provider's dashboard.

![The RelyPay Providers page listing all five providers](/relypay-whmcs/img/relypay-configuration-providers.png)
*Addons → RelyPay → Providers*

## Connect a provider

1. **Addons → RelyPay → Providers** → select the provider.
2. Enter its credentials (see the table below and the per-provider guide).
3. **Enable** the provider.
4. **Test Connection** — verifies the credentials with the provider before any customer reaches checkout. Fix the keys if it fails.
5. Copy the webhook URL RelyPay shows and register it in the provider dashboard (next section).

Configure only the providers you will route to; configuring more than one lets [routing](/relypay-whmcs/features/routing) spread traffic and fall back automatically.

## Credentials by provider

| Provider | Key credentials | Notable options | Guide |
| --- | --- | --- | --- |
| **Razorpay** | Key ID, Key Secret, Webhook Secret | Payment Action (Capture / Authorize) | [Razorpay](/relypay-whmcs/guides/razorpay) |
| **Cashfree** | App ID, Secret Key | Test Mode, Checkout Mode (Redirect / Popup) | [Cashfree](/relypay-whmcs/guides/cashfree) |
| **PhonePe** | Client ID, Client Secret, Client Version | Payment Mode (Redirect / Iframe), Sandbox Mode | [PhonePe](/relypay-whmcs/guides/phonepe) |
| **PayGlocal** | Merchant ID, private/public key paths & IDs | Test Mode; powers recurring on international cards | [PayGlocal](/relypay-whmcs/guides/payglocal) |
| **Zoho Payments** | Account ID, API Key, OAuth Client ID, Client Secret, Refresh Token | Data Center, Webhook Secret, Test Mode | [Zoho](/relypay-whmcs/guides/zoho) |

## Set up webhooks

A webhook lets a provider report a payment's outcome (captured, failed, cancelled) even if the customer closes the browser. Without it, a paid invoice may not be marked paid.

For each provider:

1. Copy the **webhook URL** from the provider's config page in RelyPay.
2. Paste it into the provider dashboard's webhook/callback field.
3. Subscribe to the events RelyPay lists — required events must be on; optional ones enrich the [transaction log](/relypay-whmcs/features/transactions).
4. Save in the provider dashboard.

Each provider guide lists that provider's exact events and marks the required ones.

::: warning HTTPS required
Webhook endpoints must be served over HTTPS with a valid certificate — providers refuse to deliver to an insecure URL, and RelyPay signature-verifies every callback.
:::

::: info Every callback is verified
RelyPay signature-verifies every provider callback and ignores duplicates, so a payment is never processed twice.
:::

## Next

* Enable [sub-gateways](/relypay-whmcs/features/sub-gateways) under **Setup → Payment Gateways**.
* Set [Routing](/relypay-whmcs/features/routing) — currency, amount, percentage split, fallback.
* Review the [Settings reference](/relypay-whmcs/settings) for global options.

**Provider guides:** [Razorpay](/relypay-whmcs/guides/razorpay) · [Cashfree](/relypay-whmcs/guides/cashfree) · [PhonePe](/relypay-whmcs/guides/phonepe) · [PayGlocal](/relypay-whmcs/guides/payglocal) · [Zoho](/relypay-whmcs/guides/zoho)
