サブスクリプション

サブスクリプションソリューションを使用すると、ユーザーは指定された条件下でサービスのパッケージにアクセスできます。主な特徴:

  • 製品を定義する – サブスクリプション内でユーザーに提供されるサービスのパッケージ
  • プラン(サブスクリプション条件)を定義する。各通貨のプランの作成と構成、試用期間の設定、猶予期間の構成、サブスクライブしたユーザーの表示、特定のユーザーのサブスクリプションステータスの変更を行うことができます。
  • ユーザーがダッシュボードからサブスクリプションを管理できるようにします。 彼らは、詳細なサブスクリプション情報の表示、支払い履歴の表示、プランの変更、サブスクリプションの一時停止/更新/キャンセルを行うことができます。
  • パブリッシャーアカウントからユーザーサブスクリプションを管理します:各通貨のプランの作成と構成、試用期間の設定、猶予期間の構成、サブスクライブしたユーザーの表示、および特定のユーザーのサブスクリプションステータスの変更。
  • 保存した支払いアカウントを使用して自動更新を有効にする。
  • サブスクリプションを手動で更新する。

仕組み

ステップ 1

ステップ 2

ステップ 3

ユーザーフロー

サブスクリプションのステータス

サブスクリプションは、次のいずれかのステータスになります:

  • アクティブ。プライマリステータス。サブスクリプションは、最初の支払いが成功した後に作成され、アクティブ化されます。追加料金は、アクティブなサブスクリプションに対してのみ可能です。

Notice: APIを使用して手動でサブスクリプションを作成することはできません。これは、購入時に自動でのみ行うことができます。

  • キャンセル済み。次のいずれかの理由により、サブスクリプションはキャンセルされ、即時に有効になります:
    • APIメソッドまたはエクソラパブリッシャーアカウントからステータスが変更されました。
    • ユーザーによりキャンセルされました。
    • 期限切れ、パラメータに有効期限が設定されている場合。
    • 請求の最大試行回数を超えました。これはデフォルトでは3回です。変更するには、アカウントマネージャーにお問い合わせください。
    • ゲームでユーザーが見つかりません。
    • ユーザーアカウントが削除されました。

Note: サブスクリプションがキャンセルされると、最終決済を返金できます。このオプションは、パートナーとユーザーの両方が使用できます。

  • 更新なし。サブスクリプションの更新がキャンセルされました。サブスクリプションは、ステータスがキャンセル済みに変わる前に現在の請求サイクルが終了するまで続きます。 以下のいずれかの理由により、更新をキャンセルすることができます:
    • APIメソッドまたはパブリッシャーアカウントからステータスが変更されました。
    • メールリンクを介してユーザーによってキャンセルされました。
    • ユーザーアカウントが削除されました。

統合フロー

サブスクリプションを統合するには:

  1. エクソラパブリッシャーアカウントを登録します。
  2. プロジェクトを作成します。
  3. プランを設定します。
  4. トークンを取得します。
  5. UIを開くフローを構成します。

Note: こちらのガイドは、すぐに機能を使い始める場合に必要な、最低限の設定について説明しています。ご不明な点がございましたら、アカウントマネージャーまでご連絡ください。

プロジェクトの作成

  1. プロジェクトに移動し、プロジェクトを作成するをクリックします。
  2. セットアップモードで:
    1. ウェブフックURLを指定します。
    2. プロジェクトウェブフックに署名するための秘密キーを生成します。

プランを設定する

  1. サブスクリプション設定に移動します:プロジェクト>ストア>サブスクリプション
  2. 以下のパラメーターを特定します:
    • 名前
    • 請求サイクル

Note: プランには1つの通貨しか設定できません。プロジェクト通貨ごとに個別のプランセットを登録する必要があります。

ウェブフックの設定

サブスクリプションには次のウェブフックを実装する必要があります:

メッセージ本文なし、HTTPコード204ありの応答でウェブフックの受信を承認します。APIリファレンスから、ウェブフックについて(例など)詳しくご参照いただけます。

ウェブフックのハンドラをテストするときは、 プロジェクト設定 > ウェブフック セクションを開いてください。

トークンの取得

サブスクリプションと統合するには、トークンを取得する必要があります。トークンは、ゲーム/ユーザーデータと支払い設定を含む文字列です。

エクソラAPIは基本アクセス認証を採用しています。マーチャントIDをユーザー名、APIキーをパスワードとして指定します。

トークンの取得はこの URL から:

https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token

トークンのリクエスト

サブスクリプションUIに渡すパラメーターを含めることで、HTTP POST要求を変更できます。リクエストとレスポンスはどちらもJSON形式です。

以下は、エクソラ PHP SDKを使用してPHPでトークンを取得する方法のサンプルコードです。別のプログラミング言語を使用している場合は、CURLタブをクリックして CURL 例をご覧ください。

Copy
Full screen
  • php
  • curl
<?php

use Xsolla\SDK\API\XsollaClient;
use Xsolla\SDK\API\PaymentUI\TokenRequest;

$tokenRequest = new TokenRequest($projectId, $userId);
$tokenRequest->setUserEmail('email@example.com')
    ->setExternalPaymentId('12345')
    ->setSandboxMode(true)
    ->setUserName('USER_NAME');

$xsollaClient = XsollaClient::factory(array(
    'merchant_id' => MERCHANT_ID,
    'api_key' => API_KEY
));
$token = $xsollaClient->createPaymentUITokenFromRequest($tokenRequest);
curl -v https://api.xsolla.com/merchant/v2/merchants/{merchant_id}/token \
-X POST \
-u your_merchant_id:merchant_api_key \
-H 'Content-Type:application/json' \
-H 'Accept: application/json' \
-d '
{
    "user": {
        "id": {
            "value": "1234567"
        },
        "email": {
            "value": "email@example.com"
        }
    },
    "settings": {
        "project_id": 14004,
        "mode": "sandbox"
    }
}'

パラメータの完全なリストはAPI リファレンスをご参照ください。

支払い処理のテスト

支払い処理をテスト方法:

  • サンドボックスを使用
  • 実際の支払いを行い、パブリッシャーアカウント経由で払い戻し

エクソラ サンドボックスは独立した環境で、実際の決済を除くライブ環境のすべての機能をサポートします。サンドボックスにアクセスするには、トークンを取得する際に "mode":"sandbox" を送信します。

銀行カード決済をテストするには:

  1. サンドボックスモードでサブスクリプションUIを開きます
  2. 購入するアイテムを選択してください。
  3. 支払い方法のクレジット/デビットカードグループを選択します。
  4. 銀行カード情報を入力します。残りのフィールドに値を入力します。エラーを生成するために、誤った詳細(カード番号、有効期限、またはCVV)を指定することもできます。

テストに使用される銀行カード

Note: サンドボックスのクレジットカード支払いは、次の通貨で可能です:GBP、AED、ALL、AMD、ARS、AUD、AZN、BGN、BRL、BYN、CAD、CHF、CLP、CNY、COP、CZK、DKK、DZD、EGP、GEL、HKD、HRK、 HMN、MYR、NGN、PEN、PHP、PKR、PLN、RON、RSD、SAR、SEK、KK、KS、KZT、MAD、MDL、MKD、MNT、MXN、MYR、NGN、 SGD、THB、TRY、TWD、UAH、UYU、UZS、VEF、VND、ZAR。
Notice: 実際の支払いを受け取るに場合は、まず"mode":"sandbox"を削除してください。

実際の支払いを行って支払プロセスをテストするには、銀行カードを使用することもお勧めします:

  1. サブスクリプションUIを開きます
  2. 購入するアイテムを選択してください。
  3. 支払い方法のクレジット/デビットカードグループを選択します。
  4. 有効な銀行カード情報を入力します。
  5. 支払いが完了したら、パブリッシャーアカウントの取引検索セクションに移動します。
  6. テスト取引を選択して、払い戻し(取引状態は完了でなければなりません)をクリックします。

Note: 支払い処理のテストは、VisaとMasterCardカードの使用をお勧めします。

サブスクリプションUIを開く

サブスクリプションUIを新しいウィンドウで開くには、次のリンクを使用します:https://secure.xsolla.com/paystation2/?access_token=ACCESS_TOKEN、そこでACCESS_TOKEN前のステップで取得したトークンです。テストの目的で、次のURLを使用します:https://sandbox-secure.xsolla.com/paystation2/?access_token=ACCESS_TOKEN

プロモーションオプション

クーポン

クーポン機能を使うと、パートナーはクーポンコードのついたクーポンキャンペーンを作成できます。このコードは、パートナーがアップロードする、もしくは、パブリッシャー・アカウントから生成することが可能です。ユーザーはクーポンを使って、仮想通貨や仮想アイテム、サブスクリプションプランの体験期間を受け取れます。必要に応じて、交換回数と有効期限を変更してください。

レシピをご覧ください

ボーナス

ボーナス機能を使用すると、サブスクリプションの購入時にボーナスアイテムを受け取ることができます。

レシピをご覧ください

レシピ

こちらのレシピは、次のようなサブスクリプションの上級機能を試すときに役立ちます: