moov_ruby 26.4.8 → 26.7.0.pre.dev.0
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/account_terminal_applications.rb +16 -16
- data/lib/moov/accounts.rb +54 -52
- data/lib/moov/adjustments.rb +8 -8
- data/lib/moov/apple_pay.rb +20 -20
- data/lib/moov/authentication.rb +8 -8
- data/lib/moov/avatars.rb +4 -4
- data/lib/moov/bank_accounts.rb +36 -36
- data/lib/moov/branding.rb +12 -12
- data/lib/moov/capabilities.rb +20 -20
- data/lib/moov/card_issuing.rb +25 -25
- data/lib/moov/cards.rb +178 -20
- data/lib/moov/disputes.rb +44 -44
- data/lib/moov/end_to_end_encryption.rb +8 -8
- data/lib/moov/enriched_address.rb +4 -4
- data/lib/moov/enriched_profile.rb +4 -4
- data/lib/moov/fee_plans.rb +40 -40
- data/lib/moov/files.rb +12 -12
- data/lib/moov/google_pay.rb +4 -4
- data/lib/moov/images.rb +28 -28
- data/lib/moov/industries.rb +4 -4
- data/lib/moov/institutions.rb +8 -8
- data/lib/moov/invoices.rb +28 -28
- data/lib/moov/issuing_transactions.rb +20 -20
- data/lib/moov/models/components/addcapabilities.rb +1 -5
- data/lib/moov/models/components/amountdecimalrange.rb +36 -0
- data/lib/moov/models/components/amountdecimalrange.rbi +15 -0
- data/lib/moov/models/components/amountdecimalrangeupdate.rb +36 -0
- data/lib/moov/models/components/amountdecimalrangeupdate.rbi +15 -0
- data/lib/moov/models/components/authorizeduser.rb +36 -0
- data/lib/moov/models/components/authorizeduser.rbi +15 -0
- data/lib/moov/models/components/capability.rb +1 -7
- data/lib/moov/models/components/capabilityid.rb +1 -7
- data/lib/moov/models/components/cardmetadata.rb +79 -0
- data/lib/moov/models/components/cardmetadata.rbi +35 -0
- data/lib/moov/models/components/cardmetadatarequest.rb +38 -0
- data/lib/moov/models/components/cardmetadatarequest.rbi +15 -0
- data/lib/moov/models/components/createaccount.rb +1 -5
- data/lib/moov/models/components/createauthorizeduser.rb +40 -0
- data/lib/moov/models/components/createauthorizeduser.rbi +17 -0
- data/lib/moov/models/components/createauthorizedusererror.rb +40 -0
- data/lib/moov/models/components/createauthorizedusererror.rbi +17 -0
- data/lib/moov/models/components/createauthorizeduserupdate.rb +40 -0
- data/lib/moov/models/components/createauthorizeduserupdate.rbi +17 -0
- data/lib/moov/models/components/createdtransfer.rb +2 -6
- data/lib/moov/models/components/createdtransfer.rbi +0 -2
- data/lib/moov/models/components/createpaymentlink.rb +15 -15
- data/lib/moov/models/components/createpaymentlink.rbi +4 -4
- data/lib/moov/models/components/createpaymentlinkamountdetails.rb +32 -0
- data/lib/moov/models/components/createpaymentlinkamountdetails.rbi +13 -0
- data/lib/moov/models/components/createpaymentlinkamountdetailsvalidationerror.rb +32 -0
- data/lib/moov/models/components/createpaymentlinkamountdetailsvalidationerror.rbi +13 -0
- data/lib/moov/models/components/createtransfer.rb +2 -6
- data/lib/moov/models/components/createtransfer.rbi +0 -2
- data/lib/moov/models/components/createtransferamountdetails.rb +6 -2
- data/lib/moov/models/components/createtransferamountdetails.rbi +2 -0
- data/lib/moov/models/components/createtransferamountdetailsvalidationerror.rb +6 -2
- data/lib/moov/models/components/createtransferamountdetailsvalidationerror.rbi +2 -0
- data/lib/moov/models/components/fullissuedcard.rb +10 -22
- data/lib/moov/models/components/fullissuedcard.rbi +4 -10
- data/lib/moov/models/components/invoice.rb +1 -1
- data/lib/moov/models/components/issuedcard.rb +10 -22
- data/lib/moov/models/components/issuedcard.rbi +4 -10
- data/lib/moov/models/components/onboardinginvite.rb +1 -1
- data/lib/moov/models/components/onboardinginviterequest.rb +1 -1
- data/lib/moov/models/components/paymentlink.rb +15 -15
- data/lib/moov/models/components/paymentlink.rbi +4 -4
- data/lib/moov/models/components/paymentlinkamountdetails.rb +32 -0
- data/lib/moov/models/components/paymentlinkamountdetails.rbi +13 -0
- data/lib/moov/models/components/paymentlinkpaymentdetails.rb +14 -2
- data/lib/moov/models/components/paymentlinkpaymentdetails.rbi +6 -0
- data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rb +19 -0
- data/lib/moov/models/components/paymentlinkpaymentdetails_amounttype.rbi +11 -0
- data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rb +14 -2
- data/lib/moov/models/components/paymentlinkpaymentdetailsupdate.rbi +6 -0
- data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rb +19 -0
- data/lib/moov/models/components/paymentlinkpaymentdetailsupdate_amounttype.rbi +11 -0
- data/lib/moov/models/components/requestcard.rb +17 -17
- data/lib/moov/models/components/requestcard.rbi +8 -8
- data/lib/moov/models/components/transfer.rb +2 -6
- data/lib/moov/models/components/transfer.rbi +0 -2
- data/lib/moov/models/components/transferamountdetails.rb +6 -2
- data/lib/moov/models/components/transferamountdetails.rbi +2 -0
- data/lib/moov/models/components/transferconfig.rb +2 -6
- data/lib/moov/models/components/transferconfig.rbi +0 -2
- data/lib/moov/models/components/transferdestination.rb +2 -8
- data/lib/moov/models/components/transferdestination.rbi +0 -2
- data/lib/moov/models/components/updateinvoice.rb +6 -6
- data/lib/moov/models/components/updateissuedcard.rb +9 -13
- data/lib/moov/models/components/updateissuedcard.rbi +4 -6
- data/lib/moov/models/components/updatepaymentlink.rb +6 -6
- data/lib/moov/models/components/updatepaymentlink.rbi +2 -2
- data/lib/moov/models/components/updatepaymentlinkamountdetails.rb +32 -0
- data/lib/moov/models/components/updatepaymentlinkamountdetails.rbi +13 -0
- data/lib/moov/models/components/updatepaymentlinkamountdetailsvalidationerror.rb +32 -0
- data/lib/moov/models/components/updatepaymentlinkamountdetailsvalidationerror.rbi +13 -0
- data/lib/moov/models/components/webhookdatabankaccountdeleted.rb +2 -6
- data/lib/moov/models/components/webhookdatabankaccountdeleted.rbi +0 -2
- data/lib/moov/models/components/webhookdatacapabilityrequested.rb +1 -7
- data/lib/moov/models/components/webhookdatacapabilityupdated.rb +1 -7
- data/lib/moov/models/components/webhookdatasweepcreated.rb +2 -6
- data/lib/moov/models/components/webhookdatasweepcreated.rbi +0 -2
- data/lib/moov/models/components/webhookdatasweepupdated.rb +2 -6
- data/lib/moov/models/components/webhookdatasweepupdated.rbi +0 -2
- data/lib/moov/models/components/webhookevent.rb +2 -2
- data/lib/moov/models/components/webhookeventtype.rb +0 -1
- data/lib/moov/models/components.rb +15 -6
- data/lib/moov/models/errors/cardmetadatarequesterror.rb +44 -0
- data/lib/moov/models/errors/cardmetadatarequesterror.rbi +19 -0
- data/lib/moov/models/errors/createpaymentlinkerror.rb +6 -6
- data/lib/moov/models/errors/createpaymentlinkerror.rbi +2 -2
- data/lib/moov/models/errors/requestcarderror.rb +14 -14
- data/lib/moov/models/errors/requestcarderror.rbi +8 -8
- data/lib/moov/models/errors/transfer_error.rb +2 -6
- data/lib/moov/models/errors/transfer_error.rbi +0 -2
- data/lib/moov/models/errors/transfervalidationerror.rb +2 -6
- data/lib/moov/models/errors/transfervalidationerror.rbi +0 -2
- data/lib/moov/models/errors/updateissuedcarderror.rb +8 -12
- data/lib/moov/models/errors/updateissuedcarderror.rbi +4 -6
- data/lib/moov/models/errors/updatepaymentlinkerror.rb +6 -6
- data/lib/moov/models/errors/updatepaymentlinkerror.rbi +2 -2
- data/lib/moov/models/errors.rb +1 -0
- data/lib/moov/models/operations/disablecapability_request.rb +1 -7
- data/lib/moov/models/operations/getcapability_request.rb +1 -7
- data/lib/moov/models/operations/{listcancellations_response.rb → getcardmetadata_response.rb} +6 -6
- data/lib/moov/models/operations/{listcancellations_response.rbi → getcardmetadata_response.rbi} +4 -4
- data/lib/moov/models/operations.rb +1 -2
- data/lib/moov/onboarding.rb +16 -16
- data/lib/moov/payment_links.rb +24 -24
- data/lib/moov/payment_methods.rb +8 -8
- data/lib/moov/ping.rb +4 -4
- data/lib/moov/products.rb +20 -20
- data/lib/moov/receipts.rb +8 -8
- data/lib/moov/representatives.rb +20 -20
- data/lib/moov/resolution_links.rb +16 -16
- data/lib/moov/scheduling.rb +24 -24
- data/lib/moov/sdkconfiguration.rb +4 -4
- data/lib/moov/statements.rb +8 -8
- data/lib/moov/support.rb +20 -20
- data/lib/moov/sweeps.rb +24 -24
- data/lib/moov/terminal_applications.rb +20 -20
- data/lib/moov/transfer_config.rb +12 -12
- data/lib/moov/transfers.rb +48 -171
- data/lib/moov/underwriting.rb +12 -12
- data/lib/moov/utils/retries.rb +1 -4
- data/lib/moov/wallet_transactions.rb +8 -8
- data/lib/moov/wallets.rb +16 -16
- data/lib/moov/webhooks.rb +32 -32
- metadata +38 -20
- data/lib/moov/models/components/billingaddress.rb +0 -52
- data/lib/moov/models/components/billingaddress.rbi +0 -23
- data/lib/moov/models/components/rtpfailurecode.rb +0 -27
- data/lib/moov/models/components/rtpfailurecode.rbi +0 -11
- data/lib/moov/models/components/rtptransactiondetails.rb +0 -58
- data/lib/moov/models/components/rtptransactiondetails.rbi +0 -25
- data/lib/moov/models/components/rtptransactionstatus.rb +0 -21
- data/lib/moov/models/components/rtptransactionstatus.rbi +0 -11
- data/lib/moov/models/components/transfercontrols.rb +0 -48
- data/lib/moov/models/components/transfercontrols.rbi +0 -21
- data/lib/moov/models/components/webhookdataauthorizationexpiring.rb +0 -44
- data/lib/moov/models/components/webhookdataauthorizationexpiring.rbi +0 -19
- data/lib/moov/models/operations/listcancellations_request.rb +0 -36
- data/lib/moov/models/operations/listcancellations_request.rbi +0 -15
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::CreateAuthorizedUserError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreateAuthorizedUserError
|
|
11
|
+
def first_name(); end
|
|
12
|
+
def first_name=(str_); end
|
|
13
|
+
def last_name(); end
|
|
14
|
+
def last_name=(str_); end
|
|
15
|
+
def birth_date(); end
|
|
16
|
+
def birth_date=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
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
|
+
# Fields for identifying an authorized individual.
|
|
11
|
+
class CreateAuthorizedUserUpdate
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :first_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('firstName') } }
|
|
17
|
+
|
|
18
|
+
field :last_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastName') } }
|
|
19
|
+
|
|
20
|
+
field :birth_date, Crystalline::Nilable.new(Models::Components::BirthDateUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('birthDate') } }
|
|
21
|
+
|
|
22
|
+
sig { params(first_name: T.nilable(::String), last_name: T.nilable(::String), birth_date: T.nilable(Models::Components::BirthDateUpdate)).void }
|
|
23
|
+
def initialize(first_name: nil, last_name: nil, birth_date: nil)
|
|
24
|
+
@first_name = first_name
|
|
25
|
+
@last_name = last_name
|
|
26
|
+
@birth_date = birth_date
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
30
|
+
def ==(other)
|
|
31
|
+
return false unless other.is_a? self.class
|
|
32
|
+
return false unless @first_name == other.first_name
|
|
33
|
+
return false unless @last_name == other.last_name
|
|
34
|
+
return false unless @birth_date == other.birth_date
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::CreateAuthorizedUserUpdate
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreateAuthorizedUserUpdate
|
|
11
|
+
def first_name(); end
|
|
12
|
+
def first_name=(str_); end
|
|
13
|
+
def last_name(); end
|
|
14
|
+
def last_name=(str_); end
|
|
15
|
+
def birth_date(); end
|
|
16
|
+
def birth_date=(str_); end
|
|
17
|
+
end
|
|
@@ -60,8 +60,6 @@ module Moov
|
|
|
60
60
|
field :occurrence_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('occurrenceID') } }
|
|
61
61
|
|
|
62
62
|
field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
|
|
63
|
-
# Optional sales tax amount.
|
|
64
|
-
field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
|
|
65
63
|
# Optional alias from a foreign/external system which can be used to reference this resource.
|
|
66
64
|
field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
|
|
67
65
|
# An optional collection of line items for a transfer.
|
|
@@ -70,8 +68,8 @@ module Moov
|
|
|
70
68
|
|
|
71
69
|
field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
72
70
|
|
|
73
|
-
sig { params(transfer_id: ::String, created_on: ::DateTime, 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::Amount), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(::Integer), moov_fee_decimal: T.nilable(::String), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), group_id: T.nilable(::String), cancellations: T.nilable(T::Array[Models::Components::Cancellation]), refunded_amount: T.nilable(Models::Components::Amount), refunds: T.nilable(T::Array[Models::Components::CardAcquiringRefund]), disputed_amount: T.nilable(Models::Components::Amount), disputes: T.nilable(T::Array[Models::Components::CardAcquiringDispute]), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String),
|
|
74
|
-
def initialize(transfer_id:, created_on:, 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_decimal: nil, moov_fee_details: nil, group_id: nil, cancellations: nil, refunded_amount: nil, refunds: nil, disputed_amount: nil, disputes: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil,
|
|
71
|
+
sig { params(transfer_id: ::String, created_on: ::DateTime, 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::Amount), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(::Integer), moov_fee_decimal: T.nilable(::String), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), group_id: T.nilable(::String), cancellations: T.nilable(T::Array[Models::Components::Cancellation]), refunded_amount: T.nilable(Models::Components::Amount), refunds: T.nilable(T::Array[Models::Components::CardAcquiringRefund]), disputed_amount: T.nilable(Models::Components::Amount), disputes: T.nilable(T::Array[Models::Components::CardAcquiringDispute]), 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)).void }
|
|
72
|
+
def initialize(transfer_id:, created_on:, 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_decimal: nil, moov_fee_details: nil, group_id: nil, cancellations: nil, refunded_amount: nil, refunds: nil, disputed_amount: nil, disputes: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, amount_details: nil)
|
|
75
73
|
@transfer_id = transfer_id
|
|
76
74
|
@created_on = created_on
|
|
77
75
|
@source = source
|
|
@@ -96,7 +94,6 @@ module Moov
|
|
|
96
94
|
@schedule_id = schedule_id
|
|
97
95
|
@occurrence_id = occurrence_id
|
|
98
96
|
@payment_link_code = payment_link_code
|
|
99
|
-
@sales_tax_amount = sales_tax_amount
|
|
100
97
|
@foreign_id = foreign_id
|
|
101
98
|
@line_items = line_items
|
|
102
99
|
@amount_details = amount_details
|
|
@@ -129,7 +126,6 @@ module Moov
|
|
|
129
126
|
return false unless @schedule_id == other.schedule_id
|
|
130
127
|
return false unless @occurrence_id == other.occurrence_id
|
|
131
128
|
return false unless @payment_link_code == other.payment_link_code
|
|
132
|
-
return false unless @sales_tax_amount == other.sales_tax_amount
|
|
133
129
|
return false unless @foreign_id == other.foreign_id
|
|
134
130
|
return false unless @line_items == other.line_items
|
|
135
131
|
return false unless @amount_details == other.amount_details
|
|
@@ -56,8 +56,6 @@ class Moov::Models::Components::CreatedTransfer
|
|
|
56
56
|
def occurrence_id=(str_); end
|
|
57
57
|
def payment_link_code(); end
|
|
58
58
|
def payment_link_code=(str_); end
|
|
59
|
-
def sales_tax_amount(); end
|
|
60
|
-
def sales_tax_amount=(str_); end
|
|
61
59
|
def foreign_id(); end
|
|
62
60
|
def foreign_id=(str_); end
|
|
63
61
|
def line_items(); end
|
|
@@ -9,7 +9,7 @@ module Moov
|
|
|
9
9
|
module Components
|
|
10
10
|
# Request to create a new payment link.
|
|
11
11
|
#
|
|
12
|
-
# A payment link must include
|
|
12
|
+
# A payment link must include either `payment` or `payout` details, but not both. For payout payment links,
|
|
13
13
|
# `maxUses` will automatically be set to 1, as these are intended for a one-time disbursement
|
|
14
14
|
# to a specific recipient.
|
|
15
15
|
#
|
|
@@ -21,17 +21,15 @@ module Moov
|
|
|
21
21
|
field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
|
|
22
22
|
# The merchant's preferred payment method ID. Must be a wallet payment method.
|
|
23
23
|
field :merchant_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantPaymentMethodID'), required: true } }
|
|
24
|
-
#
|
|
24
|
+
# Customizable display options for a payment link.
|
|
25
|
+
field :display, Models::Components::PaymentLinkDisplayOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('display'), required: true } }
|
|
26
|
+
# The fixed amount of the payment link.
|
|
25
27
|
#
|
|
26
28
|
# In API versions before `2026.07.00`, this was a required field.
|
|
27
29
|
#
|
|
28
|
-
# In API version `2026.07.00` and beyond, this field is required for `
|
|
29
|
-
#
|
|
30
|
-
field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount')
|
|
31
|
-
# Customizable display options for a payment link.
|
|
32
|
-
field :display, Models::Components::PaymentLinkDisplayOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('display'), required: true } }
|
|
33
|
-
# Optional sales tax amount.
|
|
34
|
-
field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
|
|
30
|
+
# In API version `2026.07.00` and beyond, this field is required for `fixed` payment amount types and omitted
|
|
31
|
+
# for `open` payment amount types.
|
|
32
|
+
field :amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
|
|
35
33
|
# An optional limit on the number of times this payment link can be used.
|
|
36
34
|
#
|
|
37
35
|
# **For payouts, `maxUses` is always 1.**
|
|
@@ -48,19 +46,21 @@ module Moov
|
|
|
48
46
|
# When line items are provided, their total plus tax must equal the payment link amount.
|
|
49
47
|
field :line_items, Crystalline::Nilable.new(Models::Components::CreatePaymentLinkLineItems), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lineItems') } }
|
|
50
48
|
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
field :amount_details, Crystalline::Nilable.new(Models::Components::CreatePaymentLinkAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
50
|
+
|
|
51
|
+
sig { params(partner_account_id: ::String, merchant_payment_method_id: ::String, display: Models::Components::PaymentLinkDisplayOptions, amount: T.nilable(Models::Components::Amount), max_uses: T.nilable(::Integer), expires_on: T.nilable(::DateTime), customer: T.nilable(Models::Components::PaymentLinkCustomerOptions), payment: T.nilable(Models::Components::PaymentLinkPaymentDetails), payout: T.nilable(Models::Components::PaymentLinkPayoutDetails), line_items: T.nilable(Models::Components::CreatePaymentLinkLineItems), amount_details: T.nilable(Models::Components::CreatePaymentLinkAmountDetails)).void }
|
|
52
|
+
def initialize(partner_account_id:, merchant_payment_method_id:, display:, amount: nil, max_uses: nil, expires_on: nil, customer: nil, payment: nil, payout: nil, line_items: nil, amount_details: nil)
|
|
53
53
|
@partner_account_id = partner_account_id
|
|
54
54
|
@merchant_payment_method_id = merchant_payment_method_id
|
|
55
|
-
@amount = amount
|
|
56
55
|
@display = display
|
|
57
|
-
@
|
|
56
|
+
@amount = amount
|
|
58
57
|
@max_uses = max_uses
|
|
59
58
|
@expires_on = expires_on
|
|
60
59
|
@customer = customer
|
|
61
60
|
@payment = payment
|
|
62
61
|
@payout = payout
|
|
63
62
|
@line_items = line_items
|
|
63
|
+
@amount_details = amount_details
|
|
64
64
|
end
|
|
65
65
|
|
|
66
66
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -68,15 +68,15 @@ module Moov
|
|
|
68
68
|
return false unless other.is_a? self.class
|
|
69
69
|
return false unless @partner_account_id == other.partner_account_id
|
|
70
70
|
return false unless @merchant_payment_method_id == other.merchant_payment_method_id
|
|
71
|
-
return false unless @amount == other.amount
|
|
72
71
|
return false unless @display == other.display
|
|
73
|
-
return false unless @
|
|
72
|
+
return false unless @amount == other.amount
|
|
74
73
|
return false unless @max_uses == other.max_uses
|
|
75
74
|
return false unless @expires_on == other.expires_on
|
|
76
75
|
return false unless @customer == other.customer
|
|
77
76
|
return false unless @payment == other.payment
|
|
78
77
|
return false unless @payout == other.payout
|
|
79
78
|
return false unless @line_items == other.line_items
|
|
79
|
+
return false unless @amount_details == other.amount_details
|
|
80
80
|
true
|
|
81
81
|
end
|
|
82
82
|
end
|
|
@@ -12,12 +12,10 @@ class Moov::Models::Components::CreatePaymentLink
|
|
|
12
12
|
def partner_account_id=(str_); end
|
|
13
13
|
def merchant_payment_method_id(); end
|
|
14
14
|
def merchant_payment_method_id=(str_); end
|
|
15
|
-
def amount(); end
|
|
16
|
-
def amount=(str_); end
|
|
17
15
|
def display(); end
|
|
18
16
|
def display=(str_); end
|
|
19
|
-
def
|
|
20
|
-
def
|
|
17
|
+
def amount(); end
|
|
18
|
+
def amount=(str_); end
|
|
21
19
|
def max_uses(); end
|
|
22
20
|
def max_uses=(str_); end
|
|
23
21
|
def expires_on(); end
|
|
@@ -30,4 +28,6 @@ class Moov::Models::Components::CreatePaymentLink
|
|
|
30
28
|
def payout=(str_); end
|
|
31
29
|
def line_items(); end
|
|
32
30
|
def line_items=(str_); end
|
|
31
|
+
def amount_details(); end
|
|
32
|
+
def amount_details=(str_); end
|
|
33
33
|
end
|
|
@@ -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 CreatePaymentLinkAmountDetails
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The amount of tax applied to the payment link.
|
|
16
|
+
field :tax, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tax') } }
|
|
17
|
+
|
|
18
|
+
sig { params(tax: T.nilable(Models::Components::AmountDecimal)).void }
|
|
19
|
+
def initialize(tax: nil)
|
|
20
|
+
@tax = tax
|
|
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 @tax == other.tax
|
|
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::CreatePaymentLinkAmountDetails
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreatePaymentLinkAmountDetails
|
|
11
|
+
def tax(); end
|
|
12
|
+
def tax=(str_); end
|
|
13
|
+
end
|
|
@@ -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 CreatePaymentLinkAmountDetailsValidationError
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :tax, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tax') } }
|
|
17
|
+
|
|
18
|
+
sig { params(tax: T.nilable(::String)).void }
|
|
19
|
+
def initialize(tax: nil)
|
|
20
|
+
@tax = tax
|
|
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 @tax == other.tax
|
|
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::CreatePaymentLinkAmountDetailsValidationError
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::CreatePaymentLinkAmountDetailsValidationError
|
|
11
|
+
def tax(); end
|
|
12
|
+
def tax=(str_); end
|
|
13
|
+
end
|
|
@@ -24,8 +24,6 @@ module Moov
|
|
|
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.
|
|
26
26
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
27
|
-
|
|
28
|
-
field :sales_tax_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('salesTaxAmount') } }
|
|
29
27
|
# Optional alias from a foreign/external system which can be used to reference this resource.
|
|
30
28
|
field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
|
|
31
29
|
# An optional collection of line items for a transfer.
|
|
@@ -34,15 +32,14 @@ module Moov
|
|
|
34
32
|
|
|
35
33
|
field :amount_details, Crystalline::Nilable.new(Models::Components::CreateTransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
|
|
36
34
|
|
|
37
|
-
sig { params(source: Models::Components::CreateTransferSource, destination: Models::Components::CreateTransferDestination, amount: Models::Components::Amount, facilitator_fee: T.nilable(Models::Components::FacilitatorFee), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]),
|
|
38
|
-
def initialize(source:, destination:, amount:, facilitator_fee: nil, description: nil, metadata: nil,
|
|
35
|
+
sig { params(source: Models::Components::CreateTransferSource, destination: Models::Components::CreateTransferDestination, amount: Models::Components::Amount, facilitator_fee: T.nilable(Models::Components::FacilitatorFee), 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)).void }
|
|
36
|
+
def initialize(source:, destination:, amount:, facilitator_fee: nil, description: nil, metadata: nil, foreign_id: nil, line_items: nil, amount_details: nil)
|
|
39
37
|
@source = source
|
|
40
38
|
@destination = destination
|
|
41
39
|
@amount = amount
|
|
42
40
|
@facilitator_fee = facilitator_fee
|
|
43
41
|
@description = description
|
|
44
42
|
@metadata = metadata
|
|
45
|
-
@sales_tax_amount = sales_tax_amount
|
|
46
43
|
@foreign_id = foreign_id
|
|
47
44
|
@line_items = line_items
|
|
48
45
|
@amount_details = amount_details
|
|
@@ -57,7 +54,6 @@ module Moov
|
|
|
57
54
|
return false unless @facilitator_fee == other.facilitator_fee
|
|
58
55
|
return false unless @description == other.description
|
|
59
56
|
return false unless @metadata == other.metadata
|
|
60
|
-
return false unless @sales_tax_amount == other.sales_tax_amount
|
|
61
57
|
return false unless @foreign_id == other.foreign_id
|
|
62
58
|
return false unless @line_items == other.line_items
|
|
63
59
|
return false unless @amount_details == other.amount_details
|
|
@@ -20,8 +20,6 @@ class Moov::Models::Components::CreateTransfer
|
|
|
20
20
|
def description=(str_); end
|
|
21
21
|
def metadata(); end
|
|
22
22
|
def metadata=(str_); end
|
|
23
|
-
def sales_tax_amount(); end
|
|
24
|
-
def sales_tax_amount=(str_); end
|
|
25
23
|
def foreign_id(); end
|
|
26
24
|
def foreign_id=(str_); end
|
|
27
25
|
def line_items(); end
|
|
@@ -14,16 +14,20 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
# The amount of tip applied to the transfer.
|
|
16
16
|
field :tip, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tip') } }
|
|
17
|
+
# The amount of tax applied to the transfer.
|
|
18
|
+
field :tax, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tax') } }
|
|
17
19
|
|
|
18
|
-
sig { params(tip: T.nilable(Models::Components::AmountDecimal)).void }
|
|
19
|
-
def initialize(tip: nil)
|
|
20
|
+
sig { params(tip: T.nilable(Models::Components::AmountDecimal), tax: T.nilable(Models::Components::AmountDecimal)).void }
|
|
21
|
+
def initialize(tip: nil, tax: nil)
|
|
20
22
|
@tip = tip
|
|
23
|
+
@tax = tax
|
|
21
24
|
end
|
|
22
25
|
|
|
23
26
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
27
|
def ==(other)
|
|
25
28
|
return false unless other.is_a? self.class
|
|
26
29
|
return false unless @tip == other.tip
|
|
30
|
+
return false unless @tax == other.tax
|
|
27
31
|
true
|
|
28
32
|
end
|
|
29
33
|
end
|
|
@@ -15,15 +15,19 @@ module Moov
|
|
|
15
15
|
|
|
16
16
|
field :tip, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tip') } }
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
field :tax, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('tax') } }
|
|
19
|
+
|
|
20
|
+
sig { params(tip: T.nilable(::String), tax: T.nilable(::String)).void }
|
|
21
|
+
def initialize(tip: nil, tax: nil)
|
|
20
22
|
@tip = tip
|
|
23
|
+
@tax = tax
|
|
21
24
|
end
|
|
22
25
|
|
|
23
26
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
24
27
|
def ==(other)
|
|
25
28
|
return false unless other.is_a? self.class
|
|
26
29
|
return false unless @tip == other.tip
|
|
30
|
+
return false unless @tax == other.tax
|
|
27
31
|
true
|
|
28
32
|
end
|
|
29
33
|
end
|
|
@@ -20,6 +20,8 @@ module Moov
|
|
|
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.
|
|
22
22
|
field :expiration, Models::Components::CardExpiration, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration'), required: true } }
|
|
23
|
+
# Fields for identifying an authorized individual.
|
|
24
|
+
field :authorized_user, Models::Components::AuthorizedUser, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUser'), required: true } }
|
|
23
25
|
# Unique identifier for the wallet funding the card.
|
|
24
26
|
field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
|
|
25
27
|
# The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
@@ -33,40 +35,29 @@ module Moov
|
|
|
33
35
|
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) } }
|
|
34
36
|
|
|
35
37
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
36
|
-
|
|
37
|
-
field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
38
38
|
# The issued card's Primary Account Number (PAN)
|
|
39
39
|
field :pan, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pan'), required: true } }
|
|
40
40
|
# The issued card's 3- or 4-digit Card Verification Value (CVV).
|
|
41
41
|
field :cvv, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cvv'), required: true } }
|
|
42
|
-
#
|
|
43
|
-
field :
|
|
44
|
-
# An optional descriptive name for the card.
|
|
45
|
-
field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
|
|
46
|
-
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
47
|
-
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
48
|
-
# Billing address associated with the card.
|
|
49
|
-
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
42
|
+
# Optional descriptor for the card.
|
|
43
|
+
field :memo, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('memo') } }
|
|
50
44
|
|
|
51
45
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
52
46
|
|
|
53
|
-
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,
|
|
54
|
-
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:,
|
|
47
|
+
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, authorized_user: Models::Components::AuthorizedUser, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, pan: ::String, cvv: ::String, memo: T.nilable(::String), controls: T.nilable(Models::Components::IssuingControls)).void }
|
|
48
|
+
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, authorized_user:, funding_wallet_id:, state:, form_factor:, created_on:, pan:, cvv:, memo: nil, controls: nil)
|
|
55
49
|
@issued_card_id = issued_card_id
|
|
56
50
|
@brand = brand
|
|
57
51
|
@last_four_card_number = last_four_card_number
|
|
58
52
|
@expiration = expiration
|
|
53
|
+
@authorized_user = authorized_user
|
|
59
54
|
@funding_wallet_id = funding_wallet_id
|
|
60
55
|
@state = state
|
|
61
56
|
@form_factor = form_factor
|
|
62
57
|
@created_on = created_on
|
|
63
|
-
@updated_on = updated_on
|
|
64
58
|
@pan = pan
|
|
65
59
|
@cvv = cvv
|
|
66
|
-
@
|
|
67
|
-
@nickname = nickname
|
|
68
|
-
@metadata = metadata
|
|
69
|
-
@billing_address = billing_address
|
|
60
|
+
@memo = memo
|
|
70
61
|
@controls = controls
|
|
71
62
|
end
|
|
72
63
|
|
|
@@ -77,17 +68,14 @@ module Moov
|
|
|
77
68
|
return false unless @brand == other.brand
|
|
78
69
|
return false unless @last_four_card_number == other.last_four_card_number
|
|
79
70
|
return false unless @expiration == other.expiration
|
|
71
|
+
return false unless @authorized_user == other.authorized_user
|
|
80
72
|
return false unless @funding_wallet_id == other.funding_wallet_id
|
|
81
73
|
return false unless @state == other.state
|
|
82
74
|
return false unless @form_factor == other.form_factor
|
|
83
75
|
return false unless @created_on == other.created_on
|
|
84
|
-
return false unless @updated_on == other.updated_on
|
|
85
76
|
return false unless @pan == other.pan
|
|
86
77
|
return false unless @cvv == other.cvv
|
|
87
|
-
return false unless @
|
|
88
|
-
return false unless @nickname == other.nickname
|
|
89
|
-
return false unless @metadata == other.metadata
|
|
90
|
-
return false unless @billing_address == other.billing_address
|
|
78
|
+
return false unless @memo == other.memo
|
|
91
79
|
return false unless @controls == other.controls
|
|
92
80
|
true
|
|
93
81
|
end
|
|
@@ -16,6 +16,8 @@ class Moov::Models::Components::FullIssuedCard
|
|
|
16
16
|
def last_four_card_number=(str_); end
|
|
17
17
|
def expiration(); end
|
|
18
18
|
def expiration=(str_); end
|
|
19
|
+
def authorized_user(); end
|
|
20
|
+
def authorized_user=(str_); end
|
|
19
21
|
def funding_wallet_id(); end
|
|
20
22
|
def funding_wallet_id=(str_); end
|
|
21
23
|
def state(); end
|
|
@@ -24,20 +26,12 @@ class Moov::Models::Components::FullIssuedCard
|
|
|
24
26
|
def form_factor=(str_); end
|
|
25
27
|
def created_on(); end
|
|
26
28
|
def created_on=(str_); end
|
|
27
|
-
def updated_on(); end
|
|
28
|
-
def updated_on=(str_); end
|
|
29
29
|
def pan(); end
|
|
30
30
|
def pan=(str_); end
|
|
31
31
|
def cvv(); end
|
|
32
32
|
def cvv=(str_); end
|
|
33
|
-
def
|
|
34
|
-
def
|
|
35
|
-
def nickname(); end
|
|
36
|
-
def nickname=(str_); end
|
|
37
|
-
def metadata(); end
|
|
38
|
-
def metadata=(str_); end
|
|
39
|
-
def billing_address(); end
|
|
40
|
-
def billing_address=(str_); end
|
|
33
|
+
def memo(); end
|
|
34
|
+
def memo=(str_); end
|
|
41
35
|
def controls(); end
|
|
42
36
|
def controls=(str_); end
|
|
43
37
|
end
|
|
@@ -32,7 +32,7 @@ module Moov
|
|
|
32
32
|
field :subtotal_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('subtotalAmount'), required: true } }
|
|
33
33
|
|
|
34
34
|
field :tax_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('taxAmount'), required: true } }
|
|
35
|
-
# Total amount of the invoice,
|
|
35
|
+
# Total amount of the invoice, sum of subTotalAmount and taxAmount
|
|
36
36
|
field :total_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('totalAmount'), required: true } }
|
|
37
37
|
# Total amount of pending transfers paid towards the invoice
|
|
38
38
|
field :pending_amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pendingAmount'), required: true } }
|
|
@@ -20,6 +20,8 @@ module Moov
|
|
|
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.
|
|
22
22
|
field :expiration, Models::Components::CardExpiration, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration'), required: true } }
|
|
23
|
+
# Fields for identifying an authorized individual.
|
|
24
|
+
field :authorized_user, Models::Components::AuthorizedUser, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUser'), required: true } }
|
|
23
25
|
# Unique identifier for the wallet funding the card.
|
|
24
26
|
field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
|
|
25
27
|
# The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
@@ -33,34 +35,23 @@ module Moov
|
|
|
33
35
|
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) } }
|
|
34
36
|
|
|
35
37
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
36
|
-
|
|
37
|
-
field :
|
|
38
|
-
# Identifier for the account of the card's authorized user.
|
|
39
|
-
field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUserAccountID') } }
|
|
40
|
-
# An optional descriptive name for the card.
|
|
41
|
-
field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
|
|
42
|
-
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
43
|
-
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
44
|
-
# Billing address associated with the card.
|
|
45
|
-
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
38
|
+
# Optional descriptor for the card.
|
|
39
|
+
field :memo, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('memo') } }
|
|
46
40
|
|
|
47
41
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
48
42
|
|
|
49
|
-
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,
|
|
50
|
-
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:,
|
|
43
|
+
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, authorized_user: Models::Components::AuthorizedUser, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, memo: T.nilable(::String), controls: T.nilable(Models::Components::IssuingControls)).void }
|
|
44
|
+
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, authorized_user:, funding_wallet_id:, state:, form_factor:, created_on:, memo: nil, controls: nil)
|
|
51
45
|
@issued_card_id = issued_card_id
|
|
52
46
|
@brand = brand
|
|
53
47
|
@last_four_card_number = last_four_card_number
|
|
54
48
|
@expiration = expiration
|
|
49
|
+
@authorized_user = authorized_user
|
|
55
50
|
@funding_wallet_id = funding_wallet_id
|
|
56
51
|
@state = state
|
|
57
52
|
@form_factor = form_factor
|
|
58
53
|
@created_on = created_on
|
|
59
|
-
@
|
|
60
|
-
@authorized_user_account_id = authorized_user_account_id
|
|
61
|
-
@nickname = nickname
|
|
62
|
-
@metadata = metadata
|
|
63
|
-
@billing_address = billing_address
|
|
54
|
+
@memo = memo
|
|
64
55
|
@controls = controls
|
|
65
56
|
end
|
|
66
57
|
|
|
@@ -71,15 +62,12 @@ module Moov
|
|
|
71
62
|
return false unless @brand == other.brand
|
|
72
63
|
return false unless @last_four_card_number == other.last_four_card_number
|
|
73
64
|
return false unless @expiration == other.expiration
|
|
65
|
+
return false unless @authorized_user == other.authorized_user
|
|
74
66
|
return false unless @funding_wallet_id == other.funding_wallet_id
|
|
75
67
|
return false unless @state == other.state
|
|
76
68
|
return false unless @form_factor == other.form_factor
|
|
77
69
|
return false unless @created_on == other.created_on
|
|
78
|
-
return false unless @
|
|
79
|
-
return false unless @authorized_user_account_id == other.authorized_user_account_id
|
|
80
|
-
return false unless @nickname == other.nickname
|
|
81
|
-
return false unless @metadata == other.metadata
|
|
82
|
-
return false unless @billing_address == other.billing_address
|
|
70
|
+
return false unless @memo == other.memo
|
|
83
71
|
return false unless @controls == other.controls
|
|
84
72
|
true
|
|
85
73
|
end
|