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

后端验证Google订阅时如何获取用户所选Base Plan ID?

获取Google Play订阅用户所选Base Plan ID的解决方案(服务账号认证场景)

嘿,我之前遇到过一模一样的问题!Google推出Base Plans之后,一开始我也在V1和V2接口里找不到对应的ID,后来才发现关键信息藏在V2接口的嵌套字段里。以下是具体的解决步骤:

  • 首先确保你调用的是Subscriptions V2接口(purchases.subscriptionsv2.get),旧版的V1订阅接口确实不支持Base Plan相关字段,必须用V2接口才行。
  • 在接口返回的SubscriptionPurchaseV2对象中,找到lineItems数组——这个数组包含了当前订阅的所有计费条目,通常只会有一个条目对应用户正在使用的Base Plan。
  • 数组里的每个SubscriptionPurchaseLineItem对象中,都有一个basePlanId字段,这就是你要找的用户所选Base Plan的ID。

给你看个简化后的响应示例,方便你定位字段:

{
  "lineItems": [
    {
      "productId": "你的父订阅产品ID",
      "basePlanId": "monthly_base_plan", // 这就是目标Base Plan ID
      "expiryTime": "2024-12-31T23:59:59Z",
      "autoRenewing": true
    }
  ],
  "subscriptionId": "你的订阅ID",
  // 其他响应字段...
}

另外还要注意两个关键点:

  • 确认你的服务账号已经配置了Android Publisher API的正确权限,至少需要「查看应用信息并下载报告」的权限,拥有「管理应用发布」权限会更稳妥。
  • 检查你的接口调用是否使用了最新的API版本(当前是v3),同时确保后端解析响应时没有遗漏lineItems这个嵌套字段。

既然你已经能在Play Console的订单详情里看到Base Plan信息,说明数据肯定是存在的,只要按照上面的方式调用V2接口,就能在后端拿到这个ID用于订阅验证了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 23:39:09