You need to enable JavaScript to run this app. 苹果IAP消耗型商品收据验证时in_app有2条数据,应验证哪条更新订单状态?
优惠活动
大模型
产品
解决方案
定价
更多

苹果IAP消耗型商品收据验证时in_app有2条数据,应验证哪条更新订单状态?

苹果IAP消耗型商品多收据验证选择方案

你遇到的in_app字段返回多条记录是消耗型商品验证的常见场景,选择逻辑如下:

  • 优先匹配订单关联的transaction_id:客户端发起支付后会生成唯一交易ID,你需要先将该ID和待验证订单绑定,再从in_app数组中筛选出transaction_id和当前订单存储的交易ID完全一致的条目,用该条目做有效性验证即可。
  • 若未提前存储交易ID,按以下优先级过滤:
    1. 第一步匹配product_id,排除和当前订单商品ID不符的条目
    2. 第二步在剩余条目中取purchase_date_ms(购买时间毫秒级时间戳)最新的条目,同时核验条目中的quantity字段和订单购买数量一致

验证通过完成订单状态更新后,务必将对应transaction_id存入服务端去重表,避免同一交易被重复核销;同时通知客户端调用finishTransaction方法,后续苹果返回的收据中就不会再携带该条已完成的消耗型交易记录。

附收据数据示例:
收据数据示例

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 12:06:04