moov_ruby 0.3.38 → 0.3.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/crystalline/metadata_fields.rb +3 -1
- data/lib/crystalline/module.rb +6 -2
- data/lib/crystalline/types.rb +52 -0
- data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/applepaytransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/applepaytransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/moovwallettransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/moovwallettransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/pushtocardtransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/pushtocardtransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/rtpcredittransferpaymentmethod.rb +40 -0
- data/lib/moov/models/components/rtpcredittransferpaymentmethod.rbi +17 -0
- data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
- data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/transferdestination.rb +5 -5
- data/lib/moov/models/components/transferentrymode.rb +18 -0
- data/lib/moov/models/components/transferentrymode.rbi +11 -0
- data/lib/moov/models/components/transferoptions.rb +3 -3
- data/lib/moov/models/components/transferpaymentmethod.rb +27 -0
- data/lib/moov/models/components/transferpaymentmethod.rbi +11 -0
- data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +70 -0
- data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +31 -0
- data/lib/moov/models/components/transferpaymentmethodscard.rb +98 -0
- data/lib/moov/models/components/transferpaymentmethodscard.rbi +45 -0
- data/lib/moov/models/components/transferpaymentmethodswallet.rb +42 -0
- data/lib/moov/models/components/transferpaymentmethodswallet.rbi +17 -0
- data/lib/moov/models/components/transferpaymentmethodtype.rb +29 -0
- data/lib/moov/models/components/transferpaymentmethodtype.rbi +11 -0
- data/lib/moov/models/components/transfersource.rb +6 -6
- data/lib/moov/models/components/transferterminalcard.rb +78 -0
- data/lib/moov/models/components/transferterminalcard.rbi +35 -0
- data/lib/moov/models/components.rb +31 -0
- data/lib/moov/sdkconfiguration.rb +3 -3
- metadata +64 -2
|
@@ -0,0 +1,27 @@
|
|
|
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
|
+
# A method of moving money
|
|
11
|
+
class TransferPaymentMethod
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def initialize; end
|
|
18
|
+
|
|
19
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
20
|
+
def ==(other)
|
|
21
|
+
return false unless other.is_a? self.class
|
|
22
|
+
true
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,70 @@
|
|
|
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
|
+
# A bank account as contained within a payment method.
|
|
11
|
+
class TransferPaymentMethodsBankAccount
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :bank_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccountID'), required: true } }
|
|
17
|
+
# Once the bank account is linked, we don't reveal the full bank account number.
|
|
18
|
+
#
|
|
19
|
+
# The fingerprint acts as a way to identify whether two linked bank accounts are the same.
|
|
20
|
+
field :fingerprint, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint'), required: true } }
|
|
21
|
+
|
|
22
|
+
field :status, Models::Components::BankAccountStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': Utils.enum_from_string(Models::Components::BankAccountStatus, false) } }
|
|
23
|
+
|
|
24
|
+
field :holder_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderName'), required: true } }
|
|
25
|
+
# The type of holder on a funding source.
|
|
26
|
+
field :holder_type, Models::Components::BankAccountHolderType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::BankAccountHolderType, false) } }
|
|
27
|
+
|
|
28
|
+
field :bank_name, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankName'), required: true } }
|
|
29
|
+
# The bank account type.
|
|
30
|
+
field :bank_account_type, Models::Components::BankAccountType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccountType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::BankAccountType, false) } }
|
|
31
|
+
|
|
32
|
+
field :routing_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('routingNumber'), required: true } }
|
|
33
|
+
|
|
34
|
+
field :last_four_account_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourAccountNumber'), required: true } }
|
|
35
|
+
|
|
36
|
+
field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': Utils.datetime_from_iso_format(false) } }
|
|
37
|
+
|
|
38
|
+
sig { params(bank_account_id: ::String, fingerprint: ::String, status: Models::Components::BankAccountStatus, holder_name: ::String, holder_type: Models::Components::BankAccountHolderType, bank_name: ::String, bank_account_type: Models::Components::BankAccountType, routing_number: ::String, last_four_account_number: ::String, updated_on: ::DateTime).void }
|
|
39
|
+
def initialize(bank_account_id:, fingerprint:, status:, holder_name:, holder_type:, bank_name:, bank_account_type:, routing_number:, last_four_account_number:, updated_on:)
|
|
40
|
+
@bank_account_id = bank_account_id
|
|
41
|
+
@fingerprint = fingerprint
|
|
42
|
+
@status = status
|
|
43
|
+
@holder_name = holder_name
|
|
44
|
+
@holder_type = holder_type
|
|
45
|
+
@bank_name = bank_name
|
|
46
|
+
@bank_account_type = bank_account_type
|
|
47
|
+
@routing_number = routing_number
|
|
48
|
+
@last_four_account_number = last_four_account_number
|
|
49
|
+
@updated_on = updated_on
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
53
|
+
def ==(other)
|
|
54
|
+
return false unless other.is_a? self.class
|
|
55
|
+
return false unless @bank_account_id == other.bank_account_id
|
|
56
|
+
return false unless @fingerprint == other.fingerprint
|
|
57
|
+
return false unless @status == other.status
|
|
58
|
+
return false unless @holder_name == other.holder_name
|
|
59
|
+
return false unless @holder_type == other.holder_type
|
|
60
|
+
return false unless @bank_name == other.bank_name
|
|
61
|
+
return false unless @bank_account_type == other.bank_account_type
|
|
62
|
+
return false unless @routing_number == other.routing_number
|
|
63
|
+
return false unless @last_four_account_number == other.last_four_account_number
|
|
64
|
+
return false unless @updated_on == other.updated_on
|
|
65
|
+
true
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::TransferPaymentMethodsBankAccount
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::TransferPaymentMethodsBankAccount
|
|
11
|
+
def bank_account_id(); end
|
|
12
|
+
def bank_account_id=(str_); end
|
|
13
|
+
def fingerprint(); end
|
|
14
|
+
def fingerprint=(str_); end
|
|
15
|
+
def status(); end
|
|
16
|
+
def status=(str_); end
|
|
17
|
+
def holder_name(); end
|
|
18
|
+
def holder_name=(str_); end
|
|
19
|
+
def holder_type(); end
|
|
20
|
+
def holder_type=(str_); end
|
|
21
|
+
def bank_name(); end
|
|
22
|
+
def bank_name=(str_); end
|
|
23
|
+
def bank_account_type(); end
|
|
24
|
+
def bank_account_type=(str_); end
|
|
25
|
+
def routing_number(); end
|
|
26
|
+
def routing_number=(str_); end
|
|
27
|
+
def last_four_account_number(); end
|
|
28
|
+
def last_four_account_number=(str_); end
|
|
29
|
+
def updated_on(); end
|
|
30
|
+
def updated_on=(str_); end
|
|
31
|
+
end
|
|
@@ -0,0 +1,98 @@
|
|
|
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
|
+
# A card as contained within a payment method.
|
|
11
|
+
class TransferPaymentMethodsCard
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# ID of the card.
|
|
16
|
+
field :card_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardID'), required: true } }
|
|
17
|
+
# Uniquely identifies a linked payment card or token.
|
|
18
|
+
# For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user's device.
|
|
19
|
+
# This field can be used to identify specific payment methods across multiple accounts on your platform.
|
|
20
|
+
field :fingerprint, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint'), required: true } }
|
|
21
|
+
# The card brand.
|
|
22
|
+
field :brand, Models::Components::CardBrand, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardBrand, false) } }
|
|
23
|
+
# The type of the card.
|
|
24
|
+
field :card_type, Models::Components::CardType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardType, false) } }
|
|
25
|
+
# Last four digits of the card number
|
|
26
|
+
field :last_four_card_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber'), required: true } }
|
|
27
|
+
# The first six to eight digits of the card number, which identifies the financial institution that issued the card.
|
|
28
|
+
field :bin, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin'), required: true } }
|
|
29
|
+
# The expiration date of the card or token.
|
|
30
|
+
field :expiration, Models::Components::CardExpiration, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration'), required: true } }
|
|
31
|
+
|
|
32
|
+
field :billing_address, Models::Components::CardAddress, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('billingAddress'), required: true } }
|
|
33
|
+
# The results of submitting cardholder data to a card network for verification.
|
|
34
|
+
field :card_verification, Models::Components::CardVerification, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardVerification'), required: true } }
|
|
35
|
+
# The name of the cardholder as it appears on the card.
|
|
36
|
+
field :holder_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderName') } }
|
|
37
|
+
# Financial institution that issued the card.
|
|
38
|
+
field :issuer, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuer') } }
|
|
39
|
+
# Country where the card was issued.
|
|
40
|
+
field :issuer_country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuerCountry') } }
|
|
41
|
+
# Indicates cardholder has authorized card to be stored for future payments.
|
|
42
|
+
field :card_on_file, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardOnFile') } }
|
|
43
|
+
|
|
44
|
+
field :merchant_account_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantAccountID') } }
|
|
45
|
+
# The results of the most recent card update request.
|
|
46
|
+
field :card_account_updater, Crystalline::Nilable.new(Models::Components::CardAccountUpdater), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardAccountUpdater') } }
|
|
47
|
+
# Indicates which level of domestic push-to-card transfer is supported by the card, if any.
|
|
48
|
+
field :domestic_push_to_card, Crystalline::Nilable.new(Models::Components::DomesticPushToCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPushToCard'), 'decoder': Utils.enum_from_string(Models::Components::DomesticPushToCard, true) } }
|
|
49
|
+
# Indicates if the card supports domestic pull-from-card transfer.
|
|
50
|
+
field :domestic_pull_from_card, Crystalline::Nilable.new(Models::Components::DomesticPullFromCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('domesticPullFromCard'), 'decoder': Utils.enum_from_string(Models::Components::DomesticPullFromCard, true) } }
|
|
51
|
+
|
|
52
|
+
sig { params(card_id: ::String, fingerprint: ::String, brand: Models::Components::CardBrand, card_type: Models::Components::CardType, last_four_card_number: ::String, bin: ::String, expiration: Models::Components::CardExpiration, billing_address: Models::Components::CardAddress, card_verification: Models::Components::CardVerification, holder_name: T.nilable(::String), issuer: T.nilable(::String), issuer_country: T.nilable(::String), card_on_file: T.nilable(T::Boolean), merchant_account_id: T.nilable(::String), card_account_updater: T.nilable(Models::Components::CardAccountUpdater), domestic_push_to_card: T.nilable(Models::Components::DomesticPushToCard), domestic_pull_from_card: T.nilable(Models::Components::DomesticPullFromCard)).void }
|
|
53
|
+
def initialize(card_id:, fingerprint:, brand:, card_type:, last_four_card_number:, bin:, expiration:, billing_address:, card_verification:, holder_name: nil, issuer: nil, issuer_country: nil, card_on_file: nil, merchant_account_id: nil, card_account_updater: nil, domestic_push_to_card: nil, domestic_pull_from_card: nil)
|
|
54
|
+
@card_id = card_id
|
|
55
|
+
@fingerprint = fingerprint
|
|
56
|
+
@brand = brand
|
|
57
|
+
@card_type = card_type
|
|
58
|
+
@last_four_card_number = last_four_card_number
|
|
59
|
+
@bin = bin
|
|
60
|
+
@expiration = expiration
|
|
61
|
+
@billing_address = billing_address
|
|
62
|
+
@card_verification = card_verification
|
|
63
|
+
@holder_name = holder_name
|
|
64
|
+
@issuer = issuer
|
|
65
|
+
@issuer_country = issuer_country
|
|
66
|
+
@card_on_file = card_on_file
|
|
67
|
+
@merchant_account_id = merchant_account_id
|
|
68
|
+
@card_account_updater = card_account_updater
|
|
69
|
+
@domestic_push_to_card = domestic_push_to_card
|
|
70
|
+
@domestic_pull_from_card = domestic_pull_from_card
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
74
|
+
def ==(other)
|
|
75
|
+
return false unless other.is_a? self.class
|
|
76
|
+
return false unless @card_id == other.card_id
|
|
77
|
+
return false unless @fingerprint == other.fingerprint
|
|
78
|
+
return false unless @brand == other.brand
|
|
79
|
+
return false unless @card_type == other.card_type
|
|
80
|
+
return false unless @last_four_card_number == other.last_four_card_number
|
|
81
|
+
return false unless @bin == other.bin
|
|
82
|
+
return false unless @expiration == other.expiration
|
|
83
|
+
return false unless @billing_address == other.billing_address
|
|
84
|
+
return false unless @card_verification == other.card_verification
|
|
85
|
+
return false unless @holder_name == other.holder_name
|
|
86
|
+
return false unless @issuer == other.issuer
|
|
87
|
+
return false unless @issuer_country == other.issuer_country
|
|
88
|
+
return false unless @card_on_file == other.card_on_file
|
|
89
|
+
return false unless @merchant_account_id == other.merchant_account_id
|
|
90
|
+
return false unless @card_account_updater == other.card_account_updater
|
|
91
|
+
return false unless @domestic_push_to_card == other.domestic_push_to_card
|
|
92
|
+
return false unless @domestic_pull_from_card == other.domestic_pull_from_card
|
|
93
|
+
true
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::TransferPaymentMethodsCard
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::TransferPaymentMethodsCard
|
|
11
|
+
def card_id(); end
|
|
12
|
+
def card_id=(str_); end
|
|
13
|
+
def fingerprint(); end
|
|
14
|
+
def fingerprint=(str_); end
|
|
15
|
+
def brand(); end
|
|
16
|
+
def brand=(str_); end
|
|
17
|
+
def card_type(); end
|
|
18
|
+
def card_type=(str_); end
|
|
19
|
+
def last_four_card_number(); end
|
|
20
|
+
def last_four_card_number=(str_); end
|
|
21
|
+
def bin(); end
|
|
22
|
+
def bin=(str_); end
|
|
23
|
+
def expiration(); end
|
|
24
|
+
def expiration=(str_); end
|
|
25
|
+
def billing_address(); end
|
|
26
|
+
def billing_address=(str_); end
|
|
27
|
+
def card_verification(); end
|
|
28
|
+
def card_verification=(str_); end
|
|
29
|
+
def holder_name(); end
|
|
30
|
+
def holder_name=(str_); end
|
|
31
|
+
def issuer(); end
|
|
32
|
+
def issuer=(str_); end
|
|
33
|
+
def issuer_country(); end
|
|
34
|
+
def issuer_country=(str_); end
|
|
35
|
+
def card_on_file(); end
|
|
36
|
+
def card_on_file=(str_); end
|
|
37
|
+
def merchant_account_id(); end
|
|
38
|
+
def merchant_account_id=(str_); end
|
|
39
|
+
def card_account_updater(); end
|
|
40
|
+
def card_account_updater=(str_); end
|
|
41
|
+
def domestic_push_to_card(); end
|
|
42
|
+
def domestic_push_to_card=(str_); end
|
|
43
|
+
def domestic_pull_from_card(); end
|
|
44
|
+
def domestic_pull_from_card=(str_); end
|
|
45
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
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 TransferPaymentMethodsWallet
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
|
|
17
|
+
|
|
18
|
+
field :partner_account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('partnerAccountID'), required: true } }
|
|
19
|
+
# Type of a wallet.
|
|
20
|
+
# - `default`: The system-generated wallet automatically created when an account is granted the wallet capability.
|
|
21
|
+
# - `general`: An additional, user-defined wallet created via API or Dashboard.
|
|
22
|
+
field :wallet_type, Models::Components::WalletType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::WalletType, false) } }
|
|
23
|
+
|
|
24
|
+
sig { params(wallet_id: ::String, partner_account_id: ::String, wallet_type: Models::Components::WalletType).void }
|
|
25
|
+
def initialize(wallet_id:, partner_account_id:, wallet_type:)
|
|
26
|
+
@wallet_id = wallet_id
|
|
27
|
+
@partner_account_id = partner_account_id
|
|
28
|
+
@wallet_type = wallet_type
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
32
|
+
def ==(other)
|
|
33
|
+
return false unless other.is_a? self.class
|
|
34
|
+
return false unless @wallet_id == other.wallet_id
|
|
35
|
+
return false unless @partner_account_id == other.partner_account_id
|
|
36
|
+
return false unless @wallet_type == other.wallet_type
|
|
37
|
+
true
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::TransferPaymentMethodsWallet
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::TransferPaymentMethodsWallet
|
|
11
|
+
def wallet_id(); end
|
|
12
|
+
def wallet_id=(str_); end
|
|
13
|
+
def partner_account_id(); end
|
|
14
|
+
def partner_account_id=(str_); end
|
|
15
|
+
def wallet_type(); end
|
|
16
|
+
def wallet_type=(str_); end
|
|
17
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
# TransferPaymentMethodType - The payment method type that represents a payment rail and directionality
|
|
11
|
+
class TransferPaymentMethodType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
MOOV_WALLET = new('moov-wallet')
|
|
14
|
+
ACH_DEBIT_FUND = new('ach-debit-fund')
|
|
15
|
+
ACH_DEBIT_COLLECT = new('ach-debit-collect')
|
|
16
|
+
ACH_CREDIT_STANDARD = new('ach-credit-standard')
|
|
17
|
+
ACH_CREDIT_SAME_DAY = new('ach-credit-same-day')
|
|
18
|
+
RTP_CREDIT = new('rtp-credit')
|
|
19
|
+
CARD_PAYMENT = new('card-payment')
|
|
20
|
+
PUSH_TO_CARD = new('push-to-card')
|
|
21
|
+
PULL_FROM_CARD = new('pull-from-card')
|
|
22
|
+
APPLE_PAY = new('apple-pay')
|
|
23
|
+
CARD_PRESENT_PAYMENT = new('card-present-payment')
|
|
24
|
+
INSTANT_BANK_CREDIT = new('instant-bank-credit')
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -15,27 +15,27 @@ module Moov
|
|
|
15
15
|
|
|
16
16
|
field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
|
|
17
17
|
# The payment method type that represents a payment rail and directionality
|
|
18
|
-
field :payment_method_type, Models::Components::
|
|
18
|
+
field :payment_method_type, Models::Components::TransferPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::TransferPaymentMethodType, false) } }
|
|
19
19
|
|
|
20
20
|
field :account, Models::Components::TransferAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('account'), required: true } }
|
|
21
21
|
# String present only if the transfer is part of a transfer group.
|
|
22
22
|
field :transfer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID') } }
|
|
23
23
|
# A bank account as contained within a payment method.
|
|
24
|
-
field :bank_account, Crystalline::Nilable.new(Models::Components::
|
|
24
|
+
field :bank_account, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsBankAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount') } }
|
|
25
25
|
|
|
26
|
-
field :wallet, Crystalline::Nilable.new(Models::Components::
|
|
26
|
+
field :wallet, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsWallet), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet') } }
|
|
27
27
|
# A card as contained within a payment method.
|
|
28
|
-
field :card, Crystalline::Nilable.new(Models::Components::
|
|
28
|
+
field :card, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card') } }
|
|
29
29
|
# Describes an Apple Pay token on a Moov account.
|
|
30
30
|
field :apple_pay, Crystalline::Nilable.new(Models::Components::ApplePayResponse), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applePay') } }
|
|
31
31
|
# Describes payment card details captured with tap or in-person payment.
|
|
32
|
-
field :terminal_card, Crystalline::Nilable.new(Models::Components::
|
|
32
|
+
field :terminal_card, Crystalline::Nilable.new(Models::Components::TransferTerminalCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('terminalCard') } }
|
|
33
33
|
# Card-specific details about the transaction.
|
|
34
34
|
field :card_details, Crystalline::Nilable.new(Models::Components::CardTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardDetails') } }
|
|
35
35
|
# ACH specific details about the transaction.
|
|
36
36
|
field :ach_details, Crystalline::Nilable.new(Models::Components::ACHTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achDetails') } }
|
|
37
37
|
|
|
38
|
-
sig { params(payment_method_id: ::String, payment_method_type: Models::Components::
|
|
38
|
+
sig { params(payment_method_id: ::String, payment_method_type: Models::Components::TransferPaymentMethodType, account: Models::Components::TransferAccount, transfer_id: T.nilable(::String), bank_account: T.nilable(Models::Components::TransferPaymentMethodsBankAccount), wallet: T.nilable(Models::Components::TransferPaymentMethodsWallet), card: T.nilable(Models::Components::TransferPaymentMethodsCard), apple_pay: T.nilable(Models::Components::ApplePayResponse), terminal_card: T.nilable(Models::Components::TransferTerminalCard), card_details: T.nilable(Models::Components::CardTransactionDetails), ach_details: T.nilable(Models::Components::ACHTransactionDetails)).void }
|
|
39
39
|
def initialize(payment_method_id:, payment_method_type:, account:, transfer_id: nil, bank_account: nil, wallet: nil, card: nil, apple_pay: nil, terminal_card: nil, card_details: nil, ach_details: nil)
|
|
40
40
|
@payment_method_id = payment_method_id
|
|
41
41
|
@payment_method_type = payment_method_type
|
|
@@ -0,0 +1,78 @@
|
|
|
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
|
+
# Describes payment card details captured with tap or in-person payment.
|
|
11
|
+
class TransferTerminalCard
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# How the card information was entered into the point of sale terminal.
|
|
16
|
+
field :entry_mode, Crystalline::Nilable.new(Models::Components::TransferEntryMode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('entryMode'), 'decoder': Utils.enum_from_string(Models::Components::TransferEntryMode, true) } }
|
|
17
|
+
# The card brand.
|
|
18
|
+
field :brand, Crystalline::Nilable.new(Models::Components::CardBrand), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('brand'), 'decoder': Utils.enum_from_string(Models::Components::CardBrand, true) } }
|
|
19
|
+
|
|
20
|
+
field :bin, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bin') } }
|
|
21
|
+
# The type of the card.
|
|
22
|
+
field :card_type, Crystalline::Nilable.new(Models::Components::CardType), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cardType'), 'decoder': Utils.enum_from_string(Models::Components::CardType, true) } }
|
|
23
|
+
# The expiration date of the card or token.
|
|
24
|
+
field :expiration, Crystalline::Nilable.new(Models::Components::CardExpiration), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('expiration') } }
|
|
25
|
+
# Uniquely identifies a linked payment card or token.
|
|
26
|
+
# For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user's device.
|
|
27
|
+
# This field can be used to identify specific payment methods across multiple accounts on your platform.
|
|
28
|
+
field :fingerprint, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('fingerprint') } }
|
|
29
|
+
# The name of the cardholder as it appears on the card.
|
|
30
|
+
field :holder_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('holderName') } }
|
|
31
|
+
# Financial institution that issued the card.
|
|
32
|
+
field :issuer, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuer') } }
|
|
33
|
+
# Country where the card was issued.
|
|
34
|
+
field :issuer_country, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuerCountry') } }
|
|
35
|
+
# Last four digits of the card number
|
|
36
|
+
field :last_four_card_number, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourCardNumber') } }
|
|
37
|
+
# Identifier for the point of sale terminal application.
|
|
38
|
+
field :application_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applicationID') } }
|
|
39
|
+
# Name label for the point of sale terminal application.
|
|
40
|
+
field :application_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('applicationName') } }
|
|
41
|
+
|
|
42
|
+
sig { params(entry_mode: T.nilable(Models::Components::TransferEntryMode), brand: T.nilable(Models::Components::CardBrand), bin: T.nilable(::String), card_type: T.nilable(Models::Components::CardType), expiration: T.nilable(Models::Components::CardExpiration), fingerprint: T.nilable(::String), holder_name: T.nilable(::String), issuer: T.nilable(::String), issuer_country: T.nilable(::String), last_four_card_number: T.nilable(::String), application_id: T.nilable(::String), application_name: T.nilable(::String)).void }
|
|
43
|
+
def initialize(entry_mode: nil, brand: nil, bin: nil, card_type: nil, expiration: nil, fingerprint: nil, holder_name: nil, issuer: nil, issuer_country: nil, last_four_card_number: nil, application_id: nil, application_name: nil)
|
|
44
|
+
@entry_mode = entry_mode
|
|
45
|
+
@brand = brand
|
|
46
|
+
@bin = bin
|
|
47
|
+
@card_type = card_type
|
|
48
|
+
@expiration = expiration
|
|
49
|
+
@fingerprint = fingerprint
|
|
50
|
+
@holder_name = holder_name
|
|
51
|
+
@issuer = issuer
|
|
52
|
+
@issuer_country = issuer_country
|
|
53
|
+
@last_four_card_number = last_four_card_number
|
|
54
|
+
@application_id = application_id
|
|
55
|
+
@application_name = application_name
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
59
|
+
def ==(other)
|
|
60
|
+
return false unless other.is_a? self.class
|
|
61
|
+
return false unless @entry_mode == other.entry_mode
|
|
62
|
+
return false unless @brand == other.brand
|
|
63
|
+
return false unless @bin == other.bin
|
|
64
|
+
return false unless @card_type == other.card_type
|
|
65
|
+
return false unless @expiration == other.expiration
|
|
66
|
+
return false unless @fingerprint == other.fingerprint
|
|
67
|
+
return false unless @holder_name == other.holder_name
|
|
68
|
+
return false unless @issuer == other.issuer
|
|
69
|
+
return false unless @issuer_country == other.issuer_country
|
|
70
|
+
return false unless @last_four_card_number == other.last_four_card_number
|
|
71
|
+
return false unless @application_id == other.application_id
|
|
72
|
+
return false unless @application_name == other.application_name
|
|
73
|
+
true
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class Moov::Models::Components::TransferTerminalCard
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class Moov::Models::Components::TransferTerminalCard
|
|
11
|
+
def entry_mode(); end
|
|
12
|
+
def entry_mode=(str_); end
|
|
13
|
+
def brand(); end
|
|
14
|
+
def brand=(str_); end
|
|
15
|
+
def bin(); end
|
|
16
|
+
def bin=(str_); end
|
|
17
|
+
def card_type(); end
|
|
18
|
+
def card_type=(str_); end
|
|
19
|
+
def expiration(); end
|
|
20
|
+
def expiration=(str_); end
|
|
21
|
+
def fingerprint(); end
|
|
22
|
+
def fingerprint=(str_); end
|
|
23
|
+
def holder_name(); end
|
|
24
|
+
def holder_name=(str_); end
|
|
25
|
+
def issuer(); end
|
|
26
|
+
def issuer=(str_); end
|
|
27
|
+
def issuer_country(); end
|
|
28
|
+
def issuer_country=(str_); end
|
|
29
|
+
def last_four_card_number(); end
|
|
30
|
+
def last_four_card_number=(str_); end
|
|
31
|
+
def application_id(); end
|
|
32
|
+
def application_id=(str_); end
|
|
33
|
+
def application_name(); end
|
|
34
|
+
def application_name=(str_); end
|
|
35
|
+
end
|