moov_ruby 25.2.13 → 25.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/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/collectionpaymentmethodtype.rb +3 -1
- data/lib/moov/models/components/createaccount.rb +2 -2
- 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/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/fulfillmentdetails.rb +1 -1
- data/lib/moov/models/components/fullissuedcard.rb +4 -3
- 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/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/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/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 +3 -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/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/underwriting.rb +1 -1
- 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/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/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/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
|
|
|
@@ -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
|
|
@@ -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
|
|
|
@@ -19,9 +19,9 @@ module Moov
|
|
|
19
19
|
# This field can be used to identify specific payment methods across multiple accounts on your platform.
|
|
20
20
|
field :fingerprint, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint'), required: true } }
|
|
21
21
|
# The card brand.
|
|
22
|
-
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.
|
|
22
|
+
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardBrand, false) } }
|
|
23
23
|
# The type of the card.
|
|
24
|
-
field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': ::Moov::Utils.
|
|
24
|
+
field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardType, false) } }
|
|
25
25
|
# Last four digits of the card number
|
|
26
26
|
field :last_four_card_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber'), required: true } }
|
|
27
27
|
# The first six to eight digits of the card number, which identifies the financial institution that issued the card.
|
|
@@ -46,9 +46,9 @@ module Moov
|
|
|
46
46
|
# The results of the most recent card update request.
|
|
47
47
|
field :card_account_updater, Crystalline::Nilable.new(Models::Components::CardAccountUpdater), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAccountUpdater') } }
|
|
48
48
|
# Indicates which level of domestic push-to-card transfer is supported by the card, if any.
|
|
49
|
-
field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': ::Moov::Utils.
|
|
49
|
+
field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::DomesticPushToCard, true) } }
|
|
50
50
|
# Indicates if the card supports domestic pull-from-card transfer.
|
|
51
|
-
field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': ::Moov::Utils.
|
|
51
|
+
field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::DomesticPullFromCard, true) } }
|
|
52
52
|
|
|
53
53
|
sig { params(card_id: ::String, fingerprint: ::String, brand: Models::Components::CardBrand, card_type: Models::Components::CardType, last_four_card_number: ::String, bin: ::String, expiration: Models::Components::CardExpiration, billing_address: Models::Components::CardAddress, card_verification: Models::Components::CardVerification, holder_name: T.nilable(::String), issuer: T.nilable(::String), issuer_country: T.nilable(::String), card_on_file: T.nilable(T::Boolean), merchant_account_id: T.nilable(::String), card_account_updater: T.nilable(Models::Components::CardAccountUpdater), domestic_push_to_card: T.nilable(Models::Components::DomesticPushToCard), domestic_pull_from_card: T.nilable(Models::Components::DomesticPullFromCard)).void }
|
|
54
54
|
def initialize(card_id:, fingerprint:, brand:, card_type:, last_four_card_number:, bin:, expiration:, billing_address:, card_verification:, holder_name: nil, issuer: nil, issuer_country: nil, card_on_file: nil, merchant_account_id: nil, card_account_updater: nil, domestic_push_to_card: nil, domestic_pull_from_card: nil)
|
|
@@ -20,7 +20,7 @@ module Moov
|
|
|
20
20
|
# - `default`: The system-generated wallet automatically created when an account is granted the wallet capability.
|
|
21
21
|
# - `general`: An additional, user-defined wallet created via API or Dashboard.
|
|
22
22
|
# - `card-issuing`: The system-generated wallet automatically created when an account is granted the card-issuing capability.
|
|
23
|
-
field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': ::Moov::Utils.
|
|
23
|
+
field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletType, false) } }
|
|
24
24
|
|
|
25
25
|
sig { params(wallet_id: ::String, partner_account_id: ::String, wallet_type: Models::Components::WalletType).void }
|
|
26
26
|
def initialize(wallet_id:, partner_account_id:, wallet_type:)
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# PaymentMethodType - The payment method type that represents a payment rail and directionality
|
|
11
|
-
class PaymentMethodType
|
|
11
|
+
class PaymentMethodType
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
MOOV_WALLET = new('moov-wallet')
|
|
14
15
|
ACH_DEBIT_FUND = new('ach-debit-fund')
|
|
@@ -21,6 +22,7 @@ module Moov
|
|
|
21
22
|
PULL_FROM_CARD = new('pull-from-card')
|
|
22
23
|
APPLE_PAY = new('apple-pay')
|
|
23
24
|
end
|
|
25
|
+
open!
|
|
24
26
|
end
|
|
25
27
|
end
|
|
26
28
|
end
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
# PrimaryRegulator - If the business is a financial institution, this field describes its primary regulator.
|
|
11
|
-
class PrimaryRegulator
|
|
11
|
+
class PrimaryRegulator
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
OCC = new('OCC')
|
|
14
15
|
FDIC = new('FDIC')
|
|
@@ -16,6 +17,7 @@ module Moov
|
|
|
16
17
|
FRB = new('FRB')
|
|
17
18
|
STATE_CU_REGULATOR = new('state-cu-regulator')
|
|
18
19
|
end
|
|
20
|
+
open!
|
|
19
21
|
end
|
|
20
22
|
end
|
|
21
23
|
end
|
|
@@ -13,9 +13,9 @@ module Moov
|
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
field :status, Models::Components::RefundCardStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.
|
|
16
|
+
field :status, Models::Components::RefundCardStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RefundCardStatus, false) } }
|
|
17
17
|
|
|
18
|
-
field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.
|
|
18
|
+
field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
|
|
19
19
|
|
|
20
20
|
field :initiated_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('initiatedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
21
21
|
|
|
@@ -8,7 +8,8 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class RefundCardStatus
|
|
11
|
+
class RefundCardStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
INITIATED = new('initiated')
|
|
14
15
|
CONFIRMED = new('confirmed')
|
|
@@ -16,6 +17,7 @@ module Moov
|
|
|
16
17
|
FAILED = new('failed')
|
|
17
18
|
COMPLETED = new('completed')
|
|
18
19
|
end
|
|
20
|
+
open!
|
|
19
21
|
end
|
|
20
22
|
end
|
|
21
23
|
end
|
|
@@ -8,13 +8,15 @@ module Moov
|
|
|
8
8
|
module Models
|
|
9
9
|
module Components
|
|
10
10
|
|
|
11
|
-
class RefundStatus
|
|
11
|
+
class RefundStatus
|
|
12
|
+
include ::Crystalline::Enum
|
|
12
13
|
enums do
|
|
13
14
|
CREATED = new('created')
|
|
14
15
|
PENDING = new('pending')
|
|
15
16
|
COMPLETED = new('completed')
|
|
16
17
|
FAILED = new('failed')
|
|
17
18
|
end
|
|
19
|
+
open!
|
|
18
20
|
end
|
|
19
21
|
end
|
|
20
22
|
end
|
|
@@ -22,7 +22,7 @@ module Moov
|
|
|
22
22
|
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
23
23
|
# The expiration date of the card or token.
|
|
24
24
|
field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
|
|
25
|
-
|
|
25
|
+
# Mutable spend controls for the card.
|
|
26
26
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
27
27
|
|
|
28
28
|
sig { params(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), expiration: T.nilable(Models::Components::CardExpiration), controls: T.nilable(Models::Components::IssuingControls)).void }
|