moov_ruby 26.4.0.pre.dev.4 → 26.4.0.pre.dev.5

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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +3 -1
  3. data/lib/crystalline/module.rb +6 -2
  4. data/lib/crystalline/types.rb +52 -0
  5. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rb +40 -0
  6. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod.rbi +17 -0
  7. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rb +18 -0
  8. data/lib/moov/models/components/achcreditsamedaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
  9. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rb +40 -0
  10. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod.rbi +17 -0
  11. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  12. data/lib/moov/models/components/achcreditstandardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  13. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rb +40 -0
  14. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod.rbi +17 -0
  15. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rb +18 -0
  16. data/lib/moov/models/components/achdebitcollecttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  17. data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rb +40 -0
  18. data/lib/moov/models/components/achdebitfundtransferpaymentmethod.rbi +17 -0
  19. data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rb +18 -0
  20. data/lib/moov/models/components/achdebitfundtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  21. data/lib/moov/models/components/applepaytransferpaymentmethod.rb +40 -0
  22. data/lib/moov/models/components/applepaytransferpaymentmethod.rbi +17 -0
  23. data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rb +18 -0
  24. data/lib/moov/models/components/applepaytransferpaymentmethod_paymentmethodtype.rbi +11 -0
  25. data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rb +40 -0
  26. data/lib/moov/models/components/cardpaymenttransferpaymentmethod.rbi +17 -0
  27. data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
  28. data/lib/moov/models/components/cardpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  29. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rb +40 -0
  30. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod.rbi +17 -0
  31. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rb +18 -0
  32. data/lib/moov/models/components/cardpresentpaymenttransferpaymentmethod_paymentmethodtype.rbi +11 -0
  33. data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rb +40 -0
  34. data/lib/moov/models/components/instantbankcredittransferpaymentmethod.rbi +17 -0
  35. data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
  36. data/lib/moov/models/components/instantbankcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
  37. data/lib/moov/models/components/moovwallettransferpaymentmethod.rb +40 -0
  38. data/lib/moov/models/components/moovwallettransferpaymentmethod.rbi +17 -0
  39. data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rb +18 -0
  40. data/lib/moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rbi +11 -0
  41. data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rb +40 -0
  42. data/lib/moov/models/components/pullfromcardtransferpaymentmethod.rbi +17 -0
  43. data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  44. data/lib/moov/models/components/pullfromcardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  45. data/lib/moov/models/components/pushtocardtransferpaymentmethod.rb +40 -0
  46. data/lib/moov/models/components/pushtocardtransferpaymentmethod.rbi +17 -0
  47. data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rb +18 -0
  48. data/lib/moov/models/components/pushtocardtransferpaymentmethod_paymentmethodtype.rbi +11 -0
  49. data/lib/moov/models/components/rtpcredittransferpaymentmethod.rb +40 -0
  50. data/lib/moov/models/components/rtpcredittransferpaymentmethod.rbi +17 -0
  51. data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rb +18 -0
  52. data/lib/moov/models/components/rtpcredittransferpaymentmethod_paymentmethodtype.rbi +11 -0
  53. data/lib/moov/models/components/transferdestination.rb +5 -5
  54. data/lib/moov/models/components/transferentrymode.rb +18 -0
  55. data/lib/moov/models/components/transferentrymode.rbi +11 -0
  56. data/lib/moov/models/components/transferoptions.rb +3 -3
  57. data/lib/moov/models/components/transferpaymentmethod.rb +27 -0
  58. data/lib/moov/models/components/transferpaymentmethod.rbi +11 -0
  59. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +70 -0
  60. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +31 -0
  61. data/lib/moov/models/components/transferpaymentmethodscard.rb +98 -0
  62. data/lib/moov/models/components/transferpaymentmethodscard.rbi +45 -0
  63. data/lib/moov/models/components/transferpaymentmethodswallet.rb +42 -0
  64. data/lib/moov/models/components/transferpaymentmethodswallet.rbi +17 -0
  65. data/lib/moov/models/components/transferpaymentmethodtype.rb +29 -0
  66. data/lib/moov/models/components/transferpaymentmethodtype.rbi +11 -0
  67. data/lib/moov/models/components/transfersource.rb +6 -6
  68. data/lib/moov/models/components/transferterminalcard.rb +78 -0
  69. data/lib/moov/models/components/transferterminalcard.rbi +35 -0
  70. data/lib/moov/models/components.rb +31 -0
  71. data/lib/moov/sdkconfiguration.rb +3 -3
  72. metadata +64 -2
@@ -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
+ # A card used at point of sale terminal for a card present transaction as contained within a payment method.
11
+ class CardPresentPaymentTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, false) } }
19
+ # Describes payment card details captured with tap or in-person payment.
20
+ field :terminal_card, Crystalline::Nilable.new(Models::Components::TransferTerminalCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('terminalCard') } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType, terminal_card: T.nilable(Models::Components::TransferTerminalCard)).void }
23
+ def initialize(payment_method_id:, payment_method_type:, terminal_card: nil)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @terminal_card = terminal_card
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @terminal_card == other.terminal_card
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::CardPresentPaymentTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def terminal_card(); end
16
+ def terminal_card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 CardPresentPaymentTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ CARD_PRESENT_PAYMENT = new('card-present-payment')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::CardPresentPaymentTransferPaymentMethodPaymentMethodType
11
+ 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
+ # Instantly send funds to a bank account.
11
+ class InstantBankCreditTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A bank account as contained within a payment method.
20
+ field :bank_account, Models::Components::TransferPaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType, bank_account: Models::Components::TransferPaymentMethodsBankAccount).void }
23
+ def initialize(payment_method_id:, payment_method_type:, bank_account:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @bank_account = bank_account
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @bank_account == other.bank_account
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::InstantBankCreditTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def bank_account(); end
16
+ def bank_account=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 InstantBankCreditTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ INSTANT_BANK_CREDIT = new('instant-bank-credit')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::InstantBankCreditTransferPaymentMethodPaymentMethodType
11
+ 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
+
11
+ class MoovWalletTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, false) } }
19
+
20
+ field :wallet, Models::Components::TransferPaymentMethodsWallet, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType, wallet: Models::Components::TransferPaymentMethodsWallet).void }
23
+ def initialize(payment_method_id:, payment_method_type:, wallet:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @wallet = wallet
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @wallet == other.wallet
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::MoovWalletTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::MoovWalletTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def wallet(); end
16
+ def wallet=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 MoovWalletTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ MOOV_WALLET = new('moov-wallet')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::MoovWalletTransferPaymentMethodPaymentMethodType
11
+ 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
+
11
+ class PullFromCardTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A card as contained within a payment method.
20
+ field :card, Models::Components::TransferPaymentMethodsCard, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType, card: Models::Components::TransferPaymentMethodsCard).void }
23
+ def initialize(payment_method_id:, payment_method_type:, card:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @card = card
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @card == other.card
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::PullFromCardTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PullFromCardTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def card(); end
16
+ def card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 PullFromCardTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ PULL_FROM_CARD = new('pull-from-card')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PullFromCardTransferPaymentMethodPaymentMethodType
11
+ 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
+
11
+ class PushToCardTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A card as contained within a payment method.
20
+ field :card, Models::Components::TransferPaymentMethodsCard, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::PushToCardTransferPaymentMethodPaymentMethodType, card: Models::Components::TransferPaymentMethodsCard).void }
23
+ def initialize(payment_method_id:, payment_method_type:, card:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @card = card
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @card == other.card
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::PushToCardTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PushToCardTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def card(); end
16
+ def card=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 PushToCardTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ PUSH_TO_CARD = new('push-to-card')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::PushToCardTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::PushToCardTransferPaymentMethodPaymentMethodType
11
+ 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
+
11
+ class RtpCreditTransferPaymentMethod
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # ID of the payment method.
16
+ field :payment_method_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodID'), required: true } }
17
+
18
+ field :payment_method_type, Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, false) } }
19
+ # A bank account as contained within a payment method.
20
+ field :bank_account, Models::Components::TransferPaymentMethodsBankAccount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount'), required: true } }
21
+
22
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType, bank_account: Models::Components::TransferPaymentMethodsBankAccount).void }
23
+ def initialize(payment_method_id:, payment_method_type:, bank_account:)
24
+ @payment_method_id = payment_method_id
25
+ @payment_method_type = payment_method_type
26
+ @bank_account = bank_account
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 @payment_method_id == other.payment_method_id
33
+ return false unless @payment_method_type == other.payment_method_type
34
+ return false unless @bank_account == other.bank_account
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::RtpCreditTransferPaymentMethod
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::RtpCreditTransferPaymentMethod
11
+ def payment_method_id(); end
12
+ def payment_method_id=(str_); end
13
+ def payment_method_type(); end
14
+ def payment_method_type=(str_); end
15
+ def bank_account(); end
16
+ def bank_account=(str_); end
17
+ end
@@ -0,0 +1,18 @@
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 RtpCreditTransferPaymentMethodPaymentMethodType < T::Enum
12
+ enums do
13
+ RTP_CREDIT = new('rtp-credit')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::RtpCreditTransferPaymentMethodPaymentMethodType
11
+ end
@@ -15,15 +15,15 @@ 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::PaymentMethodType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('paymentMethodType'), required: true, 'decoder': Utils.enum_from_string(Models::Components::PaymentMethodType, false) } }
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
  # A bank account as contained within a payment method.
22
- field :bank_account, Crystalline::Nilable.new(Models::Components::PaymentMethodsBankAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount') } }
22
+ field :bank_account, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsBankAccount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('bankAccount') } }
23
23
 
24
- field :wallet, Crystalline::Nilable.new(Models::Components::PaymentMethodsWallet), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet') } }
24
+ field :wallet, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsWallet), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('wallet') } }
25
25
  # A card as contained within a payment method.
26
- field :card, Crystalline::Nilable.new(Models::Components::PaymentMethodsCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card') } }
26
+ field :card, Crystalline::Nilable.new(Models::Components::TransferPaymentMethodsCard), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('card') } }
27
27
  # ACH specific details about the transaction.
28
28
  field :ach_details, Crystalline::Nilable.new(Models::Components::ACHTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('achDetails') } }
29
29
  # Describes an Apple Pay token on a Moov account.
@@ -33,7 +33,7 @@ module Moov
33
33
  # RTP specific details about the transaction.
34
34
  field :rtp_details, Crystalline::Nilable.new(Models::Components::RTPTransactionDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('rtpDetails') } }
35
35
 
36
- sig { params(payment_method_id: ::String, payment_method_type: Models::Components::PaymentMethodType, account: Models::Components::TransferAccount, bank_account: T.nilable(Models::Components::PaymentMethodsBankAccount), wallet: T.nilable(Models::Components::PaymentMethodsWallet), card: T.nilable(Models::Components::PaymentMethodsCard), ach_details: T.nilable(Models::Components::ACHTransactionDetails), apple_pay: T.nilable(Models::Components::ApplePayResponse), card_details: T.nilable(Models::Components::CardTransactionDetails), rtp_details: T.nilable(Models::Components::RTPTransactionDetails)).void }
36
+ sig { params(payment_method_id: ::String, payment_method_type: Models::Components::TransferPaymentMethodType, account: Models::Components::TransferAccount, bank_account: T.nilable(Models::Components::TransferPaymentMethodsBankAccount), wallet: T.nilable(Models::Components::TransferPaymentMethodsWallet), card: T.nilable(Models::Components::TransferPaymentMethodsCard), ach_details: T.nilable(Models::Components::ACHTransactionDetails), apple_pay: T.nilable(Models::Components::ApplePayResponse), card_details: T.nilable(Models::Components::CardTransactionDetails), rtp_details: T.nilable(Models::Components::RTPTransactionDetails)).void }
37
37
  def initialize(payment_method_id:, payment_method_type:, account:, bank_account: nil, wallet: nil, card: nil, ach_details: nil, apple_pay: nil, card_details: nil, rtp_details: nil)
38
38
  @payment_method_id = payment_method_id
39
39
  @payment_method_type = payment_method_type
@@ -0,0 +1,18 @@
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
+ # TransferEntryMode - How the card information was entered into the point of sale terminal.
11
+ class TransferEntryMode < T::Enum
12
+ enums do
13
+ CONTACTLESS = new('contactless')
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEntryMode
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEntryMode
11
+ end
@@ -13,11 +13,11 @@ module Moov
13
13
  include Crystalline::MetadataFields
14
14
 
15
15
 
16
- field :source_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletPaymentMethod, Models::Components::AchDebitFundPaymentMethod, Models::Components::AchDebitCollectPaymentMethod, Models::Components::AchCreditStandardPaymentMethod, Models::Components::AchCreditSameDayPaymentMethod, Models::Components::RtpCreditPaymentMethod, Models::Components::CardPaymentPaymentMethod, Models::Components::PushToCardPaymentMethod, Models::Components::PullFromCardPaymentMethod, Models::Components::ApplePayPaymentMethod, Models::Components::CardPresentPaymentPaymentMethod, Models::Components::InstantBankCreditPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sourceOptions') } }
16
+ field :source_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sourceOptions') } }
17
17
 
18
- field :destination_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletPaymentMethod, Models::Components::AchDebitFundPaymentMethod, Models::Components::AchDebitCollectPaymentMethod, Models::Components::AchCreditStandardPaymentMethod, Models::Components::AchCreditSameDayPaymentMethod, Models::Components::RtpCreditPaymentMethod, Models::Components::CardPaymentPaymentMethod, Models::Components::PushToCardPaymentMethod, Models::Components::PullFromCardPaymentMethod, Models::Components::ApplePayPaymentMethod, Models::Components::CardPresentPaymentPaymentMethod, Models::Components::InstantBankCreditPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationOptions') } }
18
+ field :destination_options, Crystalline::Nilable.new(Crystalline::Array.new(Crystalline::Union.new(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod))), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('destinationOptions') } }
19
19
 
20
- sig { params(source_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletPaymentMethod, Models::Components::AchDebitFundPaymentMethod, Models::Components::AchDebitCollectPaymentMethod, Models::Components::AchCreditStandardPaymentMethod, Models::Components::AchCreditSameDayPaymentMethod, Models::Components::RtpCreditPaymentMethod, Models::Components::CardPaymentPaymentMethod, Models::Components::PushToCardPaymentMethod, Models::Components::PullFromCardPaymentMethod, Models::Components::ApplePayPaymentMethod, Models::Components::CardPresentPaymentPaymentMethod, Models::Components::InstantBankCreditPaymentMethod)]), destination_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletPaymentMethod, Models::Components::AchDebitFundPaymentMethod, Models::Components::AchDebitCollectPaymentMethod, Models::Components::AchCreditStandardPaymentMethod, Models::Components::AchCreditSameDayPaymentMethod, Models::Components::RtpCreditPaymentMethod, Models::Components::CardPaymentPaymentMethod, Models::Components::PushToCardPaymentMethod, Models::Components::PullFromCardPaymentMethod, Models::Components::ApplePayPaymentMethod, Models::Components::CardPresentPaymentPaymentMethod, Models::Components::InstantBankCreditPaymentMethod)])).void }
20
+ sig { params(source_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod)]), destination_options: T.nilable(T::Array[T.any(Models::Components::MoovWalletTransferPaymentMethod, Models::Components::AchDebitFundTransferPaymentMethod, Models::Components::AchDebitCollectTransferPaymentMethod, Models::Components::AchCreditStandardTransferPaymentMethod, Models::Components::AchCreditSameDayTransferPaymentMethod, Models::Components::RtpCreditTransferPaymentMethod, Models::Components::CardPaymentTransferPaymentMethod, Models::Components::PushToCardTransferPaymentMethod, Models::Components::PullFromCardTransferPaymentMethod, Models::Components::ApplePayTransferPaymentMethod, Models::Components::CardPresentPaymentTransferPaymentMethod, Models::Components::InstantBankCreditTransferPaymentMethod)])).void }
21
21
  def initialize(source_options: nil, destination_options: nil)
22
22
  @source_options = source_options
23
23
  @destination_options = destination_options