moov_ruby 26.10.0.pre.dev.1 → 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/avatars.rb +4 -4
- data/lib/moov/bank_accounts.rb +439 -0
- data/lib/moov/card_issuing.rb +117 -1
- data/lib/moov/client.rb +2 -2
- data/lib/moov/enriched_address.rb +1 -1
- data/lib/moov/enriched_profile.rb +1 -1
- data/lib/moov/images.rb +17 -2
- data/lib/moov/institutions.rb +2 -2
- 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/achcreditoptions.rb +40 -0
- data/lib/moov/models/components/achcreditoptions.rbi +17 -0
- data/lib/moov/models/components/achcredittransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/achcredittransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/achdebitoptions.rb +48 -0
- data/lib/moov/models/components/achdebitoptions.rbi +21 -0
- data/lib/moov/models/components/achdebittransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/achdebittransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/achreturncode.rb +3 -1
- data/lib/moov/models/components/achtransactionstatus.rb +3 -1
- data/lib/moov/models/components/adjustmentfees.rb +11 -15
- data/lib/moov/models/components/adjustmentfees.rbi +4 -4
- data/lib/moov/models/components/allowedscheduleerror.rb +36 -0
- data/lib/moov/models/components/allowedscheduleerror.rbi +15 -0
- 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 +7 -3
- data/lib/moov/models/components/asynccreatedrefund.rbi +2 -0
- 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 +82 -0
- data/lib/moov/models/components/capture.rbi +37 -0
- data/lib/moov/models/components/{refundcardstatus.rb → capturestatus.rb} +6 -5
- data/lib/moov/models/components/{refundcardstatus.rbi → capturestatus.rbi} +2 -2
- 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 +12 -8
- data/lib/moov/models/components/cardacquiringrefund.rbi +4 -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 +39 -0
- data/lib/moov/models/components/cardpaymentoptions.rbi +15 -0
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +32 -0
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +13 -0
- data/lib/moov/models/components/{cardtransactionstatus.rb → cardpaymenttransactionstatus.rb} +4 -3
- data/lib/moov/models/components/cardpaymenttransactionstatus.rbi +11 -0
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rb +48 -0
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rbi +21 -0
- 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 +34 -0
- data/lib/moov/models/components/createcancellation.rbi +13 -0
- data/lib/moov/models/components/createcapture.rb +68 -0
- data/lib/moov/models/components/createcapture.rbi +29 -0
- data/lib/moov/models/components/createdtransfer.rb +29 -25
- data/lib/moov/models/components/createdtransfer.rbi +8 -8
- 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 +9 -5
- data/lib/moov/models/components/createrefund.rbi +2 -0
- data/lib/moov/models/components/createreversal.rb +6 -3
- 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 +5 -5
- 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/createtransferfacilitatorfee.rb +36 -0
- data/lib/moov/models/components/createtransferfacilitatorfee.rbi +15 -0
- data/lib/moov/models/components/createtransferoptions.rb +2 -2
- 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 +6 -5
- 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 +48 -0
- data/lib/moov/models/components/{instantbanktransactiondetails.rbi → instantbankcredittransferprocessingdetails.rbi} +4 -12
- 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 +3 -1
- 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 +6 -5
- 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 +52 -0
- data/lib/moov/models/components/issuedcontrols.rbi +23 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuedvelocitylimit.rb +60 -0
- data/lib/moov/models/components/issuedvelocitylimit.rbi +27 -0
- data/lib/moov/models/components/issuingauthorizationstatus.rb +3 -1
- data/lib/moov/models/components/issuingcontrols.rb +19 -3
- data/lib/moov/models/components/issuingcontrols.rbi +8 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuingcontrolserror.rb +18 -2
- data/lib/moov/models/components/issuingcontrolserror.rbi +8 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +21 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rbi +11 -0
- data/lib/moov/models/components/issuingintervallimit.rb +6 -1
- data/lib/moov/models/components/issuingmerchantcategory.rb +45 -0
- data/lib/moov/models/components/issuingmerchantcategory.rbi +11 -0
- data/lib/moov/models/components/issuingscheduleday.rb +24 -0
- data/lib/moov/models/components/{cardtransactionstatus.rbi → issuingscheduleday.rbi} +2 -2
- data/lib/moov/models/components/issuingvelocitylimit.rb +11 -7
- data/lib/moov/models/components/issuingvelocitylimit.rbi +4 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rb +6 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rbi +2 -0
- 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/merchantcategories.rb +32 -0
- data/lib/moov/models/components/merchantcategories.rbi +13 -0
- data/lib/moov/models/components/merchantcategory.rb +37 -0
- data/lib/moov/models/components/merchantcategory.rbi +15 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rbi +19 -0
- data/lib/moov/models/components/merchantentry.rb +40 -0
- data/lib/moov/models/components/merchantentry.rbi +17 -0
- data/lib/moov/models/components/merchantentryerror.rb +36 -0
- data/lib/moov/models/components/merchantentryerror.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictionserror.rb +36 -0
- data/lib/moov/models/components/merchantrestrictionserror.rbi +15 -0
- 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/moovfeedetails.rb +5 -5
- 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 +2 -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 +39 -0
- data/lib/moov/models/components/pullfromcardoptions.rbi +15 -0
- 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 +48 -0
- data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rbi +21 -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/pushtocardoptions.rb +32 -0
- data/lib/moov/models/components/pushtocardoptions.rbi +13 -0
- 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 +48 -0
- data/lib/moov/models/components/pushtocardtransferprocessingdetails.rbi +21 -0
- data/lib/moov/models/components/puttippresets.rb +1 -1
- data/lib/moov/models/components/refundpolicy.rb +3 -1
- data/lib/moov/models/components/refundprocessingdetails.rb +32 -0
- data/lib/moov/models/components/refundprocessingdetails.rbi +13 -0
- 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/schedulewindow.rb +40 -0
- data/lib/moov/models/components/schedulewindow.rbi +17 -0
- data/lib/moov/models/components/schedulewindowerror.rb +40 -0
- data/lib/moov/models/components/schedulewindowerror.rbi +17 -0
- data/lib/moov/models/components/seccode.rb +3 -1
- data/lib/moov/models/components/sendfunds.rb +6 -2
- data/lib/moov/models/components/sendfunds.rbi +2 -0
- data/lib/moov/models/components/sendfundserror.rb +6 -2
- data/lib/moov/models/components/sendfundserror.rbi +2 -0
- data/lib/moov/models/components/sendfundswire.rb +32 -0
- data/lib/moov/models/components/sendfundswire.rbi +13 -0
- data/lib/moov/models/components/sendfundswireerror.rb +32 -0
- data/lib/moov/models/components/sendfundswireerror.rbi +13 -0
- 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 +28 -24
- data/lib/moov/models/components/transfer.rbi +8 -8
- data/lib/moov/models/components/transferauthorization.rb +52 -0
- data/lib/moov/models/components/transferauthorization.rbi +23 -0
- data/lib/moov/models/components/transferdestination.rb +5 -17
- data/lib/moov/models/components/transferdestination.rbi +0 -6
- 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 +2 -1
- data/lib/moov/models/components/transferpaymentmethodtype.rb +4 -1
- data/lib/moov/models/components/transferprocessingdetails.rb +56 -0
- data/lib/moov/models/components/transferprocessingdetails.rbi +25 -0
- data/lib/moov/models/components/transferrailoptions.rb +52 -0
- data/lib/moov/models/components/transferrailoptions.rbi +23 -0
- data/lib/moov/models/components/transfersource.rb +9 -17
- data/lib/moov/models/components/transfersource.rbi +2 -6
- data/lib/moov/models/components/transferstatus.rb +4 -1
- data/lib/moov/models/components/transferterminalcard.rb +2 -2
- data/lib/moov/models/components/transfertype.rb +28 -0
- data/lib/moov/models/components/transfertype.rbi +11 -0
- 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 +8 -2
- data/lib/moov/models/components/updateissuedcard.rbi +2 -0
- data/lib/moov/models/components/updateissuedcardstate.rb +4 -0
- data/lib/moov/models/components/updateissuingcontrols.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrols.rbi +21 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rbi +21 -0
- 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 +3 -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 +5 -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 +4 -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 +69 -8
- data/lib/moov/models/errors/bankaccountattestationvalidationerror.rb +40 -0
- data/lib/moov/models/errors/bankaccountattestationvalidationerror.rbi +17 -0
- data/lib/moov/models/errors/capturevalidationerror.rb +68 -0
- data/lib/moov/models/errors/capturevalidationerror.rbi +31 -0
- data/lib/moov/models/errors/cardacquiringrefund_error.rb +12 -8
- data/lib/moov/models/errors/cardacquiringrefund_error.rbi +4 -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 +28 -24
- data/lib/moov/models/errors/transfer_error.rbi +8 -8
- data/lib/moov/models/errors/updateissuedcarderror.rb +6 -2
- data/lib/moov/models/errors/updateissuedcarderror.rbi +2 -0
- data/lib/moov/models/errors/upsertunderwritingerror.rb +6 -2
- data/lib/moov/models/errors/upsertunderwritingerror.rbi +2 -0
- data/lib/moov/models/errors.rb +3 -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/createcancellation_request.rb +6 -2
- data/lib/moov/models/operations/createcancellation_request.rbi +2 -0
- data/lib/moov/models/operations/createcapture_request.rb +44 -0
- data/lib/moov/models/operations/createcapture_request.rbi +19 -0
- data/lib/moov/models/operations/createcapture_response.rb +48 -0
- data/lib/moov/models/operations/createcapture_response.rbi +21 -0
- data/lib/moov/models/operations/createreversal_request.rb +3 -3
- 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 +40 -0
- data/lib/moov/models/operations/getcapture_request.rbi +17 -0
- data/lib/moov/models/operations/getcapture_response.rb +48 -0
- data/lib/moov/models/operations/getcapture_response.rbi +21 -0
- data/lib/moov/models/operations/getpaymentmethod_response.rb +2 -2
- data/lib/moov/models/operations/initiaterefund_request.rb +6 -6
- data/lib/moov/models/operations/initiaterefund_request.rbi +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 +36 -0
- data/lib/moov/models/operations/listcaptures_request.rbi +15 -0
- data/lib/moov/models/operations/listcaptures_response.rb +48 -0
- data/lib/moov/models/operations/listcaptures_response.rbi +21 -0
- 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/listissuingmerchantcategories_response.rb +48 -0
- data/lib/moov/models/operations/listissuingmerchantcategories_response.rbi +21 -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 +11 -3
- data/lib/moov/models/operations/listtransfers_request.rbi +4 -0
- 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 +13 -0
- data/lib/moov/payment_methods.rb +2 -2
- data/lib/moov/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +446 -10
- data/lib/moov/utils/retries.rb +41 -2
- data/lib/moov/utils/utils.rb +6 -2
- data/lib/moov_ruby.rb +1 -1
- metadata +170 -16
- data/lib/moov/models/components/achtransactiondetails.rb +0 -92
- data/lib/moov/models/components/achtransactiondetails.rbi +0 -43
- data/lib/moov/models/components/cardacquiringdispute.rb +0 -40
- data/lib/moov/models/components/cardacquiringdispute.rbi +0 -17
- data/lib/moov/models/components/cardtransactiondetails.rb +0 -93
- data/lib/moov/models/components/cardtransactiondetails.rbi +0 -41
- data/lib/moov/models/components/instantbanktransactiondetails.rb +0 -64
- data/lib/moov/models/components/refundcarddetails.rb +0 -56
- data/lib/moov/models/components/refundcarddetails.rbi +0 -25
|
@@ -2,28 +2,20 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class Moov::Models::Components::
|
|
5
|
+
class Moov::Models::Components::InstantBankCreditTransferProcessingDetails
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class Moov::Models::Components::
|
|
11
|
-
def network(); end
|
|
12
|
-
def network=(str_); end
|
|
10
|
+
class Moov::Models::Components::InstantBankCreditTransferProcessingDetails
|
|
13
11
|
def status(); end
|
|
14
12
|
def status=(str_); end
|
|
13
|
+
def network(); end
|
|
14
|
+
def network=(str_); end
|
|
15
15
|
def network_response_code(); end
|
|
16
16
|
def network_response_code=(str_); end
|
|
17
17
|
def failure_code(); end
|
|
18
18
|
def failure_code=(str_); end
|
|
19
19
|
def end_to_end_id(); end
|
|
20
20
|
def end_to_end_id=(str_); end
|
|
21
|
-
def initiated_on(); end
|
|
22
|
-
def initiated_on=(str_); end
|
|
23
|
-
def completed_on(); end
|
|
24
|
-
def completed_on=(str_); end
|
|
25
|
-
def failed_on(); end
|
|
26
|
-
def failed_on=(str_); end
|
|
27
|
-
def accepted_without_posting_on(); end
|
|
28
|
-
def accepted_without_posting_on=(str_); end
|
|
29
21
|
end
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# InstantBankFailureCode - Status codes for instant-bank failures.
|
|
11
|
-
class InstantBankFailureCode
|
|
11
|
+
class InstantBankFailureCode
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
PROCESSING_ERROR = new('processing-error')
|
|
14
15
|
INVALID_ACCOUNT = new('invalid-account')
|
|
@@ -22,6 +23,7 @@ module Moov
|
|
|
22
23
|
PARTICIPANT_NOT_AVAILABLE = new('participant-not-available')
|
|
23
24
|
OTHER = new('other')
|
|
24
25
|
end
|
|
26
|
+
open!
|
|
25
27
|
end
|
|
26
28
|
end
|
|
27
29
|
end
|
|
@@ -8,11 +8,13 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# InstantBankNetwork - The network that the transaction was processed on.
|
|
11
|
-
class InstantBankNetwork
|
|
11
|
+
class InstantBankNetwork
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
FEDNOW = new('fednow')
|
|
14
15
|
RTP = new('rtp')
|
|
15
16
|
end
|
|
17
|
+
open!
|
|
16
18
|
end
|
|
17
19
|
end
|
|
18
20
|
end
|
|
@@ -8,13 +8,15 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# InstantBankTransactionStatus - Status of a transaction within the instant-bank lifecycle.
|
|
11
|
-
class InstantBankTransactionStatus
|
|
11
|
+
class InstantBankTransactionStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
INITIATED = new('initiated')
|
|
14
15
|
COMPLETED = new('completed')
|
|
15
16
|
FAILED = new('failed')
|
|
16
17
|
ACCEPTED_WITHOUT_POSTING = new('accepted-without-posting')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -25,7 +25,7 @@ module Moov
|
|
|
25
25
|
# A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
|
|
26
26
|
field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
|
|
27
27
|
|
|
28
|
-
field :status, Models::Components::InvoiceStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
28
|
+
field :status, Models::Components::InvoiceStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InvoiceStatus, false) } }
|
|
29
29
|
# A collection of line items for an invoice.
|
|
30
30
|
field :line_items, Models::Components::InvoiceLineItems, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems'), required: true } }
|
|
31
31
|
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
|
|
16
16
|
field :invoice_payment_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentID'), required: true } }
|
|
17
17
|
|
|
18
|
-
field :invoice_payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentType'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :invoice_payment_type, Models::Components::InvoicePaymentType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePaymentType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InvoicePaymentType, false) } }
|
|
19
19
|
|
|
20
20
|
field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
21
21
|
|
|
@@ -8,11 +8,13 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class InvoicePaymentType
|
|
11
|
+
class InvoicePaymentType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
TRANSFER = new('transfer')
|
|
14
15
|
EXTERNAL = new('external')
|
|
15
16
|
end
|
|
17
|
+
open!
|
|
16
18
|
end
|
|
17
19
|
end
|
|
18
20
|
end
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class InvoiceStatus
|
|
11
|
+
class InvoiceStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
DRAFT = new('draft')
|
|
14
15
|
UNPAID = new('unpaid')
|
|
@@ -17,6 +18,7 @@ module Moov
|
|
|
17
18
|
OVERDUE = new('overdue')
|
|
18
19
|
CANCELED = new('canceled')
|
|
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 :issued_card_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuedCardID'), required: true } }
|
|
17
17
|
# The card brand.
|
|
18
|
-
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, false) } }
|
|
19
19
|
|
|
20
20
|
field :last_four_card_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber'), required: true } }
|
|
21
21
|
# The expiration date of the card or token.
|
|
@@ -25,8 +25,9 @@ module Moov
|
|
|
25
25
|
# The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
26
26
|
#
|
|
27
27
|
# - `active`: The card is operational and can approve authorizations.
|
|
28
|
+
# - `frozen`: The card is temporarily suspended and cannot approve authorizations. A frozen card can be reactivated by setting its state back to `active`.
|
|
28
29
|
# - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
|
|
29
|
-
field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.
|
|
30
|
+
field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardState, false) } }
|
|
30
31
|
# Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
|
|
31
32
|
field :form_factor, Models::Components::IssuedCardFormFactor, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('formFactor'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardFormFactor, false) } }
|
|
32
33
|
|
|
@@ -41,10 +42,10 @@ module Moov
|
|
|
41
42
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
42
43
|
# Billing address associated with the card.
|
|
43
44
|
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
45
|
+
# Spend controls applied to an issued card, including velocity runtime state.
|
|
46
|
+
field :controls, Crystalline::Nilable.new(Models::Components::IssuedControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
44
47
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, updated_on: ::DateTime, authorized_user_account_id: T.nilable(::String), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::Address), controls: T.nilable(Models::Components::IssuingControls)).void }
|
|
48
|
+
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, updated_on: ::DateTime, authorized_user_account_id: T.nilable(::String), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::Address), controls: T.nilable(Models::Components::IssuedControls)).void }
|
|
48
49
|
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:, updated_on:, authorized_user_account_id: nil, nickname: nil, metadata: nil, billing_address: nil, controls: nil)
|
|
49
50
|
@issued_card_id = issued_card_id
|
|
50
51
|
@brand = brand
|
|
@@ -19,11 +19,11 @@ module Moov
|
|
|
19
19
|
|
|
20
20
|
field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
|
|
21
21
|
# The name of the network a card transaction is routed through.
|
|
22
|
-
field :network, Models::Components::CardIssuingNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :network, Models::Components::CardIssuingNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardIssuingNetwork, false) } }
|
|
23
23
|
# A decimal-formatted numerical string that represents up to 2 decimal place precision. In USD for example, 12.34 is $12.34 and 0.99 is $0.99.
|
|
24
24
|
field :authorized_amount, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedAmount'), required: true } }
|
|
25
25
|
# Status of a card issuing authorization.
|
|
26
|
-
field :status, Models::Components::IssuingAuthorizationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
26
|
+
field :status, Models::Components::IssuingAuthorizationStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingAuthorizationStatus, false) } }
|
|
27
27
|
|
|
28
28
|
field :merchant_data, Models::Components::IssuingMerchantData, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantData'), required: true } }
|
|
29
29
|
|
|
@@ -15,11 +15,11 @@ module Moov
|
|
|
15
15
|
# The identifier for this event. Use the `eventType` field to determine what resource is identified by this ID (`authorization`, `reversal`, etc.).
|
|
16
16
|
field :event_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventID'), required: true } }
|
|
17
17
|
# The type of event that occurred on the card.
|
|
18
|
-
field :event_type, Models::Components::IssuedCardEventType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventType'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :event_type, Models::Components::IssuedCardEventType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('eventType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardEventType, false) } }
|
|
19
19
|
# A decimal-formatted numerical string that represents up to 2 decimal place precision. In USD for example, 12.34 is $12.34 and 0.99 is $0.99.
|
|
20
20
|
field :amount, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
21
21
|
# The result of an event.
|
|
22
|
-
field :result, Models::Components::IssuedCardAuthorizationEventResult, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('result'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :result, Models::Components::IssuedCardAuthorizationEventResult, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('result'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuedCardAuthorizationEventResult, false) } }
|
|
23
23
|
|
|
24
24
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
25
25
|
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# IssuedCardAuthorizationEventResult - The result of an event.
|
|
11
|
-
class IssuedCardAuthorizationEventResult
|
|
11
|
+
class IssuedCardAuthorizationEventResult
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
APPROVED = new('approved')
|
|
14
15
|
DECLINED = new('declined')
|
|
15
16
|
PROCESSED = new('processed')
|
|
16
17
|
end
|
|
18
|
+
open!
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
21
|
end
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# IssuedCardEventType - The type of event that occurred on the card.
|
|
11
|
-
class IssuedCardEventType
|
|
11
|
+
class IssuedCardEventType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
AUTHORIZATION = new('authorization')
|
|
14
15
|
REVERSAL = new('reversal')
|
|
@@ -17,6 +18,7 @@ module Moov
|
|
|
17
18
|
AUTHORIZATION_INCREMENTAL = new('authorization-incremental')
|
|
18
19
|
CLEARING = new('clearing')
|
|
19
20
|
end
|
|
21
|
+
open!
|
|
20
22
|
end
|
|
21
23
|
end
|
|
22
24
|
end
|
|
@@ -10,12 +10,16 @@ module Moov
|
|
|
10
10
|
# IssuedCardState - The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
11
11
|
#
|
|
12
12
|
# - `active`: The card is operational and can approve authorizations.
|
|
13
|
+
# - `frozen`: The card is temporarily suspended and cannot approve authorizations. A frozen card can be reactivated by setting its state back to `active`.
|
|
13
14
|
# - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
|
|
14
|
-
class IssuedCardState
|
|
15
|
+
class IssuedCardState
|
|
16
|
+
include ::Crystalline::Enum
|
|
15
17
|
enums do
|
|
16
18
|
ACTIVE = new('active')
|
|
19
|
+
FROZEN = new('frozen')
|
|
17
20
|
CLOSED = new('closed')
|
|
18
21
|
end
|
|
22
|
+
open!
|
|
19
23
|
end
|
|
20
24
|
end
|
|
21
25
|
end
|
|
@@ -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
|
+
# Spend controls applied to an issued card, including velocity runtime state.
|
|
11
|
+
class IssuedControls
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Indicates if the card is single-use. If true, the card closes after the first authorization.
|
|
16
|
+
field :single_use, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('singleUse') } }
|
|
17
|
+
# The spending limits per time interval, including current runtime state.
|
|
18
|
+
field :velocity_limits, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuedVelocityLimit)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('velocityLimits') } }
|
|
19
|
+
# Restricts card usage by merchant category. When not set, all categories are allowed.
|
|
20
|
+
field :merchant_category_restrictions, Crystalline::Nilable.new(Models::Components::MerchantCategoryRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantCategoryRestrictions') } }
|
|
21
|
+
# Restricts card usage to specific merchants, independent of merchant category.
|
|
22
|
+
field :merchant_restrictions, Crystalline::Nilable.new(Models::Components::MerchantRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantRestrictions') } }
|
|
23
|
+
|
|
24
|
+
field :allowed_schedule, Crystalline::Nilable.new(Models::Components::IssuedControlsAllowedSchedule), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSchedule') } }
|
|
25
|
+
# A spend cutoff date and time. When set, all authorizations after this datetime are declined regardless of other controls.
|
|
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
|
+
|
|
28
|
+
sig { params(single_use: T.nilable(T::Boolean), velocity_limits: T.nilable(T::Array[Models::Components::IssuedVelocityLimit]), merchant_category_restrictions: T.nilable(Models::Components::MerchantCategoryRestrictions), merchant_restrictions: T.nilable(Models::Components::MerchantRestrictions), allowed_schedule: T.nilable(Models::Components::IssuedControlsAllowedSchedule), expires_on: T.nilable(::DateTime)).void }
|
|
29
|
+
def initialize(single_use: nil, velocity_limits: nil, merchant_category_restrictions: nil, merchant_restrictions: nil, allowed_schedule: nil, expires_on: nil)
|
|
30
|
+
@single_use = single_use
|
|
31
|
+
@velocity_limits = velocity_limits
|
|
32
|
+
@merchant_category_restrictions = merchant_category_restrictions
|
|
33
|
+
@merchant_restrictions = merchant_restrictions
|
|
34
|
+
@allowed_schedule = allowed_schedule
|
|
35
|
+
@expires_on = expires_on
|
|
36
|
+
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 @single_use == other.single_use
|
|
42
|
+
return false unless @velocity_limits == other.velocity_limits
|
|
43
|
+
return false unless @merchant_category_restrictions == other.merchant_category_restrictions
|
|
44
|
+
return false unless @merchant_restrictions == other.merchant_restrictions
|
|
45
|
+
return false unless @allowed_schedule == other.allowed_schedule
|
|
46
|
+
return false unless @expires_on == other.expires_on
|
|
47
|
+
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::IssuedControls
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuedControls
|
|
11
|
+
def single_use(); end
|
|
12
|
+
def single_use=(str_); end
|
|
13
|
+
def velocity_limits(); end
|
|
14
|
+
def velocity_limits=(str_); end
|
|
15
|
+
def merchant_category_restrictions(); end
|
|
16
|
+
def merchant_category_restrictions=(str_); end
|
|
17
|
+
def merchant_restrictions(); end
|
|
18
|
+
def merchant_restrictions=(str_); end
|
|
19
|
+
def allowed_schedule(); end
|
|
20
|
+
def allowed_schedule=(str_); end
|
|
21
|
+
def expires_on(); end
|
|
22
|
+
def expires_on=(str_); end
|
|
23
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
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
|
+
# Limits card usage to specific days and times.
|
|
11
|
+
class IssuedControlsAllowedSchedule
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# IANA timezone string used to evaluate window boundaries against the authorization time.
|
|
16
|
+
field :timezone, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('timezone'), required: true } }
|
|
17
|
+
# Time windows during which the card may authorize. Any matching window allows the transaction.
|
|
18
|
+
field :windows, Crystalline::Array.new(Models::Components::ScheduleWindow), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('windows'), required: true } }
|
|
19
|
+
|
|
20
|
+
sig { params(timezone: ::String, windows: T::Array[Models::Components::ScheduleWindow]).void }
|
|
21
|
+
def initialize(timezone:, windows:)
|
|
22
|
+
@timezone = timezone
|
|
23
|
+
@windows = windows
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @timezone == other.timezone
|
|
30
|
+
return false unless @windows == other.windows
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::IssuedControlsAllowedSchedule
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuedControlsAllowedSchedule
|
|
11
|
+
def timezone(); end
|
|
12
|
+
def timezone=(str_); end
|
|
13
|
+
def windows(); end
|
|
14
|
+
def windows=(str_); end
|
|
15
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
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 velocity limit with its current runtime state.
|
|
11
|
+
class IssuedVelocityLimit
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Specifies the time frame for a velocity limit. `per-transaction` applies to each individual authorization and never resets. Time-based intervals (where supported) reset at midnight ET.
|
|
16
|
+
field :interval, Models::Components::IssuingIntervalLimit, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('interval'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::IssuingIntervalLimit, false) } }
|
|
17
|
+
# The maximum amount in cents that can be spent in a given interval.
|
|
18
|
+
field :amount, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
19
|
+
# The maximum number of transactions allowed in the given interval.
|
|
20
|
+
field :count, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('count') } }
|
|
21
|
+
# The amount in cents already spent in the current interval.
|
|
22
|
+
field :amount_used, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountUsed') } }
|
|
23
|
+
# The amount in cents remaining in the current interval.
|
|
24
|
+
field :amount_remaining, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountRemaining') } }
|
|
25
|
+
# The number of transactions already made in the current interval.
|
|
26
|
+
field :count_used, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('countUsed') } }
|
|
27
|
+
# The number of transactions remaining in the current interval.
|
|
28
|
+
field :count_remaining, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('countRemaining') } }
|
|
29
|
+
# When the current interval resets. Absent for per-transaction limits.
|
|
30
|
+
field :resets_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('resetsOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
31
|
+
|
|
32
|
+
sig { params(interval: Models::Components::IssuingIntervalLimit, amount: T.nilable(::Integer), count: T.nilable(::Integer), amount_used: T.nilable(::Integer), amount_remaining: T.nilable(::Integer), count_used: T.nilable(::Integer), count_remaining: T.nilable(::Integer), resets_on: T.nilable(::DateTime)).void }
|
|
33
|
+
def initialize(interval:, amount: nil, count: nil, amount_used: nil, amount_remaining: nil, count_used: nil, count_remaining: nil, resets_on: nil)
|
|
34
|
+
@interval = interval
|
|
35
|
+
@amount = amount
|
|
36
|
+
@count = count
|
|
37
|
+
@amount_used = amount_used
|
|
38
|
+
@amount_remaining = amount_remaining
|
|
39
|
+
@count_used = count_used
|
|
40
|
+
@count_remaining = count_remaining
|
|
41
|
+
@resets_on = resets_on
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
45
|
+
def ==(other)
|
|
46
|
+
return false unless other.is_a? self.class
|
|
47
|
+
return false unless @interval == other.interval
|
|
48
|
+
return false unless @amount == other.amount
|
|
49
|
+
return false unless @count == other.count
|
|
50
|
+
return false unless @amount_used == other.amount_used
|
|
51
|
+
return false unless @amount_remaining == other.amount_remaining
|
|
52
|
+
return false unless @count_used == other.count_used
|
|
53
|
+
return false unless @count_remaining == other.count_remaining
|
|
54
|
+
return false unless @resets_on == other.resets_on
|
|
55
|
+
true
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::IssuedVelocityLimit
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuedVelocityLimit
|
|
11
|
+
def interval(); end
|
|
12
|
+
def interval=(str_); end
|
|
13
|
+
def amount(); end
|
|
14
|
+
def amount=(str_); end
|
|
15
|
+
def count(); end
|
|
16
|
+
def count=(str_); end
|
|
17
|
+
def amount_used(); end
|
|
18
|
+
def amount_used=(str_); end
|
|
19
|
+
def amount_remaining(); end
|
|
20
|
+
def amount_remaining=(str_); end
|
|
21
|
+
def count_used(); end
|
|
22
|
+
def count_used=(str_); end
|
|
23
|
+
def count_remaining(); end
|
|
24
|
+
def count_remaining=(str_); end
|
|
25
|
+
def resets_on(); end
|
|
26
|
+
def resets_on=(str_); end
|
|
27
|
+
end
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# IssuingAuthorizationStatus - Status of a card issuing authorization.
|
|
11
|
-
class IssuingAuthorizationStatus
|
|
11
|
+
class IssuingAuthorizationStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
PENDING = new('pending')
|
|
14
15
|
DECLINED = new('declined')
|
|
@@ -16,6 +17,7 @@ module Moov
|
|
|
16
17
|
CLEARED = new('cleared')
|
|
17
18
|
EXPIRED = new('expired')
|
|
18
19
|
end
|
|
20
|
+
open!
|
|
19
21
|
end
|
|
20
22
|
end
|
|
21
23
|
end
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
module Moov
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
|
-
|
|
10
|
+
# Mutable spend controls for the card.
|
|
11
11
|
class IssuingControls
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
@@ -16,11 +16,23 @@ module Moov
|
|
|
16
16
|
field :single_use, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('singleUse') } }
|
|
17
17
|
# Sets the spending limit per time interval. Only one limit per interval is supported.
|
|
18
18
|
field :velocity_limits, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::IssuingVelocityLimit)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('velocityLimits') } }
|
|
19
|
+
# Restricts card usage by merchant category. When not set, all categories are allowed.
|
|
20
|
+
field :merchant_category_restrictions, Crystalline::Nilable.new(Models::Components::MerchantCategoryRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantCategoryRestrictions') } }
|
|
21
|
+
# Restricts card usage to specific merchants, independent of merchant category.
|
|
22
|
+
field :merchant_restrictions, Crystalline::Nilable.new(Models::Components::MerchantRestrictions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantRestrictions') } }
|
|
23
|
+
|
|
24
|
+
field :allowed_schedule, Crystalline::Nilable.new(Models::Components::IssuingControlsAllowedSchedule), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('allowedSchedule') } }
|
|
25
|
+
# A spend cutoff date and time. When set, all authorizations after this datetime are declined regardless of other controls. Set to `null` for no cutoff.
|
|
26
|
+
field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
19
27
|
|
|
20
|
-
sig { params(single_use: T.nilable(T::Boolean), velocity_limits: T.nilable(T::Array[Models::Components::IssuingVelocityLimit])).void }
|
|
21
|
-
def initialize(single_use: nil, velocity_limits: nil)
|
|
28
|
+
sig { params(single_use: T.nilable(T::Boolean), velocity_limits: T.nilable(T::Array[Models::Components::IssuingVelocityLimit]), merchant_category_restrictions: T.nilable(Models::Components::MerchantCategoryRestrictions), merchant_restrictions: T.nilable(Models::Components::MerchantRestrictions), allowed_schedule: T.nilable(Models::Components::IssuingControlsAllowedSchedule), expires_on: T.nilable(::DateTime)).void }
|
|
29
|
+
def initialize(single_use: nil, velocity_limits: nil, merchant_category_restrictions: nil, merchant_restrictions: nil, allowed_schedule: nil, expires_on: nil)
|
|
22
30
|
@single_use = single_use
|
|
23
31
|
@velocity_limits = velocity_limits
|
|
32
|
+
@merchant_category_restrictions = merchant_category_restrictions
|
|
33
|
+
@merchant_restrictions = merchant_restrictions
|
|
34
|
+
@allowed_schedule = allowed_schedule
|
|
35
|
+
@expires_on = expires_on
|
|
24
36
|
end
|
|
25
37
|
|
|
26
38
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -28,6 +40,10 @@ module Moov
|
|
|
28
40
|
return false unless other.is_a? self.class
|
|
29
41
|
return false unless @single_use == other.single_use
|
|
30
42
|
return false unless @velocity_limits == other.velocity_limits
|
|
43
|
+
return false unless @merchant_category_restrictions == other.merchant_category_restrictions
|
|
44
|
+
return false unless @merchant_restrictions == other.merchant_restrictions
|
|
45
|
+
return false unless @allowed_schedule == other.allowed_schedule
|
|
46
|
+
return false unless @expires_on == other.expires_on
|
|
31
47
|
true
|
|
32
48
|
end
|
|
33
49
|
end
|
|
@@ -12,4 +12,12 @@ class Moov::Models::Components::IssuingControls
|
|
|
12
12
|
def single_use=(str_); end
|
|
13
13
|
def velocity_limits(); end
|
|
14
14
|
def velocity_limits=(str_); end
|
|
15
|
+
def merchant_category_restrictions(); end
|
|
16
|
+
def merchant_category_restrictions=(str_); end
|
|
17
|
+
def merchant_restrictions(); end
|
|
18
|
+
def merchant_restrictions=(str_); end
|
|
19
|
+
def allowed_schedule(); end
|
|
20
|
+
def allowed_schedule=(str_); end
|
|
21
|
+
def expires_on(); end
|
|
22
|
+
def expires_on=(str_); end
|
|
15
23
|
end
|
|
@@ -0,0 +1,36 @@
|
|
|
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
|
+
# Limits card usage to specific days and times.
|
|
11
|
+
class IssuingControlsAllowedSchedule
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# IANA timezone string used to evaluate window boundaries against the authorization time.
|
|
16
|
+
field :timezone, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('timezone'), required: true } }
|
|
17
|
+
# Time windows during which the card may authorize. Any matching window allows the transaction.
|
|
18
|
+
field :windows, Crystalline::Array.new(Models::Components::ScheduleWindow), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('windows'), required: true } }
|
|
19
|
+
|
|
20
|
+
sig { params(timezone: ::String, windows: T::Array[Models::Components::ScheduleWindow]).void }
|
|
21
|
+
def initialize(timezone:, windows:)
|
|
22
|
+
@timezone = timezone
|
|
23
|
+
@windows = windows
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @timezone == other.timezone
|
|
30
|
+
return false unless @windows == other.windows
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::IssuingControlsAllowedSchedule
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::IssuingControlsAllowedSchedule
|
|
11
|
+
def timezone(); end
|
|
12
|
+
def timezone=(str_); end
|
|
13
|
+
def windows(); end
|
|
14
|
+
def windows=(str_); end
|
|
15
|
+
end
|