如何调试生产环境中Razorpay Standard Checkout订阅功能故障?
Razorpay Standard Checkout订阅生产环境UPI支付500错误排查方案
核心问题复盘
测试环境订阅功能正常,但生产环境使用UPI ID、手机号支付或扫码时触发通用SERVER_ERROR,API返回500状态码,提交的支持工单未得到响应。
排查与解决步骤
- 核对生产环境核心配置
- 确认使用正式API密钥(而非测试密钥),在商家后台检查密钥是否启用了订阅及UPI支付权限
- 验证生产环境的订阅计划状态:是否已激活、币种是否为INR(UPI仅支持印度卢比)、计划的周期/金额设置符合平台规则
- 校验请求参数一致性
- 对比测试与生产环境的Checkout初始化请求参数,重点确认
plan_id为生产环境对应计划ID,customer信息格式合法,notes字段无特殊字符或非法内容 - 检查UPI相关参数:UPI ID需符合
xxx@bank格式,手机号需为印度境内有效号码(若业务面向印度用户)
- 对比测试与生产环境的Checkout初始化请求参数,重点确认
- 排查网络与环境限制
- 确认生产服务器IP在Razorpay的IP白名单中(部分企业账户有此限制)
- 检查生产环境是否存在代理、防火墙拦截Razorpay的API请求或回调
- 验证生产环境SSL证书有效性,Razorpay API强制要求HTTPS请求,证书异常会导致底层通信故障
- 缩小故障范围与日志收集
- 测试信用卡/借记卡等其他支付方式,确认是否仅UPI渠道异常
- 开启生产环境详细日志,记录完整请求参数、API响应头及错误堆栈,为后续支持排查提供精准信息
- 应急处理方案
- 若Razorpay支持长期无响应,可临时切换至备用支付网关的UPI渠道,保障业务正常运行
- 通过Razorpay商家后台的生产环境测试工具发起UPI订阅支付,排查是集成代码问题还是平台侧故障
内容的提问来源于stack exchange,提问作者Anu
相关产品推荐
相关产品推荐

