Was this helpful?

Introduction

When you create a rate plan, there are details that you need to specify. Some of these are:

  • The revenue model that applies to the rate plan.
  • Whether the rate plan applies to all the products in an API package or to a specific product.
  • For a revenue share plan, whether the revenue share is based on the net or gross price of a transaction.
  • For a rate card plan, whether charges are based on the volume of transactions or based on a custom attribute defined in the transaction recording policy.
  • For a revenue share or rate card plan, when payment is due.

Revenue models

Monetization gives you a lot of flexibility in the revenue models you use for a rate plan. You can create rate plans that use any of the following revenue models:

Revenue Model Description
Fees only

The developer only pays the API provider fees specified in the rate plan. There are no additional transaction-related fees. See Specify fees only plan details for further information on specifying fees on plan details using the API. If you use the UI to create a fees only plan, no additional details need to be specified beyond the selections you make in the Fees tab of the Rate Plan window (see Adding fees to a rate plan using the UI).

Revenue Share

The API provider shares with the developer a percentage of the revenue generated from each transaction (based on the gross or net price of a transaction). See Specify revenue share plan details for further information.

Rate Card

The developer is charged for each transaction. See Specify rate card plan details for further information.

Rate Card with Custom Attribute

The developer is charged based on a custom attribute within each transaction. For example, if you set up a plan where you charge the developer for each transaction, you can set the rate for the plan based on a custom attribute such as the number of bytes transmitted in a transaction. See Specify rate card with custom attribute details for further information.

This rate plan type is available only if you specify custom attributes for the API product and only for an API package that has one product.
Revenue Share and Rate Card

The API provider shares a percentage of the revenue generated from each transaction with the developer, and the developer is charged for each transaction. See Specify revenue share plan details and Specify rate card plan details for further information.

You have additional options within these revenue models. For example, for a revenue share plan, you can specify a fixed sharing model or a flexible sharing model. For a rate card plan, you can charge a developer a flat rate, charge based on "volume bands", that is, ranges of transaction volume for which you can apply different rates, or charge a set amount (up-front) for each "bundle" of transactions.

Specific API product or generic

If you create a rate plan (other than a fees only plan) for an API package that has more than one product, you can apply the plan to a specific product in the package. You do this by identifying the product in the request. If you don’t identify a product, the plan is applied to all products in the API package.

Rate plan details configuration settings

The following configuration options are available for rate plan details:

Name Description Default Required?
type

The revenue model for the plan. The value can be one of the following:

  • REVSHARE. Indicates the revenue share model. The API provider shares with the developer a percentage of the revenue generated from each transaction (based on the gross or net price of a transaction).
  • RATECARD. Indicates the rate card model. The developer is charged for each transaction.
  • REVSHARE_RATECARD. Indicates the revenue share and rate card model. The API provider shares a percentage of the revenue generated from each transaction with the developer, and the developer is charged for each transaction.

 

N/A Yes
revenueType

The basis of the revenue share in a revenue share plan. The value can be one of the following:

  • GROSS. The revenue share is based on a percentage of the gross price of a transaction.
  • NET. The revenue share is based on a percentage of the net price of a transaction.

 

N/A No
meteringType

The charging model for a rate card plan. The value can be one of the following:

  • UNIT. Flat rate charging model.
  • VOLUME. Volume banded charging model.
  • STAIR_STEP. Bundled charging model

 

N/A yes
ratingParameter

Indicates whether the rate plan is based on transactions or on a custom attribute. The value can be one of the following:

  • VOLUME. The rate plan is based on the volume of transactions.
  • COMMERCE_CUSTOM_ATTRIBUTE_{num}. The rate plan is based on a custom attribute, whose name is of the form COMMERCE_CUSTOM_ATTRIBUTE_{num}, where {num} is an integer for example, COMMERCE_CUSTOM_ATTRIBUTE_1. This value is valid for rate card plans only.
  • sum(COMMERCE_CUSTOM_ATTRIBUTE_{num}). The rate plan is based on an aggregation of a custom attribute whose name is COMMERCE_CUSTOM_ATTRIBUTE_{num}, where {num} is an integer for example, . This value is valid for rate card plans only.

 

VOLUME Yes
ratingParameterUnit

The unit that applies to the ratingParameter

N/A No
duration

Together with durationType, specifies the period of time for the aggregation basis. For example, set duration to 30 and durationType to DAY to specify an aggregation basis of 30 days.

N/A No
durationType

Together with durationType, specifies the period of time for the aggregation basis. The durationType value can be one of the following:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

 

For example, to specify an aggregation basis 30 days, set duration to 30 and durationType to DAY.

N/A No
freemiumDuration

Together with freemiumDurationType, indicates the period of time for the freemium period for an individual API product. For example, to specify that the freemium period for an API product is 30 days, set freemiumDuration to 30 and freemiumDurationType to DAY.

N/A No
freemiumDurationType

Together with freemiumDuration, indicates the period of time for the freemium period for an individual API product. The freemiumDurationType value can be one of the following:

  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR

 

For example, to specify that the freemium period for an API product is 30 days, set freemiumDuration to 30 and freemiumDurationType to DAY.

N/A No
freemiumUnit

Specifies the freemium quantity for an API product. The value can be the number of transactions or the number of units pertaining to a custom attribute recorded in the transaction recording policy.

N/A No
aggregateFreemiumCounters

Indicates whether or not aggregate counters are enabled to determine if usage of an API product is in the free range. Aggregate counters must be enabled to set up a freemium plan for a product. The value can be one of the following:

  • True. Enable aggregate counters.
  • False. Do not enable aggregate counters.

 

N/A No
aggregateStandardCounters

Indicates whether or not aggregate counters are used to determine the band of usage (such as a volume band for a rate card plan. The value can be one of the following:

  • True. Use aggregate counters.
  • False. Do not use aggregate counters.

 

N/A No
paymentDueDays

Indicates when payment is due from a postpaid developer. For example, set the value to 30 to indicate that payment is due in 30 days.

N/A No
ratePlanRates

Specifies rate plan rate details such as the type of rate plan (REVSHARE or RATECARD , the rate for a rate card plan, the revenue share for a revenue share plan, and the range (starting unit and ending unit for which the rate plan rate applies.

N/A Yes

Get help

For help, see Apigee Customer Support.

Next steps

Specify rate card details for your revenue model:

Add new comment

Provide your email address if you wish to be contacted offline about your comment.
We will not display your email address as part of your comment.

We'd love your feedback and perspective! Please be as specific as possible.
Type the characters you see in this picture. (verify using audio)

Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.