moov_ruby 26.10.0.pre.dev.2 → 26.10.0.pre.dev.3
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.
- checksums.yaml +4 -4
- data/lib/crystalline/module.rb +1 -1
- data/lib/moov/bank_accounts.rb +439 -0
- data/lib/moov/card_issuing.rb +1 -1
- data/lib/moov/images.rb +17 -2
- data/lib/moov/institutions.rb +1 -1
- data/lib/moov/models/components/account.rb +2 -2
- data/lib/moov/models/components/accountnameverification.rb +4 -4
- data/lib/moov/models/components/accounttype.rb +3 -1
- data/lib/moov/models/components/accountverificationstatus.rb +3 -1
- data/lib/moov/models/components/achcredittransferprocessingdetails.rb +6 -2
- data/lib/moov/models/components/achcredittransferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/achdebitoptions.rb +2 -2
- data/lib/moov/models/components/achdebittransferprocessingdetails.rb +6 -2
- data/lib/moov/models/components/achdebittransferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/achreturncode.rb +3 -1
- data/lib/moov/models/components/achtransactionstatus.rb +26 -0
- data/lib/moov/models/components/achtransactionstatus.rbi +11 -0
- data/lib/moov/models/components/adjustmentfees.rb +11 -15
- data/lib/moov/models/components/adjustmentfees.rbi +4 -4
- data/lib/moov/models/components/amountdecimalrange.rb +0 -2
- data/lib/moov/models/components/amountdecimalrangeupdate.rb +0 -2
- data/lib/moov/models/components/applepayresponse.rb +2 -2
- data/lib/moov/models/components/applicationscope.rb +4 -2
- data/lib/moov/models/components/asynccreatedrefund.rb +1 -1
- data/lib/moov/models/components/authmethod.rb +3 -1
- data/lib/moov/models/components/bankaccount.rb +4 -4
- data/lib/moov/models/components/bankaccountattestation.rb +52 -0
- data/lib/moov/models/components/bankaccountattestation.rbi +23 -0
- data/lib/moov/models/components/bankaccountattestationeligibility.rb +36 -0
- data/lib/moov/models/components/bankaccountattestationeligibility.rbi +15 -0
- data/lib/moov/models/components/bankaccountattestationsummary.rb +44 -0
- data/lib/moov/models/components/bankaccountattestationsummary.rbi +19 -0
- data/lib/moov/models/components/bankaccountexception.rb +2 -2
- data/lib/moov/models/components/bankaccountholdertype.rb +3 -1
- data/lib/moov/models/components/bankaccountintegration.rb +2 -2
- data/lib/moov/models/components/bankaccountstatus.rb +3 -1
- data/lib/moov/models/components/bankaccountstatusreason.rb +3 -1
- data/lib/moov/models/components/bankaccounttype.rb +3 -1
- data/lib/moov/models/components/bankaccountverification.rb +2 -2
- data/lib/moov/models/components/bankaccountverificationcreated.rb +2 -2
- data/lib/moov/models/components/bankaccountverificationmethod.rb +3 -1
- data/lib/moov/models/components/bankaccountverificationstatus.rb +3 -1
- data/lib/moov/models/components/basicpaymentmethod.rb +1 -1
- data/lib/moov/models/components/billablefee.rb +2 -2
- data/lib/moov/models/components/billingadjustment.rb +40 -0
- data/lib/moov/models/components/billingadjustment.rbi +17 -0
- data/lib/moov/models/components/billingsummary.rb +8 -4
- data/lib/moov/models/components/billingsummary.rbi +2 -0
- data/lib/moov/models/components/billingsummary_adjustmentfees.rb +40 -0
- data/lib/moov/models/components/billingsummary_adjustmentfees.rbi +15 -0
- data/lib/moov/models/components/businesspresence.rb +3 -1
- data/lib/moov/models/components/businessprofile.rb +2 -2
- data/lib/moov/models/components/businesstype.rb +3 -1
- data/lib/moov/models/components/calltoaction.rb +3 -1
- data/lib/moov/models/components/cancellation.rb +2 -2
- data/lib/moov/models/components/cancellationstatus.rb +3 -1
- data/lib/moov/models/components/capability.rb +2 -2
- data/lib/moov/models/components/capabilityid.rb +3 -1
- data/lib/moov/models/components/capabilitystatus.rb +3 -1
- data/lib/moov/models/components/capture.rb +11 -6
- data/lib/moov/models/components/capture.rbi +2 -0
- data/lib/moov/models/components/capturestatus.rb +3 -3
- data/lib/moov/models/components/card.rb +4 -4
- data/lib/moov/models/components/cardaccountupdater.rb +1 -1
- data/lib/moov/models/components/cardacquiringmodel.rb +3 -1
- data/lib/moov/models/components/cardacquiringrefund.rb +2 -2
- data/lib/moov/models/components/cardbrand.rb +3 -1
- data/lib/moov/models/components/cardissuing.rb +34 -0
- data/lib/moov/models/components/cardissuing.rbi +13 -0
- data/lib/moov/models/components/cardissuingerror.rb +32 -0
- data/lib/moov/models/components/cardissuingerror.rbi +13 -0
- data/lib/moov/models/components/cardissuingnetwork.rb +3 -1
- data/lib/moov/models/components/cardmetadata.rb +4 -4
- data/lib/moov/models/components/cardpaymentoptions.rb +1 -1
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +1 -1
- data/lib/moov/models/components/cardpaymenttransactionstatus.rb +25 -0
- data/lib/moov/models/components/cardpaymenttransactionstatus.rbi +11 -0
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rb +11 -7
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rbi +4 -2
- data/lib/moov/models/components/cardtransactionfailurecode.rb +19 -1
- data/lib/moov/models/components/cardtype.rb +3 -1
- data/lib/moov/models/components/cardupdatereason.rb +3 -1
- data/lib/moov/models/components/cardverification.rb +3 -3
- data/lib/moov/models/components/cardverificationresult.rb +3 -1
- data/lib/moov/models/components/collectfundscardpayments.rb +1 -1
- data/lib/moov/models/components/collectionpaymentmethodtype.rb +3 -1
- data/lib/moov/models/components/createaccount.rb +2 -2
- data/lib/moov/models/components/createaccounttype.rb +3 -1
- data/lib/moov/models/components/createbankaccountattestation.rb +36 -0
- data/lib/moov/models/components/createbankaccountattestation.rbi +15 -0
- data/lib/moov/models/components/createbusinessprofile.rb +2 -2
- data/lib/moov/models/components/createcancellation.rb +4 -2
- data/lib/moov/models/components/createcapture.rb +7 -4
- data/lib/moov/models/components/createdtransfer.rb +9 -5
- data/lib/moov/models/components/createevidencetext.rb +1 -1
- data/lib/moov/models/components/createfeeplanagreement.rb +13 -3
- data/lib/moov/models/components/createfeeplanagreement.rbi +2 -0
- data/lib/moov/models/components/createpaymentlink.rb +1 -1
- data/lib/moov/models/components/createrefund.rb +2 -2
- data/lib/moov/models/components/createreversal.rb +4 -1
- data/lib/moov/models/components/createsweepconfig.rb +1 -1
- data/lib/moov/models/components/createterminalapplication.rb +1 -1
- data/lib/moov/models/components/createtippresets.rb +1 -1
- data/lib/moov/models/components/createtransfer.rb +1 -1
- data/lib/moov/models/components/createtransferdestination.rb +6 -2
- data/lib/moov/models/components/createtransferdestination.rbi +2 -0
- data/lib/moov/models/components/createtransferdestinationwire.rb +32 -0
- data/lib/moov/models/components/createtransferdestinationwire.rbi +13 -0
- data/lib/moov/models/components/createtransfersourceach.rb +2 -2
- data/lib/moov/models/components/createtransfersourcecard.rb +1 -1
- data/lib/moov/models/components/createwebhook.rb +1 -1
- data/lib/moov/models/components/debitholdperiod.rb +3 -1
- data/lib/moov/models/components/depositaccountingestedresponse.rb +1 -1
- data/lib/moov/models/components/disbursementpaymentmethodtype.rb +3 -1
- data/lib/moov/models/components/dispute.rb +2 -2
- data/lib/moov/models/components/disputeevidenceresponse.rb +1 -1
- data/lib/moov/models/components/disputephase.rb +3 -1
- data/lib/moov/models/components/disputestatus.rb +3 -1
- data/lib/moov/models/components/document.rb +1 -1
- data/lib/moov/models/components/documenttype.rb +3 -1
- data/lib/moov/models/components/domesticpullfromcard.rb +3 -1
- data/lib/moov/models/components/domesticpushtocard.rb +3 -1
- data/lib/moov/models/components/estimatedactivity.rb +1 -1
- data/lib/moov/models/components/evidencetextresponse.rb +1 -1
- data/lib/moov/models/components/evidencetype.rb +3 -1
- data/lib/moov/models/components/evidenceuploadresponse.rb +1 -1
- data/lib/moov/models/components/facilitatorfee.rb +6 -17
- data/lib/moov/models/components/facilitatorfee.rbi +0 -4
- data/lib/moov/models/components/feecategory.rb +3 -1
- data/lib/moov/models/components/feemodel.rb +3 -1
- data/lib/moov/models/components/feepaidby.rb +4 -2
- data/lib/moov/models/components/feeplan.rb +1 -1
- data/lib/moov/models/components/feeplanagreement.rb +12 -4
- data/lib/moov/models/components/feeplanagreement.rbi +4 -0
- data/lib/moov/models/components/feeplanagreementstatus.rb +3 -1
- data/lib/moov/models/components/filedetails.rb +2 -2
- data/lib/moov/models/components/filepurpose.rb +3 -1
- data/lib/moov/models/components/filestatus.rb +3 -1
- data/lib/moov/models/components/fulfillment.rb +2 -2
- data/lib/moov/models/components/fulfillmentdetails.rb +1 -1
- data/lib/moov/models/components/fulfillmentmethod.rb +3 -1
- data/lib/moov/models/components/fulfillmenttimeframe.rb +3 -1
- data/lib/moov/models/components/fullissuedcard.rb +3 -2
- data/lib/moov/models/components/geographicreach.rb +3 -1
- data/lib/moov/models/components/googlepayresponse.rb +3 -3
- data/lib/moov/models/components/incurredfee.rb +1 -1
- data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rb +8 -4
- data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/instantbankfailurecode.rb +3 -1
- data/lib/moov/models/components/instantbanknetwork.rb +3 -1
- data/lib/moov/models/components/instantbanktransactionstatus.rb +23 -0
- data/lib/moov/models/components/instantbanktransactionstatus.rbi +11 -0
- data/lib/moov/models/components/invoice.rb +1 -1
- data/lib/moov/models/components/invoicepayment.rb +1 -1
- data/lib/moov/models/components/invoicepaymenttype.rb +3 -1
- data/lib/moov/models/components/invoicestatus.rb +3 -1
- data/lib/moov/models/components/issuedcard.rb +3 -2
- data/lib/moov/models/components/issuedcardauthorization.rb +2 -2
- data/lib/moov/models/components/issuedcardauthorizationevent.rb +2 -2
- data/lib/moov/models/components/issuedcardauthorizationeventresult.rb +3 -1
- data/lib/moov/models/components/issuedcardeventtype.rb +3 -1
- data/lib/moov/models/components/issuedcardstate.rb +5 -1
- data/lib/moov/models/components/issuedcontrols.rb +2 -2
- data/lib/moov/models/components/issuedvelocitylimit.rb +1 -1
- data/lib/moov/models/components/issuingauthorizationstatus.rb +3 -1
- data/lib/moov/models/components/issuingcontrols.rb +3 -3
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +1 -1
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +4 -2
- data/lib/moov/models/components/issuingintervallimit.rb +3 -1
- data/lib/moov/models/components/issuingmerchantcategory.rb +3 -1
- data/lib/moov/models/components/issuingvelocitylimit.rb +1 -1
- data/lib/moov/models/components/jsonwebkey.rb +1 -1
- data/lib/moov/models/components/linkedapplepaypaymentmethod.rb +1 -1
- data/lib/moov/models/components/linkedgooglepaypaymentmethod.rb +1 -1
- data/lib/moov/models/components/merchantcategory.rb +1 -1
- data/lib/moov/models/components/merchantcategoryrestrictions.rb +3 -3
- data/lib/moov/models/components/merchantentry.rb +6 -6
- data/lib/moov/models/components/merchantentry.rbi +2 -2
- data/lib/moov/models/components/merchantentryerror.rb +5 -5
- data/lib/moov/models/components/merchantentryerror.rbi +2 -2
- data/lib/moov/models/components/merchantrestrictions.rb +2 -2
- data/lib/moov/models/components/mode.rb +3 -1
- data/lib/moov/models/components/monthlyvolumerange.rb +3 -1
- data/lib/moov/models/components/moovfee.rb +1 -1
- data/lib/moov/models/components/occurrencesresponse.rb +2 -2
- data/lib/moov/models/components/occurrencestatus.rb +3 -1
- data/lib/moov/models/components/onboardingpartneraccount.rb +1 -1
- data/lib/moov/models/components/partnerpricingagreement.rb +15 -7
- data/lib/moov/models/components/partnerpricingagreement.rbi +4 -0
- data/lib/moov/models/components/patchbusiness.rb +2 -2
- data/lib/moov/models/components/patchwallet.rb +1 -1
- data/lib/moov/models/components/paymentlink.rb +4 -6
- data/lib/moov/models/components/paymentlinkcustomamountpaymentdetails.rb +0 -2
- data/lib/moov/models/components/paymentlinkcustomamountpaymentdetailsupdate.rb +0 -2
- data/lib/moov/models/components/paymentlinkdisplayoptions.rb +1 -1
- data/lib/moov/models/components/paymentlinkdisplayoptionsupdate.rb +1 -1
- data/lib/moov/models/components/paymentlinkpayoutdetails.rb +5 -7
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +5 -7
- data/lib/moov/models/components/paymentlinkstatus.rb +3 -1
- data/lib/moov/models/components/paymentlinktype.rb +3 -1
- data/lib/moov/models/components/paymentmethodsbankaccount.rb +3 -3
- data/lib/moov/models/components/paymentmethodscard.rb +4 -4
- data/lib/moov/models/components/paymentmethodswallet.rb +1 -1
- data/lib/moov/models/components/paymentmethodtype.rb +4 -1
- data/lib/moov/models/components/pendinglitigation.rb +3 -1
- data/lib/moov/models/components/primaryregulator.rb +3 -1
- data/lib/moov/models/components/pullfromcardoptions.rb +1 -1
- data/lib/moov/models/components/pullfromcardtransactionstatus.rb +22 -0
- data/lib/moov/models/components/pullfromcardtransactionstatus.rbi +11 -0
- data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rb +7 -3
- data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/pushdeliveryspeed.rb +3 -1
- data/lib/moov/models/components/pushoptions.rb +5 -4
- data/lib/moov/models/components/pushoptionsupdate.rb +5 -4
- data/lib/moov/models/components/pushtocardtransactionstatus.rb +24 -0
- data/lib/moov/models/components/pushtocardtransactionstatus.rbi +11 -0
- data/lib/moov/models/components/pushtocardtransferprocessingdetails.rb +7 -3
- data/lib/moov/models/components/pushtocardtransferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/puttippresets.rb +1 -1
- data/lib/moov/models/components/refundpolicy.rb +3 -1
- data/lib/moov/models/components/refundstatus.rb +3 -1
- data/lib/moov/models/components/requestcard.rb +1 -1
- data/lib/moov/models/components/requirementerror.rb +2 -2
- data/lib/moov/models/components/requirementerrorcode.rb +3 -1
- data/lib/moov/models/components/requirementid.rb +18 -1
- data/lib/moov/models/components/resolutionlink.rb +1 -1
- data/lib/moov/models/components/resolutionlinkstatus.rb +3 -1
- data/lib/moov/models/components/returnpolicytype.rb +3 -1
- data/lib/moov/models/components/reversalamountdetails.rb +3 -1
- data/lib/moov/models/components/reversedwithcancellation.rb +1 -1
- data/lib/moov/models/components/rtprejectioncode.rb +3 -1
- data/lib/moov/models/components/schedulelistresponse.rb +1 -1
- data/lib/moov/models/components/scheduleresponse.rb +1 -1
- data/lib/moov/models/components/seccode.rb +3 -1
- data/lib/moov/models/components/sourcesystem.rb +3 -1
- data/lib/moov/models/components/statement.rb +6 -2
- data/lib/moov/models/components/statement.rbi +2 -0
- data/lib/moov/models/components/sweep.rb +1 -1
- data/lib/moov/models/components/sweepconfig.rb +3 -3
- data/lib/moov/models/components/sweepconfigpaymentmethod.rb +1 -1
- data/lib/moov/models/components/sweepconfigstatus.rb +3 -1
- data/lib/moov/models/components/sweepstatus.rb +3 -1
- data/lib/moov/models/components/sweepsubtotal.rb +1 -1
- data/lib/moov/models/components/terminalapplication.rb +2 -2
- data/lib/moov/models/components/terminalapplicationplatform.rb +3 -1
- data/lib/moov/models/components/terminalapplicationstatus.rb +3 -1
- data/lib/moov/models/components/terminalcard.rb +2 -2
- data/lib/moov/models/components/ticket.rb +1 -1
- data/lib/moov/models/components/ticketstatus.rb +3 -1
- data/lib/moov/models/components/tipcalculationbasis.rb +3 -1
- data/lib/moov/models/components/tippresets.rb +1 -1
- data/lib/moov/models/components/transactionsource.rb +3 -1
- data/lib/moov/models/components/transfer.rb +9 -5
- data/lib/moov/models/components/transferauthorization.rb +7 -7
- data/lib/moov/models/components/transferdestination.rb +1 -1
- data/lib/moov/models/components/transferfailurereason.rb +3 -1
- data/lib/moov/models/components/transferfeepaidby.rb +2 -2
- data/lib/moov/models/components/transferoptions.rb +3 -3
- data/lib/moov/models/components/transferparty.rb +3 -1
- data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +3 -3
- data/lib/moov/models/components/transferpaymentmethodscard.rb +4 -4
- data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -1
- data/lib/moov/models/components/transferpaymentmethodtype.rb +4 -1
- data/lib/moov/models/components/transferprocessingdetails.rb +6 -2
- data/lib/moov/models/components/transferprocessingdetails.rbi +2 -0
- data/lib/moov/models/components/transferrailoptions.rb +6 -2
- data/lib/moov/models/components/transferrailoptions.rbi +2 -0
- data/lib/moov/models/components/transfersource.rb +1 -1
- data/lib/moov/models/components/transferstatus.rb +3 -1
- data/lib/moov/models/components/transferterminalcard.rb +2 -2
- data/lib/moov/models/components/transfertype.rb +4 -1
- data/lib/moov/models/components/underwriting.rb +12 -6
- data/lib/moov/models/components/underwriting.rbi +2 -0
- data/lib/moov/models/components/underwritingstatus.rb +3 -1
- data/lib/moov/models/components/updateevidence.rb +1 -1
- data/lib/moov/models/components/updateinvoice.rb +1 -1
- data/lib/moov/models/components/updateissuedcard.rb +2 -0
- data/lib/moov/models/components/updateissuedcardstate.rb +4 -0
- data/lib/moov/models/components/updateissuingcontrols.rb +5 -5
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +1 -1
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +3 -3
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +3 -3
- data/lib/moov/models/components/updatepaymentlink.rb +1 -1
- data/lib/moov/models/components/updatewebhook.rb +1 -1
- data/lib/moov/models/components/upsertunderwriting.rb +11 -5
- data/lib/moov/models/components/upsertunderwriting.rbi +2 -0
- data/lib/moov/models/components/use.rb +3 -1
- data/lib/moov/models/components/verification.rb +3 -3
- data/lib/moov/models/components/verificationstatus.rb +3 -1
- data/lib/moov/models/components/verificationstatusdetail.rb +3 -1
- data/lib/moov/models/components/wallet.rb +2 -2
- data/lib/moov/models/components/walletstatus.rb +3 -1
- data/lib/moov/models/components/wallettransaction.rb +3 -3
- data/lib/moov/models/components/wallettransactionsourcetype.rb +3 -1
- data/lib/moov/models/components/wallettransactionstatus.rb +3 -1
- data/lib/moov/models/components/wallettransactiontype.rb +4 -1
- data/lib/moov/models/components/wallettype.rb +3 -1
- data/lib/moov/models/components/webhook.rb +1 -1
- data/lib/moov/models/components/webhookdatabankaccountcreated.rb +1 -1
- data/lib/moov/models/components/webhookdatabankaccountdeleted.rb +1 -1
- data/lib/moov/models/components/webhookdatabankaccountupdated.rb +2 -2
- data/lib/moov/models/components/webhookdatacancellationcreated.rb +1 -1
- data/lib/moov/models/components/webhookdatacancellationupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatacapabilityrequested.rb +1 -1
- data/lib/moov/models/components/webhookdatacapabilityupdated.rb +2 -2
- data/lib/moov/models/components/webhookdatacaptureupdated.rb +44 -0
- data/lib/moov/models/components/webhookdatacaptureupdated.rbi +19 -0
- data/lib/moov/models/components/webhookdatacardautoupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatadisputecreated.rb +2 -2
- data/lib/moov/models/components/webhookdatadisputeupdated.rb +2 -2
- data/lib/moov/models/components/webhookdatainvoiceupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatarefundupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatasweepupdated.rb +1 -1
- data/lib/moov/models/components/webhookdataterminalapplicationcreated.rb +1 -1
- data/lib/moov/models/components/webhookdataterminalapplicationupdated.rb +1 -1
- data/lib/moov/models/components/webhookdataticketupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatatransferstatus.rb +1 -0
- data/lib/moov/models/components/webhookdatawallettransactionupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatawalletupdated.rb +1 -1
- data/lib/moov/models/components/webhookevent.rb +3 -3
- data/lib/moov/models/components/webhookeventtype.rb +4 -1
- data/lib/moov/models/components/webhookstatus.rb +3 -1
- data/lib/moov/models/components/wirecreditpaymentmethod.rb +40 -0
- data/lib/moov/models/components/wirecreditpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/wirecreditpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/wirecreditpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/wirecredittransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/wirecredittransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/wirecredittransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/wirecredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/wirefailurecode.rb +28 -0
- data/lib/moov/models/components/wirefailurecode.rbi +11 -0
- data/lib/moov/models/components/wireoptions.rb +32 -0
- data/lib/moov/models/components/wireoptions.rbi +13 -0
- data/lib/moov/models/components/wiretransactionstatus.rb +23 -0
- data/lib/moov/models/components/wiretransactionstatus.rbi +11 -0
- data/lib/moov/models/components/wiretransferprocessingdetails.rb +40 -0
- data/lib/moov/models/components/wiretransferprocessingdetails.rbi +17 -0
- data/lib/moov/models/components.rb +24 -1
- data/lib/moov/models/errors/bankaccountattestationvalidationerror.rb +40 -0
- data/lib/moov/models/errors/bankaccountattestationvalidationerror.rbi +17 -0
- data/lib/moov/models/errors/cardacquiringrefund_error.rb +2 -2
- data/lib/moov/models/errors/imagemetadata_error.rb +61 -0
- data/lib/moov/models/errors/imagemetadata_error.rbi +27 -0
- data/lib/moov/models/errors/transfer_error.rb +9 -5
- data/lib/moov/models/errors/upsertunderwritingerror.rb +6 -2
- data/lib/moov/models/errors/upsertunderwritingerror.rbi +2 -0
- data/lib/moov/models/errors.rb +2 -0
- data/lib/moov/models/operations/createbankaccountattestation_request.rb +40 -0
- data/lib/moov/models/operations/createbankaccountattestation_request.rbi +17 -0
- data/lib/moov/models/operations/createbankaccountattestation_response.rb +48 -0
- data/lib/moov/models/operations/createbankaccountattestation_response.rbi +21 -0
- data/lib/moov/models/operations/createcapture_request.rb +2 -2
- data/lib/moov/models/operations/getbankaccountattestationeligibility_request.rb +41 -0
- data/lib/moov/models/operations/getbankaccountattestationeligibility_request.rbi +17 -0
- data/lib/moov/models/operations/getbankaccountattestationeligibility_response.rb +48 -0
- data/lib/moov/models/operations/getbankaccountattestationeligibility_response.rbi +21 -0
- data/lib/moov/models/operations/getcapture_request.rb +2 -2
- data/lib/moov/models/operations/getpaymentmethod_response.rb +2 -2
- data/lib/moov/models/operations/listaccounts_request.rb +1 -1
- data/lib/moov/models/operations/listbankaccountattestations_request.rb +36 -0
- data/lib/moov/models/operations/listbankaccountattestations_request.rbi +15 -0
- data/lib/moov/models/operations/listbankaccountattestations_response.rb +48 -0
- data/lib/moov/models/operations/listbankaccountattestations_response.rbi +21 -0
- data/lib/moov/models/operations/listcaptures_request.rb +2 -2
- data/lib/moov/models/operations/listconnectedaccountsforaccount_request.rb +1 -1
- data/lib/moov/models/operations/listdisputes_request.rb +1 -1
- data/lib/moov/models/operations/listfeeplanagreements_request.rb +1 -1
- data/lib/moov/models/operations/listfeerevenue_request.rb +1 -1
- data/lib/moov/models/operations/listinvoices_request.rb +1 -1
- data/lib/moov/models/operations/listissuedcardauthorizationevents_request.rb +1 -1
- data/lib/moov/models/operations/listissuedcardauthorizations_request.rb +1 -1
- data/lib/moov/models/operations/listissuedcards_request.rb +1 -1
- data/lib/moov/models/operations/listissuedcardtransactions_request.rb +7 -3
- data/lib/moov/models/operations/listissuedcardtransactions_request.rbi +2 -0
- data/lib/moov/models/operations/listpartnerpricingagreements_request.rb +1 -1
- data/lib/moov/models/operations/listpaymentlinks_request.rb +1 -1
- data/lib/moov/models/operations/listpaymentmethods_response.rb +2 -2
- data/lib/moov/models/operations/listproducts_request.rb +1 -1
- data/lib/moov/models/operations/listresidualfees_request.rb +1 -1
- data/lib/moov/models/operations/listresiduals_request.rb +1 -1
- data/lib/moov/models/operations/listschedules_request.rb +1 -1
- data/lib/moov/models/operations/liststatements_request.rb +1 -1
- data/lib/moov/models/operations/listsweeps_request.rb +1 -1
- data/lib/moov/models/operations/listtickets_request.rb +1 -1
- data/lib/moov/models/operations/listtransfers_request.rb +4 -8
- data/lib/moov/models/operations/listtransfers_request.rbi +0 -2
- data/lib/moov/models/operations/listwallets_request.rb +1 -1
- data/lib/moov/models/operations/listwallettransactions_request.rb +1 -1
- data/lib/moov/models/operations/retrievefees_request.rb +1 -1
- data/lib/moov/models/operations.rb +6 -0
- data/lib/moov/payment_methods.rb +2 -2
- data/lib/moov/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +16 -9
- data/lib/moov/utils/retries.rb +41 -2
- data/lib/moov/utils/utils.rb +6 -2
- metadata +64 -2
|
@@ -13,7 +13,7 @@ module Moov
|
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
15
|
# The type of wallet transaction the subtotal is for.
|
|
16
|
-
field :type, Models::Components::WalletTransactionType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.
|
|
16
|
+
field :type, Models::Components::WalletTransactionType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('type'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletTransactionType, false) } }
|
|
17
17
|
# The number of transactions of this type accrued in the sweep.
|
|
18
18
|
field :count, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count'), required: true } }
|
|
19
19
|
# The value of transactions of this type accrued in the sweep.
|
|
@@ -15,9 +15,9 @@ module Moov
|
|
|
15
15
|
# ID of the terminal application.
|
|
16
16
|
field :terminal_application_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('terminalApplicationID'), required: true } }
|
|
17
17
|
# Status of the terminal application.
|
|
18
|
-
field :status, Models::Components::TerminalApplicationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :status, Models::Components::TerminalApplicationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TerminalApplicationStatus, false) } }
|
|
19
19
|
# Platform of the terminal application.
|
|
20
|
-
field :platform, Models::Components::TerminalApplicationPlatform, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('platform'), required: true, 'decoder': ::Moov::Utils.
|
|
20
|
+
field :platform, Models::Components::TerminalApplicationPlatform, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('platform'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TerminalApplicationPlatform, false) } }
|
|
21
21
|
# The app bundle identifier of the terminal application. Will be returned if platform is `ios`.
|
|
22
22
|
field :app_bundle_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('appBundleID') } }
|
|
23
23
|
# The app package name of the terminal application. Will be returned if platform is `android`.
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TerminalApplicationPlatform - Platform of the terminal application.
|
|
11
|
-
class TerminalApplicationPlatform
|
|
11
|
+
class TerminalApplicationPlatform
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
UNDEFINED = new('undefined')
|
|
14
15
|
IOS = new('ios')
|
|
15
16
|
ANDROID = new('android')
|
|
16
17
|
end
|
|
18
|
+
open!
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
21
|
end
|
|
@@ -8,13 +8,15 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TerminalApplicationStatus - Status of the terminal application.
|
|
11
|
-
class TerminalApplicationStatus
|
|
11
|
+
class TerminalApplicationStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
UNDEFINED = new('undefined')
|
|
14
15
|
PENDING = new('pending')
|
|
15
16
|
ENABLED = new('enabled')
|
|
16
17
|
DISABLED = new('disabled')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -15,11 +15,11 @@ module Moov
|
|
|
15
15
|
# How the card information was entered into the point of sale terminal.
|
|
16
16
|
field :entry_mode, Crystalline::Nilable.new(Models::Components::EntryMode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('entryMode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::EntryMode, true) } }
|
|
17
17
|
# The card brand.
|
|
18
|
-
field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, true) } }
|
|
19
19
|
|
|
20
20
|
field :bin, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin') } }
|
|
21
21
|
# The type of the card.
|
|
22
|
-
field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.
|
|
22
|
+
field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardType, true) } }
|
|
23
23
|
# The expiration date of the card or token.
|
|
24
24
|
field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
|
|
25
25
|
# Uniquely identifies a linked payment card or token.
|
|
@@ -21,7 +21,7 @@ module Moov
|
|
|
21
21
|
|
|
22
22
|
field :contact, Models::Components::TicketContact, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('contact'), required: true } }
|
|
23
23
|
|
|
24
|
-
field :status, Models::Components::TicketStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
24
|
+
field :status, Models::Components::TicketStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TicketStatus, false) } }
|
|
25
25
|
|
|
26
26
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
27
27
|
|
|
@@ -8,13 +8,15 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class TicketStatus
|
|
11
|
+
class TicketStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
NEW = new('new')
|
|
14
15
|
IN_PROGRESS = new('in-progress')
|
|
15
16
|
ON_HOLD = new('on-hold')
|
|
16
17
|
CLOSED = new('closed')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -10,11 +10,13 @@ module Moov
|
|
|
10
10
|
# TipCalculationBasis - Defines which amount should be used when calculating the final payment total. This calculation applies for percentage tip values.
|
|
11
11
|
# - `pre-tax`: Tip amounts are calculated using the subtotal amount before taxes
|
|
12
12
|
# - `post-tax`: Tip amounts are calculated using the subtotal amount + taxes
|
|
13
|
-
class TipCalculationBasis
|
|
13
|
+
class TipCalculationBasis
|
|
14
|
+
include ::Crystalline::Enum
|
|
14
15
|
enums do
|
|
15
16
|
PRE_TAX = new('pre-tax')
|
|
16
17
|
POST_TAX = new('post-tax')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# Defines which amount should be used when calculating the final payment total. This calculation applies for percentage tip values.
|
|
16
16
|
# - `pre-tax`: Tip amounts are calculated using the subtotal amount before taxes
|
|
17
17
|
# - `post-tax`: Tip amounts are calculated using the subtotal amount + taxes
|
|
18
|
-
field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :calculation_basis, Crystalline::Nilable.new(Models::Components::TipCalculationBasis), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('calculationBasis'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TipCalculationBasis, true) } }
|
|
19
19
|
# Defines the set of suggested tip preset values presented to customers. Percentages must be between 0 and 100 (exclusive) and must be unique. A maximum of 3 values are allowed.
|
|
20
20
|
field :percentage_options, Crystalline::Nilable.new(Crystalline::Array.new(::Integer)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('percentageOptions') } }
|
|
21
21
|
# Defines the set of suggested tip preset values presented to customers. Fixed amounts must be positive and unique. A maximum of 3 values are allowed.
|
|
@@ -11,12 +11,14 @@ module Moov
|
|
|
11
11
|
#
|
|
12
12
|
# Crucial for recurring and merchant-initiated transactions as per card scheme rules.
|
|
13
13
|
# Omit for customer-initiated e-commerce transactions.
|
|
14
|
-
class TransactionSource
|
|
14
|
+
class TransactionSource
|
|
15
|
+
include ::Crystalline::Enum
|
|
15
16
|
enums do
|
|
16
17
|
FIRST_RECURRING = new('first-recurring')
|
|
17
18
|
RECURRING = new('recurring')
|
|
18
19
|
UNSCHEDULED = new('unscheduled')
|
|
19
20
|
end
|
|
21
|
+
open!
|
|
20
22
|
end
|
|
21
23
|
end
|
|
22
24
|
end
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
|
|
16
16
|
field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
|
|
17
17
|
# The rail and direction used to move funds for a transfer.
|
|
18
|
-
field :transfer_type, Models::Components::TransferType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferType'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :transfer_type, Models::Components::TransferType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferType, false) } }
|
|
19
19
|
|
|
20
20
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
21
21
|
|
|
@@ -23,8 +23,11 @@ module Moov
|
|
|
23
23
|
|
|
24
24
|
field :destination, Models::Components::TransferDestination, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destination'), required: true } }
|
|
25
25
|
# Status of a transfer.
|
|
26
|
-
field :status, Models::Components::TransferStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
27
|
-
|
|
26
|
+
field :status, Models::Components::TransferStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferStatus, false) } }
|
|
27
|
+
# Amount associated with this transfer.
|
|
28
|
+
# In v2026.10 and later, an auth-capture `card-payment` transfer reports the approved authorization amount until a final capture is created.
|
|
29
|
+
# For these transfers, when a final capture is created, this is updated to the cumulative captured amount.
|
|
30
|
+
# For other transfer types, this is the transfer amount.
|
|
28
31
|
field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
29
32
|
|
|
30
33
|
field :options, Models::Components::TransferRailOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options'), required: true } }
|
|
@@ -33,7 +36,7 @@ module Moov
|
|
|
33
36
|
|
|
34
37
|
field :completed_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('completedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
35
38
|
# Reason for a transfer's failure.
|
|
36
|
-
field :failure_reason, Crystalline::Nilable.new(Models::Components::TransferFailureReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureReason'), 'decoder': ::Moov::Utils.
|
|
39
|
+
field :failure_reason, Crystalline::Nilable.new(Models::Components::TransferFailureReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureReason'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferFailureReason, true) } }
|
|
37
40
|
# An optional description of the transfer that is used on receipts and for your own internal use.
|
|
38
41
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
39
42
|
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
@@ -69,7 +72,8 @@ module Moov
|
|
|
69
72
|
field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceID') } }
|
|
70
73
|
|
|
71
74
|
field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
72
|
-
|
|
75
|
+
# Authorization amounts.
|
|
76
|
+
# This field is present only for an auth-capture `card-payment` transfer.
|
|
73
77
|
field :authorization, Crystalline::Nilable.new(Models::Components::TransferAuthorization), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorization') } }
|
|
74
78
|
|
|
75
79
|
sig { params(transfer_id: ::String, transfer_type: Models::Components::TransferType, created_on: ::DateTime, source: Models::Components::TransferSource, destination: Models::Components::TransferDestination, status: Models::Components::TransferStatus, amount: Models::Components::AmountDecimal, options: Models::Components::TransferRailOptions, processing_details: Models::Components::TransferProcessingDetails, completed_on: T.nilable(::DateTime), failure_reason: T.nilable(Models::Components::TransferFailureReason), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(Models::Components::AmountDecimal), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), moov_fees: T.nilable(T::Array[Models::Components::MoovFee]), group_id: T.nilable(::String), refunded_amount: T.nilable(Models::Components::AmountDecimal), disputed_amount: T.nilable(Models::Components::AmountDecimal), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), invoice_id: T.nilable(::String), amount_details: T.nilable(Models::Components::TransferAmountDetails), authorization: T.nilable(Models::Components::TransferAuthorization)).void }
|
|
@@ -7,22 +7,22 @@
|
|
|
7
7
|
module Moov
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
|
|
10
|
+
# Authorization and capture amounts for an auth-capture `card-payment` transfer.
|
|
11
11
|
class TransferAuthorization
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
# Identifier for the authorization.
|
|
16
16
|
field :authorization_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizationID'), required: true } }
|
|
17
|
-
|
|
17
|
+
# Amount submitted for authorization.
|
|
18
18
|
field :requested_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('requestedAmount'), required: true } }
|
|
19
|
-
|
|
19
|
+
# Hold approved by the issuer.
|
|
20
20
|
field :authorized_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedAmount'), required: true } }
|
|
21
|
-
|
|
21
|
+
# Cumulative amount of captures that have not failed or been canceled.
|
|
22
22
|
field :captured_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capturedAmount'), required: true } }
|
|
23
|
-
|
|
23
|
+
# Amount of the authorization still available after captures and authorization cancellations.
|
|
24
24
|
field :capturable_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capturableAmount'), required: true } }
|
|
25
|
-
|
|
25
|
+
# Expiration time for the approved authorization, when available.
|
|
26
26
|
field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
27
27
|
|
|
28
28
|
sig { params(authorization_id: ::String, requested_amount: Models::Components::AmountDecimal, authorized_amount: Models::Components::AmountDecimal, captured_amount: Models::Components::AmountDecimal, capturable_amount: Models::Components::AmountDecimal, expires_on: T.nilable(::DateTime)).void }
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
|
|
16
16
|
field :payment_method_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID') } }
|
|
17
17
|
# The payment method type that represents a payment rail and directionality
|
|
18
|
-
field :payment_method_type, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :payment_method_type, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferPaymentMethodType, true) } }
|
|
19
19
|
|
|
20
20
|
field :account, Crystalline::Nilable.new(Models::Components::TransferAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('account') } }
|
|
21
21
|
# A bank account as contained within a payment method.
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TransferFailureReason - Reason for a transfer's failure.
|
|
11
|
-
class TransferFailureReason
|
|
11
|
+
class TransferFailureReason
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
SOURCE_PAYMENT_ERROR = new('source-payment-error')
|
|
14
15
|
DESTINATION_PAYMENT_ERROR = new('destination-payment-error')
|
|
@@ -16,6 +17,7 @@ module Moov
|
|
|
16
17
|
REJECTED_HIGH_RISK = new('rejected-high-risk')
|
|
17
18
|
PROCESSING_ERROR = new('processing-error')
|
|
18
19
|
end
|
|
20
|
+
open!
|
|
19
21
|
end
|
|
20
22
|
end
|
|
21
23
|
end
|
|
@@ -12,8 +12,8 @@ module Moov
|
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
-
#
|
|
16
|
-
field :payout, Crystalline::Nilable.new(Models::Components::FeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout'), 'decoder': ::Moov::Utils.
|
|
15
|
+
# Defaults to `source`.
|
|
16
|
+
field :payout, Crystalline::Nilable.new(Models::Components::FeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::FeePaidBy, true) } }
|
|
17
17
|
|
|
18
18
|
sig { params(payout: T.nilable(Models::Components::FeePaidBy)).void }
|
|
19
19
|
def initialize(payout: nil)
|
|
@@ -13,11 +13,11 @@ module Moov
|
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
field :source_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sourceOptions') } }
|
|
16
|
+
field :source_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod, Models::Components::WireCreditTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sourceOptions') } }
|
|
17
17
|
|
|
18
|
-
field :destination_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationOptions') } }
|
|
18
|
+
field :destination_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod, Models::Components::WireCreditTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationOptions') } }
|
|
19
19
|
|
|
20
|
-
sig { params(source_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod)]), destination_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod)])).void }
|
|
20
|
+
sig { params(source_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod, Models::Components::WireCreditTransferPaymentMethod)]), destination_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod, Models::Components::PushToApplePayTransferPaymentMethod, Models::Components::PullFromApplePayTransferPaymentMethod, Models::Components::GooglePayTransferPaymentMethod, Models::Components::PushToGooglePayTransferPaymentMethod, Models::Components::PullFromGooglePayTransferPaymentMethod, Models::Components::WireCreditTransferPaymentMethod)])).void }
|
|
21
21
|
def initialize(source_options: nil, destination_options: nil)
|
|
22
22
|
@source_options = source_options
|
|
23
23
|
@destination_options = destination_options
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class TransferParty
|
|
11
|
+
class TransferParty
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
SOURCE = new('source')
|
|
14
15
|
DESTINATION = new('destination')
|
|
15
16
|
PARTNER = new('partner')
|
|
16
17
|
end
|
|
18
|
+
open!
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
21
|
end
|
|
@@ -19,15 +19,15 @@ module Moov
|
|
|
19
19
|
# The fingerprint acts as a way to identify whether two linked bank accounts are the same.
|
|
20
20
|
field :fingerprint, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint'), required: true } }
|
|
21
21
|
|
|
22
|
-
field :status, Models::Components::BankAccountStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :status, Models::Components::BankAccountStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::BankAccountStatus, false) } }
|
|
23
23
|
|
|
24
24
|
field :holder_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderName'), required: true } }
|
|
25
25
|
# The type of holder on a funding source.
|
|
26
|
-
field :holder_type, Models::Components::BankAccountHolderType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderType'), required: true, 'decoder': ::Moov::Utils.
|
|
26
|
+
field :holder_type, Models::Components::BankAccountHolderType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::BankAccountHolderType, false) } }
|
|
27
27
|
|
|
28
28
|
field :bank_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankName'), required: true } }
|
|
29
29
|
# The bank account type.
|
|
30
|
-
field :bank_account_type, Models::Components::BankAccountType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccountType'), required: true, 'decoder': ::Moov::Utils.
|
|
30
|
+
field :bank_account_type, Models::Components::BankAccountType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccountType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::BankAccountType, false) } }
|
|
31
31
|
|
|
32
32
|
field :routing_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('routingNumber'), required: true } }
|
|
33
33
|
|
|
@@ -19,9 +19,9 @@ module Moov
|
|
|
19
19
|
# This field can be used to identify specific payment methods across multiple accounts on your platform.
|
|
20
20
|
field :fingerprint, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint'), required: true } }
|
|
21
21
|
# The card brand.
|
|
22
|
-
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, false) } }
|
|
23
23
|
# The type of the card.
|
|
24
|
-
field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': ::Moov::Utils.
|
|
24
|
+
field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardType, false) } }
|
|
25
25
|
# Last four digits of the card number
|
|
26
26
|
field :last_four_card_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber'), required: true } }
|
|
27
27
|
# The first six to eight digits of the card number, which identifies the financial institution that issued the card.
|
|
@@ -46,9 +46,9 @@ module Moov
|
|
|
46
46
|
# The results of the most recent card update request.
|
|
47
47
|
field :card_account_updater, Crystalline::Nilable.new(Models::Components::CardAccountUpdater), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAccountUpdater') } }
|
|
48
48
|
# Indicates which level of domestic push-to-card transfer is supported by the card, if any.
|
|
49
|
-
field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': ::Moov::Utils.
|
|
49
|
+
field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::DomesticPushToCard, true) } }
|
|
50
50
|
# Indicates if the card supports domestic pull-from-card transfer.
|
|
51
|
-
field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': ::Moov::Utils.
|
|
51
|
+
field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::DomesticPullFromCard, true) } }
|
|
52
52
|
|
|
53
53
|
sig { params(card_id: ::String, fingerprint: ::String, brand: Models::Components::CardBrand, card_type: Models::Components::CardType, last_four_card_number: ::String, bin: ::String, expiration: Models::Components::CardExpiration, billing_address: Models::Components::CardAddress, card_verification: Models::Components::CardVerification, holder_name: T.nilable(::String), issuer: T.nilable(::String), issuer_country: T.nilable(::String), card_on_file: T.nilable(T::Boolean), merchant_account_id: T.nilable(::String), card_account_updater: T.nilable(Models::Components::CardAccountUpdater), domestic_push_to_card: T.nilable(Models::Components::DomesticPushToCard), domestic_pull_from_card: T.nilable(Models::Components::DomesticPullFromCard)).void }
|
|
54
54
|
def initialize(card_id:, fingerprint:, brand:, card_type:, last_four_card_number:, bin:, expiration:, billing_address:, card_verification:, holder_name: nil, issuer: nil, issuer_country: nil, card_on_file: nil, merchant_account_id: nil, card_account_updater: nil, domestic_push_to_card: nil, domestic_pull_from_card: nil)
|
|
@@ -20,7 +20,7 @@ module Moov
|
|
|
20
20
|
# - `default`: The system-generated wallet automatically created when an account is granted the wallet capability.
|
|
21
21
|
# - `general`: An additional, user-defined wallet created via API or Dashboard.
|
|
22
22
|
# - `card-issuing`: The system-generated wallet automatically created when an account is granted the card-issuing capability.
|
|
23
|
-
field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': ::Moov::Utils.
|
|
23
|
+
field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletType, false) } }
|
|
24
24
|
|
|
25
25
|
sig { params(wallet_id: ::String, partner_account_id: ::String, wallet_type: Models::Components::WalletType).void }
|
|
26
26
|
def initialize(wallet_id:, partner_account_id:, wallet_type:)
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TransferPaymentMethodType - The payment method type that represents a payment rail and directionality
|
|
11
|
-
class TransferPaymentMethodType
|
|
11
|
+
class TransferPaymentMethodType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
MOOV_WALLET = new('moov-wallet')
|
|
14
15
|
ACH_DEBIT_FUND = new('ach-debit-fund')
|
|
@@ -27,7 +28,9 @@ module Moov
|
|
|
27
28
|
GOOGLE_PAY = new('google-pay')
|
|
28
29
|
PUSH_TO_GOOGLE_PAY = new('push-to-google-pay')
|
|
29
30
|
PULL_FROM_GOOGLE_PAY = new('pull-from-google-pay')
|
|
31
|
+
WIRE_CREDIT = new('wire-credit')
|
|
30
32
|
end
|
|
33
|
+
open!
|
|
31
34
|
end
|
|
32
35
|
end
|
|
33
36
|
end
|
|
@@ -24,15 +24,18 @@ module Moov
|
|
|
24
24
|
field :ach_credit, Crystalline::Nilable.new(Models::Components::ACHCreditTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achCredit') } }
|
|
25
25
|
|
|
26
26
|
field :instant_bank_credit, Crystalline::Nilable.new(Models::Components::InstantBankCreditTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('instantBankCredit') } }
|
|
27
|
+
# Wire-specific processing details returned on a transfer.
|
|
28
|
+
field :wire, Crystalline::Nilable.new(Models::Components::WireTransferProcessingDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wire') } }
|
|
27
29
|
|
|
28
|
-
sig { params(card_payment: T.nilable(Models::Components::CardPaymentTransferProcessingDetails), push_to_card: T.nilable(Models::Components::PushToCardTransferProcessingDetails), pull_from_card: T.nilable(Models::Components::PullFromCardTransferProcessingDetails), ach_debit: T.nilable(Models::Components::ACHDebitTransferProcessingDetails), ach_credit: T.nilable(Models::Components::ACHCreditTransferProcessingDetails), instant_bank_credit: T.nilable(Models::Components::InstantBankCreditTransferProcessingDetails)).void }
|
|
29
|
-
def initialize(card_payment: nil, push_to_card: nil, pull_from_card: nil, ach_debit: nil, ach_credit: nil, instant_bank_credit: nil)
|
|
30
|
+
sig { params(card_payment: T.nilable(Models::Components::CardPaymentTransferProcessingDetails), push_to_card: T.nilable(Models::Components::PushToCardTransferProcessingDetails), pull_from_card: T.nilable(Models::Components::PullFromCardTransferProcessingDetails), ach_debit: T.nilable(Models::Components::ACHDebitTransferProcessingDetails), ach_credit: T.nilable(Models::Components::ACHCreditTransferProcessingDetails), instant_bank_credit: T.nilable(Models::Components::InstantBankCreditTransferProcessingDetails), wire: T.nilable(Models::Components::WireTransferProcessingDetails)).void }
|
|
31
|
+
def initialize(card_payment: nil, push_to_card: nil, pull_from_card: nil, ach_debit: nil, ach_credit: nil, instant_bank_credit: nil, wire: nil)
|
|
30
32
|
@card_payment = card_payment
|
|
31
33
|
@push_to_card = push_to_card
|
|
32
34
|
@pull_from_card = pull_from_card
|
|
33
35
|
@ach_debit = ach_debit
|
|
34
36
|
@ach_credit = ach_credit
|
|
35
37
|
@instant_bank_credit = instant_bank_credit
|
|
38
|
+
@wire = wire
|
|
36
39
|
end
|
|
37
40
|
|
|
38
41
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -44,6 +47,7 @@ module Moov
|
|
|
44
47
|
return false unless @ach_debit == other.ach_debit
|
|
45
48
|
return false unless @ach_credit == other.ach_credit
|
|
46
49
|
return false unless @instant_bank_credit == other.instant_bank_credit
|
|
50
|
+
return false unless @wire == other.wire
|
|
47
51
|
true
|
|
48
52
|
end
|
|
49
53
|
end
|
|
@@ -22,14 +22,17 @@ module Moov
|
|
|
22
22
|
field :ach_debit, Crystalline::Nilable.new(Models::Components::ACHDebitOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achDebit') } }
|
|
23
23
|
|
|
24
24
|
field :ach_credit, Crystalline::Nilable.new(Models::Components::ACHCreditOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achCredit') } }
|
|
25
|
+
# Wire-specific options returned on a transfer.
|
|
26
|
+
field :wire, Crystalline::Nilable.new(Models::Components::WireOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wire') } }
|
|
25
27
|
|
|
26
|
-
sig { params(card_payment: T.nilable(Models::Components::CardPaymentOptions), push_to_card: T.nilable(Models::Components::PushToCardOptions), pull_from_card: T.nilable(Models::Components::PullFromCardOptions), ach_debit: T.nilable(Models::Components::ACHDebitOptions), ach_credit: T.nilable(Models::Components::ACHCreditOptions)).void }
|
|
27
|
-
def initialize(card_payment: nil, push_to_card: nil, pull_from_card: nil, ach_debit: nil, ach_credit: nil)
|
|
28
|
+
sig { params(card_payment: T.nilable(Models::Components::CardPaymentOptions), push_to_card: T.nilable(Models::Components::PushToCardOptions), pull_from_card: T.nilable(Models::Components::PullFromCardOptions), ach_debit: T.nilable(Models::Components::ACHDebitOptions), ach_credit: T.nilable(Models::Components::ACHCreditOptions), wire: T.nilable(Models::Components::WireOptions)).void }
|
|
29
|
+
def initialize(card_payment: nil, push_to_card: nil, pull_from_card: nil, ach_debit: nil, ach_credit: nil, wire: nil)
|
|
28
30
|
@card_payment = card_payment
|
|
29
31
|
@push_to_card = push_to_card
|
|
30
32
|
@pull_from_card = pull_from_card
|
|
31
33
|
@ach_debit = ach_debit
|
|
32
34
|
@ach_credit = ach_credit
|
|
35
|
+
@wire = wire
|
|
33
36
|
end
|
|
34
37
|
|
|
35
38
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -40,6 +43,7 @@ module Moov
|
|
|
40
43
|
return false unless @pull_from_card == other.pull_from_card
|
|
41
44
|
return false unless @ach_debit == other.ach_debit
|
|
42
45
|
return false unless @ach_credit == other.ach_credit
|
|
46
|
+
return false unless @wire == other.wire
|
|
43
47
|
true
|
|
44
48
|
end
|
|
45
49
|
end
|
|
@@ -17,7 +17,7 @@ module Moov
|
|
|
17
17
|
|
|
18
18
|
field :payment_method_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID') } }
|
|
19
19
|
# The payment method type that represents a payment rail and directionality
|
|
20
|
-
field :payment_method_type, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), 'decoder': ::Moov::Utils.
|
|
20
|
+
field :payment_method_type, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferPaymentMethodType, true) } }
|
|
21
21
|
|
|
22
22
|
field :account, Crystalline::Nilable.new(Models::Components::TransferAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('account') } }
|
|
23
23
|
# A bank account as contained within a payment method.
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TransferStatus - Status of a transfer.
|
|
11
|
-
class TransferStatus
|
|
11
|
+
class TransferStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
CREATED = new('created')
|
|
14
15
|
PENDING = new('pending')
|
|
@@ -19,6 +20,7 @@ module Moov
|
|
|
19
20
|
AWAITING_CAPTURE = new('awaiting-capture')
|
|
20
21
|
CANCELED = new('canceled')
|
|
21
22
|
end
|
|
23
|
+
open!
|
|
22
24
|
end
|
|
23
25
|
end
|
|
24
26
|
end
|
|
@@ -15,11 +15,11 @@ module Moov
|
|
|
15
15
|
# How the card information was entered into the point of sale terminal.
|
|
16
16
|
field :entry_mode, Crystalline::Nilable.new(Models::Components::TransferEntryMode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('entryMode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferEntryMode, true) } }
|
|
17
17
|
# The card brand.
|
|
18
|
-
field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, true) } }
|
|
19
19
|
|
|
20
20
|
field :bin, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin') } }
|
|
21
21
|
# The type of the card.
|
|
22
|
-
field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.
|
|
22
|
+
field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardType, true) } }
|
|
23
23
|
# The expiration date of the card or token.
|
|
24
24
|
field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
|
|
25
25
|
# Uniquely identifies a linked payment card or token.
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# TransferType - The rail and direction used to move funds for a transfer.
|
|
11
|
-
class TransferType
|
|
11
|
+
class TransferType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
CARD_PAYMENT = new('card-payment')
|
|
14
15
|
PUSH_TO_CARD = new('push-to-card')
|
|
@@ -18,7 +19,9 @@ module Moov
|
|
|
18
19
|
ACH_DEBIT_TO_ACH_CREDIT = new('ach-debit-to-ach-credit')
|
|
19
20
|
INSTANT_BANK_CREDIT = new('instant-bank-credit')
|
|
20
21
|
WALLET = new('wallet')
|
|
22
|
+
WIRE_CREDIT = new('wire-credit')
|
|
21
23
|
end
|
|
24
|
+
open!
|
|
22
25
|
end
|
|
23
26
|
end
|
|
24
27
|
end
|
|
@@ -19,7 +19,7 @@ module Moov
|
|
|
19
19
|
|
|
20
20
|
field :average_monthly_transaction_volume, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('averageMonthlyTransactionVolume') } }
|
|
21
21
|
# @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
22
|
-
field :status, Crystalline::Nilable.new(Models::Components::UnderwritingStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.
|
|
22
|
+
field :status, Crystalline::Nilable.new(Models::Components::UnderwritingStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::UnderwritingStatus, true) } }
|
|
23
23
|
|
|
24
24
|
field :volume_by_customer_type, Crystalline::Nilable.new(Models::Components::VolumeByCustomerType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('volumeByCustomerType') } }
|
|
25
25
|
|
|
@@ -27,11 +27,11 @@ module Moov
|
|
|
27
27
|
|
|
28
28
|
field :fulfillment, Crystalline::Nilable.new(Models::Components::FulfillmentDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fulfillment') } }
|
|
29
29
|
|
|
30
|
-
field :geographic_reach, Crystalline::Nilable.new(Models::Components::GeographicReach), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('geographicReach'), 'decoder': ::Moov::Utils.
|
|
30
|
+
field :geographic_reach, Crystalline::Nilable.new(Models::Components::GeographicReach), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('geographicReach'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::GeographicReach, true) } }
|
|
31
31
|
|
|
32
|
-
field :business_presence, Crystalline::Nilable.new(Models::Components::BusinessPresence), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('businessPresence'), 'decoder': ::Moov::Utils.
|
|
32
|
+
field :business_presence, Crystalline::Nilable.new(Models::Components::BusinessPresence), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('businessPresence'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::BusinessPresence, true) } }
|
|
33
33
|
|
|
34
|
-
field :pending_litigation, Crystalline::Nilable.new(Models::Components::PendingLitigation), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pendingLitigation'), 'decoder': ::Moov::Utils.
|
|
34
|
+
field :pending_litigation, Crystalline::Nilable.new(Models::Components::PendingLitigation), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pendingLitigation'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PendingLitigation, true) } }
|
|
35
35
|
|
|
36
36
|
field :volume_share_by_customer_type, Crystalline::Nilable.new(Models::Components::VolumeShareByCustomerType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('volumeShareByCustomerType') } }
|
|
37
37
|
|
|
@@ -40,9 +40,13 @@ module Moov
|
|
|
40
40
|
field :money_transfer, Crystalline::Nilable.new(Models::Components::MoneyTransfer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moneyTransfer') } }
|
|
41
41
|
|
|
42
42
|
field :send_funds, Crystalline::Nilable.new(Models::Components::SendFunds), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sendFunds') } }
|
|
43
|
+
# Underwriting data for the `card-issuing` capability.
|
|
44
|
+
#
|
|
45
|
+
# Issued cards are funded from the account's card-issuing wallet before they can be spent, so estimated activity is the only data collected.
|
|
46
|
+
field :card_issuing, Crystalline::Nilable.new(Models::Components::CardIssuing), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardIssuing') } }
|
|
43
47
|
|
|
44
|
-
sig { params(average_transaction_size: T.nilable(::Integer), max_transaction_size: T.nilable(::Integer), average_monthly_transaction_volume: T.nilable(::Integer), status: T.nilable(Models::Components::UnderwritingStatus), volume_by_customer_type: T.nilable(Models::Components::VolumeByCustomerType), card_volume_distribution: T.nilable(Models::Components::CardVolumeDistribution), fulfillment: T.nilable(Models::Components::FulfillmentDetails), geographic_reach: T.nilable(Models::Components::GeographicReach), business_presence: T.nilable(Models::Components::BusinessPresence), pending_litigation: T.nilable(Models::Components::PendingLitigation), volume_share_by_customer_type: T.nilable(Models::Components::VolumeShareByCustomerType), collect_funds: T.nilable(Models::Components::CollectFunds), money_transfer: T.nilable(Models::Components::MoneyTransfer), send_funds: T.nilable(Models::Components::SendFunds)).void }
|
|
45
|
-
def initialize(average_transaction_size: nil, max_transaction_size: nil, average_monthly_transaction_volume: nil, status: nil, volume_by_customer_type: nil, card_volume_distribution: nil, fulfillment: nil, geographic_reach: nil, business_presence: nil, pending_litigation: nil, volume_share_by_customer_type: nil, collect_funds: nil, money_transfer: nil, send_funds: nil)
|
|
48
|
+
sig { params(average_transaction_size: T.nilable(::Integer), max_transaction_size: T.nilable(::Integer), average_monthly_transaction_volume: T.nilable(::Integer), status: T.nilable(Models::Components::UnderwritingStatus), volume_by_customer_type: T.nilable(Models::Components::VolumeByCustomerType), card_volume_distribution: T.nilable(Models::Components::CardVolumeDistribution), fulfillment: T.nilable(Models::Components::FulfillmentDetails), geographic_reach: T.nilable(Models::Components::GeographicReach), business_presence: T.nilable(Models::Components::BusinessPresence), pending_litigation: T.nilable(Models::Components::PendingLitigation), volume_share_by_customer_type: T.nilable(Models::Components::VolumeShareByCustomerType), collect_funds: T.nilable(Models::Components::CollectFunds), money_transfer: T.nilable(Models::Components::MoneyTransfer), send_funds: T.nilable(Models::Components::SendFunds), card_issuing: T.nilable(Models::Components::CardIssuing)).void }
|
|
49
|
+
def initialize(average_transaction_size: nil, max_transaction_size: nil, average_monthly_transaction_volume: nil, status: nil, volume_by_customer_type: nil, card_volume_distribution: nil, fulfillment: nil, geographic_reach: nil, business_presence: nil, pending_litigation: nil, volume_share_by_customer_type: nil, collect_funds: nil, money_transfer: nil, send_funds: nil, card_issuing: nil)
|
|
46
50
|
@average_transaction_size = average_transaction_size
|
|
47
51
|
@max_transaction_size = max_transaction_size
|
|
48
52
|
@average_monthly_transaction_volume = average_monthly_transaction_volume
|
|
@@ -57,6 +61,7 @@ module Moov
|
|
|
57
61
|
@collect_funds = collect_funds
|
|
58
62
|
@money_transfer = money_transfer
|
|
59
63
|
@send_funds = send_funds
|
|
64
|
+
@card_issuing = card_issuing
|
|
60
65
|
end
|
|
61
66
|
|
|
62
67
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -76,6 +81,7 @@ module Moov
|
|
|
76
81
|
return false unless @collect_funds == other.collect_funds
|
|
77
82
|
return false unless @money_transfer == other.money_transfer
|
|
78
83
|
return false unless @send_funds == other.send_funds
|
|
84
|
+
return false unless @card_issuing == other.card_issuing
|
|
79
85
|
true
|
|
80
86
|
end
|
|
81
87
|
end
|