Class: Recurly::Requests::SubscriptionAddOnCreate

Inherits:
Recurly::Request show all
Defined in:
lib/recurly/requests/subscription_add_on_create.rb

Instance Attribute Summary collapse

Attributes inherited from Recurly::Request

#attributes

Method Summary

Methods inherited from Recurly::Request

#==, #to_s

Methods included from Schema::SchemaFactory

#schema

Methods included from Schema::RequestCaster

#cast_request

Methods included from Schema::ResourceCaster

#cast

Methods included from Schema::SchemaValidator

#get_did_you_mean, #validate!, #validate_attribute!

Instance Attribute Details

#add_on_sourceString

Returns Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add-on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.

Returns:

  • (String)

    Used to determine where the associated add-on data is pulled from. If this value is set to `plan_add_on` or left blank, then add-on data will be pulled from the plan's add-ons. If the associated `plan` has `allow_any_item_on_subscriptions` set to `true` and this field is set to `item`, then the associated add-on data will be pulled from the site's item catalog.



11
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 11

define_attribute :add_on_source, String

#codeString

Returns If `add_on_source` is set to `plan_add_on` or left blank, then plan's add-on `code` should be used. If `add_on_source` is set to `item`, then the `code` from the associated item should be used.

Returns:

  • (String)

    If `add_on_source` is set to `plan_add_on` or left blank, then plan's add-on `code` should be used. If `add_on_source` is set to `item`, then the `code` from the associated item should be used.



15
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 15

define_attribute :code, String

#percentage_tiersArray[SubscriptionAddOnPercentageTier]

Returns If percentage tiers are provided in the request, all existing percentage tiers on the Subscription Add-on will be removed and replaced by the percentage tiers in the request. There must be one tier without ending_amount value which represents the final tier. Use only if add_on.tier_type is tiered or volume and add_on.usage_type is percentage. This feature is currently in development and requires approval and enablement, please contact support.

Returns:

  • (Array[SubscriptionAddOnPercentageTier])

    If percentage tiers are provided in the request, all existing percentage tiers on the Subscription Add-on will be removed and replaced by the percentage tiers in the request. There must be one tier without ending_amount value which represents the final tier. Use only if add_on.tier_type is tiered or volume and add_on.usage_type is percentage. This feature is currently in development and requires approval and enablement, please contact support.



19
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 19

define_attribute :percentage_tiers, Array, { :item_type => :SubscriptionAddOnPercentageTier }

#quantityInteger

Returns Quantity.

Returns:

  • (Integer)

    Quantity



23
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 23

define_attribute :quantity, Integer

#revenue_schedule_typeString

Returns Revenue schedule type.

Returns:

  • (String)

    Revenue schedule type



27
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 27

define_attribute :revenue_schedule_type, String

#tiersArray[SubscriptionAddOnTier]

Returns If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier without an `ending_quantity` value which represents the final tier. See our [Guide](recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.

Returns:

  • (Array[SubscriptionAddOnTier])

    If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier without an `ending_quantity` value which represents the final tier. See our [Guide](recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.



31
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 31

define_attribute :tiers, Array, { :item_type => :SubscriptionAddOnTier }

#unit_amountFloat

Returns Allows up to 2 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount` cannot be provided.

Returns:

  • (Float)

    Allows up to 2 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount` cannot be provided.



35
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 35

define_attribute :unit_amount, Float

#unit_amount_decimalString

Returns Allows up to 9 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount_decimal` cannot be provided. Only supported when the plan add-on's `add_on_type` = `usage`. If `unit_amount_decimal` is provided, `unit_amount` cannot be provided.

Returns:

  • (String)

    Allows up to 9 decimal places. Optionally, override the add-on's default unit amount. If the plan add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `unit_amount_decimal` cannot be provided. Only supported when the plan add-on's `add_on_type` = `usage`. If `unit_amount_decimal` is provided, `unit_amount` cannot be provided.



39
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 39

define_attribute :unit_amount_decimal, String

#usage_percentageFloat

Returns The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers. See our [Guide](recurly.com/developers/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.

Returns:

  • (Float)

    The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers. See our [Guide](recurly.com/developers/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.



43
# File 'lib/recurly/requests/subscription_add_on_create.rb', line 43

define_attribute :usage_percentage, Float