収益分配プランを構成する

Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動します。
情報

はじめに

収益分配プランでは、API プロバイダは、各トランザクションから発生した収益の一定割合(トランザクションの総額または純額に基づく)をデベロッパーと共有します。収益分配プランを作成する際は、固定または柔軟のいずれかの分配モデルと、料金の基準(収益分配が取引の総額または純額のいずれに基づくかなど)を指定する必要があります。トランザクションの総額または純額は、トランザクション記録ポリシーを作成するときに設定します。

固定分配モデルでは、各トランザクションから発生した収益の一定割合(トランザクションの総額または純額に基づく)をデベロッパーと分配します。柔軟な分配モデルでは、収益の変動する割合をデベロッパーと共有します。収益分配率は、一定期間に発生した収益によって異なります。収益分配の計算に使用される割合は、取引によって得られた収益額によって異なります。

UI を使用して収益分配プランの詳細を指定する

以下で説明するように、収益分配プランを構成します。

エッジ

Edge UI を使用して収益分配プランを構成するには、料金プランの作成時または編集時に、[収益分配] または [料金表と収益分配] の料金プラン タイプを選択し、[収益分配] セクションで次の情報を構成します。

フィールド 説明
計算モデル 次のいずれかの価格タイプを選択します。
  • 総額 - 収益分配率は、トランザクションの総額の割合に基づきます。
  • Net - 収益分配は、トランザクションの正味価格の割合に基づきます。
: トランザクションの総額または純額は、トランザクション記録ポリシーを作成するときに設定します。
計算頻度 トランザクションの量(またはカスタム属性に関連する量)が計算される期間。月数(1 ~ 24 か月)を選択します。
共有モデル 次のいずれかの収益分配モデルを選択します。
  • 固定 - API プロバイダは、各トランザクションから発生した収益の一定割合(トランザクションの総額または純額に基づく)をデベロッパーと分配します。
  • 柔軟 - API プロバイダが収益の変動割合をデベロッパーと共有します。収益分配率は、一定期間に発生した収益によって異なります。収益分配の計算に使用される割合は、取引によって得られた収益額によって異なります。
固定収益分配 固定分配モデルの場合、収益分配の計算に使用される割合を指定します。小数(小数点以下 4 桁まで)を入力します。たとえば、80.5555 と入力すると、収益分配率は 80.5555% になります。つまり、API プロバイダとして、各トランザクションで請求される価格の 80.5555% をデベロッパーに支払います。
収益分配率の帯域

柔軟な共有モデルの場合、取引収益の 1 つ以上の範囲(各範囲は「収益帯域」)。収益帯ごとに収益分配率を割り当てることができます。トランザクションは集計基準で集計され、トランザクションの合計収益と収益帯域が計算されます。各トランザクションに適用される収益分配率は、収益帯域によって異なります。

最初の帯域の上限を指定します(例: 1,000 まで。下限は 0 より大きい値にプリセットされています)。[+ 新規] をクリックして、バンドを追加します。最終的な帯域の上限を空白のままにすると、合計収益がこのレベルを超えた後のすべての取引が示されます。

たとえば、[収益帯] セクションで 2 つの収益帯(0 ~ 1, 000 と 1, 000 以上)を指定した場合、0 ~ 1,000 の収益帯には 80.5555、1, 000 以上の収益帯には 90.5 と入力します。また、通貨は米ドルとします。収益が $1,000 までの取引については、収益分配は取引価格の 80.5555% となり、収益が $1,000 を超える取引については、収益分配は取引価格の 90.5% となります。

Classic Edge(Private Cloud)

Classic Edge UI を使用して収益分配プランを構成するには:

  1. 手順に沿って料金プランを作成します。
  2. [Rate Plan Type] プルダウンで [Revenue Share] を選択して、収益モデルを構成します。
  3. 選択した API パッケージに複数の API プロダクトが含まれている場合は、次のいずれかのオプションを選択します。

    : API パッケージに 1 つの API プロダクトが含まれている場合は、この手順をスキップできます。

    • プロダクト固有のプラン: 各 API プロダクトの料金プランの詳細を個別に構成します。
    • すべての API プロダクトの料金プランの詳細を構成する [Generic Plan for All Products]。
  4. 汎用料金プランまたは API プロダクト固有の各料金プランの [収益分配] をクリックします。

    : API プロダクト固有のプランを構成する場合は、API プロダクトごとに収益分配プランを個別に構成する必要があります。

    [収益分配] ウィンドウが開きます。

  5. 次のいずれかの共有モデルを選択します。
    • 固定: このモデルでは、API プロバイダは、各トランザクションから発生した収益の一定割合(トランザクションの総額または純額に基づく)をデベロッパーと分配します。
    • 柔軟: このモデルでは、API プロバイダは収益の変動割合をデベロッパーと共有します。収益分配率は、一定期間に発生した収益によって異なります。収益分配の計算に使用される割合は、取引によって生み出された収益額によって異なります。

    固定共有モデルの場合:

    固定共有モデルを選択した場合は、[Generic Revenue Share] ウィンドウの [Pricing] セクションに次の情報を入力します。

    フィールド 説明
    事業者(または組織)

    組織の名前。このフィールドは、組織プロファイルの [Operator](または [Organization])フィールドの値を使用して事前設定されます。

    組織の事業拠点の国。このフィールドは、組織プロファイルの [国] フィールドの値を使用して事前設定されます。

    通貨

    会社で使用している「基本」通貨または会計通貨。このフィールドは、組織プロファイルの [通貨] フィールドの値を使用して事前設定されます。

    料金タイプ

    収益分配の基準。[Gross](総額)または [Net](純額)を選択します。[Gross](総額)を選択すると、収益分配は取引の総額の割合に基づいて計算されます。[Net] を選択すると、収益分配率は取引の正味価格の割合に基づいて計算されます。: トランザクションの総額または純額は、トランザクション記録ポリシーを作成するときに設定します。

    Fixed Share %(固定シェア率)

    収益分配の計算に使用される割合。小数(小数点以下 4 桁まで)を入力します。たとえば、80.5555 と入力すると、収益分配率は 80.5555% になります。つまり、API プロバイダとして、トランザクションごとに請求される料金の 80.5555% をデベロッパーに支払います。

    柔軟な共有モデルの場合:

    柔軟な収益分配モデルを選択すると、[Generic Revenue Share] ウィンドウにフィールドが追加で表示されます。これらのフィールドを使用して、集計の基準を指定し、「収益帯域」を指定します。収益帯域とは、取引によって発生した収益の範囲であり、収益分配率を個別に適用できます。

    [Generic Revenue Share] ウィンドウで次の情報を入力します。

    フィールド 説明
    Aggregation Basis

    収益が集計される期間。集計された収益は、各トランザクションの収益帯域(および該当する収益分配率)を計算するために使用されます。月数(1 ~ 12)を選択します。

    収益バンド

    取引収益の 1 つ以上の範囲(各範囲は「収益帯域」)。各収益帯域には収益分配率を割り当てることができます(この割合は、[価格設定] セクションの [収益帯域] フィールドで設定します)。トランザクションは集計基準で集計され、トランザクションの合計収益と収益帯域が計算されます。各トランザクションに適用される収益分配率は、その収益帯域によって異なります。

    最初の帯域の上限を指定します(例: 1,000 まで。下限は 0 より大きい値にプリセットされています)。[+] をクリックして、2 つ目の帯域を追加します(1, 000 より大きく 2,000 以下など)。[+] をクリックしてバンドを追加します。最終帯域の上限を空のままにすると、合計収益がこのレベルを超えた後のすべてのトランザクションを示すことができます。

    料金
    事業者(または組織)

    組織の名前。このフィールドは、組織プロファイルの [Operator](または [Organization])フィールドの値を使用して事前設定されます。

    組織の事業拠点の国。このフィールドは、組織プロファイルの [国] フィールドの値を使用して事前設定されます。

    通貨

    組織が使用する「基本」通貨または会計通貨。このフィールドは、組織プロファイルの [通貨] フィールドの値を使用して事前設定されます。

    料金タイプ

    収益分配の基準。[Gross](総額)または [Net](純額)を選択します。[Gross](総額)を選択すると、収益分配は取引の総額の割合に基づいて計算されます。[Net] を選択すると、収益分配率は取引の正味価格の割合に基づいて計算されます。: トランザクションの総額または純額は、トランザクション記録ポリシーを作成するときに設定します。

    収益バンドの割合

    各収益帯域の取引の収益分配率を計算するために使用される割合。各帯域の割合を指定します。小数(小数点以下 4 桁まで)を入力します。たとえば、[収益帯域] セクションで 2 つの収益帯域(0 より大きく 1, 000 以下、1, 000 以上)を指定した場合、0 より大きく 1,000 以下の収益帯域には 80.5555、1, 000 以上の収益帯域には 90.5 と入力します。また、通貨は米ドルであるとします。収益が $1,000 までの取引については、収益分配は取引価格の 80.5555% となり、収益が $1,000 を超える取引については、収益分配は取引価格の 90.5% となります。

  6. [適用して閉じる] をクリックして収益分配の詳細を保存し、[標準料金プラン] ウィンドウに戻ります。
  7. API プロダクト固有の料金プランの場合は、必要に応じて追加の API プロダクトの料金プランの詳細を構成します。

API を使用して収益分配プランの詳細を指定する

収益分配プランの詳細は、料金プランの作成時に指定します。詳細は、/organizations/{org_name}/monetization-packages/{package_id}/rate-plans の呼び出しでリクエスト本文内の ratePlanDetails プロパティで指定します。ratePlanDetails プロパティで指定する内容は、選択した共有モデル(固定または柔軟)によって異なります。

固定分配モデルの収益分配プランの詳細を指定する

固定共有モデルを実装するには、料金プランの詳細で次の項目を指定します。

  • 料金プランがトランザクションに基づくことを示すレート パラメータ(VOLUME)。VOLUME がデフォルトです。
  • 収益分配が単位ごとに固定されていることを示す測定タイプ(UNIT)。つまり、柔軟な共有モデルのように取引量に基づいていません。
  • 収益タイプ(GROSS または NET)。収益分配が取引の総額または純額のどちらに基づいているかを示します。
  • お支払い期日(30 日間など)。
  • 組織の ID。
  • 会社で使用している「基本」通貨または会計通貨。
  • 収益分配の計算方法に関する詳細を提供する料金プランの料金。共有モデルは固定レートに基づいているため、指定する料金プランのレートは 1 つだけです。

料金プランの詳細プロパティの一覧については、料金プランの詳細の構成プロパティをご覧ください。

料金プランの料金では、次の項目を指定します。

  • 料金プランの料金のタイプ(REVSHARE)。
  • 収益分配の計算に使用される割合。たとえば、80.5555 を指定した場合、収益分配率は 80.5555% になります。つまり、API プロバイダは、各トランザクションで請求された価格の 80.5555% をデベロッパーに支払います(または、トランザクションで送信されたバイト数などのカスタム属性に基づく場合は、指定されたバイト数の送信に対して請求された価格の 80.5555% をデベロッパーに支払います)。
  • レート適用(0)の開始単位。つまり、最初のトランザクションから始まる各トランザクションにレートが適用されます。

料金プランのプロパティの一覧については、料金プランの構成プロパティをご覧ください。

たとえば、次のコードは固定共有モデルで収益分配プランを作成します。収益分配率は 80.5555% です。収益分配率は取引の正味価格に基づきます。契約は 2013 年 9 月 15 日に発効し、支払期限は 30 日後です。(収益分配に関連する詳細がハイライト表示されています)。

$ curl -H "Content-Type:application/json" -X POST -d \
'{
    "name": "Fixed share plan",
    "developer":null,
    "developerCategory":null,
    "advance": false,
    "currency": {
      "id": "usd"
    },
    "description": "Fixed share plan",
    "displayName": "Fixed share plan",
    "earlyTerminationFee": 10,    
    "monetizationPackage": {
      "id": "location"
    },    
    "organization": {
      "id": "{org_name}"
    },
    "paymentDueDays": "30",
    "prorate": false,
    "published": true,
    "ratePlanDetails": [
      {
        "aggregateStandardCounters": true,
        "currency": {
         "id": "usd"
        },
        "duration": 1,
        "durationType": "MONTH",
        "meteringType": "UNIT",
        "organization": {
         "id": "{org_name}"
        },
        "paymentDueDays": "30",
        "ratePlanRates": [
         {
          "revshare": 80.8555,
          "startUnit": 0,
          "type": "REVSHARE"
         }
        ],
        "ratingParameter": "VOLUME",
        "revenueType": "NET",
        "type": "REVSHARE"
      }
    ],
    "recurringStartUnit": 1,
    "recurringType": "CALENDAR",
    "setUpFee": 10,
    "startDate": "2013-09-15 00:00:00",
    "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

レスポンスは次のようになります(レスポンスの一部のみが表示されています)。

{
  "advance" : false,
  "currency" : {
    "id" : "usd",
    "name" : "USD",
    ...
    "organization" : {
      ...
    },
   ...
  },
  "description" : "Fixed share plan",
  "displayName" : "Fixed share plan",
  "earlyTerminationFee" : 10,
  "id" : "location_fixed_share_plan",
  "monetizationPackage" : {
    "description" : "Location",
    "displayName" : "Location",
    "id" : "location",
    "name" : "Location",
    "organization" : {
     ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "description" : "Location",
      "displayName" : "Location",
      "id" : "location",
      "name" : "location",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    } ],
    "status" : "CREATED"
  },
  "name" : "Fixed share plan",
  "organization" : {
    ...
  },
  "paymentDueDays" : "30",
  "prorate" : false,
  "published" : true,
  "ratePlanDetails" : [ {
    "aggregateFreemiumCounters" : true,
    "aggregateStandardCounters" : true,
    "currency" : {
      "id" : "usd",
      "name" : "USD",
      ...
      "organization" : {
        ...
      },
      ...
    },
    "duration" : 1,
    "durationType" : "MONTH",
    "id" : "c1720153-c60f-4f7f-b4e5-cdc7bc7bec5b",
    "meteringType" : "UNIT",
    "organization" : {
      ...
    },
    "paymentDueDays" : "30",
    "ratePlanRates" : [ {
      "id" : "01c4d544-d907-423b-964e-4e2aed2816a3",
      "revshare" : 80.8555,
      "startUnit" : 0,
      "type" : "REVSHARE"
    } ],
    "ratingParameter" : "VOLUME",
    "revenueType" : "NET",
    "type" : "REVSHARE"
  } ],
  "recurringStartUnit" : 1,
  "recurringType" : "CALENDAR",
  "setUpFee" : 10,
  "startDate" : "2013-09-15 00:00:00",
  "type" : "STANDARD"
}

柔軟な共有モデルの収益分配プランの詳細を指定する

柔軟な共有モデルでは、1 つ以上のレートプラン料金を含むレートプランの詳細を指定します。各料金プランの料金は、トランザクション収益の範囲をカバーします(各範囲は「収益帯域」と呼ばれます)。収益帯ごとに収益分配率を割り当てます。

料金プランの料金に加えて、料金プランの詳細で次の項目を指定します。

  • 料金プランがトランザクションに基づくことを示すレート パラメータ(VOLUME)。VOLUME がデフォルトです。
  • 収益分配が取引量に基づいていないことを示す測定タイプ(VOLUME)。つまり、固定分配モデルの場合のように固定されていません。
  • 収益タイプ(GROSS または NET)。これは、収益分配が取引の総額または純額のどちらに基づいているかを示します。
  • お支払い期日(30 日間など)。
  • 組織の ID。
  • 会社で使用している「基本」通貨または会計通貨。
  • 収益が集計される期間を指定する期間と期間のタイプ(これは「集計基準」とも呼ばれます)。トランザクションは集計基準(1 か月など)で集計され、合計収益と該当する収益帯が計算されます。各トランザクションに適用される収益分配率は、その収益帯域によって異なります。
  • 該当する収益帯域を判断するために使用される集計カウンタ。

料金プランの詳細プロパティの一覧については、料金プランの詳細の構成プロパティをご覧ください。

料金プランの料金ごとに、次の項目を指定します。

  • 収益帯域の料金プラン料金のタイプ(REVSHARE)。
  • 収益帯域の収益分配を計算するために使用される割合。たとえば、80.5555 を指定した場合、収益帯域の収益分配率は 80.5555% になります。つまり、API プロバイダとして、その収益帯域のトランザクションごとに請求される価格の 80.5555% をデベロッパーに支払います。
  • 収益帯域の開始単位と終了単位。開始単位は収益帯域の下限を指定し、終了単位は収益帯域の上限を指定します。たとえば、開始単位を 0、終了単位を 1, 000 と指定した場合、収益帯域は、指定された通貨で 0 より大きく 1, 000 以下の取引収益を対象とします。通貨が米ドル、集計基準が 1 か月、収益帯域の割合が 80.5555% の場合、1 か月で最大 $1,000 の収益を生み出す取引の収益分配は、取引価格の 80.5555% になります。

    最終的な収益帯域の終了単位を指定しない場合、その帯域の収益の合計が開始単位を超えた後のすべての取引に、その帯域のシェア率が適用されます。たとえば、最後の帯域の開始単位が 1,000(米ドルと仮定)で、その帯域の終了単位を指定しない場合、帯域の収益の割合は、集計期間中の収益が 1, 000 ドルを超えるすべての取引に適用されます。

料金プランのプロパティの一覧については、料金プランの構成プロパティをご覧ください。

たとえば、次のコードは、柔軟な共有モデルで収益分配プランを作成します。この例では、2 つの収益帯域を指定しています。最初の帯域は、取引収益が 1,000 米ドルまでの範囲を対象としています。第 2 のバンドは、1,000 米ドルを超える取引収益を対象としています。収益分配率は、最初の収益帯域では 80.5555%、2 番目の収益帯域では 90.5% です。収益分配率は取引の正味価格に基づきます。集計基準は 1 か月です。契約期間は 2013 年 9 月 15 日から有効で、支払期限は 30 日後です。(収益分配に関連する詳細がハイライト表示されています)。

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Flexible share plan",
     "developer":null,
     "developerCategory":null,
     "advance": "true",
     "currency": {
      "id": "usd"
     },
     "description": "Flexible share plan",
     "displayName": "Flexible share plan",   
     "frequencyDuration": "30",
     "frequencyDurationType": "DAY",
     "earlyTerminationFee": "10",       
     "monetizationPackage": {
      "id": "location"
     },
     "organization": {
      "id": "{org_name}"
     },
     "paymentDueDays": "30",
     "prorate": "false",
     "published": "true",
     "ratePlanDetails": [
     {
      "currency": {
       "id": "usd"
      },
      "duration": "1",
      "durationType": "MONTH",
      "meteringType": "VOLUME",
      "organization": {
       "id": "{org_name}"
      },
      "paymentDueDays": "30",
      "ratePlanRates" : [ {
       "endUnit" : 1000,
       "revshare" : 80.5555,
       "startUnit" : 0,
       "type" : "REVSHARE"
      }, {
       "revshare" : 90.5,
       "startUnit" : 1000,
       "type" : "REVSHARE"
      } ],
     "ratingParameter" : "VOLUME",
     "revenueType" : "NET",
     "type" : "REVSHARE"
    } ],
    "recurringStartUnit": 1,
    "recurringType": "CALENDAR",
    "recurringFee": "10",
    "setUpFee": "10",
    "startDate": "2013-09-15 00:00:00",   
    "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

レスポンスは次のようになります(レスポンスの一部のみが表示されています)。

{
  "advance" : true,
  "currency" : {
    "id" : "usd",
    "name" : "USD",
    "organization" : {
      ...
    },
    ...
  },
  "description" : "Flexible share plan",
  "displayName" : "Flexible share plan",
  "earlyTerminationFee" : 10,
  "frequencyDuration" : 30,
  "frequencyDurationType" : "DAY",
  "id" : "location_flexible_share_plan",
  "monetizationPackage" : {
    "description" : "Location",
    "displayName" : "Location",
    "id" : "location",
    "name" : "Location",
    "organization" : {
      ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "description" : "Location",
      "displayName" : "Location",
      "id" : "location",
      "name" : "location",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    } ],
    "status" : "CREATED"
  },
  "name" : "Flexible share plan",
  "organization" : {
    ...
  },
  "paymentDueDays" : "30",
  "prorate" : false,
  "published" : false,
  "ratePlanDetails" : [ {
    "aggregateFreemiumCounters" : true,
    "aggregateStandardCounters" : true,
    "currency" : {
      "id" : "usd",
      "name" : "USD",
             "organization" : {
        ...
      },
      ...
    },
    "duration" : 1,
    "durationType" : "MONTH",
    "id" : "ba3353e3-14f4-4bc5-a9f1-c723fd34131c",
    "meteringType" : "VOLUME",
    "organization" : {
      ...
    },
    "paymentDueDays" : "30",
    "ratePlanRates" : [ {
      "endUnit" : 1000,
      "id" : "5f13a51e-2250-4383-9aad-35e9a008ab40",
      "revshare" : 80.5555,
      "startUnit" : 0,
      "type" : "REVSHARE"
    }, {
      "id" : "d4196250-4ecc-480e-a7ed-dfab8e1c92ed",
      "revshare" : 90.5,
      "startUnit" : 1000,
      "type" : "REVSHARE"
    } ],
    "ratingParameter" : "VOLUME",
    "revenueType" : "NET",
    "type" : "REVSHARE"
  } ],
  "recurringFee" : 10,
  "recurringStartUnit" : 1,
  "recurringType" : "CALENDAR",
  "setUpFee" : 10,
  "startDate" : "2013-09-15 00:00:00",
  "type" : "STANDARD"
}