App Store 提交
让你的应用在 Shopify App Store 上架是一个重要的里程碑,但提交流程非常严格。Shopify 的应用审核团队会根据详细的质量、性能、安全性和用户体验标准来评估你的应用。本模块将带你了解最新的要求、Built for Shopify 徽章计划、上架页面优化策略,以及有效的定价模式。
应用审核要求(Winter '26 更新)
Shopify 在 Winter '26 发布周期中更新了应用审核要求。这些变更更加强调嵌入式应用体验、性能影响衡量和数据隐私合规性。
核心要求
每个提交到 Shopify App Store 的应用都必须满足这些基本要求:
认证与安全
- 正确实现 OAuth 2.0 并带有 HMAC 验证
- 三个 GDPR 强制性 webhook 均可运作并经过测试
- Access token 在静态时加密
- 客户端代码中不暴露敏感数据
- 为嵌入式应用配置 Content Security Policy 头
用户体验
- 应用必须完全嵌入 Shopify 管理后台(核心功能不得有外部重定向)
- 使用 Polaris 设计系统组件或 App Bridge 动作
- 响应式布局,适用于所有屏幕尺寸
- 所有异步操作都有加载状态
- 错误状态提供明确的恢复操作
性能
- 店面影响在额外加载时间 100ms 以内
- 不进行同步 JavaScript 注入
- 管理页面在 3 秒内加载
- 高效的 API 使用(无不必要的调用、正确的分页)
功能性
- 应用必须提供明确且立即可见的价值
- 引导流程带领商家完成设置
- 卸载 webhook 处理程序清除所有资源
- 应用能与 Shopify Online Store 2.0 主题正确运作
Winter '26 的审核流程现在包含自动化性能分析。审核团队会在测试商店安装你的应用,并运行 Shopify 的内部性能套件来衡量店面影响。超过 100ms 阈值的应用将自动标记为需要人工审核,这会增加 2-4 周的审核时间。
常见拒绝原因
根据 Shopify Partner 社区的公开数据,以下是最常见的应用被拒绝原因:
- 缺少 GDPR webhook —— 最常见的拒绝原因。所有三个 webhook 都必须响应 200 状态码并实际处理请求。
- 外部认证流程 —— 将商家重定向至 Shopify 管理后台外部进行登录或设置。
- 错误处理不佳 —— 未处理的异常情况显示原始错误信息或空白画面。
- 引导不足 —— 商家安装后无法弄清如何使用应用。
- 过多权限 —— 请求应用实际上不需要的权限范围。
- 卸载行为异常 —— 应用在被卸载后继续进行 API 调用。
提交前测试检查清单
# 1. Test OAuth flow from scratch
shopify app dev --reset
# 2. Verify all webhook subscriptions
shopify app webhooks list
# 3. Test GDPR webhooks manually
curl -X POST https://your-app.com/webhooks/customers/data_request \
-H "Content-Type: application/json" \
-H "X-Shopify-Hmac-Sha256: $(echo -n '{"shop_domain":"test.myshopify.com"}' | openssl dgst -sha256 -hmac 'your-secret' -binary | base64)" \
-d '{"shop_domain":"test.myshopify.com","customer":{"id":1,"email":"test@example.com"}}'
# 4. Test uninstall and reinstall
# Uninstall app from test store, verify cleanup, then reinstall
# 5. Run Lighthouse on storefront with app installed
npx lighthouse https://your-test-store.myshopify.com --only-categories=performance
Built for Shopify 徽章
Built for Shopify 徽章是应用能获得的最高品质认证。它向商家表明你的应用符合 Shopify 最严格的质量标准,并与平台深度集成。
徽章要求
要获得并维持 Built for Shopify 徽章,你的应用必须:
- 完全嵌入 —— 不得重定向至 Shopify 管理后台外部
- 使用 App Bridge 4.x 或更新版本 —— 必须使用最新的 App Bridge API
- 实现所有适用的扩展点 —— 使用 Shopify Functions、Checkout UI Extensions 和 Theme App Extensions,而非旧版方法
- 符合性能阈值 —— 店面影响持续低于 50ms(比基本要求更严格)
- 维持高商家满意度 —— 平均评分在 4.0 以上,且有一定数量的评论
- 回应支持请求 —— 中位数响应时间低于 24 小时
- 保持依赖项更新 —— 依赖项中没有已知的严重漏洞
当 Shopify 更新徽章要求时,现有徽章持有者会获得 60 天宽限期以符合新标准。如果你的应用不再符合要求,你会在徽章被移除前的 60 天、30 天和 7 天收到电子邮件通知。请密切关注 Shopify 变更日志以了解要求更新。
申请徽章
Partner Dashboard → Apps → [Your App] → Distribution → Built for Shopify
徽章的审核与标准应用审核是分开的(且更加彻底)。预计徽章审核需要 2-4 周。应用在徽章审核中常见的失败领域:
- 使用已弃用的 API 或旧版扩展模式
- 未一致使用 Polaris 组件
- 缺少深层链接支持(应用应能响应特定的管理后台 URL)
- 错误恢复流程不完整
应用列表优化
你的 App Store 列表是你的主要销售工具。商家浏览 App Store 的方式就像消费者浏览电商网站一样——他们根据第一印象快速做出决定。
标题和标语
- 标题:保持在 30 个字符以内。包含你的主要关键字。
- 标语:一句话清楚说明你的应用做什么以及目标用户是谁。
Title: "SyncMaster - Inventory Sync"
Tagline: "Real-time inventory synchronization across all your sales channels"
研究你所在类别中排名最高的应用。注意它们如何构建标题和标语。最好的列表以好处而非功能作为开头。「每周节省 10 小时的库存管理时间」比「多渠道库存管理工具」更好。
应用描述结构
编写你的描述时要方便扫读,而非阅读。商家在做决定前平均花 30 秒在一个列表上。
推荐结构:
- 开头钩子(2 句话)—— 你解决的问题和你提供的成果
- 核心功能(4-6 项的项目清单)—— 应用做什么
- 社交证明(1 段落)—— 商家数量、知名品牌、性能数据
- 运作方式(3 步骤编号清单)—— 简单的设置流程
- 支持和定价(简要)—— 包含什么支持
关键字和类别
Shopify 的 App Store 搜索使用以下组合:
- 应用标题和标语
- 描述文字
- 类别选择(主要和次要)
- 商家评论内容
根据你的理想客户会在哪里浏览来选择主要类别。选择次要类别以捕获相邻的搜索。
屏幕截图和演示视频
屏幕截图最佳实践
你最多可以上传 6 张截图。每张都应该讲述一个故事:
| 截图 | 内容 | 目的 |
|---|---|---|
| 1 | 带有真实数据的主仪表板 | 展示应用运作中 |
| 2 | 使用中的核心功能 | 展示主要价值 |
| 3 | 设置/配置 | 展示设置的简便性 |
| 4 | 结果/分析 | 证明成果 |
| 5 | 移动端响应式视图 | 展示跨设备支持 |
| 6 | 集成接触点 | 展示它如何融入 Shopify 管理后台 |
技术要求:
- 最低 1600 x 900 像素
- PNG 或 JPEG 格式
- 截图中不包含浏览器外框或操作系统级别的 UI
- 使用看起来真实的数据(不是「Lorem ipsum」或空白状态)
演示视频指南
一段 60-90 秒的演示视频能显著提高转化率。结构如下:
- 0-10 秒:说明你的应用解决的问题
- 10-40 秒:展示应用解决该问题的过程(屏幕录制)
- 40-60 秒:展示结果/成果
- 60-90 秒:行动号召(立即安装、免费试用)
Shopify 直接在 App Store 列表中托管你的演示视频。上传 MP4 文件(最大 200MB)。不要链接到 YouTube 或 Vimeo——视频必须是独立的。避免使用可能被标记为版权问题的背景音乐。
定价策略
选择正确的定价模式是你应用业务中最具影响力的决策之一。
Shopify 上的定价模式
| 模式 | 描述 | 最适合 |
|---|---|---|
| 免费 | 不收费 | 潜在客户开发、生态系应用 |
| 免费增值 | 免费方案 + 付费升级 | 增长导向的应用 |
| 固定月费 | 每月固定价格 | 简单、可预测的应用 |
| 分层 | 基于用量/功能的多种方案 | 商家需求多样的应用 |
| 按用量计费 | 按操作/交易付费 | 高交易量的应用 |
实作 Shopify Billing API
// services/billing.js
export async function createSubscription(client, shop, plan) {
const response = await client.query({
data: {
query: `mutation AppSubscriptionCreate(
$name: String!,
$returnUrl: URL!,
$lineItems: [AppSubscriptionLineItemInput!]!,
$test: Boolean
) {
appSubscriptionCreate(
name: $name,
returnUrl: $returnUrl,
lineItems: $lineItems,
test: $test
) {
appSubscription {
id
status
}
confirmationUrl
userErrors { field message }
}
}`,
variables: {
name: plan.name,
returnUrl: `${process.env.HOST}/billing/callback?shop=${shop}`,
test: process.env.NODE_ENV !== 'production',
lineItems: [
{
plan: {
appRecurringPricingDetails: {
price: { amount: plan.price, currencyCode: 'USD' },
interval: plan.interval, // 'EVERY_30_DAYS' or 'ANNUAL'
},
},
},
],
},
},
});
const result = response.body.data.appSubscriptionCreate;
if (result.userErrors.length > 0) {
throw new Error(result.userErrors.map((e) => e.message).join(', '));
}
return result.confirmationUrl;
}
定价技巧
- 始终提供免费试用(7-14 天)。商家不愿意在看到价值之前付费。
- 根据商家的 Shopify 方案定价。每月支付 $2,000 的 Shopify Plus 商家会愿意为你的应用支付 $99/月。每月支付 $39 的 Basic 商家则不会。
- 如果你的应用具有网络效应或更多安装带来的数据优势,包含免费方案。
- 15-20% 的年付折扣可激励更长期的承诺并降低流失率。
Shopify 对通过 Billing API 处理的所有应用费用收取收入分成。截至 2026 年,Shopify 对每位 Partner 年收入中的前 100 万美元收取 0%,超过该门槛则收取 15%。请将此纳入你的定价计算中。
App Store SEO
搜索优化
Shopify 的 App Store 搜索算法考虑以下因素:
- 相关性 —— 你的列表与搜索查询的匹配程度
- 质量信号 —— 评分、评论数量、安装数量、卸载率
- 时效性 —— 近期更新和活动表明应用有在维护
- 性能 —— 拥有 Built for Shopify 徽章的应用排名更高
可执行的 SEO 策略
- 在应用标题中包含你的主要关键字
- 在描述中使用关键字的自然变体(不要堆砌关键字)
- 回复每一条商家评论(正面和负面的)
- 定期推送更新(即使是小更新)以表明积极维护
- 鼓励满意的商家留下评论(但绝不要激励评论——这违反 Shopify 的条款)
追踪你的 App Store 表现
在你的 Partner Dashboard 中监控这些指标:
- 曝光次数 —— 你的列表在搜索结果中出现的频率
- 页面浏览量 —— 商家点击进入你列表的频率
- 安装率 —— 页面浏览到安装的转化率
- 卸载率 —— 在 30 天内卸载的商家百分比
- 评分趋势 —— 你的平均评分移动的方向
一个成功的 App Store 列表永远不会「完成」。将其视为一个持续更新的文档——当你发布重大功能时更新截图,根据商家搜索的内容改进描述,并持续优化从曝光到安装再到付费订阅的转化漏斗。