moov_ruby 0.0.0.pre.dev.19 → 0.0.0.pre.dev.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/account_terminal_applications.rb +16 -16
  3. data/lib/moov/accounts.rb +52 -54
  4. data/lib/moov/adjustments.rb +8 -8
  5. data/lib/moov/apple_pay.rb +20 -20
  6. data/lib/moov/authentication.rb +8 -8
  7. data/lib/moov/avatars.rb +4 -4
  8. data/lib/moov/bank_accounts.rb +36 -36
  9. data/lib/moov/branding.rb +12 -12
  10. data/lib/moov/capabilities.rb +20 -20
  11. data/lib/moov/card_issuing.rb +25 -25
  12. data/lib/moov/cards.rb +24 -24
  13. data/lib/moov/disputes.rb +44 -44
  14. data/lib/moov/end_to_end_encryption.rb +8 -8
  15. data/lib/moov/enriched_address.rb +4 -4
  16. data/lib/moov/enriched_profile.rb +4 -4
  17. data/lib/moov/fee_plans.rb +40 -40
  18. data/lib/moov/files.rb +12 -12
  19. data/lib/moov/google_pay.rb +4 -4
  20. data/lib/moov/images.rb +28 -28
  21. data/lib/moov/industries.rb +4 -4
  22. data/lib/moov/institutions.rb +8 -8
  23. data/lib/moov/invoices.rb +28 -28
  24. data/lib/moov/issuing_transactions.rb +20 -20
  25. data/lib/moov/models/components/addcapabilities.rb +5 -1
  26. data/lib/moov/models/components/amountdecimalrange.rb +11 -5
  27. data/lib/moov/models/components/amountdecimalrangeupdate.rb +7 -1
  28. data/lib/moov/models/components/amountdetails.rb +36 -0
  29. data/lib/moov/models/components/amountdetails.rbi +15 -0
  30. data/lib/moov/models/components/amountdetailsupdate.rb +36 -0
  31. data/lib/moov/models/components/amountdetailsupdate.rbi +15 -0
  32. data/lib/moov/models/components/amountdetailsvalidationerror.rb +36 -0
  33. data/lib/moov/models/components/amountdetailsvalidationerror.rbi +15 -0
  34. data/lib/moov/models/components/billingaddress.rb +52 -0
  35. data/lib/moov/models/components/billingaddress.rbi +23 -0
  36. data/lib/moov/models/components/capability.rb +7 -1
  37. data/lib/moov/models/components/capabilityid.rb +7 -1
  38. data/lib/moov/models/components/cardtransactiondetails.rb +6 -2
  39. data/lib/moov/models/components/cardtransactiondetails.rbi +2 -0
  40. data/lib/moov/models/components/cardtransactionstatus.rb +1 -0
  41. data/lib/moov/models/components/createaccount.rb +5 -1
  42. data/lib/moov/models/components/createinvoice.rb +5 -5
  43. data/lib/moov/models/components/createinvoice.rbi +2 -2
  44. data/lib/moov/models/components/createpaymentlink.rb +10 -6
  45. data/lib/moov/models/components/createpaymentlink.rbi +2 -0
  46. data/lib/moov/models/components/createtransferdestinationcard.rb +6 -2
  47. data/lib/moov/models/components/createtransferdestinationcard.rbi +2 -0
  48. data/lib/moov/models/components/customamountpaymentdetailserror.rb +52 -0
  49. data/lib/moov/models/components/customamountpaymentdetailserror.rbi +23 -0
  50. data/lib/moov/models/components/fullissuedcard.rb +22 -10
  51. data/lib/moov/models/components/fullissuedcard.rbi +10 -4
  52. data/lib/moov/models/components/invoice.rb +7 -7
  53. data/lib/moov/models/components/invoice.rbi +2 -2
  54. data/lib/moov/models/components/issuedcard.rb +22 -10
  55. data/lib/moov/models/components/issuedcard.rbi +10 -4
  56. data/lib/moov/models/components/onboardinginvite.rb +1 -1
  57. data/lib/moov/models/components/onboardinginviterequest.rb +1 -1
  58. data/lib/moov/models/components/paymentlink.rb +12 -5
  59. data/lib/moov/models/components/paymentlink.rbi +2 -0
  60. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetails.rb +59 -0
  61. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetails.rbi +23 -0
  62. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetailsupdate.rb +59 -0
  63. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetailsupdate.rbi +23 -0
  64. data/lib/moov/models/components/paymentlinkpaymentdetails.rb +2 -14
  65. data/lib/moov/models/components/paymentlinkpaymentdetails.rbi +0 -6
  66. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rb +2 -14
  67. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rbi +0 -6
  68. data/lib/moov/models/components/paymentlinktype.rb +1 -0
  69. data/lib/moov/models/components/requestcard.rb +17 -17
  70. data/lib/moov/models/components/requestcard.rbi +8 -8
  71. data/lib/moov/models/components/transferconfig.rb +6 -2
  72. data/lib/moov/models/components/transferconfig.rbi +2 -0
  73. data/lib/moov/models/components/transfercontrols.rb +48 -0
  74. data/lib/moov/models/components/transfercontrols.rbi +21 -0
  75. data/lib/moov/models/components/updateinvoice.rb +11 -11
  76. data/lib/moov/models/components/updateinvoice.rbi +2 -2
  77. data/lib/moov/models/components/updateissuedcard.rb +13 -9
  78. data/lib/moov/models/components/updateissuedcard.rbi +6 -4
  79. data/lib/moov/models/components/updatepaymentlink.rb +6 -2
  80. data/lib/moov/models/components/updatepaymentlink.rbi +2 -0
  81. data/lib/moov/models/components/webhookdataauthorizationexpiring.rb +44 -0
  82. data/lib/moov/models/components/webhookdataauthorizationexpiring.rbi +19 -0
  83. data/lib/moov/models/components/webhookdatacapabilityrequested.rb +7 -1
  84. data/lib/moov/models/components/webhookdatacapabilityupdated.rb +7 -1
  85. data/lib/moov/models/components/webhookdatasweepcreated.rb +6 -2
  86. data/lib/moov/models/components/webhookdatasweepcreated.rbi +2 -0
  87. data/lib/moov/models/components/webhookdatasweepupdated.rb +6 -2
  88. data/lib/moov/models/components/webhookdatasweepupdated.rbi +2 -0
  89. data/lib/moov/models/components/webhookevent.rb +2 -2
  90. data/lib/moov/models/components/webhookeventtype.rb +1 -0
  91. data/lib/moov/models/components.rb +9 -6
  92. data/lib/moov/models/errors/createinvoiceerror.rb +5 -5
  93. data/lib/moov/models/errors/createinvoiceerror.rbi +2 -2
  94. data/lib/moov/models/errors/createpaymentlinkerror.rb +6 -2
  95. data/lib/moov/models/errors/createpaymentlinkerror.rbi +2 -0
  96. data/lib/moov/models/errors/requestcarderror.rb +14 -14
  97. data/lib/moov/models/errors/requestcarderror.rbi +8 -8
  98. data/lib/moov/models/errors/updateinvoiceerror.rb +5 -5
  99. data/lib/moov/models/errors/updateinvoiceerror.rbi +2 -2
  100. data/lib/moov/models/errors/updateissuedcarderror.rb +12 -8
  101. data/lib/moov/models/errors/updateissuedcarderror.rbi +6 -4
  102. data/lib/moov/models/errors/updatepaymentlinkerror.rb +6 -2
  103. data/lib/moov/models/errors/updatepaymentlinkerror.rbi +2 -0
  104. data/lib/moov/models/operations/disablecapability_request.rb +7 -1
  105. data/lib/moov/models/operations/getcapability_request.rb +7 -1
  106. data/lib/moov/models/operations/listcancellations_request.rb +36 -0
  107. data/lib/moov/models/operations/listcancellations_request.rbi +15 -0
  108. data/lib/moov/models/operations/listcancellations_response.rb +48 -0
  109. data/lib/moov/models/operations/listcancellations_response.rbi +21 -0
  110. data/lib/moov/models/operations.rb +2 -0
  111. data/lib/moov/onboarding.rb +16 -16
  112. data/lib/moov/payment_links.rb +24 -24
  113. data/lib/moov/payment_methods.rb +8 -8
  114. data/lib/moov/ping.rb +4 -4
  115. data/lib/moov/products.rb +20 -20
  116. data/lib/moov/receipts.rb +8 -8
  117. data/lib/moov/representatives.rb +20 -20
  118. data/lib/moov/resolution_links.rb +16 -16
  119. data/lib/moov/scheduling.rb +24 -24
  120. data/lib/moov/sdkconfiguration.rb +3 -3
  121. data/lib/moov/statements.rb +8 -8
  122. data/lib/moov/support.rb +20 -20
  123. data/lib/moov/sweeps.rb +24 -24
  124. data/lib/moov/terminal_applications.rb +20 -20
  125. data/lib/moov/transfer_config.rb +12 -12
  126. data/lib/moov/transfers.rb +171 -48
  127. data/lib/moov/underwriting.rb +12 -12
  128. data/lib/moov/utils/retries.rb +4 -1
  129. data/lib/moov/wallet_transactions.rb +8 -8
  130. data/lib/moov/wallets.rb +16 -16
  131. data/lib/moov/webhooks.rb +32 -32
  132. metadata +24 -14
  133. data/lib/moov/models/components/authorizeduser.rb +0 -36
  134. data/lib/moov/models/components/authorizeduser.rbi +0 -15
  135. data/lib/moov/models/components/createauthorizeduser.rb +0 -40
  136. data/lib/moov/models/components/createauthorizeduser.rbi +0 -17
  137. data/lib/moov/models/components/createauthorizedusererror.rb +0 -40
  138. data/lib/moov/models/components/createauthorizedusererror.rbi +0 -17
  139. data/lib/moov/models/components/createauthorizeduserupdate.rb +0 -40
  140. data/lib/moov/models/components/createauthorizeduserupdate.rbi +0 -17
  141. data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rb +0 -19
  142. data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rbi +0 -11
  143. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rb +0 -19
  144. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rbi +0 -11
@@ -13,24 +13,24 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
 
16
- field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
17
- # Fields for identifying an authorized individual.
18
- field :authorized_user, Models::Components::CreateAuthorizedUser, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUser'), required: true } }
19
- # Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
20
- field :form_factor, Models::Components::IssuedCardFormFactor, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('formFactor'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardFormFactor, false) } }
21
- # An optional descriptive name for the card.
22
- field :memo, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('memo') } }
16
+ field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUserAccountID') } }
17
+
18
+ field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
19
+ # Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
20
+ field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
21
+
22
+ field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
23
23
  # The expiration date of the card or token.
24
24
  field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
25
25
 
26
26
  field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
27
27
 
28
- sig { params(funding_wallet_id: ::String, authorized_user: Models::Components::CreateAuthorizedUser, form_factor: Models::Components::IssuedCardFormFactor, memo: T.nilable(::String), expiration: T.nilable(Models::Components::CardExpiration), controls: T.nilable(Models::Components::IssuingControls)).void }
29
- def initialize(funding_wallet_id:, authorized_user:, form_factor:, memo: nil, expiration: nil, controls: nil)
30
- @funding_wallet_id = funding_wallet_id
31
- @authorized_user = authorized_user
32
- @form_factor = form_factor
33
- @memo = memo
28
+ sig { params(authorized_user_account_id: T.nilable(::String), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::Address), expiration: T.nilable(Models::Components::CardExpiration), controls: T.nilable(Models::Components::IssuingControls)).void }
29
+ def initialize(authorized_user_account_id: nil, nickname: nil, metadata: nil, billing_address: nil, expiration: nil, controls: nil)
30
+ @authorized_user_account_id = authorized_user_account_id
31
+ @nickname = nickname
32
+ @metadata = metadata
33
+ @billing_address = billing_address
34
34
  @expiration = expiration
35
35
  @controls = controls
36
36
  end
@@ -38,10 +38,10 @@ module Moov
38
38
  sig { params(other: T.untyped).returns(T::Boolean) }
39
39
  def ==(other)
40
40
  return false unless other.is_a? self.class
41
- return false unless @funding_wallet_id == other.funding_wallet_id
42
- return false unless @authorized_user == other.authorized_user
43
- return false unless @form_factor == other.form_factor
44
- return false unless @memo == other.memo
41
+ return false unless @authorized_user_account_id == other.authorized_user_account_id
42
+ return false unless @nickname == other.nickname
43
+ return false unless @metadata == other.metadata
44
+ return false unless @billing_address == other.billing_address
45
45
  return false unless @expiration == other.expiration
46
46
  return false unless @controls == other.controls
47
47
  true
@@ -8,14 +8,14 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::RequestCard
11
- def funding_wallet_id(); end
12
- def funding_wallet_id=(str_); end
13
- def authorized_user(); end
14
- def authorized_user=(str_); end
15
- def form_factor(); end
16
- def form_factor=(str_); end
17
- def memo(); end
18
- def memo=(str_); end
11
+ def authorized_user_account_id(); end
12
+ def authorized_user_account_id=(str_); end
13
+ def nickname(); end
14
+ def nickname=(str_); end
15
+ def metadata(); end
16
+ def metadata=(str_); end
17
+ def billing_address(); end
18
+ def billing_address=(str_); end
19
19
  def expiration(); end
20
20
  def expiration=(str_); end
21
21
  def controls(); end
@@ -15,15 +15,19 @@ module Moov
15
15
  # Tip presets when calculating tips for a transfer.
16
16
  field :tip_presets, Crystalline::Nilable.new(Models::Components::TipPresets), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tipPresets') } }
17
17
 
18
- sig { params(tip_presets: T.nilable(Models::Components::TipPresets)).void }
19
- def initialize(tip_presets: nil)
18
+ field :transfer_controls, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::TransferControls)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferControls') } }
19
+
20
+ sig { params(tip_presets: T.nilable(Models::Components::TipPresets), transfer_controls: T.nilable(T::Array[Models::Components::TransferControls])).void }
21
+ def initialize(tip_presets: nil, transfer_controls: nil)
20
22
  @tip_presets = tip_presets
23
+ @transfer_controls = transfer_controls
21
24
  end
22
25
 
23
26
  sig { params(other: T.untyped).returns(T::Boolean) }
24
27
  def ==(other)
25
28
  return false unless other.is_a? self.class
26
29
  return false unless @tip_presets == other.tip_presets
30
+ return false unless @transfer_controls == other.transfer_controls
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class Moov::Models::Components::TransferConfig
11
11
  def tip_presets(); end
12
12
  def tip_presets=(str_); end
13
+ def transfer_controls(); end
14
+ def transfer_controls=(str_); end
13
15
  end
@@ -0,0 +1,48 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # Controls for transfers created through a given partner
11
+ class TransferControls
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the merchant account.
16
+ field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
17
+ # ID of the partner account.
18
+ field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
19
+ # Indicates if the account is configured for debt repayment.
20
+ field :debt_repayment, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('debtRepayment'), required: true } }
21
+ # Indicates if the account is allowed to set dynamic descriptors on transfers.
22
+ field :allow_dynamic_descriptor, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowDynamicDescriptor'), required: true } }
23
+ # Indicates if the account is allowed to apply surcharges to transfers.
24
+ field :allow_surcharge, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowSurcharge'), required: true } }
25
+
26
+ sig { params(account_id: ::String, partner_account_id: ::String, debt_repayment: T::Boolean, allow_dynamic_descriptor: T::Boolean, allow_surcharge: T::Boolean).void }
27
+ def initialize(account_id:, partner_account_id:, debt_repayment:, allow_dynamic_descriptor:, allow_surcharge:)
28
+ @account_id = account_id
29
+ @partner_account_id = partner_account_id
30
+ @debt_repayment = debt_repayment
31
+ @allow_dynamic_descriptor = allow_dynamic_descriptor
32
+ @allow_surcharge = allow_surcharge
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @account_id == other.account_id
39
+ return false unless @partner_account_id == other.partner_account_id
40
+ return false unless @debt_repayment == other.debt_repayment
41
+ return false unless @allow_dynamic_descriptor == other.allow_dynamic_descriptor
42
+ return false unless @allow_surcharge == other.allow_surcharge
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferControls
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferControls
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def partner_account_id(); end
14
+ def partner_account_id=(str_); end
15
+ def debt_repayment(); end
16
+ def debt_repayment=(str_); end
17
+ def allow_dynamic_descriptor(); end
18
+ def allow_dynamic_descriptor=(str_); end
19
+ def allow_surcharge(); end
20
+ def allow_surcharge=(str_); end
21
+ end
@@ -16,26 +16,26 @@ module Moov
16
16
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
17
17
  # A collection of line items for an invoice.
18
18
  field :line_items, Crystalline::Nilable.new(Models::Components::CreateInvoiceLineItemsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
19
- # The status can be updated to one of the following values under specific conditions:
20
- # - `canceled`: Can only be set if the current status is `draft`, `unpaid`, or `overdue`. Canceling an invoice
21
- # indicates the invoice is no longer expected to be paid (e.g., the charge was waived or terms changed).
22
- # Canceled invoices still appear in list results by default and remain part of the invoice history.
23
- # To completely discard an invoice created by mistake, use the delete endpoint instead.
24
- # - `unpaid`: Can only be set if the current status is `draft`. Setting the status to `unpaid` finalizes the invoice and sends an email with a payment link to the customer.
19
+ # The status can be updated to one of the following values under specific conditions:
20
+ # - `canceled`: Can only be set if the current status is `draft`, `unpaid`, or `overdue`. Canceling an invoice
21
+ # indicates the invoice is no longer expected to be paid (e.g., the charge was waived or terms changed).
22
+ # Canceled invoices still appear in list results by default and remain part of the invoice history.
23
+ # To completely discard an invoice created by mistake, use the delete endpoint instead.
24
+ # - `unpaid`: Can only be set if the current status is `draft`. Setting the status to `unpaid` finalizes the invoice and sends an email with a payment link to the customer.
25
25
  field :status, Crystalline::Nilable.new(Models::Components::InvoiceStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InvoiceStatus, true) } }
26
26
 
27
- field :tax_amount, Crystalline::Nilable.new(Models::Components::AmountDecimalUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount') } }
27
+ field :amount_details, Crystalline::Nilable.new(Models::Components::AmountDetailsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
28
28
 
29
29
  field :invoice_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
30
30
 
31
31
  field :due_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dueDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
32
32
 
33
- sig { params(description: T.nilable(::String), line_items: T.nilable(Models::Components::CreateInvoiceLineItemsUpdate), status: T.nilable(Models::Components::InvoiceStatus), tax_amount: T.nilable(Models::Components::AmountDecimalUpdate), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime)).void }
34
- def initialize(description: nil, line_items: nil, status: nil, tax_amount: nil, invoice_date: nil, due_date: nil)
33
+ sig { params(description: T.nilable(::String), line_items: T.nilable(Models::Components::CreateInvoiceLineItemsUpdate), status: T.nilable(Models::Components::InvoiceStatus), amount_details: T.nilable(Models::Components::AmountDetailsUpdate), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime)).void }
34
+ def initialize(description: nil, line_items: nil, status: nil, amount_details: nil, invoice_date: nil, due_date: nil)
35
35
  @description = description
36
36
  @line_items = line_items
37
37
  @status = status
38
- @tax_amount = tax_amount
38
+ @amount_details = amount_details
39
39
  @invoice_date = invoice_date
40
40
  @due_date = due_date
41
41
  end
@@ -46,7 +46,7 @@ module Moov
46
46
  return false unless @description == other.description
47
47
  return false unless @line_items == other.line_items
48
48
  return false unless @status == other.status
49
- return false unless @tax_amount == other.tax_amount
49
+ return false unless @amount_details == other.amount_details
50
50
  return false unless @invoice_date == other.invoice_date
51
51
  return false unless @due_date == other.due_date
52
52
  true
@@ -14,8 +14,8 @@ class Moov::Models::Components::UpdateInvoice
14
14
  def line_items=(str_); end
15
15
  def status(); end
16
16
  def status=(str_); end
17
- def tax_amount(); end
18
- def tax_amount=(str_); end
17
+ def amount_details(); end
18
+ def amount_details=(str_); end
19
19
  def invoice_date(); end
20
20
  def invoice_date=(str_); end
21
21
  def due_date(); end
@@ -16,23 +16,27 @@ module Moov
16
16
  # - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
17
17
  field :state, Crystalline::Nilable.new(Models::Components::UpdateIssuedCardState), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::UpdateIssuedCardState, true) } }
18
18
 
19
- field :memo, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('memo') } }
20
- # Fields for identifying an authorized individual.
21
- field :authorized_user, Crystalline::Nilable.new(Models::Components::CreateAuthorizedUserUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUser') } }
19
+ field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
22
20
 
23
- sig { params(state: T.nilable(Models::Components::UpdateIssuedCardState), memo: T.nilable(::String), authorized_user: T.nilable(Models::Components::CreateAuthorizedUserUpdate)).void }
24
- def initialize(state: nil, memo: nil, authorized_user: nil)
21
+ field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
22
+
23
+ field :billing_address, Crystalline::Nilable.new(Models::Components::BillingAddress), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
24
+
25
+ sig { params(state: T.nilable(Models::Components::UpdateIssuedCardState), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::BillingAddress)).void }
26
+ def initialize(state: nil, nickname: nil, metadata: nil, billing_address: nil)
25
27
  @state = state
26
- @memo = memo
27
- @authorized_user = authorized_user
28
+ @nickname = nickname
29
+ @metadata = metadata
30
+ @billing_address = billing_address
28
31
  end
29
32
 
30
33
  sig { params(other: T.untyped).returns(T::Boolean) }
31
34
  def ==(other)
32
35
  return false unless other.is_a? self.class
33
36
  return false unless @state == other.state
34
- return false unless @memo == other.memo
35
- return false unless @authorized_user == other.authorized_user
37
+ return false unless @nickname == other.nickname
38
+ return false unless @metadata == other.metadata
39
+ return false unless @billing_address == other.billing_address
36
40
  true
37
41
  end
38
42
  end
@@ -10,8 +10,10 @@ end
10
10
  class Moov::Models::Components::UpdateIssuedCard
11
11
  def state(); end
12
12
  def state=(str_); end
13
- def memo(); end
14
- def memo=(str_); end
15
- def authorized_user(); end
16
- def authorized_user=(str_); end
13
+ def nickname(); end
14
+ def nickname=(str_); end
15
+ def metadata(); end
16
+ def metadata=(str_); end
17
+ def billing_address(); end
18
+ def billing_address=(str_); end
17
19
  end
@@ -22,6 +22,8 @@ module Moov
22
22
  field :payment, Crystalline::Nilable.new(Models::Components::PaymentLinkPaymentDetailsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payment') } }
23
23
 
24
24
  field :payout, Crystalline::Nilable.new(Models::Components::PaymentLinkPayoutDetailsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout') } }
25
+ # Options for a custom amount payment link. A payment link's type cannot be changed after creation.
26
+ field :custom_amount_payment, Crystalline::Nilable.new(Models::Components::PaymentLinkCustomAmountPaymentDetailsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customAmountPayment') } }
25
27
  # An optional collection of line items for a payment link.
26
28
  # When line items are provided, their total plus tax must equal the payment link amount.
27
29
  field :line_items, Crystalline::Nilable.new(Models::Components::CreatePaymentLinkLineItemsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
@@ -30,13 +32,14 @@ module Moov
30
32
 
31
33
  field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
32
34
 
33
- sig { params(amount: T.nilable(Models::Components::AmountUpdate), display: T.nilable(Models::Components::PaymentLinkDisplayOptionsUpdate), customer: T.nilable(Models::Components::PaymentLinkCustomerOptions), payment: T.nilable(Models::Components::PaymentLinkPaymentDetailsUpdate), payout: T.nilable(Models::Components::PaymentLinkPayoutDetailsUpdate), line_items: T.nilable(Models::Components::CreatePaymentLinkLineItemsUpdate), amount_details: T.nilable(Models::Components::UpdatePaymentLinkAmountDetails), expires_on: T.nilable(::DateTime)).void }
34
- def initialize(amount: nil, display: nil, customer: nil, payment: nil, payout: nil, line_items: nil, amount_details: nil, expires_on: nil)
35
+ sig { params(amount: T.nilable(Models::Components::AmountUpdate), display: T.nilable(Models::Components::PaymentLinkDisplayOptionsUpdate), customer: T.nilable(Models::Components::PaymentLinkCustomerOptions), payment: T.nilable(Models::Components::PaymentLinkPaymentDetailsUpdate), payout: T.nilable(Models::Components::PaymentLinkPayoutDetailsUpdate), custom_amount_payment: T.nilable(Models::Components::PaymentLinkCustomAmountPaymentDetailsUpdate), line_items: T.nilable(Models::Components::CreatePaymentLinkLineItemsUpdate), amount_details: T.nilable(Models::Components::UpdatePaymentLinkAmountDetails), expires_on: T.nilable(::DateTime)).void }
36
+ def initialize(amount: nil, display: nil, customer: nil, payment: nil, payout: nil, custom_amount_payment: nil, line_items: nil, amount_details: nil, expires_on: nil)
35
37
  @amount = amount
36
38
  @display = display
37
39
  @customer = customer
38
40
  @payment = payment
39
41
  @payout = payout
42
+ @custom_amount_payment = custom_amount_payment
40
43
  @line_items = line_items
41
44
  @amount_details = amount_details
42
45
  @expires_on = expires_on
@@ -50,6 +53,7 @@ module Moov
50
53
  return false unless @customer == other.customer
51
54
  return false unless @payment == other.payment
52
55
  return false unless @payout == other.payout
56
+ return false unless @custom_amount_payment == other.custom_amount_payment
53
57
  return false unless @line_items == other.line_items
54
58
  return false unless @amount_details == other.amount_details
55
59
  return false unless @expires_on == other.expires_on
@@ -18,6 +18,8 @@ class Moov::Models::Components::UpdatePaymentLink
18
18
  def payment=(str_); end
19
19
  def payout(); end
20
20
  def payout=(str_); end
21
+ def custom_amount_payment(); end
22
+ def custom_amount_payment=(str_); end
21
23
  def line_items(); end
22
24
  def line_items=(str_); end
23
25
  def amount_details(); end
@@ -0,0 +1,44 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class WebhookDataAuthorizationExpiring
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :merchant_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantAccountID'), required: true } }
17
+
18
+ field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
19
+
20
+ field :authorization_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizationID'), required: true } }
21
+
22
+ field :expires_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
23
+
24
+ sig { params(merchant_account_id: ::String, partner_account_id: ::String, authorization_id: ::String, expires_on: ::DateTime).void }
25
+ def initialize(merchant_account_id:, partner_account_id:, authorization_id:, expires_on:)
26
+ @merchant_account_id = merchant_account_id
27
+ @partner_account_id = partner_account_id
28
+ @authorization_id = authorization_id
29
+ @expires_on = expires_on
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @merchant_account_id == other.merchant_account_id
36
+ return false unless @partner_account_id == other.partner_account_id
37
+ return false unless @authorization_id == other.authorization_id
38
+ return false unless @expires_on == other.expires_on
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::WebhookDataAuthorizationExpiring
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::WebhookDataAuthorizationExpiring
11
+ def merchant_account_id(); end
12
+ def merchant_account_id=(str_); end
13
+ def partner_account_id(); end
14
+ def partner_account_id=(str_); end
15
+ def authorization_id(); end
16
+ def authorization_id=(str_); end
17
+ def expires_on(); end
18
+ def expires_on=(str_); end
19
+ end
@@ -16,7 +16,13 @@ module Moov
16
16
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
17
17
  # Moov account capabilities.
18
18
  #
19
- # The `production-app`, `platform.production-app`, and / or `platform.wallet-transfers` capabilities might appear in your list. These are read-only capabilities that Moov requests and uses for account verification purposes. These capabilities remains active with your account and require no additional action.
19
+ # **Deprecated capabilities**
20
+ #
21
+ # The `send-funds`, `collect-funds`, and `wallet` capability IDs are deprecated. Request granular capabilities instead (for example, `send-funds.ach`, `collect-funds.card-payments`, or `wallet.balance`). Deprecated values will be removed in a future API version.
22
+ #
23
+ # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
24
+ #
25
+ # The `production-app`, `platform.production-app`, and / or `platform.wallet-transfers` capabilities might appear in the list for your Partner account. These are read-only capabilities that Moov requests. These capabilities remain active with your account and require no additional action.
20
26
  field :capability_id, Models::Components::CapabilityID, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilityID'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CapabilityID, false) } }
21
27
 
22
28
  field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
@@ -16,7 +16,13 @@ module Moov
16
16
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
17
17
  # Moov account capabilities.
18
18
  #
19
- # The `production-app`, `platform.production-app`, and / or `platform.wallet-transfers` capabilities might appear in your list. These are read-only capabilities that Moov requests and uses for account verification purposes. These capabilities remains active with your account and require no additional action.
19
+ # **Deprecated capabilities**
20
+ #
21
+ # The `send-funds`, `collect-funds`, and `wallet` capability IDs are deprecated. Request granular capabilities instead (for example, `send-funds.ach`, `collect-funds.card-payments`, or `wallet.balance`). Deprecated values will be removed in a future API version.
22
+ #
23
+ # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
24
+ #
25
+ # The `production-app`, `platform.production-app`, and / or `platform.wallet-transfers` capabilities might appear in the list for your Partner account. These are read-only capabilities that Moov requests. These capabilities remain active with your account and require no additional action.
20
26
  field :capability_id, Models::Components::CapabilityID, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilityID'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CapabilityID, false) } }
21
27
  # The status of the capability requested for an account.
22
28
  field :status, Models::Components::CapabilityStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CapabilityStatus, false) } }
@@ -12,13 +12,16 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
+ # The accountID associated with the wallet being swept.
16
+ field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
15
17
 
16
18
  field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
17
19
 
18
20
  field :sweep_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sweepID'), required: true } }
19
21
 
20
- sig { params(wallet_id: ::String, sweep_id: ::String).void }
21
- def initialize(wallet_id:, sweep_id:)
22
+ sig { params(account_id: ::String, wallet_id: ::String, sweep_id: ::String).void }
23
+ def initialize(account_id:, wallet_id:, sweep_id:)
24
+ @account_id = account_id
22
25
  @wallet_id = wallet_id
23
26
  @sweep_id = sweep_id
24
27
  end
@@ -26,6 +29,7 @@ module Moov
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
27
30
  def ==(other)
28
31
  return false unless other.is_a? self.class
32
+ return false unless @account_id == other.account_id
29
33
  return false unless @wallet_id == other.wallet_id
30
34
  return false unless @sweep_id == other.sweep_id
31
35
  true
@@ -8,6 +8,8 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::WebhookDataSweepCreated
11
+ def account_id(); end
12
+ def account_id=(str_); end
11
13
  def wallet_id(); end
12
14
  def wallet_id=(str_); end
13
15
  def sweep_id(); end
@@ -12,6 +12,8 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
+ # The accountID associated with the wallet being swept.
16
+ field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
15
17
 
16
18
  field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
17
19
 
@@ -21,8 +23,9 @@ module Moov
21
23
 
22
24
  field :transfer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID') } }
23
25
 
24
- sig { params(wallet_id: ::String, sweep_id: ::String, status: Models::Components::SweepStatus, transfer_id: T.nilable(::String)).void }
25
- def initialize(wallet_id:, sweep_id:, status:, transfer_id: nil)
26
+ sig { params(account_id: ::String, wallet_id: ::String, sweep_id: ::String, status: Models::Components::SweepStatus, transfer_id: T.nilable(::String)).void }
27
+ def initialize(account_id:, wallet_id:, sweep_id:, status:, transfer_id: nil)
28
+ @account_id = account_id
26
29
  @wallet_id = wallet_id
27
30
  @sweep_id = sweep_id
28
31
  @status = status
@@ -32,6 +35,7 @@ module Moov
32
35
  sig { params(other: T.untyped).returns(T::Boolean) }
33
36
  def ==(other)
34
37
  return false unless other.is_a? self.class
38
+ return false unless @account_id == other.account_id
35
39
  return false unless @wallet_id == other.wallet_id
36
40
  return false unless @sweep_id == other.sweep_id
37
41
  return false unless @status == other.status
@@ -8,6 +8,8 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::WebhookDataSweepUpdated
11
+ def account_id(); end
12
+ def account_id=(str_); end
11
13
  def wallet_id(); end
12
14
  def wallet_id=(str_); end
13
15
  def sweep_id(); end
@@ -17,11 +17,11 @@ module Moov
17
17
  # The type of event that occurred.
18
18
  field :type, Models::Components::WebhookEventType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::WebhookEventType, false) } }
19
19
  # The data for the webhook event. The contents are based on the event type.
20
- field :data, Crystalline::Union.new(Models::Components::WebhookDataAccountCreated, Models::Components::WebhookDataAccountUpdated, Models::Components::WebhookDataAccountDisconnected, Models::Components::WebhookDataBalanceUpdated, Models::Components::WebhookDataBankAccountCreated, Models::Components::WebhookDataBankAccountUpdated, Models::Components::WebhookDataBankAccountDeleted, Models::Components::WebhookDataCancellationCreated, Models::Components::WebhookDataCancellationUpdated, Models::Components::WebhookDataCardAutoUpdated, Models::Components::WebhookDataCapabilityRequested, Models::Components::WebhookDataCapabilityUpdated, Models::Components::WebhookDataDisputeCreated, Models::Components::WebhookDataDisputeUpdated, Models::Components::WebhookDataInvoiceCreated, Models::Components::WebhookDataInvoiceUpdated, Models::Components::WebhookDataNetworkIDUpdated, Models::Components::WebhookDataPaymentMethodEnabled, Models::Components::WebhookDataPaymentMethodDisabled, Models::Components::WebhookDataRefundCreated, Models::Components::WebhookDataRefundUpdated, Models::Components::WebhookDataRepresentativeCreated, Models::Components::WebhookDataRepresentativeUpdated, Models::Components::WebhookDataRepresentativeDisabled, Models::Components::WebhookDataSweepCreated, Models::Components::WebhookDataSweepUpdated, Models::Components::WebhookDataTerminalApplicationCreated, Models::Components::WebhookDataTerminalApplicationUpdated, Models::Components::WebhookDataTicketCreated, Models::Components::WebhookDataTicketUpdated, Models::Components::WebhookDataTicketMessageAdded, Models::Components::WebhookDataTransferCreated, Models::Components::WebhookDataTransferUpdated, Models::Components::WebhookDataWalletCreated, Models::Components::WebhookDataWalletUpdated, Models::Components::WebhookDataWalletTransactionUpdated, Models::Components::WebhookBillingStatementCreated), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('data'), required: true } }
20
+ field :data, Crystalline::Union.new(Models::Components::WebhookDataAccountCreated, Models::Components::WebhookDataAccountUpdated, Models::Components::WebhookDataAccountDisconnected, Models::Components::WebhookDataBalanceUpdated, Models::Components::WebhookDataBankAccountCreated, Models::Components::WebhookDataBankAccountUpdated, Models::Components::WebhookDataBankAccountDeleted, Models::Components::WebhookDataCancellationCreated, Models::Components::WebhookDataCancellationUpdated, Models::Components::WebhookDataCardAutoUpdated, Models::Components::WebhookDataCapabilityRequested, Models::Components::WebhookDataCapabilityUpdated, Models::Components::WebhookDataDisputeCreated, Models::Components::WebhookDataDisputeUpdated, Models::Components::WebhookDataInvoiceCreated, Models::Components::WebhookDataInvoiceUpdated, Models::Components::WebhookDataNetworkIDUpdated, Models::Components::WebhookDataPaymentMethodEnabled, Models::Components::WebhookDataPaymentMethodDisabled, Models::Components::WebhookDataRefundCreated, Models::Components::WebhookDataRefundUpdated, Models::Components::WebhookDataRepresentativeCreated, Models::Components::WebhookDataRepresentativeUpdated, Models::Components::WebhookDataRepresentativeDisabled, Models::Components::WebhookDataSweepCreated, Models::Components::WebhookDataSweepUpdated, Models::Components::WebhookDataTerminalApplicationCreated, Models::Components::WebhookDataTerminalApplicationUpdated, Models::Components::WebhookDataTicketCreated, Models::Components::WebhookDataTicketUpdated, Models::Components::WebhookDataTicketMessageAdded, Models::Components::WebhookDataTransferCreated, Models::Components::WebhookDataTransferUpdated, Models::Components::WebhookDataWalletCreated, Models::Components::WebhookDataWalletUpdated, Models::Components::WebhookDataWalletTransactionUpdated, Models::Components::WebhookBillingStatementCreated, Models::Components::WebhookDataAuthorizationExpiring), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('data'), required: true } }
21
21
 
22
22
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
23
23
 
24
- sig { params(event_id: ::String, type: Models::Components::WebhookEventType, data: T.any(Models::Components::WebhookDataAccountCreated, Models::Components::WebhookDataAccountUpdated, Models::Components::WebhookDataAccountDisconnected, Models::Components::WebhookDataBalanceUpdated, Models::Components::WebhookDataBankAccountCreated, Models::Components::WebhookDataBankAccountUpdated, Models::Components::WebhookDataBankAccountDeleted, Models::Components::WebhookDataCancellationCreated, Models::Components::WebhookDataCancellationUpdated, Models::Components::WebhookDataCardAutoUpdated, Models::Components::WebhookDataCapabilityRequested, Models::Components::WebhookDataCapabilityUpdated, Models::Components::WebhookDataDisputeCreated, Models::Components::WebhookDataDisputeUpdated, Models::Components::WebhookDataInvoiceCreated, Models::Components::WebhookDataInvoiceUpdated, Models::Components::WebhookDataNetworkIDUpdated, Models::Components::WebhookDataPaymentMethodEnabled, Models::Components::WebhookDataPaymentMethodDisabled, Models::Components::WebhookDataRefundCreated, Models::Components::WebhookDataRefundUpdated, Models::Components::WebhookDataRepresentativeCreated, Models::Components::WebhookDataRepresentativeUpdated, Models::Components::WebhookDataRepresentativeDisabled, Models::Components::WebhookDataSweepCreated, Models::Components::WebhookDataSweepUpdated, Models::Components::WebhookDataTerminalApplicationCreated, Models::Components::WebhookDataTerminalApplicationUpdated, Models::Components::WebhookDataTicketCreated, Models::Components::WebhookDataTicketUpdated, Models::Components::WebhookDataTicketMessageAdded, Models::Components::WebhookDataTransferCreated, Models::Components::WebhookDataTransferUpdated, Models::Components::WebhookDataWalletCreated, Models::Components::WebhookDataWalletUpdated, Models::Components::WebhookDataWalletTransactionUpdated, Models::Components::WebhookBillingStatementCreated), created_on: ::DateTime).void }
24
+ sig { params(event_id: ::String, type: Models::Components::WebhookEventType, data: T.any(Models::Components::WebhookDataAccountCreated, Models::Components::WebhookDataAccountUpdated, Models::Components::WebhookDataAccountDisconnected, Models::Components::WebhookDataBalanceUpdated, Models::Components::WebhookDataBankAccountCreated, Models::Components::WebhookDataBankAccountUpdated, Models::Components::WebhookDataBankAccountDeleted, Models::Components::WebhookDataCancellationCreated, Models::Components::WebhookDataCancellationUpdated, Models::Components::WebhookDataCardAutoUpdated, Models::Components::WebhookDataCapabilityRequested, Models::Components::WebhookDataCapabilityUpdated, Models::Components::WebhookDataDisputeCreated, Models::Components::WebhookDataDisputeUpdated, Models::Components::WebhookDataInvoiceCreated, Models::Components::WebhookDataInvoiceUpdated, Models::Components::WebhookDataNetworkIDUpdated, Models::Components::WebhookDataPaymentMethodEnabled, Models::Components::WebhookDataPaymentMethodDisabled, Models::Components::WebhookDataRefundCreated, Models::Components::WebhookDataRefundUpdated, Models::Components::WebhookDataRepresentativeCreated, Models::Components::WebhookDataRepresentativeUpdated, Models::Components::WebhookDataRepresentativeDisabled, Models::Components::WebhookDataSweepCreated, Models::Components::WebhookDataSweepUpdated, Models::Components::WebhookDataTerminalApplicationCreated, Models::Components::WebhookDataTerminalApplicationUpdated, Models::Components::WebhookDataTicketCreated, Models::Components::WebhookDataTicketUpdated, Models::Components::WebhookDataTicketMessageAdded, Models::Components::WebhookDataTransferCreated, Models::Components::WebhookDataTransferUpdated, Models::Components::WebhookDataWalletCreated, Models::Components::WebhookDataWalletUpdated, Models::Components::WebhookDataWalletTransactionUpdated, Models::Components::WebhookBillingStatementCreated, Models::Components::WebhookDataAuthorizationExpiring), created_on: ::DateTime).void }
25
25
  def initialize(event_id:, type:, data:, created_on:)
26
26
  @event_id = event_id
27
27
  @type = type
@@ -48,6 +48,7 @@ module Moov
48
48
  WALLET_UPDATED = new('wallet.updated')
49
49
  WALLET_TRANSACTION_UPDATED = new('walletTransaction.updated')
50
50
  BILLING_STATEMENT_CREATED = new('billingStatement.created')
51
+ AUTHORIZATION_EXPIRING = new('authorization.expiring')
51
52
  end
52
53
  end
53
54
  end