---
url: /phonepe-whmcs/faq.md
description: >-
  Common questions about PhonePe for WHMCS — redirect vs iframe checkout,
  whether you need a webhook, KYC, card data, sandbox testing, updates, and what
  happens if your license lapses.
---

# FAQ

Quick answers to the questions buyers ask most about PhonePe for WHMCS. For step-by-step fixes,
see [Troubleshooting](/phonepe-whmcs/troubleshooting).

## What's the difference between redirect and iframe checkout?

Choose your checkout experience via the **Payment Mode** setting:

* **Redirect (default):** Sends customers to PhonePe's hosted checkout page and returns them upon completion.
* **Iframe:** Opens PhonePe checkout as a popup overlay directly on the WHMCS invoice page.

See [Payment modes](/phonepe-whmcs/features/payment-modes).

## Do I need to set up a webhook?

Yes. Webhooks notify WHMCS when payments succeed so invoices update instantly:

1. **Register URL:** Add `https://yourdomain.com/modules/gateways/phonepe/webhook.php` in your PhonePe dashboard.
2. **Set credentials:** Define a username and password in PhonePe, then enter the exact same credentials in your WHMCS gateway settings.

See [Webhooks](/phonepe-whmcs/features/webhooks).

## Do I need a PhonePe Business account and KYC?

Yes. You need a **PhonePe Business** account that has completed **KYC verification** to obtain live
API credentials and take real payments. Follow the
[PhonePe setup guide](/phonepe-whmcs/guides/phonepe-setup).

## Does the gateway store customers' card data?

No. The gateway does not store card data. Payment happens on PhonePe's checkout (redirect or
iframe), and the module only records the transaction result and fee returned by PhonePe. See
[Security](/phonepe-whmcs/features/security).

## Can I test before going live?

Yes. Set **Sandbox Mode** to **Yes** in gateway settings to test transactions against PhonePe's sandbox environment. Switch **Sandbox Mode** to **No** when ready for live payments. See [Going live](/phonepe-whmcs/guides/going-live).

## Is the webhook secured?

Yes. Each webhook is **SHA256 hash-authenticated** using the username and password you set on both
sides, and the gateway makes a secondary call to PhonePe to confirm the payment status before
marking an invoice Paid — dual verification.

## What are the transaction fees, and are they recorded?

PhonePe's fee for each payment is returned in its response, and the gateway records that fee against
the transaction automatically, so your WHMCS records reflect the net.

## How do I update the module?

Manually, from your relyweb.co client area — there's no in-app updater. Download the latest version
and overwrite the module files, then re-check your settings. See
[Updating](/phonepe-whmcs/updating).

## What happens if my license lapses?

An **inactive** license **disables PhonePe payment processing** until a valid key is saved. Local background caching prevents brief licensing-server outages from interrupting active checkouts. See [Licensing](/phonepe-whmcs/licensing).

## What are the requirements?

* **Environment:** PHP 8.2+, WHMCS 8.13+ (or 9.x), ionCube Loader 13.0.2+.
* **Extensions:** `curl`, `openssl`, and `json`.
* **Infrastructure:** Valid SSL certificate (HTTPS) and an active relyweb.co license.

See [Requirements](/phonepe-whmcs/requirements).

## Where do I see what happened with a payment?

In **Utilities → Logs → Gateway Log**. Every PhonePe attempt — success, webhook, or failure — is
recorded there, which is the first place to look when something doesn't behave as expected.

## Can I switch between redirect and iframe later?

Yes. Change the **Payment Mode** field in **Setup → Payment Gateways → PhonePe** and **Save
Changes** at any time; it takes effect for new checkouts immediately.

## Related pages

* [Payment modes](/phonepe-whmcs/features/payment-modes) — redirect vs iframe in detail
* [Webhooks](/phonepe-whmcs/features/webhooks) — how results come back
* [Troubleshooting](/phonepe-whmcs/troubleshooting) — when something goes wrong
* [Licensing](/phonepe-whmcs/licensing) — license types and what a lapse means
