Class: MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/metronome_sdk/models/v2/contract_edit_params.rb

Defined Under Namespace

Classes: BillingProviderConfiguration, Schedule

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_configuration:, schedule:) ⇒ Object

Some parameter documentations has been truncated, see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate for more details.

Update the billing provider configuration on the contract. Currently only supports adding a billing provider configuration to a contract that does not already have one.

Parameters:



306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 306

class AddBillingProviderConfigurationUpdate < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute billing_provider_configuration
  #
  #   @return [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration]
  required :billing_provider_configuration,
           -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration }

  # @!attribute schedule
  #   Indicates when the billing provider will be active on the contract. Any charges
  #   accrued during the schedule will be billed to the indicated billing provider.
  #
  #   @return [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule]
  required :schedule,
           -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule }

  # @!method initialize(billing_provider_configuration:, schedule:)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate}
  #   for more details.
  #
  #   Update the billing provider configuration on the contract. Currently only
  #   supports adding a billing provider configuration to a contract that does not
  #   already have one.
  #
  #   @param billing_provider_configuration [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration]
  #
  #   @param schedule [MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule] Indicates when the billing provider will be active on the contract. Any charges

  # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate#billing_provider_configuration
  class BillingProviderConfiguration < MetronomeSDK::Internal::Type::BaseModel
    # @!attribute billing_provider
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider, nil]
    optional :billing_provider,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider }

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

    # @!attribute delivery_method
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod, nil]
    optional :delivery_method,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod }

    # @!method initialize(billing_provider: nil, billing_provider_configuration_id: nil, delivery_method: nil)
    #   @param billing_provider [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::BillingProvider]
    #   @param billing_provider_configuration_id [String]
    #   @param delivery_method [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration::DeliveryMethod]

    # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration#billing_provider
    module BillingProvider
      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::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration#delivery_method
    module DeliveryMethod
      extend MetronomeSDK::Internal::Type::Enum

      DIRECT_TO_BILLING_PROVIDER = :direct_to_billing_provider
      AWS_SQS = :aws_sqs
      TACKLE = :tackle
      AWS_SNS = :aws_sns

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

  # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate#schedule
  class Schedule < MetronomeSDK::Internal::Type::BaseModel
    # @!attribute effective_at
    #   When the billing provider update will take effect.
    #
    #   @return [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt]
    required :effective_at,
             enum: -> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt }

    # @!method initialize(effective_at:)
    #   Indicates when the billing provider will be active on the contract. Any charges
    #   accrued during the schedule will be billed to the indicated billing provider.
    #
    #   @param effective_at [Symbol, MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule::EffectiveAt] When the billing provider update will take effect.

    # When the billing provider update will take effect.
    #
    # @see MetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule#effective_at
    module EffectiveAt
      extend MetronomeSDK::Internal::Type::Enum

      START_OF_CURRENT_PERIOD = :START_OF_CURRENT_PERIOD

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

Instance Attribute Details

#billing_provider_configurationMetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration



310
311
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 310

required :billing_provider_configuration,
-> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::BillingProviderConfiguration }

#scheduleMetronomeSDK::Models::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule

Indicates when the billing provider will be active on the contract. Any charges accrued during the schedule will be billed to the indicated billing provider.



318
319
# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 318

required :schedule,
-> { MetronomeSDK::V2::ContractEditParams::AddBillingProviderConfigurationUpdate::Schedule }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v2/contract_edit_params.rb', line 385