Class: MetronomeSDK::Models::V1::Customers::Invoice

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

Overview

Direct Known Subclasses

InvoiceListBreakdownsResponse

Defined Under Namespace

Classes: ConstituentInvoice, CorrectionRecord, ExternalInvoice, InvoiceAdjustment, LineItem, Payer, ResellerRoyalty

Instance Attribute 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(contract_id: , customer_id: ) ⇒ Object

Account hierarchy M3 - Required for account hierarchy usage invoices. An object containing the contract and customer UUIDs that pay for this invoice.

Parameters:

  • contract_id (String) (defaults to: )
  • customer_id (String) (defaults to: )


# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 861


Instance Attribute Details

#amendment_idString?

Returns:

  • (String, nil)


48
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 48

optional :amendment_id, String

#billable_statusObject?

This field’s availability is dependent on your client’s configuration.

Returns:

  • (Object, nil)


54
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 54

optional :billable_status, MetronomeSDK::Internal::Type::Unknown

#constituent_invoicesArray<MetronomeSDK::Models::V1::Customers::Invoice::ConstituentInvoice>?

Account hierarchy M3 - Required on invoices with type USAGE_CONSOLIDATED. List of constituent invoices that were consolidated to create this invoice.



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

optional :constituent_invoices,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::Invoice::ConstituentInvoice] }

#contract_custom_fieldsHash{Symbol=>String}?

Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

Returns:

  • (Hash{Symbol=>String}, nil)


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

optional :contract_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

#contract_idString?

Returns:

  • (String, nil)


73
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 73

optional :contract_id, String

#correction_recordMetronomeSDK::Models::V1::Customers::Invoice::CorrectionRecord?



78
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 78

optional :correction_record, -> { MetronomeSDK::V1::Customers::Invoice::CorrectionRecord }

#created_atTime?

When the invoice was created (UTC). This field is present for correction invoices only.

Returns:

  • (Time, nil)


85
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 85

optional :created_at, Time

#credit_typeMetronomeSDK::Models::CreditTypeData



17
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 17

required :credit_type, -> { MetronomeSDK::CreditTypeData }

#custom_fieldsHash{Symbol=>Object}?

Returns:

  • (Hash{Symbol=>Object}, nil)


90
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 90

optional :custom_fields, MetronomeSDK::Internal::Type::HashOf[MetronomeSDK::Internal::Type::Unknown]

#customer_custom_fieldsHash{Symbol=>String}?

Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

Returns:

  • (Hash{Symbol=>String}, nil)


96
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 96

optional :customer_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

#customer_idString

Returns:

  • (String)


22
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 22

required :customer_id, String

#end_timestampTime?

End of the usage period this invoice covers (UTC)

Returns:

  • (Time, nil)


102
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 102

optional :end_timestamp, Time

#external_invoiceMetronomeSDK::Models::V1::Customers::Invoice::ExternalInvoice?



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

optional :external_invoice, -> { MetronomeSDK::V1::Customers::Invoice::ExternalInvoice }, nil?: true

#idString

Returns:

  • (String)


12
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 12

required :id, String

#invoice_adjustmentsArray<MetronomeSDK::Models::V1::Customers::Invoice::InvoiceAdjustment>?



112
113
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 112

optional :invoice_adjustments,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::Invoice::InvoiceAdjustment] }

#issued_atTime?

When the invoice was issued (UTC)

Returns:

  • (Time, nil)


119
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 119

optional :issued_at, Time

#line_itemsArray<MetronomeSDK::Models::V1::Customers::Invoice::LineItem>



27
28
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 27

required :line_items,
-> { MetronomeSDK::Internal::Type::ArrayOf[MetronomeSDK::V1::Customers::Invoice::LineItem] }

#net_payment_terms_daysFloat?

Returns:

  • (Float, nil)


124
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 124

optional :net_payment_terms_days, Float

#netsuite_sales_order_idString?

This field’s availability is dependent on your client’s configuration.

Returns:

  • (String, nil)


130
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 130

optional :netsuite_sales_order_id, String

#payerMetronomeSDK::Models::V1::Customers::Invoice::Payer?

Account hierarchy M3 - Required for account hierarchy usage invoices. An object containing the contract and customer UUIDs that pay for this invoice.



137
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 137

optional :payer, -> { MetronomeSDK::V1::Customers::Invoice::Payer }

#plan_custom_fieldsHash{Symbol=>String}?

Custom fields to be added eg. { “key1”: “value1”, “key2”: “value2” }

Returns:

  • (Hash{Symbol=>String}, nil)


143
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 143

optional :plan_custom_fields, MetronomeSDK::Internal::Type::HashOf[String]

#plan_idString?

Returns:

  • (String, nil)


148
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 148

optional :plan_id, String

#plan_nameString?

Returns:

  • (String, nil)


153
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 153

optional :plan_name, String

#reseller_royaltyMetronomeSDK::Models::V1::Customers::Invoice::ResellerRoyalty?

Only present for contract invoices with reseller royalties.



159
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 159

optional :reseller_royalty, -> { MetronomeSDK::V1::Customers::Invoice::ResellerRoyalty }

#salesforce_opportunity_idString?

This field’s availability is dependent on your client’s configuration.

Returns:

  • (String, nil)


165
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 165

optional :salesforce_opportunity_id, String

#start_timestampTime?

Beginning of the usage period this invoice covers (UTC)

Returns:

  • (Time, nil)


171
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 171

optional :start_timestamp, Time

#statusString

Returns:

  • (String)


33
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 33

required :status, String

#subtotalFloat?

Returns:

  • (Float, nil)


176
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 176

optional :subtotal, Float

#totalFloat

Returns:

  • (Float)


38
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 38

required :total, Float

#typeString

Returns:

  • (String)


43
# File 'lib/metronome_sdk/models/v1/customers/invoice.rb', line 43

required :type, String