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
@@ -0,0 +1,52 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class CreateInvoice
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 :customer_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerAccountID'), required: true } }
17
+ # A collection of line items for an invoice.
18
+ field :line_items, Models::Components::CreateInvoiceLineItems, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems'), required: true } }
19
+
20
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
21
+
22
+ field :invoice_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
23
+
24
+ field :due_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dueDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
25
+
26
+ field :tax_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount') } }
27
+
28
+ sig { params(customer_account_id: ::String, line_items: Models::Components::CreateInvoiceLineItems, description: T.nilable(::String), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), tax_amount: T.nilable(Models::Components::AmountDecimal)).void }
29
+ def initialize(customer_account_id:, line_items:, description: nil, invoice_date: nil, due_date: nil, tax_amount: nil)
30
+ @customer_account_id = customer_account_id
31
+ @line_items = line_items
32
+ @description = description
33
+ @invoice_date = invoice_date
34
+ @due_date = due_date
35
+ @tax_amount = tax_amount
36
+ end
37
+
38
+ sig { params(other: T.untyped).returns(T::Boolean) }
39
+ def ==(other)
40
+ return false unless other.is_a? self.class
41
+ return false unless @customer_account_id == other.customer_account_id
42
+ return false unless @line_items == other.line_items
43
+ return false unless @description == other.description
44
+ return false unless @invoice_date == other.invoice_date
45
+ return false unless @due_date == other.due_date
46
+ return false unless @tax_amount == other.tax_amount
47
+ true
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,23 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoice
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoice
11
+ def customer_account_id(); end
12
+ def customer_account_id=(str_); end
13
+ def line_items(); end
14
+ def line_items=(str_); end
15
+ def description(); end
16
+ def description=(str_); end
17
+ def invoice_date(); end
18
+ def invoice_date=(str_); end
19
+ def due_date(); end
20
+ def due_date=(str_); end
21
+ def tax_amount(); end
22
+ def tax_amount=(str_); end
23
+ end
@@ -0,0 +1,49 @@
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
+ # Represents a single item in an invoice, including optional modifiers and quantity.
11
+ class CreateInvoiceLineItem
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The name of the item.
16
+ field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
17
+ # The base price of the item before applying option modifiers.
18
+ field :base_price, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('basePrice'), required: true } }
19
+ # The quantity of this item.
20
+ field :quantity, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity'), required: true } }
21
+ # Optional unique identifier associating the line item with a product.
22
+ # This is for reporting or tracking purposes, and does not populate other details of the line item.
23
+ field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('productID') } }
24
+ # Optional list of modifiers applied to this item (e.g., toppings, upgrades, customizations).
25
+ field :options, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CreateInvoiceLineItemOption)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options') } }
26
+
27
+ sig { params(name: ::String, base_price: Models::Components::AmountDecimal, quantity: ::Integer, product_id: T.nilable(::String), options: T.nilable(T::Array[Models::Components::CreateInvoiceLineItemOption])).void }
28
+ def initialize(name:, base_price:, quantity:, product_id: nil, options: nil)
29
+ @name = name
30
+ @base_price = base_price
31
+ @quantity = quantity
32
+ @product_id = product_id
33
+ @options = options
34
+ end
35
+
36
+ sig { params(other: T.untyped).returns(T::Boolean) }
37
+ def ==(other)
38
+ return false unless other.is_a? self.class
39
+ return false unless @name == other.name
40
+ return false unless @base_price == other.base_price
41
+ return false unless @quantity == other.quantity
42
+ return false unless @product_id == other.product_id
43
+ return false unless @options == other.options
44
+ true
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItem
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItem
11
+ def name(); end
12
+ def name=(str_); end
13
+ def base_price(); end
14
+ def base_price=(str_); end
15
+ def quantity(); end
16
+ def quantity=(str_); end
17
+ def product_id(); end
18
+ def product_id=(str_); end
19
+ def options(); end
20
+ def options=(str_); end
21
+ end
@@ -0,0 +1,44 @@
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
+ # Represents a modifier or option applied to a line item.
11
+ class CreateInvoiceLineItemOption
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The name of the option or modifier.
16
+ field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
17
+ # The quantity of this option.
18
+ field :quantity, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity'), required: true } }
19
+ # Optional price modification applied by this option. Can be positive, negative, or zero.
20
+ field :price_modifier, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priceModifier') } }
21
+ # Optional group identifier to categorize related options (e.g., 'toppings').
22
+ field :group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('group') } }
23
+
24
+ sig { params(name: ::String, quantity: ::Integer, price_modifier: T.nilable(Models::Components::AmountDecimal), group: T.nilable(::String)).void }
25
+ def initialize(name:, quantity:, price_modifier: nil, group: nil)
26
+ @name = name
27
+ @quantity = quantity
28
+ @price_modifier = price_modifier
29
+ @group = group
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @name == other.name
36
+ return false unless @quantity == other.quantity
37
+ return false unless @price_modifier == other.price_modifier
38
+ return false unless @group == other.group
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItemOption
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItemOption
11
+ def name(); end
12
+ def name=(str_); end
13
+ def quantity(); end
14
+ def quantity=(str_); end
15
+ def price_modifier(); end
16
+ def price_modifier=(str_); end
17
+ def group(); end
18
+ def group=(str_); end
19
+ end
@@ -0,0 +1,44 @@
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 CreateInvoiceLineItemOptionValidationError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name') } }
17
+
18
+ field :group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('group') } }
19
+
20
+ field :price_modifier, Crystalline::Nilable.new(Models::Components::AmountDecimalValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priceModifier') } }
21
+
22
+ field :quantity, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity') } }
23
+
24
+ sig { params(name: T.nilable(::String), group: T.nilable(::String), price_modifier: T.nilable(Models::Components::AmountDecimalValidationError), quantity: T.nilable(::String)).void }
25
+ def initialize(name: nil, group: nil, price_modifier: nil, quantity: nil)
26
+ @name = name
27
+ @group = group
28
+ @price_modifier = price_modifier
29
+ @quantity = quantity
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @name == other.name
36
+ return false unless @group == other.group
37
+ return false unless @price_modifier == other.price_modifier
38
+ return false unless @quantity == other.quantity
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItemOptionValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItemOptionValidationError
11
+ def name(); end
12
+ def name=(str_); end
13
+ def group(); end
14
+ def group=(str_); end
15
+ def price_modifier(); end
16
+ def price_modifier=(str_); end
17
+ def quantity(); end
18
+ def quantity=(str_); end
19
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # A collection of line items for an invoice.
11
+ class CreateInvoiceLineItems
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The list of line items.
16
+ field :items, Crystalline::Array.new(Models::Components::CreateInvoiceLineItem), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('items'), required: true } }
17
+
18
+ sig { params(items: T::Array[Models::Components::CreateInvoiceLineItem]).void }
19
+ def initialize(items:)
20
+ @items = items
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @items == other.items
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItems
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItems
11
+ def items(); end
12
+ def items=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+ # A collection of line items for an invoice.
11
+ class CreateInvoiceLineItemsUpdate
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The list of line items.
16
+ field :items, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CreateInvoiceLineItem)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('items') } }
17
+
18
+ sig { params(items: T.nilable(T::Array[Models::Components::CreateInvoiceLineItem])).void }
19
+ def initialize(items: nil)
20
+ @items = items
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @items == other.items
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItemsUpdate
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItemsUpdate
11
+ def items(); end
12
+ def items=(str_); end
13
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class CreateInvoiceLineItemsValidationError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :items, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::CreateInvoiceLineItemValidationError)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('items') } }
17
+
18
+ sig { params(items: T.nilable(T::Hash[Symbol, Models::Components::CreateInvoiceLineItemValidationError])).void }
19
+ def initialize(items: nil)
20
+ @items = items
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @items == other.items
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItemsValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItemsValidationError
11
+ def items(); end
12
+ def items=(str_); end
13
+ end
@@ -0,0 +1,48 @@
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 CreateInvoiceLineItemValidationError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('productID') } }
17
+
18
+ field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name') } }
19
+
20
+ field :base_price, Crystalline::Nilable.new(Models::Components::AmountDecimalValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('basePrice') } }
21
+
22
+ field :options, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, Models::Components::CreateInvoiceLineItemOptionValidationError)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options') } }
23
+
24
+ field :quantity, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('quantity') } }
25
+
26
+ sig { params(product_id: T.nilable(::String), name: T.nilable(::String), base_price: T.nilable(Models::Components::AmountDecimalValidationError), options: T.nilable(T::Hash[Symbol, Models::Components::CreateInvoiceLineItemOptionValidationError]), quantity: T.nilable(::String)).void }
27
+ def initialize(product_id: nil, name: nil, base_price: nil, options: nil, quantity: nil)
28
+ @product_id = product_id
29
+ @name = name
30
+ @base_price = base_price
31
+ @options = options
32
+ @quantity = quantity
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @product_id == other.product_id
39
+ return false unless @name == other.name
40
+ return false unless @base_price == other.base_price
41
+ return false unless @options == other.options
42
+ return false unless @quantity == other.quantity
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoiceLineItemValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoiceLineItemValidationError
11
+ def product_id(); end
12
+ def product_id=(str_); end
13
+ def name(); end
14
+ def name=(str_); end
15
+ def base_price(); end
16
+ def base_price=(str_); end
17
+ def options(); end
18
+ def options=(str_); end
19
+ def quantity(); end
20
+ def quantity=(str_); end
21
+ end
@@ -0,0 +1,44 @@
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 CreateInvoicePayment
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
17
+
18
+ field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
19
+
20
+ field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
21
+
22
+ field :payment_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
23
+
24
+ sig { params(amount: Models::Components::AmountDecimal, foreign_id: T.nilable(::String), description: T.nilable(::String), payment_date: T.nilable(::DateTime)).void }
25
+ def initialize(amount:, foreign_id: nil, description: nil, payment_date: nil)
26
+ @amount = amount
27
+ @foreign_id = foreign_id
28
+ @description = description
29
+ @payment_date = payment_date
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @amount == other.amount
36
+ return false unless @foreign_id == other.foreign_id
37
+ return false unless @description == other.description
38
+ return false unless @payment_date == other.payment_date
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CreateInvoicePayment
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CreateInvoicePayment
11
+ def amount(); end
12
+ def amount=(str_); end
13
+ def foreign_id(); end
14
+ def foreign_id=(str_); end
15
+ def description(); end
16
+ def description=(str_); end
17
+ def payment_date(); end
18
+ def payment_date=(str_); end
19
+ end
@@ -8,11 +8,11 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # Request to create a new payment link.
11
- #
11
+ #
12
12
  # A payment link must include either `payment` or `payout` details, but not both. For payout payment links,
13
13
  # `maxUses` will automatically be set to 1, as these are intended for a one-time disbursement
14
14
  # to a specific recipient.
15
- #
15
+ #
16
16
  class CreatePaymentLink
17
17
  extend T::Sig
18
18
  include Crystalline::MetadataFields
@@ -28,11 +28,11 @@ module Moov
28
28
 
29
29
  field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
30
30
  # An optional limit on the number of times this payment link can be used.
31
- #
31
+ #
32
32
  # **For payouts, `maxUses` is always 1.**
33
33
  field :max_uses, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('maxUses') } }
34
34
  # An optional expiration date for this payment link.
35
- field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': Utils.datetime_from_iso_format(true) } }
35
+ field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
36
36
 
37
37
  field :customer, Crystalline::Nilable.new(Models::Components::PaymentLinkCustomerOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customer') } }
38
38
  # Options for payment links used to collect payment.
@@ -22,8 +22,8 @@ module Moov
22
22
  field :options, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CreatePaymentLinkLineItemOption)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options') } }
23
23
  # Optional list of images associated with this line item.
24
24
  # This field is deprecated and will be ignored. A future release will populate images associated with the given productID.
25
- #
26
- # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
25
+ #
26
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
27
27
  field :image_i_ds, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('imageIDs') } }
28
28
  # Optional unique identifier associating the line item with a product.
29
29
  # This is for reporting or tracking purposes, and does not populate other details of the line item.
@@ -20,8 +20,8 @@ module Moov
20
20
  field :price_modifier, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priceModifier') } }
21
21
  # Optional list of images associated with this line item option.
22
22
  # This field is deprecated and will be ignored. A future release will populate images associated with the given productID.
23
- #
24
- # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
23
+ #
24
+ # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
25
25
  field :image_i_ds, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('imageIDs') } }
26
26
  # Optional group identifier to categorize related options (e.g., 'toppings').
27
27
  field :group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('group') } }
@@ -15,7 +15,7 @@ module Moov
15
15
  # The display name of a product option.
16
16
  field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
17
17
  # A detailed description of the option.
18
- #
18
+ #
19
19
  # - Must be valid UTF-8 text
20
20
  # - Supports Markdown for formatting
21
21
  # - HTML is not permitted and will be rejected
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('name'), required: true } }
17
17
  # The minimum number of options that must be selected from this group.
18
- #
18
+ #
19
19
  # A value of 0 indicates that no selection from this group is required.
20
20
  field :min_select, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('minSelect'), required: true } }
21
21
  # The maximum number of options that can be selected from this group.
@@ -23,7 +23,7 @@ module Moov
23
23
  # The options available within this group.
24
24
  field :options, Crystalline::Array.new(Models::Components::CreateProductOption), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options'), required: true } }
25
25
  # A detailed description of the option group.
26
- #
26
+ #
27
27
  # - Must be valid UTF-8 text
28
28
  # - Supports Markdown for formatting
29
29
  # - HTML is not permitted and will be rejected
@@ -8,7 +8,7 @@ module Moov
8
8
  module Models
9
9
  module Components
10
10
  # Specifies a partial amount to refund.
11
- #
11
+ #
12
12
  # This request body is optional, an empty body will issue a refund for the full amount of the original transfer.
13
13
  class CreateRefund
14
14
  extend T::Sig
@@ -15,7 +15,7 @@ module Moov
15
15
 
16
16
  field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
17
17
 
18
- field :status, Models::Components::SweepConfigStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::SweepConfigStatus, false) } }
18
+ 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) } }
19
19
  # ID of the payment method.
20
20
  field :push_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushPaymentMethodID'), required: true } }
21
21
  # ID of the payment method.