Skip to content

Troubleshooting

Most problems come down to one of four things: the license isn't Active, a plan isn't mapped, the API keys are wrong (or point at the wrong environment), or the Webhook Secret doesn't match. Work through the checks below — they're ordered by how often they're the cause.

Gateways not appearing after saving

If Razorpay and Razorpay Subscription don't show up in Admin → Payment Gateways → Add:

  • Open Admin → Plugins → Razorpay → Settings and check the license badge. It must read Active. If it shows Not configured or Invalid — payment gateway is disabled, the gateways stay hidden.
  • Make sure the server can reach relyweb.co over HTTPS (port 443). A local background check runs there; brief outages are tolerated, so re-save Settings to restore the badge.
  • Click Save Settings — the gateways are auto-created on save, not before.

Subscription not available

If a plan shows "Razorpay Subscription — Not available for this plan", the plan isn't eligible:

  • Map the plan. In Admin → Remote Plan Mappings, map your local AcelleMail plan to the matching Razorpay plan (same currency and amount) and click Map. See Set up subscriptions.
  • Check the currency. Razorpay here is INR-only — the plan must be priced in INR. The direct Razorpay gateway needs no mapping.

Payments failing

If checkout errors or payments don't complete:

  • Recheck your API Key ID and API Key Secret in Settings — a mistyped secret fails silently.
  • Confirm the environment matches the key prefix: rzp_test_ for test, rzp_live_ for live. Testing with live keys (or the reverse) will fail. There's no sandbox checkbox — the prefix decides.
  • Check the AcelleMail transaction log for the specific outcome, and see the error reference.

Webhook not working

If subscription renewals or payment confirmations don't update:

  • In Razorpay Dashboard → Webhooks, confirm the URL is exactly https://YOUR_DOMAIN/cashier/razorpay/webhooks.
  • Make sure the Webhook Secret is identical in the Razorpay dashboard and in Plugin Settings — every webhook is HMAC-SHA256 signature-verified, and a mismatch is rejected. See Configure webhooks.

ionCube missing

If the plugin shows "ionCube Loader required" or a parse error on install, the ionCube Loader isn't active. Enable ionCube Loader 13.0.2 or newer on PHP 8.2–8.5 (check with php -m | grep -i ioncube or Admin → Info). See Requirements.

Documentation for the Relyweb app catalogue.