Amazon Payfort集成Apple Pay沙箱测试返回00099错误原因排查
Apple Pay集成Amazon Payfort沙箱返回00099错误排查方案
核心错误原因(按出现概率排序)
- 金额字段格式错误:Payfort要求金额按照币种小数位放大后传整数,SAR币种的小数位为2位,你当前传的
amount = 100实际对应1SAR,若你要支付100SAR需传值10000;另外需确认你的沙箱商户配置支持当前请求的最小支付金额,金额低于最小限额也会报错。 - Apple Pay令牌无效:沙箱环境必须使用苹果沙箱测试账号生成的支付令牌,不能混用生产环境令牌;同时Apple Pay令牌有效期仅5分钟,超时生成的令牌会直接判定无效。
apple_transactionId大小写错误:Payfort对该字段大小写敏感,必须将苹果返回的transactionId转为全小写后再传,大写值会被识别为无效参数。- 商户权限未开通:请确认你的Payfort沙箱账号已经申请开通Apple Pay支付权限,且后台配置的Apple Pay商户ID、证书信息与你前端唤起Apple Pay用的参数完全匹配,权限缺失或配置不匹配都会触发无效请求错误。
- 请求头配置错误:发送POST请求时必须设置
Content-Type: application/json,请求头格式错误会导致Payfort无法正确解析JSON请求体,返回00099错误。 - 商户订单号重复:Payfort要求每笔请求的
merchant_reference唯一,若你此前用同一个订单号提交过请求,重复提交会直接被拦截。
快速验证方法
你可以先将amount调整为10000,重新生成新的Apple Pay沙箱令牌,把apple_transactionId转为小写后再次发起请求,大部分场景下可以解决当前问题。
内容的提问来源于stack exchange,提问作者mohamed ammar
相关产品推荐
相关产品推荐

