次は App Store Connectでカスタムコードを作成する手順を説明します。
オファーコードキャンペーンを準備するにはApp Store Connectで Account Holder /Admin/App Manager Developer/Marketingのいずれかの役割が割り当てられている必要があります。
カスタムコードのオファー機能でサブスクリプション獲得機会を得る。
まず「カスタムコード」の横のプラスマークをクリックします。
カスタムコードを作成して入力する画面が表示されます。
カスタムコードは最長64文字で特殊文字は使用できません。
作成したカスタムコードは、後で変更することができないことに注意してください。
またAppの別のオファーキャンペーンや別のサブスクリプションに使用することもできません。
別のオファーですでに使用されているカスタムコードを使用して新規のキャンペーンを作成するにはまずそのコードを無効化する必要があります。
その後カスタムコードの利用回数の上限を選択します。
これは カスタムコードを利用できるユーザーの総数です。
利用回数の上限は一度に最大で25,000回ですが、これ以上必要な場合は同じオファーで同じカスタムコードを複数回使用することも可能です。
1つのAppにつき四半期ごとに最大150,000回分まで設定できます。
次は 有効期限を選択してコードが有効な期間を設定します。
期限なしのコードを作成する場合は日付選択画面で 「期限なし」オプションを選択します。
有効期限を選択した場合は選択した日付の米国西海岸時間の12:00 amに失効します。
キャンペーンを開始した後は有効期限を変更できません。
最後に「作成」をクリックしてオファーを有効にします。オファーは一度に10件まで有効にすることができます。
配布済みのオファーを編集することはできないためユーザーの利用資格を変更する必要がある場合は、別のオファーを新たに作成します。
前述したようにコードからコード利用のためのURLを作成してユーザーに直接提供することができます。
このURLをタップすると ユーザーはオファー利用ページに直接誘導されます。
このURLを作成するにはオファー詳細ページのサンプルリンクをコピーし、そのURLの末尾にカスタムコードを追加します。
この機能の概要の説明は以上です。
カスタムコードキャンペーンの構成に関する詳細
カスタムコードキャンペーンの構成に関する詳細についてさらに細かく説明します。
オファーコードを「プロダクト」「アプリケーション」「バックエンドシステム」に 導入する際に考慮すべき事項について 3つのセクションに分けて説明します。
最初にコードの利用、次にオファーの構成、最後にStoreKitに関する考慮事項について説明します。
コードの利用
ではコードの利用から説明します。
コードの利用について説明する前に、登録者は構成された各オファーコードをそれぞれ1回しか利用できない。という制限について認識する必要があります。
これらのオファーはApp Store Connectで設定した際に、追加した名称によって識別できます。
また登録者は、その時点でのサービスレベルを下回る結果となるオファーコードを利用することができないという点にも留意する必要があります。
コードは登録者がすでに利用しているサブスクリプションより高いレベルのSKU、または同じレベルのSKUを対象とする必要があります。
オファーの対象とする登録者を選択する際は、その資格に関するロジックを検討することが理想的です。
登録者がコード利用時に利便性を感じるのは、前述のApp内コード利用シートを用いたコード利用方法です。
これはpresentCodeRedemptionSheet()が実装されているApp内で登録者がオファーを直接利用できるため理想的な方法です。
この場合はコード利用シートがApp上に表示されるため最前面でアクティブに実行されているApp上でコードを利用する唯一のケースとなります。
余談ですがApp内にコードを表示する場合はユーザーがコードを簡単にコピー/ペーストできるようにしておくと便利です。
もうひとつのコード利用方法は カスタムオファーコードを事前に反映させたURLを利用する方法です。
この場合は 2つの点を考慮する必要があります。
それは Appのアイデアと オファーコード自体についてです。これはQRコードを通じてオファーコードを宣伝する場合も同じように有効な方法となります。
前述のようにコードはApp外で使用される場合もあるため起動時にTransaction.Updatesを検知することが重要です。
これは、承認と購入のリクエストPSD2やオファーコードなどのその他のシナリオにおける重要なベストプラクティスです。
初期設定を適切に行えば トランザクションを見逃すことはありません。
一方でfinishというメソッドは、トランザクションをキューから削除しユーザーがアイテムやサービスを受領したことを通知します。
この2つの処理間が適切に実装されることで最適なユーザー体験が提供されることになります。
オファーの構成
次は構成について説明します。
オファーコードを構成する際は、お試しオファーを併用して利用できるようにすることも可能です。
ここではお試しコードとオファーコードの併用の有無で変わるユーザー体験を視覚的に説明します。
このシンプルなシナリオでは通常の月間サブスクリプションに、1週間の無料お試しオファーが構成されています。
マーケティングキャンペーンには1週間無料でサーバーにアクセスできるコードが作成されています。
では、お試しオファーとオファーコードの併用を許可しない場合に、どうなるか見てみましょう。
登録者がオファーコードを使用するとオファーコードは即時に有効となり、この場合は1週間無料になります。
オファー期間が終了すると、サブスクリプションが更新され通常料金が適用されます。その後のいつかの時点で登録者がサブスクリプションを中断または解約することもありますが、サブスクリプションを再開した場合は、まだお試しオファーを利用する資格があるため、1週間の無料トライアルを利用できます。
この構成では、ユーザーがどの時点でお試しオファーを利用できるかのみが検証されます。
この利用体験は、ターゲティングするグループに応じてオファーコードを作成する際に留意すべきものです。
次に、この両方を許可した場合はどうなるでしょう?
同じシナリオを使って説明します。
今度は、登録者がオファーコードを使用すると、最初にお試しオファーが有効になり、次にオファーコードの期間が開始して、その後にサブスクリプションが更新され 通常料金が適用されます。
この説明で、構成方法の違いがどのようにユーザー体験に影響するのか、お試しコードとオファーコードの併用を許可すべきか否かを判断する参考になれば幸いです。
StoreKitに関する考慮事項
最後に、StoreKitに関する考慮事項です。
オリジナルのStoreKit APIおよびStoreKit 2では、トランザクション情報や更新情報に含まれるタイプと識別子を使用して、利用されたオファーを確認できます。
オファーコードのタイプは3で、識別子には設定した各オファーに対して、App Store Connectで追加した固有の文字列が含まれます。
サーバー間構成が設定されている場合はVerifyReceipt/App Store Server API Server Notifications Version 2を使用して、この情報を取得できます。
OFFER_REDEEMEDタイプの通知は、必ず対応するサブタイプを使用して解析してください。
カスタムコードのセッションのまとめです。
カスタムコードは現在利用可能で、大量配布が必要となるキャンペーンで 利用できます。Sandboxを活用すれば、中断された購入やコード使用環境をテストすることも可能です。
最適なユーザー体験を実現するために、App内で実行できるコード利用フローの採用も検討しましょう。
オファーの詳細や条件、コードの利用方法などは明確に記載し、iOS 14.2以降のみに対応するという注意事項も添えてください。
さらに詳しい情報を知りたい場合や、今日説明した内容の資料を参照したい場合は Apple DeveloperのWebサイトに アクセスしていただければ、優れたリソースを いつでも参照することができます。
以上で本日のプレゼンテーションを終了します。
リリースされたこれらの新機能を 皆さんがどのように活用するかとても楽しみにしています ご視聴ありがとうございました.
コメント