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

如何判定PayPal订单已过期?订单查询接口未返回过期时间

判定PayPal V2订单是否过期的方法

下面两种方法可以帮你判断订单是否过期,从而触发重新创建订单的逻辑:

方法1:结合订单创建时间与状态推算

PayPal标准V2订单默认的过期时长为创建后3小时,你可以通过以下步骤判断:

  • 调用/v2/checkout/orders/{id}接口,获取订单的create_time(ISO 8601格式的UTC时间)和当前status字段
  • 若订单状态为CREATED或APPROVED,且当前UTC时间与create_time的间隔超过3小时,即可判定订单已过期
  • 如果你在创建订单时通过application_context.expiration_time自定义了过期时间,务必自行存储该时间,后续直接对比当前UTC时间即可

方法2:通过支付操作的错误响应判断(更准确)

直接尝试对目标订单发起支付操作(如调用/v2/checkout/orders/{id}/capture或/v2/checkout/orders/{id}/authorize),根据接口返回的错误信息判断:

  • 如果接口返回ORDER_EXPIRED的错误码,说明订单已过期,此时可以直接重新创建订单
  • 这种方法不受默认或自定义过期时间的影响,是最准确的判定方式

注意事项

  • 计算时间差时务必使用UTC时间,避免时区差异导致的误判
  • 若采用自定义过期时间,一定要在创建订单时同步存储该时间,不要依赖查询接口返回(因为当前接口确实不提供该字段)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 02:55:55