moov_ruby 26.2.13 → 26.2.14
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/card_issuing.rb +1 -1
- data/lib/moov/images.rb +1 -1
- 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/achreturncode.rb +3 -1
- data/lib/moov/models/components/achtransactiondetails.rb +3 -3
- 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/applepayresponse.rb +2 -2
- data/lib/moov/models/components/applicationscope.rb +4 -2
- data/lib/moov/models/components/bankaccount.rb +4 -4
- 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/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 +1 -1
- data/lib/moov/models/components/cardbrand.rb +3 -1
- data/lib/moov/models/components/cardissuingnetwork.rb +3 -1
- data/lib/moov/models/components/cardtransactiondetails.rb +3 -3
- data/lib/moov/models/components/cardtransactionfailurecode.rb +3 -1
- data/lib/moov/models/components/cardtransactionstatus.rb +3 -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/createbusinessprofile.rb +2 -2
- data/lib/moov/models/components/createdtransfer.rb +6 -3
- 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 +1 -1
- 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/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/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 +2 -2
- data/lib/moov/models/components/feecategory.rb +3 -1
- data/lib/moov/models/components/feemodel.rb +3 -1
- 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 +4 -3
- data/lib/moov/models/components/geographicreach.rb +3 -1
- data/lib/moov/models/components/instantbankfailurecode.rb +3 -1
- data/lib/moov/models/components/instantbanknetwork.rb +3 -1
- data/lib/moov/models/components/instantbanktransactiondetails.rb +3 -3
- data/lib/moov/models/components/instantbanktransactionstatus.rb +3 -1
- data/lib/moov/models/components/issuedcard.rb +4 -3
- 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/issuingauthorizationstatus.rb +3 -1
- data/lib/moov/models/components/issuingcontrols.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/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 -4
- 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 +1 -1
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +1 -1
- 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 +3 -1
- data/lib/moov/models/components/pendinglitigation.rb +3 -1
- data/lib/moov/models/components/primaryregulator.rb +3 -1
- data/lib/moov/models/components/refundcarddetails.rb +2 -2
- data/lib/moov/models/components/refundcardstatus.rb +3 -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 +10 -1
- data/lib/moov/models/components/returnpolicytype.rb +3 -1
- data/lib/moov/models/components/reversedwithcancellation.rb +1 -1
- data/lib/moov/models/components/rtpfailurecode.rb +3 -1
- data/lib/moov/models/components/rtprejectioncode.rb +3 -1
- data/lib/moov/models/components/rtptransactiondetails.rb +2 -2
- data/lib/moov/models/components/rtptransactionstatus.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/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/transactionsource.rb +3 -1
- data/lib/moov/models/components/transfer.rb +6 -3
- data/lib/moov/models/components/transferdestination.rb +1 -1
- data/lib/moov/models/components/transferfailurereason.rb +3 -1
- 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 +3 -1
- 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/underwriting.rb +4 -4
- data/lib/moov/models/components/underwritingstatus.rb +3 -1
- data/lib/moov/models/components/updateevidence.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/updatepaymentlink.rb +1 -1
- data/lib/moov/models/components/updatewebhook.rb +1 -1
- data/lib/moov/models/components/upsertunderwriting.rb +3 -3
- 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 +3 -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/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/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/webhookdatawallettransactionupdated.rb +1 -1
- data/lib/moov/models/components/webhookdatawalletupdated.rb +1 -1
- data/lib/moov/models/components/webhookevent.rb +1 -1
- data/lib/moov/models/components/webhookeventtype.rb +3 -1
- data/lib/moov/models/components/webhookstatus.rb +3 -1
- data/lib/moov/models/components.rb +3 -1
- data/lib/moov/models/errors/cardacquiringrefund_error.rb +1 -1
- data/lib/moov/models/errors/transfer_error.rb +6 -3
- data/lib/moov/models/operations/listaccounts_request.rb +1 -1
- 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/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/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 +2 -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/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +11 -5
- data/lib/moov/utils/retries.rb +41 -2
- data/lib/moov/utils/utils.rb +6 -2
- metadata +6 -2
|
@@ -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
|
|
|
@@ -45,7 +46,7 @@ module Moov
|
|
|
45
46
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
46
47
|
# Billing address associated with the card.
|
|
47
48
|
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
48
|
-
|
|
49
|
+
# Mutable spend controls for the card.
|
|
49
50
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
50
51
|
|
|
51
52
|
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, pan: ::String, cvv: ::String, 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 }
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class GeographicReach
|
|
11
|
+
class GeographicReach
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
INTERNATIONAL_ONLY = new('international-only')
|
|
14
15
|
US_AND_INTERNATIONAL = new('us-and-international')
|
|
15
16
|
US_ONLY = new('us-only')
|
|
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
|
# 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
|
|
@@ -13,13 +13,13 @@ module Moov
|
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
15
|
# The network that the transaction was processed on.
|
|
16
|
-
field :network, Models::Components::InstantBankNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.
|
|
16
|
+
field :network, Models::Components::InstantBankNetwork, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('network'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankNetwork, false) } }
|
|
17
17
|
# Status of a transaction within the instant-bank lifecycle.
|
|
18
|
-
field :status, Models::Components::InstantBankTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :status, Models::Components::InstantBankTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankTransactionStatus, false) } }
|
|
19
19
|
# Response code returned by network on failure.
|
|
20
20
|
field :network_response_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkResponseCode') } }
|
|
21
21
|
# Status codes for instant-bank failures.
|
|
22
|
-
field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.
|
|
22
|
+
field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankFailureCode, true) } }
|
|
23
23
|
|
|
24
24
|
field :end_to_end_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('endToEndID') } }
|
|
25
25
|
|
|
@@ -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
|
|
@@ -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,7 +42,7 @@ 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') } }
|
|
44
|
-
|
|
45
|
+
# Mutable spend controls for the card.
|
|
45
46
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
46
47
|
|
|
47
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::IssuingControls)).void }
|
|
@@ -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
|
|
@@ -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
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# The cryptographic algorithm family used with the key (e.g., 'RSA', 'EC', 'oct').
|
|
16
16
|
field :kty, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('kty'), required: true } }
|
|
17
17
|
# The intended use of the key. 'sig' for signature, 'enc' for encryption.
|
|
18
|
-
field :use, Crystalline::Nilable.new(Models::Components::Use), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('use'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :use, Crystalline::Nilable.new(Models::Components::Use), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('use'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Use, true) } }
|
|
19
19
|
# The permitted operations for the key, e.g., 'sign', 'verify', 'encrypt', 'decrypt'.
|
|
20
20
|
field :key_ops, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('key_ops') } }
|
|
21
21
|
# The algorithm intended for use with the key, e.g., 'RS256' or 'ES256'.
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# The new payment method's ID.
|
|
16
16
|
field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
|
|
17
17
|
# The payment method type that represents a payment rail and directionality
|
|
18
|
-
field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :payment_method_type, Models::Components::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PaymentMethodType, false) } }
|
|
19
19
|
# Describes an Apple Pay token on a Moov account.
|
|
20
20
|
field :apple_pay, Models::Components::ApplePayResponse, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applePay'), required: true } }
|
|
21
21
|
|
|
@@ -8,11 +8,13 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# Mode - The operating mode for an account.
|
|
11
|
-
class Mode
|
|
11
|
+
class Mode
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
SANDBOX = new('sandbox')
|
|
14
15
|
PRODUCTION = new('production')
|
|
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
|
# MonthlyVolumeRange - The low value in each range is included. The high value in each range is excluded.
|
|
11
|
-
class MonthlyVolumeRange
|
|
11
|
+
class MonthlyVolumeRange
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
UNDER_10K = new('under-10k')
|
|
14
15
|
TENK_50K = new('10k-50k')
|
|
@@ -19,6 +20,7 @@ module Moov
|
|
|
19
20
|
ONEM_5M = new('1m-5m')
|
|
20
21
|
OVER_5M = new('over-5m')
|
|
21
22
|
end
|
|
23
|
+
open!
|
|
22
24
|
end
|
|
23
25
|
end
|
|
24
26
|
end
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# ID of the account that fees were charged to.
|
|
16
16
|
field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
|
|
17
17
|
# Indicates whether the account charged was the partner, source, or destination of the transfer.
|
|
18
|
-
field :transfer_party, Models::Components::TransferParty, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferParty'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :transfer_party, Models::Components::TransferParty, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferParty'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferParty, false) } }
|
|
19
19
|
# The total amount of fees charged to the account.
|
|
20
20
|
field :total_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('totalAmount'), required: true } }
|
|
21
21
|
# List of fee IDs that sum to the totalAmount.
|
|
@@ -21,7 +21,7 @@ module Moov
|
|
|
21
21
|
|
|
22
22
|
field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
|
|
23
23
|
# Sandbox or production account mode of this schedule.
|
|
24
|
-
field :mode, Crystalline::Nilable.new(Models::Components::Mode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), 'decoder': ::Moov::Utils.
|
|
24
|
+
field :mode, Crystalline::Nilable.new(Models::Components::Mode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, true) } }
|
|
25
25
|
# True if this was generated by a RRule.
|
|
26
26
|
field :generated, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('generated') } }
|
|
27
27
|
# True if the RRule set runs indefinitely.
|
|
@@ -33,7 +33,7 @@ module Moov
|
|
|
33
33
|
|
|
34
34
|
field :ran_transfer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('ranTransferID') } }
|
|
35
35
|
# Status of the completed occurrence.
|
|
36
|
-
field :status, Crystalline::Nilable.new(Models::Components::OccurrenceStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.
|
|
36
|
+
field :status, Crystalline::Nilable.new(Models::Components::OccurrenceStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::OccurrenceStatus, true) } }
|
|
37
37
|
# Contains details on why the occurrence errored.
|
|
38
38
|
field :error, Crystalline::Nilable.new(Models::Components::OccurrencesResponseError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('error') } }
|
|
39
39
|
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# OccurrenceStatus - Status of the completed occurrence.
|
|
11
|
-
class OccurrenceStatus
|
|
11
|
+
class OccurrenceStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
PENDING = new('pending')
|
|
14
15
|
FAILED = new('failed')
|
|
15
16
|
COMPLETED = new('completed')
|
|
16
17
|
end
|
|
18
|
+
open!
|
|
17
19
|
end
|
|
18
20
|
end
|
|
19
21
|
end
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# The account ID of the partner that created the invite.
|
|
16
16
|
field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
|
|
17
17
|
# The operating mode for an account.
|
|
18
|
-
field :account_mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountMode'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :account_mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountMode'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, false) } }
|
|
19
19
|
# The name of the Moov account used to create the onboarding invite.
|
|
20
20
|
field :display_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('displayName'), required: true } }
|
|
21
21
|
|
|
@@ -21,26 +21,30 @@ module Moov
|
|
|
21
21
|
|
|
22
22
|
field :accepted_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
23
23
|
|
|
24
|
-
field :status, Models::Components::FeePlanAgreementStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
24
|
+
field :status, Models::Components::FeePlanAgreementStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::FeePlanAgreementStatus, false) } }
|
|
25
25
|
# Specifies the card processing pricing model
|
|
26
|
-
field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': ::Moov::Utils.
|
|
26
|
+
field :card_acquiring_model, Models::Components::CardAcquiringModel, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAcquiringModel'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardAcquiringModel, false) } }
|
|
27
27
|
|
|
28
28
|
field :billable_fees, Crystalline::Array.new(Models::Components::BillableFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billableFees'), required: true } }
|
|
29
29
|
# The minimum spending amount that must be met in the billing period. If actual usage is below the minimum amount, account is charged the difference.
|
|
30
30
|
field :minimum_commitment, Models::Components::MinimumCommitment, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('minimumCommitment'), required: true } }
|
|
31
31
|
# Fixed recurring amount paid in the billing period regardless of usage.
|
|
32
32
|
field :monthly_platform_fee, Models::Components::MonthlyPlatformFee, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('monthlyPlatformFee'), required: true } }
|
|
33
|
-
#
|
|
34
|
-
#
|
|
35
|
-
#
|
|
33
|
+
# The decimal-formatted numerical string of the revenue split for partner.
|
|
34
|
+
#
|
|
35
|
+
# For example, 2.25% is '2.25'.
|
|
36
36
|
field :revenue_share, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('revenueShare'), required: true } }
|
|
37
37
|
# 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).
|
|
38
38
|
field :account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID') } }
|
|
39
39
|
# The description of the agreement.
|
|
40
40
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
41
|
+
# The agreement this one replaced. Only set when the agreement was created by replacing another.
|
|
42
|
+
field :prior_agreement_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priorAgreementID') } }
|
|
43
|
+
# The date and time the prior agreement was terminated.
|
|
44
|
+
field :prior_agreement_terminated_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('priorAgreementTerminatedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
41
45
|
|
|
42
|
-
sig { params(agreement_id: ::String, plan_id: ::String, name: ::String, accepted_on: ::DateTime, status: Models::Components::FeePlanAgreementStatus, card_acquiring_model: Models::Components::CardAcquiringModel, billable_fees: T::Array[Models::Components::BillableFee], minimum_commitment: Models::Components::MinimumCommitment, monthly_platform_fee: Models::Components::MonthlyPlatformFee, revenue_share: ::String, account_id: T.nilable(::String), description: T.nilable(::String)).void }
|
|
43
|
-
def initialize(agreement_id:, plan_id:, name:, accepted_on:, status:, card_acquiring_model:, billable_fees:, minimum_commitment:, monthly_platform_fee:, revenue_share:, account_id: nil, description: nil)
|
|
46
|
+
sig { params(agreement_id: ::String, plan_id: ::String, name: ::String, accepted_on: ::DateTime, status: Models::Components::FeePlanAgreementStatus, card_acquiring_model: Models::Components::CardAcquiringModel, billable_fees: T::Array[Models::Components::BillableFee], minimum_commitment: Models::Components::MinimumCommitment, monthly_platform_fee: Models::Components::MonthlyPlatformFee, revenue_share: ::String, account_id: T.nilable(::String), description: T.nilable(::String), prior_agreement_id: T.nilable(::String), prior_agreement_terminated_on: T.nilable(::DateTime)).void }
|
|
47
|
+
def initialize(agreement_id:, plan_id:, name:, accepted_on:, status:, card_acquiring_model:, billable_fees:, minimum_commitment:, monthly_platform_fee:, revenue_share:, account_id: nil, description: nil, prior_agreement_id: nil, prior_agreement_terminated_on: nil)
|
|
44
48
|
@agreement_id = agreement_id
|
|
45
49
|
@plan_id = plan_id
|
|
46
50
|
@name = name
|
|
@@ -53,6 +57,8 @@ module Moov
|
|
|
53
57
|
@revenue_share = revenue_share
|
|
54
58
|
@account_id = account_id
|
|
55
59
|
@description = description
|
|
60
|
+
@prior_agreement_id = prior_agreement_id
|
|
61
|
+
@prior_agreement_terminated_on = prior_agreement_terminated_on
|
|
56
62
|
end
|
|
57
63
|
|
|
58
64
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -70,6 +76,8 @@ module Moov
|
|
|
70
76
|
return false unless @revenue_share == other.revenue_share
|
|
71
77
|
return false unless @account_id == other.account_id
|
|
72
78
|
return false unless @description == other.description
|
|
79
|
+
return false unless @prior_agreement_id == other.prior_agreement_id
|
|
80
|
+
return false unless @prior_agreement_terminated_on == other.prior_agreement_terminated_on
|
|
73
81
|
true
|
|
74
82
|
end
|
|
75
83
|
end
|
|
@@ -32,4 +32,8 @@ class Moov::Models::Components::PartnerPricingAgreement
|
|
|
32
32
|
def account_id=(str_); end
|
|
33
33
|
def description(); end
|
|
34
34
|
def description=(str_); end
|
|
35
|
+
def prior_agreement_id(); end
|
|
36
|
+
def prior_agreement_id=(str_); end
|
|
37
|
+
def prior_agreement_terminated_on(); end
|
|
38
|
+
def prior_agreement_terminated_on=(str_); end
|
|
35
39
|
end
|
|
@@ -17,7 +17,7 @@ module Moov
|
|
|
17
17
|
|
|
18
18
|
field :doing_business_as, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('doingBusinessAs') } }
|
|
19
19
|
# The type of entity represented by this business.
|
|
20
|
-
field :business_type, Crystalline::Nilable.new(Models::Components::BusinessType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('businessType'), 'decoder': ::Moov::Utils.
|
|
20
|
+
field :business_type, Crystalline::Nilable.new(Models::Components::BusinessType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('businessType'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::BusinessType, true) } }
|
|
21
21
|
|
|
22
22
|
field :address, Crystalline::Nilable.new(Models::Components::AddressUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('address') } }
|
|
23
23
|
|
|
@@ -37,7 +37,7 @@ module Moov
|
|
|
37
37
|
# Classification identifier for the industry. Use the [GET industries](https://docs.moov.io/api/enrichment/form-shortening/industries/get/) endpoint to retrieve an array of valid industry details for a merchant, inducing all industry field values.
|
|
38
38
|
field :industry, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('industry') } }
|
|
39
39
|
# If the business is a financial institution, this field describes its primary regulator.
|
|
40
|
-
field :primary_regulator, Crystalline::Nilable.new(Models::Components::PrimaryRegulator), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('primaryRegulator'), 'decoder': ::Moov::Utils.
|
|
40
|
+
field :primary_regulator, Crystalline::Nilable.new(Models::Components::PrimaryRegulator), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('primaryRegulator'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PrimaryRegulator, true) } }
|
|
41
41
|
|
|
42
42
|
sig { params(legal_business_name: T.nilable(::String), doing_business_as: T.nilable(::String), business_type: T.nilable(Models::Components::BusinessType), address: T.nilable(Models::Components::AddressUpdate), phone: T.nilable(Models::Components::PhoneNumber), email: T.nilable(::String), website: T.nilable(::String), description: T.nilable(::String), tax_id: T.nilable(Models::Components::TaxIDUpdate), owners_provided: T.nilable(T::Boolean), industry_codes: T.nilable(Models::Components::IndustryCodes), industry: T.nilable(::String), primary_regulator: T.nilable(Models::Components::PrimaryRegulator)).void }
|
|
43
43
|
def initialize(legal_business_name: nil, doing_business_as: nil, business_type: nil, address: nil, phone: nil, email: nil, website: nil, description: nil, tax_id: nil, owners_provided: nil, industry_codes: nil, industry: nil, primary_regulator: nil)
|
|
@@ -17,7 +17,7 @@ module Moov
|
|
|
17
17
|
# Status of a wallet.
|
|
18
18
|
# - `active`: The wallet is available for use and has an enabled payment method.
|
|
19
19
|
# - `closed`: The wallet is no longer active and the corresponding payment method has been disabled.
|
|
20
|
-
field :status, Crystalline::Nilable.new(Models::Components::WalletStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.
|
|
20
|
+
field :status, Crystalline::Nilable.new(Models::Components::WalletStatus), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletStatus, true) } }
|
|
21
21
|
|
|
22
22
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
23
23
|
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
@@ -15,11 +15,11 @@ module Moov
|
|
|
15
15
|
# Unique code identifying this payment link.
|
|
16
16
|
field :code, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('code'), required: true } }
|
|
17
17
|
|
|
18
|
-
field :payment_link_type, Models::Components::PaymentLinkType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkType'), required: true, 'decoder': ::Moov::Utils.
|
|
18
|
+
field :payment_link_type, Models::Components::PaymentLinkType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PaymentLinkType, false) } }
|
|
19
19
|
# The operating mode for an account.
|
|
20
|
-
field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.
|
|
20
|
+
field :mode, Models::Components::Mode, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::Mode, false) } }
|
|
21
21
|
|
|
22
|
-
field :status, Models::Components::PaymentLinkStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :status, Models::Components::PaymentLinkStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PaymentLinkStatus, false) } }
|
|
23
23
|
# The partner's Moov account ID.
|
|
24
24
|
field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
|
|
25
25
|
# The merchant's Moov account ID.
|
|
@@ -59,7 +59,7 @@ module Moov
|
|
|
59
59
|
field :expires_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiresOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
60
60
|
# Options for payment links used to collect payment.
|
|
61
61
|
field :payment, Crystalline::Nilable.new(Models::Components::PaymentLinkPaymentDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payment') } }
|
|
62
|
-
|
|
62
|
+
# Options for payout links used to send a payout.
|
|
63
63
|
field :payout, Crystalline::Nilable.new(Models::Components::PaymentLinkPayoutDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payout') } }
|
|
64
64
|
# An optional collection of line items for a payment link.
|
|
65
65
|
# When line items are provided, their total plus tax must equal the payment link amount.
|
|
@@ -20,7 +20,7 @@ module Moov
|
|
|
20
20
|
#
|
|
21
21
|
# If set to "auto" the UI will automatically select between
|
|
22
22
|
# "pay" and "confirm" for payments and payouts respectively.
|
|
23
|
-
field :call_to_action, Models::Components::CallToAction, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('callToAction'), required: true, 'decoder': ::Moov::Utils.
|
|
23
|
+
field :call_to_action, Models::Components::CallToAction, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('callToAction'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CallToAction, false) } }
|
|
24
24
|
|
|
25
25
|
sig { params(title: ::String, description: ::String, call_to_action: Models::Components::CallToAction).void }
|
|
26
26
|
def initialize(title:, description:, call_to_action:)
|
|
@@ -20,7 +20,7 @@ module Moov
|
|
|
20
20
|
#
|
|
21
21
|
# If set to "auto" the UI will automatically select between
|
|
22
22
|
# "pay" and "confirm" for payments and payouts respectively.
|
|
23
|
-
field :call_to_action, Crystalline::Nilable.new(Models::Components::CallToAction), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('callToAction'), 'decoder': ::Moov::Utils.
|
|
23
|
+
field :call_to_action, Crystalline::Nilable.new(Models::Components::CallToAction), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('callToAction'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CallToAction, true) } }
|
|
24
24
|
|
|
25
25
|
sig { params(title: T.nilable(::String), description: T.nilable(::String), call_to_action: T.nilable(Models::Components::CallToAction)).void }
|
|
26
26
|
def initialize(title: nil, description: nil, call_to_action: nil)
|
|
@@ -8,13 +8,15 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class PaymentLinkStatus
|
|
11
|
+
class PaymentLinkStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
ACTIVE = new('active')
|
|
14
15
|
USED = new('used')
|
|
15
16
|
DISABLED = new('disabled')
|
|
16
17
|
EXPIRED = new('expired')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -8,12 +8,14 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class PaymentLinkType
|
|
11
|
+
class PaymentLinkType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
PAYMENT = new('payment')
|
|
14
15
|
PAYOUT = new('payout')
|
|
15
16
|
INVOICE_PAYMENT = new('invoice-payment')
|
|
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
|
|