ここ数年で、Apple と Google はApp-to-Webの道を開き、アプリ内サブスクリプションにおいて外部の購入フローを利用できるようになりました。これにより、App Store 手数料を回避しつつ、価格設定やプロモーション、チェックアウトの実験において、より高い柔軟性を持てるようになっています。
この変化の背景には、米国における Epic Games 対 Apple の訴訟や、EU の デジタル市場法(DMA) といった司法判断・規制があります。これらによって、Apple と Google は、アプリ内課金(IAP)をめぐる厳格な要件を緩和せざるを得なくなりました。
アプリチームにとって、これはApp-to-Webの新たな可能性を切り開くものです。しかし一方で、App-to-Web を取り巻く規制は決して単純ではありません。ガイドラインは国やアプリのカテゴリごとに異なり、しかも継続的に追加・変更されているため、「何が許可されていて、何が許可されていないのか」を把握し続けるのは容易ではありません。
そこで本記事では、Apple App Store と Google Play Store の両方について、世界各国における外部決済の最新オプション、利用要件、そして手数料・コミッション体系を整理しました。以下で、知っておくべきポイントをすべて解説します。
App-to-Webにおける外部決済の仕組み
ここでは、外部決済がどのように機能するのか、そしてそれをアプリに組み込む主な 2 つの方法について、簡単に整理します。
Apple と Google の購入ガイドラインをすぐに確認したい場合は、こちらをクリックしてください。
1. 外部Webリンク
アプリ内にリンクやボタンを設置し、ユーザーを外部の Web サイト(または WebView)へ遷移させて、そこで購入を完了させる方法です。購入後は、通常バックエンドとの同期によって、その外部購入に基づいてアプリ内のコンテンツや機能をアンロックします。
Apple では、これを External Purchase Link の利用と呼びます。たとえば、あるストリーミングアプリでは「Web サイトでサブスクライブする」といったボタンを設け、タップすると Web のチェックアウト画面が開くようになっています。支払いが完了すると、ユーザーは新しいサブスクリプションでアプリにログインできる、という流れです。
2. サードパーティ決済(アプリ内)
Apple や Google 以外の決済ゲートウェイを、アプリの UI に直接組み込む方法です。購入自体はアプリ内で完結しますが、App Store / Google Play の課金システムは使用しません。これは 代替アプリ内決済(alternative in-app payment) と呼ばれることもあります。
代表的な例としては、アプリ内課金に Stripe を利用したり、App Store の購入ダイアログの代わりに、国別のクレジットカード入力フォームをチェックアウト画面に表示したりするケースがあります。
以前は実装のハードルが非常に高い方法でしたが、Epic Games 対 Apple の判決以降、サードパーティ決済は以前よりも使いやすくなりました。ただし、どちらの方法を選ぶ場合でも、Apple と Google には厳格なルールがあります。
Apple でサードパーティ決済を実装する場合
- いかなる外部購入フローを提供する場合でも、事前に Apple の特別なエンタイトルメントを申請する必要があります
- 実装内容に応じて、以下のいずれかを使用します
- ユーザーを Web チェックアウトへ誘導する場合
- アプリ内でサードパーティ決済フローを実行する場合
- ユーザーがアプリを離れる、または Apple 以外の方法で支払いを行う前に、Apple が用意した開示用のシートが表示され、App Store で処理される購入ではないことが明示されます
- 場合によっては、外部購入エンタイトルメントを使用すると、同じ地域・同じストアフロント内で Apple IAP を同時に提供できないことがあります。つまり、そのストアではどちらか一方のみ、という扱いになります
Google でサードパーティ決済を実装する場合
- User Choice Billing により、チェックアウト時に Google Play の課金と代替決済手段のどちらかをユーザーが選択できるようになります
- この選択肢を提示するために、開発者は Google の代替課金 API を統合する必要があります
- External Offers(EEA のみ) では、アプリから直接購入用の Web ページへリンクアウトできます(タップ時に Google から「Play を離れます」という確認表示が出ます)
- Apple と同様に、通常の Google Play Billing IAP と外部オファーを同一アプリ内で併用できないケースもあります
アプリ内課金と外部購入の違い:Apple と Google のガイドライン・規制
Apple App Store および Google Play Store 上のほとんどのアプリは、サブスクリプションやデジタルコンテンツの購入に、各プラットフォームが提供する 標準の課金システム を利用しています。原則として、以下で説明する外部購入プログラムのいずれかに 該当し、かつオプトインしていない限り、アプリ内から別の支払いフローへユーザーを誘導することは認められていません。
通常のアプリ内課金(IAP)では、各ストアが手数料を徴収します。Apple と Google Play の標準手数料はいずれも 30% ですが、IAP 収益が年間 100 万ドル未満の開発者 に対しては 15% に引き下げられます。さらに Google Play では、サブスクリプションの2年目以降の更新分 にも 15% の料率が適用されます。
これらの手数料を回避するために、アプリは 外部購入 を提供することが可能ですが、その場合は以下のガイドラインを遵守する必要があります。
Apple App Store における外部購入のガイドライン
Google Play Store における外部購入ガイドライン
アプリに Web チェックアウトを追加する
ここまで読み進めているのであれば、App-to-Webの価値についてはすでに納得しているはずです。難しいのは「なぜやるか」ではなく、どうすれば迅速にリリースでき、コンプライアンスを守りつつ、購入フローを過度に複雑化させずに実装できるかという点です。
RevenueCat Web は、サブスクリプションアプリに Web チェックアウトを追加するための最もシンプルな方法です。
決済プロバイダー、エンタイトルメント同期、ユーザー識別の紐付け、アナリティクスを個別に組み合わせて構築する必要はありません。すでにモバイルで利用している RevenueCat の構成に、そのまま接続できる 完全な Web 課金スタックを利用できます。ユーザーは Web 上で購入し、iOS や Android アプリですぐにアクセスを解放できます。サブスクライバーのレコードは 1 つ、信頼できる単一のデータソースも 1 つです。
以下は、全体の構成イメージです:
課金エンジンとしての Web Billing: Web Billing は、Web サブスクリプション向けに提供される RevenueCat ネイティブの課金エンジンです。Web 上でのサブスクリプションライフサイクルを管理し、RevenueCat のプロダクト、顧客、エンタイトルメントと完全に統合された状態を保ちます。Web 用に別の課金ロジックを構築・運用する必要はありません。
数分で立ち上げられる Web チェックアウトの表示方法:Web Billing を有効にすると、複数の方法でユーザーを Web チェックアウトへ誘導できます。
- アプリ内ペイウォールに Web Purchase Button を追加:任意の RevenueCat Paywall にボタンコンポーネントを追加できます。タップすると Web チェックアウトへ遷移します。
- Web Purchase Links:RevenueCat がホストするチェックアウト用 URL です。Web Purchase Button の遷移先として使うこともでき、どこにでも配置可能です。追加設定なしで動作し、ログイン済み/匿名のどちらのフローにも対応します。
- Web SDK を使った Web ペイウォール表示:独自の Web アプリやランディングページがある場合、Purchases.js を使って Web サイト上に RevenueCat Paywall を直接表示し、そのままチェックアウトを完了できます。
すべてが一元的に連携。すべては自動的に連携された状態を保ちます。Web Overview ダッシュボードでは、Web とモバイルの状況を 1 か所で確認できます。Web とモバイルのオファリングは同じカタログ上に存在し、エンタイトルメントは自動で同期され、イベントは共通のアナリティクス基盤に流れ込みます。
App-to-Webでのコンバージョンを高く保つ方法
チームがよく懸念するのは、「Web を挟むとネイティブチェックアウトよりコンバージョンが下がるのではないか」という点です。しかし、購入を同一ページ内で完結できる Web ペイウォールにユーザーを送ることで、この問題は簡単に回避できます(いわゆる RevenueCat の Express Purchase ボタンです)。
ブラウザで Apple Pay や Google Pay が利用可能な場合、Web ペイウォール上にウォレットボタンが表示されます。ユーザーは 1 回タップし、ウォレットで確認するだけで購入が完了します。その後、RevenueCat が自動的にアプリ側へアクセス権を同期します。
この仕組みにより、ユーザー体験は非常にシンプルに: アプリ内ペイウォール → Web ペイウォール → ウォレット確認=アクセス解放
App-to-Webの活用例
- Web オプション付きのアプリ内アップグレード:アプリ内ペイウォールに「Web で続行」ボタンを表示します。タップすると、同じプランが選択された状態で Web ペイウォールが開き、対応している場合はウォレットボタン(Apple Pay / Google Pay)が表示されます。より速いチェックアウトを求めるユーザーは、ワンタップで購入を完了できます。
- 復帰(Win-back)向けの割引オファー:解約済みユーザーに対して、カムバック割引を含むターゲット型のアプリ内ペイウォールを表示します。Web ボタンをタップすると、割引がすでに適用された専用の Web オファーに遷移するため、ユーザーが適切なプランを探し回る必要はありません。
- 計測可能なキャンペーントラフィック:UTM パラメータを保持したまま、広告やメールで Web Purchase Link を共有します。購入後はリデンプションのステップでサブスクリプションがユーザーのアプリ内アカウントに紐づけられ、即座にアクセスが解放されます。独自のグルーコードを実装することなく、クリーンなアトリビューションを取得できます。
App-to-Web の実験を始める準備はできましたか?
App-to-Web を取り巻くガイドラインは今後も変化し続けるため、チェックアウト体験を柔軟かつコンプライアンスに準拠した状態で保つことが、成功の鍵になります。Apple や Google がポリシーを更新するたびに、このガイドも継続的にアップデートしていく予定です。次の App-to-Web 施策を検討する際には、ぜひブックマークしてご確認ください。
独自にチェックアウトコードを実装して試す場合でも、RevenueCat Web に面倒な部分を任せる場合でも、App-to-Web は効率的で柔軟な購入フローを実現できます。健闘を祈ります。ぜひ積極的にテストしてみてください。

