Appearance
Troubleshooting
Step-by-step diagnostic procedures for resolving gateway visibility, plan mapping, webhook synchronization, and payment issues.
Gateways not appearing after saving
If Razorpay and Razorpay Subscription don't show up in Admin → Payment Gateways → Add:
- Check license badge: Open Admin → Plugins → Razorpay → Settings and verify the Active badge. Inactive licenses hide the gateways.
- Confirm outbound HTTPS: Ensure the server reaches
relyweb.coon port 443. Click Save Settings to refresh validation. - Trigger registration: Gateways are created upon clicking Save Settings with a valid license.
Subscription not available
If a plan shows "Razorpay Subscription — Not available for this plan", the plan isn't eligible:
- Verify remote plan mapping: Navigate to Admin → Remote Plan Mappings and map your local plan to a matching Razorpay plan. See Set up subscriptions.
- Verify currency: Ensure the local plan is priced in INR (Razorpay integration is INR-only).
Payments failing
- Audit API credentials: Verify that API Key ID and API Key Secret match the Razorpay dashboard exactly.
- Verify key prefix: Ensure your key matches the intended environment (
rzp_test_vsrzp_live_). - Review transaction logs: Inspect the AcelleMail payment log for exact failure codes, then consult Errors.
Webhook not working
If renewals or payment confirmations don't update:
- Verify endpoint URL: Ensure the webhook URL in the Razorpay dashboard matches:
https://YOUR_DOMAIN/cashier/razorpay/webhooks - Verify Webhook Secret: Ensure the secret string in Razorpay matches Webhook Secret in AcelleMail Plugin Settings. See Configure webhooks.
- Verify subscribed events: Ensure
payment.captured,subscription.charged, andpayment.failedare enabled.
ionCube missing
If the plugin displays "ionCube Loader required" or a parse error:
- Verify active extensions via
php -m | grep -i ioncubeor under Admin → Info. - Install or enable ionCube Loader 13.0.2 or newer on PHP 8.2–8.5. See Requirements.