自动续订订阅:3 天试用结束后大量用户扣款失败并进入账单宽限期(美国区 / DID_FAIL_TO_RENEW)

标题:

iOS 自动续订订阅:3 天试用结束后大量用户扣款失败并进入账单宽限期(美国区 / DID_FAIL_TO_RENEW)

大家好,我是开发者,想请教一个订阅扣款/续费异常的问题。

现象(问题描述)

我的 App 提供自动续订订阅(1 个月,含 3 天免费试用)。近期观察到一个非常异常的现象:

  • 约 70% 的用户在“免费试用结束 → 首次扣款续费”这个节点,出现续费失败并进入账单宽限期(Billing Grace Period)
  • 在我开启宽限期以前,同样比例的用户会从“试用结束”直接变为已过期(Expired)(看起来是同一批“扣款失败”被不同策略呈现)

用户主要都是美国用户(storefront: USA),未在中国区发布。

订阅配置(App Store Connect)

  • 产品类型:Auto-Renewable Subscription(自动续订订阅)
  • 订阅周期:1 month
  • Product ID:monthly_trial(如需可替换为实际)
  • 价格(美国):$12.99 / month
  • 免费试用:3 days(P3D)
  • 环境:Production
  • 其他:Family Sharing 未开启(如有影响也请指正)

技术与接入情况

  • iOS 客户端:目前还是 StoreKit 1(存在使用 SKReceiptRefreshRequest 刷新收据的逻辑)
  • 服务端:已接入 App Store Server Notifications V2,并在服务端做订阅状态更新与权益判断
  • 宽限期内:目前策略是继续给用户订阅权益,并提示用户检查/更新 Apple ID 付款方式

脱敏后的通知示例(App Store Server Notifications V2)

下面是一条典型事件(仅保留关键字段,ID 做脱敏处理):

事件 1:用户开始订阅(试用)

  • notificationType:SUBSCRIBED
  • subtype:INITIAL_BUY
  • offer:FREE_TRIAL(3 days)
  • price:0
  • storefront:USA(143441)
  • originalTransactionId:2000029926****436
  • purchaseDate(ms):1768156450000
  • expiresDate(试用结束,ms):1768415650000

事件 2:试用结束尝试扣款失败,进入宽限期

  • notificationType:DID_FAIL_TO_RENEW
  • subtype:GRACE_PERIOD
  • expirationIntent:2(Billing error)
  • isInBillingRetryPeriod:true
  • renewalPrice:12990(USD 价格对应 $12.99)
  • renewalDate(ms):1768415650000
  • gracePeriodExpiresDate(ms):1769798050000
  • transaction expiresDate(ms):1769798050000
  • originalTransactionId:2000029926****436
  • appTransactionId:7051882678****984

(说明:以上时间戳/ID 已脱敏;如需要我也可以补充更多样本字段,但会继续脱敏。)

我想请教的问题

  1. 有没有人遇到过类似情况:美国区用户在试用转正时大量出现 DID_FAIL_TO_RENEW / GRACE_PERIOD?这更可能是付款方式/风控层面的正常现象,还是可能存在某段时间 App Store 扣款通道异常?
  2. 对于 StoreKit 1 + receipt / 服务端通知 的组合,权益判断上是否有常见踩坑点?(例如:只看 expiresDate 导致误判、对 billing retry/grace 的处理不一致等)
  3. 在用户处于 Billing Retry / Grace Period 时,Apple 官方建议的用户引导路径是什么?(目前仅提示用户去 Apple ID 更新付款方式)
  4. 是否有必要迁移到 StoreKit 2 才能更可靠地识别 .inGracePeriod / .inBillingRetryPeriod?还是说这与扣款成功率本身无关,主要只影响“我们如何判断权益”?

已做/已排查

  • 已确认订阅价格与试用配置在 App Store Connect 中无误
  • 目前宽限期内不降级权益
  • 现象仍然存在:宽限期/扣款失败比例异常偏高(约 70%)

非常感谢大家提供排查方向或类似案例 🙏

如果需要我补充更多字段/更多样本,我也可以继续脱敏后补充。

iPhone 15 Pro Max, iOS 26

发布日期 2026年1月15日 上午2:47

回复
回复量:1

自动续订订阅:3 天试用结束后大量用户扣款失败并进入账单宽限期(美国区 / DID_FAIL_TO_RENEW)

欢迎来到 Apple 支持社区
Apple 客户在其产品方面互相帮助的论坛。使用您的 Apple 帐户开始畅游其中吧!!