ドキュメント

App Storeサーバ通知の有効化

App Storeからのサーバ通知を使って、ユーザーのサブスクリプションステータスの変更をモニタリングし、ステータス変更に応答します。

概要

App Storeサーバ通知は、自動更新サブスクリプションのためのサービスです。App Storeは、サブスクリプションステータスに関するリアルタイムの変更内容をサーバに通知します。サーバ通知に含まれているすべてのフィールドについての詳細は、「App Storeサーバ通知(英語)」を参照してください。

App Storeサーバ通知サービスの使用は任意ですが、複数のプラットフォームでサブスクリプションサービスを提供していて、サブスクリプションレコードを常に最新に保つ必要がある場合には特に推奨されます。サーバを設定した後、App Store ConnectでサーバURLを追加することでいつでも通知の受信を開始できます。

通知とレシート検証と組み合わせて使用することで、ユーザーの現在のサブスクリプションステータスを検証し、そのステータスに応じたサービスやプロモーションオファーを提供できます。

通知を受信するためのサーバ設定

App Storeからサーバ通知を受信するには、以下の手順が必要です。

  • サーバでApp Transport Security (ATS) をサポートします。App Storeが通知を送信するには、事前にATSプロトコルを使用してサーバと安全なネットワーク接続を確立する必要があります。詳しくは、安全でないネットワーク接続の回避(英語)」を参照してください。

  • サーバでサブスクリプションステータスの更新に使用するURLを決めます。

  • App Store Connectで、AppのサブスクリプションステータスURLを設定します。設定方法については、「App Storeサーバ通知のURLを入力」を参照してください。

上記の手順を完了すると、サーバでApp Storeサーバ通知を受信できるようになります。

App Storeサーバ通知の受信

App Storeは、重要なサブスクリプションイベントの発生時に、HTTP POSTを使用してJSONオブジェクトをサーバに送信します。サーバ側では、受け取ったサーバ間通知をすべて解析し、解釈した上で、適切に応答しなければなりません。

サーバ間通知はHTTP POSTで行われます。POSTの本体には、responseBody(英語)に記載されているデータ要素が含まれます。App Storeが送信する通知では、サブスクリプションイベントの種類がnotification_type(英語)フィールドの値で表されています。

App Storeサーバ通知への応答

App Storeサーバ通知の配信に成功したかどうかを示すHTTPステータスコードを送信するように、サーバを設定します。

  • 配信が成功した場合はHTTP 200を送信します。サーバからデータ値を返す必要はありません。

  • 配信が成功しなかった場合は、HTTP 50xまたは40xを送信し、App Storeに通知の再送信をリクエストします。App Storeは一定期間、数回にわたって通知を再試行しますが、連続して失敗すると最終的に配信を停止します。

最新のステータス情報を使ったイベントの処理

App Storeサーバ通知を正常に有効化すると、サブスクリプションステータスに関する最新情報を受信できるようになります。通知と最新のレシートを使ってイベントを処理します。

関連項目

最初のステップ