moov_ruby 0.0.0.pre.dev.24 → 0.0.0.pre.dev.25

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 (138) hide show
  1. checksums.yaml +4 -4
  2. data/lib/moov/avatars.rb +4 -4
  3. data/lib/moov/card_issuing.rb +116 -0
  4. data/lib/moov/client.rb +2 -2
  5. data/lib/moov/enriched_address.rb +1 -1
  6. data/lib/moov/enriched_profile.rb +1 -1
  7. data/lib/moov/institutions.rb +1 -1
  8. data/lib/moov/models/components/achcreditoptions.rb +40 -0
  9. data/lib/moov/models/components/achcreditoptions.rbi +17 -0
  10. data/lib/moov/models/components/achcredittransferprocessingdetails.rb +40 -0
  11. data/lib/moov/models/components/achcredittransferprocessingdetails.rbi +17 -0
  12. data/lib/moov/models/components/achdebitoptions.rb +48 -0
  13. data/lib/moov/models/components/achdebitoptions.rbi +21 -0
  14. data/lib/moov/models/components/achdebittransferprocessingdetails.rb +40 -0
  15. data/lib/moov/models/components/achdebittransferprocessingdetails.rbi +17 -0
  16. data/lib/moov/models/components/asynccreatedrefund.rb +7 -3
  17. data/lib/moov/models/components/asynccreatedrefund.rbi +2 -0
  18. data/lib/moov/models/components/capture.rb +77 -0
  19. data/lib/moov/models/components/capture.rbi +35 -0
  20. data/lib/moov/models/components/{refundcardstatus.rb → capturestatus.rb} +5 -4
  21. data/lib/moov/models/components/{refundcardstatus.rbi → capturestatus.rbi} +2 -2
  22. data/lib/moov/models/components/cardacquiringrefund.rb +11 -7
  23. data/lib/moov/models/components/cardacquiringrefund.rbi +4 -2
  24. data/lib/moov/models/components/cardpaymentoptions.rb +39 -0
  25. data/lib/moov/models/components/cardpaymentoptions.rbi +15 -0
  26. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rb +32 -0
  27. data/lib/moov/models/components/cardpaymentrefundprocessingdetails.rbi +13 -0
  28. data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rb +44 -0
  29. data/lib/moov/models/components/cardpaymenttransferprocessingdetails.rbi +19 -0
  30. data/lib/moov/models/components/createcancellation.rb +32 -0
  31. data/lib/moov/models/components/createcancellation.rbi +13 -0
  32. data/lib/moov/models/components/createcapture.rb +65 -0
  33. data/lib/moov/models/components/createcapture.rbi +29 -0
  34. data/lib/moov/models/components/createdtransfer.rb +22 -26
  35. data/lib/moov/models/components/createdtransfer.rbi +8 -10
  36. data/lib/moov/models/components/createrefund.rb +9 -5
  37. data/lib/moov/models/components/createrefund.rbi +2 -0
  38. data/lib/moov/models/components/createreversal.rb +3 -3
  39. data/lib/moov/models/components/createtransfer.rb +4 -4
  40. data/lib/moov/models/components/createtransferfacilitatorfee.rb +36 -0
  41. data/lib/moov/models/components/createtransferfacilitatorfee.rbi +15 -0
  42. data/lib/moov/models/components/createtransferoptions.rb +2 -2
  43. data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rb +44 -0
  44. data/lib/moov/models/components/instantbankcredittransferprocessingdetails.rbi +19 -0
  45. data/lib/moov/models/components/merchantcategories.rb +32 -0
  46. data/lib/moov/models/components/merchantcategories.rbi +13 -0
  47. data/lib/moov/models/components/merchantcategory.rb +37 -0
  48. data/lib/moov/models/components/merchantcategory.rbi +15 -0
  49. data/lib/moov/models/components/moovfeedetails.rb +5 -5
  50. data/lib/moov/models/components/paymentmethodswallet.rb +1 -0
  51. data/lib/moov/models/components/pullfromcardoptions.rb +39 -0
  52. data/lib/moov/models/components/pullfromcardoptions.rbi +15 -0
  53. data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rb +44 -0
  54. data/lib/moov/models/components/pullfromcardtransferprocessingdetails.rbi +19 -0
  55. data/lib/moov/models/components/pushtocardoptions.rb +32 -0
  56. data/lib/moov/models/components/pushtocardoptions.rbi +13 -0
  57. data/lib/moov/models/components/pushtocardtransferprocessingdetails.rb +44 -0
  58. data/lib/moov/models/components/pushtocardtransferprocessingdetails.rbi +19 -0
  59. data/lib/moov/models/components/refundprocessingdetails.rb +32 -0
  60. data/lib/moov/models/components/refundprocessingdetails.rbi +13 -0
  61. data/lib/moov/models/components/sendfunds.rb +6 -2
  62. data/lib/moov/models/components/sendfunds.rbi +2 -0
  63. data/lib/moov/models/components/sendfundserror.rb +6 -2
  64. data/lib/moov/models/components/sendfundserror.rbi +2 -0
  65. data/lib/moov/models/components/sendfundswire.rb +32 -0
  66. data/lib/moov/models/components/sendfundswire.rbi +13 -0
  67. data/lib/moov/models/components/sendfundswireerror.rb +32 -0
  68. data/lib/moov/models/components/sendfundswireerror.rbi +13 -0
  69. data/lib/moov/models/components/transfer.rb +22 -26
  70. data/lib/moov/models/components/transfer.rbi +8 -10
  71. data/lib/moov/models/components/transferauthorization.rb +52 -0
  72. data/lib/moov/models/components/transferauthorization.rbi +23 -0
  73. data/lib/moov/models/components/transferdestination.rb +5 -17
  74. data/lib/moov/models/components/transferdestination.rbi +0 -6
  75. data/lib/moov/models/components/transferpaymentmethodswallet.rb +1 -0
  76. data/lib/moov/models/components/transferprocessingdetails.rb +52 -0
  77. data/lib/moov/models/components/transferprocessingdetails.rbi +23 -0
  78. data/lib/moov/models/components/transferrailoptions.rb +48 -0
  79. data/lib/moov/models/components/transferrailoptions.rbi +21 -0
  80. data/lib/moov/models/components/transfersource.rb +9 -17
  81. data/lib/moov/models/components/transfersource.rbi +2 -6
  82. data/lib/moov/models/components/transferstatus.rb +1 -0
  83. data/lib/moov/models/components/transfertype.rb +25 -0
  84. data/lib/moov/models/components/{achtransactionstatus.rbi → transfertype.rbi} +2 -2
  85. data/lib/moov/models/components/wallet.rb +1 -0
  86. data/lib/moov/models/components/wallettype.rb +2 -0
  87. data/lib/moov/models/components/webhookdatatransferstatus.rb +3 -0
  88. data/lib/moov/models/components.rb +26 -10
  89. data/lib/moov/models/errors/capturevalidationerror.rb +68 -0
  90. data/lib/moov/models/errors/capturevalidationerror.rbi +31 -0
  91. data/lib/moov/models/errors/cardacquiringrefund_error.rb +11 -7
  92. data/lib/moov/models/errors/cardacquiringrefund_error.rbi +4 -2
  93. data/lib/moov/models/errors/transfer_error.rb +22 -26
  94. data/lib/moov/models/errors/transfer_error.rbi +8 -10
  95. data/lib/moov/models/errors.rb +1 -0
  96. data/lib/moov/models/operations/createcancellation_request.rb +6 -2
  97. data/lib/moov/models/operations/createcancellation_request.rbi +2 -0
  98. data/lib/moov/models/operations/createcapture_request.rb +44 -0
  99. data/lib/moov/models/operations/createcapture_request.rbi +19 -0
  100. data/lib/moov/models/operations/createcapture_response.rb +48 -0
  101. data/lib/moov/models/operations/createcapture_response.rbi +21 -0
  102. data/lib/moov/models/operations/createreversal_request.rb +3 -3
  103. data/lib/moov/models/operations/getcapture_request.rb +40 -0
  104. data/lib/moov/models/operations/getcapture_request.rbi +17 -0
  105. data/lib/moov/models/operations/getcapture_response.rb +48 -0
  106. data/lib/moov/models/operations/getcapture_response.rbi +21 -0
  107. data/lib/moov/models/operations/initiaterefund_request.rb +6 -6
  108. data/lib/moov/models/operations/initiaterefund_request.rbi +2 -2
  109. data/lib/moov/models/operations/listcaptures_request.rb +36 -0
  110. data/lib/moov/models/operations/listcaptures_request.rbi +15 -0
  111. data/lib/moov/models/operations/listcaptures_response.rb +48 -0
  112. data/lib/moov/models/operations/listcaptures_response.rbi +21 -0
  113. data/lib/moov/models/operations/listissuingmerchantcategories_response.rb +48 -0
  114. data/lib/moov/models/operations/listissuingmerchantcategories_response.rbi +21 -0
  115. data/lib/moov/models/operations/listtransfers_request.rb +6 -2
  116. data/lib/moov/models/operations/listtransfers_request.rbi +2 -0
  117. data/lib/moov/models/operations.rb +7 -0
  118. data/lib/moov/sdkconfiguration.rb +2 -2
  119. data/lib/moov/transfers.rb +434 -5
  120. data/lib/moov_ruby.rb +1 -1
  121. metadata +70 -22
  122. data/lib/moov/models/components/achtransactiondetails.rb +0 -92
  123. data/lib/moov/models/components/achtransactiondetails.rbi +0 -43
  124. data/lib/moov/models/components/achtransactionstatus.rb +0 -24
  125. data/lib/moov/models/components/cardacquiringdispute.rb +0 -40
  126. data/lib/moov/models/components/cardacquiringdispute.rbi +0 -17
  127. data/lib/moov/models/components/cardtransactiondetails.rb +0 -93
  128. data/lib/moov/models/components/cardtransactiondetails.rbi +0 -41
  129. data/lib/moov/models/components/cardtransactionstatus.rb +0 -24
  130. data/lib/moov/models/components/cardtransactionstatus.rbi +0 -11
  131. data/lib/moov/models/components/instantbanktransactiondetails.rb +0 -64
  132. data/lib/moov/models/components/instantbanktransactiondetails.rbi +0 -29
  133. data/lib/moov/models/components/instantbanktransactionstatus.rb +0 -21
  134. data/lib/moov/models/components/instantbanktransactionstatus.rbi +0 -11
  135. data/lib/moov/models/components/refundcarddetails.rb +0 -56
  136. data/lib/moov/models/components/refundcarddetails.rbi +0 -25
  137. data/lib/moov/models/components/transfercapture.rb +0 -36
  138. data/lib/moov/models/components/transfercapture.rbi +0 -15
@@ -14,6 +14,8 @@ module Moov
14
14
 
15
15
 
16
16
  field :transfer_id, ::String, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferID'), required: true } }
17
+ # The rail and direction used to move funds for a transfer.
18
+ field :transfer_type, Models::Components::TransferType, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('transferType'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferType, false) } }
17
19
 
18
20
  field :created_on, ::DateTime, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('createdOn'), required: true, 'decoder': ::Moov::Utils.datetime_from_iso_format(false) } }
19
21
 
@@ -23,7 +25,11 @@ module Moov
23
25
  # Status of a transfer.
24
26
  field :status, Models::Components::TransferStatus, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('status'), required: true, 'decoder': ::Moov::Utils.enum_from_string(Models::Components::TransferStatus, false) } }
25
27
 
26
- field :amount, Models::Components::Amount, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
28
+ field :amount, Models::Components::AmountDecimal, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amount'), required: true } }
29
+
30
+ field :options, Models::Components::TransferRailOptions, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('options'), required: true } }
31
+
32
+ field :processing_details, Models::Components::TransferProcessingDetails, { 'format_json': { 'letter_case': ::Moov::Utils.field_name('processingDetails'), required: true } }
27
33
 
28
34
  field :completed_on, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('completedOn'), 'decoder': ::Moov::Utils.datetime_from_iso_format(true) } }
29
35
  # Reason for a transfer's failure.
@@ -35,9 +41,7 @@ module Moov
35
41
  # Total or markup fee.
36
42
  field :facilitator_fee, Crystalline::Nilable.new(Models::Components::FacilitatorFee), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('facilitatorFee') } }
37
43
  # Fees charged to your platform account for transfers.
38
- field :moov_fee, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFee') } }
39
- # Same as `moovFee`, but a decimal-formatted numerical string that represents up to 9 decimal place precision.
40
- field :moov_fee_decimal, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDecimal') } }
44
+ field :moov_fee, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFee') } }
41
45
  # Processing and pass-through costs that add up to the moovFee.
42
46
  field :moov_fee_details, Crystalline::Nilable.new(Models::Components::MoovFeeDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('moovFeeDetails') } }
43
47
  # Fees charged to accounts involved in the transfer.
@@ -45,15 +49,9 @@ module Moov
45
49
 
46
50
  field :group_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('groupID') } }
47
51
 
48
- field :cancellations, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::Cancellation)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('cancellations') } }
49
-
50
- field :refunded_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
52
+ field :refunded_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refundedAmount') } }
51
53
 
52
- field :refunds, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CardAcquiringRefund)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('refunds') } }
53
-
54
- field :disputed_amount, Crystalline::Nilable.new(Models::Components::Amount), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
55
-
56
- field :disputes, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::CardAcquiringDispute)), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputes') } }
54
+ field :disputed_amount, Crystalline::Nilable.new(Models::Components::AmountDecimal), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('disputedAmount') } }
57
55
  # ID of the sweep that created this transfer.
58
56
  field :sweep_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('sweepID') } }
59
57
 
@@ -71,34 +69,33 @@ module Moov
71
69
  field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('invoiceID') } }
72
70
 
73
71
  field :amount_details, Crystalline::Nilable.new(Models::Components::TransferAmountDetails), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('amountDetails') } }
74
- # The card authorization and capture IDs associated with a transfer.
75
- field :capture, Crystalline::Nilable.new(Models::Components::TransferCapture), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('capture') } }
72
+
73
+ field :authorization, Crystalline::Nilable.new(Models::Components::TransferAuthorization), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('authorization') } }
76
74
  # Raw HTTP response; suitable for custom response parsing
77
75
  field :raw_response, Crystalline::Nilable.new(::Faraday::Response), { 'format_json': { 'letter_case': ::Moov::Utils.field_name('-') } }
78
76
 
79
- sig { params(transfer_id: ::String, created_on: ::DateTime, source: Models::Components::TransferSource, destination: Models::Components::TransferDestination, status: Models::Components::TransferStatus, amount: Models::Components::Amount, completed_on: T.nilable(::DateTime), failure_reason: T.nilable(Models::Components::TransferFailureReason), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(::Integer), moov_fee_decimal: T.nilable(::String), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), moov_fees: T.nilable(T::Array[Models::Components::MoovFee]), group_id: T.nilable(::String), cancellations: T.nilable(T::Array[Models::Components::Cancellation]), refunded_amount: T.nilable(Models::Components::Amount), refunds: T.nilable(T::Array[Models::Components::CardAcquiringRefund]), disputed_amount: T.nilable(Models::Components::Amount), disputes: T.nilable(T::Array[Models::Components::CardAcquiringDispute]), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), invoice_id: T.nilable(::String), amount_details: T.nilable(Models::Components::TransferAmountDetails), capture: T.nilable(Models::Components::TransferCapture), raw_response: T.nilable(::Faraday::Response)).void }
80
- def initialize(transfer_id:, created_on:, source:, destination:, status:, amount:, completed_on: nil, failure_reason: nil, description: nil, metadata: nil, facilitator_fee: nil, moov_fee: nil, moov_fee_decimal: nil, moov_fee_details: nil, moov_fees: nil, group_id: nil, cancellations: nil, refunded_amount: nil, refunds: nil, disputed_amount: nil, disputes: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, invoice_id: nil, amount_details: nil, capture: nil, raw_response: nil)
77
+ sig { params(transfer_id: ::String, transfer_type: Models::Components::TransferType, created_on: ::DateTime, source: Models::Components::TransferSource, destination: Models::Components::TransferDestination, status: Models::Components::TransferStatus, amount: Models::Components::AmountDecimal, options: Models::Components::TransferRailOptions, processing_details: Models::Components::TransferProcessingDetails, completed_on: T.nilable(::DateTime), failure_reason: T.nilable(Models::Components::TransferFailureReason), description: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), facilitator_fee: T.nilable(Models::Components::FacilitatorFee), moov_fee: T.nilable(Models::Components::AmountDecimal), moov_fee_details: T.nilable(Models::Components::MoovFeeDetails), moov_fees: T.nilable(T::Array[Models::Components::MoovFee]), group_id: T.nilable(::String), refunded_amount: T.nilable(Models::Components::AmountDecimal), disputed_amount: T.nilable(Models::Components::AmountDecimal), sweep_id: T.nilable(::String), schedule_id: T.nilable(::String), occurrence_id: T.nilable(::String), payment_link_code: T.nilable(::String), foreign_id: T.nilable(::String), line_items: T.nilable(Models::Components::TransferLineItems), invoice_id: T.nilable(::String), amount_details: T.nilable(Models::Components::TransferAmountDetails), authorization: T.nilable(Models::Components::TransferAuthorization), raw_response: T.nilable(::Faraday::Response)).void }
78
+ def initialize(transfer_id:, transfer_type:, created_on:, source:, destination:, status:, amount:, options:, processing_details:, completed_on: nil, failure_reason: nil, description: nil, metadata: nil, facilitator_fee: nil, moov_fee: nil, moov_fee_details: nil, moov_fees: nil, group_id: nil, refunded_amount: nil, disputed_amount: nil, sweep_id: nil, schedule_id: nil, occurrence_id: nil, payment_link_code: nil, foreign_id: nil, line_items: nil, invoice_id: nil, amount_details: nil, authorization: nil, raw_response: nil)
81
79
  @transfer_id = transfer_id
80
+ @transfer_type = transfer_type
82
81
  @created_on = created_on
83
82
  @source = source
84
83
  @destination = destination
85
84
  @status = status
86
85
  @amount = amount
86
+ @options = options
87
+ @processing_details = processing_details
87
88
  @completed_on = completed_on
88
89
  @failure_reason = failure_reason
89
90
  @description = description
90
91
  @metadata = metadata
91
92
  @facilitator_fee = facilitator_fee
92
93
  @moov_fee = moov_fee
93
- @moov_fee_decimal = moov_fee_decimal
94
94
  @moov_fee_details = moov_fee_details
95
95
  @moov_fees = moov_fees
96
96
  @group_id = group_id
97
- @cancellations = cancellations
98
97
  @refunded_amount = refunded_amount
99
- @refunds = refunds
100
98
  @disputed_amount = disputed_amount
101
- @disputes = disputes
102
99
  @sweep_id = sweep_id
103
100
  @schedule_id = schedule_id
104
101
  @occurrence_id = occurrence_id
@@ -107,7 +104,7 @@ module Moov
107
104
  @line_items = line_items
108
105
  @invoice_id = invoice_id
109
106
  @amount_details = amount_details
110
- @capture = capture
107
+ @authorization = authorization
111
108
  @raw_response = raw_response
112
109
  end
113
110
 
@@ -115,26 +112,25 @@ module Moov
115
112
  def ==(other)
116
113
  return false unless other.is_a? self.class
117
114
  return false unless @transfer_id == other.transfer_id
115
+ return false unless @transfer_type == other.transfer_type
118
116
  return false unless @created_on == other.created_on
119
117
  return false unless @source == other.source
120
118
  return false unless @destination == other.destination
121
119
  return false unless @status == other.status
122
120
  return false unless @amount == other.amount
121
+ return false unless @options == other.options
122
+ return false unless @processing_details == other.processing_details
123
123
  return false unless @completed_on == other.completed_on
124
124
  return false unless @failure_reason == other.failure_reason
125
125
  return false unless @description == other.description
126
126
  return false unless @metadata == other.metadata
127
127
  return false unless @facilitator_fee == other.facilitator_fee
128
128
  return false unless @moov_fee == other.moov_fee
129
- return false unless @moov_fee_decimal == other.moov_fee_decimal
130
129
  return false unless @moov_fee_details == other.moov_fee_details
131
130
  return false unless @moov_fees == other.moov_fees
132
131
  return false unless @group_id == other.group_id
133
- return false unless @cancellations == other.cancellations
134
132
  return false unless @refunded_amount == other.refunded_amount
135
- return false unless @refunds == other.refunds
136
133
  return false unless @disputed_amount == other.disputed_amount
137
- return false unless @disputes == other.disputes
138
134
  return false unless @sweep_id == other.sweep_id
139
135
  return false unless @schedule_id == other.schedule_id
140
136
  return false unless @occurrence_id == other.occurrence_id
@@ -143,7 +139,7 @@ module Moov
143
139
  return false unless @line_items == other.line_items
144
140
  return false unless @invoice_id == other.invoice_id
145
141
  return false unless @amount_details == other.amount_details
146
- return false unless @capture == other.capture
142
+ return false unless @authorization == other.authorization
147
143
  return false unless @raw_response == other.raw_response
148
144
  true
149
145
  end
@@ -10,6 +10,8 @@ end
10
10
  class Moov::Models::Errors::TransferError
11
11
  def transfer_id(); end
12
12
  def transfer_id=(str_); end
13
+ def transfer_type(); end
14
+ def transfer_type=(str_); end
13
15
  def created_on(); end
14
16
  def created_on=(str_); end
15
17
  def source(); end
@@ -20,6 +22,10 @@ class Moov::Models::Errors::TransferError
20
22
  def status=(str_); end
21
23
  def amount(); end
22
24
  def amount=(str_); end
25
+ def options(); end
26
+ def options=(str_); end
27
+ def processing_details(); end
28
+ def processing_details=(str_); end
23
29
  def completed_on(); end
24
30
  def completed_on=(str_); end
25
31
  def failure_reason(); end
@@ -32,24 +38,16 @@ class Moov::Models::Errors::TransferError
32
38
  def facilitator_fee=(str_); end
33
39
  def moov_fee(); end
34
40
  def moov_fee=(str_); end
35
- def moov_fee_decimal(); end
36
- def moov_fee_decimal=(str_); end
37
41
  def moov_fee_details(); end
38
42
  def moov_fee_details=(str_); end
39
43
  def moov_fees(); end
40
44
  def moov_fees=(str_); end
41
45
  def group_id(); end
42
46
  def group_id=(str_); end
43
- def cancellations(); end
44
- def cancellations=(str_); end
45
47
  def refunded_amount(); end
46
48
  def refunded_amount=(str_); end
47
- def refunds(); end
48
- def refunds=(str_); end
49
49
  def disputed_amount(); end
50
50
  def disputed_amount=(str_); end
51
- def disputes(); end
52
- def disputes=(str_); end
53
51
  def sweep_id(); end
54
52
  def sweep_id=(str_); end
55
53
  def schedule_id(); end
@@ -66,8 +64,8 @@ class Moov::Models::Errors::TransferError
66
64
  def invoice_id=(str_); end
67
65
  def amount_details(); end
68
66
  def amount_details=(str_); end
69
- def capture(); end
70
- def capture=(str_); end
67
+ def authorization(); end
68
+ def authorization=(str_); end
71
69
  def raw_response(); end
72
70
  def raw_response=(str_); end
73
71
  end
@@ -13,6 +13,7 @@ module Moov
13
13
  autoload :AuthTokenRequestError, 'moov/models/errors/authtokenrequesterror.rb'
14
14
  autoload :BankAccountValidationError, 'moov/models/errors/bankaccountvalidationerror.rb'
15
15
  autoload :BrandValidationError, 'moov/models/errors/brandvalidationerror.rb'
16
+ autoload :CaptureValidationError, 'moov/models/errors/capturevalidationerror.rb'
16
17
  autoload :CardAcquiringRefundError, 'moov/models/errors/cardacquiringrefund_error.rb'
17
18
  autoload :CardMetadataRequestError, 'moov/models/errors/cardmetadatarequesterror.rb'
18
19
  autoload :ConnectAccountRequestValidationError, 'moov/models/errors/connectaccountrequestvalidationerror.rb'
@@ -17,10 +17,13 @@ module Moov
17
17
  # The transfer ID to cancel.
18
18
  field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
19
19
 
20
- sig { params(account_id: ::String, transfer_id: ::String).void }
21
- def initialize(account_id:, transfer_id:)
20
+ field :create_cancellation, Models::Components::CreateCancellation, { 'request': { 'media_type': 'application/json' } }
21
+
22
+ sig { params(account_id: ::String, transfer_id: ::String, create_cancellation: Models::Components::CreateCancellation).void }
23
+ def initialize(account_id:, transfer_id:, create_cancellation:)
22
24
  @account_id = account_id
23
25
  @transfer_id = transfer_id
26
+ @create_cancellation = create_cancellation
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module Moov
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @account_id == other.account_id
30
33
  return false unless @transfer_id == other.transfer_id
34
+ return false unless @create_cancellation == other.create_cancellation
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class Moov::Models::Operations::CreateCancellationRequest
12
12
  def account_id=(str_); end
13
13
  def transfer_id(); end
14
14
  def transfer_id=(str_); end
15
+ def create_cancellation(); end
16
+ def create_cancellation=(str_); end
15
17
  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 Operations
10
+
11
+ class CreateCaptureRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Prevents duplicate captures from being created.
16
+ field :x_idempotency_key, ::String, { 'header': { 'field_name': 'x-idempotency-key', 'style': 'simple', 'explode': false } }
17
+ # The merchant's Moov account ID.
18
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
19
+ # Identifier for the transfer.
20
+ field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
21
+
22
+ field :create_capture, Models::Components::CreateCapture, { 'request': { 'media_type': 'application/json' } }
23
+
24
+ sig { params(x_idempotency_key: ::String, account_id: ::String, transfer_id: ::String, create_capture: Models::Components::CreateCapture).void }
25
+ def initialize(x_idempotency_key:, account_id:, transfer_id:, create_capture:)
26
+ @x_idempotency_key = x_idempotency_key
27
+ @account_id = account_id
28
+ @transfer_id = transfer_id
29
+ @create_capture = create_capture
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 @x_idempotency_key == other.x_idempotency_key
36
+ return false unless @account_id == other.account_id
37
+ return false unless @transfer_id == other.transfer_id
38
+ return false unless @create_capture == other.create_capture
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::Operations::CreateCaptureRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::CreateCaptureRequest
11
+ def x_idempotency_key(); end
12
+ def x_idempotency_key=(str_); end
13
+ def account_id(); end
14
+ def account_id=(str_); end
15
+ def transfer_id(); end
16
+ def transfer_id=(str_); end
17
+ def create_capture(); end
18
+ def create_capture=(str_); end
19
+ 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 Operations
10
+
11
+ class CreateCaptureResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # HTTP response content type for this operation
16
+ field :content_type, ::String
17
+ # HTTP response status code for this operation
18
+ field :status_code, ::Integer
19
+ # Raw HTTP response; suitable for custom response parsing
20
+ field :raw_response, ::Faraday::Response
21
+
22
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
+ # The resource was successfully created.
24
+ field :capture, Crystalline::Nilable.new(Models::Components::Capture)
25
+
26
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], capture: T.nilable(Models::Components::Capture)).void }
27
+ def initialize(content_type:, status_code:, raw_response:, headers:, capture: nil)
28
+ @content_type = content_type
29
+ @status_code = status_code
30
+ @raw_response = raw_response
31
+ @headers = headers
32
+ @capture = capture
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 @content_type == other.content_type
39
+ return false unless @status_code == other.status_code
40
+ return false unless @raw_response == other.raw_response
41
+ return false unless @headers == other.headers
42
+ return false unless @capture == other.capture
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::Operations::CreateCaptureResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::CreateCaptureResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def capture(); end
20
+ def capture=(str_); end
21
+ end
@@ -19,10 +19,10 @@ module Moov
19
19
  # The transfer ID to reverse.
20
20
  field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
21
21
 
22
- field :create_reversal, Crystalline::Nilable.new(Models::Components::CreateReversal), { 'request': { 'media_type': 'application/json' } }
22
+ field :create_reversal, Models::Components::CreateReversal, { 'request': { 'media_type': 'application/json' } }
23
23
 
24
- sig { params(x_idempotency_key: ::String, account_id: ::String, transfer_id: ::String, create_reversal: T.nilable(Models::Components::CreateReversal)).void }
25
- def initialize(x_idempotency_key:, account_id:, transfer_id:, create_reversal: nil)
24
+ sig { params(x_idempotency_key: ::String, account_id: ::String, transfer_id: ::String, create_reversal: Models::Components::CreateReversal).void }
25
+ def initialize(x_idempotency_key:, account_id:, transfer_id:, create_reversal:)
26
26
  @x_idempotency_key = x_idempotency_key
27
27
  @account_id = account_id
28
28
  @transfer_id = transfer_id
@@ -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 Operations
10
+
11
+ class GetCaptureRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The merchant's Moov account ID.
16
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
17
+ # Identifier for the transfer.
18
+ field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
19
+ # Identifier for the capture.
20
+ field :capture_id, ::String, { 'path_param': { 'field_name': 'captureID', 'style': 'simple', 'explode': false } }
21
+
22
+ sig { params(account_id: ::String, transfer_id: ::String, capture_id: ::String).void }
23
+ def initialize(account_id:, transfer_id:, capture_id:)
24
+ @account_id = account_id
25
+ @transfer_id = transfer_id
26
+ @capture_id = capture_id
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 @account_id == other.account_id
33
+ return false unless @transfer_id == other.transfer_id
34
+ return false unless @capture_id == other.capture_id
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::Operations::GetCaptureRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::GetCaptureRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def transfer_id(); end
14
+ def transfer_id=(str_); end
15
+ def capture_id(); end
16
+ def capture_id=(str_); end
17
+ 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 Operations
10
+
11
+ class GetCaptureResponse
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # HTTP response content type for this operation
16
+ field :content_type, ::String
17
+ # HTTP response status code for this operation
18
+ field :status_code, ::Integer
19
+ # Raw HTTP response; suitable for custom response parsing
20
+ field :raw_response, ::Faraday::Response
21
+
22
+ field :headers, Crystalline::Hash.new(Symbol, Crystalline::Array.new(::String))
23
+ # The request completed successfully.
24
+ field :capture, Crystalline::Nilable.new(Models::Components::Capture)
25
+
26
+ sig { params(content_type: ::String, status_code: ::Integer, raw_response: ::Faraday::Response, headers: T::Hash[Symbol, T::Array[::String]], capture: T.nilable(Models::Components::Capture)).void }
27
+ def initialize(content_type:, status_code:, raw_response:, headers:, capture: nil)
28
+ @content_type = content_type
29
+ @status_code = status_code
30
+ @raw_response = raw_response
31
+ @headers = headers
32
+ @capture = capture
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 @content_type == other.content_type
39
+ return false unless @status_code == other.status_code
40
+ return false unless @raw_response == other.raw_response
41
+ return false unless @headers == other.headers
42
+ return false unless @capture == other.capture
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::Operations::GetCaptureResponse
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::GetCaptureResponse
11
+ def content_type(); end
12
+ def content_type=(str_); end
13
+ def status_code(); end
14
+ def status_code=(str_); end
15
+ def raw_response(); end
16
+ def raw_response=(str_); end
17
+ def headers(); end
18
+ def headers=(str_); end
19
+ def capture(); end
20
+ def capture=(str_); end
21
+ end
@@ -18,19 +18,19 @@ module Moov
18
18
  field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
19
19
  # Identifier for the transfer.
20
20
  field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
21
+
22
+ field :create_refund, Models::Components::CreateRefund, { 'request': { 'media_type': 'application/json' } }
21
23
  # Optional header that indicates whether to return a synchronous response that includes full transfer and rail-specific details or an
22
24
  # asynchronous response indicating the transfer was created (this is the default response if the header is omitted). A timeout will occur after 15 seconds.
23
25
  field :x_wait_for, Crystalline::Nilable.new(Models::Components::TransferWaitFor), { 'header': { 'field_name': 'x-wait-for', 'style': 'simple', 'explode': false } }
24
26
 
25
- field :create_refund, Crystalline::Nilable.new(Models::Components::CreateRefund), { 'request': { 'media_type': 'application/json' } }
26
-
27
- sig { params(x_idempotency_key: ::String, account_id: ::String, transfer_id: ::String, x_wait_for: T.nilable(Models::Components::TransferWaitFor), create_refund: T.nilable(Models::Components::CreateRefund)).void }
28
- def initialize(x_idempotency_key:, account_id:, transfer_id:, x_wait_for: nil, create_refund: nil)
27
+ sig { params(x_idempotency_key: ::String, account_id: ::String, transfer_id: ::String, create_refund: Models::Components::CreateRefund, x_wait_for: T.nilable(Models::Components::TransferWaitFor)).void }
28
+ def initialize(x_idempotency_key:, account_id:, transfer_id:, create_refund:, x_wait_for: nil)
29
29
  @x_idempotency_key = x_idempotency_key
30
30
  @account_id = account_id
31
31
  @transfer_id = transfer_id
32
- @x_wait_for = x_wait_for
33
32
  @create_refund = create_refund
33
+ @x_wait_for = x_wait_for
34
34
  end
35
35
 
36
36
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -39,8 +39,8 @@ module Moov
39
39
  return false unless @x_idempotency_key == other.x_idempotency_key
40
40
  return false unless @account_id == other.account_id
41
41
  return false unless @transfer_id == other.transfer_id
42
- return false unless @x_wait_for == other.x_wait_for
43
42
  return false unless @create_refund == other.create_refund
43
+ return false unless @x_wait_for == other.x_wait_for
44
44
  true
45
45
  end
46
46
  end
@@ -14,8 +14,8 @@ class Moov::Models::Operations::InitiateRefundRequest
14
14
  def account_id=(str_); end
15
15
  def transfer_id(); end
16
16
  def transfer_id=(str_); end
17
- def x_wait_for(); end
18
- def x_wait_for=(str_); end
19
17
  def create_refund(); end
20
18
  def create_refund=(str_); end
19
+ def x_wait_for(); end
20
+ def x_wait_for=(str_); end
21
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 Operations
10
+
11
+ class ListCapturesRequest
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # The merchant's Moov account ID.
16
+ field :account_id, ::String, { 'path_param': { 'field_name': 'accountID', 'style': 'simple', 'explode': false } }
17
+ # Identifier for the transfer.
18
+ field :transfer_id, ::String, { 'path_param': { 'field_name': 'transferID', 'style': 'simple', 'explode': false } }
19
+
20
+ sig { params(account_id: ::String, transfer_id: ::String).void }
21
+ def initialize(account_id:, transfer_id:)
22
+ @account_id = account_id
23
+ @transfer_id = transfer_id
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 @account_id == other.account_id
30
+ return false unless @transfer_id == other.transfer_id
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::Operations::ListCapturesRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class Moov::Models::Operations::ListCapturesRequest
11
+ def account_id(); end
12
+ def account_id=(str_); end
13
+ def transfer_id(); end
14
+ def transfer_id=(str_); end
15
+ end