Shopify アプリストアでアプリを公開する
Shopify App Store には 10,000 を超えるアプリが掲載されており、販売者の注目を集めていますが、アプリを承認して発見するのは、経験豊富な開発者でもつまずくプロセスです。 Shopify の審査チームは、最初の申請の約 40% を拒否します。そのほとんどは、十分に文書化されているものの広く無視されている予防可能な理由によるものです。
このガイドでは、技術要件、設計基準、リストの最適化、アプリをゼロインストールから一貫した月次経常収益に移行させる成長戦略など、完全な申請ハンドブックを提供します。
重要なポイント
- Shopify のレビュープロセスには平均 10 ~ 15 営業日かかります。それに応じてリリースのタイムラインを計画してください
- 組み込みアプリセクションについては、Polaris 設計システムへの準拠は交渉の余地がありません
- アプリのリストの品質は、検索結果からインストールへのコンバージョンに直接影響します。それに投資してください
- オンボーディング フローの品質はレビュー基準です — 初回実行エクスペリエンスは、Shopify スタッフの支援なしで直感的である必要があります
- 価格の透明性要件: すべての料金は Shopify Billing API を使用する必要があり、プラットフォーム外での支払いは禁止
- プライバシー コンプライアンス (GDPR、CCPA) 文書は正確かつ完全でなければなりません
- 最初の 6 か月間で 4.0 以上のレビュー評価が App Store での継続的な認知度を高めるために重要です
- パートナー ダッシュボード分析により、販売者がインストール ファネルを放棄した場所が正確に明らかになります
パートナーアカウントとアプリセットアップの前提条件
送信する前に、Shopify Partner アカウントとアプリの構成が完了している必要があります。
パートナー アカウントの要件:
partners.shopify.comで Shopify パートナー アカウントを確認しました- 収益支払いのために接続された銀行口座
- 二要素認証の有効化
- パートナー契約が承認されました (収益分配を含む: Shopify がサブスクリプション料金の 20% を負担し、アプリは永久無料、または収益分配再編の下で年間収益が 100 万ドルを超える場合は 0% を負担します)
パートナー ダッシュボードのアプリ構成:
[アプリ] > [アプリの作成] に移動します。設定:
- アプリ名: ユニークでわかりやすい、名前に「Shopify」は含まれていません (商標ポリシー)
- アプリ URL: 本番アプリの URL (HTTPS を使用する必要があります)
- 許可されたリダイレクト URL: OAuth フローで使用されるすべてのコールバック URL を含めます
- スコープ: 必要最小限のスコープのみをリクエストします - 過剰なスコープリクエストはレビューの拒否を引き起こします
- アプリ プロキシ (該当する場合): URL パスとターゲット URL を構成します。
GDPR 準拠 Webhook (すべてのアプリに必要):
# shopify.app.toml
[[webhooks.subscriptions]]
topics = ["customers/data_request"]
uri = "/webhooks/gdpr/customers-data-request"
[[webhooks.subscriptions]]
topics = ["customers/redact"]
uri = "/webhooks/gdpr/customers-redact"
[[webhooks.subscriptions]]
topics = ["shop/redact"]
uri = "/webhooks/gdpr/shop-redact"
これら 3 つのエンドポイントは 5 秒以内に 200 を返し、実際にデータ削除/エクスポート要求を処理する必要があります。レビュー チームはこれらのエンドポイントをテストします。機能を実装せずに 200 を返すと、承認後に削除されます。
技術レビューの要件
Shopify のレビュー チームは、手動および自動の技術チェックを実行します。送信する前にこれらすべてに合格してください。
認証とセキュリティ:
| 要件 | チェック |
|---|---|
| OAuth フローは HTTPS のみを使用します。すべてのリダイレクト URI は HTTPS である必要があります。 | |
| OAuth リクエストの状態パラメータ | CSRF 攻撃を防止 |
| Webhook での HMAC 検証 | すべての受信 Webhook を検証する必要があります。 |
| ハードコーディングされた API 資格情報はありません | 環境変数のみの資格情報 |
| セッション データは保存時に暗号化される | 機密データを保存するアプリに必要 |
| すべてのページの CSP ヘッダー | 埋め込みアプリ ページには必須 |
API 使用要件:
- 非推奨の API バージョンは決して使用しないでください。常に過去 12 か月間のバージョンを使用してください
- API レート制限を適切に処理します (429 応答は販売者にエラーが表示されるのではなく、再試行をトリガーする必要があります)
- アンインストール後は販売者に代わって API 呼び出しを行わないでください
shop/redactWebhook を受信してから 48 時間以内にすべての販売者データをクリーンアップします
アプリのパフォーマンス ベンチマーク:
- 埋め込みアプリの初期読み込み: 平均的な加盟店ハードウェアで 3 秒未満
- 通常の使用中にブラウザコンソールで JavaScript エラーが発生しない
- すべてのページが Chrome、Firefox、Safari、Edge で正しくレンダリングされます。
- アプリに顧客向けコンポーネントがある場合はモバイル対応
オンボーディング フローのレビュー:
レビュー チームはアプリをインストールし、ドキュメントなしで初回実行時のエクスペリエンスを評価します。オンボーディングでは次のことを行う必要があります。
- 最初の画面でアプリの動作を明確に説明する
- 新規ユーザーに必要なセットアップ手順を案内する
- 初期設定を完了するためにサポートに連絡する必要はありません
- オンボーディング プロンプトに Polaris
CalloutCardまたはBannerコンポーネントを使用する
デザインと UX の標準
Shopify の設計要件は、管理者全体でのマーチャント エクスペリエンスの一貫性がコア プラットフォームの価値であるため、厳密に適用されます。
Polaris の使用必須:
埋め込みアプリ内のすべての UI 要素 (Shopify 管理 iframe 内でレンダリングされる) は、Polaris コンポーネントを使用する必要があります。具体的に禁止されているもの:
- Polaris
Buttonスタイルと一致しないカスタム ボタン コンポーネント - Polaris
TextField、Select、Checkboxスタイルと一致しないカスタム フォーム入力 - Polaris デザイン トークンから逸脱したカスタム カラー スキーム
- Polaris
SpinnerまたはSkeletonPageを使用しないカスタム読み込み状態
App Bridge のナビゲーション:
埋め込みアプリは、ナビゲーション アクションに App Bridge を使用する必要があります。埋め込みコンテキスト内のナビゲーションに window.location.href または <a> タグを使用すると、販売者のエクスペリエンスが損なわれます。使用:
import { useNavigate } from "@remix-run/react";
// For in-app navigation
const navigate = useNavigate();
navigate("/app/settings");
// For external links (opens in new tab, respecting embedded context)
import { useAppBridge } from "@shopify/app-bridge-react";
const app = useAppBridge();
// Use Redirect action for external URLs
エラー状態:
レビュー チームは、特にエラー条件をテストします。すべてのフォームは以下を処理する必要があります:
- ネットワーク エラー (空白のページではなく、エラー メッセージを含む
Bannerを表示) - 検証エラー (インライン、関連フィールドの隣)
- 空の状態 (アクションのある Polaris
EmptyStateコンポーネントを使用) - 状態のロード (初期ロードには
SkeletonPage、アクションにはSpinnerを使用)
アクセシビリティ要件:
- すべての画像には説明的な代替テキストが必要です
- インタラクティブな要素はキーボードで操作できる必要があります
- 色のコントラストは WCAG AA 規格を満たす必要があります (正しく使用されていれば、Polaris によって処理されます)
- すべてのアイコン専用ボタンのスクリーン リーダー ラベル
App Store ディスカバリーのためのリストの最適化
アプリのリストは販売ページです。検索やカテゴリの閲覧を通じてアプリを見つけた販売者は、数秒以内にリスティングの品質に基づいてインストールを決定します。
アプリ名の最適化:
アプリ名は検索結果に表示され、主な利点を伝える必要があります。 「Email Marketing Automation」は、「MailBooster Pro」よりも関連性の高い検索でランクが高くなります。検索結果にきれいに表示されるように、名前を 30 文字以下に抑えてください。
アプリのキャッチフレーズ:
一文、最大60文字。特徴ではなくメリットを重視してリードしましょう。 「放棄されたカートを 15% 多く回収する」は、「自動カート回収メール」を上回ります。
アプリの説明構造:
Paragraph 1 (above the fold): Core value proposition and primary use case.
What problem does your app solve? For whom? What is the primary outcome?
Paragraph 2: Key features and how they deliver the benefit.
Paragraph 3: Social proof — merchants using the app, notable results, reviews.
Feature list (bullet points): 5-8 specific features with brief descriptions.
Paragraph 4: Integration information, compatibility notes.
Paragraph 5: Support and documentation resources.
スクリーンショットの要件:
- スクリーンショットは最低 3 枚、最大 8 枚
- 解像度: 最小 1600x900 ピクセル
- マーケティング グラフィックや機能図ではなく、使用中のアプリを表示します
- 最初のスクリーンショットが最も重要です。検索結果に表示されます。
- スクリーンショットに注釈を付けて主要な機能を強調表示します
- ビデオのウォークスルー (30 ~ 90 秒) を含めます - ビデオを備えたアプリの変換が 40% 向上します
カテゴリとキーワードの選択:
アプリを正確に説明する最も具体的なカテゴリを選択してください。誤って分類されたアプリは検索ランキングでペナルティを受けます。キーワードの場合: 同義語、使用例の説明、販売者が実際に検索する問題の説明を含めます。説明にキーワードを詰め込まないでください。Shopify のアルゴリズムは洗練されており、不自然な密度にペナルティを与えます。
価格ページ戦略
価格設定のアーキテクチャは、インストールのコンバージョン率とチャーンに大きな影響を与えます。
フリーミアム モデルのパフォーマンス:
無料枠のあるアプリは、有料のみのアプリよりもインストール率が 3 ~ 5 倍高くなります。無料枠はコンバージョンファネルを作成します。販売者は無料でインストール→体験価値→高度な機能のアップグレードを行います。無料利用枠は、本当に役立つように設計しますが、アップグレードが自然になるように制限されています (使用制限、機能ゲート、加盟店数の上限)。
価格設定ページのベスト プラクティス:
- すべてのプランを明確な機能比較表とともに表示します
- 推奨プランを強調表示します (ほとんどのアプリは中間層を「人気」にします)
- 有料プランを提供する場合は返金保証を含めます
- 年間料金が利用可能な場合でも、月次料金を主な表示として使用します
- Billing API の請求額と異なる価格を決して表示しない - レビューは自動的に拒否されます
Shopify Billing API の実装:
すべての料金は Shopify の Billing API を経由する必要があります。アプリ内機能では、プラットフォーム外の支払いリンク (Stripe、PayPal) は禁止されています。プロフェッショナル サービスに対してプラットフォーム外で支払いを行う場合もありますが、アプリの機能は Billing API プランの背後で制限する必要があります。
// billing configuration example for tiered pricing
billing: {
"Starter": {
amount: 9.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
trialDays: 14,
},
"Professional": {
amount: 29.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
trialDays: 14,
},
"Enterprise": {
amount: 99.99,
currencyCode: "USD",
interval: BillingInterval.Every30Days,
}
}
レビューの送信プロセス
提出前チェックリスト:
- アプリは新しい開発ストアに正常にインストールされます
- OAuth フローはエラーなしで完了します
- すべての GDPR Webhook は 200 を返し、正しく処理されます。
- アプリは完全にアンインストールされます (セッションは削除され、孤立したデータはありません)
- オンボーディング フローでは、新規ユーザーが外部の助けを借りずにセットアップをガイドします
- 埋め込み UI に使用されるすべての Polaris コンポーネント
- 制限された接続ではアプリは 3 秒以内にロードされます
- プライバシー ポリシーの URL は有効で正確です
- アプリ一覧のスクリーンショットは実際のアプリ UI を示しています
- 価格ページが完了し、Billing API 構成と一致しています
- 通常のアプリ操作中にコンソール エラーは発生しません
- レート制限は適切に処理されます
- 複数のブラウザー (Chrome、Firefox、Safari、Edge) でテストします。
審査のために送信中:
パートナー ダッシュボードで、アプリ > 配布 > レビュー用に送信に移動します。以下を提供します:
- テスト手順: レビュー チームがすべての機能をインストールして使用するための正確な手順
- 資格情報のテスト: アプリが接続するサードパーティ統合のログイン詳細
- ビデオウォークスルー (オプションですが、複雑なアプリに推奨): 2 ~ 5 分のデモ
- 変更履歴メモ (更新用): 変更内容とその理由
提出後:
- 審査は提出後 3 営業日以内に開始されます
- 最初のレビューのフィードバックは通常 10 ~ 15 営業日以内に届きます
- 拒否された場合は、特定のフィードバックを受け取ります - 再送信する前にすべての点に対処してください
- 再送信キューが高速化されます (通常は 5 ~ 7 営業日)
発売後の成長戦略
承認は初日であり、ゴールではありません。 App Store の持続的な成長には積極的な管理が必要です。
レビューの生成:
レビュー数が 10 件未満のアプリは、レビュー数が 50 件以上のアプリに比べてコンバージョン率が大幅に低くなります。販売者が意味のあるマイルストーン (最初の 100 件のメール送信、最初のカートの復元、最初の同期注文) を達成した後、アプリ内レビュー リクエストを実装します。 Shopify のネイティブのレビュー リクエスト フローを使用します。
// Trigger in-app review prompt via App Bridge
import { Modal, TitleBar } from "@shopify/app-bridge/actions";
// Display after user achieves milestone
const modal = Modal.create(app, {
title: "Leave a review",
url: `https://apps.shopify.com/your-app/reviews`,
});
modal.dispatch(Modal.Action.OPEN);
機能リリースのペース:
アップデートを頻繁にリリースするアプリは、Shopify の「新規および更新済み」フィルターで上位にランクされ、積極的なメンテナンスを示しています。これは販売者にとって重要な購入シグナルです。少なくとも 4 ~ 6 週間に 1 回は有意義なアップデートを行うことを目指してください。
サポート品質:
Shopify モニターは、応答時間と解像度レートをサポートします。サポートの応答時間が 48 時間を超えるアプリでは、レビュー スコアの低下が見られます。 Shopify の組み込みサポート受信箱 (パートナー ダッシュボードからアクセス可能) を Tier 1 サポートに使用し、複雑な問題については電子メール/Slack にエスカレーションします。
App Store の最適化 (ASO):
App Store 検索でのキーワード ランキングを毎月追跡します。パートナー ダッシュボード分析を使用して、インプレッションとインストールを促進する検索語を特定します。アプリのリストのタイトルとキャッチフレーズを A/B テストします。コンバージョン率の小さな改善であっても、規模が大きくなると大きく影響します。
よくある質問
Shopify App Store のレビューにはどのくらい時間がかかりますか?
通常、最初のレビューには 10 ~ 15 営業日 (2 ~ 3 週間) かかります。拒否フィードバックに対処した後の再送信には 5 ~ 7 営業日かかります。サードパーティとの統合や通常とは異なる権限スコープを備えた複雑なアプリの場合、レビュー担当者が機能を検証するためにより多くの時間を必要とするため、さらに時間がかかる場合があります。提出から公開まで 8 週間のバッファーを持ってリリースのタイムラインを計画します。最初のレビューに 2 週間、フィードバックに対処するのに 2 週間、再提出のレビューに 1 週間、予期せぬ問題に備えて 3 週間のバッファーがあります。
App Store で拒否される最も一般的な理由は何ですか?
最も一般的な 5 つの拒否理由は次のとおりです: (1) 埋め込みセクションで準拠していない Polaris 設計標準、(2) GDPR Webhook が適切に実装されていない、(3) アプリの機能によって正当化されない過剰な API スコープのリクエスト、(4) オンボーディング フローで完了するために外部ドキュメントが必要である、(5) 価格体系にアプリ内機能のオフプラットフォーム支払いオプションが含まれている。拒否される可能性を大幅に減らすために、送信する前に 5 つすべてに積極的に対処してください。
アプリを無料としてリストし、後で有料プランを追加できますか?
はい、これは推奨される戦略です。無料で起動して初期インストール量とレビューを構築し、アクティブな加盟店数が 50 社以上になり、星 4 つ以上の評価を得たら、有料プランを導入します。 Shopify の Billing API の継承機能を使用して、既存のユーザーが必要に応じて無料アクセスを維持できるようにします。無料のリリースによりレビューと社会的証明が生成され、有料プランが公開されるとコンバージョン率が大幅に向上します。
アプリが承認後にポリシーに違反した場合はどうなりますか?
Shopify は、公開されたアプリのポリシー遵守を監視します。違反の場合は、必要な修復期限を伴う警告、App Store からの停止(既存のインストールは継続されますが、新規インストールは行われません)、または App Store からの削除(すべてのインストールがアクセスできなくなります)が発生する可能性があります。一般的な承認後の違反には、セキュリティ監査で発見された API 認証情報のハードコーディング、アプリ UI で見つかったオフプラットフォーム支払いリンク、データ保持違反 (アンインストール後の販売者データの保存) が含まれます。
見つけやすさに関するアプリの評価はどの程度重要ですか?
評価は、Shopify の App Store ランキング アルゴリズムにおける最も重要な要素の 1 つです。 4.0 未満のアプリは、検索結果とカテゴリの参照で大幅に抑制されます。評価が 4.7 以上のアプリは、厳選された「トップピック」セクションに表示されます。レビューを積極的に監視し、否定的なレビューに専門的に解決策で対応し、体系的なレビュー要求フローを実装して、長期にわたって健全な評価を維持します。
次のステップ
Shopifyの審査に合格し、持続可能なMRRに成長するアプリを構築するには、Shopifyの技術標準、App Storeの掲載情報の最適化、および加盟店獲得戦略に関する専門知識が必要です。
ECOSIRE の Shopify アプリ開発サービス は、アーキテクチャから App Store の承認までの完全なプロセス (技術開発、レビューの準備、リストの最適化、リリース後の成長サポート) をカバーしています。当社のアプリの初回送信承認率は 92% です。
ECOSIRE を使用して Shopify アプリの構築を開始 — アプリのコンセプトについて開発チームにご相談ください。
執筆者
ECOSIRE Research and Development Team
ECOSIREでエンタープライズグレードのデジタル製品を開発。Odoo統合、eコマース自動化、AI搭載ビジネスソリューションに関するインサイトを共有しています。
関連記事
Case Study: eCommerce Migration to Shopify with Odoo Backend
How a fashion retailer migrated from WooCommerce to Shopify and connected it to Odoo ERP, cutting order fulfillment time by 71% and growing revenue 43%.
Integrating GoHighLevel CRM with eCommerce Stores
Step-by-step guide to integrating GoHighLevel CRM with Shopify and WooCommerce. Sync orders, automate post-purchase flows, and recover abandoned carts at scale.
Odoo + Shopify Sync: Products, Orders, and Inventory
Complete guide to syncing Odoo 19 with Shopify. Covers product sync, real-time order import, bidirectional inventory, financial reconciliation, and multi-store management.