Appearance
Going live
Once your credentials and webhook are in place, don't flip straight to live payments. Run a real end-to-end test in sandbox first, confirm every part of the flow works, then turn Sandbox Mode off with confidence. This guide gives you both halves: the sandbox test and the go-live checklist.
1. Test in sandbox
Under Setup → Payment Gateways → PhonePe, set Sandbox Mode to Yes and Save Changes. Sandbox uses PhonePe's test environment, so no real money moves.
Setup → Payment Gateways → PhonePe → Sandbox Mode
Then run a full test payment against a test invoice and confirm the whole chain works:
- Pay Now launches checkout in your chosen payment mode (redirect or iframe).
- You can complete the payment on PhonePe's side.
- The webhook reaches your site and passes the SHA256 auth and the secondary API check.
- The invoice is marked Paid and the transaction fee is recorded.
If something doesn't complete
Open Utilities → Logs → Gateway Log — it's the first place to look. A rejected webhook (a 401) almost always means the Webhook Username/Password don't match between PhonePe and WHMCS.
2. Go-live checklist
When the sandbox payment works end to end, confirm each of these before switching to production:
- [ ] KYC is verified on your PhonePe Business account.
- [ ] Client ID and Client Secret are the production credentials from the merchant dashboard.
- [ ] The webhook URL is registered in the dashboard over HTTPS:
https://yourdomain.com/modules/gateways/phonepe/webhook.php - [ ] Webhook Username and Webhook Password match exactly between PhonePe and WHMCS.
- [ ] Your SSL certificate is valid on the WHMCS domain.
- [ ] Your License Key is entered and active (payments are disabled while it's inactive).
- [ ] You've picked the Payment Mode you want and tested it in your live theme.
3. Switch Sandbox Mode off
Set Sandbox Mode to No and Save Changes. The gateway now uses PhonePe's live environment and starts taking real payments.
Do one live test
Make one small real payment right after going live to confirm production credentials and the webhook behave exactly as they did in sandbox. Check the Gateway Log and the invoice status, then you're done.
Related pages
- PhonePe setup — credentials and webhook
- Payment modes — redirect vs iframe
- Webhooks — how results are verified
- Troubleshooting — when something doesn't complete