Class: MetronomeSDK::Models::V1::ContractScheduleProServicesInvoiceParams::LineItem

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

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(professional_service_id: , amendment_id: nil, amount: nil, metadata: nil, netsuite_invoice_billing_end: nil, netsuite_invoice_billing_start: nil, quantity: nil, unit_price: nil) ⇒ Object

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

Describes the line item for a professional service charge on an invoice.

Parameters:

  • professional_service_id (String) (defaults to: )
  • amendment_id (String) (defaults to: nil)

    If the professional_service_id was added on an amendment, this is required.

  • amount (Float) (defaults to: nil)

    Amount for the term on the new invoice.

  • metadata (String) (defaults to: nil)

    For client use.

  • netsuite_invoice_billing_end (Time) (defaults to: nil)

    The end date for the billing period on the invoice.

  • netsuite_invoice_billing_start (Time) (defaults to: nil)

    The start date for the billing period on the invoice.

  • quantity (Float) (defaults to: nil)

    Quantity for the charge. Will be multiplied by unit_price to determine the amoun

  • unit_price (Float) (defaults to: nil)

    If specified, this overrides the unit price on the pro service term. Must also p



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
126
127
128
129
130
131
132
133
# File 'lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb', line 61

class LineItem < MetronomeSDK::Internal::Type::BaseModel
  # @!attribute professional_service_id
  #
  #   @return [String]
  required :professional_service_id, String

  # @!attribute amendment_id
  #   If the professional_service_id was added on an amendment, this is required.
  #
  #   @return [String, nil]
  optional :amendment_id, String

  # @!attribute amount
  #   Amount for the term on the new invoice.
  #
  #   @return [Float, nil]
  optional :amount, Float

  # @!attribute metadata
  #   For client use.
  #
  #   @return [String, nil]
  optional :metadata, String

  # @!attribute netsuite_invoice_billing_end
  #   The end date for the billing period on the invoice.
  #
  #   @return [Time, nil]
  optional :netsuite_invoice_billing_end, Time

  # @!attribute netsuite_invoice_billing_start
  #   The start date for the billing period on the invoice.
  #
  #   @return [Time, nil]
  optional :netsuite_invoice_billing_start, Time

  # @!attribute quantity
  #   Quantity for the charge. Will be multiplied by unit_price to determine the
  #   amount.
  #
  #   @return [Float, nil]
  optional :quantity, Float

  # @!attribute unit_price
  #   If specified, this overrides the unit price on the pro service term. Must also
  #   provide quantity (but not amount) if providing unit_price.
  #
  #   @return [Float, nil]
  optional :unit_price, Float

  # @!method initialize(professional_service_id:, amendment_id: nil, amount: nil, metadata: nil, netsuite_invoice_billing_end: nil, netsuite_invoice_billing_start: nil, quantity: nil, unit_price: nil)
  #   Some parameter documentations has been truncated, see
  #   {MetronomeSDK::Models::V1::ContractScheduleProServicesInvoiceParams::LineItem}
  #   for more details.
  #
  #   Describes the line item for a professional service charge on an invoice.
  #
  #   @param professional_service_id [String]
  #
  #   @param amendment_id [String] If the professional_service_id was added on an amendment, this is required.
  #
  #   @param amount [Float] Amount for the term on the new invoice.
  #
  #   @param metadata [String] For client use.
  #
  #   @param netsuite_invoice_billing_end [Time] The end date for the billing period on the invoice.
  #
  #   @param netsuite_invoice_billing_start [Time] The start date for the billing period on the invoice.
  #
  #   @param quantity [Float] Quantity for the charge. Will be multiplied by unit_price to determine the amoun
  #
  #   @param unit_price [Float] If specified, this overrides the unit price on the pro service term. Must also p
end

Instance Attribute Details

#amendment_idString?

If the professional_service_id was added on an amendment, this is required.

Returns:

  • (String, nil)


71
# File 'lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb', line 71

optional :amendment_id, String

#amountFloat?

Amount for the term on the new invoice.

Returns:

  • (Float, nil)


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

optional :amount, Float

#metadataString?

For client use.

Returns:

  • (String, nil)


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

optional :metadata, String

#netsuite_invoice_billing_endTime?

The end date for the billing period on the invoice.

Returns:

  • (Time, nil)


89
# File 'lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb', line 89

optional :netsuite_invoice_billing_end, Time

#netsuite_invoice_billing_startTime?

The start date for the billing period on the invoice.

Returns:

  • (Time, nil)


95
# File 'lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb', line 95

optional :netsuite_invoice_billing_start, Time

#professional_service_idString

Returns:

  • (String)


65
# File 'lib/metronome_sdk/models/v1/contract_schedule_pro_services_invoice_params.rb', line 65

required :professional_service_id, String

#quantityFloat?

Quantity for the charge. Will be multiplied by unit_price to determine the amount.

Returns:

  • (Float, nil)


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

optional :quantity, Float

#unit_priceFloat?

If specified, this overrides the unit price on the pro service term. Must also provide quantity (but not amount) if providing unit_price.

Returns:

  • (Float, nil)


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

optional :unit_price, Float