You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apple Pay JS 出现 payment Not Complete 错误相关问题咨询

问题根因说明

你遇到的问题不是苹果服务器返回内容有误,也不是证书异常导致的,核心问题出在时间戳处理逻辑和Apple Pay会话的调用流程错误两个方面。


具体问题拆解与解决方法

1. 时间戳异常问题

苹果返回的epochTimestamp和expiresAt本身是标准的13位毫秒级Unix时间戳,返回值完全正常,不需要做任何修改。
你转换得到错误日期,是因为将毫秒级时间戳直接作为秒级时间戳传入了日期转换方法,才会出现远晚于当前时间的错误结果,不需要手动去掉最后三位数值。

2. 会话提前取消、回调提前触发问题

这个问题的常见诱因有两类,按优先级排查即可:

  • 调用completeMerchantValidation时传入的参数不符合要求:必须传入从苹果商户验证接口获取的完整原始 merchant session 对象,不能自行修改、删减任何字段,也不能将对象转为字符串后再传入,需要直接传入JSON解析后的原始对象。
  • 回调绑定顺序错误:所有会话回调(包括onpaymentauthorized、onpaymentmethodselected、oncancel等)必须在创建ApplePaySession实例之后、调用session.begin()启动会话之前完成绑定,如果是在会话启动后才绑定回调,就会出现回调触发时机异常、会话提前取消的问题。

补充排查方向

如果调整后问题仍存在,可确认是否在会话生命周期内触发了未捕获的异常,这类异常也会触发Apple Pay会话的自动取消逻辑。

内容的提问来源于stack exchange,提问作者Dev Team

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 12:18:04