moov_ruby 26.10.0.pre.dev.0 → 26.10.0.pre.dev.2
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/moov/avatars.rb +276 -1
- data/lib/moov/card_issuing.rb +116 -0
- data/lib/moov/client.rb +2 -2
- data/lib/moov/enriched_address.rb +1 -1
- data/lib/moov/enriched_profile.rb +1 -1
- data/lib/moov/institutions.rb +1 -1
- data/lib/moov/models/components/achcreditoptions.rb +40 -0
- data/lib/moov/models/components/achcreditoptions.rbi +17 -0
- data/lib/moov/models/components/achcredittransferprocessingdetails.rb +40 -0
- data/lib/moov/models/components/achcredittransferprocessingdetails.rbi +17 -0
- data/lib/moov/models/components/achdebitoptions.rb +48 -0
- data/lib/moov/models/components/achdebitoptions.rbi +21 -0
- data/lib/moov/models/components/achdebittransferprocessingdetails.rb +40 -0
- data/lib/moov/models/components/achdebittransferprocessingdetails.rbi +17 -0
- data/lib/moov/models/components/allowedscheduleerror.rb +36 -0
- data/lib/moov/models/components/allowedscheduleerror.rbi +15 -0
- data/lib/moov/models/components/asynccreatedrefund.rb +7 -3
- data/lib/moov/models/components/asynccreatedrefund.rbi +2 -0
- data/lib/moov/models/components/avataruploadrequest.rb +32 -0
- data/lib/moov/models/components/avataruploadrequest.rbi +13 -0
- data/lib/moov/models/components/avataruploadrequest_file.rb +36 -0
- data/lib/moov/models/components/avataruploadrequest_file.rbi +15 -0
- data/lib/moov/models/components/capabilityid.rb +1 -0
- data/lib/moov/models/components/capture.rb +77 -0
- data/lib/moov/models/components/capture.rbi +35 -0
- data/lib/moov/models/components/{refundcardstatus.rb → capturestatus.rb} +5 -4
- data/lib/moov/models/components/{refundcardstatus.rbi → capturestatus.rbi} +2 -2
- data/lib/moov/models/components/cardacquiringrefund.rb +11 -7
- data/lib/moov/models/components/cardacquiringrefund.rbi +4 -2
- data/lib/moov/models/components/cardpaymentoptions.rb +39 -0
- data/lib/moov/models/components/cardpaymentoptions.rbi +15 -0
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +32 -0
- data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +13 -0
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/createcancellation.rb +32 -0
- data/lib/moov/models/components/createcancellation.rbi +13 -0
- data/lib/moov/models/components/createcapture.rb +65 -0
- data/lib/moov/models/components/createcapture.rbi +29 -0
- data/lib/moov/models/components/createdtransfer.rb +22 -22
- data/lib/moov/models/components/createdtransfer.rbi +8 -8
- data/lib/moov/models/components/createrefund.rb +9 -5
- data/lib/moov/models/components/createrefund.rbi +2 -0
- data/lib/moov/models/components/createreversal.rb +3 -3
- data/lib/moov/models/components/createtransfer.rb +9 -5
- data/lib/moov/models/components/createtransfer.rbi +2 -0
- data/lib/moov/models/components/createtransferfacilitatorfee.rb +36 -0
- data/lib/moov/models/components/createtransferfacilitatorfee.rbi +15 -0
- data/lib/moov/models/components/createtransferoptions.rb +2 -2
- data/lib/moov/models/components/feepaidby.rb +19 -0
- data/lib/moov/models/components/{achtransactionstatus.rbi → feepaidby.rbi} +2 -2
- data/lib/moov/models/components/fullissuedcard.rb +3 -3
- data/lib/moov/models/components/incurredfee.rb +6 -2
- data/lib/moov/models/components/incurredfee.rbi +2 -0
- data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/issuedcard.rb +3 -3
- data/lib/moov/models/components/issuedcontrols.rb +52 -0
- data/lib/moov/models/components/issuedcontrols.rbi +23 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuedcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuedvelocitylimit.rb +60 -0
- data/lib/moov/models/components/issuedvelocitylimit.rbi +27 -0
- data/lib/moov/models/components/issuingcontrols.rb +18 -2
- data/lib/moov/models/components/issuingcontrols.rbi +8 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/issuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/issuingcontrolserror.rb +18 -2
- data/lib/moov/models/components/issuingcontrolserror.rbi +8 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rb +19 -0
- data/lib/moov/models/components/issuingcontrolsrestrictionmode.rbi +11 -0
- data/lib/moov/models/components/issuingintervallimit.rb +4 -1
- data/lib/moov/models/components/issuingmerchantcategory.rb +43 -0
- data/lib/moov/models/components/issuingmerchantcategory.rbi +11 -0
- data/lib/moov/models/components/issuingscheduleday.rb +24 -0
- data/lib/moov/models/components/{cardtransactionstatus.rbi → issuingscheduleday.rbi} +2 -2
- data/lib/moov/models/components/issuingvelocitylimit.rb +11 -7
- data/lib/moov/models/components/issuingvelocitylimit.rbi +4 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rb +6 -2
- data/lib/moov/models/components/issuingvelocitylimiterror.rbi +2 -0
- data/lib/moov/models/components/merchantcategories.rb +32 -0
- data/lib/moov/models/components/merchantcategories.rbi +13 -0
- data/lib/moov/models/components/merchantcategory.rb +37 -0
- data/lib/moov/models/components/merchantcategory.rbi +15 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rb +44 -0
- data/lib/moov/models/components/merchantcategoryrestrictionserror.rbi +19 -0
- data/lib/moov/models/components/merchantentry.rb +40 -0
- data/lib/moov/models/components/merchantentry.rbi +17 -0
- data/lib/moov/models/components/merchantentryerror.rb +36 -0
- data/lib/moov/models/components/merchantentryerror.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/merchantrestrictionserror.rb +36 -0
- data/lib/moov/models/components/merchantrestrictionserror.rbi +15 -0
- data/lib/moov/models/components/moovfeedetails.rb +5 -5
- data/lib/moov/models/components/paymentlinkpayoutdetails.rb +8 -2
- data/lib/moov/models/components/paymentlinkpayoutdetails.rbi +2 -0
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +8 -2
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rbi +2 -0
- data/lib/moov/models/components/paymentmethodswallet.rb +1 -0
- data/lib/moov/models/components/payoutdetailserror.rb +6 -2
- data/lib/moov/models/components/payoutdetailserror.rbi +2 -0
- data/lib/moov/models/components/product.rb +6 -2
- data/lib/moov/models/components/product.rbi +2 -0
- data/lib/moov/models/components/productcategories.rb +32 -0
- data/lib/moov/models/components/productcategories.rbi +13 -0
- data/lib/moov/models/components/productcategory.rb +48 -0
- data/lib/moov/models/components/productcategory.rbi +21 -0
- data/lib/moov/models/components/productrequest.rb +6 -2
- data/lib/moov/models/components/productrequest.rbi +2 -0
- data/lib/moov/models/components/pullfromcardoptions.rb +39 -0
- data/lib/moov/models/components/pullfromcardoptions.rbi +15 -0
- data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/pushtocardoptions.rb +32 -0
- data/lib/moov/models/components/pushtocardoptions.rbi +13 -0
- data/lib/moov/models/components/pushtocardtransferprocessingdetails.rb +44 -0
- data/lib/moov/models/components/pushtocardtransferprocessingdetails.rbi +19 -0
- data/lib/moov/models/components/refundprocessingdetails.rb +32 -0
- data/lib/moov/models/components/refundprocessingdetails.rbi +13 -0
- data/lib/moov/models/components/schedulewindow.rb +40 -0
- data/lib/moov/models/components/schedulewindow.rbi +17 -0
- data/lib/moov/models/components/schedulewindowerror.rb +40 -0
- data/lib/moov/models/components/schedulewindowerror.rbi +17 -0
- data/lib/moov/models/components/schemebasicauth.rb +36 -0
- data/lib/moov/models/components/schemebasicauth.rbi +15 -0
- data/lib/moov/models/components/schemeoauth2auth.rb +40 -0
- data/lib/moov/models/components/schemeoauth2auth.rbi +17 -0
- data/lib/moov/models/components/sendfunds.rb +6 -2
- data/lib/moov/models/components/sendfunds.rbi +2 -0
- data/lib/moov/models/components/sendfundserror.rb +6 -2
- data/lib/moov/models/components/sendfundserror.rbi +2 -0
- data/lib/moov/models/components/sendfundswire.rb +32 -0
- data/lib/moov/models/components/sendfundswire.rbi +13 -0
- data/lib/moov/models/components/sendfundswireerror.rb +32 -0
- data/lib/moov/models/components/sendfundswireerror.rbi +13 -0
- data/lib/moov/models/components/transfer.rb +22 -22
- data/lib/moov/models/components/transfer.rbi +8 -8
- data/lib/moov/models/components/transferauthorization.rb +52 -0
- data/lib/moov/models/components/transferauthorization.rbi +23 -0
- data/lib/moov/models/components/transferdestination.rb +5 -17
- data/lib/moov/models/components/transferdestination.rbi +0 -6
- data/lib/moov/models/components/transferfeepaidby.rb +32 -0
- data/lib/moov/models/components/transferfeepaidby.rbi +13 -0
- data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -0
- data/lib/moov/models/components/transferprocessingdetails.rb +52 -0
- data/lib/moov/models/components/transferprocessingdetails.rbi +23 -0
- data/lib/moov/models/components/transferrailoptions.rb +48 -0
- data/lib/moov/models/components/transferrailoptions.rbi +21 -0
- data/lib/moov/models/components/transfersource.rb +9 -17
- data/lib/moov/models/components/transfersource.rbi +2 -6
- data/lib/moov/models/components/transferstatus.rb +1 -0
- data/lib/moov/models/components/transfertype.rb +25 -0
- data/lib/moov/models/components/transfertype.rbi +11 -0
- data/lib/moov/models/components/updateissuedcard.rb +6 -2
- data/lib/moov/models/components/updateissuedcard.rbi +2 -0
- data/lib/moov/models/components/updateissuingcontrols.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrols.rbi +21 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_allowedschedule.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rb +44 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantcategoryrestrictions.rbi +19 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rb +36 -0
- data/lib/moov/models/components/updateissuingcontrols_merchantrestrictions.rbi +15 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rb +48 -0
- data/lib/moov/models/components/updateissuingcontrolserror.rbi +21 -0
- data/lib/moov/models/components/wallet.rb +1 -0
- data/lib/moov/models/components/wallettype.rb +2 -0
- data/lib/moov/models/components/webhookdatatransferstatus.rb +3 -0
- data/lib/moov/models/components.rb +55 -9
- data/lib/moov/models/errors/capturevalidationerror.rb +68 -0
- data/lib/moov/models/errors/capturevalidationerror.rbi +31 -0
- data/lib/moov/models/errors/cardacquiringrefund_error.rb +11 -7
- data/lib/moov/models/errors/cardacquiringrefund_error.rbi +4 -2
- data/lib/moov/models/errors/productrequestvalidationerror.rb +6 -2
- data/lib/moov/models/errors/productrequestvalidationerror.rbi +2 -0
- data/lib/moov/models/errors/transfer_error.rb +22 -22
- data/lib/moov/models/errors/transfer_error.rbi +8 -8
- data/lib/moov/models/errors/updateissuedcarderror.rb +6 -2
- data/lib/moov/models/errors/updateissuedcarderror.rbi +2 -0
- data/lib/moov/models/errors.rb +1 -0
- data/lib/moov/models/operations/createcancellation_request.rb +6 -2
- data/lib/moov/models/operations/createcancellation_request.rbi +2 -0
- data/lib/moov/models/operations/createcapture_request.rb +44 -0
- data/lib/moov/models/operations/createcapture_request.rbi +19 -0
- data/lib/moov/models/operations/createcapture_response.rb +48 -0
- data/lib/moov/models/operations/createcapture_response.rbi +21 -0
- data/lib/moov/models/operations/createreversal_request.rb +3 -3
- data/lib/moov/models/operations/deleteavatar_request.rb +32 -0
- data/lib/moov/models/operations/deleteavatar_request.rbi +13 -0
- data/lib/moov/models/operations/deleteavatar_response.rb +44 -0
- data/lib/moov/models/operations/deleteavatar_response.rbi +19 -0
- data/lib/moov/models/operations/deleteavatar_security.rb +36 -0
- data/lib/moov/models/operations/deleteavatar_security.rbi +15 -0
- data/lib/moov/models/operations/getcapture_request.rb +40 -0
- data/lib/moov/models/operations/getcapture_request.rbi +17 -0
- data/lib/moov/models/operations/getcapture_response.rb +48 -0
- data/lib/moov/models/operations/getcapture_response.rbi +21 -0
- data/lib/moov/models/operations/initiaterefund_request.rb +6 -6
- data/lib/moov/models/operations/initiaterefund_request.rbi +2 -2
- data/lib/moov/models/operations/listcaptures_request.rb +36 -0
- data/lib/moov/models/operations/listcaptures_request.rbi +15 -0
- data/lib/moov/models/operations/listcaptures_response.rb +48 -0
- data/lib/moov/models/operations/listcaptures_response.rbi +21 -0
- data/lib/moov/models/operations/listissuingmerchantcategories_response.rb +48 -0
- data/lib/moov/models/operations/listissuingmerchantcategories_response.rbi +21 -0
- data/lib/moov/models/operations/listproductcategories_response.rb +48 -0
- data/lib/moov/models/operations/listproductcategories_response.rbi +21 -0
- data/lib/moov/models/operations/listproducts_request.rb +8 -2
- data/lib/moov/models/operations/listproducts_request.rbi +2 -0
- data/lib/moov/models/operations/listtransfers_request.rb +14 -2
- data/lib/moov/models/operations/listtransfers_request.rbi +6 -0
- data/lib/moov/models/operations/uploadavatar_request.rb +36 -0
- data/lib/moov/models/operations/uploadavatar_request.rbi +15 -0
- data/lib/moov/models/operations/uploadavatar_response.rb +44 -0
- data/lib/moov/models/operations/uploadavatar_response.rbi +19 -0
- data/lib/moov/models/operations/uploadavatar_security.rb +36 -0
- data/lib/moov/models/operations/uploadavatar_security.rbi +15 -0
- data/lib/moov/models/operations.rb +14 -0
- data/lib/moov/products.rb +113 -8
- data/lib/moov/sdk_hooks/clientcredentials.rb +386 -0
- data/lib/moov/sdk_hooks/hooks.rb +6 -0
- data/lib/moov/sdk_hooks/oauth2scopes.rb +18 -0
- data/lib/moov/sdkconfiguration.rb +3 -3
- data/lib/moov/transfers.rb +434 -5
- data/lib/moov_ruby.rb +1 -1
- metadata +144 -20
- data/lib/moov/models/components/achtransactiondetails.rb +0 -92
- data/lib/moov/models/components/achtransactiondetails.rbi +0 -43
- data/lib/moov/models/components/achtransactionstatus.rb +0 -24
- data/lib/moov/models/components/cardacquiringdispute.rb +0 -40
- data/lib/moov/models/components/cardacquiringdispute.rbi +0 -17
- data/lib/moov/models/components/cardtransactiondetails.rb +0 -93
- data/lib/moov/models/components/cardtransactiondetails.rbi +0 -41
- data/lib/moov/models/components/cardtransactionstatus.rb +0 -24
- data/lib/moov/models/components/instantbanktransactiondetails.rb +0 -64
- data/lib/moov/models/components/instantbanktransactiondetails.rbi +0 -29
- data/lib/moov/models/components/instantbanktransactionstatus.rb +0 -21
- data/lib/moov/models/components/instantbanktransactionstatus.rbi +0 -11
- data/lib/moov/models/components/refundcarddetails.rb +0 -56
- data/lib/moov/models/components/refundcarddetails.rbi +0 -25
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class CreateCancellation
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
17
|
+
|
|
18
|
+
sig { params(amount: T.nilable(Models::Components::AmountDecimal)).void }
|
|
19
|
+
def initialize(amount: nil)
|
|
20
|
+
@amount = amount
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
|
+
def ==(other)
|
|
25
|
+
return false unless other.is_a? self.class
|
|
26
|
+
return false unless @amount == other.amount
|
|
27
|
+
true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::CreateCancellation
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreateCancellation
|
|
11
|
+
def amount(); end
|
|
12
|
+
def amount=(str_); end
|
|
13
|
+
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# Request to capture funds against an authorized transfer.
|
|
11
|
+
class CreateCapture
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Payment method of the merchant account to capture funds into. For card-acquiring transfers, this must be a moov-wallet payment method.
|
|
16
|
+
field :destination_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationPaymentMethodID'), required: true } }
|
|
17
|
+
# Amount to capture. If omitted, the remaining authorized amount is captured.
|
|
18
|
+
field :amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
19
|
+
# Indicates whether this is the final capture against the authorization. When `true`, any remaining authorized amount is voided.
|
|
20
|
+
field :is_final, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('isFinal') } }
|
|
21
|
+
# An optional description of the capture that is used on receipts and for your own internal use.
|
|
22
|
+
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
23
|
+
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
24
|
+
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
25
|
+
# Optional alias from a foreign/external system which can be used to reference this resource.
|
|
26
|
+
field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
|
|
27
|
+
# An optional collection of line items for a transfer.
|
|
28
|
+
# When line items are provided, their total plus tax must equal the transfer amount.
|
|
29
|
+
field :line_items, Crystalline::Nilable.new(Models::Components::CreateTransferLineItems), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
|
|
30
|
+
|
|
31
|
+
field :amount_details, Crystalline::Nilable.new(Models::Components::CreateTransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
32
|
+
# The facilitator fee amount applied to the capture.
|
|
33
|
+
field :facilitator_fee_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('facilitatorFeeAmount') } }
|
|
34
|
+
|
|
35
|
+
sig { params(destination_payment_method_id: ::String, amount: T.nilable(Models::Components::AmountDecimal), is_final: T.nilable(T::Boolean), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::CreateTransferLineItems), amount_details: T.nilable(Models::Components::CreateTransferAmountDetails), facilitator_fee_amount: T.nilable(Models::Components::AmountDecimal)).void }
|
|
36
|
+
def initialize(destination_payment_method_id:, amount: nil, is_final: nil, description: nil, metadata: nil, foreign_id: nil, line_items: nil, amount_details: nil, facilitator_fee_amount: nil)
|
|
37
|
+
@destination_payment_method_id = destination_payment_method_id
|
|
38
|
+
@amount = amount
|
|
39
|
+
@is_final = is_final
|
|
40
|
+
@description = description
|
|
41
|
+
@metadata = metadata
|
|
42
|
+
@foreign_id = foreign_id
|
|
43
|
+
@line_items = line_items
|
|
44
|
+
@amount_details = amount_details
|
|
45
|
+
@facilitator_fee_amount = facilitator_fee_amount
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
49
|
+
def ==(other)
|
|
50
|
+
return false unless other.is_a? self.class
|
|
51
|
+
return false unless @destination_payment_method_id == other.destination_payment_method_id
|
|
52
|
+
return false unless @amount == other.amount
|
|
53
|
+
return false unless @is_final == other.is_final
|
|
54
|
+
return false unless @description == other.description
|
|
55
|
+
return false unless @metadata == other.metadata
|
|
56
|
+
return false unless @foreign_id == other.foreign_id
|
|
57
|
+
return false unless @line_items == other.line_items
|
|
58
|
+
return false unless @amount_details == other.amount_details
|
|
59
|
+
return false unless @facilitator_fee_amount == other.facilitator_fee_amount
|
|
60
|
+
true
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::CreateCapture
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreateCapture
|
|
11
|
+
def destination_payment_method_id(); end
|
|
12
|
+
def destination_payment_method_id=(str_); end
|
|
13
|
+
def amount(); end
|
|
14
|
+
def amount=(str_); end
|
|
15
|
+
def is_final(); end
|
|
16
|
+
def is_final=(str_); end
|
|
17
|
+
def description(); end
|
|
18
|
+
def description=(str_); end
|
|
19
|
+
def metadata(); end
|
|
20
|
+
def metadata=(str_); end
|
|
21
|
+
def foreign_id(); end
|
|
22
|
+
def foreign_id=(str_); end
|
|
23
|
+
def line_items(); end
|
|
24
|
+
def line_items=(str_); end
|
|
25
|
+
def amount_details(); end
|
|
26
|
+
def amount_details=(str_); end
|
|
27
|
+
def facilitator_fee_amount(); end
|
|
28
|
+
def facilitator_fee_amount=(str_); end
|
|
29
|
+
end
|
|
@@ -14,9 +14,15 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
|
|
17
|
+
# The rail and direction used to move funds for a transfer.
|
|
18
|
+
field :transfer_type, Models::Components::TransferType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferType, false) } }
|
|
17
19
|
|
|
18
20
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
19
21
|
|
|
22
|
+
field :options, Models::Components::TransferRailOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options'), required: true } }
|
|
23
|
+
|
|
24
|
+
field :processing_details, Models::Components::TransferProcessingDetails, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('processingDetails'), required: true } }
|
|
25
|
+
|
|
20
26
|
field :source, Crystalline::Nilable.new(Models::Components::TransferSource), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('source') } }
|
|
21
27
|
|
|
22
28
|
field :destination, Crystalline::Nilable.new(Models::Components::TransferDestination), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destination') } }
|
|
@@ -27,7 +33,7 @@ module Moov
|
|
|
27
33
|
# Reason for a transfer's failure.
|
|
28
34
|
field :failure_reason, Crystalline::Nilable.new(Models::Components::TransferFailureReason), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureReason'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferFailureReason, true) } }
|
|
29
35
|
|
|
30
|
-
field :amount, Crystalline::Nilable.new(Models::Components::
|
|
36
|
+
field :amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
31
37
|
# An optional description of the transfer that is used on receipts and for your own internal use.
|
|
32
38
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
33
39
|
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
@@ -35,23 +41,15 @@ module Moov
|
|
|
35
41
|
# Total or markup fee.
|
|
36
42
|
field :facilitator_fee, Crystalline::Nilable.new(Models::Components::FacilitatorFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('facilitatorFee') } }
|
|
37
43
|
# Fees charged to your platform account for transfers.
|
|
38
|
-
field :moov_fee, Crystalline::Nilable.new(::
|
|
39
|
-
# Same as `moovFee`, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
|
|
40
|
-
field :moov_fee_decimal, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDecimal') } }
|
|
44
|
+
field :moov_fee, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFee') } }
|
|
41
45
|
# Processing and pass-through costs that add up to the moovFee.
|
|
42
46
|
field :moov_fee_details, Crystalline::Nilable.new(Models::Components::MoovFeeDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDetails') } }
|
|
43
47
|
|
|
44
48
|
field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('groupID') } }
|
|
45
49
|
|
|
46
|
-
field :
|
|
47
|
-
|
|
48
|
-
field :refunded_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
|
|
50
|
+
field :refunded_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
|
|
49
51
|
|
|
50
|
-
field :
|
|
51
|
-
|
|
52
|
-
field :disputed_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
|
|
53
|
-
|
|
54
|
-
field :disputes, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CardAcquiringDispute)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputes') } }
|
|
52
|
+
field :disputed_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
|
|
55
53
|
|
|
56
54
|
field :sweep_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sweepID') } }
|
|
57
55
|
|
|
@@ -68,10 +66,15 @@ module Moov
|
|
|
68
66
|
|
|
69
67
|
field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
70
68
|
|
|
71
|
-
|
|
72
|
-
|
|
69
|
+
field :authorization, Crystalline::Nilable.new(Models::Components::TransferAuthorization), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorization') } }
|
|
70
|
+
|
|
71
|
+
sig { params(transfer_id: ::String, transfer_type: Models::Components::TransferType, created_on: ::DateTime, options: Models::Components::TransferRailOptions, processing_details: Models::Components::TransferProcessingDetails, source: T.nilable(Models::Components::TransferSource), destination: T.nilable(Models::Components::TransferDestination), completed_on: T.nilable(::DateTime), status: T.nilable(Models::Components::TransferStatus), failure_reason: T.nilable(Models::Components::TransferFailureReason), amount: T.nilable(Models::Components::AmountDecimal), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(Models::Components::AmountDecimal), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), group_id: T.nilable(::String), refunded_amount: T.nilable(Models::Components::AmountDecimal), disputed_amount: T.nilable(Models::Components::AmountDecimal), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), amount_details: T.nilable(Models::Components::TransferAmountDetails), authorization: T.nilable(Models::Components::TransferAuthorization)).void }
|
|
72
|
+
def initialize(transfer_id:, transfer_type:, created_on:, options:, processing_details:, source: nil, destination: nil, completed_on: nil, status: nil, failure_reason: nil, amount: nil, description: nil, metadata: nil, facilitator_fee: nil, moov_fee: nil, moov_fee_details: nil, group_id: nil, refunded_amount: nil, disputed_amount: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, amount_details: nil, authorization: nil)
|
|
73
73
|
@transfer_id = transfer_id
|
|
74
|
+
@transfer_type = transfer_type
|
|
74
75
|
@created_on = created_on
|
|
76
|
+
@options = options
|
|
77
|
+
@processing_details = processing_details
|
|
75
78
|
@source = source
|
|
76
79
|
@destination = destination
|
|
77
80
|
@completed_on = completed_on
|
|
@@ -82,14 +85,10 @@ module Moov
|
|
|
82
85
|
@metadata = metadata
|
|
83
86
|
@facilitator_fee = facilitator_fee
|
|
84
87
|
@moov_fee = moov_fee
|
|
85
|
-
@moov_fee_decimal = moov_fee_decimal
|
|
86
88
|
@moov_fee_details = moov_fee_details
|
|
87
89
|
@group_id = group_id
|
|
88
|
-
@cancellations = cancellations
|
|
89
90
|
@refunded_amount = refunded_amount
|
|
90
|
-
@refunds = refunds
|
|
91
91
|
@disputed_amount = disputed_amount
|
|
92
|
-
@disputes = disputes
|
|
93
92
|
@sweep_id = sweep_id
|
|
94
93
|
@schedule_id = schedule_id
|
|
95
94
|
@occurrence_id = occurrence_id
|
|
@@ -97,13 +96,17 @@ module Moov
|
|
|
97
96
|
@foreign_id = foreign_id
|
|
98
97
|
@line_items = line_items
|
|
99
98
|
@amount_details = amount_details
|
|
99
|
+
@authorization = authorization
|
|
100
100
|
end
|
|
101
101
|
|
|
102
102
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
103
103
|
def ==(other)
|
|
104
104
|
return false unless other.is_a? self.class
|
|
105
105
|
return false unless @transfer_id == other.transfer_id
|
|
106
|
+
return false unless @transfer_type == other.transfer_type
|
|
106
107
|
return false unless @created_on == other.created_on
|
|
108
|
+
return false unless @options == other.options
|
|
109
|
+
return false unless @processing_details == other.processing_details
|
|
107
110
|
return false unless @source == other.source
|
|
108
111
|
return false unless @destination == other.destination
|
|
109
112
|
return false unless @completed_on == other.completed_on
|
|
@@ -114,14 +117,10 @@ module Moov
|
|
|
114
117
|
return false unless @metadata == other.metadata
|
|
115
118
|
return false unless @facilitator_fee == other.facilitator_fee
|
|
116
119
|
return false unless @moov_fee == other.moov_fee
|
|
117
|
-
return false unless @moov_fee_decimal == other.moov_fee_decimal
|
|
118
120
|
return false unless @moov_fee_details == other.moov_fee_details
|
|
119
121
|
return false unless @group_id == other.group_id
|
|
120
|
-
return false unless @cancellations == other.cancellations
|
|
121
122
|
return false unless @refunded_amount == other.refunded_amount
|
|
122
|
-
return false unless @refunds == other.refunds
|
|
123
123
|
return false unless @disputed_amount == other.disputed_amount
|
|
124
|
-
return false unless @disputes == other.disputes
|
|
125
124
|
return false unless @sweep_id == other.sweep_id
|
|
126
125
|
return false unless @schedule_id == other.schedule_id
|
|
127
126
|
return false unless @occurrence_id == other.occurrence_id
|
|
@@ -129,6 +128,7 @@ module Moov
|
|
|
129
128
|
return false unless @foreign_id == other.foreign_id
|
|
130
129
|
return false unless @line_items == other.line_items
|
|
131
130
|
return false unless @amount_details == other.amount_details
|
|
131
|
+
return false unless @authorization == other.authorization
|
|
132
132
|
true
|
|
133
133
|
end
|
|
134
134
|
end
|
|
@@ -10,8 +10,14 @@ end
|
|
|
10
10
|
class Moov::Models::Components::CreatedTransfer
|
|
11
11
|
def transfer_id(); end
|
|
12
12
|
def transfer_id=(str_); end
|
|
13
|
+
def transfer_type(); end
|
|
14
|
+
def transfer_type=(str_); end
|
|
13
15
|
def created_on(); end
|
|
14
16
|
def created_on=(str_); end
|
|
17
|
+
def options(); end
|
|
18
|
+
def options=(str_); end
|
|
19
|
+
def processing_details(); end
|
|
20
|
+
def processing_details=(str_); end
|
|
15
21
|
def source(); end
|
|
16
22
|
def source=(str_); end
|
|
17
23
|
def destination(); end
|
|
@@ -32,22 +38,14 @@ class Moov::Models::Components::CreatedTransfer
|
|
|
32
38
|
def facilitator_fee=(str_); end
|
|
33
39
|
def moov_fee(); end
|
|
34
40
|
def moov_fee=(str_); end
|
|
35
|
-
def moov_fee_decimal(); end
|
|
36
|
-
def moov_fee_decimal=(str_); end
|
|
37
41
|
def moov_fee_details(); end
|
|
38
42
|
def moov_fee_details=(str_); end
|
|
39
43
|
def group_id(); end
|
|
40
44
|
def group_id=(str_); end
|
|
41
|
-
def cancellations(); end
|
|
42
|
-
def cancellations=(str_); end
|
|
43
45
|
def refunded_amount(); end
|
|
44
46
|
def refunded_amount=(str_); end
|
|
45
|
-
def refunds(); end
|
|
46
|
-
def refunds=(str_); end
|
|
47
47
|
def disputed_amount(); end
|
|
48
48
|
def disputed_amount=(str_); end
|
|
49
|
-
def disputes(); end
|
|
50
|
-
def disputes=(str_); end
|
|
51
49
|
def sweep_id(); end
|
|
52
50
|
def sweep_id=(str_); end
|
|
53
51
|
def schedule_id(); end
|
|
@@ -62,4 +60,6 @@ class Moov::Models::Components::CreatedTransfer
|
|
|
62
60
|
def line_items=(str_); end
|
|
63
61
|
def amount_details(); end
|
|
64
62
|
def amount_details=(str_); end
|
|
63
|
+
def authorization(); end
|
|
64
|
+
def authorization=(str_); end
|
|
65
65
|
end
|
|
@@ -9,19 +9,22 @@ module Moov
|
|
|
9
9
|
module Components
|
|
10
10
|
# Specifies a partial amount to refund.
|
|
11
11
|
#
|
|
12
|
-
#
|
|
12
|
+
# Before v2026.10, this request body may be omitted. In v2026.10 and later, send an empty object to refund the full amount of the original transfer.
|
|
13
13
|
class CreateRefund
|
|
14
14
|
extend T::Sig
|
|
15
15
|
include Crystalline::MetadataFields
|
|
16
16
|
|
|
17
|
-
# Amount to refund in cents. If
|
|
18
|
-
field :amount, Crystalline::Nilable.new(::
|
|
17
|
+
# Amount to refund. Before v2026.10, specify the amount in integer cents. If omitted, the original transfer's full amount will be refunded.
|
|
18
|
+
field :amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
19
|
+
# ID of the capture to refund. Required for multi-capture card payment transfers.
|
|
20
|
+
field :capture_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('captureID') } }
|
|
19
21
|
# Breakdown of the refunded amount.
|
|
20
22
|
field :amount_details, Crystalline::Nilable.new(Models::Components::RefundAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
21
23
|
|
|
22
|
-
sig { params(amount: T.nilable(::
|
|
23
|
-
def initialize(amount: nil, amount_details: nil)
|
|
24
|
+
sig { params(amount: T.nilable(Models::Components::AmountDecimal), capture_id: T.nilable(::String), amount_details: T.nilable(Models::Components::RefundAmountDetails)).void }
|
|
25
|
+
def initialize(amount: nil, capture_id: nil, amount_details: nil)
|
|
24
26
|
@amount = amount
|
|
27
|
+
@capture_id = capture_id
|
|
25
28
|
@amount_details = amount_details
|
|
26
29
|
end
|
|
27
30
|
|
|
@@ -29,6 +32,7 @@ module Moov
|
|
|
29
32
|
def ==(other)
|
|
30
33
|
return false unless other.is_a? self.class
|
|
31
34
|
return false unless @amount == other.amount
|
|
35
|
+
return false unless @capture_id == other.capture_id
|
|
32
36
|
return false unless @amount_details == other.amount_details
|
|
33
37
|
true
|
|
34
38
|
end
|
|
@@ -12,12 +12,12 @@ module Moov
|
|
|
12
12
|
extend T::Sig
|
|
13
13
|
include Crystalline::MetadataFields
|
|
14
14
|
|
|
15
|
-
# Amount to reverse in cents. Partial amounts
|
|
16
|
-
field :amount, ::
|
|
15
|
+
# Amount to reverse. Before v2026.10, specify the amount in integer cents. Partial amounts automatically trigger a refund instead of a cancellation.
|
|
16
|
+
field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
17
17
|
# Breakdown of the reversed amount.
|
|
18
18
|
field :amount_details, Crystalline::Nilable.new(Models::Components::ReversalAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
19
19
|
|
|
20
|
-
sig { params(amount: ::
|
|
20
|
+
sig { params(amount: Models::Components::AmountDecimal, amount_details: T.nilable(Models::Components::ReversalAmountDetails)).void }
|
|
21
21
|
def initialize(amount:, amount_details: nil)
|
|
22
22
|
@amount = amount
|
|
23
23
|
@amount_details = amount_details
|
|
@@ -17,9 +17,9 @@ module Moov
|
|
|
17
17
|
# The final stage of a transfer and the ultimate recipient of the funds.
|
|
18
18
|
field :destination, Models::Components::CreateTransferDestination, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destination'), required: true } }
|
|
19
19
|
|
|
20
|
-
field :amount, Models::Components::
|
|
21
|
-
# Total or markup fee.
|
|
22
|
-
field :facilitator_fee, Crystalline::Nilable.new(Models::Components::
|
|
20
|
+
field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
21
|
+
# Total or markup fee to apply when creating a transfer.
|
|
22
|
+
field :facilitator_fee, Crystalline::Nilable.new(Models::Components::CreateTransferFacilitatorFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('facilitatorFee') } }
|
|
23
23
|
# An optional description of the transfer that is used on receipts and for your own internal use.
|
|
24
24
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
25
25
|
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
@@ -31,9 +31,11 @@ module Moov
|
|
|
31
31
|
field :line_items, Crystalline::Nilable.new(Models::Components::CreateTransferLineItems), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
|
|
32
32
|
|
|
33
33
|
field :amount_details, Crystalline::Nilable.new(Models::Components::CreateTransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
34
|
+
# Indicates which party bears fees for the transfer, keyed by fee type.
|
|
35
|
+
field :fee_paid_by, Crystalline::Nilable.new(Models::Components::TransferFeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy') } }
|
|
34
36
|
|
|
35
|
-
sig { params(source: Models::Components::CreateTransferSource, destination: Models::Components::CreateTransferDestination, amount: Models::Components::
|
|
36
|
-
def initialize(source:, destination:, amount:, facilitator_fee: nil, description: nil, metadata: nil, foreign_id: nil, line_items: nil, amount_details: nil)
|
|
37
|
+
sig { params(source: Models::Components::CreateTransferSource, destination: Models::Components::CreateTransferDestination, amount: Models::Components::AmountDecimal, facilitator_fee: T.nilable(Models::Components::CreateTransferFacilitatorFee), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::CreateTransferLineItems), amount_details: T.nilable(Models::Components::CreateTransferAmountDetails), fee_paid_by: T.nilable(Models::Components::TransferFeePaidBy)).void }
|
|
38
|
+
def initialize(source:, destination:, amount:, facilitator_fee: nil, description: nil, metadata: nil, foreign_id: nil, line_items: nil, amount_details: nil, fee_paid_by: nil)
|
|
37
39
|
@source = source
|
|
38
40
|
@destination = destination
|
|
39
41
|
@amount = amount
|
|
@@ -43,6 +45,7 @@ module Moov
|
|
|
43
45
|
@foreign_id = foreign_id
|
|
44
46
|
@line_items = line_items
|
|
45
47
|
@amount_details = amount_details
|
|
48
|
+
@fee_paid_by = fee_paid_by
|
|
46
49
|
end
|
|
47
50
|
|
|
48
51
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -57,6 +60,7 @@ module Moov
|
|
|
57
60
|
return false unless @foreign_id == other.foreign_id
|
|
58
61
|
return false unless @line_items == other.line_items
|
|
59
62
|
return false unless @amount_details == other.amount_details
|
|
63
|
+
return false unless @fee_paid_by == other.fee_paid_by
|
|
60
64
|
true
|
|
61
65
|
end
|
|
62
66
|
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# Total or markup fee to apply when creating a transfer.
|
|
11
|
+
class CreateTransferFacilitatorFee
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# Total facilitator fee. Only either `total` or `markup` can be set.
|
|
16
|
+
field :total, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('total') } }
|
|
17
|
+
# Markup facilitator fee. Only either `total` or `markup` can be set.
|
|
18
|
+
field :markup, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('markup') } }
|
|
19
|
+
|
|
20
|
+
sig { params(total: T.nilable(Models::Components::AmountDecimal), markup: T.nilable(Models::Components::AmountDecimal)).void }
|
|
21
|
+
def initialize(total: nil, markup: nil)
|
|
22
|
+
@total = total
|
|
23
|
+
@markup = markup
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @total == other.total
|
|
30
|
+
return false unless @markup == other.markup
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::CreateTransferFacilitatorFee
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreateTransferFacilitatorFee
|
|
11
|
+
def total(); end
|
|
12
|
+
def total=(str_); end
|
|
13
|
+
def markup(); end
|
|
14
|
+
def markup=(str_); end
|
|
15
|
+
end
|
|
@@ -17,9 +17,9 @@ module Moov
|
|
|
17
17
|
|
|
18
18
|
field :destination, Models::Components::SourceDestinationOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destination'), required: true } }
|
|
19
19
|
|
|
20
|
-
field :amount, Models::Components::
|
|
20
|
+
field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
21
21
|
|
|
22
|
-
sig { params(source: Models::Components::SourceDestinationOptions, destination: Models::Components::SourceDestinationOptions, amount: Models::Components::
|
|
22
|
+
sig { params(source: Models::Components::SourceDestinationOptions, destination: Models::Components::SourceDestinationOptions, amount: Models::Components::AmountDecimal).void }
|
|
23
23
|
def initialize(source:, destination:, amount:)
|
|
24
24
|
@source = source
|
|
25
25
|
@destination = destination
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
# FeePaidBy - Indicates which party to a money movement bears an incurred fee.
|
|
11
|
+
class FeePaidBy < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
SOURCE = new('source')
|
|
14
|
+
DESTINATION = new('destination')
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class Moov::Models::Components::
|
|
5
|
+
class Moov::Models::Components::FeePaidBy
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class Moov::Models::Components::
|
|
10
|
+
class Moov::Models::Components::FeePaidBy
|
|
11
11
|
end
|
|
@@ -45,10 +45,10 @@ module Moov
|
|
|
45
45
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
46
46
|
# Billing address associated with the card.
|
|
47
47
|
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
48
|
+
# Spend controls applied to an issued card, including velocity runtime state.
|
|
49
|
+
field :controls, Crystalline::Nilable.new(Models::Components::IssuedControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
48
50
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
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 }
|
|
51
|
+
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::IssuedControls)).void }
|
|
52
52
|
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:, updated_on:, pan:, cvv:, authorized_user_account_id: nil, nickname: nil, metadata: nil, billing_address: nil, controls: nil)
|
|
53
53
|
@issued_card_id = issued_card_id
|
|
54
54
|
@brand = brand
|
|
@@ -30,9 +30,11 @@ module Moov
|
|
|
30
30
|
field :fee_group, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feeGroup') } }
|
|
31
31
|
# Unique identifier for this residual payment calculation.
|
|
32
32
|
field :residual_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('residualID') } }
|
|
33
|
+
# Indicates which party to the money movement bore this fee.
|
|
34
|
+
field :fee_paid_by, Crystalline::Nilable.new(Models::Components::FeePaidBy), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('feePaidBy'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::FeePaidBy, true) } }
|
|
33
35
|
|
|
34
|
-
sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String), residual_id: T.nilable(::String)).void }
|
|
35
|
-
def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil, residual_id: nil)
|
|
36
|
+
sig { params(fee_id: T.nilable(::String), account_id: T.nilable(::String), wallet_id: T.nilable(::String), created_on: T.nilable(::DateTime), fee_name: T.nilable(::String), amount: T.nilable(Models::Components::AmountDecimal), generated_by: T.nilable(Models::Components::GeneratedBy), fee_group: T.nilable(::String), residual_id: T.nilable(::String), fee_paid_by: T.nilable(Models::Components::FeePaidBy)).void }
|
|
37
|
+
def initialize(fee_id: nil, account_id: nil, wallet_id: nil, created_on: nil, fee_name: nil, amount: nil, generated_by: nil, fee_group: nil, residual_id: nil, fee_paid_by: nil)
|
|
36
38
|
@fee_id = fee_id
|
|
37
39
|
@account_id = account_id
|
|
38
40
|
@wallet_id = wallet_id
|
|
@@ -42,6 +44,7 @@ module Moov
|
|
|
42
44
|
@generated_by = generated_by
|
|
43
45
|
@fee_group = fee_group
|
|
44
46
|
@residual_id = residual_id
|
|
47
|
+
@fee_paid_by = fee_paid_by
|
|
45
48
|
end
|
|
46
49
|
|
|
47
50
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -56,6 +59,7 @@ module Moov
|
|
|
56
59
|
return false unless @generated_by == other.generated_by
|
|
57
60
|
return false unless @fee_group == other.fee_group
|
|
58
61
|
return false unless @residual_id == other.residual_id
|
|
62
|
+
return false unless @fee_paid_by == other.fee_paid_by
|
|
59
63
|
true
|
|
60
64
|
end
|
|
61
65
|
end
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module Moov
|
|
8
|
+
module Models
|
|
9
|
+
module Components
|
|
10
|
+
|
|
11
|
+
class InstantBankCreditTransferProcessingDetails
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
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.enum_from_string(Models::Components::InstantBankNetwork, false) } }
|
|
17
|
+
|
|
18
|
+
field :network_response_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('networkResponseCode') } }
|
|
19
|
+
# Status codes for instant-bank failures.
|
|
20
|
+
field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::InstantBankFailureCode, true) } }
|
|
21
|
+
|
|
22
|
+
field :end_to_end_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('endToEndID') } }
|
|
23
|
+
|
|
24
|
+
sig { params(network: Models::Components::InstantBankNetwork, network_response_code: T.nilable(::String), failure_code: T.nilable(Models::Components::InstantBankFailureCode), end_to_end_id: T.nilable(::String)).void }
|
|
25
|
+
def initialize(network:, network_response_code: nil, failure_code: nil, end_to_end_id: nil)
|
|
26
|
+
@network = network
|
|
27
|
+
@network_response_code = network_response_code
|
|
28
|
+
@failure_code = failure_code
|
|
29
|
+
@end_to_end_id = end_to_end_id
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
33
|
+
def ==(other)
|
|
34
|
+
return false unless other.is_a? self.class
|
|
35
|
+
return false unless @network == other.network
|
|
36
|
+
return false unless @network_response_code == other.network_response_code
|
|
37
|
+
return false unless @failure_code == other.failure_code
|
|
38
|
+
return false unless @end_to_end_id == other.end_to_end_id
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|