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_customer_account_id: nil, aws_customer_id: nil, 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:



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
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
# File 'lib/metronome_sdk/models/v1/customer_create_params.rb', line 73

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_customer_account_id
  #
  #   @return [String, nil]
  optional :aws_customer_account_id, String

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

  # @!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_customer_account_id: nil, aws_customer_id: nil, 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_customer_account_id [String]
  #
  #   @param aws_customer_id [String]
  #
  #   @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_customer_account_idString?

Returns:

  • (String, nil)


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

optional :aws_customer_account_id, String

#aws_customer_idString?

Returns:

  • (String, nil)


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

optional :aws_customer_id, String

#aws_is_subscription_productBoolean?

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

Returns:

  • (Boolean, nil)


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

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

#aws_product_codeString?

Returns:

  • (String, nil)


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

optional :aws_product_code, String

#aws_regionSymbol, ...



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

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

#billing_provider_customer_idString

Returns:

  • (String)


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

required :billing_provider_customer_id, String

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



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

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.



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

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 154