moov_ruby 26.7.1 → 26.7.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 (301) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/module.rb +1 -1
  3. data/lib/moov/card_issuing.rb +1 -1
  4. data/lib/moov/images.rb +1 -1
  5. data/lib/moov/institutions.rb +1 -1
  6. data/lib/moov/models/components/account.rb +2 -2
  7. data/lib/moov/models/components/accountnameverification.rb +4 -4
  8. data/lib/moov/models/components/accounttype.rb +3 -1
  9. data/lib/moov/models/components/accountverificationstatus.rb +3 -1
  10. data/lib/moov/models/components/achreturncode.rb +3 -1
  11. data/lib/moov/models/components/achtransactiondetails.rb +3 -3
  12. data/lib/moov/models/components/achtransactionstatus.rb +3 -1
  13. data/lib/moov/models/components/adjustmentfees.rb +11 -15
  14. data/lib/moov/models/components/adjustmentfees.rbi +4 -4
  15. data/lib/moov/models/components/amountdecimalrange.rb +0 -2
  16. data/lib/moov/models/components/amountdecimalrangeupdate.rb +0 -2
  17. data/lib/moov/models/components/applepayresponse.rb +2 -2
  18. data/lib/moov/models/components/applicationscope.rb +4 -2
  19. data/lib/moov/models/components/authmethod.rb +3 -1
  20. data/lib/moov/models/components/bankaccount.rb +4 -4
  21. data/lib/moov/models/components/bankaccountexception.rb +2 -2
  22. data/lib/moov/models/components/bankaccountholdertype.rb +3 -1
  23. data/lib/moov/models/components/bankaccountintegration.rb +2 -2
  24. data/lib/moov/models/components/bankaccountstatus.rb +3 -1
  25. data/lib/moov/models/components/bankaccountstatusreason.rb +3 -1
  26. data/lib/moov/models/components/bankaccounttype.rb +3 -1
  27. data/lib/moov/models/components/bankaccountverification.rb +2 -2
  28. data/lib/moov/models/components/bankaccountverificationcreated.rb +2 -2
  29. data/lib/moov/models/components/bankaccountverificationmethod.rb +3 -1
  30. data/lib/moov/models/components/bankaccountverificationstatus.rb +3 -1
  31. data/lib/moov/models/components/basicpaymentmethod.rb +1 -1
  32. data/lib/moov/models/components/billablefee.rb +2 -2
  33. data/lib/moov/models/components/billingadjustment.rb +40 -0
  34. data/lib/moov/models/components/billingadjustment.rbi +17 -0
  35. data/lib/moov/models/components/billingsummary.rb +8 -4
  36. data/lib/moov/models/components/billingsummary.rbi +2 -0
  37. data/lib/moov/models/components/billingsummary_adjustmentfees.rb +40 -0
  38. data/lib/moov/models/components/billingsummary_adjustmentfees.rbi +15 -0
  39. data/lib/moov/models/components/businesspresence.rb +3 -1
  40. data/lib/moov/models/components/businessprofile.rb +2 -2
  41. data/lib/moov/models/components/businesstype.rb +3 -1
  42. data/lib/moov/models/components/calltoaction.rb +3 -1
  43. data/lib/moov/models/components/cancellation.rb +2 -2
  44. data/lib/moov/models/components/cancellationstatus.rb +3 -1
  45. data/lib/moov/models/components/capability.rb +2 -2
  46. data/lib/moov/models/components/capabilityid.rb +3 -1
  47. data/lib/moov/models/components/capabilitystatus.rb +3 -1
  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 +3 -1
  51. data/lib/moov/models/components/cardacquiringrefund.rb +1 -1
  52. data/lib/moov/models/components/cardbrand.rb +3 -1
  53. data/lib/moov/models/components/cardissuingnetwork.rb +3 -1
  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 +3 -1
  57. data/lib/moov/models/components/cardtransactionstatus.rb +3 -1
  58. data/lib/moov/models/components/cardtype.rb +3 -1
  59. data/lib/moov/models/components/cardupdatereason.rb +3 -1
  60. data/lib/moov/models/components/cardverification.rb +3 -3
  61. data/lib/moov/models/components/cardverificationresult.rb +3 -1
  62. data/lib/moov/models/components/collectfundscardpayments.rb +1 -1
  63. data/lib/moov/models/components/collectionpaymentmethodtype.rb +3 -1
  64. data/lib/moov/models/components/createaccount.rb +2 -2
  65. data/lib/moov/models/components/createaccounttype.rb +3 -1
  66. data/lib/moov/models/components/createbusinessprofile.rb +2 -2
  67. data/lib/moov/models/components/createdtransfer.rb +6 -3
  68. data/lib/moov/models/components/createevidencetext.rb +1 -1
  69. data/lib/moov/models/components/createfeeplanagreement.rb +13 -3
  70. data/lib/moov/models/components/createfeeplanagreement.rbi +2 -0
  71. data/lib/moov/models/components/createpaymentlink.rb +1 -1
  72. data/lib/moov/models/components/createrefund.rb +1 -1
  73. data/lib/moov/models/components/createreversal.rb +4 -1
  74. data/lib/moov/models/components/createsweepconfig.rb +1 -1
  75. data/lib/moov/models/components/createterminalapplication.rb +1 -1
  76. data/lib/moov/models/components/createtippresets.rb +1 -1
  77. data/lib/moov/models/components/createtransfer.rb +1 -1
  78. data/lib/moov/models/components/createtransfersourceach.rb +2 -2
  79. data/lib/moov/models/components/createtransfersourcecard.rb +1 -1
  80. data/lib/moov/models/components/createwebhook.rb +1 -1
  81. data/lib/moov/models/components/debitholdperiod.rb +3 -1
  82. data/lib/moov/models/components/depositaccountingestedresponse.rb +1 -1
  83. data/lib/moov/models/components/disbursementpaymentmethodtype.rb +3 -1
  84. data/lib/moov/models/components/dispute.rb +2 -2
  85. data/lib/moov/models/components/disputeevidenceresponse.rb +1 -1
  86. data/lib/moov/models/components/disputephase.rb +3 -1
  87. data/lib/moov/models/components/disputestatus.rb +3 -1
  88. data/lib/moov/models/components/document.rb +1 -1
  89. data/lib/moov/models/components/documenttype.rb +3 -1
  90. data/lib/moov/models/components/domesticpullfromcard.rb +3 -1
  91. data/lib/moov/models/components/domesticpushtocard.rb +3 -1
  92. data/lib/moov/models/components/estimatedactivity.rb +1 -1
  93. data/lib/moov/models/components/evidencetextresponse.rb +1 -1
  94. data/lib/moov/models/components/evidencetype.rb +3 -1
  95. data/lib/moov/models/components/evidenceuploadresponse.rb +1 -1
  96. data/lib/moov/models/components/facilitatorfee.rb +2 -2
  97. data/lib/moov/models/components/feecategory.rb +3 -1
  98. data/lib/moov/models/components/feemodel.rb +3 -1
  99. data/lib/moov/models/components/feepaidby.rb +4 -2
  100. data/lib/moov/models/components/feeplan.rb +1 -1
  101. data/lib/moov/models/components/feeplanagreement.rb +12 -4
  102. data/lib/moov/models/components/feeplanagreement.rbi +4 -0
  103. data/lib/moov/models/components/feeplanagreementstatus.rb +3 -1
  104. data/lib/moov/models/components/filedetails.rb +2 -2
  105. data/lib/moov/models/components/filepurpose.rb +3 -1
  106. data/lib/moov/models/components/filestatus.rb +3 -1
  107. data/lib/moov/models/components/fulfillment.rb +2 -2
  108. data/lib/moov/models/components/fulfillmentdetails.rb +1 -1
  109. data/lib/moov/models/components/fulfillmentmethod.rb +3 -1
  110. data/lib/moov/models/components/fulfillmenttimeframe.rb +3 -1
  111. data/lib/moov/models/components/fullissuedcard.rb +3 -2
  112. data/lib/moov/models/components/geographicreach.rb +3 -1
  113. data/lib/moov/models/components/googlepayresponse.rb +3 -3
  114. data/lib/moov/models/components/incurredfee.rb +1 -1
  115. data/lib/moov/models/components/instantbankfailurecode.rb +3 -1
  116. data/lib/moov/models/components/instantbanknetwork.rb +3 -1
  117. data/lib/moov/models/components/instantbanktransactiondetails.rb +3 -3
  118. data/lib/moov/models/components/instantbanktransactionstatus.rb +3 -1
  119. data/lib/moov/models/components/invoice.rb +1 -1
  120. data/lib/moov/models/components/invoicepayment.rb +1 -1
  121. data/lib/moov/models/components/invoicepaymenttype.rb +3 -1
  122. data/lib/moov/models/components/invoicestatus.rb +3 -1
  123. data/lib/moov/models/components/issuedcard.rb +3 -2
  124. data/lib/moov/models/components/issuedcardauthorization.rb +2 -2
  125. data/lib/moov/models/components/issuedcardauthorizationevent.rb +2 -2
  126. data/lib/moov/models/components/issuedcardauthorizationeventresult.rb +3 -1
  127. data/lib/moov/models/components/issuedcardeventtype.rb +3 -1
  128. data/lib/moov/models/components/issuedcardstate.rb +5 -1
  129. data/lib/moov/models/components/issuedcontrols.rb +2 -2
  130. data/lib/moov/models/components/issuedvelocitylimit.rb +1 -1
  131. data/lib/moov/models/components/issuingauthorizationstatus.rb +3 -1
  132. data/lib/moov/models/components/issuingcontrols.rb +3 -3
  133. data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +1 -1
  134. data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +4 -2
  135. data/lib/moov/models/components/issuingintervallimit.rb +3 -1
  136. data/lib/moov/models/components/issuingmerchantcategory.rb +3 -1
  137. data/lib/moov/models/components/issuingvelocitylimit.rb +1 -1
  138. data/lib/moov/models/components/jsonwebkey.rb +1 -1
  139. data/lib/moov/models/components/linkedapplepaypaymentmethod.rb +1 -1
  140. data/lib/moov/models/components/linkedgooglepaypaymentmethod.rb +1 -1
  141. data/lib/moov/models/components/merchantcategory.rb +1 -1
  142. data/lib/moov/models/components/merchantcategoryrestrictions.rb +3 -3
  143. data/lib/moov/models/components/merchantentry.rb +6 -6
  144. data/lib/moov/models/components/merchantentry.rbi +2 -2
  145. data/lib/moov/models/components/merchantentryerror.rb +5 -5
  146. data/lib/moov/models/components/merchantentryerror.rbi +2 -2
  147. data/lib/moov/models/components/merchantrestrictions.rb +2 -2
  148. data/lib/moov/models/components/mode.rb +3 -1
  149. data/lib/moov/models/components/monthlyvolumerange.rb +3 -1
  150. data/lib/moov/models/components/moovfee.rb +1 -1
  151. data/lib/moov/models/components/occurrencesresponse.rb +2 -2
  152. data/lib/moov/models/components/occurrencestatus.rb +3 -1
  153. data/lib/moov/models/components/onboardingpartneraccount.rb +1 -1
  154. data/lib/moov/models/components/partnerpricingagreement.rb +15 -7
  155. data/lib/moov/models/components/partnerpricingagreement.rbi +4 -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 +4 -6
  159. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetails.rb +0 -2
  160. data/lib/moov/models/components/paymentlinkcustomamountpaymentdetailsupdate.rb +0 -2
  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 +5 -7
  164. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +5 -7
  165. data/lib/moov/models/components/paymentlinkstatus.rb +3 -1
  166. data/lib/moov/models/components/paymentlinktype.rb +3 -1
  167. data/lib/moov/models/components/paymentmethodsbankaccount.rb +3 -3
  168. data/lib/moov/models/components/paymentmethodscard.rb +4 -4
  169. data/lib/moov/models/components/paymentmethodswallet.rb +1 -1
  170. data/lib/moov/models/components/paymentmethodtype.rb +3 -1
  171. data/lib/moov/models/components/pendinglitigation.rb +3 -1
  172. data/lib/moov/models/components/primaryregulator.rb +3 -1
  173. data/lib/moov/models/components/pushdeliveryspeed.rb +3 -1
  174. data/lib/moov/models/components/pushoptions.rb +5 -4
  175. data/lib/moov/models/components/pushoptionsupdate.rb +5 -4
  176. data/lib/moov/models/components/puttippresets.rb +1 -1
  177. data/lib/moov/models/components/refundcarddetails.rb +2 -2
  178. data/lib/moov/models/components/refundcardstatus.rb +3 -1
  179. data/lib/moov/models/components/refundpolicy.rb +3 -1
  180. data/lib/moov/models/components/refundstatus.rb +3 -1
  181. data/lib/moov/models/components/requestcard.rb +1 -1
  182. data/lib/moov/models/components/requirementerror.rb +2 -2
  183. data/lib/moov/models/components/requirementerrorcode.rb +3 -1
  184. data/lib/moov/models/components/requirementid.rb +17 -1
  185. data/lib/moov/models/components/resolutionlink.rb +1 -1
  186. data/lib/moov/models/components/resolutionlinkstatus.rb +3 -1
  187. data/lib/moov/models/components/returnpolicytype.rb +3 -1
  188. data/lib/moov/models/components/reversalamountdetails.rb +3 -1
  189. data/lib/moov/models/components/reversedwithcancellation.rb +1 -1
  190. data/lib/moov/models/components/rtprejectioncode.rb +3 -1
  191. data/lib/moov/models/components/schedulelistresponse.rb +1 -1
  192. data/lib/moov/models/components/scheduleresponse.rb +1 -1
  193. data/lib/moov/models/components/seccode.rb +3 -1
  194. data/lib/moov/models/components/sourcesystem.rb +3 -1
  195. data/lib/moov/models/components/statement.rb +6 -2
  196. data/lib/moov/models/components/statement.rbi +2 -0
  197. data/lib/moov/models/components/sweep.rb +1 -1
  198. data/lib/moov/models/components/sweepconfig.rb +3 -3
  199. data/lib/moov/models/components/sweepconfigpaymentmethod.rb +1 -1
  200. data/lib/moov/models/components/sweepconfigstatus.rb +3 -1
  201. data/lib/moov/models/components/sweepstatus.rb +3 -1
  202. data/lib/moov/models/components/sweepsubtotal.rb +1 -1
  203. data/lib/moov/models/components/terminalapplication.rb +2 -2
  204. data/lib/moov/models/components/terminalapplicationplatform.rb +3 -1
  205. data/lib/moov/models/components/terminalapplicationstatus.rb +3 -1
  206. data/lib/moov/models/components/terminalcard.rb +2 -2
  207. data/lib/moov/models/components/ticket.rb +1 -1
  208. data/lib/moov/models/components/ticketstatus.rb +3 -1
  209. data/lib/moov/models/components/tipcalculationbasis.rb +3 -1
  210. data/lib/moov/models/components/tippresets.rb +1 -1
  211. data/lib/moov/models/components/transactionsource.rb +3 -1
  212. data/lib/moov/models/components/transfer.rb +6 -3
  213. data/lib/moov/models/components/transferdestination.rb +1 -1
  214. data/lib/moov/models/components/transferfailurereason.rb +3 -1
  215. data/lib/moov/models/components/transferfeepaidby.rb +2 -2
  216. data/lib/moov/models/components/transferparty.rb +3 -1
  217. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +3 -3
  218. data/lib/moov/models/components/transferpaymentmethodscard.rb +4 -4
  219. data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -1
  220. data/lib/moov/models/components/transferpaymentmethodtype.rb +3 -1
  221. data/lib/moov/models/components/transfersource.rb +1 -1
  222. data/lib/moov/models/components/transferstatus.rb +3 -1
  223. data/lib/moov/models/components/transferterminalcard.rb +2 -2
  224. data/lib/moov/models/components/underwriting.rb +4 -4
  225. data/lib/moov/models/components/underwritingstatus.rb +3 -1
  226. data/lib/moov/models/components/updateevidence.rb +1 -1
  227. data/lib/moov/models/components/updateinvoice.rb +1 -1
  228. data/lib/moov/models/components/updateissuedcard.rb +2 -0
  229. data/lib/moov/models/components/updateissuedcardstate.rb +4 -0
  230. data/lib/moov/models/components/updateissuingcontrols.rb +5 -5
  231. data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +1 -1
  232. data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +3 -3
  233. data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +3 -3
  234. data/lib/moov/models/components/updatepaymentlink.rb +1 -1
  235. data/lib/moov/models/components/updatewebhook.rb +1 -1
  236. data/lib/moov/models/components/upsertunderwriting.rb +3 -3
  237. data/lib/moov/models/components/use.rb +3 -1
  238. data/lib/moov/models/components/verification.rb +3 -3
  239. data/lib/moov/models/components/verificationstatus.rb +3 -1
  240. data/lib/moov/models/components/verificationstatusdetail.rb +3 -1
  241. data/lib/moov/models/components/wallet.rb +2 -2
  242. data/lib/moov/models/components/walletstatus.rb +3 -1
  243. data/lib/moov/models/components/wallettransaction.rb +3 -3
  244. data/lib/moov/models/components/wallettransactionsourcetype.rb +3 -1
  245. data/lib/moov/models/components/wallettransactionstatus.rb +3 -1
  246. data/lib/moov/models/components/wallettransactiontype.rb +3 -1
  247. data/lib/moov/models/components/wallettype.rb +3 -1
  248. data/lib/moov/models/components/webhook.rb +1 -1
  249. data/lib/moov/models/components/webhookdatabankaccountcreated.rb +1 -1
  250. data/lib/moov/models/components/webhookdatabankaccountdeleted.rb +1 -1
  251. data/lib/moov/models/components/webhookdatabankaccountupdated.rb +2 -2
  252. data/lib/moov/models/components/webhookdatacancellationcreated.rb +1 -1
  253. data/lib/moov/models/components/webhookdatacancellationupdated.rb +1 -1
  254. data/lib/moov/models/components/webhookdatacapabilityrequested.rb +1 -1
  255. data/lib/moov/models/components/webhookdatacapabilityupdated.rb +2 -2
  256. data/lib/moov/models/components/webhookdatacardautoupdated.rb +1 -1
  257. data/lib/moov/models/components/webhookdatadisputecreated.rb +2 -2
  258. data/lib/moov/models/components/webhookdatadisputeupdated.rb +2 -2
  259. data/lib/moov/models/components/webhookdatainvoiceupdated.rb +1 -1
  260. data/lib/moov/models/components/webhookdatarefundupdated.rb +1 -1
  261. data/lib/moov/models/components/webhookdatasweepupdated.rb +1 -1
  262. data/lib/moov/models/components/webhookdataterminalapplicationcreated.rb +1 -1
  263. data/lib/moov/models/components/webhookdataterminalapplicationupdated.rb +1 -1
  264. data/lib/moov/models/components/webhookdataticketupdated.rb +1 -1
  265. data/lib/moov/models/components/webhookdatawallettransactionupdated.rb +1 -1
  266. data/lib/moov/models/components/webhookdatawalletupdated.rb +1 -1
  267. data/lib/moov/models/components/webhookevent.rb +1 -1
  268. data/lib/moov/models/components/webhookeventtype.rb +3 -1
  269. data/lib/moov/models/components/webhookstatus.rb +3 -1
  270. data/lib/moov/models/components.rb +3 -1
  271. data/lib/moov/models/errors/cardacquiringrefund_error.rb +1 -1
  272. data/lib/moov/models/errors/transfer_error.rb +6 -3
  273. data/lib/moov/models/operations/listaccounts_request.rb +1 -1
  274. data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rb +1 -1
  275. data/lib/moov/models/operations/listdisputes_request.rb +1 -1
  276. data/lib/moov/models/operations/listfeeplanagreements_request.rb +1 -1
  277. data/lib/moov/models/operations/listfeerevenue_request.rb +1 -1
  278. data/lib/moov/models/operations/listinvoices_request.rb +1 -1
  279. data/lib/moov/models/operations/listissuedcardauthorizationevents_request.rb +1 -1
  280. data/lib/moov/models/operations/listissuedcardauthorizations_request.rb +1 -1
  281. data/lib/moov/models/operations/listissuedcards_request.rb +1 -1
  282. data/lib/moov/models/operations/listissuedcardtransactions_request.rb +7 -3
  283. data/lib/moov/models/operations/listissuedcardtransactions_request.rbi +2 -0
  284. data/lib/moov/models/operations/listpartnerpricingagreements_request.rb +1 -1
  285. data/lib/moov/models/operations/listpaymentlinks_request.rb +1 -1
  286. data/lib/moov/models/operations/listproducts_request.rb +1 -1
  287. data/lib/moov/models/operations/listresidualfees_request.rb +1 -1
  288. data/lib/moov/models/operations/listresiduals_request.rb +1 -1
  289. data/lib/moov/models/operations/listschedules_request.rb +1 -1
  290. data/lib/moov/models/operations/liststatements_request.rb +1 -1
  291. data/lib/moov/models/operations/listsweeps_request.rb +1 -1
  292. data/lib/moov/models/operations/listtickets_request.rb +1 -1
  293. data/lib/moov/models/operations/listtransfers_request.rb +2 -2
  294. data/lib/moov/models/operations/listwallets_request.rb +1 -1
  295. data/lib/moov/models/operations/listwallettransactions_request.rb +1 -1
  296. data/lib/moov/models/operations/retrievefees_request.rb +1 -1
  297. data/lib/moov/sdkconfiguration.rb +3 -3
  298. data/lib/moov/transfers.rb +11 -5
  299. data/lib/moov/utils/retries.rb +41 -2
  300. data/lib/moov/utils/utils.rb +6 -2
  301. metadata +6 -2
@@ -7,15 +7,16 @@
7
7
  module Moov
8
8
  module Models
9
9
  module Components
10
- # Delivery options for push-to-card payouts.
10
+
11
11
  class PushOptions
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # Delivery speeds the recipient may choose from for `push-to-card`. Include `instant` to allow immediate
16
- # delivery, `deferred` to allow delayed delivery, or both to let the recipient choose at checkout.
15
+ # Delivery speeds the recipient may choose from for `push-to-card` and `push-to-apple-pay`.
16
+ # Include `instant` to allow immediate delivery, `deferred` to allow delayed delivery, or both
17
+ # to let the recipient choose at checkout.
17
18
  field :allowed_speeds, Crystalline::Array.new(Models::Components::PushDeliverySpeed), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSpeeds'), required: true } }
18
- # Delay before delivering a deferred `push-to-card` payout. Required when `allowedSpeeds` includes `deferred`.
19
+ # Delay before delivering a deferred payout. Required when `allowedSpeeds` includes `deferred`.
19
20
  # Accepted values are `24h` or `48h`.
20
21
  field :deferred_by, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('deferredBy') } }
21
22
 
@@ -7,15 +7,16 @@
7
7
  module Moov
8
8
  module Models
9
9
  module Components
10
- # Delivery options for push-to-card payouts.
10
+
11
11
  class PushOptionsUpdate
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # Delivery speeds the recipient may choose from for `push-to-card`. Include `instant` to allow immediate
16
- # delivery, `deferred` to allow delayed delivery, or both to let the recipient choose at checkout.
15
+ # Delivery speeds the recipient may choose from for `push-to-card` and `push-to-apple-pay`.
16
+ # Include `instant` to allow immediate delivery, `deferred` to allow delayed delivery, or both
17
+ # to let the recipient choose at checkout.
17
18
  field :allowed_speeds, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::PushDeliverySpeed)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSpeeds') } }
18
- # Delay before delivering a deferred `push-to-card` payout. Required when `allowedSpeeds` includes `deferred`.
19
+ # Delay before delivering a deferred payout. Required when `allowedSpeeds` includes `deferred`.
19
20
  # Accepted values are `24h` or `48h`.
20
21
  field :deferred_by, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('deferredBy') } }
21
22
 
@@ -15,7 +15,7 @@ module Moov
15
15
  # Defines which amount should be used when calculating the final payment total. This calculation applies for percentage tip values.
16
16
  # - `pre-tax`: Tip amounts are calculated using the subtotal amount before taxes
17
17
  # - `post-tax`: Tip amounts are calculated using the subtotal amount + taxes
18
- field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TipCalculationBasis, true) } }
18
+ field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TipCalculationBasis, true) } }
19
19
  # Defines the set of suggested tip preset values presented to customers. Percentages must be between 0 and 100 (exclusive) and must be unique. A maximum of 3 values are allowed.
20
20
  field :percentage_options, Crystalline::Nilable.new(Crystalline::Array.new(::Integer)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('percentageOptions') } }
21
21
  # Defines the set of suggested tip preset values presented to customers. Fixed amounts must be positive and unique. A maximum of 3 values are allowed.
@@ -13,9 +13,9 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
 
16
- field :status, Models::Components::RefundCardStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::RefundCardStatus, false) } }
16
+ field :status, Models::Components::RefundCardStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RefundCardStatus, false) } }
17
17
 
18
- field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
18
+ field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
19
19
 
20
20
  field :initiated_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('initiatedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
21
21
 
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class RefundCardStatus < T::Enum
11
+ class RefundCardStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  INITIATED = new('initiated')
14
15
  CONFIRMED = new('confirmed')
@@ -16,6 +17,7 @@ module Moov
16
17
  FAILED = new('failed')
17
18
  COMPLETED = new('completed')
18
19
  end
20
+ open!
19
21
  end
20
22
  end
21
23
  end
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class RefundPolicy < T::Enum
11
+ class RefundPolicy
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  CONDITIONAL_REFUND = new('conditional-refund')
14
15
  CUSTOM_POLICY = new('custom-policy')
@@ -20,6 +21,7 @@ module Moov
20
21
  PRORATED_REFUND = new('prorated-refund')
21
22
  STORE_CREDIT_ONLY = new('store-credit-only')
22
23
  end
24
+ open!
23
25
  end
24
26
  end
25
27
  end
@@ -8,13 +8,15 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class RefundStatus < T::Enum
11
+ class RefundStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  CREATED = new('created')
14
15
  PENDING = new('pending')
15
16
  COMPLETED = new('completed')
16
17
  FAILED = new('failed')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -22,7 +22,7 @@ module Moov
22
22
  field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
23
23
  # The expiration date of the card or token.
24
24
  field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
25
-
25
+ # Mutable spend controls for the card.
26
26
  field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
27
27
 
28
28
  sig { params(authorized_user_account_id: T.nilable(::String), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::Address), expiration: T.nilable(Models::Components::CardExpiration), controls: T.nilable(Models::Components::IssuingControls)).void }
@@ -13,9 +13,9 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
  # The unique ID of what the requirement is asking to be filled out.
16
- field :requirement, Models::Components::RequirementID, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('requirement'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::RequirementID, false) } }
16
+ field :requirement, Models::Components::RequirementID, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('requirement'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RequirementID, false) } }
17
17
 
18
- field :error_code, Crystalline::Nilable.new(Models::Components::RequirementErrorCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('errorCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::RequirementErrorCode, true) } }
18
+ field :error_code, Crystalline::Nilable.new(Models::Components::RequirementErrorCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('errorCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RequirementErrorCode, true) } }
19
19
 
20
20
  sig { params(requirement: Models::Components::RequirementID, error_code: T.nilable(Models::Components::RequirementErrorCode)).void }
21
21
  def initialize(requirement:, error_code: nil)
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class RequirementErrorCode < T::Enum
11
+ class RequirementErrorCode
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  INVALID_VALUE = new('invalid-value')
14
15
  FAILED_AUTOMATIC_VERIFICATION = new('failed-automatic-verification')
@@ -29,6 +30,7 @@ module Moov
29
30
  DOCUMENT_CORRUPT = new('document-corrupt')
30
31
  DOCUMENT_EXPIRED = new('document-expired')
31
32
  end
33
+ open!
32
34
  end
33
35
  end
34
36
  end
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # RequirementID - The unique ID of what the requirement is asking to be filled out.
11
- class RequirementID < T::Enum
11
+ class RequirementID
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  ACCOUNT_TOS_ACCEPTANCE = new('account.tos-acceptance')
14
15
  INDIVIDUAL_MOBILE = new('individual.mobile')
@@ -105,6 +106,20 @@ module Moov
105
106
  UNDERWRITING_SEND_FUNDS_PUSH_TO_CARD_ESTIMATED_ACTIVITY_MONTHLY_VOLUME_RANGE = new('underwriting.sendFunds.pushToCard.estimatedActivity.monthlyVolumeRange')
106
107
  UNDERWRITING_SEND_FUNDS_PUSH_TO_CARD_FULFILLMENT = new('underwriting.sendFunds.pushToCard.fulfillment')
107
108
  UNDERWRITING_SEND_FUNDS_PUSH_TO_CARD_REFUND_POLICY = new('underwriting.sendFunds.pushToCard.refundPolicy')
109
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_CARD_ACCEPTANCE_METHODS = new('underwriting.sendFunds.instantBank.cardAcceptanceMethods')
110
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_CURRENTLY_ACCEPTS_CARDS = new('underwriting.sendFunds.instantBank.currentlyAcceptsCards')
111
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_ESTIMATED_ACTIVITY_AVERAGE_TRANSACTION_AMOUNT = new('underwriting.sendFunds.instantBank.estimatedActivity.averageTransactionAmount')
112
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_ESTIMATED_ACTIVITY_MAXIMUM_TRANSACTION_AMOUNT = new('underwriting.sendFunds.instantBank.estimatedActivity.maximumTransactionAmount')
113
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_ESTIMATED_ACTIVITY_MONTHLY_VOLUME_RANGE = new('underwriting.sendFunds.instantBank.estimatedActivity.monthlyVolumeRange')
114
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_FULFILLMENT = new('underwriting.sendFunds.instantBank.fulfillment')
115
+ UNDERWRITING_SEND_FUNDS_INSTANT_BANK_REFUND_POLICY = new('underwriting.sendFunds.instantBank.refundPolicy')
116
+ UNDERWRITING_SEND_FUNDS_WIRE_CARD_ACCEPTANCE_METHODS = new('underwriting.sendFunds.wire.cardAcceptanceMethods')
117
+ UNDERWRITING_SEND_FUNDS_WIRE_CURRENTLY_ACCEPTS_CARDS = new('underwriting.sendFunds.wire.currentlyAcceptsCards')
118
+ UNDERWRITING_SEND_FUNDS_WIRE_ESTIMATED_ACTIVITY_AVERAGE_TRANSACTION_AMOUNT = new('underwriting.sendFunds.wire.estimatedActivity.averageTransactionAmount')
119
+ UNDERWRITING_SEND_FUNDS_WIRE_ESTIMATED_ACTIVITY_MAXIMUM_TRANSACTION_AMOUNT = new('underwriting.sendFunds.wire.estimatedActivity.maximumTransactionAmount')
120
+ UNDERWRITING_SEND_FUNDS_WIRE_ESTIMATED_ACTIVITY_MONTHLY_VOLUME_RANGE = new('underwriting.sendFunds.wire.estimatedActivity.monthlyVolumeRange')
121
+ UNDERWRITING_SEND_FUNDS_WIRE_FULFILLMENT = new('underwriting.sendFunds.wire.fulfillment')
122
+ UNDERWRITING_SEND_FUNDS_WIRE_REFUND_POLICY = new('underwriting.sendFunds.wire.refundPolicy')
108
123
  UNDERWRITING_MONEY_TRANSFER_PULL_FROM_CARD_CARD_ACCEPTANCE_METHODS = new('underwriting.moneyTransfer.pullFromCard.cardAcceptanceMethods')
109
124
  UNDERWRITING_MONEY_TRANSFER_PULL_FROM_CARD_CURRENTLY_ACCEPTS_CARDS = new('underwriting.moneyTransfer.pullFromCard.currentlyAcceptsCards')
110
125
  UNDERWRITING_MONEY_TRANSFER_PULL_FROM_CARD_ESTIMATED_ACTIVITY_AVERAGE_TRANSACTION_AMOUNT = new('underwriting.moneyTransfer.pullFromCard.estimatedActivity.averageTransactionAmount')
@@ -120,6 +135,7 @@ module Moov
120
135
  UNDERWRITING_MONEY_TRANSFER_PUSH_TO_CARD_FULFILLMENT = new('underwriting.moneyTransfer.pushToCard.fulfillment')
121
136
  UNDERWRITING_MONEY_TRANSFER_PUSH_TO_CARD_REFUND_POLICY = new('underwriting.moneyTransfer.pushToCard.refundPolicy')
122
137
  end
138
+ open!
123
139
  end
124
140
  end
125
141
  end
@@ -23,7 +23,7 @@ module Moov
23
23
  # The URL of the resolution link.
24
24
  field :url, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('url'), required: true } }
25
25
  # The current status of the resolution link.
26
- field :status, Models::Components::ResolutionLinkStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::ResolutionLinkStatus, false) } }
26
+ field :status, Models::Components::ResolutionLinkStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::ResolutionLinkStatus, false) } }
27
27
  # The date and time the resolution link was created.
28
28
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
29
29
  # The date and time the resolution link was last updated.
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # ResolutionLinkStatus - The status of a resolution link.
11
- class ResolutionLinkStatus < T::Enum
11
+ class ResolutionLinkStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  ACTIVE = new('active')
14
15
  SUBMITTED = new('submitted')
@@ -16,6 +17,7 @@ module Moov
16
17
  DISABLED = new('disabled')
17
18
  EXPIRED = new('expired')
18
19
  end
20
+ open!
19
21
  end
20
22
  end
21
23
  end
@@ -8,13 +8,15 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class ReturnPolicyType < T::Enum
11
+ class ReturnPolicyType
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  NONE = new('none')
14
15
  EXCHANGE_ONLY = new('exchangeOnly')
15
16
  WITHIN_THIRTY_DAYS = new('withinThirtyDays')
16
17
  OTHER = new('other')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -12,7 +12,9 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
- # The amount of surcharge to refund. Should be proportionate to the surcharge on the original transfer. This does not reply if the reversal resulted in a cancellation instead of a refund
15
+ # The amount of surcharge to refund.
16
+ # It should be proportional to the surcharge on the original transfer.
17
+ # This field applies only when the reversal results in a refund.
16
18
  field :surcharge, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('surcharge') } }
17
19
 
18
20
  sig { params(surcharge: T.nilable(Models::Components::AmountDecimal)).void }
@@ -12,7 +12,7 @@ module Moov
12
12
  extend T::Sig
13
13
  include Crystalline::MetadataFields
14
14
 
15
-
15
+ # Cancellation of a transfer.
16
16
  field :cancellation, Models::Components::Cancellation, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cancellation'), required: true } }
17
17
 
18
18
  sig { params(cancellation: Models::Components::Cancellation).void }
@@ -16,7 +16,8 @@ module Moov
16
16
  # - AG01: Transactions Forbidden On Account
17
17
  # - AG03: Transaction Type Not Supported
18
18
  # - MD07: Customer Deceased
19
- class RTPRejectionCode < T::Enum
19
+ class RTPRejectionCode
20
+ include ::Crystalline::Enum
20
21
  enums do
21
22
  AC03 = new('AC03')
22
23
  AC04 = new('AC04')
@@ -26,6 +27,7 @@ module Moov
26
27
  AG03 = new('AG03')
27
28
  MD07 = new('MD07')
28
29
  end
30
+ open!
29
31
  end
30
32
  end
31
33
  end
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :destination_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationAccountID'), required: true } }
17
17
  # The operating mode for an account.
18
- field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::Mode, false) } }
18
+ field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, false) } }
19
19
 
20
20
  field :owner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('ownerAccountID'), required: true } }
21
21
 
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :destination_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationAccountID'), required: true } }
17
17
  # The operating mode for an account.
18
- field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::Mode, false) } }
18
+ field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, false) } }
19
19
 
20
20
  field :owner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('ownerAccountID'), required: true } }
21
21
 
@@ -8,13 +8,15 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # SECCode - Code used to identify the ACH authorization method.
11
- class SECCode < T::Enum
11
+ class SECCode
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  WEB = new('WEB')
14
15
  PPD = new('PPD')
15
16
  CCD = new('CCD')
16
17
  TEL = new('TEL')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -11,12 +11,14 @@ module Moov
11
11
  #
12
12
  # The expected format of the request body depends on this value, so it must be supplied
13
13
  # in the `X-Source-System` header on every request.
14
- class SourceSystem < T::Enum
14
+ class SourceSystem
15
+ include ::Crystalline::Enum
15
16
  enums do
16
17
  JH_SILVERLAKE = new('jh_silverlake')
17
18
  JH_CIF2020 = new('jh_cif2020')
18
19
  JH_COREDIRECTOR = new('jh_coredirector')
19
20
  end
21
+ open!
20
22
  end
21
23
  end
22
24
  end
@@ -48,9 +48,11 @@ module Moov
48
48
  field :other_card_fees, Crystalline::Nilable.new(Models::Components::OtherCardFees), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('otherCardFees') } }
49
49
  # Monthly partner costs that are charged separately and not included in residual subtotal (e.g. platform fees, minimums).
50
50
  field :partner_fees, Crystalline::Nilable.new(Models::Components::PartnerFees), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerFees') } }
51
+ # A detailed breakdown of adjustment (correction) fees by fee name.
52
+ field :adjustments, Crystalline::Nilable.new(Models::Components::AdjustmentFees), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('adjustments') } }
51
53
 
52
- sig { params(statement_id: ::String, statement_name: ::String, file_name: ::String, file_size: ::Integer, billing_period_start_date_time: ::DateTime, billing_period_end_date_time: ::DateTime, subscription_i_ds: T::Array[::String], summary: Models::Components::BillingSummary, created_on: ::DateTime, updated_on: ::DateTime, card_acquiring_fees: T.nilable(Models::Components::CardAcquiringFees), ach_fees: T.nilable(Models::Components::ACHFees), instant_payment_fees: T.nilable(Models::Components::InstantPaymentFees), platform_fees: T.nilable(Models::Components::PlatformFees), account_fees: T.nilable(Models::Components::AccountFees), other_card_fees: T.nilable(Models::Components::OtherCardFees), partner_fees: T.nilable(Models::Components::PartnerFees)).void }
53
- def initialize(statement_id:, statement_name:, file_name:, file_size:, billing_period_start_date_time:, billing_period_end_date_time:, subscription_i_ds:, summary:, created_on:, updated_on:, card_acquiring_fees: nil, ach_fees: nil, instant_payment_fees: nil, platform_fees: nil, account_fees: nil, other_card_fees: nil, partner_fees: nil)
54
+ sig { params(statement_id: ::String, statement_name: ::String, file_name: ::String, file_size: ::Integer, billing_period_start_date_time: ::DateTime, billing_period_end_date_time: ::DateTime, subscription_i_ds: T::Array[::String], summary: Models::Components::BillingSummary, created_on: ::DateTime, updated_on: ::DateTime, card_acquiring_fees: T.nilable(Models::Components::CardAcquiringFees), ach_fees: T.nilable(Models::Components::ACHFees), instant_payment_fees: T.nilable(Models::Components::InstantPaymentFees), platform_fees: T.nilable(Models::Components::PlatformFees), account_fees: T.nilable(Models::Components::AccountFees), other_card_fees: T.nilable(Models::Components::OtherCardFees), partner_fees: T.nilable(Models::Components::PartnerFees), adjustments: T.nilable(Models::Components::AdjustmentFees)).void }
55
+ def initialize(statement_id:, statement_name:, file_name:, file_size:, billing_period_start_date_time:, billing_period_end_date_time:, subscription_i_ds:, summary:, created_on:, updated_on:, card_acquiring_fees: nil, ach_fees: nil, instant_payment_fees: nil, platform_fees: nil, account_fees: nil, other_card_fees: nil, partner_fees: nil, adjustments: nil)
54
56
  @statement_id = statement_id
55
57
  @statement_name = statement_name
56
58
  @file_name = file_name
@@ -68,6 +70,7 @@ module Moov
68
70
  @account_fees = account_fees
69
71
  @other_card_fees = other_card_fees
70
72
  @partner_fees = partner_fees
73
+ @adjustments = adjustments
71
74
  end
72
75
 
73
76
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -90,6 +93,7 @@ module Moov
90
93
  return false unless @account_fees == other.account_fees
91
94
  return false unless @other_card_fees == other.other_card_fees
92
95
  return false unless @partner_fees == other.partner_fees
96
+ return false unless @adjustments == other.adjustments
93
97
  true
94
98
  end
95
99
  end
@@ -42,4 +42,6 @@ class Moov::Models::Components::Statement
42
42
  def other_card_fees=(str_); end
43
43
  def partner_fees(); end
44
44
  def partner_fees=(str_); end
45
+ def adjustments(); end
46
+ def adjustments=(str_); end
45
47
  end
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :sweep_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sweepID'), required: true } }
17
17
 
18
- field :status, Models::Components::SweepStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::SweepStatus, false) } }
18
+ field :status, Models::Components::SweepStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::SweepStatus, false) } }
19
19
  # The total net amount of wallet transactions accrued in the sweep.
20
20
  field :accrued_amount, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accruedAmount'), required: true } }
21
21
  # A 3-letter ISO 4217 currency code.
@@ -17,12 +17,12 @@ module Moov
17
17
 
18
18
  field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
19
19
 
20
- field :status, Models::Components::SweepConfigStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::SweepConfigStatus, false) } }
20
+ field :status, Models::Components::SweepConfigStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::SweepConfigStatus, false) } }
21
21
  # The payment method used to push or pull funds to a bank account.
22
- # The push payment method can only be ach-credit-standard, ach-credit-same-day, or rtp-credit. The pull payment method can only be ach-debit-fund.
22
+ # The push payment method can only be ach-credit-standard, ach-credit-same-day, rtp-credit, or instant-bank-credit (API v2026.01.00 and later). The pull payment method can only be ach-debit-fund.
23
23
  field :push_payment_method, Models::Components::SweepConfigPaymentMethod, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushPaymentMethod'), required: true } }
24
24
  # The payment method used to push or pull funds to a bank account.
25
- # The push payment method can only be ach-credit-standard, ach-credit-same-day, or rtp-credit. The pull payment method can only be ach-debit-fund.
25
+ # The push payment method can only be ach-credit-standard, ach-credit-same-day, rtp-credit, or instant-bank-credit (API v2026.01.00 and later). The pull payment method can only be ach-debit-fund.
26
26
  field :pull_payment_method, Models::Components::SweepConfigPaymentMethod, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pullPaymentMethod'), required: true } }
27
27
 
28
28
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
@@ -8,7 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # The payment method used to push or pull funds to a bank account.
11
- # The push payment method can only be ach-credit-standard, ach-credit-same-day, or rtp-credit. The pull payment method can only be ach-debit-fund.
11
+ # The push payment method can only be ach-credit-standard, ach-credit-same-day, rtp-credit, or instant-bank-credit (API v2026.01.00 and later). The pull payment method can only be ach-debit-fund.
12
12
  class SweepConfigPaymentMethod
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
@@ -8,11 +8,13 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class SweepConfigStatus < T::Enum
11
+ class SweepConfigStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  ENABLED = new('enabled')
14
15
  DISABLED = new('disabled')
15
16
  end
17
+ open!
16
18
  end
17
19
  end
18
20
  end
@@ -8,7 +8,8 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class SweepStatus < T::Enum
11
+ class SweepStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  ACCRUING = new('accruing')
14
15
  ACTION_REQUIRED = new('action-required')
@@ -17,6 +18,7 @@ module Moov
17
18
  FAILED = new('failed')
18
19
  PAID = new('paid')
19
20
  end
21
+ open!
20
22
  end
21
23
  end
22
24
  end
@@ -13,7 +13,7 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
  # The type of wallet transaction the subtotal is for.
16
- field :type, Models::Components::WalletTransactionType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::WalletTransactionType, false) } }
16
+ field :type, Models::Components::WalletTransactionType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletTransactionType, false) } }
17
17
  # The number of transactions of this type accrued in the sweep.
18
18
  field :count, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count'), required: true } }
19
19
  # The value of transactions of this type accrued in the sweep.
@@ -15,9 +15,9 @@ module Moov
15
15
  # ID of the terminal application.
16
16
  field :terminal_application_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('terminalApplicationID'), required: true } }
17
17
  # Status of the terminal application.
18
- field :status, Models::Components::TerminalApplicationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TerminalApplicationStatus, false) } }
18
+ field :status, Models::Components::TerminalApplicationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TerminalApplicationStatus, false) } }
19
19
  # Platform of the terminal application.
20
- field :platform, Models::Components::TerminalApplicationPlatform, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('platform'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TerminalApplicationPlatform, false) } }
20
+ field :platform, Models::Components::TerminalApplicationPlatform, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('platform'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TerminalApplicationPlatform, false) } }
21
21
  # The app bundle identifier of the terminal application. Will be returned if platform is `ios`.
22
22
  field :app_bundle_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('appBundleID') } }
23
23
  # The app package name of the terminal application. Will be returned if platform is `android`.
@@ -8,12 +8,14 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # TerminalApplicationPlatform - Platform of the terminal application.
11
- class TerminalApplicationPlatform < T::Enum
11
+ class TerminalApplicationPlatform
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  UNDEFINED = new('undefined')
14
15
  IOS = new('ios')
15
16
  ANDROID = new('android')
16
17
  end
18
+ open!
17
19
  end
18
20
  end
19
21
  end
@@ -8,13 +8,15 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # TerminalApplicationStatus - Status of the terminal application.
11
- class TerminalApplicationStatus < T::Enum
11
+ class TerminalApplicationStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  UNDEFINED = new('undefined')
14
15
  PENDING = new('pending')
15
16
  ENABLED = new('enabled')
16
17
  DISABLED = new('disabled')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -15,11 +15,11 @@ module Moov
15
15
  # How the card information was entered into the point of sale terminal.
16
16
  field :entry_mode, Crystalline::Nilable.new(Models::Components::EntryMode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('entryMode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::EntryMode, true) } }
17
17
  # The card brand.
18
- field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardBrand, true) } }
18
+ field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, true) } }
19
19
 
20
20
  field :bin, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin') } }
21
21
  # The type of the card.
22
- field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardType, true) } }
22
+ field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardType, true) } }
23
23
  # The expiration date of the card or token.
24
24
  field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
25
25
  # Uniquely identifies a linked payment card or token.
@@ -21,7 +21,7 @@ module Moov
21
21
 
22
22
  field :contact, Models::Components::TicketContact, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('contact'), required: true } }
23
23
 
24
- field :status, Models::Components::TicketStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TicketStatus, false) } }
24
+ field :status, Models::Components::TicketStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TicketStatus, false) } }
25
25
 
26
26
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
27
27
 
@@ -8,13 +8,15 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
 
11
- class TicketStatus < T::Enum
11
+ class TicketStatus
12
+ include ::Crystalline::Enum
12
13
  enums do
13
14
  NEW = new('new')
14
15
  IN_PROGRESS = new('in-progress')
15
16
  ON_HOLD = new('on-hold')
16
17
  CLOSED = new('closed')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -10,11 +10,13 @@ module Moov
10
10
  # TipCalculationBasis - Defines which amount should be used when calculating the final payment total. This calculation applies for percentage tip values.
11
11
  # - `pre-tax`: Tip amounts are calculated using the subtotal amount before taxes
12
12
  # - `post-tax`: Tip amounts are calculated using the subtotal amount + taxes
13
- class TipCalculationBasis < T::Enum
13
+ class TipCalculationBasis
14
+ include ::Crystalline::Enum
14
15
  enums do
15
16
  PRE_TAX = new('pre-tax')
16
17
  POST_TAX = new('post-tax')
17
18
  end
19
+ open!
18
20
  end
19
21
  end
20
22
  end
@@ -15,7 +15,7 @@ module Moov
15
15
  # Defines which amount should be used when calculating the final payment total. This calculation applies for percentage tip values.
16
16
  # - `pre-tax`: Tip amounts are calculated using the subtotal amount before taxes
17
17
  # - `post-tax`: Tip amounts are calculated using the subtotal amount + taxes
18
- field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TipCalculationBasis, true) } }
18
+ field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TipCalculationBasis, true) } }
19
19
  # Defines the set of suggested tip preset values presented to customers. Percentages must be between 0 and 100 (exclusive) and must be unique. A maximum of 3 values are allowed.
20
20
  field :percentage_options, Crystalline::Nilable.new(Crystalline::Array.new(::Integer)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('percentageOptions') } }
21
21
  # Defines the set of suggested tip preset values presented to customers. Fixed amounts must be positive and unique. A maximum of 3 values are allowed.
@@ -11,12 +11,14 @@ module Moov
11
11
  #
12
12
  # Crucial for recurring and merchant-initiated transactions as per card scheme rules.
13
13
  # Omit for customer-initiated e-commerce transactions.
14
- class TransactionSource < T::Enum
14
+ class TransactionSource
15
+ include ::Crystalline::Enum
15
16
  enums do
16
17
  FIRST_RECURRING = new('first-recurring')
17
18
  RECURRING = new('recurring')
18
19
  UNSCHEDULED = new('unscheduled')
19
20
  end
21
+ open!
20
22
  end
21
23
  end
22
24
  end