moov_ruby 26.4.0.pre.dev.6 → 26.4.0.pre.dev.7

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 (526) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +66 -9
  3. data/lib/crystalline/module.rb +3 -3
  4. data/lib/moov/account_terminal_applications.rb +5 -5
  5. data/lib/moov/accounts.rb +22 -22
  6. data/lib/moov/adjustments.rb +2 -2
  7. data/lib/moov/apple_pay.rb +14 -14
  8. data/lib/moov/authentication.rb +3 -3
  9. data/lib/moov/avatars.rb +2 -2
  10. data/lib/moov/bank_accounts.rb +26 -26
  11. data/lib/moov/branding.rb +5 -5
  12. data/lib/moov/capabilities.rb +6 -6
  13. data/lib/moov/card_issuing.rb +8 -8
  14. data/lib/moov/cards.rb +32 -17
  15. data/lib/moov/client.rb +2 -1
  16. data/lib/moov/disputes.rb +32 -32
  17. data/lib/moov/end_to_end_encryption.rb +2 -2
  18. data/lib/moov/enriched_profile.rb +1 -1
  19. data/lib/moov/fee_plans.rb +12 -12
  20. data/lib/moov/files.rb +5 -5
  21. data/lib/moov/images.rb +10 -10
  22. data/lib/moov/industries.rb +1 -1
  23. data/lib/moov/institutions.rb +7 -7
  24. data/lib/moov/invoices.rb +914 -0
  25. data/lib/moov/issuing_transactions.rb +5 -5
  26. data/lib/moov/models/components/account.rb +5 -5
  27. data/lib/moov/models/components/accountnameverification.rb +4 -4
  28. data/lib/moov/models/components/accountverificationstatus.rb +2 -2
  29. data/lib/moov/models/components/achcreditsamedaypaymentmethod.rb +1 -1
  30. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rb +1 -1
  31. data/lib/moov/models/components/achcreditstandardpaymentmethod.rb +1 -1
  32. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rb +1 -1
  33. data/lib/moov/models/components/achdebitcollectpaymentmethod.rb +1 -1
  34. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rb +1 -1
  35. data/lib/moov/models/components/achdebitfundpaymentmethod.rb +1 -1
  36. data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rb +1 -1
  37. data/lib/moov/models/components/achreturncode.rb +1 -1
  38. data/lib/moov/models/components/achtransactiondetails.rb +10 -10
  39. data/lib/moov/models/components/adjustment.rb +1 -1
  40. data/lib/moov/models/components/adjustmentfees.rb +3 -3
  41. data/lib/moov/models/components/amount.rb +1 -1
  42. data/lib/moov/models/components/amountdecimal.rb +1 -1
  43. data/lib/moov/models/components/amountdecimalupdate.rb +38 -0
  44. data/lib/moov/models/components/amountdecimalupdate.rbi +15 -0
  45. data/lib/moov/models/components/amountupdate.rb +1 -1
  46. data/lib/moov/models/components/applepayheader.rb +1 -1
  47. data/lib/moov/models/components/applepaymerchantdomains.rb +2 -2
  48. data/lib/moov/models/components/applepaypaymentmethod.rb +1 -1
  49. data/lib/moov/models/components/applepayresponse.rb +2 -2
  50. data/lib/moov/models/components/applepaytransferpaymentmethod.rb +1 -1
  51. data/lib/moov/models/components/asynccreatedrefund.rb +1 -1
  52. data/lib/moov/models/components/asynctransfer.rb +1 -1
  53. data/lib/moov/models/components/authtoken.rb +1 -1
  54. data/lib/moov/models/components/authtokenrequest.rb +2 -2
  55. data/lib/moov/models/components/bankaccount.rb +7 -7
  56. data/lib/moov/models/components/bankaccountexception.rb +5 -5
  57. data/lib/moov/models/components/bankaccountintegration.rb +2 -2
  58. data/lib/moov/models/components/bankaccountverification.rb +2 -2
  59. data/lib/moov/models/components/bankaccountverificationcreated.rb +2 -2
  60. data/lib/moov/models/components/basicpaymentmethod.rb +1 -1
  61. data/lib/moov/models/components/billablefee.rb +2 -2
  62. data/lib/moov/models/components/billingsummary.rb +6 -6
  63. data/lib/moov/models/components/billingsummary_platformfees.rb +3 -3
  64. data/lib/moov/models/components/billingsummary_volumeamount.rb +3 -3
  65. data/lib/moov/models/components/billingsummarydetails.rb +4 -4
  66. data/lib/moov/models/components/billingsummarydetails_volumeamount.rb +3 -3
  67. data/lib/moov/models/components/businessprofile.rb +2 -2
  68. data/lib/moov/models/components/calltoaction.rb +1 -1
  69. data/lib/moov/models/components/cancellation.rb +2 -2
  70. data/lib/moov/models/components/capability.rb +6 -6
  71. data/lib/moov/models/components/capabilityid.rb +1 -1
  72. data/lib/moov/models/components/card.rb +5 -5
  73. data/lib/moov/models/components/cardaccountupdater.rb +2 -2
  74. data/lib/moov/models/components/cardacquiring.rb +4 -4
  75. data/lib/moov/models/components/cardacquiringdispute.rb +1 -1
  76. data/lib/moov/models/components/cardacquiringrefund.rb +3 -3
  77. data/lib/moov/models/components/cardpaymentpaymentmethod.rb +1 -1
  78. data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rb +1 -1
  79. data/lib/moov/models/components/cardpresentpaymentpaymentmethod.rb +1 -1
  80. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rb +1 -1
  81. data/lib/moov/models/components/cardtransactiondetails.rb +12 -12
  82. data/lib/moov/models/components/cardverification.rb +3 -3
  83. data/lib/moov/models/components/collectfundscardpayments.rb +1 -1
  84. data/lib/moov/models/components/completedmicrodeposits.rb +1 -1
  85. data/lib/moov/models/components/createaccount.rb +2 -2
  86. data/lib/moov/models/components/createbusinessprofile.rb +2 -2
  87. data/lib/moov/models/components/createdtransfer.rb +4 -4
  88. data/lib/moov/models/components/createevidencefilemultipart.rb +1 -1
  89. data/lib/moov/models/components/createevidencetext.rb +1 -1
  90. data/lib/moov/models/components/createinvoice.rb +52 -0
  91. data/lib/moov/models/components/createinvoice.rbi +23 -0
  92. data/lib/moov/models/components/createinvoicelineitem.rb +49 -0
  93. data/lib/moov/models/components/createinvoicelineitem.rbi +21 -0
  94. data/lib/moov/models/components/createinvoicelineitemoption.rb +44 -0
  95. data/lib/moov/models/components/createinvoicelineitemoption.rbi +19 -0
  96. data/lib/moov/models/components/createinvoicelineitemoptionvalidationerror.rb +44 -0
  97. data/lib/moov/models/components/createinvoicelineitemoptionvalidationerror.rbi +19 -0
  98. data/lib/moov/models/components/createinvoicelineitems.rb +32 -0
  99. data/lib/moov/models/components/createinvoicelineitems.rbi +13 -0
  100. data/lib/moov/models/components/createinvoicelineitemsupdate.rb +32 -0
  101. data/lib/moov/models/components/createinvoicelineitemsupdate.rbi +13 -0
  102. data/lib/moov/models/components/createinvoicelineitemsvalidationerror.rb +32 -0
  103. data/lib/moov/models/components/createinvoicelineitemsvalidationerror.rbi +13 -0
  104. data/lib/moov/models/components/createinvoicelineitemvalidationerror.rb +48 -0
  105. data/lib/moov/models/components/createinvoicelineitemvalidationerror.rbi +21 -0
  106. data/lib/moov/models/components/createinvoicepayment.rb +44 -0
  107. data/lib/moov/models/components/createinvoicepayment.rbi +19 -0
  108. data/lib/moov/models/components/createpaymentlink.rb +4 -4
  109. data/lib/moov/models/components/createpaymentlinklineitem.rb +2 -2
  110. data/lib/moov/models/components/createpaymentlinklineitemoption.rb +2 -2
  111. data/lib/moov/models/components/createproductoption.rb +1 -1
  112. data/lib/moov/models/components/createproductoptiongroup.rb +2 -2
  113. data/lib/moov/models/components/createrefund.rb +1 -1
  114. data/lib/moov/models/components/createsweepconfig.rb +1 -1
  115. data/lib/moov/models/components/createterminalapplication.rb +1 -1
  116. data/lib/moov/models/components/createtransfersourceach.rb +2 -2
  117. data/lib/moov/models/components/createtransfersourcecard.rb +2 -2
  118. data/lib/moov/models/components/createwebhook.rb +1 -1
  119. data/lib/moov/models/components/dispute.rb +7 -7
  120. data/lib/moov/models/components/disputeevidenceresponse.rb +4 -4
  121. data/lib/moov/models/components/disputestatus.rb +1 -1
  122. data/lib/moov/models/components/document.rb +2 -2
  123. data/lib/moov/models/components/estimatedactivity.rb +1 -1
  124. data/lib/moov/models/components/evidencetextresponse.rb +2 -2
  125. data/lib/moov/models/components/evidenceuploadresponse.rb +2 -2
  126. data/lib/moov/models/components/facilitatorfee.rb +1 -1
  127. data/lib/moov/models/components/feeplan.rb +2 -2
  128. data/lib/moov/models/components/feeplanagreement.rb +3 -3
  129. data/lib/moov/models/components/feeproperties.rb +1 -1
  130. data/lib/moov/models/components/filedetails.rb +4 -4
  131. data/lib/moov/models/components/fileuploadrequestmultipart.rb +1 -1
  132. data/lib/moov/models/components/fulfillment.rb +2 -2
  133. data/lib/moov/models/components/fulfillmentdetails.rb +1 -1
  134. data/lib/moov/models/components/fullissuedcard.rb +5 -5
  135. data/lib/moov/models/components/granttype.rb +1 -1
  136. data/lib/moov/models/components/imagemetadata.rb +3 -3
  137. data/lib/moov/models/components/incurredfee.rb +1 -1
  138. data/lib/moov/models/components/instantbankcreditpaymentmethod.rb +1 -1
  139. data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rb +1 -1
  140. data/lib/moov/models/components/invoice.rb +116 -0
  141. data/lib/moov/models/components/invoice.rbi +55 -0
  142. data/lib/moov/models/components/invoiceexternalpayment.rb +40 -0
  143. data/lib/moov/models/components/invoiceexternalpayment.rbi +17 -0
  144. data/lib/moov/models/components/invoicelineitem.rb +53 -0
  145. data/lib/moov/models/components/invoicelineitem.rbi +23 -0
  146. data/lib/moov/models/components/invoicelineitemimagemetadata.rb +44 -0
  147. data/lib/moov/models/components/invoicelineitemimagemetadata.rbi +19 -0
  148. data/lib/moov/models/components/invoicelineitemoption.rb +48 -0
  149. data/lib/moov/models/components/invoicelineitemoption.rbi +21 -0
  150. data/lib/moov/models/components/invoicelineitemoptionvalidationerror.rb +44 -0
  151. data/lib/moov/models/components/invoicelineitemoptionvalidationerror.rbi +19 -0
  152. data/lib/moov/models/components/invoicelineitems.rb +32 -0
  153. data/lib/moov/models/components/invoicelineitems.rbi +13 -0
  154. data/lib/moov/models/components/invoicelineitemsvalidationerror.rb +32 -0
  155. data/lib/moov/models/components/invoicelineitemsvalidationerror.rbi +13 -0
  156. data/lib/moov/models/components/invoicelineitemvalidationerror.rb +48 -0
  157. data/lib/moov/models/components/invoicelineitemvalidationerror.rbi +21 -0
  158. data/lib/moov/models/components/invoicepayment.rb +48 -0
  159. data/lib/moov/models/components/invoicepayment.rbi +21 -0
  160. data/lib/moov/models/components/invoicepaymenttype.rb +19 -0
  161. data/lib/moov/models/components/invoicepaymenttype.rbi +11 -0
  162. data/lib/moov/models/components/invoicetransferpayment.rb +32 -0
  163. data/lib/moov/models/components/invoicetransferpayment.rbi +13 -0
  164. data/lib/moov/models/components/issuedcard.rb +5 -5
  165. data/lib/moov/models/components/issuedcardauthorization.rb +3 -3
  166. data/lib/moov/models/components/issuedcardauthorizationevent.rb +3 -3
  167. data/lib/moov/models/components/issuedcardstate.rb +1 -1
  168. data/lib/moov/models/components/issuedcardtransaction.rb +2 -2
  169. data/lib/moov/models/components/issuingvelocitylimit.rb +1 -1
  170. data/lib/moov/models/components/jsonwebkey.rb +6 -6
  171. data/lib/moov/models/components/linkapplepay.rb +2 -2
  172. data/lib/moov/models/components/linkapplepaymentdata.rb +2 -2
  173. data/lib/moov/models/components/linkapplepaymentmethod.rb +1 -1
  174. data/lib/moov/models/components/linkapplepaytoken.rb +3 -3
  175. data/lib/moov/models/components/linkedapplepaypaymentmethod.rb +1 -1
  176. data/lib/moov/models/components/manualtermsofservice.rb +1 -1
  177. data/lib/moov/models/components/manualtermsofserviceupdate.rb +1 -1
  178. data/lib/moov/models/components/minimumcommitment.rb +1 -1
  179. data/lib/moov/models/components/monthlyplatformfee.rb +1 -1
  180. data/lib/moov/models/components/moovfee.rb +1 -1
  181. data/lib/moov/models/components/moovwalletpaymentmethod.rb +1 -1
  182. data/lib/moov/models/components/moovwallettransferpaymentmethod.rb +1 -1
  183. data/lib/moov/models/components/mxauthorizationcode.rb +1 -1
  184. data/lib/moov/models/components/mxpayload.rb +3 -3
  185. data/lib/moov/models/components/occurrence.rb +1 -1
  186. data/lib/moov/models/components/occurrencesresponse.rb +5 -5
  187. data/lib/moov/models/components/onboardinginvite.rb +3 -3
  188. data/lib/moov/models/components/onboardingpartneraccount.rb +1 -1
  189. data/lib/moov/models/components/otherfees.rb +3 -3
  190. data/lib/moov/models/components/partnerpricingagreement.rb +3 -3
  191. data/lib/moov/models/components/patchbusiness.rb +2 -2
  192. data/lib/moov/models/components/patchsweepconfig.rb +1 -1
  193. data/lib/moov/models/components/patchwallet.rb +1 -1
  194. data/lib/moov/models/components/paymentlink.rb +9 -9
  195. data/lib/moov/models/components/paymentlinkdisplayoptions.rb +2 -2
  196. data/lib/moov/models/components/paymentlinkdisplayoptionsupdate.rb +2 -2
  197. data/lib/moov/models/components/paymentlinkpayoutdetails.rb +1 -1
  198. data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +1 -1
  199. data/lib/moov/models/components/paymentlinktype.rb +1 -0
  200. data/lib/moov/models/components/paymentmethodsbankaccount.rb +5 -5
  201. data/lib/moov/models/components/paymentmethodscard.rb +4 -4
  202. data/lib/moov/models/components/paymentmethodswallet.rb +1 -1
  203. data/lib/moov/models/components/payoutrecipient.rb +1 -1
  204. data/lib/moov/models/components/plaidintegration.rb +2 -2
  205. data/lib/moov/models/components/plaidlinkintegration.rb +2 -2
  206. data/lib/moov/models/components/plaidlinkpayload.rb +3 -3
  207. data/lib/moov/models/components/plaidpayload.rb +2 -2
  208. data/lib/moov/models/components/platformfees.rb +2 -2
  209. data/lib/moov/models/components/product.rb +4 -4
  210. data/lib/moov/models/components/productoption.rb +1 -1
  211. data/lib/moov/models/components/productoptiongroup.rb +2 -2
  212. data/lib/moov/models/components/productrequest.rb +1 -1
  213. data/lib/moov/models/components/pullfromcardpaymentmethod.rb +1 -1
  214. data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rb +1 -1
  215. data/lib/moov/models/components/pushtocardpaymentmethod.rb +1 -1
  216. data/lib/moov/models/components/pushtocardtransferpaymentmethod.rb +1 -1
  217. data/lib/moov/models/components/receiptrequest.rb +1 -1
  218. data/lib/moov/models/components/receiptresponse.rb +2 -2
  219. data/lib/moov/models/components/recur.rb +1 -1
  220. data/lib/moov/models/components/recurresponse.rb +1 -1
  221. data/lib/moov/models/components/refundcarddetails.rb +7 -7
  222. data/lib/moov/models/components/representative.rb +3 -3
  223. data/lib/moov/models/components/requestcard.rb +1 -1
  224. data/lib/moov/models/components/requirementerror.rb +2 -2
  225. data/lib/moov/models/components/residual.rb +4 -4
  226. data/lib/moov/models/components/revoketokenrequest.rb +1 -1
  227. data/lib/moov/models/components/rtpcreditpaymentmethod.rb +1 -1
  228. data/lib/moov/models/components/rtpcredittransferpaymentmethod.rb +1 -1
  229. data/lib/moov/models/components/rtprejectioncode.rb +1 -1
  230. data/lib/moov/models/components/rtptransactiondetails.rb +6 -6
  231. data/lib/moov/models/components/schedulelistresponse.rb +4 -4
  232. data/lib/moov/models/components/scheduleresponse.rb +4 -4
  233. data/lib/moov/models/components/sentreceipt.rb +1 -1
  234. data/lib/moov/models/components/statement.rb +6 -6
  235. data/lib/moov/models/components/sweep.rb +3 -3
  236. data/lib/moov/models/components/sweepconfig.rb +3 -3
  237. data/lib/moov/models/components/sweepconfigpaymentmethod.rb +1 -1
  238. data/lib/moov/models/components/sweepsubtotal.rb +1 -1
  239. data/lib/moov/models/components/terminalapplication.rb +2 -2
  240. data/lib/moov/models/components/terminalcard.rb +3 -3
  241. data/lib/moov/models/components/termsofservice.rb +1 -1
  242. data/lib/moov/models/components/ticket.rb +5 -5
  243. data/lib/moov/models/components/ticketmessage.rb +1 -1
  244. data/lib/moov/models/components/transactionsource.rb +1 -1
  245. data/lib/moov/models/components/transfer.rb +10 -6
  246. data/lib/moov/models/components/transfer.rbi +2 -0
  247. data/lib/moov/models/components/transferdestination.rb +1 -1
  248. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +5 -5
  249. data/lib/moov/models/components/transferpaymentmethodscard.rb +4 -4
  250. data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -1
  251. data/lib/moov/models/components/transfersource.rb +1 -1
  252. data/lib/moov/models/components/transferterminalcard.rb +3 -3
  253. data/lib/moov/models/components/underwriting.rb +5 -5
  254. data/lib/moov/models/components/underwritingstatus.rb +2 -2
  255. data/lib/moov/models/components/updateevidence.rb +1 -1
  256. data/lib/moov/models/components/updateinvoice.rb +54 -0
  257. data/lib/moov/models/components/updateinvoice.rbi +23 -0
  258. data/lib/moov/models/components/updateissuedcard.rb +1 -1
  259. data/lib/moov/models/components/updatepaymentlink.rb +1 -1
  260. data/lib/moov/models/components/updateticket.rb +1 -1
  261. data/lib/moov/models/components/updatewebhook.rb +1 -1
  262. data/lib/moov/models/components/upsertunderwriting.rb +4 -4
  263. data/lib/moov/models/components/verification.rb +9 -9
  264. data/lib/moov/models/components/verificationstatus.rb +2 -2
  265. data/lib/moov/models/components/verificationstatusdetail.rb +2 -2
  266. data/lib/moov/models/components/wallet.rb +4 -4
  267. data/lib/moov/models/components/walletavailablebalance.rb +1 -1
  268. data/lib/moov/models/components/wallettransaction.rb +5 -5
  269. data/lib/moov/models/components/wallettransactiontype.rb +1 -0
  270. data/lib/moov/models/components/webhook.rb +4 -4
  271. data/lib/moov/models/components/webhookdatabankaccountupdated.rb +2 -2
  272. data/lib/moov/models/components/webhookdatacancellationcreated.rb +1 -1
  273. data/lib/moov/models/components/webhookdatacancellationupdated.rb +1 -1
  274. data/lib/moov/models/components/webhookdatacapabilityrequested.rb +2 -2
  275. data/lib/moov/models/components/webhookdatacapabilityupdated.rb +3 -3
  276. data/lib/moov/models/components/webhookdatacardautoupdated.rb +1 -1
  277. data/lib/moov/models/components/webhookdatadisputecreated.rb +3 -3
  278. data/lib/moov/models/components/webhookdatadisputeupdated.rb +3 -3
  279. data/lib/moov/models/components/webhookdatainvoiceupdated.rb +1 -1
  280. data/lib/moov/models/components/webhookdatanetworkidupdated.rb +1 -1
  281. data/lib/moov/models/components/webhookdatarefundupdated.rb +1 -1
  282. data/lib/moov/models/components/webhookdatasweepupdated.rb +1 -1
  283. data/lib/moov/models/components/webhookdataterminalapplicationcreated.rb +1 -1
  284. data/lib/moov/models/components/webhookdataterminalapplicationupdated.rb +1 -1
  285. data/lib/moov/models/components/webhookdataticketupdated.rb +1 -1
  286. data/lib/moov/models/components/webhookdatatransfercreated.rb +1 -1
  287. data/lib/moov/models/components/webhookdatatransferupdated.rb +1 -1
  288. data/lib/moov/models/components/webhookdatawallettransactionupdated.rb +1 -1
  289. data/lib/moov/models/components/webhookdatawalletupdated.rb +1 -1
  290. data/lib/moov/models/components/webhookevent.rb +2 -2
  291. data/lib/moov/models/components.rb +23 -0
  292. data/lib/moov/models/errors/cardacquiringrefund_error.rb +3 -3
  293. data/lib/moov/models/errors/createinvoiceerror.rb +56 -0
  294. data/lib/moov/models/errors/createinvoiceerror.rbi +25 -0
  295. data/lib/moov/models/errors/createinvoicepaymenterror.rb +48 -0
  296. data/lib/moov/models/errors/createinvoicepaymenterror.rbi +21 -0
  297. data/lib/moov/models/errors/duplicatecarderror.rb +41 -0
  298. data/lib/moov/models/errors/duplicatecarderror.rbi +17 -0
  299. data/lib/moov/models/errors/listinvoicesvalidationerror.rb +64 -0
  300. data/lib/moov/models/errors/listinvoicesvalidationerror.rbi +29 -0
  301. data/lib/moov/models/errors/transfer_error.rb +10 -6
  302. data/lib/moov/models/errors/transfer_error.rbi +2 -0
  303. data/lib/moov/models/errors/updateinvoiceerror.rb +56 -0
  304. data/lib/moov/models/errors/updateinvoiceerror.rbi +25 -0
  305. data/lib/moov/models/errors.rb +5 -0
  306. data/lib/moov/models/operations/acceptdispute_request.rb +3 -3
  307. data/lib/moov/models/operations/assignaccountcountries_request.rb +3 -3
  308. data/lib/moov/models/operations/cancelschedule_request.rb +3 -3
  309. data/lib/moov/models/operations/completebankaccountverification_request.rb +3 -3
  310. data/lib/moov/models/operations/completemicrodeposits_request.rb +3 -3
  311. data/lib/moov/models/operations/connectaccount_request.rb +3 -3
  312. data/lib/moov/models/operations/createaccesstoken_request.rb +3 -3
  313. data/lib/moov/models/operations/createaccount_request.rb +3 -3
  314. data/lib/moov/models/operations/createapplepaysession_request.rb +3 -3
  315. data/lib/moov/models/operations/createbrand_request.rb +3 -3
  316. data/lib/moov/models/operations/createcancellation_request.rb +3 -3
  317. data/lib/moov/models/operations/createfeeplanagreements_request.rb +3 -3
  318. data/lib/moov/models/operations/createinvoice_request.rb +49 -0
  319. data/lib/moov/models/operations/createinvoice_request.rbi +17 -0
  320. data/lib/moov/models/operations/createinvoice_response.rb +48 -0
  321. data/lib/moov/models/operations/createinvoice_response.rbi +21 -0
  322. data/lib/moov/models/operations/createinvoicepayment_request.rb +53 -0
  323. data/lib/moov/models/operations/createinvoicepayment_request.rbi +19 -0
  324. data/lib/moov/models/operations/createinvoicepayment_response.rb +48 -0
  325. data/lib/moov/models/operations/createinvoicepayment_response.rbi +21 -0
  326. data/lib/moov/models/operations/createonboardinginvite_request.rb +3 -3
  327. data/lib/moov/models/operations/createpaymentlink_request.rb +3 -3
  328. data/lib/moov/models/operations/createproduct_request.rb +3 -3
  329. data/lib/moov/models/operations/createreceipts_request.rb +3 -3
  330. data/lib/moov/models/operations/createrepresentative_request.rb +3 -3
  331. data/lib/moov/models/operations/createreversal_request.rb +3 -3
  332. data/lib/moov/models/operations/createschedule_request.rb +3 -3
  333. data/lib/moov/models/operations/createsweepconfig_request.rb +3 -3
  334. data/lib/moov/models/operations/createterminalapplication_request.rb +3 -3
  335. data/lib/moov/models/operations/createterminalapplicationversion_request.rb +3 -3
  336. data/lib/moov/models/operations/createticket_request.rb +3 -3
  337. data/lib/moov/models/operations/createtransfer_request.rb +3 -3
  338. data/lib/moov/models/operations/createtransferoptions_request.rb +3 -3
  339. data/lib/moov/models/operations/createwallet_request.rb +3 -3
  340. data/lib/moov/models/operations/createwebhook_request.rb +3 -3
  341. data/lib/moov/models/operations/deletedisputeevidencefile_request.rb +3 -3
  342. data/lib/moov/models/operations/deleteimage_request.rb +3 -3
  343. data/lib/moov/models/operations/deleterepresentative_request.rb +3 -3
  344. data/lib/moov/models/operations/deleteterminalapplication_request.rb +3 -3
  345. data/lib/moov/models/operations/disablebankaccount_request.rb +3 -3
  346. data/lib/moov/models/operations/disablecapability_request.rb +4 -4
  347. data/lib/moov/models/operations/disablecard_request.rb +3 -3
  348. data/lib/moov/models/operations/disablepaymentlink_request.rb +3 -3
  349. data/lib/moov/models/operations/disableproduct_request.rb +3 -3
  350. data/lib/moov/models/operations/disablewebhook_request.rb +3 -3
  351. data/lib/moov/models/operations/disconnectaccount_request.rb +3 -3
  352. data/lib/moov/models/operations/generateendtoendkey_request.rb +3 -3
  353. data/lib/moov/models/operations/getaccount_request.rb +3 -3
  354. data/lib/moov/models/operations/getaccountcountries_request.rb +3 -3
  355. data/lib/moov/models/operations/getaccountterminalapplication_request.rb +3 -3
  356. data/lib/moov/models/operations/getadjustment_request.rb +3 -3
  357. data/lib/moov/models/operations/getapplepaymerchantdomains_request.rb +3 -3
  358. data/lib/moov/models/operations/getavatar_request.rb +3 -3
  359. data/lib/moov/models/operations/getbankaccount_request.rb +3 -3
  360. data/lib/moov/models/operations/getbankaccountverification_request.rb +3 -3
  361. data/lib/moov/models/operations/getbrand_request.rb +3 -3
  362. data/lib/moov/models/operations/getcancellation_request.rb +3 -3
  363. data/lib/moov/models/operations/getcapability_request.rb +4 -4
  364. data/lib/moov/models/operations/getcard_request.rb +3 -3
  365. data/lib/moov/models/operations/getdispute_request.rb +3 -3
  366. data/lib/moov/models/operations/getdisputeevidence_request.rb +3 -3
  367. data/lib/moov/models/operations/getdisputeevidencedata_request.rb +3 -3
  368. data/lib/moov/models/operations/getenrichmentaddress_request.rb +3 -3
  369. data/lib/moov/models/operations/getenrichmentprofile_request.rb +3 -3
  370. data/lib/moov/models/operations/getfiledetails_request.rb +3 -3
  371. data/lib/moov/models/operations/getfullissuedcard_request.rb +3 -3
  372. data/lib/moov/models/operations/getimagemetadata_request.rb +3 -3
  373. data/lib/moov/models/operations/getinvoice_request.rb +49 -0
  374. data/lib/moov/models/operations/getinvoice_request.rbi +17 -0
  375. data/lib/moov/models/operations/getinvoice_response.rb +48 -0
  376. data/lib/moov/models/operations/getinvoice_response.rbi +21 -0
  377. data/lib/moov/models/operations/getissuedcard_request.rb +3 -3
  378. data/lib/moov/models/operations/getissuedcardauthorization_request.rb +3 -3
  379. data/lib/moov/models/operations/getissuedcardtransaction_request.rb +3 -3
  380. data/lib/moov/models/operations/getmerchantprocessingagreement_request.rb +3 -3
  381. data/lib/moov/models/operations/getonboardinginvite_request.rb +3 -3
  382. data/lib/moov/models/operations/getpaymentlink_request.rb +3 -3
  383. data/lib/moov/models/operations/getpaymentlinkqrcode_request.rb +3 -3
  384. data/lib/moov/models/operations/getpaymentmethod_request.rb +3 -3
  385. data/lib/moov/models/operations/getproduct_request.rb +3 -3
  386. data/lib/moov/models/operations/getpublicimage_request.rb +1 -1
  387. data/lib/moov/models/operations/getrefund_request.rb +3 -3
  388. data/lib/moov/models/operations/getrepresentative_request.rb +3 -3
  389. data/lib/moov/models/operations/getresidual_request.rb +3 -3
  390. data/lib/moov/models/operations/getscheduledoccurrence_request.rb +4 -4
  391. data/lib/moov/models/operations/getschedules_request.rb +3 -3
  392. data/lib/moov/models/operations/getstatement_request.rb +3 -3
  393. data/lib/moov/models/operations/getsweep_request.rb +3 -3
  394. data/lib/moov/models/operations/getsweepconfig_request.rb +3 -3
  395. data/lib/moov/models/operations/getterminalapplication_request.rb +3 -3
  396. data/lib/moov/models/operations/getterminalconfiguration_request.rb +3 -3
  397. data/lib/moov/models/operations/gettermsofservicetoken_request.rb +3 -3
  398. data/lib/moov/models/operations/getticket_request.rb +3 -3
  399. data/lib/moov/models/operations/gettransfer_request.rb +3 -3
  400. data/lib/moov/models/operations/getunderwriting_request.rb +3 -3
  401. data/lib/moov/models/operations/getwallet_request.rb +3 -3
  402. data/lib/moov/models/operations/getwallettransaction_request.rb +3 -3
  403. data/lib/moov/models/operations/getwebhook_request.rb +3 -3
  404. data/lib/moov/models/operations/getwebhooksecret_request.rb +3 -3
  405. data/lib/moov/models/operations/initiatebankaccountverification_request.rb +4 -4
  406. data/lib/moov/models/operations/initiatemicrodeposits_request.rb +3 -3
  407. data/lib/moov/models/operations/initiaterefund_request.rb +3 -3
  408. data/lib/moov/models/operations/linkaccountterminalapplication_request.rb +3 -3
  409. data/lib/moov/models/operations/linkapplepaytoken_request.rb +3 -3
  410. data/lib/moov/models/operations/linkbankaccount_request.rb +4 -4
  411. data/lib/moov/models/operations/linkcard_request.rb +4 -4
  412. data/lib/moov/models/operations/listaccounts_request.rb +9 -9
  413. data/lib/moov/models/operations/listaccountterminalapplications_request.rb +3 -3
  414. data/lib/moov/models/operations/listadjustments_request.rb +3 -3
  415. data/lib/moov/models/operations/listbankaccounts_request.rb +3 -3
  416. data/lib/moov/models/operations/listcapabilities_request.rb +3 -3
  417. data/lib/moov/models/operations/listcards_request.rb +3 -3
  418. data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rb +9 -9
  419. data/lib/moov/models/operations/listdisputeevidence_request.rb +3 -3
  420. data/lib/moov/models/operations/listdisputes_request.rb +3 -3
  421. data/lib/moov/models/operations/listeventtypes_request.rb +3 -3
  422. data/lib/moov/models/operations/listfeeplanagreements_request.rb +3 -3
  423. data/lib/moov/models/operations/listfeeplans_request.rb +3 -3
  424. data/lib/moov/models/operations/listfeerevenue_request.rb +3 -3
  425. data/lib/moov/models/operations/listfeesfetch_request.rb +3 -3
  426. data/lib/moov/models/operations/listfiles_request.rb +3 -3
  427. data/lib/moov/models/operations/listimagemetadata_request.rb +3 -3
  428. data/lib/moov/models/operations/listindustries_request.rb +3 -3
  429. data/lib/moov/models/operations/listinstitutions_request.rb +3 -3
  430. data/lib/moov/models/operations/listinvoicepayments_request.rb +49 -0
  431. data/lib/moov/models/operations/listinvoicepayments_request.rbi +17 -0
  432. data/lib/moov/models/operations/listinvoicepayments_response.rb +48 -0
  433. data/lib/moov/models/operations/listinvoicepayments_response.rbi +21 -0
  434. data/lib/moov/models/operations/listinvoices_request.rb +77 -0
  435. data/lib/moov/models/operations/listinvoices_request.rbi +31 -0
  436. data/lib/moov/models/operations/listinvoices_response.rb +48 -0
  437. data/lib/moov/models/operations/listinvoices_response.rbi +21 -0
  438. data/lib/moov/models/operations/listissuedcardauthorizationevents_request.rb +3 -3
  439. data/lib/moov/models/operations/listissuedcardauthorizations_request.rb +3 -3
  440. data/lib/moov/models/operations/listissuedcards_request.rb +3 -3
  441. data/lib/moov/models/operations/listissuedcardtransactions_request.rb +3 -3
  442. data/lib/moov/models/operations/listonboardinginvites_request.rb +3 -3
  443. data/lib/moov/models/operations/listpartnerpricingagreements_request.rb +3 -3
  444. data/lib/moov/models/operations/listpaymentlinks_request.rb +9 -13
  445. data/lib/moov/models/operations/listpaymentlinks_request.rbi +2 -4
  446. data/lib/moov/models/operations/listpaymentmethods_request.rb +4 -4
  447. data/lib/moov/models/operations/listproducts_request.rb +3 -3
  448. data/lib/moov/models/operations/listreceipts_request.rb +3 -3
  449. data/lib/moov/models/operations/listrefunds_request.rb +3 -3
  450. data/lib/moov/models/operations/listrepresentatives_request.rb +3 -3
  451. data/lib/moov/models/operations/listresidualfees_request.rb +3 -3
  452. data/lib/moov/models/operations/listresiduals_request.rb +3 -3
  453. data/lib/moov/models/operations/listschedules_request.rb +3 -3
  454. data/lib/moov/models/operations/liststatements_request.rb +3 -3
  455. data/lib/moov/models/operations/listsweepconfigs_request.rb +3 -3
  456. data/lib/moov/models/operations/listsweeps_request.rb +3 -3
  457. data/lib/moov/models/operations/listterminalapplications_request.rb +3 -3
  458. data/lib/moov/models/operations/listticketmessages_request.rb +3 -3
  459. data/lib/moov/models/operations/listtickets_request.rb +3 -3
  460. data/lib/moov/models/operations/listtransfers_request.rb +3 -3
  461. data/lib/moov/models/operations/listwallets_request.rb +3 -3
  462. data/lib/moov/models/operations/listwallettransactions_request.rb +3 -3
  463. data/lib/moov/models/operations/listwebhooks_request.rb +3 -3
  464. data/lib/moov/models/operations/ping_request.rb +3 -3
  465. data/lib/moov/models/operations/pingwebhook_request.rb +3 -3
  466. data/lib/moov/models/operations/registerapplepaymerchantdomains_request.rb +3 -3
  467. data/lib/moov/models/operations/requestcapabilities_request.rb +3 -3
  468. data/lib/moov/models/operations/requestcard_request.rb +3 -3
  469. data/lib/moov/models/operations/retrievefees_request.rb +3 -3
  470. data/lib/moov/models/operations/revokeaccesstoken_request.rb +3 -3
  471. data/lib/moov/models/operations/revokeonboardinginvite_request.rb +3 -3
  472. data/lib/moov/models/operations/saveunderwriting_request.rb +3 -3
  473. data/lib/moov/models/operations/searchinstitutions_request.rb +3 -3
  474. data/lib/moov/models/operations/submitdisputeevidence_request.rb +3 -3
  475. data/lib/moov/models/operations/testendtoendtoken_request.rb +3 -3
  476. data/lib/moov/models/operations/updateaccount_request.rb +3 -3
  477. data/lib/moov/models/operations/updateapplepaymerchantdomains_request.rb +3 -3
  478. data/lib/moov/models/operations/updatecard_request.rb +3 -3
  479. data/lib/moov/models/operations/updatedisputeevidence_request.rb +3 -3
  480. data/lib/moov/models/operations/updateimage_request.rb +3 -3
  481. data/lib/moov/models/operations/updateimagemetadata_request.rb +3 -3
  482. data/lib/moov/models/operations/updateinvoice_request.rb +53 -0
  483. data/lib/moov/models/operations/updateinvoice_request.rbi +19 -0
  484. data/lib/moov/models/operations/updateinvoice_response.rb +48 -0
  485. data/lib/moov/models/operations/updateinvoice_response.rbi +21 -0
  486. data/lib/moov/models/operations/updateissuedcard_request.rb +3 -3
  487. data/lib/moov/models/operations/updatepaymentlink_request.rb +3 -3
  488. data/lib/moov/models/operations/updateproduct_request.rb +3 -3
  489. data/lib/moov/models/operations/updaterepresentative_request.rb +3 -3
  490. data/lib/moov/models/operations/updateschedule_request.rb +3 -3
  491. data/lib/moov/models/operations/updatesweepconfig_request.rb +3 -3
  492. data/lib/moov/models/operations/updateticket_request.rb +3 -3
  493. data/lib/moov/models/operations/updatetransfer_request.rb +3 -3
  494. data/lib/moov/models/operations/updatewallet_request.rb +3 -3
  495. data/lib/moov/models/operations/updatewebhook_request.rb +3 -3
  496. data/lib/moov/models/operations/uploaddisputeevidencefile_request.rb +3 -3
  497. data/lib/moov/models/operations/uploaddisputeevidencetext_request.rb +3 -3
  498. data/lib/moov/models/operations/uploadfile_request.rb +3 -3
  499. data/lib/moov/models/operations/uploadimage_request.rb +3 -3
  500. data/lib/moov/models/operations/upsertbrand_request.rb +3 -3
  501. data/lib/moov/models/operations/upsertunderwriting_request.rb +3 -3
  502. data/lib/moov/models/operations.rb +12 -0
  503. data/lib/moov/onboarding.rb +5 -5
  504. data/lib/moov/payment_links.rb +13 -13
  505. data/lib/moov/payment_methods.rb +2 -2
  506. data/lib/moov/ping.rb +1 -1
  507. data/lib/moov/products.rb +3 -3
  508. data/lib/moov/receipts.rb +3 -3
  509. data/lib/moov/representatives.rb +12 -12
  510. data/lib/moov/scheduling.rb +8 -8
  511. data/lib/moov/sdkconfiguration.rb +3 -3
  512. data/lib/moov/statements.rb +7 -7
  513. data/lib/moov/support.rb +12 -12
  514. data/lib/moov/sweeps.rb +8 -8
  515. data/lib/moov/terminal_applications.rb +7 -7
  516. data/lib/moov/transfers.rb +22 -22
  517. data/lib/moov/underwriting.rb +8 -8
  518. data/lib/moov/utils/request_bodies.rb +8 -3
  519. data/lib/moov/utils/security.rb +10 -0
  520. data/lib/moov/utils/url.rb +11 -5
  521. data/lib/moov/utils/utils.rb +33 -3
  522. data/lib/moov/wallet_transactions.rb +4 -4
  523. data/lib/moov/wallets.rb +10 -10
  524. data/lib/moov/webhooks.rb +2 -2
  525. data/lib/moov_ruby.rb +1 -0
  526. metadata +83 -2
@@ -13,7 +13,7 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
  # Platform of the terminal application.
16
- field :platform, Models::Components::TerminalApplicationPlatform, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('platform'), required: true, 'decoder': Utils.enum_from_string(Models::Components::TerminalApplicationPlatform, false) } }
16
+ 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) } }
17
17
  # The app bundle identifier of the terminal application. Required if platform is `ios`.
18
18
  field :app_bundle_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('appBundleID') } }
19
19
  # The app package name of the terminal application. Required if platform is `android`.
@@ -17,9 +17,9 @@ module Moov
17
17
  # An optional override of the default NACHA company name for a transfer.
18
18
  field :originating_company_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('originatingCompanyName') } }
19
19
  # An optional override of your default ACH hold period in banking days. The hold period must be longer than or equal to your default setting.
20
- field :debit_hold_period, Crystalline::Nilable.new(Models::Components::DebitHoldPeriod), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('debitHoldPeriod'), 'decoder': Utils.enum_from_string(Models::Components::DebitHoldPeriod, true) } }
20
+ field :debit_hold_period, Crystalline::Nilable.new(Models::Components::DebitHoldPeriod), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('debitHoldPeriod'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DebitHoldPeriod, true) } }
21
21
  # Code used to identify the ACH authorization method.
22
- field :sec_code, Crystalline::Nilable.new(Models::Components::SECCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('secCode'), 'decoder': Utils.enum_from_string(Models::Components::SECCode, true) } }
22
+ field :sec_code, Crystalline::Nilable.new(Models::Components::SECCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('secCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::SECCode, true) } }
23
23
 
24
24
  field :addenda, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CreateTransferACHAddendaRecord)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('addenda') } }
25
25
 
@@ -15,10 +15,10 @@ module Moov
15
15
  # An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.
16
16
  field :dynamic_descriptor, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dynamicDescriptor') } }
17
17
  # Specifies the nature and initiator of a transaction.
18
- #
18
+ #
19
19
  # Crucial for recurring and merchant-initiated transactions as per card scheme rules.
20
20
  # Omit for customer-initiated e-commerce transactions.
21
- field :transaction_source, Crystalline::Nilable.new(Models::Components::TransactionSource), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transactionSource'), 'decoder': Utils.enum_from_string(Models::Components::TransactionSource, true) } }
21
+ field :transaction_source, Crystalline::Nilable.new(Models::Components::TransactionSource), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transactionSource'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransactionSource, true) } }
22
22
 
23
23
  sig { params(dynamic_descriptor: T.nilable(::String), transaction_source: T.nilable(Models::Components::TransactionSource)).void }
24
24
  def initialize(dynamic_descriptor: nil, transaction_source: nil)
@@ -15,7 +15,7 @@ module Moov
15
15
  # The URL where webhook events will be sent.
16
16
  field :url, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('url'), required: true } }
17
17
  # The status of the webhook.
18
- field :status, Models::Components::WebhookStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::WebhookStatus, false) } }
18
+ field :status, Models::Components::WebhookStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::WebhookStatus, false) } }
19
19
  # The list of event types this webhook should subscribe to.
20
20
  field :event_types, Crystalline::Array.new(Models::Components::WebhookEventType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventTypes'), required: true } }
21
21
  # A description of the webhook for reference. Can be an empty string.
@@ -19,25 +19,25 @@ module Moov
19
19
 
20
20
  field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
21
21
  # Indicates the card network's category for the dispute.
22
- #
22
+ #
23
23
  # These codes may differ between card brands. You can find more information on the code from the networkReasonDescription field.
24
24
  field :network_reason_code, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkReasonCode'), required: true } }
25
25
 
26
26
  field :transfer, Models::Components::DisputeTransferDetails, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transfer'), required: true } }
27
27
 
28
- field :respond_by, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('respondBy'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
28
+ field :respond_by, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('respondBy'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
29
29
  # The status of a particular dispute.
30
- #
30
+ #
31
31
  # Read our [disputes guide](https://docs.moov.io/guides/money-movement/accept-payments/card-acceptance/disputes/#dispute-statuses) to learn what each status means.
32
- field :status, Models::Components::DisputeStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::DisputeStatus, false) } }
32
+ field :status, Models::Components::DisputeStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DisputeStatus, false) } }
33
33
  # The phase of a dispute within the dispute lifecycle.
34
- field :phase, Models::Components::DisputePhase, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('phase'), required: true, 'decoder': Utils.enum_from_string(Models::Components::DisputePhase, false) } }
34
+ field :phase, Models::Components::DisputePhase, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('phase'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DisputePhase, false) } }
35
35
 
36
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
36
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
37
37
  # Provides detail on the card network's categorization of the dispute.
38
38
  field :network_reason_description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkReasonDescription') } }
39
39
 
40
- field :submitted_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('submittedOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
40
+ field :submitted_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('submittedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
41
41
 
42
42
  sig { params(dispute_id: ::String, merchant_account_id: ::String, amount: Models::Components::Amount, network_reason_code: ::String, transfer: Models::Components::DisputeTransferDetails, respond_by: ::DateTime, status: Models::Components::DisputeStatus, phase: Models::Components::DisputePhase, created_on: ::DateTime, network_reason_description: T.nilable(::String), submitted_on: T.nilable(::DateTime)).void }
43
43
  def initialize(dispute_id:, merchant_account_id:, amount:, network_reason_code:, transfer:, respond_by:, status:, phase:, created_on:, network_reason_description: nil, submitted_on: nil)
@@ -17,11 +17,11 @@ module Moov
17
17
 
18
18
  field :dispute_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputeID'), required: true } }
19
19
 
20
- field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::EvidenceType, false) } }
20
+ field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::EvidenceType, false) } }
21
21
 
22
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
22
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
23
23
 
24
- field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
24
+ field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
25
25
  # For text evidence, the text submitted as evidence.
26
26
  field :text, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('text') } }
27
27
  # For file evidence, the MIME type of the file.
@@ -31,7 +31,7 @@ module Moov
31
31
  # For file evidence, the size of the file.
32
32
  field :size, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('size') } }
33
33
  # When the evidence was submitted for review.
34
- field :submitted_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('submittedOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
34
+ field :submitted_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('submittedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
35
35
 
36
36
  sig { params(evidence_id: ::String, dispute_id: ::String, evidence_type: Models::Components::EvidenceType, created_on: ::DateTime, updated_on: ::DateTime, text: T.nilable(::String), mime_type: T.nilable(::String), filename: T.nilable(::String), size: T.nilable(::Integer), submitted_on: T.nilable(::DateTime)).void }
37
37
  def initialize(evidence_id:, dispute_id:, evidence_type:, created_on:, updated_on:, text: nil, mime_type: nil, filename: nil, size: nil, submitted_on: nil)
@@ -8,7 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # DisputeStatus - The status of a particular dispute.
11
- #
11
+ #
12
12
  # Read our [disputes guide](https://docs.moov.io/guides/money-movement/accept-payments/card-acceptance/disputes/#dispute-statuses) to learn what each status means.
13
13
  class DisputeStatus < T::Enum
14
14
  enums do
@@ -15,11 +15,11 @@ module Moov
15
15
 
16
16
  field :document_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('documentID'), required: true } }
17
17
  # Types of documents that can be uploaded.
18
- field :type, Models::Components::DocumentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': Utils.enum_from_string(Models::Components::DocumentType, false) } }
18
+ field :type, Models::Components::DocumentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::DocumentType, false) } }
19
19
  # The document's MIME type.
20
20
  field :content_type, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('contentType'), required: true } }
21
21
 
22
- field :uploaded_at, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('uploadedAt'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
22
+ field :uploaded_at, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('uploadedAt'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
23
23
  # Optional array of errors encountered during automated parsing.
24
24
  field :parse_errors, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('parseErrors') } }
25
25
 
@@ -17,7 +17,7 @@ module Moov
17
17
 
18
18
  field :maximum_transaction_amount, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maximumTransactionAmount') } }
19
19
  # The low value in each range is included. The high value in each range is excluded.
20
- field :monthly_volume_range, Crystalline::Nilable.new(Models::Components::MonthlyVolumeRange), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('monthlyVolumeRange'), 'decoder': Utils.enum_from_string(Models::Components::MonthlyVolumeRange, true) } }
20
+ field :monthly_volume_range, Crystalline::Nilable.new(Models::Components::MonthlyVolumeRange), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('monthlyVolumeRange'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::MonthlyVolumeRange, true) } }
21
21
 
22
22
  sig { params(average_transaction_amount: T.nilable(::Integer), maximum_transaction_amount: T.nilable(::Integer), monthly_volume_range: T.nilable(Models::Components::MonthlyVolumeRange)).void }
23
23
  def initialize(average_transaction_amount: nil, maximum_transaction_amount: nil, monthly_volume_range: nil)
@@ -17,11 +17,11 @@ module Moov
17
17
 
18
18
  field :dispute_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputeID'), required: true } }
19
19
 
20
- field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::EvidenceType, false) } }
20
+ field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::EvidenceType, false) } }
21
21
 
22
22
  field :text, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('text'), required: true } }
23
23
 
24
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
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
 
26
26
  sig { params(evidence_id: ::String, dispute_id: ::String, evidence_type: Models::Components::EvidenceType, text: ::String, created_on: ::DateTime).void }
27
27
  def initialize(evidence_id:, dispute_id:, evidence_type:, text:, created_on:)
@@ -23,9 +23,9 @@ module Moov
23
23
  # The size of the evidence file.
24
24
  field :size, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('size'), required: true } }
25
25
 
26
- field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::EvidenceType, false) } }
26
+ field :evidence_type, Models::Components::EvidenceType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('evidenceType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::EvidenceType, false) } }
27
27
  # The date and time the evidence was uploaded.
28
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
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
 
30
30
  sig { params(evidence_id: ::String, dispute_id: ::String, filename: ::String, mime_type: ::String, size: ::Integer, evidence_type: Models::Components::EvidenceType, created_on: ::DateTime).void }
31
31
  def initialize(evidence_id:, dispute_id:, filename:, mime_type:, size:, evidence_type:, created_on:)
@@ -15,7 +15,7 @@ module Moov
15
15
  # Total facilitator fee in cents. Only either `total` or `totalDecimal` can be set.
16
16
  field :total, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('total') } }
17
17
  # Same as `total`, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
18
- #
18
+ #
19
19
  # Only either `total` or `totalDecimal` can be set. Set this field if you expect the fee to be in fractions of a cent.
20
20
  field :total_decimal, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('totalDecimal') } }
21
21
  # Markup facilitator fee in cents. Only either `markup` or `markupDecimal` can be set.
@@ -17,7 +17,7 @@ module Moov
17
17
  # The name of the fee plan.
18
18
  field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
19
19
  # Specifies the card processing pricing model
20
- field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardAcquiringModel, false) } }
20
+ field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardAcquiringModel, false) } }
21
21
  # Additional usage-based fees for this plan.
22
22
  field :billable_fees, Crystalline::Array.new(Models::Components::BillableFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billableFees'), required: true } }
23
23
  # The minimum spending amount that must be met in the billing period. If actual usage is below the minimum amount, account is charged the difference.
@@ -25,7 +25,7 @@ module Moov
25
25
  # Fixed recurring amount paid in the billing period regardless of usage.
26
26
  field :monthly_platform_fee, Models::Components::MonthlyPlatformFee, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('monthlyPlatformFee'), required: true } }
27
27
 
28
- field :created_at, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdAt'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
28
+ field :created_at, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdAt'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
29
29
  # A description of the fee plan.
30
30
  field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
31
31
 
@@ -19,11 +19,11 @@ module Moov
19
19
  # The name of the agreement.
20
20
  field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
21
21
 
22
- field :accepted_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
22
+ field :accepted_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
23
23
 
24
- field :status, Models::Components::FeePlanAgreementStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::FeePlanAgreementStatus, false) } }
24
+ field :status, Models::Components::FeePlanAgreementStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FeePlanAgreementStatus, false) } }
25
25
  # Specifies the card processing pricing model
26
- field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardAcquiringModel, false) } }
26
+ field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardAcquiringModel, false) } }
27
27
 
28
28
  field :billable_fees, Crystalline::Array.new(Models::Components::BillableFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billableFees'), required: true } }
29
29
  # The minimum spending amount that must be met in the billing period. If actual usage is below the minimum amount, account is charged the difference.
@@ -17,7 +17,7 @@ module Moov
17
17
  # A fixed fee that is applied to the amount of each transaction in the `fixed` and `blended` fee models.
18
18
  field :fixed_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fixedAmount') } }
19
19
  # A percentage fee that is applied to the amount of each transaction in the `blended` fee model, expressed as a decimal.
20
- #
20
+ #
21
21
  # For example, 0.05% is '0.05'.
22
22
  field :variable_rate, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('variableRate') } }
23
23
  # Specifies the minimum allowable spending for a single transaction, working as a transaction floor.
@@ -19,17 +19,17 @@ module Moov
19
19
 
20
20
  field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
21
21
  # The file's purpose.
22
- field :file_purpose, Models::Components::FilePurpose, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('filePurpose'), required: true, 'decoder': Utils.enum_from_string(Models::Components::FilePurpose, false) } }
22
+ field :file_purpose, Models::Components::FilePurpose, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('filePurpose'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FilePurpose, false) } }
23
23
  # The file's status.
24
- field :file_status, Models::Components::FileStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fileStatus'), required: true, 'decoder': Utils.enum_from_string(Models::Components::FileStatus, false) } }
24
+ field :file_status, Models::Components::FileStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fileStatus'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FileStatus, false) } }
25
25
 
26
26
  field :metadata, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata'), required: true } }
27
27
 
28
28
  field :file_size_bytes, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fileSizeBytes'), required: true } }
29
29
 
30
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
30
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
31
31
 
32
- field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
32
+ field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
33
33
 
34
34
  field :decision_reason, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('decisionReason') } }
35
35
 
@@ -17,7 +17,7 @@ module Moov
17
17
  # The purpose of the file being uploaded.
18
18
  field :file_purpose, Models::Components::FilePurpose, { 'multipart_form': { 'field_name': 'filePurpose' } }
19
19
  # Additional metadata to be stored with the file, formatted as a JSON string.
20
- #
20
+ #
21
21
  # Valid keys are `representative_id`, `comment`, `requirement_id`, `error_code`.
22
22
  field :metadata, Crystalline::Nilable.new(::String), { 'multipart_form': { 'field_name': 'metadata' } }
23
23
 
@@ -13,9 +13,9 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
 
16
- field :method, Crystalline::Nilable.new(Models::Components::FulfillmentMethod), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('method'), 'decoder': Utils.enum_from_string(Models::Components::FulfillmentMethod, true) } }
16
+ field :method, Crystalline::Nilable.new(Models::Components::FulfillmentMethod), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('method'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FulfillmentMethod, true) } }
17
17
 
18
- field :timeframe, Crystalline::Nilable.new(Models::Components::FulfillmentTimeframe), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('timeframe'), 'decoder': Utils.enum_from_string(Models::Components::FulfillmentTimeframe, true) } }
18
+ field :timeframe, Crystalline::Nilable.new(Models::Components::FulfillmentTimeframe), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('timeframe'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FulfillmentTimeframe, true) } }
19
19
 
20
20
  sig { params(method: T.nilable(Models::Components::FulfillmentMethod), timeframe: T.nilable(Models::Components::FulfillmentTimeframe)).void }
21
21
  def initialize(method: nil, timeframe: nil)
@@ -19,7 +19,7 @@ module Moov
19
19
 
20
20
  field :shipment_duration_days, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('shipmentDurationDays'), required: true } }
21
21
 
22
- field :return_policy, Models::Components::ReturnPolicyType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('returnPolicy'), required: true, 'decoder': Utils.enum_from_string(Models::Components::ReturnPolicyType, false) } }
22
+ field :return_policy, Models::Components::ReturnPolicyType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('returnPolicy'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::ReturnPolicyType, false) } }
23
23
 
24
24
  sig { params(has_physical_goods: T::Boolean, is_shipping_product: T::Boolean, shipment_duration_days: ::Integer, return_policy: Models::Components::ReturnPolicyType).void }
25
25
  def initialize(has_physical_goods:, is_shipping_product:, shipment_duration_days:, return_policy:)
@@ -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': Utils.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,16 +25,16 @@ module Moov
25
25
  # Unique identifier for the wallet funding the card.
26
26
  field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
27
27
  # The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
28
- #
28
+ #
29
29
  # - `active`: The card is operational and approves authorizations. Generally becomes active shortly after card creation.
30
30
  # - `inactive`: The card cannot approve authorizations. This is currently a temporary state assigned post-creation during the activation process.
31
31
  # - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
32
32
  # - `pending-verification`: Awaiting additional authorized user verification before the card can be activated.
33
- field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': Utils.enum_from_string(Models::Components::IssuedCardState, false) } }
33
+ 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) } }
34
34
  # Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
35
- field :form_factor, Models::Components::IssuedCardFormFactor, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('formFactor'), required: true, 'decoder': Utils.enum_from_string(Models::Components::IssuedCardFormFactor, false) } }
35
+ 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) } }
36
36
 
37
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
37
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
38
38
  # The issued card's Primary Account Number (PAN)
39
39
  field :pan, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pan'), required: true } }
40
40
  # The issued card's 3- or 4-digit Card Verification Value (CVV).
@@ -8,7 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # GrantType - The type of grant being requested.
11
- #
11
+ #
12
12
  # - `client_credentials`: A grant type used by clients to obtain an access token
13
13
  # - `refresh_token`: A grant type used by clients to obtain a new access token using a refresh token
14
14
  class GrantType < T::Enum
@@ -20,13 +20,13 @@ module Moov
20
20
  # query parameter can be provided to resize the image.
21
21
  field :link, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('link'), required: true } }
22
22
 
23
- field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
23
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
24
24
 
25
- field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
25
+ field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
26
26
  # Alternative text for the image.
27
27
  field :alt_text, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('altText') } }
28
28
 
29
- field :disabled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disabledOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
29
+ field :disabled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disabledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
30
30
 
31
31
  sig { params(image_id: ::String, public_id: ::String, link: ::String, created_on: ::DateTime, updated_on: ::DateTime, alt_text: T.nilable(::String), disabled_on: T.nilable(::DateTime)).void }
32
32
  def initialize(image_id:, public_id:, link:, created_on:, updated_on:, alt_text: nil, disabled_on: nil)
@@ -19,7 +19,7 @@ module Moov
19
19
  # Wallet ID associated with the fee.
20
20
  field :wallet_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID') } }
21
21
  # Timestamp when the fee was created.
22
- field :created_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
22
+ field :created_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
23
23
  # Name of the fee.
24
24
  field :fee_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feeName') } }
25
25
  # The fee amount.
@@ -15,7 +15,7 @@ module Moov
15
15
  # ID of the payment method.
16
16
  field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
17
 
18
- field :payment_method_type, Models::Components::InstantBankCreditPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InstantBankCreditPaymentMethodPaymentMethodType, false) } }
18
+ field :payment_method_type, Models::Components::InstantBankCreditPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankCreditPaymentMethodPaymentMethodType, false) } }
19
19
  # A bank account as contained within a payment method.
20
20
  field :bank_account, Models::Components::PaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
21
 
@@ -15,7 +15,7 @@ module Moov
15
15
  # ID of the payment method.
16
16
  field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
17
 
18
- field :payment_method_type, Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, false) } }
18
+ field :payment_method_type, Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, false) } }
19
19
  # A bank account as contained within a payment method.
20
20
  field :bank_account, Models::Components::TransferPaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
21
 
@@ -0,0 +1,116 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class Invoice
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
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
+ field :invoice_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceID'), required: true } }
17
+
18
+ field :invoice_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceNumber'), required: true } }
19
+ # 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).
20
+ field :customer_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID'), required: true } }
21
+ # 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).
22
+ field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
23
+
24
+ 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) } }
25
+ # A collection of line items for an invoice.
26
+ field :line_items, Models::Components::InvoiceLineItems, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems'), required: true } }
27
+
28
+ field :subtotal_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('subtotalAmount'), required: true } }
29
+
30
+ field :tax_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount'), required: true } }
31
+ # Total amount of the invoice, sum of subTotalAmount and taxAmount
32
+ field :total_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('totalAmount'), required: true } }
33
+ # Total amount of pending transfers paid towards the invoice
34
+ field :pending_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pendingAmount'), required: true } }
35
+ # Total amount of completed transfers paid towards the invoice
36
+ field :paid_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paidAmount'), required: true } }
37
+ # Total amount of refunds initiated against transfers paid towards the invoice
38
+ field :refunded_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount'), required: true } }
39
+ # Total amount of disputes initiated against transfers paid towards the invoice
40
+ field :disputed_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount'), required: true } }
41
+
42
+ field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
43
+
44
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
45
+
46
+ field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
47
+ # Payment made towards an invoice, will be either a transfer or an external payment.
48
+ field :invoice_payments, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::InvoicePayment)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePayments') } }
49
+
50
+ field :invoice_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
51
+
52
+ field :due_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dueDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
53
+
54
+ field :sent_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sentOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
55
+
56
+ field :paid_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paidOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
57
+
58
+ field :canceled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('canceledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
59
+
60
+ sig { params(invoice_id: ::String, invoice_number: ::String, customer_account_id: ::String, partner_account_id: ::String, status: Models::Components::InvoiceStatus, line_items: Models::Components::InvoiceLineItems, subtotal_amount: Models::Components::AmountDecimal, tax_amount: Models::Components::AmountDecimal, total_amount: Models::Components::AmountDecimal, pending_amount: Models::Components::AmountDecimal, paid_amount: Models::Components::AmountDecimal, refunded_amount: Models::Components::AmountDecimal, disputed_amount: Models::Components::AmountDecimal, created_on: ::DateTime, description: T.nilable(::String), payment_link_code: T.nilable(::String), invoice_payments: T.nilable(T::Array[Models::Components::InvoicePayment]), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), sent_on: T.nilable(::DateTime), paid_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime)).void }
61
+ def initialize(invoice_id:, invoice_number:, customer_account_id:, partner_account_id:, status:, line_items:, subtotal_amount:, tax_amount:, total_amount:, pending_amount:, paid_amount:, refunded_amount:, disputed_amount:, created_on:, description: nil, payment_link_code: nil, invoice_payments: nil, invoice_date: nil, due_date: nil, sent_on: nil, paid_on: nil, canceled_on: nil)
62
+ @invoice_id = invoice_id
63
+ @invoice_number = invoice_number
64
+ @customer_account_id = customer_account_id
65
+ @partner_account_id = partner_account_id
66
+ @status = status
67
+ @line_items = line_items
68
+ @subtotal_amount = subtotal_amount
69
+ @tax_amount = tax_amount
70
+ @total_amount = total_amount
71
+ @pending_amount = pending_amount
72
+ @paid_amount = paid_amount
73
+ @refunded_amount = refunded_amount
74
+ @disputed_amount = disputed_amount
75
+ @created_on = created_on
76
+ @description = description
77
+ @payment_link_code = payment_link_code
78
+ @invoice_payments = invoice_payments
79
+ @invoice_date = invoice_date
80
+ @due_date = due_date
81
+ @sent_on = sent_on
82
+ @paid_on = paid_on
83
+ @canceled_on = canceled_on
84
+ end
85
+
86
+ sig { params(other: T.untyped).returns(T::Boolean) }
87
+ def ==(other)
88
+ return false unless other.is_a? self.class
89
+ return false unless @invoice_id == other.invoice_id
90
+ return false unless @invoice_number == other.invoice_number
91
+ return false unless @customer_account_id == other.customer_account_id
92
+ return false unless @partner_account_id == other.partner_account_id
93
+ return false unless @status == other.status
94
+ return false unless @line_items == other.line_items
95
+ return false unless @subtotal_amount == other.subtotal_amount
96
+ return false unless @tax_amount == other.tax_amount
97
+ return false unless @total_amount == other.total_amount
98
+ return false unless @pending_amount == other.pending_amount
99
+ return false unless @paid_amount == other.paid_amount
100
+ return false unless @refunded_amount == other.refunded_amount
101
+ return false unless @disputed_amount == other.disputed_amount
102
+ return false unless @created_on == other.created_on
103
+ return false unless @description == other.description
104
+ return false unless @payment_link_code == other.payment_link_code
105
+ return false unless @invoice_payments == other.invoice_payments
106
+ return false unless @invoice_date == other.invoice_date
107
+ return false unless @due_date == other.due_date
108
+ return false unless @sent_on == other.sent_on
109
+ return false unless @paid_on == other.paid_on
110
+ return false unless @canceled_on == other.canceled_on
111
+ true
112
+ end
113
+ end
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,55 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::Invoice
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::Invoice
11
+ def invoice_id(); end
12
+ def invoice_id=(str_); end
13
+ def invoice_number(); end
14
+ def invoice_number=(str_); end
15
+ def customer_account_id(); end
16
+ def customer_account_id=(str_); end
17
+ def partner_account_id(); end
18
+ def partner_account_id=(str_); end
19
+ def status(); end
20
+ def status=(str_); end
21
+ def line_items(); end
22
+ def line_items=(str_); end
23
+ def subtotal_amount(); end
24
+ def subtotal_amount=(str_); end
25
+ def tax_amount(); end
26
+ def tax_amount=(str_); end
27
+ def total_amount(); end
28
+ def total_amount=(str_); end
29
+ def pending_amount(); end
30
+ def pending_amount=(str_); end
31
+ def paid_amount(); end
32
+ def paid_amount=(str_); end
33
+ def refunded_amount(); end
34
+ def refunded_amount=(str_); end
35
+ def disputed_amount(); end
36
+ def disputed_amount=(str_); end
37
+ def created_on(); end
38
+ def created_on=(str_); end
39
+ def description(); end
40
+ def description=(str_); end
41
+ def payment_link_code(); end
42
+ def payment_link_code=(str_); end
43
+ def invoice_payments(); end
44
+ def invoice_payments=(str_); end
45
+ def invoice_date(); end
46
+ def invoice_date=(str_); end
47
+ def due_date(); end
48
+ def due_date=(str_); end
49
+ def sent_on(); end
50
+ def sent_on=(str_); end
51
+ def paid_on(); end
52
+ def paid_on=(str_); end
53
+ def canceled_on(); end
54
+ def canceled_on=(str_); end
55
+ end