moov_ruby 0.0.0.pre.dev.29 → 0.0.0.pre.dev.31

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 (124) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/card_issuing.rb +538 -0
  3. data/lib/moov/files.rb +186 -0
  4. data/lib/moov/issuing_transactions.rb +123 -0
  5. data/lib/moov/models/components/applicationscope.rb +1 -0
  6. data/lib/moov/models/components/authorizationsimulationasyncresponse.rb +32 -0
  7. data/lib/moov/models/components/authorizationsimulationasyncresponse.rbi +13 -0
  8. data/lib/moov/models/components/authtokenrequest.rb +6 -2
  9. data/lib/moov/models/components/authtokenrequest.rbi +2 -0
  10. data/lib/moov/models/components/bankaccount.rb +7 -2
  11. data/lib/moov/models/components/bankaccount.rbi +2 -0
  12. data/lib/moov/models/components/bankaccountpayload.rb +7 -2
  13. data/lib/moov/models/components/bankaccountpayload.rbi +2 -0
  14. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +6 -2
  15. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +2 -0
  16. data/lib/moov/models/components/createauthorizationsimulation.rb +40 -0
  17. data/lib/moov/models/components/createauthorizationsimulation.rbi +17 -0
  18. data/lib/moov/models/components/createclearingsimulation.rb +32 -0
  19. data/lib/moov/models/components/createclearingsimulation.rbi +13 -0
  20. data/lib/moov/models/components/createdtransfer.rb +2 -1
  21. data/lib/moov/models/components/createinvoice.rb +6 -2
  22. data/lib/moov/models/components/createinvoice.rbi +2 -0
  23. data/lib/moov/models/components/disbursementpaymentmethodtype.rb +1 -0
  24. data/lib/moov/models/components/incurredfee.rb +6 -2
  25. data/lib/moov/models/components/incurredfee.rbi +2 -0
  26. data/lib/moov/models/components/issuedcardactivity.rb +78 -0
  27. data/lib/moov/models/components/issuedcardactivity.rbi +33 -0
  28. data/lib/moov/models/components/issuedcardauthorization.rb +7 -2
  29. data/lib/moov/models/components/issuedcardauthorization.rbi +2 -0
  30. data/lib/moov/models/components/issuedcardauthorizationevent.rb +7 -2
  31. data/lib/moov/models/components/issuedcardauthorizationevent.rbi +2 -0
  32. data/lib/moov/models/components/issuingdeclinereason.rb +35 -0
  33. data/lib/moov/models/components/issuingdeclinereason.rbi +11 -0
  34. data/lib/moov/models/components/issuingmerchantdatavalidationerror.rb +56 -0
  35. data/lib/moov/models/components/issuingmerchantdatavalidationerror.rbi +25 -0
  36. data/lib/moov/models/components/oauth2clienttype.rb +23 -0
  37. data/lib/moov/models/components/oauth2clienttype.rbi +11 -0
  38. data/lib/moov/models/components/paymentmethodsbankaccount.rb +7 -2
  39. data/lib/moov/models/components/paymentmethodsbankaccount.rbi +2 -0
  40. data/lib/moov/models/components/product.rb +6 -2
  41. data/lib/moov/models/components/product.rbi +2 -0
  42. data/lib/moov/models/components/productrequest.rb +6 -2
  43. data/lib/moov/models/components/productrequest.rbi +2 -0
  44. data/lib/moov/models/components/riskverificationoutcome.rb +23 -0
  45. data/lib/moov/models/components/riskverificationoutcome.rbi +11 -0
  46. data/lib/moov/models/components/transfer.rb +2 -1
  47. data/lib/moov/models/components/transferauthorization.rb +9 -2
  48. data/lib/moov/models/components/transferauthorization.rbi +2 -0
  49. data/lib/moov/models/components/transferevent.rb +48 -0
  50. data/lib/moov/models/components/transferevent.rbi +21 -0
  51. data/lib/moov/models/components/transfereventachdetails.rb +40 -0
  52. data/lib/moov/models/components/transfereventachdetails.rbi +17 -0
  53. data/lib/moov/models/components/transfereventauthorizationdetails.rb +40 -0
  54. data/lib/moov/models/components/transfereventauthorizationdetails.rbi +17 -0
  55. data/lib/moov/models/components/transfereventauthorizationstatus.rb +22 -0
  56. data/lib/moov/models/components/transfereventauthorizationstatus.rbi +11 -0
  57. data/lib/moov/models/components/transfereventcancellationdetails.rb +36 -0
  58. data/lib/moov/models/components/transfereventcancellationdetails.rbi +15 -0
  59. data/lib/moov/models/components/transfereventcapturedetails.rb +40 -0
  60. data/lib/moov/models/components/transfereventcapturedetails.rbi +17 -0
  61. data/lib/moov/models/components/transfereventcardpaymentdetails.rb +36 -0
  62. data/lib/moov/models/components/transfereventcardpaymentdetails.rbi +15 -0
  63. data/lib/moov/models/components/transfereventdetails.rb +88 -0
  64. data/lib/moov/models/components/transfereventdetails.rbi +41 -0
  65. data/lib/moov/models/components/transfereventdisputedetails.rb +46 -0
  66. data/lib/moov/models/components/transfereventdisputedetails.rbi +19 -0
  67. data/lib/moov/models/components/transfereventinstantbankcreditdetails.rb +36 -0
  68. data/lib/moov/models/components/transfereventinstantbankcreditdetails.rbi +15 -0
  69. data/lib/moov/models/components/transfereventpullfromcarddetails.rb +36 -0
  70. data/lib/moov/models/components/transfereventpullfromcarddetails.rbi +15 -0
  71. data/lib/moov/models/components/transfereventpushtocarddetails.rb +36 -0
  72. data/lib/moov/models/components/transfereventpushtocarddetails.rbi +15 -0
  73. data/lib/moov/models/components/transfereventrefunddetails.rb +44 -0
  74. data/lib/moov/models/components/transfereventrefunddetails.rbi +19 -0
  75. data/lib/moov/models/components/transfereventtransferdetails.rb +32 -0
  76. data/lib/moov/models/components/transfereventtransferdetails.rbi +13 -0
  77. data/lib/moov/models/components/transfereventtype.rb +34 -0
  78. data/lib/moov/models/components/transfereventtype.rbi +11 -0
  79. data/lib/moov/models/components/transfereventwallettransactiondetails.rb +48 -0
  80. data/lib/moov/models/components/transfereventwallettransactiondetails.rbi +21 -0
  81. data/lib/moov/models/components/transfereventwirecreditdetails.rb +36 -0
  82. data/lib/moov/models/components/transfereventwirecreditdetails.rbi +15 -0
  83. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rb +7 -2
  84. data/lib/moov/models/components/transferpaymentmethodsbankaccount.rbi +2 -0
  85. data/lib/moov/models/components/webhookdatatransferstatus.rb +1 -0
  86. data/lib/moov/models/components.rb +25 -0
  87. data/lib/moov/models/errors/authorizationsimulationvalidationerror.rb +44 -0
  88. data/lib/moov/models/errors/authorizationsimulationvalidationerror.rbi +19 -0
  89. data/lib/moov/models/errors/clearingsimulationvalidationerror.rb +36 -0
  90. data/lib/moov/models/errors/clearingsimulationvalidationerror.rbi +15 -0
  91. data/lib/moov/models/errors/createinvoiceerror.rb +6 -2
  92. data/lib/moov/models/errors/createinvoiceerror.rbi +2 -0
  93. data/lib/moov/models/errors/transfer_error.rb +2 -1
  94. data/lib/moov/models/errors.rb +2 -0
  95. data/lib/moov/models/operations/createauthorizationsimulation_request.rb +36 -0
  96. data/lib/moov/models/operations/createauthorizationsimulation_request.rbi +15 -0
  97. data/lib/moov/models/operations/createauthorizationsimulation_response.rb +52 -0
  98. data/lib/moov/models/operations/createauthorizationsimulation_response.rbi +23 -0
  99. data/lib/moov/models/operations/createclearingsimulation_request.rb +40 -0
  100. data/lib/moov/models/operations/createclearingsimulation_request.rbi +17 -0
  101. data/lib/moov/models/operations/createclearingsimulation_response.rb +52 -0
  102. data/lib/moov/models/operations/createclearingsimulation_response.rbi +23 -0
  103. data/lib/moov/models/operations/createreversalsimulation_request.rb +36 -0
  104. data/lib/moov/models/operations/createreversalsimulation_request.rbi +15 -0
  105. data/lib/moov/models/operations/createreversalsimulation_response.rb +52 -0
  106. data/lib/moov/models/operations/createreversalsimulation_response.rbi +23 -0
  107. data/lib/moov/models/operations/downloadfile_request.rb +36 -0
  108. data/lib/moov/models/operations/downloadfile_request.rbi +15 -0
  109. data/lib/moov/models/operations/downloadfile_response.rb +64 -0
  110. data/lib/moov/models/operations/downloadfile_response.rbi +29 -0
  111. data/lib/moov/models/operations/listissuedcardactivity_request.rb +60 -0
  112. data/lib/moov/models/operations/listissuedcardactivity_request.rbi +27 -0
  113. data/lib/moov/models/operations/listissuedcardactivity_response.rb +48 -0
  114. data/lib/moov/models/operations/listissuedcardactivity_response.rbi +21 -0
  115. data/lib/moov/models/operations/listtransferevents_request.rb +36 -0
  116. data/lib/moov/models/operations/listtransferevents_request.rbi +15 -0
  117. data/lib/moov/models/operations/listtransferevents_response.rb +48 -0
  118. data/lib/moov/models/operations/listtransferevents_response.rbi +21 -0
  119. data/lib/moov/models/operations/listtransfers_request.rb +6 -2
  120. data/lib/moov/models/operations/listtransfers_request.rbi +2 -0
  121. data/lib/moov/models/operations.rb +12 -0
  122. data/lib/moov/sdkconfiguration.rb +3 -3
  123. data/lib/moov/transfers.rb +125 -0
  124. metadata +80 -2
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventInstantBankCreditDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Status of a transaction within the instant-bank lifecycle.
16
+ field :status, Models::Components::InstantBankTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankTransactionStatus, false) } }
17
+ # Status codes for instant-bank failures.
18
+ field :failure_code, Crystalline::Nilable.new(Models::Components::InstantBankFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::InstantBankFailureCode, true) } }
19
+
20
+ sig { params(status: Models::Components::InstantBankTransactionStatus, failure_code: T.nilable(Models::Components::InstantBankFailureCode)).void }
21
+ def initialize(status:, failure_code: nil)
22
+ @status = status
23
+ @failure_code = failure_code
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @status == other.status
30
+ return false unless @failure_code == other.failure_code
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventInstantBankCreditDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventInstantBankCreditDetails
11
+ def status(); end
12
+ def status=(str_); end
13
+ def failure_code(); end
14
+ def failure_code=(str_); end
15
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventPullFromCardDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Status of a pull-from-card transaction.
16
+ field :status, Models::Components::PullFromCardTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PullFromCardTransactionStatus, false) } }
17
+
18
+ field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
19
+
20
+ sig { params(status: Models::Components::PullFromCardTransactionStatus, failure_code: T.nilable(Models::Components::CardTransactionFailureCode)).void }
21
+ def initialize(status:, failure_code: nil)
22
+ @status = status
23
+ @failure_code = failure_code
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @status == other.status
30
+ return false unless @failure_code == other.failure_code
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventPullFromCardDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventPullFromCardDetails
11
+ def status(); end
12
+ def status=(str_); end
13
+ def failure_code(); end
14
+ def failure_code=(str_); end
15
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventPushToCardDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Status of a push-to-card transaction.
16
+ field :status, Models::Components::PushToCardTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::PushToCardTransactionStatus, false) } }
17
+
18
+ field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
19
+
20
+ sig { params(status: Models::Components::PushToCardTransactionStatus, failure_code: T.nilable(Models::Components::CardTransactionFailureCode)).void }
21
+ def initialize(status:, failure_code: nil)
22
+ @status = status
23
+ @failure_code = failure_code
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @status == other.status
30
+ return false unless @failure_code == other.failure_code
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventPushToCardDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventPushToCardDetails
11
+ def status(); end
12
+ def status=(str_); end
13
+ def failure_code(); end
14
+ def failure_code=(str_); end
15
+ end
@@ -0,0 +1,44 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventRefundDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
16
+ field :refund_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundID'), required: true } }
17
+
18
+ field :status, Models::Components::RefundStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RefundStatus, false) } }
19
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
20
+ field :capture_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('captureID') } }
21
+
22
+ field :failure_code, Crystalline::Nilable.new(Models::Components::CardTransactionFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::CardTransactionFailureCode, true) } }
23
+
24
+ sig { params(refund_id: ::String, status: Models::Components::RefundStatus, capture_id: T.nilable(::String), failure_code: T.nilable(Models::Components::CardTransactionFailureCode)).void }
25
+ def initialize(refund_id:, status:, capture_id: nil, failure_code: nil)
26
+ @refund_id = refund_id
27
+ @status = status
28
+ @capture_id = capture_id
29
+ @failure_code = failure_code
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @refund_id == other.refund_id
36
+ return false unless @status == other.status
37
+ return false unless @capture_id == other.capture_id
38
+ return false unless @failure_code == other.failure_code
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventRefundDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventRefundDetails
11
+ def refund_id(); end
12
+ def refund_id=(str_); end
13
+ def status(); end
14
+ def status=(str_); end
15
+ def capture_id(); end
16
+ def capture_id=(str_); end
17
+ def failure_code(); end
18
+ def failure_code=(str_); end
19
+ end
@@ -0,0 +1,32 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventTransferDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Status of a transfer.
16
+ field :status, Models::Components::TransferStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::TransferStatus, false) } }
17
+
18
+ sig { params(status: Models::Components::TransferStatus).void }
19
+ def initialize(status:)
20
+ @status = status
21
+ end
22
+
23
+ sig { params(other: T.untyped).returns(T::Boolean) }
24
+ def ==(other)
25
+ return false unless other.is_a? self.class
26
+ return false unless @status == other.status
27
+ true
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventTransferDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventTransferDetails
11
+ def status(); end
12
+ def status=(str_); end
13
+ end
@@ -0,0 +1,34 @@
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
+ # TransferEventType - The event family.
11
+ class TransferEventType
12
+ include ::Crystalline::Enum
13
+ enums do
14
+ TRANSFER = new('transfer')
15
+ AUTHORIZATION = new('authorization')
16
+ CAPTURE = new('capture')
17
+ REFUND = new('refund')
18
+ CANCELLATION = new('cancellation')
19
+ DISPUTE = new('dispute')
20
+ ACH_CREDIT = new('ach-credit')
21
+ ACH_DEBIT = new('ach-debit')
22
+ INSTANT_BANK_CREDIT = new('instant-bank-credit')
23
+ WIRE_CREDIT = new('wire-credit')
24
+ CARD_PAYMENT = new('card-payment')
25
+ PUSH_TO_CARD = new('push-to-card')
26
+ PULL_FROM_CARD = new('pull-from-card')
27
+ WALLET_CREDIT = new('wallet-credit')
28
+ WALLET_DEBIT = new('wallet-debit')
29
+ end
30
+ open!
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventType
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventType
11
+ end
@@ -0,0 +1,48 @@
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 TransferEventWalletTransactionDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
16
+ field :account_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('accountID'), required: true } }
17
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
18
+ field :wallet_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('walletID'), required: true } }
19
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
20
+ field :transaction_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transactionID'), required: true } }
21
+
22
+ field :transaction_type, Models::Components::WalletTransactionType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transactionType'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WalletTransactionType, false) } }
23
+ # A unique identifier for a Moov resource. Supports UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx) or typed format with base32-encoded UUID and type suffix (e.g., kuoaydiojf7uszaokc2ggnaaaa_xfer).
24
+ field :capture_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('captureID') } }
25
+
26
+ sig { params(account_id: ::String, wallet_id: ::String, transaction_id: ::String, transaction_type: Models::Components::WalletTransactionType, capture_id: T.nilable(::String)).void }
27
+ def initialize(account_id:, wallet_id:, transaction_id:, transaction_type:, capture_id: nil)
28
+ @account_id = account_id
29
+ @wallet_id = wallet_id
30
+ @transaction_id = transaction_id
31
+ @transaction_type = transaction_type
32
+ @capture_id = capture_id
33
+ end
34
+
35
+ sig { params(other: T.untyped).returns(T::Boolean) }
36
+ def ==(other)
37
+ return false unless other.is_a? self.class
38
+ return false unless @account_id == other.account_id
39
+ return false unless @wallet_id == other.wallet_id
40
+ return false unless @transaction_id == other.transaction_id
41
+ return false unless @transaction_type == other.transaction_type
42
+ return false unless @capture_id == other.capture_id
43
+ true
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,21 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventWalletTransactionDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventWalletTransactionDetails
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def wallet_id(); end
14
+ def wallet_id=(str_); end
15
+ def transaction_id(); end
16
+ def transaction_id=(str_); end
17
+ def transaction_type(); end
18
+ def transaction_type=(str_); end
19
+ def capture_id(); end
20
+ def capture_id=(str_); end
21
+ end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Components
10
+
11
+ class TransferEventWireCreditDetails
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Status of a transaction within the wire lifecycle.
16
+ field :status, Models::Components::WireTransactionStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WireTransactionStatus, false) } }
17
+ # Status codes for wire failures.
18
+ field :failure_code, Crystalline::Nilable.new(Models::Components::WireFailureCode), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('failureCode'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::WireFailureCode, true) } }
19
+
20
+ sig { params(status: Models::Components::WireTransactionStatus, failure_code: T.nilable(Models::Components::WireFailureCode)).void }
21
+ def initialize(status:, failure_code: nil)
22
+ @status = status
23
+ @failure_code = failure_code
24
+ end
25
+
26
+ sig { params(other: T.untyped).returns(T::Boolean) }
27
+ def ==(other)
28
+ return false unless other.is_a? self.class
29
+ return false unless @status == other.status
30
+ return false unless @failure_code == other.failure_code
31
+ true
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Components::TransferEventWireCreditDetails
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Components::TransferEventWireCreditDetails
11
+ def status(); end
12
+ def status=(str_); end
13
+ def failure_code(); end
14
+ def failure_code=(str_); end
15
+ end
@@ -34,9 +34,12 @@ module Moov
34
34
  field :last_four_account_number, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('lastFourAccountNumber'), required: true } }
35
35
 
36
36
  field :updated_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('updatedOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
37
+ # The outcome of a requested risk-verification attempt. `notAttempted` when
38
+ # `requestRiskVerification` was not set, or the calling account was not allowlisted.
39
+ field :risk_verification_outcome, Crystalline::Nilable.new(Models::Components::RiskVerificationOutcome), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('riskVerificationOutcome'), 'decoder': ::Moov::Utils.open_enum_from_string(Models::Components::RiskVerificationOutcome, true) } }
37
40
 
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:)
41
+ 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, risk_verification_outcome: T.nilable(Models::Components::RiskVerificationOutcome)).void }
42
+ def initialize(bank_account_id:, fingerprint:, status:, holder_name:, holder_type:, bank_name:, bank_account_type:, routing_number:, last_four_account_number:, updated_on:, risk_verification_outcome: nil)
40
43
  @bank_account_id = bank_account_id
41
44
  @fingerprint = fingerprint
42
45
  @status = status
@@ -47,6 +50,7 @@ module Moov
47
50
  @routing_number = routing_number
48
51
  @last_four_account_number = last_four_account_number
49
52
  @updated_on = updated_on
53
+ @risk_verification_outcome = risk_verification_outcome
50
54
  end
51
55
 
52
56
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -62,6 +66,7 @@ module Moov
62
66
  return false unless @routing_number == other.routing_number
63
67
  return false unless @last_four_account_number == other.last_four_account_number
64
68
  return false unless @updated_on == other.updated_on
69
+ return false unless @risk_verification_outcome == other.risk_verification_outcome
65
70
  true
66
71
  end
67
72
  end
@@ -28,4 +28,6 @@ class Moov::Models::Components::TransferPaymentMethodsBankAccount
28
28
  def last_four_account_number=(str_); end
29
29
  def updated_on(); end
30
30
  def updated_on=(str_); end
31
+ def risk_verification_outcome(); end
32
+ def risk_verification_outcome=(str_); end
31
33
  end
@@ -27,6 +27,7 @@ module Moov
27
27
  SOURCE_SETTLED = new('source.settled')
28
28
  SOURCE_FAILED = new('source.failed')
29
29
  SOURCE_CANCELED = new('source.canceled')
30
+ SOURCE_CLEARED_EXTERNALLY = new('source.cleared-externally')
30
31
  DESTINATION_COMPLETED = new('destination.completed')
31
32
  DESTINATION_CORRECTED = new('destination.corrected')
32
33
  DESTINATION_INITIATED = new('destination.initiated')
@@ -78,6 +78,7 @@ module Moov
78
78
  autoload :AsyncTransfer, 'moov/models/components/asynctransfer.rb'
79
79
  autoload :AuthToken, 'moov/models/components/authtoken.rb'
80
80
  autoload :AuthTokenRequest, 'moov/models/components/authtokenrequest.rb'
81
+ autoload :AuthorizationSimulationAsyncResponse, 'moov/models/components/authorizationsimulationasyncresponse.rb'
81
82
  autoload :AvatarUploadRequest, 'moov/models/components/avataruploadrequest.rb'
82
83
  autoload :AvatarUploadRequestFile, 'moov/models/components/avataruploadrequest_file.rb'
83
84
  autoload :BankAccount, 'moov/models/components/bankaccount.rb'
@@ -186,6 +187,7 @@ module Moov
186
187
  autoload :CreateAccountSettings, 'moov/models/components/createaccountsettings.rb'
187
188
  autoload :CreateAccountType, 'moov/models/components/createaccounttype.rb'
188
189
  autoload :CreateApplePaySession, 'moov/models/components/createapplepaysession.rb'
190
+ autoload :CreateAuthorizationSimulation, 'moov/models/components/createauthorizationsimulation.rb'
189
191
  autoload :CreateBankAccountAttestation, 'moov/models/components/createbankaccountattestation.rb'
190
192
  autoload :CreateBusinessError, 'moov/models/components/createbusinesserror.rb'
191
193
  autoload :CreateBusinessErrorEin, 'moov/models/components/createbusinesserror_ein.rb'
@@ -194,6 +196,7 @@ module Moov
194
196
  autoload :CreateBusinessProfile, 'moov/models/components/createbusinessprofile.rb'
195
197
  autoload :CreateCancellation, 'moov/models/components/createcancellation.rb'
196
198
  autoload :CreateCapture, 'moov/models/components/createcapture.rb'
199
+ autoload :CreateClearingSimulation, 'moov/models/components/createclearingsimulation.rb'
197
200
  autoload :CreateEvidenceFileMultiPart, 'moov/models/components/createevidencefilemultipart.rb'
198
201
  autoload :CreateEvidenceFileMultiPartFile, 'moov/models/components/createevidencefilemultipart_file.rb'
199
202
  autoload :CreateEvidenceText, 'moov/models/components/createevidencetext.rb'
@@ -376,6 +379,7 @@ module Moov
376
379
  autoload :InvoiceStatus, 'moov/models/components/invoicestatus.rb'
377
380
  autoload :InvoiceTransferPayment, 'moov/models/components/invoicetransferpayment.rb'
378
381
  autoload :IssuedCard, 'moov/models/components/issuedcard.rb'
382
+ autoload :IssuedCardActivity, 'moov/models/components/issuedcardactivity.rb'
379
383
  autoload :IssuedCardAuthorization, 'moov/models/components/issuedcardauthorization.rb'
380
384
  autoload :IssuedCardAuthorizationEvent, 'moov/models/components/issuedcardauthorizationevent.rb'
381
385
  autoload :IssuedCardAuthorizationEventResult, 'moov/models/components/issuedcardauthorizationeventresult.rb'
@@ -391,9 +395,11 @@ module Moov
391
395
  autoload :IssuingControlsError, 'moov/models/components/issuingcontrolserror.rb'
392
396
  autoload :IssuingControlsRestrictionMode, 'moov/models/components/issuingcontrolsrestrictionmode.rb'
393
397
  autoload :IssuingControlsAllowedSchedule, 'moov/models/components/issuingcontrols_allowedschedule.rb'
398
+ autoload :IssuingDeclineReason, 'moov/models/components/issuingdeclinereason.rb'
394
399
  autoload :IssuingIntervalLimit, 'moov/models/components/issuingintervallimit.rb'
395
400
  autoload :IssuingMerchantCategory, 'moov/models/components/issuingmerchantcategory.rb'
396
401
  autoload :IssuingMerchantData, 'moov/models/components/issuingmerchantdata.rb'
402
+ autoload :IssuingMerchantDataValidationError, 'moov/models/components/issuingmerchantdatavalidationerror.rb'
397
403
  autoload :IssuingScheduleDay, 'moov/models/components/issuingscheduleday.rb'
398
404
  autoload :IssuingVelocityLimit, 'moov/models/components/issuingvelocitylimit.rb'
399
405
  autoload :IssuingVelocityLimitError, 'moov/models/components/issuingvelocitylimiterror.rb'
@@ -440,6 +446,7 @@ module Moov
440
446
  autoload :MoovWalletTransferPaymentMethod, 'moov/models/components/moovwallettransferpaymentmethod.rb'
441
447
  autoload :MoovWalletTransferPaymentMethodPaymentMethodType, 'moov/models/components/moovwallettransferpaymentmethod_paymentmethodtype.rb'
442
448
  autoload :MxPayload, 'moov/models/components/mxpayload.rb'
449
+ autoload :OAuth2ClientType, 'moov/models/components/oauth2clienttype.rb'
443
450
  autoload :Occurrence, 'moov/models/components/occurrence.rb'
444
451
  autoload :OccurrenceStatus, 'moov/models/components/occurrencestatus.rb'
445
452
  autoload :OccurrencesResponse, 'moov/models/components/occurrencesresponse.rb'
@@ -576,6 +583,7 @@ module Moov
576
583
  autoload :ReversedWithCancellation, 'moov/models/components/reversedwithcancellation.rb'
577
584
  autoload :ReversedWithRefund, 'moov/models/components/reversedwithrefund.rb'
578
585
  autoload :RevokeTokenRequest, 'moov/models/components/revoketokenrequest.rb'
586
+ autoload :RiskVerificationOutcome, 'moov/models/components/riskverificationoutcome.rb'
579
587
  autoload :RtpCreditPaymentMethod, 'moov/models/components/rtpcreditpaymentmethod.rb'
580
588
  autoload :RtpCreditPaymentMethodPaymentMethodType, 'moov/models/components/rtpcreditpaymentmethod_paymentmethodtype.rb'
581
589
  autoload :RtpCreditTransferPaymentMethod, 'moov/models/components/rtpcredittransferpaymentmethod.rb'
@@ -651,6 +659,23 @@ module Moov
651
659
  autoload :TransferControls, 'moov/models/components/transfercontrols.rb'
652
660
  autoload :TransferDestination, 'moov/models/components/transferdestination.rb'
653
661
  autoload :TransferEntryMode, 'moov/models/components/transferentrymode.rb'
662
+ autoload :TransferEvent, 'moov/models/components/transferevent.rb'
663
+ autoload :TransferEventACHDetails, 'moov/models/components/transfereventachdetails.rb'
664
+ autoload :TransferEventAuthorizationDetails, 'moov/models/components/transfereventauthorizationdetails.rb'
665
+ autoload :TransferEventAuthorizationStatus, 'moov/models/components/transfereventauthorizationstatus.rb'
666
+ autoload :TransferEventCancellationDetails, 'moov/models/components/transfereventcancellationdetails.rb'
667
+ autoload :TransferEventCaptureDetails, 'moov/models/components/transfereventcapturedetails.rb'
668
+ autoload :TransferEventCardPaymentDetails, 'moov/models/components/transfereventcardpaymentdetails.rb'
669
+ autoload :TransferEventDetails, 'moov/models/components/transfereventdetails.rb'
670
+ autoload :TransferEventDisputeDetails, 'moov/models/components/transfereventdisputedetails.rb'
671
+ autoload :TransferEventInstantBankCreditDetails, 'moov/models/components/transfereventinstantbankcreditdetails.rb'
672
+ autoload :TransferEventPullFromCardDetails, 'moov/models/components/transfereventpullfromcarddetails.rb'
673
+ autoload :TransferEventPushToCardDetails, 'moov/models/components/transfereventpushtocarddetails.rb'
674
+ autoload :TransferEventRefundDetails, 'moov/models/components/transfereventrefunddetails.rb'
675
+ autoload :TransferEventTransferDetails, 'moov/models/components/transfereventtransferdetails.rb'
676
+ autoload :TransferEventType, 'moov/models/components/transfereventtype.rb'
677
+ autoload :TransferEventWalletTransactionDetails, 'moov/models/components/transfereventwallettransactiondetails.rb'
678
+ autoload :TransferEventWireCreditDetails, 'moov/models/components/transfereventwirecreditdetails.rb'
654
679
  autoload :TransferFailureReason, 'moov/models/components/transferfailurereason.rb'
655
680
  autoload :TransferFeePaidBy, 'moov/models/components/transferfeepaidby.rb'
656
681
  autoload :TransferLineItem, 'moov/models/components/transferlineitem.rb'
@@ -0,0 +1,44 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module Moov
8
+ module Models
9
+ module Errors
10
+
11
+ class AuthorizationSimulationValidationError < StandardError
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+
16
+ field :issued_card_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('issuedCardID') } }
17
+ # A decimal-formatted numerical string that represents up to 2 decimal place precision. In USD for example, 12.34 is $12.34 and 0.99 is $0.99.
18
+ field :amount, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount') } }
19
+
20
+ field :merchant_data, Crystalline::Nilable.new(Models::Components::IssuingMerchantDataValidationError), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('merchantData') } }
21
+ # Raw HTTP response; suitable for custom response parsing
22
+ field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
23
+
24
+ sig { params(issued_card_id: T.nilable(::String), amount: T.nilable(::String), merchant_data: T.nilable(Models::Components::IssuingMerchantDataValidationError), raw_response: T.nilable(::Faraday::Response)).void }
25
+ def initialize(issued_card_id: nil, amount: nil, merchant_data: nil, raw_response: nil)
26
+ @issued_card_id = issued_card_id
27
+ @amount = amount
28
+ @merchant_data = merchant_data
29
+ @raw_response = raw_response
30
+ end
31
+
32
+ sig { params(other: T.untyped).returns(T::Boolean) }
33
+ def ==(other)
34
+ return false unless other.is_a? self.class
35
+ return false unless @issued_card_id == other.issued_card_id
36
+ return false unless @amount == other.amount
37
+ return false unless @merchant_data == other.merchant_data
38
+ return false unless @raw_response == other.raw_response
39
+ true
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,19 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class Moov::Models::Errors::AuthorizationSimulationValidationError
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Errors::AuthorizationSimulationValidationError
11
+ def issued_card_id(); end
12
+ def issued_card_id=(str_); end
13
+ def amount(); end
14
+ def amount=(str_); end
15
+ def merchant_data(); end
16
+ def merchant_data=(str_); end
17
+ def raw_response(); end
18
+ def raw_response=(str_); end
19
+ end