アプリ内購入
人々はアプリ内購入を使用して、プレミアムコンテンツ、デジタル商品、サブスクリプションなどの仮想商品の支払いを、アプリが実行されているデバイスに関係なく、あなたのアプリ内で安全に行うことができます。
また、App Store から直接アプリ内購入を宣伝および提供することもできます。開発者向けガイダンスについては、アプリ内購入 (In-App Purchase) を参照してください。
重要
アプリ内購入と Apple Pay は、さまざまな使用例をサポートするさまざまなテクノロジーです。アプリ内購入を使用して、あなたのアプリ内のプレミアムコンテンツやデジタルコンテンツのサブスクリプションなど、あなたのアプリ内で仮想商品を販売します。アプリで Apple Pay を使用して、食料品、衣料品、電化製品などの実際の商品を販売できます。クラブ会員権、ホテル予約、イベントチケットなどのサービス、そして寄付のために。
アプリ内購入を使用すると、以下の 4 種類のコンテンツを提供できます。
販売とビジネスのガイダンスについては、アプリ内購入 と 自動更新サブスクリプション を参照してください。アプリ内購入の使用要件や制限など、あなたのアプリで販売できるものと販売できないものについては、App Store レビューガイドライン を参照してください。
ベストプラクティス
購入する前にあなたのアプリを人々に体験してもらいましょう。 人々は、あなたのアプリを楽しんでその価値を発見した後、有料のアイテムや機能に投資する傾向が強くなります。自動更新サブスクリプションを提供する場合は、あなたのコンテンツへの制限付き無料アクセスをサポートすることを検討してください。ガイダンスについては、自動更新サブスクリプション を参照してください。
統合されたショッピング体験をデザインしてください。 デジタル製品を閲覧して購入するときに、人々に別のアプリに入ったと思われたくないでしょう。あなたのアプリのスタイルを反映した方法で製品を提示し、移行を処理して下さい。
シンプルで簡潔な製品名と説明を使用してください。 切り詰めたり折り返したりせず、平易で直接的な言葉遣いのタイトルは、人々が製品をすばやく見つけるのに役立ちます。
タイプに関係なく、あなたの提供する各アプリ内購入の合計請求額を表示します。 人々は、検討するすべての購入の合計請求額を知る必要があります。
人々が支払いを行える場合にのみ、あなたのストアを表示します。 例えば、保護者による制限などで誰かが支払いを行えない場合は、あなたのストアを非表示にするか、ストアが利用できない理由を説明する UI を表示することを検討してください。開発者向けガイダンスについては、AppStore.canMakePayments を参照してください。
デフォルトの確認シートを使用して下さい。 誰かがアプリ内購入を開始すると、システムは確認シートを表示して、誤った購入を防ぎます。このシートを変更または複製しないでください。
家族共有を有効にする
人々は家族共有を使用すると、購入したコンテンツ (自動更新サブスクリプションや消費しないアプリ内購入など) へのアクセスを、すべての Apple デバイスで最大 5 人の追加家族と共有できます。あなたが提供する家族共有サポートを人々に利用してもらうには、以下のガイドラインを考慮してください。
あなたが提供するコンテンツについて人々が知る場所で、家族共有について目立つように言及してください。 たとえば、サブスクリプションまたはアイテム名に "家族" または "共有可能" を含み、サインアップスクリーンで家族共有に言及すると、機能が強調され、人々が情報に基づいた選択を行うのに役立ちます。
家族共有の利点と参加方法を人々が理解できるようにします。 家族共有をオンにすると、現在の設定に応じて、人々は変更に関する通知を受け取ることができます。たとえば、共有設定がオフ (デフォルト) になっている既存の加入者は、サブスクリプションを家族と共有するよう招待する通知を Apple から受け取ります。同様に、家族は、共有されているコンテンツに関する通知を受け取ることができます。 (人々が受信できる通知の種類について詳しくは、自動更新サブスクリプション を参照してください。)
購入者と家族の両方にとって意味のあるものになるように、アプリ内メッセージをカスタマイズすることを目指してください。 たとえば、家族が初めて共有コンテンツを表示した場合、"あなたの家族のサブスクリプションには以下の物が含まれています" などの文言で歓迎することができます。
アプリ内購入に関する支援の提供
場合によっては、人々が購入に関して支援が必要な場合や、払い戻しを希望する場合があります。この体験を便利にするために、支援を提供し、代替ソリューションを提示し、人々がシステム提供の払い戻しフローを開始できるようにするカスタム UI をあなたのアプリ内に表示できます。開発者向けガイダンスについては、beginRefundRequest(for:in:)(beginRefundRequest(for:in:)) を参照してください。自動更新サブスクリプションに固有の関連ガイダンスについては、サブスクリプションの管理を支援 を参照してください。
顧客が払い戻しを要求する前に表示できる支援を提供します。 システムが提供する払い戻しフローへのリンクを含めることに加えて、あなたのカスタムの購入支援スクリーンには、あなたのアプリに合わせた支援を提供できます。たとえば、カスタムスクリーンは、人々が購入できない問題を解決したり、提供するアプリ内購入に関するよくある質問に回答したり、フィードバックを送信したり、サポートのために直接あなたに連絡したりする方法を人々に提供するのに役立ちます。
払い戻しアクションには、"払い戻し" や "払い戻しの要求" などの簡単なタイトルを使用します。 システムが提供する払い戻しフローにより、人々が Apple に払い戻しを要求していることが明確になるため、この情報を繰り返す必要はありません。
問題のある購入を人々が見つけられるようにします。 表示する最近の購入ごとに、人々が欲しいものを特定するのに役立つコンテキスト情報を含めます。たとえば、製品のイメージを名前と説明とともに表示し、元の購入日をリストできます。
代替解決策の提供を検討してください。 たとえば、顧客が購入した商品を受け取っていない場合は、即時約束遂行または和解商品を提供できます。提供する代替手段に関係なく、人々は引き続き払い戻しを要求できることを明確にします。
人々が払い戻しを簡単に要求できるようにします。 購入支援スクリーンは有用な情報と代替解決策を提供できますが、このコンテンツが払い戻しを要求する際の障壁にならないようにしてください。たとえば、人々にスクロールさせたり、別のスクリーンを開いて払い戻し要求ボタンを表示させないようにします。人々が払い戻し要求の商品を選択すると、以下に示すシステムが提供する払い戻しフローに自動的に入ります。
Apple の返金ポリシーを特徴付けたり、ガイダンスを提供することは避けてください。 たとえば、顧客が要求した払い戻しを受け取るかどうかについて推測しないでください。払い戻し要求のプロセスを人々が理解できるように、Apple から購入したアプリまたはコンテンツの払い戻しを要求する へのリンクを提供できます。
自動更新サブスクリプション
実行中にサブスクリプションの特典を強調します。 人々が最初にあなたのアプリを起動したときにサブスクリプションの価値を示すことで、アプリのしくみを教育し、サブスクリプションによって得られるものを理解できるようにします。強力な行動喚起とサブスクリプション条件の明確な要約を含めます (サインアップを簡単にする を参照)。 関連するガイダンスについては、搭載 を参照してください。
さまざまなコンテンツの選択肢、サービスレベル、期間を提供します。 人々は、自分のニーズに最適なサブスクリプションを選択できる柔軟性を高く評価します。
サインアップする前に、人々にあなたのコンテンツを無料で試してもらうことを検討してください。 制限付きの無料アクセスにより、人々はあなたのコンテンツを試す機会が与えられ、熱心なユーザーがサインアップするよう促します。たとえば、フリーミアムアプリ、従量課金ペイウォール、または無料試用版を提供できます。
フリーミアムアプリ | 従量課金ペイウォール | 無料試用版 |
毎月の無料コンテンツの上限に近づいたときなど、適切なタイミングで人々に購読を促します。 さらに、あなたのアプリ全体の関連するポイントにプロンプトを含めることで、人々がいつでも簡単に購読できるようにすることを検討してください。
誰かがまだ加入者でない場合にのみ、新しいサブスクリプションを奨励してください。 そうしないと、実際にはそうではないのに、既存のサブスクリプションが失効したと人々が信じる可能性があります。複数のアプリやあなたのウェブサイトで同じサブスクリプションのオプションを提供する場合は、サインインオプションを提供して、人々が同じサービスに対して複数回支払う必要があると思わないようにします。
サインアップを簡単にする
シンプルで有益なサインアップ体験により、人々は、あなたのアプリを使用している場合でも、App Store の製品ページを閲覧している場合でも、あなたのコンテンツへの関心に基づいて簡単に行動できます。
明確で識別可能なサブスクリプションのオプションを提供します。 サブスクリプションのオプションを互いに区別できる短い名前を使用し、各オプションの価格と期間を指定します。お試し価格を提供する場合は、お試し価格、提供期間、および提供終了後に顧客が支払う標準価格を必ず記載してください。
必要な情報のみを求めることで、初期サインアップを簡素化します。 サインアップ過程に時間がかかると、サブスクリプションへの変更率が低下します。人々がサインアップするまで、追加情報を求めることを延期して下さい。
tvOS アプリでは、人々が別のデバイスを使用してサインアップまたは認証できるようにします。 tvOS アプリに情報を入力するよう人々に求める代わりに、必要な情報を入力できる別のデバイスにコードを送信します。
あなたのアプリのサインアップスクリーンで人々により多くの情報を提供して下さい。 あなたのアプリと App Store のメタデータにサービス利用規約とプライバシーポリシーへのリンクを含めることに加えて、アプリ内のサインアップスクリーンには以下を含める必要があります。
たとえば、Forest Explorer のサインアップスクリーンでは、月ごと、半年ごと、および年ごとのサブスクリプションの合計請求額が最も目立つ位置に表示されます。下位の位置では、半年ごとおよび年ごとの価格の内訳が表示されるため、人々は値を比較して情報に基づいた選択を行うことができます。サインアップスクリーンには、既存の加入者が購入を復元するために使用できるボタンも含まれています。
無料トライアルの仕組みを明確に説明します。 無料トライアル期間が終了すると、次のサブスクリプション期間の支払いが自動的に開始されることを人々に知らせることが特に重要です。たとえば、Ocean Journal のサインアップスクリーンには、無料トライアルの期間と終了時の請求額の両方が明示されています。
あなたのアプリの設定にサインアップの機会を含めて下さい。 アプリとアカウントの設定は、人々がサブスクリプションに加入する方法を探す一般的な場所です。
オファーコードのサポート
サブスクリプションオファーコードを使用すると、オンラインチャネルとオフラインチャネルの両方を使用して、新規、既存、失効した加入者にあなたのサブスクリプションコンテンツへの無料または割引アクセスを提供できます。たとえば、オファーコードを電子メールで行ったり、店舗やイベントで配布したり、実際の製品に印刷したりできます。
サポートできるオファーコードには、以下の 2 種類があります。
両方のタイプのオファーコードの使用に関する技術的な詳細とビジネスガイダンスについては、オファーコード を参照してください。他の種類のオファーの詳細については、サブスクリプションオファーの提供 を参照してください。
オファーの詳細を明確に説明しましょう。 人々が十分な情報に基づいた決定を下せるように、マーケティング資料であなたのオファーの率直で簡潔な説明を提供してください。
カスタムコードを作成するためのガイドラインに従って下さい。 カスタムコードには、英数字の ASCII 文字のみを含めることができます。中国語やアラビア文字などの特殊文字は使用しないでください。
カスタムコードを引き換える方法を人々に伝えましょう。 App Store の人々のアカウント設定にカスタムコードを入力して引き換えることはできないため、あなたのアプリ内で引き換えることができることを人々に知らせることが重要です。
あなたのアプリ内でオファーの引き換えをサポートすることを検討してください。 人々があなたのアプリ内でオファーを引き換えるか、App Store で利用するかに関係なく、システムはオファーの引き換えフローを有効にするスクリーンを自動的に提供します。StoreKit API を使用して人々があなたのアプリ内でオファーコードを引き換えできるようにする場合、作成する必要があるカスタム UI は、システム提供のフローを開始するものだけです (開発者向けのガイダンスについては、presentCodeRedemptionSheet (presentCodeRedemptionSheet) を参照してください)。 このカスタム UI を提供する自然な場所がいくつかあります。たとえば、 "コードを引き換える" ボタンをペイウォール、オンボーディングスクリーン、またはあなたのアプリの設定スクリーンに追加できます。
人々がカスタム引き換えボタンをタップすると、システムは、以下に示すような一連のコード引き換えスクリーンを自動的に提供します。
魅力的で有益なプロモーションイメージを提供して下さい。 このオプションのイメージを作成すると、人々があなたのコンテンツの価値を理解するのに役立ちます。プロモーションイメージを提供しない場合、コード引き換えスクリーンではデフォルトでアプリアイコンが使用されます。詳しくは、アプリ内購入の宣伝 をご覧ください。
人々が引き換えフローを完了したらすぐに、ロック解除されたコンテンツを利用できるようにしましょう。 あなたのアプリでの引き換え後の体験を、加入者の新しいステータスに合わせる方法を考えてください。たとえば、新しい加入者に歓迎体験を提供したり、追加機能のロックを解除した既存の加入者に新機能の簡単なツアーを提供したりできます。特に、あなたのアプリを初めて開く前にサブスクライブした人々を歓迎する準備をしてください。たとえば、人々があなたのアプリを使用する前にアカウントの作成またはサインインを要求する場合は、これまで体験したことのない新しい加入者がこのプロセスをできるだけスムーズに行えるようにします。
サブスクリプションの管理を支援
サブスクリプション管理をサポートするということは、人々があなたのアプリを離れることなくサブスクリプションをアップグレード、ダウングレード、またはキャンセルできることを意味します。あなたのアプリ内でサブスクリプション管理を提供すると、一般的な加入者の問題に対する支援を提供したり、人々が検討できる代替オファーを提示したりするための自然な場所も得られます。
顧客のサブスクリプションの概要を提供して下さい。 特に、今後の更新日を検索せずに表示できることを高く評価します。この情報を設定スクリーンまたはアカウントスクリーンの、サブスクリプション管理オプションの近くに表示することを検討してください。開発者向けガイダンスについては、Product.SubscriptionInfo (Product.SubscriptionInfo) を参照してください。
システムが提供するサブスクリプション管理 UI の使用を検討してください。 StoreKit API を使用すると、人々があなたのアプリを離れることなくサブスクリプションを管理またはキャンセルするのを支援する一貫した体験を提供できます。開発者向けガイダンスについては、showManageSubscriptions(in:) (showManageSubscriptions(in:)) を参照してください。
加入者がサブスクリプションを継続するか、後で再加入するように促す方法を検討してください。 StoreKit API を使用すると、誰かがサブスクリプションのキャンセルを選択したときあなたのアプリに通知されます。このシナリオでは、キャンセルの代わりにパーソナライズされたオファーを延長したり、退出アンケートでキャンセルの理由を説明するよう人々に呼びかけたりすることができます。アンケートのフィードバックは、さまざまな顧客の問題に関する洞察を提供するだけでなく、保留と取り戻し戦略のためのメッセージを伝えるのにも役立ちます。
顧客が自動更新サブスクリプションをいつでも簡単にキャンセルできるようにしてください。 サブスクリプションの管理アクションがアプリの奥深くにある場合、または認識しにくい場合、加入者は落胆したり、キャンセルを妨げられていると感じます。
システムが提供する管理 UI を補完するために、ブランド化されたコンテキスト体験を作成することを検討してください。 あなたのカスタム UI 内で、人気のあるプレミアムを提供したり、顧客の好みやあなたのアプリの使用方法に基づいて、代替プランのパーソナライズされた提案を提供できます。たとえば、特定の期間に割引価格を提供するプロモーションオファーを作成できます。また、失効した加入者を取り戻し、既存の加入者にアップグレードを促すために、サブスクリプションの オファーコード を検討することもできます。
プラットフォームに関する考慮事項
iOS、iPadOS、macOS、または tvOS に関する追加の考慮事項はありません。
watchOS
あなたの watchOS アプリのサインアップスクリーンには、あなたのアプリの他のバージョンで表示されるサブスクリプションオプションに関する一連の同じ情報を表示する必要があります。必要な項目の完全なリストについては、サインアップを簡単にする を参照してください。以下のガイドラインは、Apple Watch でなじみのあるサインアップスクリーンをデザインするのに役立ちます。
さまざまなデバイスで実行されるあなたのアプリのバージョン間の違いを明確に説明してください。 あなたの watchOS アプリが別の機能をサポートしている場合、または他のデバイスで利用できるコンテンツのサブセットを提供している場合は、説明でこれらの違いを明確にしてください。あなたのアプリの他のバージョンと体験が同じであることをほのめかすことなく、あなたの watchOS アプリを介してサブスクリプションコンテンツにアクセスする利点について率直に説明してください。
Apple Watch で 90,000 の地図にアクセスできることを人々に期待させる説明
他のデバイスと比べて、Apple Watch でサブスクリプションがどのように機能するかを明確にする説明
モーダルシートを使用して必要な情報を表示することを検討してください。 あなたのサブスクリプションオファーの詳細を知りたいという行動を促すフレーズに人々が反応したら、モーダルシートを使用して、必要なすべての項目を 1 つの焦点を絞ったビューに提示できます。すべての情報にアクセスするにはビューをスクロールしなければなりませんが、モーダルシートに表示することで、アプリの UI を合理的かつ簡潔に保つことができます。また、モーダルシートのデフォルトの [閉じる] ボタンにより、人々は 1 回のタップで無料コンテンツに簡単に戻ることができます。モーダルシートを使用する代わりにカスタムサインアップビューを作成する場合は、人々が無料コンテンツに戻ることができる [閉じる] ボタンまたは [キャンセル] ボタンを含む、焦点を絞った体験を設計して下さい。
小さなスクリーンでサブスクリプションのオプションを簡単に比較できるようにします。 人々は、サブスクリプションのオプションを選択する前に、各オプションの条件を理解する必要があります。各オプションの期間と割引情報を、スキャンして比較しやすいコンパクトな方法で表示することを目指します。watchOS アプリでサブスクリプションのオプションを表示するには、以下の 2 つの方法があります。
ボタンごとに 1 つの支払いオプション
リスト行ごとに 1 つの支払いオプションと、選択したオプションを表示するために更新されるボタンが続きます
リソース
関連
開発者用文書
アプリ内購入 (In-App Purchase)
ビデオ
変更記録
2022 年 11 月 3 日 | アプリ内購入の項目ごとの合計請求額を表示するためのガイドラインを追加し、1 ページに統合されたガイダンスを追加しました。 |