moov_ruby 26.10.0.pre.dev.0 → 26.10.0.pre.dev.2

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 (244) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/avatars.rb +276 -1
  3. data/lib/moov/card_issuing.rb +116 -0
  4. data/lib/moov/client.rb +2 -2
  5. data/lib/moov/enriched_address.rb +1 -1
  6. data/lib/moov/enriched_profile.rb +1 -1
  7. data/lib/moov/institutions.rb +1 -1
  8. data/lib/moov/models/components/achcreditoptions.rb +40 -0
  9. data/lib/moov/models/components/achcreditoptions.rbi +17 -0
  10. data/lib/moov/models/components/achcredittransferprocessingdetails.rb +40 -0
  11. data/lib/moov/models/components/achcredittransferprocessingdetails.rbi +17 -0
  12. data/lib/moov/models/components/achdebitoptions.rb +48 -0
  13. data/lib/moov/models/components/achdebitoptions.rbi +21 -0
  14. data/lib/moov/models/components/achdebittransferprocessingdetails.rb +40 -0
  15. data/lib/moov/models/components/achdebittransferprocessingdetails.rbi +17 -0
  16. data/lib/moov/models/components/allowedscheduleerror.rb +36 -0
  17. data/lib/moov/models/components/allowedscheduleerror.rbi +15 -0
  18. data/lib/moov/models/components/asynccreatedrefund.rb +7 -3
  19. data/lib/moov/models/components/asynccreatedrefund.rbi +2 -0
  20. data/lib/moov/models/components/avataruploadrequest.rb +32 -0
  21. data/lib/moov/models/components/avataruploadrequest.rbi +13 -0
  22. data/lib/moov/models/components/avataruploadrequest_file.rb +36 -0
  23. data/lib/moov/models/components/avataruploadrequest_file.rbi +15 -0
  24. data/lib/moov/models/components/capabilityid.rb +1 -0
  25. data/lib/moov/models/components/capture.rb +77 -0
  26. data/lib/moov/models/components/capture.rbi +35 -0
  27. data/lib/moov/models/components/{refundcardstatus.rb → capturestatus.rb} +5 -4
  28. data/lib/moov/models/components/{refundcardstatus.rbi → capturestatus.rbi} +2 -2
  29. data/lib/moov/models/components/cardacquiringrefund.rb +11 -7
  30. data/lib/moov/models/components/cardacquiringrefund.rbi +4 -2
  31. data/lib/moov/models/components/cardpaymentoptions.rb +39 -0
  32. data/lib/moov/models/components/cardpaymentoptions.rbi +15 -0
  33. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +32 -0
  34. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +13 -0
  35. data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rb +44 -0
  36. data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rbi +19 -0
  37. data/lib/moov/models/components/createcancellation.rb +32 -0
  38. data/lib/moov/models/components/createcancellation.rbi +13 -0
  39. data/lib/moov/models/components/createcapture.rb +65 -0
  40. data/lib/moov/models/components/createcapture.rbi +29 -0
  41. data/lib/moov/models/components/createdtransfer.rb +22 -22
  42. data/lib/moov/models/components/createdtransfer.rbi +8 -8
  43. data/lib/moov/models/components/createrefund.rb +9 -5
  44. data/lib/moov/models/components/createrefund.rbi +2 -0
  45. data/lib/moov/models/components/createreversal.rb +3 -3
  46. data/lib/moov/models/components/createtransfer.rb +9 -5
  47. data/lib/moov/models/components/createtransfer.rbi +2 -0
  48. data/lib/moov/models/components/createtransferfacilitatorfee.rb +36 -0
  49. data/lib/moov/models/components/createtransferfacilitatorfee.rbi +15 -0
  50. data/lib/moov/models/components/createtransferoptions.rb +2 -2
  51. data/lib/moov/models/components/feepaidby.rb +19 -0
  52. data/lib/moov/models/components/{achtransactionstatus.rbi → feepaidby.rbi} +2 -2
  53. data/lib/moov/models/components/fullissuedcard.rb +3 -3
  54. data/lib/moov/models/components/incurredfee.rb +6 -2
  55. data/lib/moov/models/components/incurredfee.rbi +2 -0
  56. data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rb +44 -0
  57. data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rbi +19 -0
  58. data/lib/moov/models/components/issuedcard.rb +3 -3
  59. data/lib/moov/models/components/issuedcontrols.rb +52 -0
  60. data/lib/moov/models/components/issuedcontrols.rbi +23 -0
  61. data/lib/moov/models/components/issuedcontrols_allowedschedule.rb +36 -0
  62. data/lib/moov/models/components/issuedcontrols_allowedschedule.rbi +15 -0
  63. data/lib/moov/models/components/issuedvelocitylimit.rb +60 -0
  64. data/lib/moov/models/components/issuedvelocitylimit.rbi +27 -0
  65. data/lib/moov/models/components/issuingcontrols.rb +18 -2
  66. data/lib/moov/models/components/issuingcontrols.rbi +8 -0
  67. data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +36 -0
  68. data/lib/moov/models/components/issuingcontrols_allowedschedule.rbi +15 -0
  69. data/lib/moov/models/components/issuingcontrolserror.rb +18 -2
  70. data/lib/moov/models/components/issuingcontrolserror.rbi +8 -0
  71. data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +19 -0
  72. data/lib/moov/models/components/issuingcontrolsrestrictionmode.rbi +11 -0
  73. data/lib/moov/models/components/issuingintervallimit.rb +4 -1
  74. data/lib/moov/models/components/issuingmerchantcategory.rb +43 -0
  75. data/lib/moov/models/components/issuingmerchantcategory.rbi +11 -0
  76. data/lib/moov/models/components/issuingscheduleday.rb +24 -0
  77. data/lib/moov/models/components/{cardtransactionstatus.rbi → issuingscheduleday.rbi} +2 -2
  78. data/lib/moov/models/components/issuingvelocitylimit.rb +11 -7
  79. data/lib/moov/models/components/issuingvelocitylimit.rbi +4 -2
  80. data/lib/moov/models/components/issuingvelocitylimiterror.rb +6 -2
  81. data/lib/moov/models/components/issuingvelocitylimiterror.rbi +2 -0
  82. data/lib/moov/models/components/merchantcategories.rb +32 -0
  83. data/lib/moov/models/components/merchantcategories.rbi +13 -0
  84. data/lib/moov/models/components/merchantcategory.rb +37 -0
  85. data/lib/moov/models/components/merchantcategory.rbi +15 -0
  86. data/lib/moov/models/components/merchantcategoryrestrictions.rb +44 -0
  87. data/lib/moov/models/components/merchantcategoryrestrictions.rbi +19 -0
  88. data/lib/moov/models/components/merchantcategoryrestrictionserror.rb +44 -0
  89. data/lib/moov/models/components/merchantcategoryrestrictionserror.rbi +19 -0
  90. data/lib/moov/models/components/merchantentry.rb +40 -0
  91. data/lib/moov/models/components/merchantentry.rbi +17 -0
  92. data/lib/moov/models/components/merchantentryerror.rb +36 -0
  93. data/lib/moov/models/components/merchantentryerror.rbi +15 -0
  94. data/lib/moov/models/components/merchantrestrictions.rb +36 -0
  95. data/lib/moov/models/components/merchantrestrictions.rbi +15 -0
  96. data/lib/moov/models/components/merchantrestrictionserror.rb +36 -0
  97. data/lib/moov/models/components/merchantrestrictionserror.rbi +15 -0
  98. data/lib/moov/models/components/moovfeedetails.rb +5 -5
  99. data/lib/moov/models/components/paymentlinkpayoutdetails.rb +8 -2
  100. data/lib/moov/models/components/paymentlinkpayoutdetails.rbi +2 -0
  101. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +8 -2
  102. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rbi +2 -0
  103. data/lib/moov/models/components/paymentmethodswallet.rb +1 -0
  104. data/lib/moov/models/components/payoutdetailserror.rb +6 -2
  105. data/lib/moov/models/components/payoutdetailserror.rbi +2 -0
  106. data/lib/moov/models/components/product.rb +6 -2
  107. data/lib/moov/models/components/product.rbi +2 -0
  108. data/lib/moov/models/components/productcategories.rb +32 -0
  109. data/lib/moov/models/components/productcategories.rbi +13 -0
  110. data/lib/moov/models/components/productcategory.rb +48 -0
  111. data/lib/moov/models/components/productcategory.rbi +21 -0
  112. data/lib/moov/models/components/productrequest.rb +6 -2
  113. data/lib/moov/models/components/productrequest.rbi +2 -0
  114. data/lib/moov/models/components/pullfromcardoptions.rb +39 -0
  115. data/lib/moov/models/components/pullfromcardoptions.rbi +15 -0
  116. data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rb +44 -0
  117. data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rbi +19 -0
  118. data/lib/moov/models/components/pushtocardoptions.rb +32 -0
  119. data/lib/moov/models/components/pushtocardoptions.rbi +13 -0
  120. data/lib/moov/models/components/pushtocardtransferprocessingdetails.rb +44 -0
  121. data/lib/moov/models/components/pushtocardtransferprocessingdetails.rbi +19 -0
  122. data/lib/moov/models/components/refundprocessingdetails.rb +32 -0
  123. data/lib/moov/models/components/refundprocessingdetails.rbi +13 -0
  124. data/lib/moov/models/components/schedulewindow.rb +40 -0
  125. data/lib/moov/models/components/schedulewindow.rbi +17 -0
  126. data/lib/moov/models/components/schedulewindowerror.rb +40 -0
  127. data/lib/moov/models/components/schedulewindowerror.rbi +17 -0
  128. data/lib/moov/models/components/schemebasicauth.rb +36 -0
  129. data/lib/moov/models/components/schemebasicauth.rbi +15 -0
  130. data/lib/moov/models/components/schemeoauth2auth.rb +40 -0
  131. data/lib/moov/models/components/schemeoauth2auth.rbi +17 -0
  132. data/lib/moov/models/components/sendfunds.rb +6 -2
  133. data/lib/moov/models/components/sendfunds.rbi +2 -0
  134. data/lib/moov/models/components/sendfundserror.rb +6 -2
  135. data/lib/moov/models/components/sendfundserror.rbi +2 -0
  136. data/lib/moov/models/components/sendfundswire.rb +32 -0
  137. data/lib/moov/models/components/sendfundswire.rbi +13 -0
  138. data/lib/moov/models/components/sendfundswireerror.rb +32 -0
  139. data/lib/moov/models/components/sendfundswireerror.rbi +13 -0
  140. data/lib/moov/models/components/transfer.rb +22 -22
  141. data/lib/moov/models/components/transfer.rbi +8 -8
  142. data/lib/moov/models/components/transferauthorization.rb +52 -0
  143. data/lib/moov/models/components/transferauthorization.rbi +23 -0
  144. data/lib/moov/models/components/transferdestination.rb +5 -17
  145. data/lib/moov/models/components/transferdestination.rbi +0 -6
  146. data/lib/moov/models/components/transferfeepaidby.rb +32 -0
  147. data/lib/moov/models/components/transferfeepaidby.rbi +13 -0
  148. data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -0
  149. data/lib/moov/models/components/transferprocessingdetails.rb +52 -0
  150. data/lib/moov/models/components/transferprocessingdetails.rbi +23 -0
  151. data/lib/moov/models/components/transferrailoptions.rb +48 -0
  152. data/lib/moov/models/components/transferrailoptions.rbi +21 -0
  153. data/lib/moov/models/components/transfersource.rb +9 -17
  154. data/lib/moov/models/components/transfersource.rbi +2 -6
  155. data/lib/moov/models/components/transferstatus.rb +1 -0
  156. data/lib/moov/models/components/transfertype.rb +25 -0
  157. data/lib/moov/models/components/transfertype.rbi +11 -0
  158. data/lib/moov/models/components/updateissuedcard.rb +6 -2
  159. data/lib/moov/models/components/updateissuedcard.rbi +2 -0
  160. data/lib/moov/models/components/updateissuingcontrols.rb +48 -0
  161. data/lib/moov/models/components/updateissuingcontrols.rbi +21 -0
  162. data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +36 -0
  163. data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rbi +15 -0
  164. data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +44 -0
  165. data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rbi +19 -0
  166. data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +36 -0
  167. data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rbi +15 -0
  168. data/lib/moov/models/components/updateissuingcontrolserror.rb +48 -0
  169. data/lib/moov/models/components/updateissuingcontrolserror.rbi +21 -0
  170. data/lib/moov/models/components/wallet.rb +1 -0
  171. data/lib/moov/models/components/wallettype.rb +2 -0
  172. data/lib/moov/models/components/webhookdatatransferstatus.rb +3 -0
  173. data/lib/moov/models/components.rb +55 -9
  174. data/lib/moov/models/errors/capturevalidationerror.rb +68 -0
  175. data/lib/moov/models/errors/capturevalidationerror.rbi +31 -0
  176. data/lib/moov/models/errors/cardacquiringrefund_error.rb +11 -7
  177. data/lib/moov/models/errors/cardacquiringrefund_error.rbi +4 -2
  178. data/lib/moov/models/errors/productrequestvalidationerror.rb +6 -2
  179. data/lib/moov/models/errors/productrequestvalidationerror.rbi +2 -0
  180. data/lib/moov/models/errors/transfer_error.rb +22 -22
  181. data/lib/moov/models/errors/transfer_error.rbi +8 -8
  182. data/lib/moov/models/errors/updateissuedcarderror.rb +6 -2
  183. data/lib/moov/models/errors/updateissuedcarderror.rbi +2 -0
  184. data/lib/moov/models/errors.rb +1 -0
  185. data/lib/moov/models/operations/createcancellation_request.rb +6 -2
  186. data/lib/moov/models/operations/createcancellation_request.rbi +2 -0
  187. data/lib/moov/models/operations/createcapture_request.rb +44 -0
  188. data/lib/moov/models/operations/createcapture_request.rbi +19 -0
  189. data/lib/moov/models/operations/createcapture_response.rb +48 -0
  190. data/lib/moov/models/operations/createcapture_response.rbi +21 -0
  191. data/lib/moov/models/operations/createreversal_request.rb +3 -3
  192. data/lib/moov/models/operations/deleteavatar_request.rb +32 -0
  193. data/lib/moov/models/operations/deleteavatar_request.rbi +13 -0
  194. data/lib/moov/models/operations/deleteavatar_response.rb +44 -0
  195. data/lib/moov/models/operations/deleteavatar_response.rbi +19 -0
  196. data/lib/moov/models/operations/deleteavatar_security.rb +36 -0
  197. data/lib/moov/models/operations/deleteavatar_security.rbi +15 -0
  198. data/lib/moov/models/operations/getcapture_request.rb +40 -0
  199. data/lib/moov/models/operations/getcapture_request.rbi +17 -0
  200. data/lib/moov/models/operations/getcapture_response.rb +48 -0
  201. data/lib/moov/models/operations/getcapture_response.rbi +21 -0
  202. data/lib/moov/models/operations/initiaterefund_request.rb +6 -6
  203. data/lib/moov/models/operations/initiaterefund_request.rbi +2 -2
  204. data/lib/moov/models/operations/listcaptures_request.rb +36 -0
  205. data/lib/moov/models/operations/listcaptures_request.rbi +15 -0
  206. data/lib/moov/models/operations/listcaptures_response.rb +48 -0
  207. data/lib/moov/models/operations/listcaptures_response.rbi +21 -0
  208. data/lib/moov/models/operations/listissuingmerchantcategories_response.rb +48 -0
  209. data/lib/moov/models/operations/listissuingmerchantcategories_response.rbi +21 -0
  210. data/lib/moov/models/operations/listproductcategories_response.rb +48 -0
  211. data/lib/moov/models/operations/listproductcategories_response.rbi +21 -0
  212. data/lib/moov/models/operations/listproducts_request.rb +8 -2
  213. data/lib/moov/models/operations/listproducts_request.rbi +2 -0
  214. data/lib/moov/models/operations/listtransfers_request.rb +14 -2
  215. data/lib/moov/models/operations/listtransfers_request.rbi +6 -0
  216. data/lib/moov/models/operations/uploadavatar_request.rb +36 -0
  217. data/lib/moov/models/operations/uploadavatar_request.rbi +15 -0
  218. data/lib/moov/models/operations/uploadavatar_response.rb +44 -0
  219. data/lib/moov/models/operations/uploadavatar_response.rbi +19 -0
  220. data/lib/moov/models/operations/uploadavatar_security.rb +36 -0
  221. data/lib/moov/models/operations/uploadavatar_security.rbi +15 -0
  222. data/lib/moov/models/operations.rb +14 -0
  223. data/lib/moov/products.rb +113 -8
  224. data/lib/moov/sdk_hooks/clientcredentials.rb +386 -0
  225. data/lib/moov/sdk_hooks/hooks.rb +6 -0
  226. data/lib/moov/sdk_hooks/oauth2scopes.rb +18 -0
  227. data/lib/moov/sdkconfiguration.rb +3 -3
  228. data/lib/moov/transfers.rb +434 -5
  229. data/lib/moov_ruby.rb +1 -1
  230. metadata +144 -20
  231. data/lib/moov/models/components/achtransactiondetails.rb +0 -92
  232. data/lib/moov/models/components/achtransactiondetails.rbi +0 -43
  233. data/lib/moov/models/components/achtransactionstatus.rb +0 -24
  234. data/lib/moov/models/components/cardacquiringdispute.rb +0 -40
  235. data/lib/moov/models/components/cardacquiringdispute.rbi +0 -17
  236. data/lib/moov/models/components/cardtransactiondetails.rb +0 -93
  237. data/lib/moov/models/components/cardtransactiondetails.rbi +0 -41
  238. data/lib/moov/models/components/cardtransactionstatus.rb +0 -24
  239. data/lib/moov/models/components/instantbanktransactiondetails.rb +0 -64
  240. data/lib/moov/models/components/instantbanktransactiondetails.rbi +0 -29
  241. data/lib/moov/models/components/instantbanktransactionstatus.rb +0 -21
  242. data/lib/moov/models/components/instantbanktransactionstatus.rbi +0 -11
  243. data/lib/moov/models/components/refundcarddetails.rb +0 -56
  244. data/lib/moov/models/components/refundcarddetails.rbi +0 -25
@@ -21,12 +21,15 @@ module Moov
21
21
 
22
22
  field :instant_bank, Crystalline::Nilable.new(Models::Components::SendFundsInstantBank), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('instantBank') } }
23
23
 
24
- sig { params(ach: T.nilable(Models::Components::SendFundsAch), push_to_card: T.nilable(Models::Components::SendFundsPushToCard), rtp: T.nilable(Models::Components::SendFundsRtp), instant_bank: T.nilable(Models::Components::SendFundsInstantBank)).void }
25
- def initialize(ach: nil, push_to_card: nil, rtp: nil, instant_bank: nil)
24
+ field :wire, Crystalline::Nilable.new(Models::Components::SendFundsWire), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wire') } }
25
+
26
+ sig { params(ach: T.nilable(Models::Components::SendFundsAch), push_to_card: T.nilable(Models::Components::SendFundsPushToCard), rtp: T.nilable(Models::Components::SendFundsRtp), instant_bank: T.nilable(Models::Components::SendFundsInstantBank), wire: T.nilable(Models::Components::SendFundsWire)).void }
27
+ def initialize(ach: nil, push_to_card: nil, rtp: nil, instant_bank: nil, wire: nil)
26
28
  @ach = ach
27
29
  @push_to_card = push_to_card
28
30
  @rtp = rtp
29
31
  @instant_bank = instant_bank
32
+ @wire = wire
30
33
  end
31
34
 
32
35
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -36,6 +39,7 @@ module Moov
36
39
  return false unless @push_to_card == other.push_to_card
37
40
  return false unless @rtp == other.rtp
38
41
  return false unless @instant_bank == other.instant_bank
42
+ return false unless @wire == other.wire
39
43
  true
40
44
  end
41
45
  end
@@ -16,4 +16,6 @@ class Moov::Models::Components::SendFunds
16
16
  def rtp=(str_); end
17
17
  def instant_bank(); end
18
18
  def instant_bank=(str_); end
19
+ def wire(); end
20
+ def wire=(str_); end
19
21
  end
@@ -21,12 +21,15 @@ module Moov
21
21
 
22
22
  field :instant_bank, Crystalline::Nilable.new(Models::Components::SendFundsInstantBankError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('instantBank') } }
23
23
 
24
- sig { params(ach: T.nilable(Models::Components::SendFundsAchError), push_to_card: T.nilable(Models::Components::SendFundsPushToCardError), rtp: T.nilable(Models::Components::SendFundsRtpError), instant_bank: T.nilable(Models::Components::SendFundsInstantBankError)).void }
25
- def initialize(ach: nil, push_to_card: nil, rtp: nil, instant_bank: nil)
24
+ field :wire, Crystalline::Nilable.new(Models::Components::SendFundsWireError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wire') } }
25
+
26
+ sig { params(ach: T.nilable(Models::Components::SendFundsAchError), push_to_card: T.nilable(Models::Components::SendFundsPushToCardError), rtp: T.nilable(Models::Components::SendFundsRtpError), instant_bank: T.nilable(Models::Components::SendFundsInstantBankError), wire: T.nilable(Models::Components::SendFundsWireError)).void }
27
+ def initialize(ach: nil, push_to_card: nil, rtp: nil, instant_bank: nil, wire: nil)
26
28
  @ach = ach
27
29
  @push_to_card = push_to_card
28
30
  @rtp = rtp
29
31
  @instant_bank = instant_bank
32
+ @wire = wire
30
33
  end
31
34
 
32
35
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -36,6 +39,7 @@ module Moov
36
39
  return false unless @push_to_card == other.push_to_card
37
40
  return false unless @rtp == other.rtp
38
41
  return false unless @instant_bank == other.instant_bank
42
+ return false unless @wire == other.wire
39
43
  true
40
44
  end
41
45
  end
@@ -16,4 +16,6 @@ class Moov::Models::Components::SendFundsError
16
16
  def rtp=(str_); end
17
17
  def instant_bank(); end
18
18
  def instant_bank=(str_); end
19
+ def wire(); end
20
+ def wire=(str_); end
19
21
  end
@@ -0,0 +1,32 @@
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 SendFundsWire
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :estimated_activity, Crystalline::Nilable.new(Models::Components::EstimatedActivity), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('estimatedActivity') } }
17
+
18
+ sig { params(estimated_activity: T.nilable(Models::Components::EstimatedActivity)).void }
19
+ def initialize(estimated_activity: nil)
20
+ @estimated_activity = estimated_activity
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @estimated_activity == other.estimated_activity
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::SendFundsWire
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::SendFundsWire
11
+ def estimated_activity(); end
12
+ def estimated_activity=(str_); end
13
+ end
@@ -0,0 +1,32 @@
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 SendFundsWireError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :estimated_activity, Crystalline::Nilable.new(Models::Components::EstimatedActivityError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('estimatedActivity') } }
17
+
18
+ sig { params(estimated_activity: T.nilable(Models::Components::EstimatedActivityError)).void }
19
+ def initialize(estimated_activity: nil)
20
+ @estimated_activity = estimated_activity
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @estimated_activity == other.estimated_activity
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::SendFundsWireError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::SendFundsWireError
11
+ def estimated_activity(); end
12
+ def estimated_activity=(str_); end
13
+ end
@@ -14,6 +14,8 @@ module Moov
14
14
 
15
15
 
16
16
  field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
17
+ # The rail and direction used to move funds for a transfer.
18
+ field :transfer_type, Models::Components::TransferType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferType, false) } }
17
19
 
18
20
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
19
21
 
@@ -23,7 +25,11 @@ module Moov
23
25
  # Status of a transfer.
24
26
  field :status, Models::Components::TransferStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferStatus, false) } }
25
27
 
26
- field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
28
+ field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
29
+
30
+ field :options, Models::Components::TransferRailOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options'), required: true } }
31
+
32
+ field :processing_details, Models::Components::TransferProcessingDetails, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('processingDetails'), required: true } }
27
33
 
28
34
  field :completed_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('completedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
29
35
  # Reason for a transfer's failure.
@@ -35,9 +41,7 @@ module Moov
35
41
  # Total or markup fee.
36
42
  field :facilitator_fee, Crystalline::Nilable.new(Models::Components::FacilitatorFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('facilitatorFee') } }
37
43
  # Fees charged to your platform account for transfers.
38
- field :moov_fee, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFee') } }
39
- # Same as `moovFee`, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
40
- field :moov_fee_decimal, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDecimal') } }
44
+ field :moov_fee, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFee') } }
41
45
  # Processing and pass-through costs that add up to the moovFee.
42
46
  field :moov_fee_details, Crystalline::Nilable.new(Models::Components::MoovFeeDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDetails') } }
43
47
  # Fees charged to accounts involved in the transfer.
@@ -45,15 +49,9 @@ module Moov
45
49
 
46
50
  field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('groupID') } }
47
51
 
48
- field :cancellations, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::Cancellation)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cancellations') } }
49
-
50
- field :refunded_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
52
+ field :refunded_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
51
53
 
52
- field :refunds, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CardAcquiringRefund)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refunds') } }
53
-
54
- field :disputed_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
55
-
56
- field :disputes, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CardAcquiringDispute)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputes') } }
54
+ field :disputed_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
57
55
  # ID of the sweep that created this transfer.
58
56
  field :sweep_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sweepID') } }
59
57
 
@@ -72,29 +70,30 @@ module Moov
72
70
 
73
71
  field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
74
72
 
75
- sig { params(transfer_id: ::String, created_on: ::DateTime, source: Models::Components::TransferSource, destination: Models::Components::TransferDestination, status: Models::Components::TransferStatus, amount: Models::Components::Amount, completed_on: T.nilable(::DateTime), failure_reason: T.nilable(Models::Components::TransferFailureReason), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(::Integer), moov_fee_decimal: T.nilable(::String), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), moov_fees: T.nilable(T::Array[Models::Components::MoovFee]), group_id: T.nilable(::String), cancellations: T.nilable(T::Array[Models::Components::Cancellation]), refunded_amount: T.nilable(Models::Components::Amount), refunds: T.nilable(T::Array[Models::Components::CardAcquiringRefund]), disputed_amount: T.nilable(Models::Components::Amount), disputes: T.nilable(T::Array[Models::Components::CardAcquiringDispute]), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), invoice_id: T.nilable(::String), amount_details: T.nilable(Models::Components::TransferAmountDetails)).void }
76
- def initialize(transfer_id:, created_on:, source:, destination:, status:, amount:, completed_on: nil, failure_reason: nil, description: nil, metadata: nil, facilitator_fee: nil, moov_fee: nil, moov_fee_decimal: nil, moov_fee_details: nil, moov_fees: nil, group_id: nil, cancellations: nil, refunded_amount: nil, refunds: nil, disputed_amount: nil, disputes: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, invoice_id: nil, amount_details: nil)
73
+ field :authorization, Crystalline::Nilable.new(Models::Components::TransferAuthorization), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorization') } }
74
+
75
+ sig { params(transfer_id: ::String, transfer_type: Models::Components::TransferType, created_on: ::DateTime, source: Models::Components::TransferSource, destination: Models::Components::TransferDestination, status: Models::Components::TransferStatus, amount: Models::Components::AmountDecimal, options: Models::Components::TransferRailOptions, processing_details: Models::Components::TransferProcessingDetails, completed_on: T.nilable(::DateTime), failure_reason: T.nilable(Models::Components::TransferFailureReason), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(Models::Components::AmountDecimal), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), moov_fees: T.nilable(T::Array[Models::Components::MoovFee]), group_id: T.nilable(::String), refunded_amount: T.nilable(Models::Components::AmountDecimal), disputed_amount: T.nilable(Models::Components::AmountDecimal), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), invoice_id: T.nilable(::String), amount_details: T.nilable(Models::Components::TransferAmountDetails), authorization: T.nilable(Models::Components::TransferAuthorization)).void }
76
+ def initialize(transfer_id:, transfer_type:, created_on:, source:, destination:, status:, amount:, options:, processing_details:, completed_on: nil, failure_reason: nil, description: nil, metadata: nil, facilitator_fee: nil, moov_fee: nil, moov_fee_details: nil, moov_fees: nil, group_id: nil, refunded_amount: nil, disputed_amount: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, invoice_id: nil, amount_details: nil, authorization: nil)
77
77
  @transfer_id = transfer_id
78
+ @transfer_type = transfer_type
78
79
  @created_on = created_on
79
80
  @source = source
80
81
  @destination = destination
81
82
  @status = status
82
83
  @amount = amount
84
+ @options = options
85
+ @processing_details = processing_details
83
86
  @completed_on = completed_on
84
87
  @failure_reason = failure_reason
85
88
  @description = description
86
89
  @metadata = metadata
87
90
  @facilitator_fee = facilitator_fee
88
91
  @moov_fee = moov_fee
89
- @moov_fee_decimal = moov_fee_decimal
90
92
  @moov_fee_details = moov_fee_details
91
93
  @moov_fees = moov_fees
92
94
  @group_id = group_id
93
- @cancellations = cancellations
94
95
  @refunded_amount = refunded_amount
95
- @refunds = refunds
96
96
  @disputed_amount = disputed_amount
97
- @disputes = disputes
98
97
  @sweep_id = sweep_id
99
98
  @schedule_id = schedule_id
100
99
  @occurrence_id = occurrence_id
@@ -103,32 +102,32 @@ module Moov
103
102
  @line_items = line_items
104
103
  @invoice_id = invoice_id
105
104
  @amount_details = amount_details
105
+ @authorization = authorization
106
106
  end
107
107
 
108
108
  sig { params(other: T.untyped).returns(T::Boolean) }
109
109
  def ==(other)
110
110
  return false unless other.is_a? self.class
111
111
  return false unless @transfer_id == other.transfer_id
112
+ return false unless @transfer_type == other.transfer_type
112
113
  return false unless @created_on == other.created_on
113
114
  return false unless @source == other.source
114
115
  return false unless @destination == other.destination
115
116
  return false unless @status == other.status
116
117
  return false unless @amount == other.amount
118
+ return false unless @options == other.options
119
+ return false unless @processing_details == other.processing_details
117
120
  return false unless @completed_on == other.completed_on
118
121
  return false unless @failure_reason == other.failure_reason
119
122
  return false unless @description == other.description
120
123
  return false unless @metadata == other.metadata
121
124
  return false unless @facilitator_fee == other.facilitator_fee
122
125
  return false unless @moov_fee == other.moov_fee
123
- return false unless @moov_fee_decimal == other.moov_fee_decimal
124
126
  return false unless @moov_fee_details == other.moov_fee_details
125
127
  return false unless @moov_fees == other.moov_fees
126
128
  return false unless @group_id == other.group_id
127
- return false unless @cancellations == other.cancellations
128
129
  return false unless @refunded_amount == other.refunded_amount
129
- return false unless @refunds == other.refunds
130
130
  return false unless @disputed_amount == other.disputed_amount
131
- return false unless @disputes == other.disputes
132
131
  return false unless @sweep_id == other.sweep_id
133
132
  return false unless @schedule_id == other.schedule_id
134
133
  return false unless @occurrence_id == other.occurrence_id
@@ -137,6 +136,7 @@ module Moov
137
136
  return false unless @line_items == other.line_items
138
137
  return false unless @invoice_id == other.invoice_id
139
138
  return false unless @amount_details == other.amount_details
139
+ return false unless @authorization == other.authorization
140
140
  true
141
141
  end
142
142
  end
@@ -10,6 +10,8 @@ end
10
10
  class Moov::Models::Components::Transfer
11
11
  def transfer_id(); end
12
12
  def transfer_id=(str_); end
13
+ def transfer_type(); end
14
+ def transfer_type=(str_); end
13
15
  def created_on(); end
14
16
  def created_on=(str_); end
15
17
  def source(); end
@@ -20,6 +22,10 @@ class Moov::Models::Components::Transfer
20
22
  def status=(str_); end
21
23
  def amount(); end
22
24
  def amount=(str_); end
25
+ def options(); end
26
+ def options=(str_); end
27
+ def processing_details(); end
28
+ def processing_details=(str_); end
23
29
  def completed_on(); end
24
30
  def completed_on=(str_); end
25
31
  def failure_reason(); end
@@ -32,24 +38,16 @@ class Moov::Models::Components::Transfer
32
38
  def facilitator_fee=(str_); end
33
39
  def moov_fee(); end
34
40
  def moov_fee=(str_); end
35
- def moov_fee_decimal(); end
36
- def moov_fee_decimal=(str_); end
37
41
  def moov_fee_details(); end
38
42
  def moov_fee_details=(str_); end
39
43
  def moov_fees(); end
40
44
  def moov_fees=(str_); end
41
45
  def group_id(); end
42
46
  def group_id=(str_); end
43
- def cancellations(); end
44
- def cancellations=(str_); end
45
47
  def refunded_amount(); end
46
48
  def refunded_amount=(str_); end
47
- def refunds(); end
48
- def refunds=(str_); end
49
49
  def disputed_amount(); end
50
50
  def disputed_amount=(str_); end
51
- def disputes(); end
52
- def disputes=(str_); end
53
51
  def sweep_id(); end
54
52
  def sweep_id=(str_); end
55
53
  def schedule_id(); end
@@ -66,4 +64,6 @@ class Moov::Models::Components::Transfer
66
64
  def invoice_id=(str_); end
67
65
  def amount_details(); end
68
66
  def amount_details=(str_); end
67
+ def authorization(); end
68
+ def authorization=(str_); end
69
69
  end
@@ -0,0 +1,52 @@
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 TransferAuthorization
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :authorization_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizationID'), required: true } }
17
+
18
+ field :requested_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('requestedAmount'), required: true } }
19
+
20
+ field :authorized_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedAmount'), required: true } }
21
+
22
+ field :captured_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capturedAmount'), required: true } }
23
+
24
+ field :capturable_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capturableAmount'), required: true } }
25
+
26
+ field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
27
+
28
+ sig { params(authorization_id: ::String, requested_amount: Models::Components::AmountDecimal, authorized_amount: Models::Components::AmountDecimal, captured_amount: Models::Components::AmountDecimal, capturable_amount: Models::Components::AmountDecimal, expires_on: T.nilable(::DateTime)).void }
29
+ def initialize(authorization_id:, requested_amount:, authorized_amount:, captured_amount:, capturable_amount:, expires_on: nil)
30
+ @authorization_id = authorization_id
31
+ @requested_amount = requested_amount
32
+ @authorized_amount = authorized_amount
33
+ @captured_amount = captured_amount
34
+ @capturable_amount = capturable_amount
35
+ @expires_on = expires_on
36
+ end
37
+
38
+ sig { params(other: T.untyped).returns(T::Boolean) }
39
+ def ==(other)
40
+ return false unless other.is_a? self.class
41
+ return false unless @authorization_id == other.authorization_id
42
+ return false unless @requested_amount == other.requested_amount
43
+ return false unless @authorized_amount == other.authorized_amount
44
+ return false unless @captured_amount == other.captured_amount
45
+ return false unless @capturable_amount == other.capturable_amount
46
+ return false unless @expires_on == other.expires_on
47
+ true
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferAuthorization
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferAuthorization
11
+ def authorization_id(); end
12
+ def authorization_id=(str_); end
13
+ def requested_amount(); end
14
+ def requested_amount=(str_); end
15
+ def authorized_amount(); end
16
+ def authorized_amount=(str_); end
17
+ def captured_amount(); end
18
+ def captured_amount=(str_); end
19
+ def capturable_amount(); end
20
+ def capturable_amount=(str_); end
21
+ def expires_on(); end
22
+ def expires_on=(str_); end
23
+ end
@@ -13,41 +13,32 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
 
16
- field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
16
+ field :payment_method_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID') } }
17
17
  # The payment method type that represents a payment rail and directionality
18
- field :payment_method_type, Models::Components::TransferPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferPaymentMethodType, false) } }
18
+ field :payment_method_type, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferPaymentMethodType, true) } }
19
19
 
20
- field :account, Models::Components::TransferAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('account'), required: true } }
20
+ field :account, Crystalline::Nilable.new(Models::Components::TransferAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('account') } }
21
21
  # A bank account as contained within a payment method.
22
22
  field :bank_account, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsBankAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount') } }
23
23
 
24
24
  field :wallet, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsWallet), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet') } }
25
25
  # A card as contained within a payment method.
26
26
  field :card, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card') } }
27
- # ACH specific details about the transaction.
28
- field :ach_details, Crystalline::Nilable.new(Models::Components::ACHTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achDetails') } }
29
27
  # Describes an Apple Pay token on a Moov account.
30
28
  field :apple_pay, Crystalline::Nilable.new(Models::Components::ApplePayResponse), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applePay') } }
31
29
  # Describes a Google Pay token on a Moov account.
32
30
  field :google_pay, Crystalline::Nilable.new(Models::Components::GooglePayResponse), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('googlePay') } }
33
- # Card-specific details about the transaction.
34
- field :card_details, Crystalline::Nilable.new(Models::Components::CardTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardDetails') } }
35
- # Instant-bank specific details about the transaction.
36
- field :instant_bank_details, Crystalline::Nilable.new(Models::Components::InstantBankTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('instantBankDetails') } }
37
31
 
38
- sig { params(payment_method_id: ::String, payment_method_type: Models::Components::TransferPaymentMethodType, account: Models::Components::TransferAccount, bank_account: T.nilable(Models::Components::TransferPaymentMethodsBankAccount), wallet: T.nilable(Models::Components::TransferPaymentMethodsWallet), card: T.nilable(Models::Components::TransferPaymentMethodsCard), ach_details: T.nilable(Models::Components::ACHTransactionDetails), apple_pay: T.nilable(Models::Components::ApplePayResponse), google_pay: T.nilable(Models::Components::GooglePayResponse), card_details: T.nilable(Models::Components::CardTransactionDetails), instant_bank_details: T.nilable(Models::Components::InstantBankTransactionDetails)).void }
39
- def initialize(payment_method_id:, payment_method_type:, account:, bank_account: nil, wallet: nil, card: nil, ach_details: nil, apple_pay: nil, google_pay: nil, card_details: nil, instant_bank_details: nil)
32
+ sig { params(payment_method_id: T.nilable(::String), payment_method_type: T.nilable(Models::Components::TransferPaymentMethodType), account: T.nilable(Models::Components::TransferAccount), bank_account: T.nilable(Models::Components::TransferPaymentMethodsBankAccount), wallet: T.nilable(Models::Components::TransferPaymentMethodsWallet), card: T.nilable(Models::Components::TransferPaymentMethodsCard), apple_pay: T.nilable(Models::Components::ApplePayResponse), google_pay: T.nilable(Models::Components::GooglePayResponse)).void }
33
+ def initialize(payment_method_id: nil, payment_method_type: nil, account: nil, bank_account: nil, wallet: nil, card: nil, apple_pay: nil, google_pay: nil)
40
34
  @payment_method_id = payment_method_id
41
35
  @payment_method_type = payment_method_type
42
36
  @account = account
43
37
  @bank_account = bank_account
44
38
  @wallet = wallet
45
39
  @card = card
46
- @ach_details = ach_details
47
40
  @apple_pay = apple_pay
48
41
  @google_pay = google_pay
49
- @card_details = card_details
50
- @instant_bank_details = instant_bank_details
51
42
  end
52
43
 
53
44
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -59,11 +50,8 @@ module Moov
59
50
  return false unless @bank_account == other.bank_account
60
51
  return false unless @wallet == other.wallet
61
52
  return false unless @card == other.card
62
- return false unless @ach_details == other.ach_details
63
53
  return false unless @apple_pay == other.apple_pay
64
54
  return false unless @google_pay == other.google_pay
65
- return false unless @card_details == other.card_details
66
- return false unless @instant_bank_details == other.instant_bank_details
67
55
  true
68
56
  end
69
57
  end
@@ -20,14 +20,8 @@ class Moov::Models::Components::TransferDestination
20
20
  def wallet=(str_); end
21
21
  def card(); end
22
22
  def card=(str_); end
23
- def ach_details(); end
24
- def ach_details=(str_); end
25
23
  def apple_pay(); end
26
24
  def apple_pay=(str_); end
27
25
  def google_pay(); end
28
26
  def google_pay=(str_); end
29
- def card_details(); end
30
- def card_details=(str_); end
31
- def instant_bank_details(); end
32
- def instant_bank_details=(str_); end
33
27
  end
@@ -0,0 +1,32 @@
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
+ # Indicates which party bears fees for a transfer, keyed by fee type.
11
+ class TransferFeePaidBy
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # For payouts, indicates which party bears the fee. Defaults to `source`.
16
+ field :payout, Crystalline::Nilable.new(Models::Components::FeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FeePaidBy, true) } }
17
+
18
+ sig { params(payout: T.nilable(Models::Components::FeePaidBy)).void }
19
+ def initialize(payout: nil)
20
+ @payout = payout
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @payout == other.payout
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferFeePaidBy
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferFeePaidBy
11
+ def payout(); end
12
+ def payout=(str_); end
13
+ end
@@ -19,6 +19,7 @@ module Moov
19
19
  # Type of a wallet.
20
20
  # - `default`: The system-generated wallet automatically created when an account is granted the wallet capability.
21
21
  # - `general`: An additional, user-defined wallet created via API or Dashboard.
22
+ # - `card-issuing`: The system-generated wallet automatically created when an account is granted the card-issuing capability.
22
23
  field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::WalletType, false) } }
23
24
 
24
25
  sig { params(wallet_id: ::String, partner_account_id: ::String, wallet_type: Models::Components::WalletType).void }
@@ -0,0 +1,52 @@
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 TransferProcessingDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :card_payment, Crystalline::Nilable.new(Models::Components::CardPaymentTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardPayment') } }
17
+
18
+ field :push_to_card, Crystalline::Nilable.new(Models::Components::PushToCardTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushToCard') } }
19
+
20
+ field :pull_from_card, Crystalline::Nilable.new(Models::Components::PullFromCardTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pullFromCard') } }
21
+
22
+ field :ach_debit, Crystalline::Nilable.new(Models::Components::ACHDebitTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achDebit') } }
23
+
24
+ field :ach_credit, Crystalline::Nilable.new(Models::Components::ACHCreditTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achCredit') } }
25
+
26
+ field :instant_bank_credit, Crystalline::Nilable.new(Models::Components::InstantBankCreditTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('instantBankCredit') } }
27
+
28
+ sig { params(card_payment: T.nilable(Models::Components::CardPaymentTransferProcessingDetails), push_to_card: T.nilable(Models::Components::PushToCardTransferProcessingDetails), pull_from_card: T.nilable(Models::Components::PullFromCardTransferProcessingDetails), ach_debit: T.nilable(Models::Components::ACHDebitTransferProcessingDetails), ach_credit: T.nilable(Models::Components::ACHCreditTransferProcessingDetails), instant_bank_credit: T.nilable(Models::Components::InstantBankCreditTransferProcessingDetails)).void }
29
+ def initialize(card_payment: nil, push_to_card: nil, pull_from_card: nil, ach_debit: nil, ach_credit: nil, instant_bank_credit: nil)
30
+ @card_payment = card_payment
31
+ @push_to_card = push_to_card
32
+ @pull_from_card = pull_from_card
33
+ @ach_debit = ach_debit
34
+ @ach_credit = ach_credit
35
+ @instant_bank_credit = instant_bank_credit
36
+ end
37
+
38
+ sig { params(other: T.untyped).returns(T::Boolean) }
39
+ def ==(other)
40
+ return false unless other.is_a? self.class
41
+ return false unless @card_payment == other.card_payment
42
+ return false unless @push_to_card == other.push_to_card
43
+ return false unless @pull_from_card == other.pull_from_card
44
+ return false unless @ach_debit == other.ach_debit
45
+ return false unless @ach_credit == other.ach_credit
46
+ return false unless @instant_bank_credit == other.instant_bank_credit
47
+ true
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferProcessingDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferProcessingDetails
11
+ def card_payment(); end
12
+ def card_payment=(str_); end
13
+ def push_to_card(); end
14
+ def push_to_card=(str_); end
15
+ def pull_from_card(); end
16
+ def pull_from_card=(str_); end
17
+ def ach_debit(); end
18
+ def ach_debit=(str_); end
19
+ def ach_credit(); end
20
+ def ach_credit=(str_); end
21
+ def instant_bank_credit(); end
22
+ def instant_bank_credit=(str_); end
23
+ end