Class: MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data

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

Defined Under Namespace

Modules: BillingProvider, DeliveryMethod

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(id: , archived_at: , billing_provider: , configuration: , customer_id: , delivery_method: , delivery_method_configuration: , delivery_method_id: ) ⇒ Object

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

Parameters:

  • id (String) (defaults to: )

    ID of this configuration; can be provided as the billing*provider_configuration*

  • archived_at (Time, nil) (defaults to: )
  • billing_provider (Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider) (defaults to: )

    The billing provider set for this configuration.

  • configuration (Hash{Symbol=>Object}) (defaults to: )

    Configuration for the billing provider. The structure of this object is specific

  • customer_id (String) (defaults to: )
  • delivery_method (Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod) (defaults to: )

    The method to use for delivering invoices to this customer.

  • delivery_method_configuration (Hash{Symbol=>Object}) (defaults to: )

    Configuration for the delivery method. The structure of this object is specific

  • delivery_method_id (String) (defaults to: )

    ID of the delivery method to use for this customer.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
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
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 17

class Data < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute id
  #   ID of this configuration; can be provided as the
  #   billing_provider_configuration_id when creating a contract.
  #
  #   @return [String]
  required :id, String

  # @!attribute archived_at
  #
  #   @return [Time, nil]
  required :archived_at, Time, nil?: true

  # @!attribute billing_provider
  #   The billing provider set for this configuration.
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider]
  required :billing_provider,
           enum: -> { MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider }

  # @!attribute configuration
  #   Configuration for the billing provider. The structure of this object is specific
  #   to the billing provider.
  #
  #   @return [Hash{Symbol=>Object}]
  required :configuration, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]

  # @!attribute customer_id
  #
  #   @return [String]
  required :customer_id, String

  # @!attribute delivery_method
  #   The method to use for delivering invoices to this customer.
  #
  #   @return [Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod]
  required :delivery_method,
           enum: -> { MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod }

  # @!attribute delivery_method_configuration
  #   Configuration for the delivery method. The structure of this object is specific
  #   to the delivery method.
  #
  #   @return [Hash{Symbol=>Object}]
  required :delivery_method_configuration,
           MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]

  # @!attribute delivery_method_id
  #   ID of the delivery method to use for this customer.
  #
  #   @return [String]
  required :delivery_method_id, String

  # @!method initialize(id:, archived_at:, billing_provider:, configuration:, customer_id:, delivery_method:, delivery_method_configuration:, delivery_method_id:)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data}
  #   for more details.
  #
  #   @param id [String] ID of this configuration; can be provided as the billing*provider_configuration*
  #
  #   @param archived_at [Time, nil]
  #
  #   @param billing_provider [Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider] The billing provider set for this configuration.
  #
  #   @param configuration [Hash{Symbol=>Object}] Configuration for the billing provider. The structure of this object is specific
  #
  #   @param customer_id [String]
  #
  #   @param delivery_method [Symbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod] The method to use for delivering invoices to this customer.
  #
  #   @param delivery_method_configuration [Hash{Symbol=>Object}] Configuration for the delivery method. The structure of this object is specific
  #
  #   @param delivery_method_id [String] ID of the delivery method to use for this customer.

  # The billing provider set for this configuration.
  #
  # @see MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data#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

  # The method to use for delivering invoices to this customer.
  #
  # @see MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data#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

Instance Attribute Details

#archived_atTime?

Returns:

  • (Time, nil)


28
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 28

required :archived_at, Time, nil?: true

#billing_providerSymbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider

The billing provider set for this configuration.



34
35
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 34

required :billing_provider,
enum: -> { MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::BillingProvider }

#configurationHash{Symbol=>Object}

Configuration for the billing provider. The structure of this object is specific to the billing provider.

Returns:

  • (Hash{Symbol=>Object})


42
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 42

required :configuration, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]

#customer_idString

Returns:

  • (String)


47
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 47

required :customer_id, String

#delivery_methodSymbol, MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod

The method to use for delivering invoices to this customer.



53
54
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 53

required :delivery_method,
enum: -> { MetronomeSDK::Models::V1::CustomerRetrieveBillingConfigurationsResponse::Data::DeliveryMethod }

#delivery_method_configurationHash{Symbol=>Object}

Configuration for the delivery method. The structure of this object is specific to the delivery method.

Returns:

  • (Hash{Symbol=>Object})


61
62
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 61

required :delivery_method_configuration,
MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]

#delivery_method_idString

ID of the delivery method to use for this customer.

Returns:

  • (String)


68
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 68

required :delivery_method_id, String

#idString

ID of this configuration; can be provided as the billing_provider_configuration_id when creating a contract.

Returns:

  • (String)


23
# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 23

required :id, String

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/metronome_sdk/models/v1/customer_retrieve_billing_configurations_response.rb', line 107