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:



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