Class: MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v1/customer_create_params.rb

Defined Under Namespace

Modules: AwsRegion, BillingProviderType, StripeCollectionMethod

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, inspect, #inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(billing_provider_customer_id: , billing_provider_type: , aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil) ⇒ Object

Some parameter documentations has been truncated, see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig for more details.

Parameters:



65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 65

class BillingConfig < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute billing_provider_customer_id
  #
  #   @return [String]
  required :billing_provider_customer_id, String

  # @!attribute billing_provider_type
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::BillingProviderType]
  required :billing_provider_type,
           enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::BillingProviderType }

  # @!attribute aws_is_subscription_product
  #   True if the aws_product_code is a SAAS subscription product, false otherwise.
  #
  #   @return [Boolean, nil]
  optional :aws_is_subscription_product, MetronomeSDK::Internal::Type::Boolean

  # @!attribute aws_product_code
  #
  #   @return [String, nil]
  optional :aws_product_code, String

  # @!attribute aws_region
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::AwsRegion, nil]
  optional :aws_region, enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::AwsRegion }

  # @!attribute stripe_collection_method
  #   The collection method for the customer's invoices. NOTE:
  #   `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod, nil]
  optional :stripe_collection_method,
           enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod }

  # @!method initialize(billing_provider_customer_id:, billing_provider_type:, aws_is_subscription_product: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig} for more
  #   details.
  #
  #   @param billing_provider_customer_id [String]
  #
  #   @param billing_provider_type [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::BillingProviderType]
  #
  #   @param aws_is_subscription_product [Boolean] True if the aws_product_code is a SAAS subscription product, false otherwise.
  #
  #   @param aws_product_code [String]
  #
  #   @param aws_region [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::AwsRegion]
  #
  #   @param stripe_collection_method [Symbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod] The collection method for the customer's invoices.

  # @see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig#billing_provider_type
  module BillingProviderType
    extend MetronomeSDK::Internal::Type::Enum

    AWS_MARKETPLACE = :aws_marketplace
    STRIPE = :stripe
    NETSUITE = :netsuite
    CUSTOM = :custom
    AZURE_MARKETPLACE = :azure_marketplace
    QUICKBOOKS_ONLINE = :quickbooks_online
    WORKDAY = :workday
    GCP_MARKETPLACE = :gcp_marketplace
    METRONOME = :metronome

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # @see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig#aws_region
  module AwsRegion
    extend MetronomeSDK::Internal::Type::Enum

    AF_SOUTH_1 = :"af-south-1"
    AP_EAST_1 = :"ap-east-1"
    AP_NORTHEAST_1 = :"ap-northeast-1"
    AP_NORTHEAST_2 = :"ap-northeast-2"
    AP_NORTHEAST_3 = :"ap-northeast-3"
    AP_SOUTH_1 = :"ap-south-1"
    AP_SOUTHEAST_1 = :"ap-southeast-1"
    AP_SOUTHEAST_2 = :"ap-southeast-2"
    CA_CENTRAL_1 = :"ca-central-1"
    CN_NORTH_1 = :"cn-north-1"
    CN_NORTHWEST_1 = :"cn-northwest-1"
    EU_CENTRAL_1 = :"eu-central-1"
    EU_NORTH_1 = :"eu-north-1"
    EU_SOUTH_1 = :"eu-south-1"
    EU_WEST_1 = :"eu-west-1"
    EU_WEST_2 = :"eu-west-2"
    EU_WEST_3 = :"eu-west-3"
    ME_SOUTH_1 = :"me-south-1"
    SA_EAST_1 = :"sa-east-1"
    US_EAST_1 = :"us-east-1"
    US_EAST_2 = :"us-east-2"
    US_GOV_EAST_1 = :"us-gov-east-1"
    US_GOV_WEST_1 = :"us-gov-west-1"
    US_WEST_1 = :"us-west-1"
    US_WEST_2 = :"us-west-2"

    # @!method self.values
    #   @return [Array<Symbol>]
  end

  # The collection method for the customer's invoices. NOTE:
  # `auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.
  #
  # @see MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig#stripe_collection_method
  module StripeCollectionMethod
    extend MetronomeSDK::Internal::Type::Enum

    CHARGE_AUTOMATICALLY = :charge_automatically
    SEND_INVOICE = :send_invoice
    AUTO_CHARGE_PAYMENT_INTENT = :auto_charge_payment_intent
    MANUALLY_CHARGE_PAYMENT_INTENT = :manually_charge_payment_intent

    # @!method self.values
    #   @return [Array<Symbol>]
  end
end

Instance Attribute Details

#aws_is_subscription_productBoolean?

True if the aws_product_code is a SAAS subscription product, false otherwise.

Returns:

  • (Boolean, nil)


81
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 81

optional :aws_is_subscription_product, MetronomeSDK::Internal::Type::Boolean

#aws_product_codeString?

Returns:

  • (String, nil)


86
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 86

optional :aws_product_code, String

#aws_regionSymbol, ...



91
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 91

optional :aws_region, enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::AwsRegion }

#billing_provider_customer_idString

Returns:

  • (String)


69
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 69

required :billing_provider_customer_id, String

#billing_provider_typeSymbol, MetronomeSDK::Models::V1::CustomerCreateParams::BillingConfig::BillingProviderType



74
75
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 74

required :billing_provider_type,
enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::BillingProviderType }

#stripe_collection_methodSymbol, ...

The collection method for the customer’s invoices. NOTE: ‘auto_charge_payment_intent` and `manually_charge_payment_intent` are in beta.



98
99
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 98

optional :stripe_collection_method,
enum: -> { MetronomeSDK::V1::CustomerCreateParams::BillingConfig::StripeCollectionMethod }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 132