moov_ruby 26.4.7 → 26.4.9
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 +52 -54
- 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 +37 -37
- 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 +20 -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 +5 -1
- data/lib/moov/models/components/billingaddress.rb +52 -0
- data/lib/moov/models/components/billingaddress.rbi +23 -0
- data/lib/moov/models/components/capability.rb +7 -1
- data/lib/moov/models/components/capabilityid.rb +8 -1
- data/lib/moov/models/components/cardtransactiondetails.rb +10 -2
- data/lib/moov/models/components/cardtransactiondetails.rbi +4 -0
- data/lib/moov/models/components/cardtransactionstatus.rb +1 -0
- data/lib/moov/models/components/createaccount.rb +5 -1
- data/lib/moov/models/components/createpaymentlink.rb +4 -4
- data/lib/moov/models/components/createtransferdestinationcard.rb +6 -2
- data/lib/moov/models/components/createtransferdestinationcard.rbi +2 -0
- data/lib/moov/models/components/fullissuedcard.rb +23 -13
- data/lib/moov/models/components/fullissuedcard.rbi +10 -4
- data/lib/moov/models/components/invoice.rb +6 -2
- data/lib/moov/models/components/invoice.rbi +2 -0
- data/lib/moov/models/components/issuedcard.rb +23 -13
- data/lib/moov/models/components/issuedcard.rbi +10 -4
- data/lib/moov/models/components/issuedcardstate.rb +1 -5
- data/lib/moov/models/components/manualtermsofservice.rb +1 -1
- data/lib/moov/models/components/manualtermsofserviceupdate.rb +1 -1
- data/lib/moov/models/components/onboardinginvite.rb +1 -1
- data/lib/moov/models/components/onboardinginviterequest.rb +1 -1
- data/lib/moov/models/components/patchtransfer.rb +1 -1
- data/lib/moov/models/components/paymentlink.rb +3 -3
- data/lib/moov/models/components/paymentlinkpayoutdetails.rb +9 -2
- data/lib/moov/models/components/paymentlinkpayoutdetails.rbi +2 -0
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rb +9 -2
- data/lib/moov/models/components/paymentlinkpayoutdetailsupdate.rbi +2 -0
- data/lib/moov/models/components/payoutdetailserror.rb +6 -2
- data/lib/moov/models/components/payoutdetailserror.rbi +2 -0
- data/lib/moov/models/components/pushdeliveryspeed.rb +19 -0
- data/lib/moov/models/components/pushdeliveryspeed.rbi +11 -0
- data/lib/moov/models/components/pushoptions.rb +38 -0
- data/lib/moov/models/components/pushoptions.rbi +15 -0
- data/lib/moov/models/components/pushoptionserror.rb +36 -0
- data/lib/moov/models/components/pushoptionserror.rbi +15 -0
- data/lib/moov/models/components/pushoptionsupdate.rb +38 -0
- data/lib/moov/models/components/pushoptionsupdate.rbi +15 -0
- data/lib/moov/models/components/requestcard.rb +17 -17
- data/lib/moov/models/components/requestcard.rbi +8 -8
- data/lib/moov/models/components/termsofservice.rb +1 -1
- data/lib/moov/models/components/updateissuedcard.rb +13 -9
- data/lib/moov/models/components/updateissuedcard.rbi +6 -4
- data/lib/moov/models/components/webhookdataauthorizationexpiring.rb +44 -0
- data/lib/moov/models/components/webhookdataauthorizationexpiring.rbi +19 -0
- data/lib/moov/models/components/webhookdatacapabilityrequested.rb +7 -1
- data/lib/moov/models/components/webhookdatacapabilityupdated.rb +7 -1
- data/lib/moov/models/components/webhookdatasweepcreated.rb +6 -2
- data/lib/moov/models/components/webhookdatasweepcreated.rbi +2 -0
- data/lib/moov/models/components/webhookdatasweepupdated.rb +6 -2
- data/lib/moov/models/components/webhookdatasweepupdated.rbi +2 -0
- data/lib/moov/models/components/webhookevent.rb +2 -2
- data/lib/moov/models/components/webhookeventtype.rb +1 -0
- data/lib/moov/models/components.rb +6 -4
- data/lib/moov/models/errors/requestcarderror.rb +14 -14
- data/lib/moov/models/errors/requestcarderror.rbi +8 -8
- data/lib/moov/models/errors/updateissuedcarderror.rb +12 -8
- data/lib/moov/models/errors/updateissuedcarderror.rbi +6 -4
- data/lib/moov/models/operations/disablecapability_request.rb +7 -1
- data/lib/moov/models/operations/getcapability_request.rb +7 -1
- data/lib/moov/models/operations/linkbankaccount_request.rb +1 -1
- data/lib/moov/models/operations/listcancellations_request.rb +36 -0
- data/lib/moov/models/operations/listcancellations_request.rbi +15 -0
- data/lib/moov/models/operations/listcancellations_response.rb +48 -0
- data/lib/moov/models/operations/listcancellations_response.rbi +21 -0
- data/lib/moov/models/operations/listissuedcards_request.rb +1 -1
- data/lib/moov/models/operations.rb +2 -0
- 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 +3 -3
- 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 +171 -48
- data/lib/moov/underwriting.rb +12 -12
- data/lib/moov/utils/retries.rb +4 -1
- data/lib/moov/wallet_transactions.rb +8 -8
- data/lib/moov/wallets.rb +16 -16
- data/lib/moov/webhooks.rb +32 -32
- metadata +20 -12
- data/lib/moov/models/components/authorizeduser.rb +0 -36
- data/lib/moov/models/components/authorizeduser.rbi +0 -15
- data/lib/moov/models/components/createauthorizeduser.rb +0 -40
- data/lib/moov/models/components/createauthorizeduser.rbi +0 -17
- data/lib/moov/models/components/createauthorizedusererror.rb +0 -40
- data/lib/moov/models/components/createauthorizedusererror.rbi +0 -17
- data/lib/moov/models/components/createauthorizeduserupdate.rb +0 -40
- data/lib/moov/models/components/createauthorizeduserupdate.rbi +0 -17
|
@@ -18,6 +18,8 @@ module Moov
|
|
|
18
18
|
field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
|
|
19
19
|
# An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.
|
|
20
20
|
field :dynamic_descriptor, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dynamicDescriptor') } }
|
|
21
|
+
# The scheduled date and time for the transfer to be delivered. This field is only valid for push-to-card transfers. Must be between 24 and 48 hours in the future in production. In sandbox mode, any future time up to 48 hours is accepted so integrations can test deferred delivery using the sandbox test cards with relaxed wait times.
|
|
22
|
+
field :scheduled_delivery_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('scheduledDeliveryOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
21
23
|
# Specifies the nature and initiator of a transaction.
|
|
22
24
|
#
|
|
23
25
|
# Crucial for recurring and merchant-initiated transactions as per card scheme rules.
|
|
@@ -35,6 +37,8 @@ module Moov
|
|
|
35
37
|
field :canceled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('canceledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
36
38
|
|
|
37
39
|
field :completed_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('completedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
40
|
+
|
|
41
|
+
field :deferred_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('deferredOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
38
42
|
# The program assigned by the card network that determines the interchange rate for the transfer.
|
|
39
43
|
#
|
|
40
44
|
# @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
@@ -44,11 +48,12 @@ module Moov
|
|
|
44
48
|
# An alphanumeric code generated by the card network to demonstrate approval for the transaction.
|
|
45
49
|
field :authorization_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizationCode') } }
|
|
46
50
|
|
|
47
|
-
sig { params(status: T.nilable(Models::Components::CardTransactionStatus), failure_code: T.nilable(Models::Components::CardTransactionFailureCode), dynamic_descriptor: T.nilable(::String), transaction_source: T.nilable(Models::Components::TransactionSource), initiated_on: T.nilable(::DateTime), confirmed_on: T.nilable(::DateTime), settled_on: T.nilable(::DateTime), failed_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime), completed_on: T.nilable(::DateTime), interchange_qualification: T.nilable(::String), fee_program: T.nilable(::String), authorization_code: T.nilable(::String)).void }
|
|
48
|
-
def initialize(status: nil, failure_code: nil, dynamic_descriptor: nil, transaction_source: nil, initiated_on: nil, confirmed_on: nil, settled_on: nil, failed_on: nil, canceled_on: nil, completed_on: nil, interchange_qualification: nil, fee_program: nil, authorization_code: nil)
|
|
51
|
+
sig { params(status: T.nilable(Models::Components::CardTransactionStatus), failure_code: T.nilable(Models::Components::CardTransactionFailureCode), dynamic_descriptor: T.nilable(::String), scheduled_delivery_on: T.nilable(::DateTime), transaction_source: T.nilable(Models::Components::TransactionSource), initiated_on: T.nilable(::DateTime), confirmed_on: T.nilable(::DateTime), settled_on: T.nilable(::DateTime), failed_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime), completed_on: T.nilable(::DateTime), deferred_on: T.nilable(::DateTime), interchange_qualification: T.nilable(::String), fee_program: T.nilable(::String), authorization_code: T.nilable(::String)).void }
|
|
52
|
+
def initialize(status: nil, failure_code: nil, dynamic_descriptor: nil, scheduled_delivery_on: nil, transaction_source: nil, initiated_on: nil, confirmed_on: nil, settled_on: nil, failed_on: nil, canceled_on: nil, completed_on: nil, deferred_on: nil, interchange_qualification: nil, fee_program: nil, authorization_code: nil)
|
|
49
53
|
@status = status
|
|
50
54
|
@failure_code = failure_code
|
|
51
55
|
@dynamic_descriptor = dynamic_descriptor
|
|
56
|
+
@scheduled_delivery_on = scheduled_delivery_on
|
|
52
57
|
@transaction_source = transaction_source
|
|
53
58
|
@initiated_on = initiated_on
|
|
54
59
|
@confirmed_on = confirmed_on
|
|
@@ -56,6 +61,7 @@ module Moov
|
|
|
56
61
|
@failed_on = failed_on
|
|
57
62
|
@canceled_on = canceled_on
|
|
58
63
|
@completed_on = completed_on
|
|
64
|
+
@deferred_on = deferred_on
|
|
59
65
|
@interchange_qualification = interchange_qualification
|
|
60
66
|
@fee_program = fee_program
|
|
61
67
|
@authorization_code = authorization_code
|
|
@@ -67,6 +73,7 @@ module Moov
|
|
|
67
73
|
return false unless @status == other.status
|
|
68
74
|
return false unless @failure_code == other.failure_code
|
|
69
75
|
return false unless @dynamic_descriptor == other.dynamic_descriptor
|
|
76
|
+
return false unless @scheduled_delivery_on == other.scheduled_delivery_on
|
|
70
77
|
return false unless @transaction_source == other.transaction_source
|
|
71
78
|
return false unless @initiated_on == other.initiated_on
|
|
72
79
|
return false unless @confirmed_on == other.confirmed_on
|
|
@@ -74,6 +81,7 @@ module Moov
|
|
|
74
81
|
return false unless @failed_on == other.failed_on
|
|
75
82
|
return false unless @canceled_on == other.canceled_on
|
|
76
83
|
return false unless @completed_on == other.completed_on
|
|
84
|
+
return false unless @deferred_on == other.deferred_on
|
|
77
85
|
return false unless @interchange_qualification == other.interchange_qualification
|
|
78
86
|
return false unless @fee_program == other.fee_program
|
|
79
87
|
return false unless @authorization_code == other.authorization_code
|
|
@@ -14,6 +14,8 @@ class Moov::Models::Components::CardTransactionDetails
|
|
|
14
14
|
def failure_code=(str_); end
|
|
15
15
|
def dynamic_descriptor(); end
|
|
16
16
|
def dynamic_descriptor=(str_); end
|
|
17
|
+
def scheduled_delivery_on(); end
|
|
18
|
+
def scheduled_delivery_on=(str_); end
|
|
17
19
|
def transaction_source(); end
|
|
18
20
|
def transaction_source=(str_); end
|
|
19
21
|
def initiated_on(); end
|
|
@@ -28,6 +30,8 @@ class Moov::Models::Components::CardTransactionDetails
|
|
|
28
30
|
def canceled_on=(str_); end
|
|
29
31
|
def completed_on(); end
|
|
30
32
|
def completed_on=(str_); end
|
|
33
|
+
def deferred_on(); end
|
|
34
|
+
def deferred_on=(str_); end
|
|
31
35
|
def interchange_qualification(); end
|
|
32
36
|
def interchange_qualification=(str_); end
|
|
33
37
|
def fee_program(); end
|
|
@@ -27,7 +27,11 @@ module Moov
|
|
|
27
27
|
field :customer_support, Crystalline::Nilable.new(Models::Components::CustomerSupport), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('customerSupport') } }
|
|
28
28
|
# User provided settings to manage an account.
|
|
29
29
|
field :settings, Crystalline::Nilable.new(Models::Components::Settings), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('settings') } }
|
|
30
|
-
|
|
30
|
+
# Capabilities to request when the account is created. Request granular capability IDs that match your use case.
|
|
31
|
+
#
|
|
32
|
+
# Read our [capabilities reference](https://docs.moov.io/guides/accounts/capabilities/reference/) to choose the right capabilities for your integration.
|
|
33
|
+
#
|
|
34
|
+
# The `send-funds`, `collect-funds`, and `wallet` capability IDs are deprecated. Use granular values such as `send-funds.ach`, `collect-funds.card-payments`, or `wallet.balance` instead.
|
|
31
35
|
field :capabilities, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CapabilityID)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilities') } }
|
|
32
36
|
# The operating mode for an account.
|
|
33
37
|
field :mode, Crystalline::Nilable.new(Models::Components::Mode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('mode'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::Mode, true) } }
|
|
@@ -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 exactly one of `payment`, `payout`, or `customAmountPayment` details. 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,12 +21,12 @@ 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
|
-
# The fixed amount of the payment link.
|
|
24
|
+
# The fixed amount of the payment link.
|
|
25
25
|
#
|
|
26
26
|
# In API versions before `2026.07.00`, this was a required field.
|
|
27
27
|
#
|
|
28
|
-
# In API version `2026.07.00` and beyond, this field is required for `
|
|
29
|
-
# for `
|
|
28
|
+
# In API version `2026.07.00` and beyond, this field is required for `payment` and `payout` links and must be
|
|
29
|
+
# omitted for `customAmountPayment` links, where the payor chooses the amount.
|
|
30
30
|
field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
31
31
|
# Customizable display options for a payment link.
|
|
32
32
|
field :display, Models::Components::PaymentLinkDisplayOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('display'), required: true } }
|
|
@@ -14,12 +14,15 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
# An optional override of the default card statement descriptor for a transfer. Accounts must be enabled by Moov to set this field.
|
|
16
16
|
field :dynamic_descriptor, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('dynamicDescriptor') } }
|
|
17
|
+
# The scheduled date and time for the transfer to be delivered. This field is only valid for push-to-card transfers. Must be between 24 and 48 hours in the future in production. In sandbox mode, any future time up to 48 hours is accepted so integrations can test deferred delivery using the sandbox test cards with relaxed wait times.
|
|
18
|
+
field :scheduled_delivery_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('scheduledDeliveryOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
17
19
|
# An optional field to specify the type of card payout, used to route the transfer with the appropriate business application identifier (BAI).
|
|
18
20
|
field :payout_type, Crystalline::Nilable.new(Models::Components::CardPayoutType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('payoutType'), 'decoder': ::Moov::Utils.enum_from_string(Models::Components::CardPayoutType, true) } }
|
|
19
21
|
|
|
20
|
-
sig { params(dynamic_descriptor: T.nilable(::String), payout_type: T.nilable(Models::Components::CardPayoutType)).void }
|
|
21
|
-
def initialize(dynamic_descriptor: nil, payout_type: nil)
|
|
22
|
+
sig { params(dynamic_descriptor: T.nilable(::String), scheduled_delivery_on: T.nilable(::DateTime), payout_type: T.nilable(Models::Components::CardPayoutType)).void }
|
|
23
|
+
def initialize(dynamic_descriptor: nil, scheduled_delivery_on: nil, payout_type: nil)
|
|
22
24
|
@dynamic_descriptor = dynamic_descriptor
|
|
25
|
+
@scheduled_delivery_on = scheduled_delivery_on
|
|
23
26
|
@payout_type = payout_type
|
|
24
27
|
end
|
|
25
28
|
|
|
@@ -27,6 +30,7 @@ module Moov
|
|
|
27
30
|
def ==(other)
|
|
28
31
|
return false unless other.is_a? self.class
|
|
29
32
|
return false unless @dynamic_descriptor == other.dynamic_descriptor
|
|
33
|
+
return false unless @scheduled_delivery_on == other.scheduled_delivery_on
|
|
30
34
|
return false unless @payout_type == other.payout_type
|
|
31
35
|
true
|
|
32
36
|
end
|
|
@@ -10,6 +10,8 @@ end
|
|
|
10
10
|
class Moov::Models::Components::CreateTransferDestinationCard
|
|
11
11
|
def dynamic_descriptor(); end
|
|
12
12
|
def dynamic_descriptor=(str_); end
|
|
13
|
+
def scheduled_delivery_on(); end
|
|
14
|
+
def scheduled_delivery_on=(str_); end
|
|
13
15
|
def payout_type(); end
|
|
14
16
|
def payout_type=(str_); end
|
|
15
17
|
end
|
|
@@ -20,44 +20,51 @@ 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 } }
|
|
25
23
|
# Unique identifier for the wallet funding the card.
|
|
26
24
|
field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
|
|
27
25
|
# The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
28
26
|
#
|
|
29
|
-
# - `active`: The card is operational and
|
|
30
|
-
# - `inactive`: The card cannot approve authorizations. This is currently a temporary state assigned post-creation during the activation process.
|
|
27
|
+
# - `active`: The card is operational and can approve authorizations.
|
|
31
28
|
# - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
|
|
32
|
-
# - `pending-verification`: Awaiting additional authorized user verification before the card can be activated.
|
|
33
29
|
field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardState, false) } }
|
|
34
30
|
# Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
|
|
35
31
|
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) } }
|
|
36
32
|
|
|
37
33
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
34
|
+
|
|
35
|
+
field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
38
36
|
# The issued card's Primary Account Number (PAN)
|
|
39
37
|
field :pan, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pan'), required: true } }
|
|
40
38
|
# The issued card's 3- or 4-digit Card Verification Value (CVV).
|
|
41
39
|
field :cvv, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cvv'), required: true } }
|
|
42
|
-
#
|
|
43
|
-
field :
|
|
40
|
+
# Identifier for the account of the card's authorized user.
|
|
41
|
+
field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUserAccountID') } }
|
|
42
|
+
# An optional descriptive name for the card.
|
|
43
|
+
field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
|
|
44
|
+
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
45
|
+
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
46
|
+
# Billing address associated with the card.
|
|
47
|
+
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
44
48
|
|
|
45
49
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
46
50
|
|
|
47
|
-
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration,
|
|
48
|
-
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:,
|
|
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 }
|
|
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)
|
|
49
53
|
@issued_card_id = issued_card_id
|
|
50
54
|
@brand = brand
|
|
51
55
|
@last_four_card_number = last_four_card_number
|
|
52
56
|
@expiration = expiration
|
|
53
|
-
@authorized_user = authorized_user
|
|
54
57
|
@funding_wallet_id = funding_wallet_id
|
|
55
58
|
@state = state
|
|
56
59
|
@form_factor = form_factor
|
|
57
60
|
@created_on = created_on
|
|
61
|
+
@updated_on = updated_on
|
|
58
62
|
@pan = pan
|
|
59
63
|
@cvv = cvv
|
|
60
|
-
@
|
|
64
|
+
@authorized_user_account_id = authorized_user_account_id
|
|
65
|
+
@nickname = nickname
|
|
66
|
+
@metadata = metadata
|
|
67
|
+
@billing_address = billing_address
|
|
61
68
|
@controls = controls
|
|
62
69
|
end
|
|
63
70
|
|
|
@@ -68,14 +75,17 @@ module Moov
|
|
|
68
75
|
return false unless @brand == other.brand
|
|
69
76
|
return false unless @last_four_card_number == other.last_four_card_number
|
|
70
77
|
return false unless @expiration == other.expiration
|
|
71
|
-
return false unless @authorized_user == other.authorized_user
|
|
72
78
|
return false unless @funding_wallet_id == other.funding_wallet_id
|
|
73
79
|
return false unless @state == other.state
|
|
74
80
|
return false unless @form_factor == other.form_factor
|
|
75
81
|
return false unless @created_on == other.created_on
|
|
82
|
+
return false unless @updated_on == other.updated_on
|
|
76
83
|
return false unless @pan == other.pan
|
|
77
84
|
return false unless @cvv == other.cvv
|
|
78
|
-
return false unless @
|
|
85
|
+
return false unless @authorized_user_account_id == other.authorized_user_account_id
|
|
86
|
+
return false unless @nickname == other.nickname
|
|
87
|
+
return false unless @metadata == other.metadata
|
|
88
|
+
return false unless @billing_address == other.billing_address
|
|
79
89
|
return false unless @controls == other.controls
|
|
80
90
|
true
|
|
81
91
|
end
|
|
@@ -16,8 +16,6 @@ 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
|
|
21
19
|
def funding_wallet_id(); end
|
|
22
20
|
def funding_wallet_id=(str_); end
|
|
23
21
|
def state(); end
|
|
@@ -26,12 +24,20 @@ class Moov::Models::Components::FullIssuedCard
|
|
|
26
24
|
def form_factor=(str_); end
|
|
27
25
|
def created_on(); end
|
|
28
26
|
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
|
|
33
|
+
def authorized_user_account_id(); end
|
|
34
|
+
def authorized_user_account_id=(str_); end
|
|
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
|
|
35
41
|
def controls(); end
|
|
36
42
|
def controls=(str_); end
|
|
37
43
|
end
|
|
@@ -48,6 +48,8 @@ module Moov
|
|
|
48
48
|
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('description') } }
|
|
49
49
|
|
|
50
50
|
field :payment_link_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkCode') } }
|
|
51
|
+
# URL to the hosted payment link for the invoice.
|
|
52
|
+
field :payment_link_url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentLinkURL') } }
|
|
51
53
|
# Payment made towards an invoice, will be either a transfer or an external payment.
|
|
52
54
|
field :invoice_payments, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::InvoicePayment)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoicePayments') } }
|
|
53
55
|
|
|
@@ -63,8 +65,8 @@ module Moov
|
|
|
63
65
|
|
|
64
66
|
field :disabled_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disabledOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
65
67
|
|
|
66
|
-
sig { params(invoice_id: ::String, invoice_number: ::String, customer_account_id: ::String, customer_display_name: ::String, customer_email: ::String, partner_account_id: ::String, status: Models::Components::InvoiceStatus, line_items: Models::Components::InvoiceLineItems, subtotal_amount: Models::Components::AmountDecimal, tax_amount: Models::Components::AmountDecimal, total_amount: Models::Components::AmountDecimal, pending_amount: Models::Components::AmountDecimal, paid_amount: Models::Components::AmountDecimal, refunded_amount: Models::Components::AmountDecimal, disputed_amount: Models::Components::AmountDecimal, created_on: ::DateTime, description: T.nilable(::String), payment_link_code: T.nilable(::String), invoice_payments: T.nilable(T::Array[Models::Components::InvoicePayment]), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), sent_on: T.nilable(::DateTime), paid_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime), disabled_on: T.nilable(::DateTime)).void }
|
|
67
|
-
def initialize(invoice_id:, invoice_number:, customer_account_id:, customer_display_name:, customer_email:, partner_account_id:, status:, line_items:, subtotal_amount:, tax_amount:, total_amount:, pending_amount:, paid_amount:, refunded_amount:, disputed_amount:, created_on:, description: nil, payment_link_code: nil, invoice_payments: nil, invoice_date: nil, due_date: nil, sent_on: nil, paid_on: nil, canceled_on: nil, disabled_on: nil)
|
|
68
|
+
sig { params(invoice_id: ::String, invoice_number: ::String, customer_account_id: ::String, customer_display_name: ::String, customer_email: ::String, partner_account_id: ::String, status: Models::Components::InvoiceStatus, line_items: Models::Components::InvoiceLineItems, subtotal_amount: Models::Components::AmountDecimal, tax_amount: Models::Components::AmountDecimal, total_amount: Models::Components::AmountDecimal, pending_amount: Models::Components::AmountDecimal, paid_amount: Models::Components::AmountDecimal, refunded_amount: Models::Components::AmountDecimal, disputed_amount: Models::Components::AmountDecimal, created_on: ::DateTime, description: T.nilable(::String), payment_link_code: T.nilable(::String), payment_link_url: T.nilable(::String), invoice_payments: T.nilable(T::Array[Models::Components::InvoicePayment]), invoice_date: T.nilable(::DateTime), due_date: T.nilable(::DateTime), sent_on: T.nilable(::DateTime), paid_on: T.nilable(::DateTime), canceled_on: T.nilable(::DateTime), disabled_on: T.nilable(::DateTime)).void }
|
|
69
|
+
def initialize(invoice_id:, invoice_number:, customer_account_id:, customer_display_name:, customer_email:, partner_account_id:, status:, line_items:, subtotal_amount:, tax_amount:, total_amount:, pending_amount:, paid_amount:, refunded_amount:, disputed_amount:, created_on:, description: nil, payment_link_code: nil, payment_link_url: nil, invoice_payments: nil, invoice_date: nil, due_date: nil, sent_on: nil, paid_on: nil, canceled_on: nil, disabled_on: nil)
|
|
68
70
|
@invoice_id = invoice_id
|
|
69
71
|
@invoice_number = invoice_number
|
|
70
72
|
@customer_account_id = customer_account_id
|
|
@@ -83,6 +85,7 @@ module Moov
|
|
|
83
85
|
@created_on = created_on
|
|
84
86
|
@description = description
|
|
85
87
|
@payment_link_code = payment_link_code
|
|
88
|
+
@payment_link_url = payment_link_url
|
|
86
89
|
@invoice_payments = invoice_payments
|
|
87
90
|
@invoice_date = invoice_date
|
|
88
91
|
@due_date = due_date
|
|
@@ -113,6 +116,7 @@ module Moov
|
|
|
113
116
|
return false unless @created_on == other.created_on
|
|
114
117
|
return false unless @description == other.description
|
|
115
118
|
return false unless @payment_link_code == other.payment_link_code
|
|
119
|
+
return false unless @payment_link_url == other.payment_link_url
|
|
116
120
|
return false unless @invoice_payments == other.invoice_payments
|
|
117
121
|
return false unless @invoice_date == other.invoice_date
|
|
118
122
|
return false unless @due_date == other.due_date
|
|
@@ -44,6 +44,8 @@ class Moov::Models::Components::Invoice
|
|
|
44
44
|
def description=(str_); end
|
|
45
45
|
def payment_link_code(); end
|
|
46
46
|
def payment_link_code=(str_); end
|
|
47
|
+
def payment_link_url(); end
|
|
48
|
+
def payment_link_url=(str_); end
|
|
47
49
|
def invoice_payments(); end
|
|
48
50
|
def invoice_payments=(str_); end
|
|
49
51
|
def invoice_date(); end
|
|
@@ -20,38 +20,45 @@ 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 } }
|
|
25
23
|
# Unique identifier for the wallet funding the card.
|
|
26
24
|
field :funding_wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fundingWalletID'), required: true } }
|
|
27
25
|
# The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
28
26
|
#
|
|
29
|
-
# - `active`: The card is operational and
|
|
30
|
-
# - `inactive`: The card cannot approve authorizations. This is currently a temporary state assigned post-creation during the activation process.
|
|
27
|
+
# - `active`: The card is operational and can approve authorizations.
|
|
31
28
|
# - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
|
|
32
|
-
# - `pending-verification`: Awaiting additional authorized user verification before the card can be activated.
|
|
33
29
|
field :state, Models::Components::IssuedCardState, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('state'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::IssuedCardState, false) } }
|
|
34
30
|
# Specifies the type of spend card to be issued. Presently supports virtual only, providing a digital number without a physical card.
|
|
35
31
|
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) } }
|
|
36
32
|
|
|
37
33
|
field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
38
|
-
|
|
39
|
-
field :
|
|
34
|
+
|
|
35
|
+
field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
36
|
+
# Identifier for the account of the card's authorized user.
|
|
37
|
+
field :authorized_user_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorizedUserAccountID') } }
|
|
38
|
+
# An optional descriptive name for the card.
|
|
39
|
+
field :nickname, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('nickname') } }
|
|
40
|
+
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
41
|
+
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
42
|
+
# Billing address associated with the card.
|
|
43
|
+
field :billing_address, Crystalline::Nilable.new(Models::Components::Address), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress') } }
|
|
40
44
|
|
|
41
45
|
field :controls, Crystalline::Nilable.new(Models::Components::IssuingControls), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('controls') } }
|
|
42
46
|
|
|
43
|
-
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration,
|
|
44
|
-
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:,
|
|
47
|
+
sig { params(issued_card_id: ::String, brand: Models::Components::CardBrand, last_four_card_number: ::String, expiration: Models::Components::CardExpiration, funding_wallet_id: ::String, state: Models::Components::IssuedCardState, form_factor: Models::Components::IssuedCardFormFactor, created_on: ::DateTime, updated_on: ::DateTime, authorized_user_account_id: T.nilable(::String), nickname: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), billing_address: T.nilable(Models::Components::Address), controls: T.nilable(Models::Components::IssuingControls)).void }
|
|
48
|
+
def initialize(issued_card_id:, brand:, last_four_card_number:, expiration:, funding_wallet_id:, state:, form_factor:, created_on:, updated_on:, authorized_user_account_id: nil, nickname: nil, metadata: nil, billing_address: nil, controls: nil)
|
|
45
49
|
@issued_card_id = issued_card_id
|
|
46
50
|
@brand = brand
|
|
47
51
|
@last_four_card_number = last_four_card_number
|
|
48
52
|
@expiration = expiration
|
|
49
|
-
@authorized_user = authorized_user
|
|
50
53
|
@funding_wallet_id = funding_wallet_id
|
|
51
54
|
@state = state
|
|
52
55
|
@form_factor = form_factor
|
|
53
56
|
@created_on = created_on
|
|
54
|
-
@
|
|
57
|
+
@updated_on = updated_on
|
|
58
|
+
@authorized_user_account_id = authorized_user_account_id
|
|
59
|
+
@nickname = nickname
|
|
60
|
+
@metadata = metadata
|
|
61
|
+
@billing_address = billing_address
|
|
55
62
|
@controls = controls
|
|
56
63
|
end
|
|
57
64
|
|
|
@@ -62,12 +69,15 @@ module Moov
|
|
|
62
69
|
return false unless @brand == other.brand
|
|
63
70
|
return false unless @last_four_card_number == other.last_four_card_number
|
|
64
71
|
return false unless @expiration == other.expiration
|
|
65
|
-
return false unless @authorized_user == other.authorized_user
|
|
66
72
|
return false unless @funding_wallet_id == other.funding_wallet_id
|
|
67
73
|
return false unless @state == other.state
|
|
68
74
|
return false unless @form_factor == other.form_factor
|
|
69
75
|
return false unless @created_on == other.created_on
|
|
70
|
-
return false unless @
|
|
76
|
+
return false unless @updated_on == other.updated_on
|
|
77
|
+
return false unless @authorized_user_account_id == other.authorized_user_account_id
|
|
78
|
+
return false unless @nickname == other.nickname
|
|
79
|
+
return false unless @metadata == other.metadata
|
|
80
|
+
return false unless @billing_address == other.billing_address
|
|
71
81
|
return false unless @controls == other.controls
|
|
72
82
|
true
|
|
73
83
|
end
|
|
@@ -16,8 +16,6 @@ class Moov::Models::Components::IssuedCard
|
|
|
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
|
|
21
19
|
def funding_wallet_id(); end
|
|
22
20
|
def funding_wallet_id=(str_); end
|
|
23
21
|
def state(); end
|
|
@@ -26,8 +24,16 @@ class Moov::Models::Components::IssuedCard
|
|
|
26
24
|
def form_factor=(str_); end
|
|
27
25
|
def created_on(); end
|
|
28
26
|
def created_on=(str_); end
|
|
29
|
-
def
|
|
30
|
-
def
|
|
27
|
+
def updated_on(); end
|
|
28
|
+
def updated_on=(str_); end
|
|
29
|
+
def authorized_user_account_id(); end
|
|
30
|
+
def authorized_user_account_id=(str_); end
|
|
31
|
+
def nickname(); end
|
|
32
|
+
def nickname=(str_); end
|
|
33
|
+
def metadata(); end
|
|
34
|
+
def metadata=(str_); end
|
|
35
|
+
def billing_address(); end
|
|
36
|
+
def billing_address=(str_); end
|
|
31
37
|
def controls(); end
|
|
32
38
|
def controls=(str_); end
|
|
33
39
|
end
|
|
@@ -9,15 +9,11 @@ module Moov
|
|
|
9
9
|
module Components
|
|
10
10
|
# IssuedCardState - The `state` represents the operational status of an issued card. A card can only approve incoming authorizations if it is in an active state.
|
|
11
11
|
#
|
|
12
|
-
# - `active`: The card is operational and
|
|
13
|
-
# - `inactive`: The card cannot approve authorizations. This is currently a temporary state assigned post-creation during the activation process.
|
|
12
|
+
# - `active`: The card is operational and can approve authorizations.
|
|
14
13
|
# - `closed`: The card is permanently deactivated and cannot approve authorizations. A card can be closed by request or when it expires.
|
|
15
|
-
# - `pending-verification`: Awaiting additional authorized user verification before the card can be activated.
|
|
16
14
|
class IssuedCardState < T::Enum
|
|
17
15
|
enums do
|
|
18
16
|
ACTIVE = new('active')
|
|
19
|
-
INACTIVE = new('inactive')
|
|
20
|
-
PENDING_VERIFICATION = new('pending-verification')
|
|
21
17
|
CLOSED = new('closed')
|
|
22
18
|
end
|
|
23
19
|
end
|
|
@@ -14,7 +14,7 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
# The date and time the terms of service were accepted.
|
|
16
16
|
field :accepted_date, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedDate'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
|
|
17
|
-
# The IP address from which the terms of service were accepted.
|
|
17
|
+
# The IP address (IPv4 or IPv6) from which the terms of service were accepted.
|
|
18
18
|
field :accepted_ip, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedIP'), required: true } }
|
|
19
19
|
# The user-agent of the user making the request.
|
|
20
20
|
field :accepted_user_agent, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedUserAgent'), required: true } }
|
|
@@ -14,7 +14,7 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
# The date and time the terms of service were accepted.
|
|
16
16
|
field :accepted_date, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedDate'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
|
|
17
|
-
# The IP address from which the terms of service were accepted.
|
|
17
|
+
# The IP address (IPv4 or IPv6) from which the terms of service were accepted.
|
|
18
18
|
field :accepted_ip, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedIP') } }
|
|
19
19
|
# The user-agent of the user making the request.
|
|
20
20
|
field :accepted_user_agent, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('acceptedUserAgent') } }
|
|
@@ -19,7 +19,7 @@ module Moov
|
|
|
19
19
|
# List of [scopes](https://docs.moov.io/api/authentication/scopes/) you request to use on this
|
|
20
20
|
# account. These values are used to determine what can be done with the account onboarded.
|
|
21
21
|
field :scopes, Crystalline::Array.new(Models::Components::ApplicationScope), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('scopes'), required: true } }
|
|
22
|
-
# List of [capabilities](https://docs.moov.io/guides/accounts/capabilities/) you intend to request for this
|
|
22
|
+
# List of [capabilities](https://docs.moov.io/guides/accounts/capabilities/reference/) you intend to request for this
|
|
23
23
|
# account. These values are used to determine what information to collect from the user during onboarding.
|
|
24
24
|
field :capabilities, Crystalline::Array.new(Models::Components::CapabilityID), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilities'), required: true } }
|
|
25
25
|
# List of fee plan codes to assign the account created by the invitee.
|
|
@@ -15,7 +15,7 @@ module Moov
|
|
|
15
15
|
# List of [scopes](https://docs.moov.io/api/authentication/scopes/) you request to use on this
|
|
16
16
|
# account. These values are used to determine what can be done with the account onboarded.
|
|
17
17
|
field :scopes, Crystalline::Array.new(Models::Components::ApplicationScope), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('scopes'), required: true } }
|
|
18
|
-
# List of [capabilities](https://docs.moov.io/guides/accounts/capabilities/) you intend to request for this
|
|
18
|
+
# List of [capabilities](https://docs.moov.io/guides/accounts/capabilities/reference/) you intend to request for this
|
|
19
19
|
# account. These values are used to determine what information to collect from the user during onboarding.
|
|
20
20
|
field :capabilities, Crystalline::Array.new(Models::Components::CapabilityID), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capabilities'), required: true } }
|
|
21
21
|
# List of fee plan codes to assign the account created by the invitee.
|
|
@@ -14,7 +14,7 @@ module Moov
|
|
|
14
14
|
|
|
15
15
|
# Optional alias from a foreign/external system which can be used to reference this resource.
|
|
16
16
|
field :foreign_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('foreignID') } }
|
|
17
|
-
|
|
17
|
+
# Free-form key-value pair list. Useful for storing information that is not captured elsewhere.
|
|
18
18
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
19
19
|
|
|
20
20
|
sig { params(foreign_id: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String])).void }
|
|
@@ -30,12 +30,12 @@ module Moov
|
|
|
30
30
|
field :merchant_payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantPaymentMethodID'), required: true } }
|
|
31
31
|
# Link to the payment landing page for this payment link.
|
|
32
32
|
field :link, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('link'), required: true } }
|
|
33
|
-
# The fixed amount of the payment link.
|
|
33
|
+
# The fixed amount of the payment link.
|
|
34
34
|
#
|
|
35
35
|
# In API versions before `2026.07.00`, this was a required field.
|
|
36
36
|
#
|
|
37
|
-
# In API version `2026.07.00` and beyond, this field is
|
|
38
|
-
# for `
|
|
37
|
+
# In API version `2026.07.00` and beyond, this field is present for `payment` and `payout` links and omitted
|
|
38
|
+
# for `customAmountPayment` links, where the payor chooses the amount.
|
|
39
39
|
field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
|
|
40
40
|
# The number of times this payment link has been used.
|
|
41
41
|
field :uses, ::Integer, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('uses'), required: true } }
|
|
@@ -21,12 +21,18 @@ module Moov
|
|
|
21
21
|
field :recipient, Models::Components::PayoutRecipient, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('recipient'), required: true } }
|
|
22
22
|
# Optional free-form metadata for the transfer.
|
|
23
23
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
24
|
+
# Delivery options for push-to-card payouts. Only applies when `allowedMethods` includes `push-to-card`.
|
|
25
|
+
#
|
|
26
|
+
# The `deferred` speed and `deferredBy` apply to `push-to-card` only. Other push methods
|
|
27
|
+
# (`push-to-apple-pay`, `push-to-google-pay`) are always delivered instantly regardless of these options.
|
|
28
|
+
field :push_options, Crystalline::Nilable.new(Models::Components::PushOptions), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushOptions') } }
|
|
24
29
|
|
|
25
|
-
sig { params(allowed_methods: T::Array[Models::Components::DisbursementPaymentMethodType], recipient: Models::Components::PayoutRecipient, metadata: T.nilable(T::Hash[Symbol, ::String])).void }
|
|
26
|
-
def initialize(allowed_methods:, recipient:, metadata: nil)
|
|
30
|
+
sig { params(allowed_methods: T::Array[Models::Components::DisbursementPaymentMethodType], recipient: Models::Components::PayoutRecipient, metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptions)).void }
|
|
31
|
+
def initialize(allowed_methods:, recipient:, metadata: nil, push_options: nil)
|
|
27
32
|
@allowed_methods = allowed_methods
|
|
28
33
|
@recipient = recipient
|
|
29
34
|
@metadata = metadata
|
|
35
|
+
@push_options = push_options
|
|
30
36
|
end
|
|
31
37
|
|
|
32
38
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -35,6 +41,7 @@ module Moov
|
|
|
35
41
|
return false unless @allowed_methods == other.allowed_methods
|
|
36
42
|
return false unless @recipient == other.recipient
|
|
37
43
|
return false unless @metadata == other.metadata
|
|
44
|
+
return false unless @push_options == other.push_options
|
|
38
45
|
true
|
|
39
46
|
end
|
|
40
47
|
end
|
|
@@ -21,12 +21,18 @@ module Moov
|
|
|
21
21
|
field :recipient, Crystalline::Nilable.new(Models::Components::PayoutRecipient), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('recipient') } }
|
|
22
22
|
# Optional free-form metadata for the transfer.
|
|
23
23
|
field :metadata, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('metadata') } }
|
|
24
|
+
# Delivery options for push-to-card payouts. Only applies when `allowedMethods` includes `push-to-card`.
|
|
25
|
+
#
|
|
26
|
+
# The `deferred` speed and `deferredBy` apply to `push-to-card` only. Other push methods
|
|
27
|
+
# (`push-to-apple-pay`, `push-to-google-pay`) are always delivered instantly regardless of these options.
|
|
28
|
+
field :push_options, Crystalline::Nilable.new(Models::Components::PushOptionsUpdate), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('pushOptions') } }
|
|
24
29
|
|
|
25
|
-
sig { params(allowed_methods: T.nilable(T::Array[Models::Components::DisbursementPaymentMethodType]), recipient: T.nilable(Models::Components::PayoutRecipient), metadata: T.nilable(T::Hash[Symbol, ::String])).void }
|
|
26
|
-
def initialize(allowed_methods: nil, recipient: nil, metadata: nil)
|
|
30
|
+
sig { params(allowed_methods: T.nilable(T::Array[Models::Components::DisbursementPaymentMethodType]), recipient: T.nilable(Models::Components::PayoutRecipient), metadata: T.nilable(T::Hash[Symbol, ::String]), push_options: T.nilable(Models::Components::PushOptionsUpdate)).void }
|
|
31
|
+
def initialize(allowed_methods: nil, recipient: nil, metadata: nil, push_options: nil)
|
|
27
32
|
@allowed_methods = allowed_methods
|
|
28
33
|
@recipient = recipient
|
|
29
34
|
@metadata = metadata
|
|
35
|
+
@push_options = push_options
|
|
30
36
|
end
|
|
31
37
|
|
|
32
38
|
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
@@ -35,6 +41,7 @@ module Moov
|
|
|
35
41
|
return false unless @allowed_methods == other.allowed_methods
|
|
36
42
|
return false unless @recipient == other.recipient
|
|
37
43
|
return false unless @metadata == other.metadata
|
|
44
|
+
return false unless @push_options == other.push_options
|
|
38
45
|
true
|
|
39
46
|
end
|
|
40
47
|
end
|