moov_ruby 26.7.2 → 26.10.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 (413) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/module.rb +1 -1
  3. data/lib/moov/avatars.rb +1 -276
  4. data/lib/moov/card_issuing.rb +1 -117
  5. data/lib/moov/client.rb +2 -2
  6. data/lib/moov/enriched_address.rb +1 -1
  7. data/lib/moov/enriched_profile.rb +1 -1
  8. data/lib/moov/images.rb +1 -1
  9. data/lib/moov/institutions.rb +2 -2
  10. data/lib/moov/models/components/account.rb +2 -2
  11. data/lib/moov/models/components/accountnameverification.rb +4 -4
  12. data/lib/moov/models/components/accounttype.rb +1 -3
  13. data/lib/moov/models/components/accountverificationstatus.rb +1 -3
  14. data/lib/moov/models/components/achreturncode.rb +1 -3
  15. data/lib/moov/models/components/achtransactiondetails.rb +3 -3
  16. data/lib/moov/models/components/achtransactionstatus.rb +1 -3
  17. data/lib/moov/models/components/adjustmentfees.rb +15 -11
  18. data/lib/moov/models/components/adjustmentfees.rbi +4 -4
  19. data/lib/moov/models/components/amountdecimalrange.rb +2 -0
  20. data/lib/moov/models/components/amountdecimalrangeupdate.rb +2 -0
  21. data/lib/moov/models/components/applepayresponse.rb +2 -2
  22. data/lib/moov/models/components/applicationscope.rb +2 -4
  23. data/lib/moov/models/components/authmethod.rb +1 -3
  24. data/lib/moov/models/components/bankaccount.rb +4 -4
  25. data/lib/moov/models/components/bankaccountexception.rb +2 -2
  26. data/lib/moov/models/components/bankaccountholdertype.rb +1 -3
  27. data/lib/moov/models/components/bankaccountintegration.rb +2 -2
  28. data/lib/moov/models/components/bankaccountstatus.rb +1 -3
  29. data/lib/moov/models/components/bankaccountstatusreason.rb +1 -3
  30. data/lib/moov/models/components/bankaccounttype.rb +1 -3
  31. data/lib/moov/models/components/bankaccountverification.rb +2 -2
  32. data/lib/moov/models/components/bankaccountverificationcreated.rb +2 -2
  33. data/lib/moov/models/components/bankaccountverificationmethod.rb +1 -3
  34. data/lib/moov/models/components/bankaccountverificationstatus.rb +1 -3
  35. data/lib/moov/models/components/basicpaymentmethod.rb +1 -1
  36. data/lib/moov/models/components/billablefee.rb +2 -2
  37. data/lib/moov/models/components/billingsummary.rb +4 -8
  38. data/lib/moov/models/components/billingsummary.rbi +0 -2
  39. data/lib/moov/models/components/businesspresence.rb +1 -3
  40. data/lib/moov/models/components/businessprofile.rb +2 -2
  41. data/lib/moov/models/components/businesstype.rb +1 -3
  42. data/lib/moov/models/components/calltoaction.rb +1 -3
  43. data/lib/moov/models/components/cancellation.rb +2 -2
  44. data/lib/moov/models/components/cancellationstatus.rb +1 -3
  45. data/lib/moov/models/components/capability.rb +2 -2
  46. data/lib/moov/models/components/capabilityid.rb +1 -4
  47. data/lib/moov/models/components/capabilitystatus.rb +1 -3
  48. data/lib/moov/models/components/card.rb +4 -4
  49. data/lib/moov/models/components/cardaccountupdater.rb +1 -1
  50. data/lib/moov/models/components/cardacquiringmodel.rb +1 -3
  51. data/lib/moov/models/components/cardacquiringrefund.rb +1 -1
  52. data/lib/moov/models/components/cardbrand.rb +1 -3
  53. data/lib/moov/models/components/cardissuingnetwork.rb +1 -3
  54. data/lib/moov/models/components/cardmetadata.rb +4 -4
  55. data/lib/moov/models/components/cardtransactiondetails.rb +3 -3
  56. data/lib/moov/models/components/cardtransactionfailurecode.rb +1 -3
  57. data/lib/moov/models/components/cardtransactionstatus.rb +1 -3
  58. data/lib/moov/models/components/cardtype.rb +1 -3
  59. data/lib/moov/models/components/cardupdatereason.rb +1 -3
  60. data/lib/moov/models/components/cardverification.rb +3 -3
  61. data/lib/moov/models/components/cardverificationresult.rb +1 -3
  62. data/lib/moov/models/components/collectfundscardpayments.rb +1 -1
  63. data/lib/moov/models/components/collectionpaymentmethodtype.rb +1 -3
  64. data/lib/moov/models/components/{avataruploadrequest.rb → contributingrule.rb} +8 -8
  65. data/lib/moov/models/components/contributingrule.rbi +13 -0
  66. data/lib/moov/models/components/createaccount.rb +2 -2
  67. data/lib/moov/models/components/createaccounttype.rb +1 -3
  68. data/lib/moov/models/components/createbusinessprofile.rb +2 -2
  69. data/lib/moov/models/components/createdtransfer.rb +5 -12
  70. data/lib/moov/models/components/createdtransfer.rbi +0 -2
  71. data/lib/moov/models/components/createevidencetext.rb +1 -1
  72. data/lib/moov/models/components/createfeeplanagreement.rb +3 -13
  73. data/lib/moov/models/components/createfeeplanagreement.rbi +0 -2
  74. data/lib/moov/models/components/createpaymentlink.rb +1 -1
  75. data/lib/moov/models/components/createrefund.rb +2 -2
  76. data/lib/moov/models/components/createreversal.rb +1 -4
  77. data/lib/moov/models/components/createsweepconfig.rb +1 -1
  78. data/lib/moov/models/components/createterminalapplication.rb +1 -1
  79. data/lib/moov/models/components/createtippresets.rb +1 -1
  80. data/lib/moov/models/components/createtransfer.rb +2 -6
  81. data/lib/moov/models/components/createtransfer.rbi +0 -2
  82. data/lib/moov/models/components/createtransfersourceach.rb +2 -2
  83. data/lib/moov/models/components/createtransfersourcecard.rb +1 -1
  84. data/lib/moov/models/components/createwebhook.rb +1 -1
  85. data/lib/moov/models/components/debitholdperiod.rb +1 -3
  86. data/lib/moov/models/components/depositaccountingestedresponse.rb +1 -1
  87. data/lib/moov/models/components/disbursementpaymentmethodtype.rb +1 -3
  88. data/lib/moov/models/components/dispute.rb +2 -2
  89. data/lib/moov/models/components/disputeevidenceresponse.rb +1 -1
  90. data/lib/moov/models/components/disputephase.rb +1 -3
  91. data/lib/moov/models/components/disputestatus.rb +1 -3
  92. data/lib/moov/models/components/document.rb +1 -1
  93. data/lib/moov/models/components/documenttype.rb +1 -3
  94. data/lib/moov/models/components/domesticpullfromcard.rb +1 -3
  95. data/lib/moov/models/components/domesticpushtocard.rb +1 -3
  96. data/lib/moov/models/components/estimatedactivity.rb +1 -1
  97. data/lib/moov/models/components/evidencetextresponse.rb +1 -1
  98. data/lib/moov/models/components/evidencetype.rb +1 -3
  99. data/lib/moov/models/components/evidenceuploadresponse.rb +1 -1
  100. data/lib/moov/models/components/facilitatorfee.rb +2 -2
  101. data/lib/moov/models/components/feecategory.rb +1 -3
  102. data/lib/moov/models/components/feemodel.rb +1 -3
  103. data/lib/moov/models/components/feeplan.rb +1 -1
  104. data/lib/moov/models/components/feeplanagreement.rb +4 -12
  105. data/lib/moov/models/components/feeplanagreement.rbi +0 -4
  106. data/lib/moov/models/components/feeplanagreementstatus.rb +1 -3
  107. data/lib/moov/models/components/filedetails.rb +2 -2
  108. data/lib/moov/models/components/filepurpose.rb +1 -3
  109. data/lib/moov/models/components/filestatus.rb +1 -3
  110. data/lib/moov/models/components/fulfillment.rb +2 -2
  111. data/lib/moov/models/components/fulfillmentdetails.rb +1 -1
  112. data/lib/moov/models/components/fulfillmentmethod.rb +1 -3
  113. data/lib/moov/models/components/fulfillmenttimeframe.rb +1 -3
  114. data/lib/moov/models/components/fullissuedcard.rb +5 -6
  115. data/lib/moov/models/components/geographicreach.rb +1 -3
  116. data/lib/moov/models/components/googlepayresponse.rb +3 -3
  117. data/lib/moov/models/components/incurredfee.rb +2 -6
  118. data/lib/moov/models/components/incurredfee.rbi +0 -2
  119. data/lib/moov/models/components/instantbankfailurecode.rb +1 -3
  120. data/lib/moov/models/components/instantbanknetwork.rb +1 -3
  121. data/lib/moov/models/components/instantbanktransactiondetails.rb +3 -3
  122. data/lib/moov/models/components/instantbanktransactionstatus.rb +1 -3
  123. data/lib/moov/models/components/invoice.rb +1 -1
  124. data/lib/moov/models/components/invoicepayment.rb +1 -1
  125. data/lib/moov/models/components/invoicepaymenttype.rb +1 -3
  126. data/lib/moov/models/components/invoicestatus.rb +1 -3
  127. data/lib/moov/models/components/issuedcard.rb +5 -6
  128. data/lib/moov/models/components/issuedcardauthorization.rb +2 -2
  129. data/lib/moov/models/components/issuedcardauthorizationevent.rb +2 -2
  130. data/lib/moov/models/components/issuedcardauthorizationeventresult.rb +1 -3
  131. data/lib/moov/models/components/issuedcardeventtype.rb +1 -3
  132. data/lib/moov/models/components/issuedcardstate.rb +1 -5
  133. data/lib/moov/models/components/issuingauthorizationstatus.rb +1 -3
  134. data/lib/moov/models/components/issuingcontrols.rb +3 -19
  135. data/lib/moov/models/components/issuingcontrols.rbi +0 -8
  136. data/lib/moov/models/components/issuingcontrolserror.rb +2 -18
  137. data/lib/moov/models/components/issuingcontrolserror.rbi +0 -8
  138. data/lib/moov/models/components/issuingintervallimit.rb +2 -7
  139. data/lib/moov/models/components/issuingvelocitylimit.rb +7 -11
  140. data/lib/moov/models/components/issuingvelocitylimit.rbi +2 -4
  141. data/lib/moov/models/components/issuingvelocitylimiterror.rb +2 -6
  142. data/lib/moov/models/components/issuingvelocitylimiterror.rbi +0 -2
  143. data/lib/moov/models/components/jsonwebkey.rb +1 -1
  144. data/lib/moov/models/components/linkedapplepaypaymentmethod.rb +1 -1
  145. data/lib/moov/models/components/linkedgooglepaypaymentmethod.rb +1 -1
  146. data/lib/moov/models/components/mode.rb +1 -3
  147. data/lib/moov/models/components/monthlyvolumerange.rb +1 -3
  148. data/lib/moov/models/components/moovfee.rb +1 -1
  149. data/lib/moov/models/components/occurrencesresponse.rb +2 -2
  150. data/lib/moov/models/components/occurrencestatus.rb +1 -3
  151. data/lib/moov/models/components/onboardingpartneraccount.rb +1 -1
  152. data/lib/moov/models/components/partnerpricingagreement.rb +7 -15
  153. data/lib/moov/models/components/partnerpricingagreement.rbi +0 -4
  154. data/lib/moov/models/components/partnerriskoutcomesresponse.rb +38 -0
  155. data/lib/moov/models/components/partnerriskoutcomesresponse.rbi +15 -0
  156. data/lib/moov/models/components/patchbusiness.rb +2 -2
  157. data/lib/moov/models/components/patchwallet.rb +1 -1
  158. data/lib/moov/models/components/paymentlink.rb +6 -4
  159. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetails.rb +2 -0
  160. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetailsupdate.rb +2 -0
  161. data/lib/moov/models/components/paymentlinkdisplayoptions.rb +1 -1
  162. data/lib/moov/models/components/paymentlinkdisplayoptionsupdate.rb +1 -1
  163. data/lib/moov/models/components/paymentlinkpayoutdetails.rb +7 -11
  164. data/lib/moov/models/components/paymentlinkpayoutdetails.rbi +0 -2
  165. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +7 -11
  166. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rbi +0 -2
  167. data/lib/moov/models/components/paymentlinkstatus.rb +1 -3
  168. data/lib/moov/models/components/paymentlinktype.rb +1 -3
  169. data/lib/moov/models/components/paymentmethodsbankaccount.rb +3 -3
  170. data/lib/moov/models/components/paymentmethodscard.rb +4 -4
  171. data/lib/moov/models/components/paymentmethodswallet.rb +1 -2
  172. data/lib/moov/models/components/paymentmethodtype.rb +1 -3
  173. data/lib/moov/models/components/payoutdetailserror.rb +2 -6
  174. data/lib/moov/models/components/payoutdetailserror.rbi +0 -2
  175. data/lib/moov/models/components/pendinglitigation.rb +1 -3
  176. data/lib/moov/models/components/primaryregulator.rb +1 -3
  177. data/lib/moov/models/components/product.rb +2 -6
  178. data/lib/moov/models/components/product.rbi +0 -2
  179. data/lib/moov/models/components/productrequest.rb +2 -6
  180. data/lib/moov/models/components/productrequest.rbi +0 -2
  181. data/lib/moov/models/components/pushdeliveryspeed.rb +1 -3
  182. data/lib/moov/models/components/pushoptions.rb +4 -5
  183. data/lib/moov/models/components/pushoptionsupdate.rb +4 -5
  184. data/lib/moov/models/components/puttippresets.rb +1 -1
  185. data/lib/moov/models/components/refundcarddetails.rb +2 -2
  186. data/lib/moov/models/components/refundcardstatus.rb +1 -3
  187. data/lib/moov/models/components/refundpolicy.rb +1 -3
  188. data/lib/moov/models/components/refundstatus.rb +1 -3
  189. data/lib/moov/models/components/requestcard.rb +1 -1
  190. data/lib/moov/models/components/requirementerror.rb +2 -2
  191. data/lib/moov/models/components/requirementerrorcode.rb +1 -3
  192. data/lib/moov/models/components/requirementid.rb +1 -17
  193. data/lib/moov/models/components/resolutionlink.rb +1 -1
  194. data/lib/moov/models/components/resolutionlinkstatus.rb +1 -3
  195. data/lib/moov/models/components/returnpolicytype.rb +1 -3
  196. data/lib/moov/models/components/reversalamountdetails.rb +1 -3
  197. data/lib/moov/models/components/reversedwithcancellation.rb +1 -1
  198. data/lib/moov/models/components/rtprejectioncode.rb +1 -3
  199. data/lib/moov/models/components/schedulelistresponse.rb +1 -1
  200. data/lib/moov/models/components/scheduleresponse.rb +1 -1
  201. data/lib/moov/models/components/seccode.rb +1 -3
  202. data/lib/moov/models/components/sendfunds.rb +2 -6
  203. data/lib/moov/models/components/sendfunds.rbi +0 -2
  204. data/lib/moov/models/components/sendfundserror.rb +2 -6
  205. data/lib/moov/models/components/sendfundserror.rbi +0 -2
  206. data/lib/moov/models/components/sourcesystem.rb +1 -3
  207. data/lib/moov/models/components/statement.rb +2 -6
  208. data/lib/moov/models/components/statement.rbi +0 -2
  209. data/lib/moov/models/components/sweep.rb +1 -1
  210. data/lib/moov/models/components/sweepconfig.rb +3 -3
  211. data/lib/moov/models/components/sweepconfigpaymentmethod.rb +1 -1
  212. data/lib/moov/models/components/sweepconfigstatus.rb +1 -3
  213. data/lib/moov/models/components/sweepstatus.rb +1 -3
  214. data/lib/moov/models/components/sweepsubtotal.rb +1 -1
  215. data/lib/moov/models/components/terminalapplication.rb +2 -2
  216. data/lib/moov/models/components/terminalapplicationplatform.rb +1 -3
  217. data/lib/moov/models/components/terminalapplicationstatus.rb +1 -3
  218. data/lib/moov/models/components/terminalcard.rb +2 -2
  219. data/lib/moov/models/components/ticket.rb +1 -1
  220. data/lib/moov/models/components/ticketstatus.rb +1 -3
  221. data/lib/moov/models/components/tipcalculationbasis.rb +1 -3
  222. data/lib/moov/models/components/tippresets.rb +1 -1
  223. data/lib/moov/models/components/transactionsource.rb +1 -3
  224. data/lib/moov/models/components/transfer.rb +5 -12
  225. data/lib/moov/models/components/transfer.rbi +0 -2
  226. data/lib/moov/models/components/transferdestination.rb +1 -1
  227. data/lib/moov/models/components/transferfailurereason.rb +1 -3
  228. data/lib/moov/models/components/transferparty.rb +1 -3
  229. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +3 -3
  230. data/lib/moov/models/components/transferpaymentmethodscard.rb +4 -4
  231. data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -2
  232. data/lib/moov/models/components/transferpaymentmethodtype.rb +1 -3
  233. data/lib/moov/models/components/transfersource.rb +1 -1
  234. data/lib/moov/models/components/transferstatus.rb +1 -3
  235. data/lib/moov/models/components/transferterminalcard.rb +2 -2
  236. data/lib/moov/models/components/underwriting.rb +4 -4
  237. data/lib/moov/models/components/underwritingstatus.rb +1 -3
  238. data/lib/moov/models/components/updateevidence.rb +1 -1
  239. data/lib/moov/models/components/updateinvoice.rb +1 -1
  240. data/lib/moov/models/components/updateissuedcard.rb +2 -8
  241. data/lib/moov/models/components/updateissuedcard.rbi +0 -2
  242. data/lib/moov/models/components/updateissuedcardstate.rb +0 -4
  243. data/lib/moov/models/components/updatepaymentlink.rb +1 -1
  244. data/lib/moov/models/components/updatewebhook.rb +1 -1
  245. data/lib/moov/models/components/upsertunderwriting.rb +3 -3
  246. data/lib/moov/models/components/use.rb +1 -3
  247. data/lib/moov/models/components/verification.rb +3 -3
  248. data/lib/moov/models/components/verificationstatus.rb +1 -3
  249. data/lib/moov/models/components/verificationstatusdetail.rb +1 -3
  250. data/lib/moov/models/components/wallet.rb +2 -3
  251. data/lib/moov/models/components/walletstatus.rb +1 -3
  252. data/lib/moov/models/components/wallettransaction.rb +3 -3
  253. data/lib/moov/models/components/wallettransactionsourcetype.rb +1 -3
  254. data/lib/moov/models/components/wallettransactionstatus.rb +1 -3
  255. data/lib/moov/models/components/wallettransactiontype.rb +1 -3
  256. data/lib/moov/models/components/wallettype.rb +1 -5
  257. data/lib/moov/models/components/webhook.rb +1 -1
  258. data/lib/moov/models/components/webhookdatabankaccountcreated.rb +1 -1
  259. data/lib/moov/models/components/webhookdatabankaccountdeleted.rb +1 -1
  260. data/lib/moov/models/components/webhookdatabankaccountupdated.rb +2 -2
  261. data/lib/moov/models/components/webhookdatacancellationcreated.rb +1 -1
  262. data/lib/moov/models/components/webhookdatacancellationupdated.rb +1 -1
  263. data/lib/moov/models/components/webhookdatacapabilityrequested.rb +1 -1
  264. data/lib/moov/models/components/webhookdatacapabilityupdated.rb +2 -2
  265. data/lib/moov/models/components/webhookdatacardautoupdated.rb +1 -1
  266. data/lib/moov/models/components/webhookdatadisputecreated.rb +2 -2
  267. data/lib/moov/models/components/webhookdatadisputeupdated.rb +2 -2
  268. data/lib/moov/models/components/webhookdatainvoiceupdated.rb +1 -1
  269. data/lib/moov/models/components/webhookdatarefundupdated.rb +1 -1
  270. data/lib/moov/models/components/webhookdatasweepupdated.rb +1 -1
  271. data/lib/moov/models/components/webhookdataterminalapplicationcreated.rb +1 -1
  272. data/lib/moov/models/components/webhookdataterminalapplicationupdated.rb +1 -1
  273. data/lib/moov/models/components/webhookdataticketupdated.rb +1 -1
  274. data/lib/moov/models/components/webhookdatatransferstatus.rb +0 -3
  275. data/lib/moov/models/components/webhookdatawallettransactionupdated.rb +1 -1
  276. data/lib/moov/models/components/webhookdatawalletupdated.rb +1 -1
  277. data/lib/moov/models/components/webhookevent.rb +1 -1
  278. data/lib/moov/models/components/webhookeventtype.rb +1 -3
  279. data/lib/moov/models/components/webhookstatus.rb +1 -3
  280. data/lib/moov/models/components.rb +3 -37
  281. data/lib/moov/models/errors/cardacquiringrefund_error.rb +1 -1
  282. data/lib/moov/models/errors/productrequestvalidationerror.rb +2 -6
  283. data/lib/moov/models/errors/productrequestvalidationerror.rbi +0 -2
  284. data/lib/moov/models/errors/transfer_error.rb +5 -12
  285. data/lib/moov/models/errors/transfer_error.rbi +0 -2
  286. data/lib/moov/models/errors/updateissuedcarderror.rb +2 -6
  287. data/lib/moov/models/errors/updateissuedcarderror.rbi +0 -2
  288. data/lib/moov/models/operations/gettransferriskoutcomes_request.rb +37 -0
  289. data/lib/moov/models/operations/gettransferriskoutcomes_request.rbi +15 -0
  290. data/lib/moov/models/operations/{listissuingmerchantcategories_response.rb → gettransferriskoutcomes_response.rb} +6 -6
  291. data/lib/moov/models/operations/{deleteavatar_response.rbi → gettransferriskoutcomes_response.rbi} +4 -2
  292. data/lib/moov/models/operations/listaccounts_request.rb +1 -1
  293. data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rb +1 -1
  294. data/lib/moov/models/operations/listdisputes_request.rb +1 -1
  295. data/lib/moov/models/operations/listfeeplanagreements_request.rb +1 -1
  296. data/lib/moov/models/operations/listfeerevenue_request.rb +1 -1
  297. data/lib/moov/models/operations/listinvoices_request.rb +1 -1
  298. data/lib/moov/models/operations/listissuedcardauthorizationevents_request.rb +1 -1
  299. data/lib/moov/models/operations/listissuedcardauthorizations_request.rb +1 -1
  300. data/lib/moov/models/operations/listissuedcards_request.rb +1 -1
  301. data/lib/moov/models/operations/listissuedcardtransactions_request.rb +3 -7
  302. data/lib/moov/models/operations/listissuedcardtransactions_request.rbi +0 -2
  303. data/lib/moov/models/operations/listpartnerpricingagreements_request.rb +1 -1
  304. data/lib/moov/models/operations/listpaymentlinks_request.rb +1 -1
  305. data/lib/moov/models/operations/listproducts_request.rb +3 -9
  306. data/lib/moov/models/operations/listproducts_request.rbi +0 -2
  307. data/lib/moov/models/operations/listresidualfees_request.rb +1 -1
  308. data/lib/moov/models/operations/listresiduals_request.rb +1 -1
  309. data/lib/moov/models/operations/listschedules_request.rb +1 -1
  310. data/lib/moov/models/operations/liststatements_request.rb +1 -1
  311. data/lib/moov/models/operations/listsweeps_request.rb +1 -1
  312. data/lib/moov/models/operations/listtickets_request.rb +1 -1
  313. data/lib/moov/models/operations/listtransfers_request.rb +3 -11
  314. data/lib/moov/models/operations/listtransfers_request.rbi +0 -4
  315. data/lib/moov/models/operations/listwallets_request.rb +1 -1
  316. data/lib/moov/models/operations/listwallettransactions_request.rb +1 -1
  317. data/lib/moov/models/operations/retrievefees_request.rb +1 -1
  318. data/lib/moov/models/operations.rb +2 -8
  319. data/lib/moov/products.rb +8 -113
  320. data/lib/moov/sdk_hooks/hooks.rb +0 -6
  321. data/lib/moov/sdkconfiguration.rb +4 -4
  322. data/lib/moov/transfers.rb +130 -11
  323. data/lib/moov/utils/retries.rb +2 -41
  324. data/lib/moov/utils/utils.rb +2 -6
  325. data/lib/moov_ruby.rb +1 -1
  326. metadata +12 -94
  327. data/lib/moov/models/components/allowedscheduleerror.rb +0 -36
  328. data/lib/moov/models/components/allowedscheduleerror.rbi +0 -15
  329. data/lib/moov/models/components/avataruploadrequest.rbi +0 -13
  330. data/lib/moov/models/components/avataruploadrequest_file.rb +0 -36
  331. data/lib/moov/models/components/avataruploadrequest_file.rbi +0 -15
  332. data/lib/moov/models/components/billingadjustment.rb +0 -40
  333. data/lib/moov/models/components/billingadjustment.rbi +0 -17
  334. data/lib/moov/models/components/billingsummary_adjustmentfees.rb +0 -40
  335. data/lib/moov/models/components/billingsummary_adjustmentfees.rbi +0 -15
  336. data/lib/moov/models/components/feepaidby.rb +0 -21
  337. data/lib/moov/models/components/feepaidby.rbi +0 -11
  338. data/lib/moov/models/components/issuedcontrols.rb +0 -52
  339. data/lib/moov/models/components/issuedcontrols.rbi +0 -23
  340. data/lib/moov/models/components/issuedcontrols_allowedschedule.rb +0 -36
  341. data/lib/moov/models/components/issuedcontrols_allowedschedule.rbi +0 -15
  342. data/lib/moov/models/components/issuedvelocitylimit.rb +0 -60
  343. data/lib/moov/models/components/issuedvelocitylimit.rbi +0 -27
  344. data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +0 -36
  345. data/lib/moov/models/components/issuingcontrols_allowedschedule.rbi +0 -15
  346. data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +0 -21
  347. data/lib/moov/models/components/issuingcontrolsrestrictionmode.rbi +0 -11
  348. data/lib/moov/models/components/issuingmerchantcategory.rb +0 -45
  349. data/lib/moov/models/components/issuingmerchantcategory.rbi +0 -11
  350. data/lib/moov/models/components/issuingscheduleday.rb +0 -24
  351. data/lib/moov/models/components/issuingscheduleday.rbi +0 -11
  352. data/lib/moov/models/components/merchantcategories.rb +0 -32
  353. data/lib/moov/models/components/merchantcategories.rbi +0 -13
  354. data/lib/moov/models/components/merchantcategory.rb +0 -37
  355. data/lib/moov/models/components/merchantcategory.rbi +0 -15
  356. data/lib/moov/models/components/merchantcategoryrestrictions.rb +0 -44
  357. data/lib/moov/models/components/merchantcategoryrestrictions.rbi +0 -19
  358. data/lib/moov/models/components/merchantcategoryrestrictionserror.rb +0 -44
  359. data/lib/moov/models/components/merchantcategoryrestrictionserror.rbi +0 -19
  360. data/lib/moov/models/components/merchantentry.rb +0 -40
  361. data/lib/moov/models/components/merchantentry.rbi +0 -17
  362. data/lib/moov/models/components/merchantentryerror.rb +0 -36
  363. data/lib/moov/models/components/merchantentryerror.rbi +0 -15
  364. data/lib/moov/models/components/merchantrestrictions.rb +0 -36
  365. data/lib/moov/models/components/merchantrestrictions.rbi +0 -15
  366. data/lib/moov/models/components/merchantrestrictionserror.rb +0 -36
  367. data/lib/moov/models/components/merchantrestrictionserror.rbi +0 -15
  368. data/lib/moov/models/components/productcategories.rb +0 -32
  369. data/lib/moov/models/components/productcategories.rbi +0 -13
  370. data/lib/moov/models/components/productcategory.rb +0 -48
  371. data/lib/moov/models/components/productcategory.rbi +0 -21
  372. data/lib/moov/models/components/schedulewindow.rb +0 -40
  373. data/lib/moov/models/components/schedulewindow.rbi +0 -17
  374. data/lib/moov/models/components/schedulewindowerror.rb +0 -40
  375. data/lib/moov/models/components/schedulewindowerror.rbi +0 -17
  376. data/lib/moov/models/components/schemebasicauth.rb +0 -36
  377. data/lib/moov/models/components/schemebasicauth.rbi +0 -15
  378. data/lib/moov/models/components/schemeoauth2auth.rb +0 -40
  379. data/lib/moov/models/components/schemeoauth2auth.rbi +0 -17
  380. data/lib/moov/models/components/sendfundswire.rb +0 -32
  381. data/lib/moov/models/components/sendfundswire.rbi +0 -13
  382. data/lib/moov/models/components/sendfundswireerror.rb +0 -32
  383. data/lib/moov/models/components/sendfundswireerror.rbi +0 -13
  384. data/lib/moov/models/components/transfercapture.rb +0 -36
  385. data/lib/moov/models/components/transfercapture.rbi +0 -15
  386. data/lib/moov/models/components/transferfeepaidby.rb +0 -32
  387. data/lib/moov/models/components/transferfeepaidby.rbi +0 -13
  388. data/lib/moov/models/components/updateissuingcontrols.rb +0 -48
  389. data/lib/moov/models/components/updateissuingcontrols.rbi +0 -21
  390. data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +0 -36
  391. data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rbi +0 -15
  392. data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +0 -44
  393. data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rbi +0 -19
  394. data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +0 -36
  395. data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rbi +0 -15
  396. data/lib/moov/models/components/updateissuingcontrolserror.rb +0 -48
  397. data/lib/moov/models/components/updateissuingcontrolserror.rbi +0 -21
  398. data/lib/moov/models/operations/deleteavatar_request.rb +0 -32
  399. data/lib/moov/models/operations/deleteavatar_request.rbi +0 -13
  400. data/lib/moov/models/operations/deleteavatar_response.rb +0 -44
  401. data/lib/moov/models/operations/deleteavatar_security.rb +0 -36
  402. data/lib/moov/models/operations/deleteavatar_security.rbi +0 -15
  403. data/lib/moov/models/operations/listissuingmerchantcategories_response.rbi +0 -21
  404. data/lib/moov/models/operations/listproductcategories_response.rb +0 -48
  405. data/lib/moov/models/operations/listproductcategories_response.rbi +0 -21
  406. data/lib/moov/models/operations/uploadavatar_request.rb +0 -36
  407. data/lib/moov/models/operations/uploadavatar_request.rbi +0 -15
  408. data/lib/moov/models/operations/uploadavatar_response.rb +0 -44
  409. data/lib/moov/models/operations/uploadavatar_response.rbi +0 -19
  410. data/lib/moov/models/operations/uploadavatar_security.rb +0 -36
  411. data/lib/moov/models/operations/uploadavatar_security.rbi +0 -15
  412. data/lib/moov/sdk_hooks/clientcredentials.rb +0 -386
  413. data/lib/moov/sdk_hooks/oauth2scopes.rb +0 -18
@@ -26,6 +26,4 @@ class Moov::Models::Components::IncurredFee
26
26
  def fee_group=(str_); end
27
27
  def residual_id(); end
28
28
  def residual_id=(str_); end
29
- def fee_paid_by(); end
30
- def fee_paid_by=(str_); end
31
29
  end
@@ -8,8 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # InstantBankFailureCode - Status codes for instant-bank failures.
11
- class InstantBankFailureCode
12
- include ::Crystalline::Enum
11
+ class InstantBankFailureCode < T::Enum
13
12
  enums do
14
13
  PROCESSING_ERROR = new('processing-error')
15
14
  INVALID_ACCOUNT = new('invalid-account')
@@ -23,7 +22,6 @@ module Moov
23
22
  PARTICIPANT_NOT_AVAILABLE = new('participant-not-available')
24
23
  OTHER = new('other')
25
24
  end
26
- open!
27
25
  end
28
26
  end
29
27
  end
@@ -8,13 +8,11 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # InstantBankNetwork - The network that the transaction was processed on.
11
- class InstantBankNetwork
12
- include ::Crystalline::Enum
11
+ class InstantBankNetwork < T::Enum
13
12
  enums do
14
13
  FEDNOW = new('fednow')
15
14
  RTP = new('rtp')
16
15
  end
17
- open!
18
16
  end
19
17
  end
20
18
  end
@@ -13,13 +13,13 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
  # The network that the transaction was processed on.
16
- field :network, Models::Components::InstantBankNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankNetwork, false) } }
16
+ field :network, Models::Components::InstantBankNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankNetwork, false) } }
17
17
  # Status of a transaction within the instant-bank lifecycle.
18
- field :status, Models::Components::InstantBankTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankTransactionStatus, false) } }
18
+ field :status, Models::Components::InstantBankTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankTransactionStatus, false) } }
19
19
  # Response code returned by network on failure.
20
20
  field :network_response_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkResponseCode') } }
21
21
  # Status codes for instant-bank failures.
22
- field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankFailureCode, true) } }
22
+ field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankFailureCode, true) } }
23
23
 
24
24
  field :end_to_end_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('endToEndID') } }
25
25
 
@@ -8,15 +8,13 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # InstantBankTransactionStatus - Status of a transaction within the instant-bank lifecycle.
11
- class InstantBankTransactionStatus
12
- include ::Crystalline::Enum
11
+ class InstantBankTransactionStatus < T::Enum
13
12
  enums do
14
13
  INITIATED = new('initiated')
15
14
  COMPLETED = new('completed')
16
15
  FAILED = new('failed')
17
16
  ACCEPTED_WITHOUT_POSTING = new('accepted-without-posting')
18
17
  end
19
- open!
20
18
  end
21
19
  end
22
20
  end
@@ -25,7 +25,7 @@ module Moov
25
25
  # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
26
26
  field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
27
27
 
28
- field :status, Models::Components::InvoiceStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InvoiceStatus, false) } }
28
+ field :status, Models::Components::InvoiceStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InvoiceStatus, false) } }
29
29
  # A collection of line items for an invoice.
30
30
  field :line_items, Models::Components::InvoiceLineItems, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems'), required: true } }
31
31
 
@@ -15,7 +15,7 @@ module Moov
15
15
  # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
16
16
  field :invoice_payment_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentID'), required: true } }
17
17
 
18
- field :invoice_payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InvoicePaymentType, false) } }
18
+ field :invoice_payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InvoicePaymentType, false) } }
19
19
 
20
20
  field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
21
21
 
@@ -8,13 +8,11 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class InvoicePaymentType
12
- include ::Crystalline::Enum
11
+ class InvoicePaymentType < T::Enum
13
12
  enums do
14
13
  TRANSFER = new('transfer')
15
14
  EXTERNAL = new('external')
16
15
  end
17
- open!
18
16
  end
19
17
  end
20
18
  end
@@ -8,8 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class InvoiceStatus
12
- include ::Crystalline::Enum
11
+ class InvoiceStatus < T::Enum
13
12
  enums do
14
13
  DRAFT = new('draft')
15
14
  UNPAID = new('unpaid')
@@ -18,7 +17,6 @@ module Moov
18
17
  OVERDUE = new('overdue')
19
18
  CANCELED = new('canceled')
20
19
  end
21
- open!
22
20
  end
23
21
  end
24
22
  end
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :issued_card_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuedCardID'), required: true } }
17
17
  # The card brand.
18
- field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, false) } }
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
19
 
20
20
  field :last_four_card_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber'), required: true } }
21
21
  # The expiration date of the card or token.
@@ -25,9 +25,8 @@ module Moov
25
25
  # The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
26
26
  #
27
27
  # - `active`: The card is operational and can approve authorizations.
28
- # - `frozen`: The card is temporarily suspended and cannot approve authorizations. A frozen card can be reactivated by setting its state back to `active`.
29
28
  # - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
30
- field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardState, false) } }
29
+ field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardState, false) } }
31
30
  # Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
32
31
  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) } }
33
32
 
@@ -42,10 +41,10 @@ module Moov
42
41
  field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
43
42
  # Billing address associated with the card.
44
43
  field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
45
- # Spend controls applied to an issued card, including velocity runtime state.
46
- field :controls, Crystalline::Nilable.new(Models::Components::IssuedControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
47
44
 
48
- sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, updated_on: ::DateTime, 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), controls: T.nilable(Models::Components::IssuedControls)).void }
45
+ field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
46
+
47
+ sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, updated_on: ::DateTime, 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), controls: T.nilable(Models::Components::IssuingControls)).void }
49
48
  def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:, updated_on:, authorized_user_account_id: nil, nickname: nil, metadata: nil, billing_address: nil, controls: nil)
50
49
  @issued_card_id = issued_card_id
51
50
  @brand = brand
@@ -19,11 +19,11 @@ module Moov
19
19
 
20
20
  field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
21
21
  # The name of the network a card transaction is routed through.
22
- field :network, Models::Components::CardIssuingNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardIssuingNetwork, false) } }
22
+ field :network, Models::Components::CardIssuingNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardIssuingNetwork, false) } }
23
23
  # A decimal-formatted numerical string that represents up to 2 decimal place precision. In USD for example, 12.34 is $12.34 and 0.99 is $0.99.
24
24
  field :authorized_amount, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedAmount'), required: true } }
25
25
  # Status of a card issuing authorization.
26
- field :status, Models::Components::IssuingAuthorizationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingAuthorizationStatus, false) } }
26
+ field :status, Models::Components::IssuingAuthorizationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuingAuthorizationStatus, false) } }
27
27
 
28
28
  field :merchant_data, Models::Components::IssuingMerchantData, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantData'), required: true } }
29
29
 
@@ -15,11 +15,11 @@ module Moov
15
15
  # The identifier for this event. Use the `eventType` field to determine what resource is identified by this ID (`authorization`, `reversal`, etc.).
16
16
  field :event_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventID'), required: true } }
17
17
  # The type of event that occurred on the card.
18
- field :event_type, Models::Components::IssuedCardEventType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardEventType, false) } }
18
+ field :event_type, Models::Components::IssuedCardEventType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardEventType, false) } }
19
19
  # A decimal-formatted numerical string that represents up to 2 decimal place precision. In USD for example, 12.34 is $12.34 and 0.99 is $0.99.
20
20
  field :amount, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
21
21
  # The result of an event.
22
- field :result, Models::Components::IssuedCardAuthorizationEventResult, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('result'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardAuthorizationEventResult, false) } }
22
+ field :result, Models::Components::IssuedCardAuthorizationEventResult, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('result'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardAuthorizationEventResult, false) } }
23
23
 
24
24
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
25
25
 
@@ -8,14 +8,12 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # IssuedCardAuthorizationEventResult - The result of an event.
11
- class IssuedCardAuthorizationEventResult
12
- include ::Crystalline::Enum
11
+ class IssuedCardAuthorizationEventResult < T::Enum
13
12
  enums do
14
13
  APPROVED = new('approved')
15
14
  DECLINED = new('declined')
16
15
  PROCESSED = new('processed')
17
16
  end
18
- open!
19
17
  end
20
18
  end
21
19
  end
@@ -8,8 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # IssuedCardEventType - The type of event that occurred on the card.
11
- class IssuedCardEventType
12
- include ::Crystalline::Enum
11
+ class IssuedCardEventType < T::Enum
13
12
  enums do
14
13
  AUTHORIZATION = new('authorization')
15
14
  REVERSAL = new('reversal')
@@ -18,7 +17,6 @@ module Moov
18
17
  AUTHORIZATION_INCREMENTAL = new('authorization-incremental')
19
18
  CLEARING = new('clearing')
20
19
  end
21
- open!
22
20
  end
23
21
  end
24
22
  end
@@ -10,16 +10,12 @@ module Moov
10
10
  # IssuedCardState - The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
11
11
  #
12
12
  # - `active`: The card is operational and can approve authorizations.
13
- # - `frozen`: The card is temporarily suspended and cannot approve authorizations. A frozen card can be reactivated by setting its state back to `active`.
14
13
  # - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
15
- class IssuedCardState
16
- include ::Crystalline::Enum
14
+ class IssuedCardState < T::Enum
17
15
  enums do
18
16
  ACTIVE = new('active')
19
- FROZEN = new('frozen')
20
17
  CLOSED = new('closed')
21
18
  end
22
- open!
23
19
  end
24
20
  end
25
21
  end
@@ -8,8 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # IssuingAuthorizationStatus - Status of a card issuing authorization.
11
- class IssuingAuthorizationStatus
12
- include ::Crystalline::Enum
11
+ class IssuingAuthorizationStatus < T::Enum
13
12
  enums do
14
13
  PENDING = new('pending')
15
14
  DECLINED = new('declined')
@@ -17,7 +16,6 @@ module Moov
17
16
  CLEARED = new('cleared')
18
17
  EXPIRED = new('expired')
19
18
  end
20
- open!
21
19
  end
22
20
  end
23
21
  end
@@ -7,7 +7,7 @@
7
7
  module Moov
8
8
  module Models
9
9
  module Components
10
- # Mutable spend controls for the card.
10
+
11
11
  class IssuingControls
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
@@ -16,23 +16,11 @@ module Moov
16
16
  field :single_use, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('singleUse') } }
17
17
  # Sets the spending limit per time interval. Only one limit per interval is supported.
18
18
  field :velocity_limits, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuingVelocityLimit)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('velocityLimits') } }
19
- # Restricts card usage by merchant category. When not set, all categories are allowed.
20
- field :merchant_category_restrictions, Crystalline::Nilable.new(Models::Components::MerchantCategoryRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantCategoryRestrictions') } }
21
- # Restricts card usage to specific merchants, independent of merchant category.
22
- field :merchant_restrictions, Crystalline::Nilable.new(Models::Components::MerchantRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantRestrictions') } }
23
-
24
- field :allowed_schedule, Crystalline::Nilable.new(Models::Components::IssuingControlsAllowedSchedule), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSchedule') } }
25
- # A spend cutoff date and time. When set, all authorizations after this datetime are declined regardless of other controls. Set to `null` for no cutoff.
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
19
 
28
- sig { params(single_use: T.nilable(T::Boolean), velocity_limits: T.nilable(T::Array[Models::Components::IssuingVelocityLimit]), merchant_category_restrictions: T.nilable(Models::Components::MerchantCategoryRestrictions), merchant_restrictions: T.nilable(Models::Components::MerchantRestrictions), allowed_schedule: T.nilable(Models::Components::IssuingControlsAllowedSchedule), expires_on: T.nilable(::DateTime)).void }
29
- def initialize(single_use: nil, velocity_limits: nil, merchant_category_restrictions: nil, merchant_restrictions: nil, allowed_schedule: nil, expires_on: nil)
20
+ sig { params(single_use: T.nilable(T::Boolean), velocity_limits: T.nilable(T::Array[Models::Components::IssuingVelocityLimit])).void }
21
+ def initialize(single_use: nil, velocity_limits: nil)
30
22
  @single_use = single_use
31
23
  @velocity_limits = velocity_limits
32
- @merchant_category_restrictions = merchant_category_restrictions
33
- @merchant_restrictions = merchant_restrictions
34
- @allowed_schedule = allowed_schedule
35
- @expires_on = expires_on
36
24
  end
37
25
 
38
26
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -40,10 +28,6 @@ module Moov
40
28
  return false unless other.is_a? self.class
41
29
  return false unless @single_use == other.single_use
42
30
  return false unless @velocity_limits == other.velocity_limits
43
- return false unless @merchant_category_restrictions == other.merchant_category_restrictions
44
- return false unless @merchant_restrictions == other.merchant_restrictions
45
- return false unless @allowed_schedule == other.allowed_schedule
46
- return false unless @expires_on == other.expires_on
47
31
  true
48
32
  end
49
33
  end
@@ -12,12 +12,4 @@ class Moov::Models::Components::IssuingControls
12
12
  def single_use=(str_); end
13
13
  def velocity_limits(); end
14
14
  def velocity_limits=(str_); end
15
- def merchant_category_restrictions(); end
16
- def merchant_category_restrictions=(str_); end
17
- def merchant_restrictions(); end
18
- def merchant_restrictions=(str_); end
19
- def allowed_schedule(); end
20
- def allowed_schedule=(str_); end
21
- def expires_on(); end
22
- def expires_on=(str_); end
23
15
  end
@@ -15,31 +15,15 @@ module Moov
15
15
 
16
16
  field :velocity_limits, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::IssuingVelocityLimitError)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('velocityLimits') } }
17
17
 
18
- field :merchant_category_restrictions, Crystalline::Nilable.new(Models::Components::MerchantCategoryRestrictionsError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantCategoryRestrictions') } }
19
-
20
- field :merchant_restrictions, Crystalline::Nilable.new(Models::Components::MerchantRestrictionsError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantRestrictions') } }
21
-
22
- field :allowed_schedule, Crystalline::Nilable.new(Models::Components::AllowedScheduleError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSchedule') } }
23
-
24
- field :expires_on, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn') } }
25
-
26
- sig { params(velocity_limits: T.nilable(T::Hash[Symbol, Models::Components::IssuingVelocityLimitError]), merchant_category_restrictions: T.nilable(Models::Components::MerchantCategoryRestrictionsError), merchant_restrictions: T.nilable(Models::Components::MerchantRestrictionsError), allowed_schedule: T.nilable(Models::Components::AllowedScheduleError), expires_on: T.nilable(::String)).void }
27
- def initialize(velocity_limits: nil, merchant_category_restrictions: nil, merchant_restrictions: nil, allowed_schedule: nil, expires_on: nil)
18
+ sig { params(velocity_limits: T.nilable(T::Hash[Symbol, Models::Components::IssuingVelocityLimitError])).void }
19
+ def initialize(velocity_limits: nil)
28
20
  @velocity_limits = velocity_limits
29
- @merchant_category_restrictions = merchant_category_restrictions
30
- @merchant_restrictions = merchant_restrictions
31
- @allowed_schedule = allowed_schedule
32
- @expires_on = expires_on
33
21
  end
34
22
 
35
23
  sig { params(other: T.untyped).returns(T::Boolean) }
36
24
  def ==(other)
37
25
  return false unless other.is_a? self.class
38
26
  return false unless @velocity_limits == other.velocity_limits
39
- return false unless @merchant_category_restrictions == other.merchant_category_restrictions
40
- return false unless @merchant_restrictions == other.merchant_restrictions
41
- return false unless @allowed_schedule == other.allowed_schedule
42
- return false unless @expires_on == other.expires_on
43
27
  true
44
28
  end
45
29
  end
@@ -10,12 +10,4 @@ end
10
10
  class Moov::Models::Components::IssuingControlsError
11
11
  def velocity_limits(); end
12
12
  def velocity_limits=(str_); end
13
- def merchant_category_restrictions(); end
14
- def merchant_category_restrictions=(str_); end
15
- def merchant_restrictions(); end
16
- def merchant_restrictions=(str_); end
17
- def allowed_schedule(); end
18
- def allowed_schedule=(str_); end
19
- def expires_on(); end
20
- def expires_on=(str_); end
21
13
  end
@@ -7,16 +7,11 @@
7
7
  module Moov
8
8
  module Models
9
9
  module Components
10
- # IssuingIntervalLimit - Specifies the time frame for a velocity limit. `per-transaction` applies to each individual authorization and never resets. Time-based intervals (where supported) reset at midnight ET.
11
- class IssuingIntervalLimit
12
- include ::Crystalline::Enum
10
+ # IssuingIntervalLimit - Specifies the time frame for the velocity limit. Currently supports only per-transaction limits.
11
+ class IssuingIntervalLimit < T::Enum
13
12
  enums do
14
13
  PER_TRANSACTION = new('per-transaction')
15
- DAILY = new('daily')
16
- WEEKLY = new('weekly')
17
- MONTHLY = new('monthly')
18
14
  end
19
- open!
20
15
  end
21
16
  end
22
17
  end
@@ -12,26 +12,22 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # Specifies the time frame for a velocity limit. `per-transaction` applies to each individual authorization and never resets. Time-based intervals (where supported) reset at midnight ET.
16
- field :interval, Models::Components::IssuingIntervalLimit, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('interval'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingIntervalLimit, false) } }
17
15
  # The maximum amount in cents that can be spent in a given interval.
18
- field :amount, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
19
- # The maximum number of transactions allowed in the given interval. At least one of `amount` or `count` must be set.
20
- field :count, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count') } }
16
+ field :amount, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
17
+ # Specifies the time frame for the velocity limit. Currently supports only per-transaction limits.
18
+ field :interval, Models::Components::IssuingIntervalLimit, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('interval'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuingIntervalLimit, false) } }
21
19
 
22
- sig { params(interval: Models::Components::IssuingIntervalLimit, amount: T.nilable(::Integer), count: T.nilable(::Integer)).void }
23
- def initialize(interval:, amount: nil, count: nil)
24
- @interval = interval
20
+ sig { params(amount: ::Integer, interval: Models::Components::IssuingIntervalLimit).void }
21
+ def initialize(amount:, interval:)
25
22
  @amount = amount
26
- @count = count
23
+ @interval = interval
27
24
  end
28
25
 
29
26
  sig { params(other: T.untyped).returns(T::Boolean) }
30
27
  def ==(other)
31
28
  return false unless other.is_a? self.class
32
- return false unless @interval == other.interval
33
29
  return false unless @amount == other.amount
34
- return false unless @count == other.count
30
+ return false unless @interval == other.interval
35
31
  true
36
32
  end
37
33
  end
@@ -8,10 +8,8 @@ end
8
8
 
9
9
 
10
10
  class Moov::Models::Components::IssuingVelocityLimit
11
- def interval(); end
12
- def interval=(str_); end
13
11
  def amount(); end
14
12
  def amount=(str_); end
15
- def count(); end
16
- def count=(str_); end
13
+ def interval(); end
14
+ def interval=(str_); end
17
15
  end
@@ -15,14 +15,11 @@ module Moov
15
15
 
16
16
  field :amount, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
17
17
 
18
- field :count, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count') } }
19
-
20
18
  field :interval, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('interval') } }
21
19
 
22
- sig { params(amount: T.nilable(::String), count: T.nilable(::String), interval: T.nilable(::String)).void }
23
- def initialize(amount: nil, count: nil, interval: nil)
20
+ sig { params(amount: T.nilable(::String), interval: T.nilable(::String)).void }
21
+ def initialize(amount: nil, interval: nil)
24
22
  @amount = amount
25
- @count = count
26
23
  @interval = interval
27
24
  end
28
25
 
@@ -30,7 +27,6 @@ module Moov
30
27
  def ==(other)
31
28
  return false unless other.is_a? self.class
32
29
  return false unless @amount == other.amount
33
- return false unless @count == other.count
34
30
  return false unless @interval == other.interval
35
31
  true
36
32
  end
@@ -10,8 +10,6 @@ end
10
10
  class Moov::Models::Components::IssuingVelocityLimitError
11
11
  def amount(); end
12
12
  def amount=(str_); end
13
- def count(); end
14
- def count=(str_); end
15
13
  def interval(); end
16
14
  def interval=(str_); end
17
15
  end
@@ -15,7 +15,7 @@ module Moov
15
15
  # The cryptographic algorithm family used with the key (e.g., 'RSA', 'EC', 'oct').
16
16
  field :kty, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('kty'), required: true } }
17
17
  # The intended use of the key. 'sig' for signature, 'enc' for encryption.
18
- field :use, Crystalline::Nilable.new(Models::Components::Use), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('use'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Use, true) } }
18
+ field :use, Crystalline::Nilable.new(Models::Components::Use), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('use'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::Use, true) } }
19
19
  # The permitted operations for the key, e.g., 'sign', 'verify', 'encrypt', 'decrypt'.
20
20
  field :key_ops, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('key_ops') } }
21
21
  # The algorithm intended for use with the key, e.g., 'RS256' or 'ES256'.
@@ -15,7 +15,7 @@ module Moov
15
15
  # The new payment method's ID.
16
16
  field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
17
  # The payment method type that represents a payment rail and directionality
18
- field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PaymentMethodType, false) } }
18
+ field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::PaymentMethodType, false) } }
19
19
  # Describes an Apple Pay token on a Moov account.
20
20
  field :apple_pay, Models::Components::ApplePayResponse, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applePay'), required: true } }
21
21
 
@@ -15,7 +15,7 @@ module Moov
15
15
  # The new payment method's ID.
16
16
  field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
17
  # The payment method type that represents a payment rail and directionality
18
- field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PaymentMethodType, false) } }
18
+ field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::PaymentMethodType, false) } }
19
19
  # Describes a Google Pay token on a Moov account.
20
20
  field :google_pay, Models::Components::GooglePayResponse, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('googlePay'), required: true } }
21
21
 
@@ -8,13 +8,11 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # Mode - The operating mode for an account.
11
- class Mode
12
- include ::Crystalline::Enum
11
+ class Mode < T::Enum
13
12
  enums do
14
13
  SANDBOX = new('sandbox')
15
14
  PRODUCTION = new('production')
16
15
  end
17
- open!
18
16
  end
19
17
  end
20
18
  end
@@ -8,8 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # MonthlyVolumeRange - The low value in each range is included. The high value in each range is excluded.
11
- class MonthlyVolumeRange
12
- include ::Crystalline::Enum
11
+ class MonthlyVolumeRange < T::Enum
13
12
  enums do
14
13
  UNDER_10K = new('under-10k')
15
14
  TENK_50K = new('10k-50k')
@@ -20,7 +19,6 @@ module Moov
20
19
  ONEM_5M = new('1m-5m')
21
20
  OVER_5M = new('over-5m')
22
21
  end
23
- open!
24
22
  end
25
23
  end
26
24
  end
@@ -15,7 +15,7 @@ module Moov
15
15
  # ID of the account that fees were charged to.
16
16
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
17
17
  # Indicates whether the account charged was the partner, source, or destination of the transfer.
18
- field :transfer_party, Models::Components::TransferParty, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferParty'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferParty, false) } }
18
+ field :transfer_party, Models::Components::TransferParty, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferParty'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferParty, false) } }
19
19
  # The total amount of fees charged to the account.
20
20
  field :total_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('totalAmount'), required: true } }
21
21
  # List of fee IDs that sum to the totalAmount.
@@ -21,7 +21,7 @@ module Moov
21
21
 
22
22
  field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
23
23
  # Sandbox or production account mode of this schedule.
24
- field :mode, Crystalline::Nilable.new(Models::Components::Mode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, true) } }
24
+ 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) } }
25
25
  # True if this was generated by a RRule.
26
26
  field :generated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('generated') } }
27
27
  # True if the RRule set runs indefinitely.
@@ -33,7 +33,7 @@ module Moov
33
33
 
34
34
  field :ran_transfer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('ranTransferID') } }
35
35
  # Status of the completed occurrence.
36
- field :status, Crystalline::Nilable.new(Models::Components::OccurrenceStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::OccurrenceStatus, true) } }
36
+ field :status, Crystalline::Nilable.new(Models::Components::OccurrenceStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::OccurrenceStatus, true) } }
37
37
  # Contains details on why the occurrence errored.
38
38
  field :error, Crystalline::Nilable.new(Models::Components::OccurrencesResponseError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('error') } }
39
39
 
@@ -8,14 +8,12 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # OccurrenceStatus - Status of the completed occurrence.
11
- class OccurrenceStatus
12
- include ::Crystalline::Enum
11
+ class OccurrenceStatus < T::Enum
13
12
  enums do
14
13
  PENDING = new('pending')
15
14
  FAILED = new('failed')
16
15
  COMPLETED = new('completed')
17
16
  end
18
- open!
19
17
  end
20
18
  end
21
19
  end