> ## Documentation Index
> Fetch the complete documentation index at: https://docs.slm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# RatePlan Data Members

The following table lists and describes the data members of the `RatePlan` object.

| Data Member | Data Type | Description |
| - | - | - |
| `description` | string | **Optional.** A description for the Rate Plan. |
| `hasEventRecorded` | Boolean | Read-only field that indicates whether or not this `RatePlan` has had any `Events` recorded against it. |
| `includedUnits` | decimal | The number of Rated Units automatically included with each Billing Cycle. |
| `maximumFee` | `RatePlanPrice` | An array of `Prices` for the maximum charge for this plan, per Billing Cycle. If this field is defined, customers will never be charged more than this amount per Billing Cycle, regardless of their reported use. The `RatePlanPrice` object is an (amount, currency) pair used in a `RatePlan`, and contains two members: - `amount`: the number of currency units - `currency`: the ISO 4217 currency code to be used for this Fee |
| `merchantRatePlanId` | string | **Required.** Your unique ID for this Rate Plan. **Note:** use of the forward slash character (/) in merchant identifiers is not allowed. See [Merchant Identifiers](Merchant_Identifiers) for more information. |
| `minimumFee` | `RatePlanPrice` | An array of Prices for the minimum charge for this plan, per Billing Cycle. If this field is defined, customers will be charged at least this amount per Billing Cycle, regardless of their use. The `RatePlanPrice` object is an (amount, currency) pair used in a `RatePlan`, and contains two members: - `amount`: the number of currency units. - `currency`: the ISO 4217 currency code to be used for this Fee. |
| `multiplyRatedUnitsBy` | `MultiplyRatedUnitsBy` | The calculation method by which this `RatePlan` will determine the price to bill for a Billing Cycle. The `MultiplyRatedUnitsBy` object contains two values: - `EachRespectiveTier`: multiplies the number of `Events` for the Billing Cycle by the `ratePrice` for the Tier in which they occurred. - `HighestApplicableTier`: multiplies the total number of `Events` for the Billing Cycle by the price for the highest Tier in which any reported Event occurred. `EachRespectiveTier` calculates the charge by Tier use. That is, if a Tiered Plan is defined as $2 for 0-9 units, and $1 for 10-100 units, a customer who uses 15 units will be charged $2\*9 + $1\*6 = $24. For the same use, `HighestApplicableTier` would calculate the charge by multiplying 15 units by $1, for a total charge of \$15. |
| `nameValues` | `NameValuePair` | **Optional.** An array of name-value pair items specific to this `RatePlan`. See [The NameValuePair Object](The_NameValuePair_Object). |
| `ratedUnit` | `RatedUnit` | **Required.** The names for the `Unit` included in this Rate Plan. The `RatedUnit` object contains two data members: - `nameSingular` (string): defines the singular name for the Unit, as displayed in Subscribe pages, reports, and customer emails. - `namePlural` (string): defines the plural name for the Unit. |
| `ratePlanModel` | `RatePlanModel` | **Required.** Defines the mode of use for the `RatePlan`. The `RatePlanModel` object contains one of two values: - `UsageBased`: calculates the fee per Billing Cycle based on the number of Rated Units consumed during the Billing Cycle. - `LicenseBased`: calculates the fee per Billing Cycle based on a defined number of licenses per Billing Cycle. **Note:** If no new Events are reported for a Billing Cycle, `LicenseBased AutoBillItems` will repeat the previous Billing Cycle’s Use level;`UsageBased AutoBillItems` will be reset to zero. |
| `roundingDecimals` | integer | Defines the rounding logic for returned Unit values. Enter the decimal place to which you wish returned values to be rounded. Positive numbers round to the right of the decimal point; negative numbers round to the left of the decimal point. For example, given a return of 346.26961: - **0**: rounds to the nearest integer. (346) - **2**: rounds to the nearest hundredth. (346.27) - **-2**: rounds to the nearest hundred. (300) |
| `status` | `RatePlanStatus` | Defines the status of the `RatePlan`: - `Active`: the Rate Plan is available for use. - `Suspended`: the Rate Plan is not available for use. |
| `tier` | `RatePlanTier` | An array of pricing levels used in the Rate Plan. See the [RatePlanTier Subobject](RatePlanTier_Subobject). |
| `VID` | string | Vindicia's Globally Unique Identifier (GUID) for this object. When creating a new `RatePlan` object, leave this field blank; it will be automatically populated by Subscribe. |
| **Parent topic:**[The RatePlan Object](../topics/The_RatePlan_Object) | | |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.