recurly-client-0.1.0.0: Client for Recurly subscription management
Safe HaskellSafe-Inferred
LanguageHaskell2010

RecurlyClient.Types.AddOn

Description

Contains the types generated from the schema AddOn

Synopsis

Documentation

data AddOn Source #

Defines the object schema located at components.schemas.AddOn in the specification.

Full add-on details.

Constructors

AddOn 

Fields

  • addOnAccounting_code :: Maybe Text

    accounting_code: Accounting code for invoice line items for this add-on. If no value is provided, it defaults to add-on's code.

    Constraints:

    • Maximum length of 20
    • Must match pattern '/^[a-z0-9_+-]+$/'
  • addOnAdd_on_type :: Maybe AddOnAdd_on_type

    add_on_type: Whether the add-on type is fixed, or usage-based.

  • addOnAvalara_service_type :: Maybe Int

    avalara_service_type: Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to the documentation for more available t/s types.

    Constraints:

    • Minimum of 0.0
  • addOnAvalara_transaction_type :: Maybe Int

    avalara_transaction_type: Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to the documentation for more available t/s types.

    Constraints:

    • Minimum of 0.0
  • addOnCode :: Text

    code: The unique identifier for the add-on within its plan.

    Constraints:

    • Maximum length of 50
  • addOnCreated_at :: Maybe JsonDateTime

    created_at

  • addOnCurrencies :: Maybe (NonEmpty AddOnPricing)

    currencies

    Constraints:

    • Must have a minimum of 1 items
  • addOnDefault_quantity :: Maybe Int

    default_quantity: Default quantity for the hosted pages.

  • addOnDeleted_at :: Maybe JsonDateTime

    deleted_at

  • addOnDisplay_quantity :: Maybe Bool

    display_quantity: Determines if the quantity field is displayed on the hosted pages for the add-on.

  • addOnExternal_sku :: Maybe Text

    external_sku: Optional, stock keeping unit to link the item to other inventory systems.

    Constraints:

    • Maximum length of 50
  • addOnId :: Maybe Text

    id

    Constraints:

    • Maximum length of 13
  • addOnItem :: Maybe ItemMini

    item: Just the important parts.

  • addOnLiability_gl_account_id :: Maybe Text

    liability_gl_account_id: The ID of a general ledger account. General ledger accounts are only accessible as a part of the Recurly RevRec Standard and Recurly RevRec Advanced features.

    Constraints:

    • Maximum length of 13
  • addOnMeasured_unit_id :: Maybe Text

    measured_unit_id: System-generated unique identifier for an measured unit associated with the add-on.

    Constraints:

    • Maximum length of 13
  • addOnName :: Text

    name: Describes your add-on and will appear in subscribers' invoices.

    Constraints:

    • Maximum length of 255
  • addOnObject :: Maybe Text

    object

  • addOnOptional :: Maybe Bool

    optional: Whether the add-on is optional for the customer to include in their purchase on the hosted payment page. If false, the add-on will be included when a subscription is created through the Recurly UI. However, the add-on will not be included when a subscription is created through the API.

  • addOnPercentage_tiers :: Maybe [PercentageTiersByCurrency]

    percentage_tiers: This feature is currently in development and requires approval and enablement, please contact support.

  • addOnPerformance_obligation_id :: Maybe Text

    performance_obligation_id: The ID of a performance obligation. Performance obligations are only accessible as a part of the Recurly RevRec Standard and Recurly RevRec Advanced features.

    Constraints:

    • Maximum length of 13
  • addOnPlan_id :: Maybe Text

    plan_id

    Constraints:

    • Maximum length of 13
  • addOnRevenue_gl_account_id :: Maybe Text

    revenue_gl_account_id: The ID of a general ledger account. General ledger accounts are only accessible as a part of the Recurly RevRec Standard and Recurly RevRec Advanced features.

    Constraints:

    • Maximum length of 13
  • addOnRevenue_schedule_type :: Maybe AddOnRevenue_schedule_type

    revenue_schedule_type: When this add-on is invoiced, the line item will use this revenue schedule. If `item_code`/`item_id` is part of the request then `revenue_schedule_type` must be absent in the request as the value will be set from the item.

  • addOnState :: Maybe AddOnState

    state: Add-ons can be either active or inactive.

  • addOnTax_code :: Maybe Text

    tax_code: Optional field used by Avalara, Vertex, and Recurly's In-the-Box tax solution to determine taxation rules. You can pass in specific tax codes using any of these tax integrations. For Recurly's In-the-Box tax offering you can also choose to instead use simple values of `unknown`, `physical`, or `digital` tax codes. If `item_code`/`item_id` is part of the request then `tax_code` must be absent.

    Constraints:

    • Maximum length of 50
  • addOnTier_type :: Maybe AddOnTier_type

    tier_type: The pricing model for the add-on. For more information, click here. See our Guide for an overview of how to configure quantity-based pricing models.

  • addOnTiers :: Maybe [Tier]

    tiers

  • addOnUpdated_at :: Maybe JsonDateTime

    updated_at

  • addOnUsage_calculation_type :: Maybe AddOnUsage_calculation_type

    usage_calculation_type: The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.

  • addOnUsage_percentage :: Maybe Float

    usage_percentage: 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.

  • addOnUsage_timeframe :: Maybe AddOnUsage_timeframe

    usage_timeframe: The time at which usage totals are reset for billing purposes.

  • addOnUsage_type :: Maybe AddOnUsage_type

    usage_type: Type of usage, returns usage type if `add_on_type` is `usage`.

Instances

Instances details
FromJSON AddOn Source # 
Instance details

Defined in RecurlyClient.Types.AddOn

ToJSON AddOn Source # 
Instance details

Defined in RecurlyClient.Types.AddOn

Show AddOn Source # 
Instance details

Defined in RecurlyClient.Types.AddOn

Methods

showsPrec :: Int -> AddOn -> ShowS #

show :: AddOn -> String #

showList :: [AddOn] -> ShowS #

Eq AddOn Source # 
Instance details

Defined in RecurlyClient.Types.AddOn

Methods

(==) :: AddOn -> AddOn -> Bool #

(/=) :: AddOn -> AddOn -> Bool #

mkAddOn Source #

Create a new AddOn with all required fields.

data AddOnAdd_on_type Source #

Defines the enum schema located at components.schemas.AddOn.properties.add_on_type in the specification.

Whether the add-on type is fixed, or usage-based.

Constructors

AddOnAdd_on_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnAdd_on_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnAdd_on_typeEnumFixed

Represents the JSON value "fixed"

AddOnAdd_on_typeEnumUsage

Represents the JSON value "usage"

data AddOnRevenue_schedule_type Source #

Defines the enum schema located at components.schemas.AddOn.properties.revenue_schedule_type in the specification.

When this add-on is invoiced, the line item will use this revenue schedule. If `item_code`/`item_id` is part of the request then `revenue_schedule_type` must be absent in the request as the value will be set from the item.

Constructors

AddOnRevenue_schedule_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnRevenue_schedule_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnRevenue_schedule_typeEnumAt_range_end

Represents the JSON value "at_range_end"

AddOnRevenue_schedule_typeEnumAt_range_start

Represents the JSON value "at_range_start"

AddOnRevenue_schedule_typeEnumEvenly

Represents the JSON value "evenly"

AddOnRevenue_schedule_typeEnumNever

Represents the JSON value "never"

data AddOnState Source #

Defines the enum schema located at components.schemas.AddOn.properties.state in the specification.

Add-ons can be either active or inactive.

Constructors

AddOnStateOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnStateTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnStateEnumActive

Represents the JSON value "active"

AddOnStateEnumInactive

Represents the JSON value "inactive"

data AddOnTier_type Source #

Defines the enum schema located at components.schemas.AddOn.properties.tier_type in the specification.

The pricing model for the add-on. For more information, click here. See our Guide for an overview of how to configure quantity-based pricing models.

Constructors

AddOnTier_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnTier_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnTier_typeEnumFlat

Represents the JSON value "flat"

AddOnTier_typeEnumTiered

Represents the JSON value "tiered"

AddOnTier_typeEnumStairstep

Represents the JSON value "stairstep"

AddOnTier_typeEnumVolume

Represents the JSON value "volume"

data AddOnUsage_calculation_type Source #

Defines the enum schema located at components.schemas.AddOn.properties.usage_calculation_type in the specification.

The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.

Constructors

AddOnUsage_calculation_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnUsage_calculation_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnUsage_calculation_typeEnumCumulative

Represents the JSON value "cumulative"

AddOnUsage_calculation_typeEnumLast_in_period

Represents the JSON value "last_in_period"

data AddOnUsage_timeframe Source #

Defines the enum schema located at components.schemas.AddOn.properties.usage_timeframe in the specification.

The time at which usage totals are reset for billing purposes.

Constructors

AddOnUsage_timeframeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnUsage_timeframeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnUsage_timeframeEnumBilling_period

Represents the JSON value "billing_period"

AddOnUsage_timeframeEnumSubscription_term

Represents the JSON value "subscription_term"

data AddOnUsage_type Source #

Defines the enum schema located at components.schemas.AddOn.properties.usage_type in the specification.

Type of usage, returns usage type if `add_on_type` is `usage`.

Constructors

AddOnUsage_typeOther Value

This case is used if the value encountered during decoding does not match any of the provided cases in the specification.

AddOnUsage_typeTyped Text

This constructor can be used to send values to the server which are not present in the specification yet.

AddOnUsage_typeEnumPrice

Represents the JSON value "price"

AddOnUsage_typeEnumPercentage

Represents the JSON value "percentage"