moov_ruby 26.4.8 → 26.7.0.pre.dev.0

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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/account_terminal_applications.rb +16 -16
  3. data/lib/moov/accounts.rb +54 -52
  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 +178 -20
  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 +1 -5
  26. data/lib/moov/models/components/amountdecimalrange.rb +36 -0
  27. data/lib/moov/models/components/amountdecimalrange.rbi +15 -0
  28. data/lib/moov/models/components/amountdecimalrangeupdate.rb +36 -0
  29. data/lib/moov/models/components/amountdecimalrangeupdate.rbi +15 -0
  30. data/lib/moov/models/components/authorizeduser.rb +36 -0
  31. data/lib/moov/models/components/authorizeduser.rbi +15 -0
  32. data/lib/moov/models/components/capability.rb +1 -7
  33. data/lib/moov/models/components/capabilityid.rb +1 -7
  34. data/lib/moov/models/components/cardmetadata.rb +79 -0
  35. data/lib/moov/models/components/cardmetadata.rbi +35 -0
  36. data/lib/moov/models/components/cardmetadatarequest.rb +38 -0
  37. data/lib/moov/models/components/cardmetadatarequest.rbi +15 -0
  38. data/lib/moov/models/components/createaccount.rb +1 -5
  39. data/lib/moov/models/components/createauthorizeduser.rb +40 -0
  40. data/lib/moov/models/components/createauthorizeduser.rbi +17 -0
  41. data/lib/moov/models/components/createauthorizedusererror.rb +40 -0
  42. data/lib/moov/models/components/createauthorizedusererror.rbi +17 -0
  43. data/lib/moov/models/components/createauthorizeduserupdate.rb +40 -0
  44. data/lib/moov/models/components/createauthorizeduserupdate.rbi +17 -0
  45. data/lib/moov/models/components/createdtransfer.rb +2 -6
  46. data/lib/moov/models/components/createdtransfer.rbi +0 -2
  47. data/lib/moov/models/components/createpaymentlink.rb +15 -15
  48. data/lib/moov/models/components/createpaymentlink.rbi +4 -4
  49. data/lib/moov/models/components/createpaymentlinkamountdetails.rb +32 -0
  50. data/lib/moov/models/components/createpaymentlinkamountdetails.rbi +13 -0
  51. data/lib/moov/models/components/createpaymentlinkamountdetailsvalidationerror.rb +32 -0
  52. data/lib/moov/models/components/createpaymentlinkamountdetailsvalidationerror.rbi +13 -0
  53. data/lib/moov/models/components/createtransfer.rb +2 -6
  54. data/lib/moov/models/components/createtransfer.rbi +0 -2
  55. data/lib/moov/models/components/createtransferamountdetails.rb +6 -2
  56. data/lib/moov/models/components/createtransferamountdetails.rbi +2 -0
  57. data/lib/moov/models/components/createtransferamountdetailsvalidationerror.rb +6 -2
  58. data/lib/moov/models/components/createtransferamountdetailsvalidationerror.rbi +2 -0
  59. data/lib/moov/models/components/fullissuedcard.rb +10 -22
  60. data/lib/moov/models/components/fullissuedcard.rbi +4 -10
  61. data/lib/moov/models/components/invoice.rb +1 -1
  62. data/lib/moov/models/components/issuedcard.rb +10 -22
  63. data/lib/moov/models/components/issuedcard.rbi +4 -10
  64. data/lib/moov/models/components/onboardinginvite.rb +1 -1
  65. data/lib/moov/models/components/onboardinginviterequest.rb +1 -1
  66. data/lib/moov/models/components/paymentlink.rb +15 -15
  67. data/lib/moov/models/components/paymentlink.rbi +4 -4
  68. data/lib/moov/models/components/paymentlinkamountdetails.rb +32 -0
  69. data/lib/moov/models/components/paymentlinkamountdetails.rbi +13 -0
  70. data/lib/moov/models/components/paymentlinkpaymentdetails.rb +14 -2
  71. data/lib/moov/models/components/paymentlinkpaymentdetails.rbi +6 -0
  72. data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rb +19 -0
  73. data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rbi +11 -0
  74. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rb +14 -2
  75. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rbi +6 -0
  76. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rb +19 -0
  77. data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rbi +11 -0
  78. data/lib/moov/models/components/requestcard.rb +17 -17
  79. data/lib/moov/models/components/requestcard.rbi +8 -8
  80. data/lib/moov/models/components/transfer.rb +2 -6
  81. data/lib/moov/models/components/transfer.rbi +0 -2
  82. data/lib/moov/models/components/transferamountdetails.rb +6 -2
  83. data/lib/moov/models/components/transferamountdetails.rbi +2 -0
  84. data/lib/moov/models/components/transferconfig.rb +2 -6
  85. data/lib/moov/models/components/transferconfig.rbi +0 -2
  86. data/lib/moov/models/components/transferdestination.rb +2 -8
  87. data/lib/moov/models/components/transferdestination.rbi +0 -2
  88. data/lib/moov/models/components/updateinvoice.rb +6 -6
  89. data/lib/moov/models/components/updateissuedcard.rb +9 -13
  90. data/lib/moov/models/components/updateissuedcard.rbi +4 -6
  91. data/lib/moov/models/components/updatepaymentlink.rb +6 -6
  92. data/lib/moov/models/components/updatepaymentlink.rbi +2 -2
  93. data/lib/moov/models/components/updatepaymentlinkamountdetails.rb +32 -0
  94. data/lib/moov/models/components/updatepaymentlinkamountdetails.rbi +13 -0
  95. data/lib/moov/models/components/updatepaymentlinkamountdetailsvalidationerror.rb +32 -0
  96. data/lib/moov/models/components/updatepaymentlinkamountdetailsvalidationerror.rbi +13 -0
  97. data/lib/moov/models/components/webhookdatabankaccountdeleted.rb +2 -6
  98. data/lib/moov/models/components/webhookdatabankaccountdeleted.rbi +0 -2
  99. data/lib/moov/models/components/webhookdatacapabilityrequested.rb +1 -7
  100. data/lib/moov/models/components/webhookdatacapabilityupdated.rb +1 -7
  101. data/lib/moov/models/components/webhookdatasweepcreated.rb +2 -6
  102. data/lib/moov/models/components/webhookdatasweepcreated.rbi +0 -2
  103. data/lib/moov/models/components/webhookdatasweepupdated.rb +2 -6
  104. data/lib/moov/models/components/webhookdatasweepupdated.rbi +0 -2
  105. data/lib/moov/models/components/webhookevent.rb +2 -2
  106. data/lib/moov/models/components/webhookeventtype.rb +0 -1
  107. data/lib/moov/models/components.rb +15 -6
  108. data/lib/moov/models/errors/cardmetadatarequesterror.rb +44 -0
  109. data/lib/moov/models/errors/cardmetadatarequesterror.rbi +19 -0
  110. data/lib/moov/models/errors/createpaymentlinkerror.rb +6 -6
  111. data/lib/moov/models/errors/createpaymentlinkerror.rbi +2 -2
  112. data/lib/moov/models/errors/requestcarderror.rb +14 -14
  113. data/lib/moov/models/errors/requestcarderror.rbi +8 -8
  114. data/lib/moov/models/errors/transfer_error.rb +2 -6
  115. data/lib/moov/models/errors/transfer_error.rbi +0 -2
  116. data/lib/moov/models/errors/transfervalidationerror.rb +2 -6
  117. data/lib/moov/models/errors/transfervalidationerror.rbi +0 -2
  118. data/lib/moov/models/errors/updateissuedcarderror.rb +8 -12
  119. data/lib/moov/models/errors/updateissuedcarderror.rbi +4 -6
  120. data/lib/moov/models/errors/updatepaymentlinkerror.rb +6 -6
  121. data/lib/moov/models/errors/updatepaymentlinkerror.rbi +2 -2
  122. data/lib/moov/models/errors.rb +1 -0
  123. data/lib/moov/models/operations/disablecapability_request.rb +1 -7
  124. data/lib/moov/models/operations/getcapability_request.rb +1 -7
  125. data/lib/moov/models/operations/{listcancellations_response.rb → getcardmetadata_response.rb} +6 -6
  126. data/lib/moov/models/operations/{listcancellations_response.rbi → getcardmetadata_response.rbi} +4 -4
  127. data/lib/moov/models/operations.rb +1 -2
  128. data/lib/moov/onboarding.rb +16 -16
  129. data/lib/moov/payment_links.rb +24 -24
  130. data/lib/moov/payment_methods.rb +8 -8
  131. data/lib/moov/ping.rb +4 -4
  132. data/lib/moov/products.rb +20 -20
  133. data/lib/moov/receipts.rb +8 -8
  134. data/lib/moov/representatives.rb +20 -20
  135. data/lib/moov/resolution_links.rb +16 -16
  136. data/lib/moov/scheduling.rb +24 -24
  137. data/lib/moov/sdkconfiguration.rb +4 -4
  138. data/lib/moov/statements.rb +8 -8
  139. data/lib/moov/support.rb +20 -20
  140. data/lib/moov/sweeps.rb +24 -24
  141. data/lib/moov/terminal_applications.rb +20 -20
  142. data/lib/moov/transfer_config.rb +12 -12
  143. data/lib/moov/transfers.rb +48 -171
  144. data/lib/moov/underwriting.rb +12 -12
  145. data/lib/moov/utils/retries.rb +1 -4
  146. data/lib/moov/wallet_transactions.rb +8 -8
  147. data/lib/moov/wallets.rb +16 -16
  148. data/lib/moov/webhooks.rb +32 -32
  149. metadata +38 -20
  150. data/lib/moov/models/components/billingaddress.rb +0 -52
  151. data/lib/moov/models/components/billingaddress.rbi +0 -23
  152. data/lib/moov/models/components/rtpfailurecode.rb +0 -27
  153. data/lib/moov/models/components/rtpfailurecode.rbi +0 -11
  154. data/lib/moov/models/components/rtptransactiondetails.rb +0 -58
  155. data/lib/moov/models/components/rtptransactiondetails.rbi +0 -25
  156. data/lib/moov/models/components/rtptransactionstatus.rb +0 -21
  157. data/lib/moov/models/components/rtptransactionstatus.rbi +0 -11
  158. data/lib/moov/models/components/transfercontrols.rb +0 -48
  159. data/lib/moov/models/components/transfercontrols.rbi +0 -21
  160. data/lib/moov/models/components/webhookdataauthorizationexpiring.rb +0 -44
  161. data/lib/moov/models/components/webhookdataauthorizationexpiring.rbi +0 -19
  162. data/lib/moov/models/operations/listcancellations_request.rb +0 -36
  163. data/lib/moov/models/operations/listcancellations_request.rbi +0 -15
@@ -65,7 +65,7 @@ module Moov
65
65
 
66
66
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
67
67
  timeout ||= @sdk_configuration.timeout
68
-
68
+
69
69
 
70
70
  connection = @sdk_configuration.client
71
71
 
@@ -80,7 +80,7 @@ module Moov
80
80
  error = T.let(nil, T.nilable(StandardError))
81
81
  http_response = T.let(nil, T.nilable(Faraday::Response))
82
82
 
83
-
83
+
84
84
  begin
85
85
  http_response = T.must(connection).get(url) do |req|
86
86
  req.headers.merge!(headers)
@@ -117,13 +117,13 @@ module Moov
117
117
  response: http_response
118
118
  )
119
119
  end
120
-
120
+
121
121
  if http_response.nil?
122
122
  raise error if !error.nil?
123
123
  raise 'no response'
124
124
  end
125
125
  end
126
-
126
+
127
127
  content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
128
128
  if Utils.match_status_code(http_response.status, ['200'])
129
129
  if Utils.match_content_type(content_type, 'application/json')
@@ -189,7 +189,7 @@ module Moov
189
189
 
190
190
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
191
191
  timeout ||= @sdk_configuration.timeout
192
-
192
+
193
193
 
194
194
  connection = @sdk_configuration.client
195
195
 
@@ -204,7 +204,7 @@ module Moov
204
204
  error = T.let(nil, T.nilable(StandardError))
205
205
  http_response = T.let(nil, T.nilable(Faraday::Response))
206
206
 
207
-
207
+
208
208
  begin
209
209
  http_response = T.must(connection).get(url) do |req|
210
210
  req.headers.merge!(headers)
@@ -240,13 +240,13 @@ module Moov
240
240
  response: http_response
241
241
  )
242
242
  end
243
-
243
+
244
244
  if http_response.nil?
245
245
  raise error if !error.nil?
246
246
  raise 'no response'
247
247
  end
248
248
  end
249
-
249
+
250
250
  content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
251
251
  if Utils.match_status_code(http_response.status, ['200'])
252
252
  if Utils.match_content_type(content_type, 'application/json')
@@ -315,7 +315,7 @@ module Moov
315
315
 
316
316
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
317
317
  timeout ||= @sdk_configuration.timeout
318
-
318
+
319
319
 
320
320
  connection = @sdk_configuration.client
321
321
 
@@ -330,7 +330,7 @@ module Moov
330
330
  error = T.let(nil, T.nilable(StandardError))
331
331
  http_response = T.let(nil, T.nilable(Faraday::Response))
332
332
 
333
-
333
+
334
334
  begin
335
335
  http_response = T.must(connection).get(url) do |req|
336
336
  req.headers.merge!(headers)
@@ -367,13 +367,13 @@ module Moov
367
367
  response: http_response
368
368
  )
369
369
  end
370
-
370
+
371
371
  if http_response.nil?
372
372
  raise error if !error.nil?
373
373
  raise 'no response'
374
374
  end
375
375
  end
376
-
376
+
377
377
  content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
378
378
  if Utils.match_status_code(http_response.status, ['200'])
379
379
  if Utils.match_content_type(content_type, 'application/json')
@@ -436,7 +436,7 @@ module Moov
436
436
 
437
437
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
438
438
  timeout ||= @sdk_configuration.timeout
439
-
439
+
440
440
 
441
441
  connection = @sdk_configuration.client
442
442
 
@@ -451,7 +451,7 @@ module Moov
451
451
  error = T.let(nil, T.nilable(StandardError))
452
452
  http_response = T.let(nil, T.nilable(Faraday::Response))
453
453
 
454
-
454
+
455
455
  begin
456
456
  http_response = T.must(connection).get(url) do |req|
457
457
  req.headers.merge!(headers)
@@ -488,13 +488,13 @@ module Moov
488
488
  response: http_response
489
489
  )
490
490
  end
491
-
491
+
492
492
  if http_response.nil?
493
493
  raise error if !error.nil?
494
494
  raise 'no response'
495
495
  end
496
496
  end
497
-
497
+
498
498
  content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
499
499
  if Utils.match_status_code(http_response.status, ['200'])
500
500
  if Utils.match_content_type(content_type, 'application/json')
@@ -560,7 +560,7 @@ module Moov
560
560
 
561
561
  timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
562
562
  timeout ||= @sdk_configuration.timeout
563
-
563
+
564
564
 
565
565
  connection = @sdk_configuration.client
566
566
 
@@ -575,7 +575,7 @@ module Moov
575
575
  error = T.let(nil, T.nilable(StandardError))
576
576
  http_response = T.let(nil, T.nilable(Faraday::Response))
577
577
 
578
-
578
+
579
579
  begin
580
580
  http_response = T.must(connection).get(url) do |req|
581
581
  req.headers.merge!(headers)
@@ -611,13 +611,13 @@ module Moov
611
611
  response: http_response
612
612
  )
613
613
  end
614
-
614
+
615
615
  if http_response.nil?
616
616
  raise error if !error.nil?
617
617
  raise 'no response'
618
618
  end
619
619
  end
620
-
620
+
621
621
  content_type = http_response.headers.fetch('Content-Type', 'application/octet-stream')
622
622
  if Utils.match_status_code(http_response.status, ['200'])
623
623
  if Utils.match_content_type(content_type, 'application/json')
@@ -12,11 +12,7 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # Capabilities to request for the account. Request granular capability IDs that match your use case.
16
- #
17
- # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
18
- #
19
- # The `send-funds`, `collect-funds`, and `wallet` capability IDs are deprecated. Use granular values such as `send-funds.ach`, `collect-funds.card-payments`, or `wallet.balance` instead.
15
+
20
16
  field :capabilities, Crystalline::Array.new(Models::Components::CapabilityID), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilities'), required: true } }
21
17
 
22
18
  sig { params(capabilities: T::Array[Models::Components::CapabilityID]).void }
@@ -0,0 +1,36 @@
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 AmountDecimalRange
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Minimum amount allowed in the range
16
+ field :minimum, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('minimum'), required: true } }
17
+ # Maximum amount allowed in the range
18
+ field :maximum, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maximum'), required: true } }
19
+
20
+ sig { params(minimum: Models::Components::AmountDecimal, maximum: Models::Components::AmountDecimal).void }
21
+ def initialize(minimum:, maximum:)
22
+ @minimum = minimum
23
+ @maximum = maximum
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @minimum == other.minimum
30
+ return false unless @maximum == other.maximum
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::AmountDecimalRange
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::AmountDecimalRange
11
+ def minimum(); end
12
+ def minimum=(str_); end
13
+ def maximum(); end
14
+ def maximum=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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 AmountDecimalRangeUpdate
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Minimum amount allowed in the range
16
+ field :minimum, Crystalline::Nilable.new(Models::Components::AmountDecimalUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('minimum') } }
17
+ # Maximum amount allowed in the range
18
+ field :maximum, Crystalline::Nilable.new(Models::Components::AmountDecimalUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maximum') } }
19
+
20
+ sig { params(minimum: T.nilable(Models::Components::AmountDecimalUpdate), maximum: T.nilable(Models::Components::AmountDecimalUpdate)).void }
21
+ def initialize(minimum: nil, maximum: nil)
22
+ @minimum = minimum
23
+ @maximum = maximum
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @minimum == other.minimum
30
+ return false unless @maximum == other.maximum
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::AmountDecimalRangeUpdate
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::AmountDecimalRangeUpdate
11
+ def minimum(); end
12
+ def minimum=(str_); end
13
+ def maximum(); end
14
+ def maximum=(str_); end
15
+ end
@@ -0,0 +1,36 @@
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
+ # Fields for identifying an authorized individual.
11
+ class AuthorizedUser
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :first_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('firstName'), required: true } }
17
+
18
+ field :last_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastName'), required: true } }
19
+
20
+ sig { params(first_name: ::String, last_name: ::String).void }
21
+ def initialize(first_name:, last_name:)
22
+ @first_name = first_name
23
+ @last_name = last_name
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @first_name == other.first_name
30
+ return false unless @last_name == other.last_name
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::AuthorizedUser
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::AuthorizedUser
11
+ def first_name(); end
12
+ def first_name=(str_); end
13
+ def last_name(); end
14
+ def last_name=(str_); end
15
+ end
@@ -14,13 +14,7 @@ module Moov
14
14
 
15
15
  # Moov account capabilities.
16
16
  #
17
- # **Deprecated capabilities**
18
- #
19
- # 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.
20
- #
21
- # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
22
- #
23
- # 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.
17
+ # 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.
24
18
  field :capability, Models::Components::CapabilityID, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capability'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CapabilityID, false) } }
25
19
 
26
20
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
@@ -9,13 +9,7 @@ module Moov
9
9
  module Components
10
10
  # CapabilityID - Moov account capabilities.
11
11
  #
12
- # **Deprecated capabilities**
13
- #
14
- # 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.
15
- #
16
- # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
17
- #
18
- # 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.
12
+ # 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
13
  class CapabilityID < T::Enum
20
14
  enums do
21
15
  TRANSFERS = new('transfers')
@@ -0,0 +1,79 @@
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
+ # Metadata describing a card.
11
+ class CardMetadata
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The first six to eight digits of the card number, which identifies the financial institution that issued the card.
16
+ field :bin, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin'), required: true } }
17
+ # The card brand.
18
+ field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardBrand, false) } }
19
+ # The type of the card.
20
+ field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardType, false) } }
21
+ # The category or level of the card defined by the issuer.
22
+ # Examples include, but not limited to, "REWARDS", "TRADITIONAL REWARDS", "CLASSIC", and "CORPORATE PURCHASING".
23
+ field :card_category, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardCategory') } }
24
+ # If true, the card is for commercial use, or associated with a business.
25
+ # If false, the card is associated with a general consumer.
26
+ field :commercial, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('commercial') } }
27
+ # If true, the card issuing bank is regulated, and the scheme fees for debit transactions will be limited based on the Durbin Amendment.
28
+ # If false, the card issuing bank is not regulated, and the scheme fees will not be limited.
29
+ field :regulated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('regulated') } }
30
+ # Financial institution that issued the card.
31
+ field :issuer, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuer') } }
32
+ # Country where the card was issued.
33
+ field :issuer_country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuerCountry') } }
34
+ # Phone number of the issuer.
35
+ field :issuer_phone, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuerPhone') } }
36
+ # URL of the issuer.
37
+ field :issuer_url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuerURL') } }
38
+ # Indicates if the card supports domestic pull-from-card transfer.
39
+ field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DomesticPullFromCard, true) } }
40
+ # Indicates which level of domestic push-to-card transfer is supported by the card, if any.
41
+ field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DomesticPushToCard, true) } }
42
+
43
+ sig { params(bin: ::String, brand: Models::Components::CardBrand, card_type: Models::Components::CardType, card_category: T.nilable(::String), commercial: T.nilable(T::Boolean), regulated: T.nilable(T::Boolean), issuer: T.nilable(::String), issuer_country: T.nilable(::String), issuer_phone: T.nilable(::String), issuer_url: T.nilable(::String), domestic_pull_from_card: T.nilable(Models::Components::DomesticPullFromCard), domestic_push_to_card: T.nilable(Models::Components::DomesticPushToCard)).void }
44
+ def initialize(bin:, brand:, card_type:, card_category: nil, commercial: nil, regulated: nil, issuer: nil, issuer_country: nil, issuer_phone: nil, issuer_url: nil, domestic_pull_from_card: nil, domestic_push_to_card: nil)
45
+ @bin = bin
46
+ @brand = brand
47
+ @card_type = card_type
48
+ @card_category = card_category
49
+ @commercial = commercial
50
+ @regulated = regulated
51
+ @issuer = issuer
52
+ @issuer_country = issuer_country
53
+ @issuer_phone = issuer_phone
54
+ @issuer_url = issuer_url
55
+ @domestic_pull_from_card = domestic_pull_from_card
56
+ @domestic_push_to_card = domestic_push_to_card
57
+ end
58
+
59
+ sig { params(other: T.untyped).returns(T::Boolean) }
60
+ def ==(other)
61
+ return false unless other.is_a? self.class
62
+ return false unless @bin == other.bin
63
+ return false unless @brand == other.brand
64
+ return false unless @card_type == other.card_type
65
+ return false unless @card_category == other.card_category
66
+ return false unless @commercial == other.commercial
67
+ return false unless @regulated == other.regulated
68
+ return false unless @issuer == other.issuer
69
+ return false unless @issuer_country == other.issuer_country
70
+ return false unless @issuer_phone == other.issuer_phone
71
+ return false unless @issuer_url == other.issuer_url
72
+ return false unless @domestic_pull_from_card == other.domestic_pull_from_card
73
+ return false unless @domestic_push_to_card == other.domestic_push_to_card
74
+ true
75
+ end
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,35 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardMetadata
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardMetadata
11
+ def bin(); end
12
+ def bin=(str_); end
13
+ def brand(); end
14
+ def brand=(str_); end
15
+ def card_type(); end
16
+ def card_type=(str_); end
17
+ def card_category(); end
18
+ def card_category=(str_); end
19
+ def commercial(); end
20
+ def commercial=(str_); end
21
+ def regulated(); end
22
+ def regulated=(str_); end
23
+ def issuer(); end
24
+ def issuer=(str_); end
25
+ def issuer_country(); end
26
+ def issuer_country=(str_); end
27
+ def issuer_phone(); end
28
+ def issuer_phone=(str_); end
29
+ def issuer_url(); end
30
+ def issuer_url=(str_); end
31
+ def domestic_pull_from_card(); end
32
+ def domestic_pull_from_card=(str_); end
33
+ def domestic_push_to_card(); end
34
+ def domestic_push_to_card=(str_); end
35
+ end
@@ -0,0 +1,38 @@
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 CardMetadataRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Wraps a compact-serialized JSON Web Encryption (JWE) token used for secure transmission of sensitive data (e.g., PCI information) through intermediaries.
16
+ # This token is encrypted using the public key from /end-to-end-keys and wraps an AES key. For details and examples, refer to our
17
+ # [GitHub repository](https://github.com/moovfinancial/moov-go/blob/main/examples/e2ee/e2ee_test.go).
18
+ field :e2ee, Crystalline::Nilable.new(Models::Components::E2EEToken), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('e2ee') } }
19
+ # The full card number (PAN).
20
+ field :card_number, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardNumber') } }
21
+
22
+ sig { params(e2ee: T.nilable(Models::Components::E2EEToken), card_number: T.nilable(::String)).void }
23
+ def initialize(e2ee: nil, card_number: nil)
24
+ @e2ee = e2ee
25
+ @card_number = card_number
26
+ end
27
+
28
+ sig { params(other: T.untyped).returns(T::Boolean) }
29
+ def ==(other)
30
+ return false unless other.is_a? self.class
31
+ return false unless @e2ee == other.e2ee
32
+ return false unless @card_number == other.card_number
33
+ true
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardMetadataRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardMetadataRequest
11
+ def e2ee(); end
12
+ def e2ee=(str_); end
13
+ def card_number(); end
14
+ def card_number=(str_); end
15
+ end
@@ -27,11 +27,7 @@ module Moov
27
27
  field :customer_support, Crystalline::Nilable.new(Models::Components::CustomerSupport), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerSupport') } }
28
28
  # User provided settings to manage an account.
29
29
  field :settings, Crystalline::Nilable.new(Models::Components::Settings), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('settings') } }
30
- # Capabilities to request when the account is created. Request granular capability IDs that match your use case.
31
- #
32
- # Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
33
- #
34
- # The `send-funds`, `collect-funds`, and `wallet` capability IDs are deprecated. Use granular values such as `send-funds.ach`, `collect-funds.card-payments`, or `wallet.balance` instead.
30
+
35
31
  field :capabilities, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CapabilityID)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilities') } }
36
32
  # The operating mode for an account.
37
33
  field :mode, Crystalline::Nilable.new(Models::Components::Mode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::Mode, true) } }
@@ -0,0 +1,40 @@
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
+ # Fields for identifying an authorized individual.
11
+ class CreateAuthorizedUser
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :first_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('firstName'), required: true } }
17
+
18
+ field :last_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastName'), required: true } }
19
+
20
+ field :birth_date, Crystalline::Nilable.new(Models::Components::BirthDate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('birthDate') } }
21
+
22
+ sig { params(first_name: ::String, last_name: ::String, birth_date: T.nilable(Models::Components::BirthDate)).void }
23
+ def initialize(first_name:, last_name:, birth_date: nil)
24
+ @first_name = first_name
25
+ @last_name = last_name
26
+ @birth_date = birth_date
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @first_name == other.first_name
33
+ return false unless @last_name == other.last_name
34
+ return false unless @birth_date == other.birth_date
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateAuthorizedUser
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateAuthorizedUser
11
+ def first_name(); end
12
+ def first_name=(str_); end
13
+ def last_name(); end
14
+ def last_name=(str_); end
15
+ def birth_date(); end
16
+ def birth_date=(str_); end
17
+ end
@@ -0,0 +1,40 @@
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 CreateAuthorizedUserError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :first_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('firstName') } }
17
+
18
+ field :last_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastName') } }
19
+
20
+ field :birth_date, Crystalline::Nilable.new(Models::Components::BirthDateError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('birthDate') } }
21
+
22
+ sig { params(first_name: T.nilable(::String), last_name: T.nilable(::String), birth_date: T.nilable(Models::Components::BirthDateError)).void }
23
+ def initialize(first_name: nil, last_name: nil, birth_date: nil)
24
+ @first_name = first_name
25
+ @last_name = last_name
26
+ @birth_date = birth_date
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @first_name == other.first_name
33
+ return false unless @last_name == other.last_name
34
+ return false unless @birth_date == other.birth_date
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end