创建 iOS 自动续订订阅
自动续订订阅可让您定期访问 iOS 应用中的内容、服务或高级功能。本指南将引导您完成在 App Store Connect 中创建订阅的过程。
自动续订订阅会在每个计费周期结束时自动续订,直到用户取消为止。它们非常适合:
- 优质内容和功能
- 无广告体验
- 云存储和同步
- 流媒体服务
- 专业工具和实用程序
在创建订阅之前,您必须:
- 创建订阅群组 整理您的订阅
- 拥有活跃的 Apple 开发者计划会员资格
- 在 App Store Connect 中填写完整的银行和税务信息
-
导航至订阅
在 App Store Connect 中,选择您的应用并转到 获利 > 订阅。
选择您的订阅组或根据需要创建一个新订阅组。

-
创建新订阅
单击订阅组旁边的 ++ 图标以添加新订阅。
-
输入基本信息
参考名称:供您内部使用的描述性名称(不向客户显示)
- 示例:“每月保费”、“终极年度”、“基本计划”
产品 ID:此订阅的唯一标识符(以后无法更改)
- 格式:
com.yourcompany.yourapp.premium_monthly - 使用带有下划线的描述性小写名称
- 配置本机购买插件所需

-
配置持续时间
从可用选项中选择订阅持续时间:
- 1 周
- 1个月
- 2个月
- 3个月
- 6个月
- 1年
持续时间决定了用户计费的频率。
-
设置定价
单击 添加订阅价格 以配置定价:
基本领土:选择您的主要市场(通常是您所在的国家/地区)
价格:设置订阅价格
- Apple 自动转换为其他货币
- 从 Apple 的价格等级中选择
- 考虑感知价值和市场价格

-
家庭共享(可选)
决定是否启用家庭共享,最多允许 6 名家庭成员访问订阅。
:::注意 一旦启用家庭共享,此产品就无法将其关闭。 :::
启用如果:
- 内容适合家庭使用
- 您想要增加价值主张
- 你的商业模式支持它
如果出现以下情况,请勿启用:
- 订阅仅供个人使用
- 内容针对用户进行个性化
- 您希望最大化每个用户的收入
-
添加本地化
添加您的应用程序支持的所有语言的订阅显示信息:
订阅显示名称:面向客户的名称(例如“每月高级版”)
描述:订阅内容的简要描述
- 保持简洁并以利益为中心
- 提及关键特征
- 突出价值主张
8. App Store 宣传图片(可选)
上传此订阅的宣传图片(312x390 像素):
- 显示在 App Store 订阅页面
- 应符合您的应用程序的设计
- 为了清楚起见,请包含订阅名称
:::注意 虽然初次提交时图像是可选的,但在 App Store 中进行促销展示时需要它们。您可以稍后添加它们。 :::
-
保存并提交
单击 保存 创建订阅。
首次订阅:
- 必须与新的应用程序版本一起提交
- 包含在您的下一次 App Store 提交中
- 无法独立提交
对于后续订阅:
- 可以直接从订阅页面提交
- 不需要新的应用程序版本
- 首次订阅获得批准后可用
您的订阅将具有以下状态之一:
| 状态 | 描述 | 可以测试吗? |
|---|---|---|
| 缺少元数据 | 设置不完整 | 是(沙盒) |
| 准备提交 | 已完成但未提交 | 是(沙盒) |
| 等待审核 | 已提交至 Apple | 是(沙盒) |
| 审查中 | 正在由 Apple 审核 | 是(沙盒) |
| 已批准 | 可供购买 | 是的 |
| 被拒绝 | 需要改变 | 是(沙盒) |
在您的应用程序中使用
Section titled “在您的应用程序中使用”创建后,使用产品 ID 在应用程序中引用订阅:
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
// Fetch subscription products direct from StoreKitconst { products } = await NativePurchases.getProducts({ productIdentifiers: [ 'com.yourcompany.yourapp.premium_monthly', 'com.yourcompany.yourapp.premium_annual', ], productType: PURCHASE_TYPE.SUBS,});
products.forEach((product) => { console.log(`${product.title}: ${product.priceString}`); console.log(`Duration: ${product.subscriptionPeriod}`); console.log(`Description: ${product.description}`);});
// Purchase a subscription (StoreKit 2 automatically handles intro pricing and offers)try { const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'com.yourcompany.yourapp.premium_monthly', productType: PURCHASE_TYPE.SUBS, });
console.log('Transaction ID:', transaction.transactionId);
// StoreKit receipts are included on iOS for server-side validation await sendReceiptToBackend(transaction.receipt);} catch (error) { console.error('Purchase failed:', error);}
// Check subscription status using the store's dataconst { purchases } = await NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS,});
const premium = purchases.find( (purchase) => purchase.productIdentifier === 'com.yourcompany.yourapp.premium_monthly',);
if (premium?.isActive) { console.log('Expires:', premium.expirationDate); console.log('Will renew:', premium.willCancel === false); console.log('Store state:', premium.subscriptionState); unlockPremiumFeatures();} else { showPaywall();}- 每月计划:降低进入门槛,养成习惯
- 年度计划:更好的价值、更高的生命周期价值、更低的流失率
- 多层次:针对不同用户群的基础版、高级版、终极版
- 竞争分析:研究类似应用程序的定价
- 使用一致的命名:
company.app.tier_duration - 在 ID 中包含等级和持续时间:
premium_monthly、ultimate_annual - 避免更改产品 ID(它们是永久性的)
- 记录您团队的所有产品 ID
- 支持面向家庭的应用程序(游戏、教育、娱乐)
- 考虑对收入的影响
- 彻底测试共享行为
- 沟通营销共享能力
- 翻译所有订阅名称和描述
- 考虑区域定价差异
- 测试所有支持语言的显示
- 使用适合文化的营销语言
- 保持一致的视觉风格
- 包括订阅名称和主要好处
- 季节性促销更新
- 匹配应用程序的整体设计语言
常见订阅模式
Section titled “常见订阅模式”单层(免费增值)
Section titled “单层(免费增值)”Free App + Premium Subscription- Basic: Free (limited features)- Premium Monthly: $4.99- Premium Annual: $39.99 (save 33%)多层(好、更好、最好)
Section titled “多层(好、更好、最好)”- Basic Monthly: $4.99- Premium Monthly: $9.99- Ultimate Monthly: $19.99
- Basic Annual: $49.99- Premium Annual: $99.99- Ultimate Annual: $199.99消耗品 + 订阅混合
Section titled “消耗品 + 订阅混合”- Credit packs (consumable)- Monthly subscription (unlimited credits)- Annual subscription (unlimited + bonus features)订阅未在应用程序中加载:
- 验证产品 ID 完全匹配(区分大小写)
- 检查订阅是否在订阅组中
- 确保包标识符匹配 App Store Connect
- 创建产品后等待 2-3 小时无法提交订阅:
- 填写所有必填字段(名称、描述、价格)
- 添加至少一种本地化
- 验证银行/税务信息是否获得批准
- 检查是否首次订阅(需要应用程序版本)
家庭共享切换已禁用:
- 已启用(无法禁用)
- 检查订阅详细信息
- 如果卡住,请联系 Apple 支持
价格等级不可用:
- 在某些地区可能受到限制
- 选择替代等级
- 有关定价问题,请联系 Apple
“产品 ID 无效”错误:
- 必须是反向域格式
- 不能包含空格或特殊字符
- 检查拼写错误
- 验证所有产品的唯一性
有关更多详细信息,请参阅有关自动续订订阅的官方 Apple 文档。