記事


自動更新サブスクリプションの更新日を延長


サブスクリプションの更新日を延長することで、対象となるアクティブな加入者のサービス中断を補償します。





概観


あなたのサービスが一時的に停止したり、イベントがキャンセルされたり、ライブストリーミングイベントが中断したりした場合、顧客達に補償として、有料のアクティブなサブスクリプションの更新日を延長することができます。App Store Server API には、このような延長を要求するための 2 つのエンドポイントが用意されています。


  • 個々のサブスクリプションの サブスクリプション更新日を延長する

  • 製品 ID に基づくすべてのサブスクリプション。オプションで店頭のリストに限定される、すべてのアクティブな加入者のサブスクリプション更新日を延長

  • アクティブな自動更新サブスクリプションの更新日を、あなたのサービスに予期せぬ障害が発生した場合に最大 90 日間延長できます。サービスの問題や障害を柔軟に解決できるよう、顧客ごとに 1 年(365日)以内に 2 回まで更新日を延長できます。


    注意

    サブスクリプション更新の延長が有効になると、元に戻すことはできません。App Store が開発者の手数料率を計算する際、延長期間は 1 年間の有料サービス期間にはカウントされません。

    更新日延長が正常に完了すると、Apple は顧客に更新されたサブスクリプション更新日を通知するメールを送信します。


    対象となるサブスクリプションを決定


    更新日を延長できるのは、過去に少なくとも 1 期間分の料金を支払った、アクティブな自動更新サブスクリプションのみです。


    以下の型のサブスクリプションは更新日を延長できません。


  • 無料オファー期間中のサブスクリプション

  • 請求再試行状態にある、アクティブでないサブスクリプション

  • 有効期限が過ぎている、請求猶予期間内のサブスクリプション

  • 過去 365 日以内に更新日を 2 回延長したサブスクリプション

  • 期限切れのサブスクリプション

  • App Store は、対象となるサブスクリプションの更新日のみを延長しようとします。


    家族間共有をサポートする、対象となる購入済みサブスクリプションをシステムが延長すると、家族メンバーのサブスクリプションも自動的に延長されます。ただし、サブスクリプション更新日を延長する エンドポイントでは、家族メンバーのサブスクリプションを直接延長する要求はサポートされていません。



    1 人または複数の加入者の更新日を延長


    対象となるすべての加入者の更新日延長を要求するには、すべてのアクティブな加入者のサブスクリプション更新日を延長 エンドポイントを呼び出します。サブスクリプションは その productId で指定します。このエンドポイントは、1 回の呼び出しで多数のサブスクリプションに更新日延長を適用できるため便利です。サーバ障害が一部の領域で発生し、他の領域では発生しない場合は、要求本体(object MassExtendRenewalDateRequest)にオプションの storefrontCountryCodes プロパティを含めることで、本体を店頭で制限できます。


    単一の加入者の更新日延長を要求するには、サブスクリプション更新日を延長する エンドポイントを呼び出します。サブスクリプションは originalTransactionId で識別します。このエンドポイントを使用して、他のエンドポイントで更新日延長が失敗した場合に再試行します。詳細は、以下の 失敗した場合の再試行 セクションをご覧ください。


    進行中と概要の通知を受け取る


    すべてのアクティブな加入者のサブスクリプション更新日を延長 エンドポイントへの要求は、加入者数に応じて、完了までに数時間から数日かかる場合があります。App Store サーバは要求の処理中にリアルタイムの通知を送信します。通知には、更新日延長の成功または失敗、そして要求の完了が送信されます。


    通知を受信するには、あなたのサーバで App Store Server Notifications V2 をサポートしている必要があります。詳しくは、App Store サーバー通知の有効化 (Enabling App Store Server Notifications) をご覧ください。


    以下の表は、通知のリストと、その notificationType および subtype の値を示しています。


    通知の型サブタイプ説明
    RENEWAL_EXTENDED(none)App Store は、特定のサブスクリプションの更新日を延長しました。
    RENEWAL
    _EXTENSION
    FAILURE特定のサブスクリプションの更新日の延長に失敗しました。
    RENEWAL
    _EXTENSION
    SUMMARY要求が完了しました。


    通知ペイロードの内容の詳細については、responseBodyV2DecodedPayload を参照してください。


    サブスクリプション更新日を延長する エンドポイントへの要求の場合、要求が成功すると、App Store Server NotificationsRENEWAL_EXTENDED 通知を送信します。エンドポイントは、その反応本体 object ExtendRenewalDateResponse で詳細情報を返します。


    要求が完了しているかどうかを確認


    すべてのアクティブな加入者のサブスクリプション更新日を延長 へのあなたの要求が完了しているかどうか確認するには、サブスクリプション更新日延長ステータスの取得 (Get Status of Subscription Renewal Date Extensions) エンドポイントを呼び出します。完了した要求には、更新日延長の成功件数と失敗件数の最終カウントが含まれます。このステータスをオンデマンドで取得する必要がない場合は、前のセクションで説明したように、代わりに App Store Server Notifications を使用してステータス情報を取得してください。



    失敗した場合の再試行


    App Store サーバは、すべてのアクティブな加入者のサブスクリプション更新日を延長 のあなたの要求を処理する際に、リアルタイムの通知を送信します。通知は、更新日延長の試行が成功または失敗するたびに送信します。失敗した試行を再試行するには、失敗したサブスクリプションの取引 ID を指定して、サブスクリプション更新日を延長する エンドポイントを呼び出します。以下の手順に従ってください。


    1. あなたのサーバで App Store Server Notifications V2 をサポートしてください。詳しくは、App Store Server Notifications の有効化 をご覧ください。

    2. notificationTypeRENEWAL_EXTENSIONsubtypeFAILURE の通知を探してください。この通知は、サブスクリプション更新日延長の受信に失敗した特定のサブスクリプションを識別します。

    3. 通知のペイロード、 responseBodyV2DecodedPayload で、サブスクリプションの取引 ID を見つけます。具体的には、ペイロード内の data オブジェクトの JWSTransaction から取得した JWSTransactionDecodedPayload 内の originalTransactionId を使用します。

    4. originalTransactionID を使用して、サブスクリプションの更新日を延長する呼び出しを行います。




    5. 以下も見よ


      サブスクリプション更新日の延長


      サブスクリプション更新日を延長する

      元の取引 ID を使用して、顧客のアクティブなサブスクリプションの更新日を延長します。


      サブスクリプション更新日延長のステータスを取得する

      更新日延長要求が完了したかどうかを確認し、成功または失敗した延長の最終件数を提供します。


      object ExtendRenewalDateRequest

      個々のサブスクリプションのサブスクリプション更新延長データが含まれる要求本文。


      object ExtendRenewalDateResponse

      個々の更新日延長が成功したかどうか、および関連する詳細を示す応答。


      object MassExtendRenewalDateRequest

      すべての対象となるアクティブな加入者に適用するサブスクリプション更新延長データを含む要求本文。


      object MassExtendRenewalDateResponse

      サーバーがサブスクリプション更新日延長要求を正常に受信したことを示す応答。


      object MassExtendRenewalDateStatusResponse

      すべての対象加入者に対してサブスクリプションの更新日を延長する要求の現在のステータスを示す応答。














      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ












      トップへ