increase 1.353.0 → 1.355.0

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 (152) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/increase/client.rb +18 -0
  4. data/lib/increase/models/ach_transfer.rb +3 -3
  5. data/lib/increase/models/beneficial_owner_create_params.rb +1 -1
  6. data/lib/increase/models/beneficial_owner_update_params.rb +1 -1
  7. data/lib/increase/models/card_create_details_token_params.rb +22 -0
  8. data/lib/increase/models/card_details_token.rb +57 -0
  9. data/lib/increase/models/card_payment.rb +29 -1
  10. data/lib/increase/models/declined_transaction.rb +3 -0
  11. data/lib/increase/models/digital_wallet_token.rb +18 -0
  12. data/lib/increase/models/digital_wallet_token_request.rb +307 -0
  13. data/lib/increase/models/digital_wallet_token_request_list_params.rb +99 -0
  14. data/lib/increase/models/digital_wallet_token_request_retrieve_params.rb +22 -0
  15. data/lib/increase/models/digital_wallet_token_transition_params.rb +48 -0
  16. data/lib/increase/models/entity.rb +35 -7
  17. data/lib/increase/models/entity_beneficial_owner.rb +1 -1
  18. data/lib/increase/models/entity_create_params.rb +1 -1
  19. data/lib/increase/models/export.rb +19 -19
  20. data/lib/increase/models/export_create_params.rb +15 -15
  21. data/lib/increase/models/export_list_params.rb +19 -19
  22. data/lib/increase/models/inbound_real_time_payments_request_for_payment.rb +318 -0
  23. data/lib/increase/models/inbound_real_time_payments_requests_for_payment_list_params.rb +113 -0
  24. data/lib/increase/models/inbound_real_time_payments_requests_for_payment_retrieve_params.rb +25 -0
  25. data/lib/increase/models/inbound_wire_transfer.rb +10 -1
  26. data/lib/increase/models/physical_check_batch.rb +266 -0
  27. data/lib/increase/models/physical_check_batch_cancel_params.rb +22 -0
  28. data/lib/increase/models/physical_check_batch_complete_params.rb +22 -0
  29. data/lib/increase/models/physical_check_batch_create_params.rb +189 -0
  30. data/lib/increase/models/real_time_decision.rb +9 -0
  31. data/lib/increase/models/real_time_decision_action_params.rb +3 -0
  32. data/lib/increase/models/real_time_payments_request_for_payment.rb +658 -0
  33. data/lib/increase/models/real_time_payments_requests_for_payment_cancel_params.rb +64 -0
  34. data/lib/increase/models/real_time_payments_requests_for_payment_create_params.rb +194 -0
  35. data/lib/increase/models/real_time_payments_requests_for_payment_list_params.rb +117 -0
  36. data/lib/increase/models/real_time_payments_requests_for_payment_retrieve_params.rb +23 -0
  37. data/lib/increase/models/simulations/digital_wallet_token_request_create_response.rb +9 -0
  38. data/lib/increase/models/simulations/entity_update_validation_params.rb +3 -0
  39. data/lib/increase/models/simulations/fednow_transfer_complete_params.rb +103 -0
  40. data/lib/increase/models/simulations/inbound_check_deposit_accept_params.rb +24 -0
  41. data/lib/increase/models/transaction.rb +36 -2
  42. data/lib/increase/models.rb +42 -0
  43. data/lib/increase/resources/cards.rb +23 -0
  44. data/lib/increase/resources/digital_wallet_token_requests.rb +68 -0
  45. data/lib/increase/resources/digital_wallet_tokens.rb +28 -0
  46. data/lib/increase/resources/inbound_real_time_payments_requests_for_payment.rb +79 -0
  47. data/lib/increase/resources/physical_check_batches.rb +86 -0
  48. data/lib/increase/resources/real_time_payments_requests_for_payment.rb +159 -0
  49. data/lib/increase/resources/simulations/fednow_transfers.rb +43 -0
  50. data/lib/increase/resources/simulations/inbound_check_deposits.rb +22 -0
  51. data/lib/increase/resources/simulations.rb +4 -0
  52. data/lib/increase/version.rb +1 -1
  53. data/lib/increase.rb +25 -0
  54. data/rbi/increase/client.rbi +14 -0
  55. data/rbi/increase/models/ach_transfer.rbi +3 -3
  56. data/rbi/increase/models/beneficial_owner_create_params.rbi +1 -1
  57. data/rbi/increase/models/beneficial_owner_update_params.rbi +1 -1
  58. data/rbi/increase/models/card_create_details_token_params.rbi +43 -0
  59. data/rbi/increase/models/card_details_token.rbi +85 -0
  60. data/rbi/increase/models/card_payment.rbi +59 -0
  61. data/rbi/increase/models/declined_transaction.rbi +7 -0
  62. data/rbi/increase/models/digital_wallet_token.rbi +42 -0
  63. data/rbi/increase/models/digital_wallet_token_request.rbi +586 -0
  64. data/rbi/increase/models/digital_wallet_token_request_list_params.rbi +171 -0
  65. data/rbi/increase/models/digital_wallet_token_request_retrieve_params.rbi +46 -0
  66. data/rbi/increase/models/digital_wallet_token_transition_params.rbi +100 -0
  67. data/rbi/increase/models/entity.rbi +71 -6
  68. data/rbi/increase/models/entity_beneficial_owner.rbi +1 -1
  69. data/rbi/increase/models/entity_create_params.rbi +1 -1
  70. data/rbi/increase/models/export.rbi +32 -32
  71. data/rbi/increase/models/export_create_params.rbi +29 -29
  72. data/rbi/increase/models/export_list_params.rbi +37 -37
  73. data/rbi/increase/models/inbound_real_time_payments_request_for_payment.rbi +442 -0
  74. data/rbi/increase/models/inbound_real_time_payments_requests_for_payment_list_params.rbi +188 -0
  75. data/rbi/increase/models/inbound_real_time_payments_requests_for_payment_retrieve_params.rbi +48 -0
  76. data/rbi/increase/models/inbound_wire_transfer.rbi +8 -0
  77. data/rbi/increase/models/physical_check_batch.rbi +382 -0
  78. data/rbi/increase/models/physical_check_batch_cancel_params.rbi +46 -0
  79. data/rbi/increase/models/physical_check_batch_complete_params.rbi +46 -0
  80. data/rbi/increase/models/physical_check_batch_create_params.rbi +326 -0
  81. data/rbi/increase/models/real_time_decision.rbi +21 -0
  82. data/rbi/increase/models/real_time_decision_action_params.rbi +7 -0
  83. data/rbi/increase/models/real_time_payments_request_for_payment.rbi +1166 -0
  84. data/rbi/increase/models/real_time_payments_requests_for_payment_cancel_params.rbi +136 -0
  85. data/rbi/increase/models/real_time_payments_requests_for_payment_create_params.rbi +303 -0
  86. data/rbi/increase/models/real_time_payments_requests_for_payment_list_params.rbi +192 -0
  87. data/rbi/increase/models/real_time_payments_requests_for_payment_retrieve_params.rbi +46 -0
  88. data/rbi/increase/models/simulations/digital_wallet_token_request_create_response.rbi +21 -0
  89. data/rbi/increase/models/simulations/entity_update_validation_params.rbi +7 -0
  90. data/rbi/increase/models/simulations/fednow_transfer_complete_params.rbi +243 -0
  91. data/rbi/increase/models/simulations/inbound_check_deposit_accept_params.rbi +48 -0
  92. data/rbi/increase/models/transaction.rbi +60 -0
  93. data/rbi/increase/models.rbi +50 -0
  94. data/rbi/increase/resources/cards.rbi +17 -0
  95. data/rbi/increase/resources/digital_wallet_token_requests.rbi +52 -0
  96. data/rbi/increase/resources/digital_wallet_tokens.rbi +21 -0
  97. data/rbi/increase/resources/inbound_real_time_payments_requests_for_payment.rbi +62 -0
  98. data/rbi/increase/resources/physical_check_batches.rbi +66 -0
  99. data/rbi/increase/resources/real_time_payments_requests_for_payment.rbi +127 -0
  100. data/rbi/increase/resources/simulations/fednow_transfers.rbi +34 -0
  101. data/rbi/increase/resources/simulations/inbound_check_deposits.rbi +16 -0
  102. data/rbi/increase/resources/simulations.rbi +3 -0
  103. data/sig/increase/client.rbs +8 -0
  104. data/sig/increase/models/ach_transfer.rbs +4 -4
  105. data/sig/increase/models/beneficial_owner_create_params.rbs +1 -1
  106. data/sig/increase/models/beneficial_owner_update_params.rbs +1 -1
  107. data/sig/increase/models/card_create_details_token_params.rbs +23 -0
  108. data/sig/increase/models/card_details_token.rbs +40 -0
  109. data/sig/increase/models/card_payment.rbs +23 -0
  110. data/sig/increase/models/declined_transaction.rbs +4 -0
  111. data/sig/increase/models/digital_wallet_token.rbs +36 -3
  112. data/sig/increase/models/digital_wallet_token_request.rbs +260 -0
  113. data/sig/increase/models/digital_wallet_token_request_list_params.rbs +86 -0
  114. data/sig/increase/models/digital_wallet_token_request_retrieve_params.rbs +24 -0
  115. data/sig/increase/models/digital_wallet_token_transition_params.rbs +48 -0
  116. data/sig/increase/models/entity.rbs +25 -6
  117. data/sig/increase/models/entity_beneficial_owner.rbs +1 -1
  118. data/sig/increase/models/entity_create_params.rbs +1 -1
  119. data/sig/increase/models/export.rbs +28 -28
  120. data/sig/increase/models/export_create_params.rbs +22 -22
  121. data/sig/increase/models/export_list_params.rbs +28 -28
  122. data/sig/increase/models/inbound_real_time_payments_request_for_payment.rbs +200 -0
  123. data/sig/increase/models/inbound_real_time_payments_requests_for_payment_list_params.rbs +93 -0
  124. data/sig/increase/models/inbound_real_time_payments_requests_for_payment_retrieve_params.rbs +24 -0
  125. data/sig/increase/models/inbound_wire_transfer.rbs +5 -0
  126. data/sig/increase/models/physical_check_batch.rbs +193 -0
  127. data/sig/increase/models/physical_check_batch_cancel_params.rbs +24 -0
  128. data/sig/increase/models/physical_check_batch_complete_params.rbs +24 -0
  129. data/sig/increase/models/physical_check_batch_create_params.rbs +156 -0
  130. data/sig/increase/models/real_time_decision.rbs +14 -2
  131. data/sig/increase/models/real_time_decision_action_params.rbs +4 -0
  132. data/sig/increase/models/real_time_payments_request_for_payment.rbs +513 -0
  133. data/sig/increase/models/real_time_payments_requests_for_payment_cancel_params.rbs +66 -0
  134. data/sig/increase/models/real_time_payments_requests_for_payment_create_params.rbs +149 -0
  135. data/sig/increase/models/real_time_payments_requests_for_payment_list_params.rbs +93 -0
  136. data/sig/increase/models/real_time_payments_requests_for_payment_retrieve_params.rbs +24 -0
  137. data/sig/increase/models/simulations/digital_wallet_token_request_create_response.rbs +12 -0
  138. data/sig/increase/models/simulations/entity_update_validation_params.rbs +4 -0
  139. data/sig/increase/models/simulations/fednow_transfer_complete_params.rbs +122 -0
  140. data/sig/increase/models/simulations/inbound_check_deposit_accept_params.rbs +26 -0
  141. data/sig/increase/models/transaction.rbs +24 -0
  142. data/sig/increase/models.rbs +36 -0
  143. data/sig/increase/resources/cards.rbs +5 -0
  144. data/sig/increase/resources/digital_wallet_token_requests.rbs +20 -0
  145. data/sig/increase/resources/digital_wallet_tokens.rbs +6 -0
  146. data/sig/increase/resources/inbound_real_time_payments_requests_for_payment.rbs +21 -0
  147. data/sig/increase/resources/physical_check_batches.rbs +24 -0
  148. data/sig/increase/resources/real_time_payments_requests_for_payment.rbs +41 -0
  149. data/sig/increase/resources/simulations/fednow_transfers.rbs +15 -0
  150. data/sig/increase/resources/simulations/inbound_check_deposits.rbs +5 -0
  151. data/sig/increase/resources/simulations.rbs +2 -0
  152. metadata +77 -2
@@ -0,0 +1,1166 @@
1
+ # typed: strong
2
+
3
+ module Increase
4
+ module Models
5
+ class RealTimePaymentsRequestForPayment < Increase::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Increase::RealTimePaymentsRequestForPayment,
10
+ Increase::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The Real-Time Payments Request for Payment's identifier.
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # The Account in which a successful transfer will arrive.
19
+ sig { returns(String) }
20
+ attr_accessor :account_id
21
+
22
+ # The Account Number in which a successful transfer will arrive.
23
+ sig { returns(String) }
24
+ attr_accessor :account_number_id
25
+
26
+ # The transfer amount in USD cents.
27
+ sig { returns(Integer) }
28
+ attr_accessor :amount
29
+
30
+ # If a cancellation has been requested, this will contain supplemental details.
31
+ # The request for payment moves to `canceled` once the recipient bank acknowledges
32
+ # the cancellation.
33
+ sig do
34
+ returns(
35
+ T.nilable(Increase::RealTimePaymentsRequestForPayment::Cancellation)
36
+ )
37
+ end
38
+ attr_reader :cancellation
39
+
40
+ sig do
41
+ params(
42
+ cancellation:
43
+ T.nilable(
44
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::OrHash
45
+ )
46
+ ).void
47
+ end
48
+ attr_writer :cancellation
49
+
50
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
51
+ # the request for payment was created.
52
+ sig { returns(Time) }
53
+ attr_accessor :created_at
54
+
55
+ # The name of the creditor requesting the payment.
56
+ sig { returns(String) }
57
+ attr_accessor :creditor_name
58
+
59
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the transfer's
60
+ # currency. For real-time payments transfers this is always equal to `USD`.
61
+ sig do
62
+ returns(
63
+ Increase::RealTimePaymentsRequestForPayment::Currency::TaggedSymbol
64
+ )
65
+ end
66
+ attr_accessor :currency
67
+
68
+ # Details of the person being requested to pay.
69
+ sig { returns(Increase::RealTimePaymentsRequestForPayment::Debtor) }
70
+ attr_reader :debtor
71
+
72
+ sig do
73
+ params(
74
+ debtor: Increase::RealTimePaymentsRequestForPayment::Debtor::OrHash
75
+ ).void
76
+ end
77
+ attr_writer :debtor
78
+
79
+ # The debtor's account number, which the request is sent to.
80
+ sig { returns(String) }
81
+ attr_accessor :debtor_account_number
82
+
83
+ # The debtor's American Bankers' Association (ABA) Routing Transit Number (RTN).
84
+ sig { returns(String) }
85
+ attr_accessor :debtor_routing_number
86
+
87
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time after which
88
+ # the request for payment is no longer valid. After this time the debtor's bank
89
+ # should no longer allow the debtor to pay it.
90
+ sig { returns(Time) }
91
+ attr_accessor :expires_at
92
+
93
+ # The identifier of the Inbound Real-Time Payments Transfer that fulfilled this
94
+ # request.
95
+ sig { returns(T.nilable(String)) }
96
+ attr_accessor :fulfillment_inbound_real_time_payments_transfer_id
97
+
98
+ # The idempotency key you chose for this object. This value is unique across
99
+ # Increase and is used to ensure that a request is only processed once. Learn more
100
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
101
+ sig { returns(T.nilable(String)) }
102
+ attr_accessor :idempotency_key
103
+
104
+ # If the request for payment is refused by the destination financial institution
105
+ # or the receiving customer, this will contain supplemental details.
106
+ sig do
107
+ returns(T.nilable(Increase::RealTimePaymentsRequestForPayment::Refusal))
108
+ end
109
+ attr_reader :refusal
110
+
111
+ sig do
112
+ params(
113
+ refusal:
114
+ T.nilable(
115
+ Increase::RealTimePaymentsRequestForPayment::Refusal::OrHash
116
+ )
117
+ ).void
118
+ end
119
+ attr_writer :refusal
120
+
121
+ # If the request for payment is rejected by Real-Time Payments or the destination
122
+ # financial institution, this will contain supplemental details.
123
+ sig do
124
+ returns(
125
+ T.nilable(Increase::RealTimePaymentsRequestForPayment::Rejection)
126
+ )
127
+ end
128
+ attr_reader :rejection
129
+
130
+ sig do
131
+ params(
132
+ rejection:
133
+ T.nilable(
134
+ Increase::RealTimePaymentsRequestForPayment::Rejection::OrHash
135
+ )
136
+ ).void
137
+ end
138
+ attr_writer :rejection
139
+
140
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time by which
141
+ # the payment was requested to be made.
142
+ sig { returns(T.nilable(Time)) }
143
+ attr_accessor :requested_execution_at
144
+
145
+ # The lifecycle status of the request for payment.
146
+ sig do
147
+ returns(
148
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
149
+ )
150
+ end
151
+ attr_accessor :status
152
+
153
+ # After the request for payment is submitted to Real-Time Payments, this will
154
+ # contain supplemental details.
155
+ sig do
156
+ returns(
157
+ T.nilable(Increase::RealTimePaymentsRequestForPayment::Submission)
158
+ )
159
+ end
160
+ attr_reader :submission
161
+
162
+ sig do
163
+ params(
164
+ submission:
165
+ T.nilable(
166
+ Increase::RealTimePaymentsRequestForPayment::Submission::OrHash
167
+ )
168
+ ).void
169
+ end
170
+ attr_writer :submission
171
+
172
+ # A constant representing the object's type. For this resource it will always be
173
+ # `real_time_payments_request_for_payment`.
174
+ sig do
175
+ returns(Increase::RealTimePaymentsRequestForPayment::Type::TaggedSymbol)
176
+ end
177
+ attr_accessor :type
178
+
179
+ # Unstructured information that will show on the recipient's bank statement.
180
+ sig { returns(String) }
181
+ attr_accessor :unstructured_remittance_information
182
+
183
+ # Real-Time Payments transfers move funds, within seconds, between your Increase
184
+ # account and any other account on the Real-Time Payments network. A request for
185
+ # payment is a request to the receiver to send funds to your account. The
186
+ # permitted uses of Requests For Payment are limited by the Real-Time Payments
187
+ # network to business-to-business payments and transfers between two accounts at
188
+ # different banks owned by the same individual. Please contact
189
+ # [support@increase.com](mailto:support@increase.com) to enable this API for your
190
+ # team.
191
+ sig do
192
+ params(
193
+ id: String,
194
+ account_id: String,
195
+ account_number_id: String,
196
+ amount: Integer,
197
+ cancellation:
198
+ T.nilable(
199
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::OrHash
200
+ ),
201
+ created_at: Time,
202
+ creditor_name: String,
203
+ currency:
204
+ Increase::RealTimePaymentsRequestForPayment::Currency::OrSymbol,
205
+ debtor: Increase::RealTimePaymentsRequestForPayment::Debtor::OrHash,
206
+ debtor_account_number: String,
207
+ debtor_routing_number: String,
208
+ expires_at: Time,
209
+ fulfillment_inbound_real_time_payments_transfer_id: T.nilable(String),
210
+ idempotency_key: T.nilable(String),
211
+ refusal:
212
+ T.nilable(
213
+ Increase::RealTimePaymentsRequestForPayment::Refusal::OrHash
214
+ ),
215
+ rejection:
216
+ T.nilable(
217
+ Increase::RealTimePaymentsRequestForPayment::Rejection::OrHash
218
+ ),
219
+ requested_execution_at: T.nilable(Time),
220
+ status: Increase::RealTimePaymentsRequestForPayment::Status::OrSymbol,
221
+ submission:
222
+ T.nilable(
223
+ Increase::RealTimePaymentsRequestForPayment::Submission::OrHash
224
+ ),
225
+ type: Increase::RealTimePaymentsRequestForPayment::Type::OrSymbol,
226
+ unstructured_remittance_information: String
227
+ ).returns(T.attached_class)
228
+ end
229
+ def self.new(
230
+ # The Real-Time Payments Request for Payment's identifier.
231
+ id:,
232
+ # The Account in which a successful transfer will arrive.
233
+ account_id:,
234
+ # The Account Number in which a successful transfer will arrive.
235
+ account_number_id:,
236
+ # The transfer amount in USD cents.
237
+ amount:,
238
+ # If a cancellation has been requested, this will contain supplemental details.
239
+ # The request for payment moves to `canceled` once the recipient bank acknowledges
240
+ # the cancellation.
241
+ cancellation:,
242
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
243
+ # the request for payment was created.
244
+ created_at:,
245
+ # The name of the creditor requesting the payment.
246
+ creditor_name:,
247
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the transfer's
248
+ # currency. For real-time payments transfers this is always equal to `USD`.
249
+ currency:,
250
+ # Details of the person being requested to pay.
251
+ debtor:,
252
+ # The debtor's account number, which the request is sent to.
253
+ debtor_account_number:,
254
+ # The debtor's American Bankers' Association (ABA) Routing Transit Number (RTN).
255
+ debtor_routing_number:,
256
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time after which
257
+ # the request for payment is no longer valid. After this time the debtor's bank
258
+ # should no longer allow the debtor to pay it.
259
+ expires_at:,
260
+ # The identifier of the Inbound Real-Time Payments Transfer that fulfilled this
261
+ # request.
262
+ fulfillment_inbound_real_time_payments_transfer_id:,
263
+ # The idempotency key you chose for this object. This value is unique across
264
+ # Increase and is used to ensure that a request is only processed once. Learn more
265
+ # about [idempotency](https://increase.com/documentation/idempotency-keys).
266
+ idempotency_key:,
267
+ # If the request for payment is refused by the destination financial institution
268
+ # or the receiving customer, this will contain supplemental details.
269
+ refusal:,
270
+ # If the request for payment is rejected by Real-Time Payments or the destination
271
+ # financial institution, this will contain supplemental details.
272
+ rejection:,
273
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time by which
274
+ # the payment was requested to be made.
275
+ requested_execution_at:,
276
+ # The lifecycle status of the request for payment.
277
+ status:,
278
+ # After the request for payment is submitted to Real-Time Payments, this will
279
+ # contain supplemental details.
280
+ submission:,
281
+ # A constant representing the object's type. For this resource it will always be
282
+ # `real_time_payments_request_for_payment`.
283
+ type:,
284
+ # Unstructured information that will show on the recipient's bank statement.
285
+ unstructured_remittance_information:
286
+ )
287
+ end
288
+
289
+ sig do
290
+ override.returns(
291
+ {
292
+ id: String,
293
+ account_id: String,
294
+ account_number_id: String,
295
+ amount: Integer,
296
+ cancellation:
297
+ T.nilable(
298
+ Increase::RealTimePaymentsRequestForPayment::Cancellation
299
+ ),
300
+ created_at: Time,
301
+ creditor_name: String,
302
+ currency:
303
+ Increase::RealTimePaymentsRequestForPayment::Currency::TaggedSymbol,
304
+ debtor: Increase::RealTimePaymentsRequestForPayment::Debtor,
305
+ debtor_account_number: String,
306
+ debtor_routing_number: String,
307
+ expires_at: Time,
308
+ fulfillment_inbound_real_time_payments_transfer_id:
309
+ T.nilable(String),
310
+ idempotency_key: T.nilable(String),
311
+ refusal:
312
+ T.nilable(Increase::RealTimePaymentsRequestForPayment::Refusal),
313
+ rejection:
314
+ T.nilable(Increase::RealTimePaymentsRequestForPayment::Rejection),
315
+ requested_execution_at: T.nilable(Time),
316
+ status:
317
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol,
318
+ submission:
319
+ T.nilable(
320
+ Increase::RealTimePaymentsRequestForPayment::Submission
321
+ ),
322
+ type:
323
+ Increase::RealTimePaymentsRequestForPayment::Type::TaggedSymbol,
324
+ unstructured_remittance_information: String
325
+ }
326
+ )
327
+ end
328
+ def to_hash
329
+ end
330
+
331
+ class Cancellation < Increase::Internal::Type::BaseModel
332
+ OrHash =
333
+ T.type_alias do
334
+ T.any(
335
+ Increase::RealTimePaymentsRequestForPayment::Cancellation,
336
+ Increase::Internal::AnyHash
337
+ )
338
+ end
339
+
340
+ # Additional information about the cancellation, sent on to the recipient bank.
341
+ sig { returns(T.nilable(String)) }
342
+ attr_accessor :additional_information
343
+
344
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
345
+ # the cancellation was requested.
346
+ sig { returns(Time) }
347
+ attr_accessor :canceled_at
348
+
349
+ # The reason the request for payment was canceled.
350
+ sig do
351
+ returns(
352
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
353
+ )
354
+ end
355
+ attr_accessor :reason
356
+
357
+ # If a cancellation has been requested, this will contain supplemental details.
358
+ # The request for payment moves to `canceled` once the recipient bank acknowledges
359
+ # the cancellation.
360
+ sig do
361
+ params(
362
+ additional_information: T.nilable(String),
363
+ canceled_at: Time,
364
+ reason:
365
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::OrSymbol
366
+ ).returns(T.attached_class)
367
+ end
368
+ def self.new(
369
+ # Additional information about the cancellation, sent on to the recipient bank.
370
+ additional_information:,
371
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
372
+ # the cancellation was requested.
373
+ canceled_at:,
374
+ # The reason the request for payment was canceled.
375
+ reason:
376
+ )
377
+ end
378
+
379
+ sig do
380
+ override.returns(
381
+ {
382
+ additional_information: T.nilable(String),
383
+ canceled_at: Time,
384
+ reason:
385
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
386
+ }
387
+ )
388
+ end
389
+ def to_hash
390
+ end
391
+
392
+ # The reason the request for payment was canceled.
393
+ module Reason
394
+ extend Increase::Internal::Type::Enum
395
+
396
+ TaggedSymbol =
397
+ T.type_alias do
398
+ T.all(
399
+ Symbol,
400
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason
401
+ )
402
+ end
403
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
404
+
405
+ # The creditor no longer wants to be paid. Corresponds to the Real-Time Payments reason code `CUST`.
406
+ REQUESTED_BY_CUSTOMER =
407
+ T.let(
408
+ :requested_by_customer,
409
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
410
+ )
411
+
412
+ # The requested payment has already been made through another channel. Corresponds to the Real-Time Payments reason code `UPAY`.
413
+ PAID_BY_OTHER_MEANS =
414
+ T.let(
415
+ :paid_by_other_means,
416
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
417
+ )
418
+
419
+ # The request for payment duplicated another request for payment. Corresponds to the Real-Time Payments reason code `DUPL`.
420
+ DUPLICATE =
421
+ T.let(
422
+ :duplicate,
423
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
424
+ )
425
+
426
+ # The request for payment was sent for the wrong amount. Corresponds to the Real-Time Payments reason code `AM09`.
427
+ WRONG_AMOUNT =
428
+ T.let(
429
+ :wrong_amount,
430
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
431
+ )
432
+
433
+ sig do
434
+ override.returns(
435
+ T::Array[
436
+ Increase::RealTimePaymentsRequestForPayment::Cancellation::Reason::TaggedSymbol
437
+ ]
438
+ )
439
+ end
440
+ def self.values
441
+ end
442
+ end
443
+ end
444
+
445
+ # The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) code for the transfer's
446
+ # currency. For real-time payments transfers this is always equal to `USD`.
447
+ module Currency
448
+ extend Increase::Internal::Type::Enum
449
+
450
+ TaggedSymbol =
451
+ T.type_alias do
452
+ T.all(Symbol, Increase::RealTimePaymentsRequestForPayment::Currency)
453
+ end
454
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
455
+
456
+ # US Dollar (USD)
457
+ USD =
458
+ T.let(
459
+ :USD,
460
+ Increase::RealTimePaymentsRequestForPayment::Currency::TaggedSymbol
461
+ )
462
+
463
+ sig do
464
+ override.returns(
465
+ T::Array[
466
+ Increase::RealTimePaymentsRequestForPayment::Currency::TaggedSymbol
467
+ ]
468
+ )
469
+ end
470
+ def self.values
471
+ end
472
+ end
473
+
474
+ class Debtor < Increase::Internal::Type::BaseModel
475
+ OrHash =
476
+ T.type_alias do
477
+ T.any(
478
+ Increase::RealTimePaymentsRequestForPayment::Debtor,
479
+ Increase::Internal::AnyHash
480
+ )
481
+ end
482
+
483
+ # Address of the debtor.
484
+ sig do
485
+ returns(Increase::RealTimePaymentsRequestForPayment::Debtor::Address)
486
+ end
487
+ attr_reader :address
488
+
489
+ sig do
490
+ params(
491
+ address:
492
+ Increase::RealTimePaymentsRequestForPayment::Debtor::Address::OrHash
493
+ ).void
494
+ end
495
+ attr_writer :address
496
+
497
+ # The name of the debtor.
498
+ sig { returns(String) }
499
+ attr_accessor :name
500
+
501
+ # Details of the person being requested to pay.
502
+ sig do
503
+ params(
504
+ address:
505
+ Increase::RealTimePaymentsRequestForPayment::Debtor::Address::OrHash,
506
+ name: String
507
+ ).returns(T.attached_class)
508
+ end
509
+ def self.new(
510
+ # Address of the debtor.
511
+ address:,
512
+ # The name of the debtor.
513
+ name:
514
+ )
515
+ end
516
+
517
+ sig do
518
+ override.returns(
519
+ {
520
+ address:
521
+ Increase::RealTimePaymentsRequestForPayment::Debtor::Address,
522
+ name: String
523
+ }
524
+ )
525
+ end
526
+ def to_hash
527
+ end
528
+
529
+ class Address < Increase::Internal::Type::BaseModel
530
+ OrHash =
531
+ T.type_alias do
532
+ T.any(
533
+ Increase::RealTimePaymentsRequestForPayment::Debtor::Address,
534
+ Increase::Internal::AnyHash
535
+ )
536
+ end
537
+
538
+ # A second address line, such as an apartment or suite number. The first address
539
+ # line is separated into `building_number` and `street_name`.
540
+ sig { returns(T.nilable(String)) }
541
+ attr_accessor :address_line2
542
+
543
+ # The number identifying the position of the building on the street.
544
+ sig { returns(T.nilable(String)) }
545
+ attr_accessor :building_number
546
+
547
+ # The town or city.
548
+ sig { returns(T.nilable(String)) }
549
+ attr_accessor :city
550
+
551
+ # The ISO 3166, Alpha-2 country code.
552
+ sig { returns(T.nilable(String)) }
553
+ attr_accessor :country
554
+
555
+ # The postal code or zip.
556
+ sig { returns(T.nilable(String)) }
557
+ attr_accessor :postal_code
558
+
559
+ # The US state component of the address.
560
+ sig { returns(T.nilable(String)) }
561
+ attr_accessor :state
562
+
563
+ # The street name without the street number.
564
+ sig { returns(T.nilable(String)) }
565
+ attr_accessor :street_name
566
+
567
+ # Address of the debtor.
568
+ sig do
569
+ params(
570
+ address_line2: T.nilable(String),
571
+ building_number: T.nilable(String),
572
+ city: T.nilable(String),
573
+ country: T.nilable(String),
574
+ postal_code: T.nilable(String),
575
+ state: T.nilable(String),
576
+ street_name: T.nilable(String)
577
+ ).returns(T.attached_class)
578
+ end
579
+ def self.new(
580
+ # A second address line, such as an apartment or suite number. The first address
581
+ # line is separated into `building_number` and `street_name`.
582
+ address_line2:,
583
+ # The number identifying the position of the building on the street.
584
+ building_number:,
585
+ # The town or city.
586
+ city:,
587
+ # The ISO 3166, Alpha-2 country code.
588
+ country:,
589
+ # The postal code or zip.
590
+ postal_code:,
591
+ # The US state component of the address.
592
+ state:,
593
+ # The street name without the street number.
594
+ street_name:
595
+ )
596
+ end
597
+
598
+ sig do
599
+ override.returns(
600
+ {
601
+ address_line2: T.nilable(String),
602
+ building_number: T.nilable(String),
603
+ city: T.nilable(String),
604
+ country: T.nilable(String),
605
+ postal_code: T.nilable(String),
606
+ state: T.nilable(String),
607
+ street_name: T.nilable(String)
608
+ }
609
+ )
610
+ end
611
+ def to_hash
612
+ end
613
+ end
614
+ end
615
+
616
+ class Refusal < Increase::Internal::Type::BaseModel
617
+ OrHash =
618
+ T.type_alias do
619
+ T.any(
620
+ Increase::RealTimePaymentsRequestForPayment::Refusal,
621
+ Increase::Internal::AnyHash
622
+ )
623
+ end
624
+
625
+ # Additional information about the refusal provided by the recipient bank or the
626
+ # customer. This is typically present when the `refusal_reason_code` is `other`.
627
+ sig { returns(T.nilable(String)) }
628
+ attr_accessor :refusal_reason_additional_information
629
+
630
+ # The reason the request for payment was refused as provided by the recipient bank
631
+ # or the customer.
632
+ sig do
633
+ returns(
634
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
635
+ )
636
+ end
637
+ attr_accessor :refusal_reason_code
638
+
639
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
640
+ # the request for payment was refused.
641
+ sig { returns(T.nilable(Time)) }
642
+ attr_accessor :refused_at
643
+
644
+ # If the request for payment is refused by the destination financial institution
645
+ # or the receiving customer, this will contain supplemental details.
646
+ sig do
647
+ params(
648
+ refusal_reason_additional_information: T.nilable(String),
649
+ refusal_reason_code:
650
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::OrSymbol,
651
+ refused_at: T.nilable(Time)
652
+ ).returns(T.attached_class)
653
+ end
654
+ def self.new(
655
+ # Additional information about the refusal provided by the recipient bank or the
656
+ # customer. This is typically present when the `refusal_reason_code` is `other`.
657
+ refusal_reason_additional_information:,
658
+ # The reason the request for payment was refused as provided by the recipient bank
659
+ # or the customer.
660
+ refusal_reason_code:,
661
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
662
+ # the request for payment was refused.
663
+ refused_at:
664
+ )
665
+ end
666
+
667
+ sig do
668
+ override.returns(
669
+ {
670
+ refusal_reason_additional_information: T.nilable(String),
671
+ refusal_reason_code:
672
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol,
673
+ refused_at: T.nilable(Time)
674
+ }
675
+ )
676
+ end
677
+ def to_hash
678
+ end
679
+
680
+ # The reason the request for payment was refused as provided by the recipient bank
681
+ # or the customer.
682
+ module RefusalReasonCode
683
+ extend Increase::Internal::Type::Enum
684
+
685
+ TaggedSymbol =
686
+ T.type_alias do
687
+ T.all(
688
+ Symbol,
689
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode
690
+ )
691
+ end
692
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
693
+
694
+ # The destination account is currently blocked from receiving transactions. Corresponds to the Real-Time Payments reason code `AC06`.
695
+ ACCOUNT_BLOCKED =
696
+ T.let(
697
+ :account_blocked,
698
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
699
+ )
700
+
701
+ # Real-Time Payments transfers are not allowed to the destination account. Corresponds to the Real-Time Payments reason code `AG01`.
702
+ TRANSACTION_FORBIDDEN =
703
+ T.let(
704
+ :transaction_forbidden,
705
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
706
+ )
707
+
708
+ # Real-Time Payments transfers are not enabled for the destination account. Corresponds to the Real-Time Payments reason code `AG03`.
709
+ TRANSACTION_TYPE_NOT_SUPPORTED =
710
+ T.let(
711
+ :transaction_type_not_supported,
712
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
713
+ )
714
+
715
+ # The amount of the transfer is different than expected by the recipient. Corresponds to the Real-Time Payments reason code `AM09`.
716
+ UNEXPECTED_AMOUNT =
717
+ T.let(
718
+ :unexpected_amount,
719
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
720
+ )
721
+
722
+ # The amount is higher than the recipient is authorized to send or receive. Corresponds to the Real-Time Payments reason code `AM14`.
723
+ AMOUNT_EXCEEDS_BANK_LIMITS =
724
+ T.let(
725
+ :amount_exceeds_bank_limits,
726
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
727
+ )
728
+
729
+ # The debtor's address is required, but missing or invalid. Corresponds to the Real-Time Payments reason code `BE07`.
730
+ INVALID_DEBTOR_ADDRESS =
731
+ T.let(
732
+ :invalid_debtor_address,
733
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
734
+ )
735
+
736
+ # The creditor's address is required, but missing or invalid. Corresponds to the Real-Time Payments reason code `BE04`.
737
+ INVALID_CREDITOR_ADDRESS =
738
+ T.let(
739
+ :invalid_creditor_address,
740
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
741
+ )
742
+
743
+ # Creditor identifier incorrect. Corresponds to the Real-Time Payments reason code `CH11`.
744
+ CREDITOR_IDENTIFIER_INCORRECT =
745
+ T.let(
746
+ :creditor_identifier_incorrect,
747
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
748
+ )
749
+
750
+ # The customer refused the request. Corresponds to the Real-Time Payments reason code `CUST`.
751
+ REQUESTED_BY_CUSTOMER =
752
+ T.let(
753
+ :requested_by_customer,
754
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
755
+ )
756
+
757
+ # The order was rejected. Corresponds to the Real-Time Payments reason code `DS04`.
758
+ ORDER_REJECTED =
759
+ T.let(
760
+ :order_rejected,
761
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
762
+ )
763
+
764
+ # The destination account holder is deceased. Corresponds to the Real-Time Payments reason code `MD07`.
765
+ END_CUSTOMER_DECEASED =
766
+ T.let(
767
+ :end_customer_deceased,
768
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
769
+ )
770
+
771
+ # The customer has opted out of receiving requests for payments from this creditor. Corresponds to the Real-Time Payments reason code `SL12`.
772
+ CUSTOMER_HAS_OPTED_OUT =
773
+ T.let(
774
+ :customer_has_opted_out,
775
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
776
+ )
777
+
778
+ # Some other error or issue has occurred.
779
+ OTHER =
780
+ T.let(
781
+ :other,
782
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
783
+ )
784
+
785
+ sig do
786
+ override.returns(
787
+ T::Array[
788
+ Increase::RealTimePaymentsRequestForPayment::Refusal::RefusalReasonCode::TaggedSymbol
789
+ ]
790
+ )
791
+ end
792
+ def self.values
793
+ end
794
+ end
795
+ end
796
+
797
+ class Rejection < Increase::Internal::Type::BaseModel
798
+ OrHash =
799
+ T.type_alias do
800
+ T.any(
801
+ Increase::RealTimePaymentsRequestForPayment::Rejection,
802
+ Increase::Internal::AnyHash
803
+ )
804
+ end
805
+
806
+ # Additional information about the rejection provided by the recipient bank or the
807
+ # Real-Time Payments network. This is typically present when the
808
+ # `reject_reason_code` is `narrative`.
809
+ sig { returns(T.nilable(String)) }
810
+ attr_accessor :reject_reason_additional_information
811
+
812
+ # The reason the request for payment was rejected as provided by the recipient
813
+ # bank or the Real-Time Payments network.
814
+ sig do
815
+ returns(
816
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
817
+ )
818
+ end
819
+ attr_accessor :reject_reason_code
820
+
821
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
822
+ # the request for payment was rejected.
823
+ sig { returns(T.nilable(Time)) }
824
+ attr_accessor :rejected_at
825
+
826
+ # If the request for payment is rejected by Real-Time Payments or the destination
827
+ # financial institution, this will contain supplemental details.
828
+ sig do
829
+ params(
830
+ reject_reason_additional_information: T.nilable(String),
831
+ reject_reason_code:
832
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::OrSymbol,
833
+ rejected_at: T.nilable(Time)
834
+ ).returns(T.attached_class)
835
+ end
836
+ def self.new(
837
+ # Additional information about the rejection provided by the recipient bank or the
838
+ # Real-Time Payments network. This is typically present when the
839
+ # `reject_reason_code` is `narrative`.
840
+ reject_reason_additional_information:,
841
+ # The reason the request for payment was rejected as provided by the recipient
842
+ # bank or the Real-Time Payments network.
843
+ reject_reason_code:,
844
+ # The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time at which
845
+ # the request for payment was rejected.
846
+ rejected_at:
847
+ )
848
+ end
849
+
850
+ sig do
851
+ override.returns(
852
+ {
853
+ reject_reason_additional_information: T.nilable(String),
854
+ reject_reason_code:
855
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol,
856
+ rejected_at: T.nilable(Time)
857
+ }
858
+ )
859
+ end
860
+ def to_hash
861
+ end
862
+
863
+ # The reason the request for payment was rejected as provided by the recipient
864
+ # bank or the Real-Time Payments network.
865
+ module RejectReasonCode
866
+ extend Increase::Internal::Type::Enum
867
+
868
+ TaggedSymbol =
869
+ T.type_alias do
870
+ T.all(
871
+ Symbol,
872
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode
873
+ )
874
+ end
875
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
876
+
877
+ # The destination account is closed. Corresponds to the Real-Time Payments reason code "AC04".
878
+ ACCOUNT_CLOSED =
879
+ T.let(
880
+ :account_closed,
881
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
882
+ )
883
+
884
+ # The destination account is currently blocked from receiving transactions. Corresponds to the Real-Time Payments reason code "AC06".
885
+ ACCOUNT_BLOCKED =
886
+ T.let(
887
+ :account_blocked,
888
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
889
+ )
890
+
891
+ # The destination account is ineligible to receive Real-Time Payments transfers. Corresponds to the Real-Time Payments reason code "AC14".
892
+ INVALID_CREDITOR_ACCOUNT_TYPE =
893
+ T.let(
894
+ :invalid_creditor_account_type,
895
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
896
+ )
897
+
898
+ # The destination account does not exist. Corresponds to the Real-Time Payments reason code "AC03".
899
+ INVALID_CREDITOR_ACCOUNT_NUMBER =
900
+ T.let(
901
+ :invalid_creditor_account_number,
902
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
903
+ )
904
+
905
+ # The destination routing number is invalid. Corresponds to the Real-Time Payments reason code "RC04".
906
+ INVALID_CREDITOR_FINANCIAL_INSTITUTION_IDENTIFIER =
907
+ T.let(
908
+ :invalid_creditor_financial_institution_identifier,
909
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
910
+ )
911
+
912
+ # The destination account holder is deceased. Corresponds to the Real-Time Payments reason code "MD07".
913
+ END_CUSTOMER_DECEASED =
914
+ T.let(
915
+ :end_customer_deceased,
916
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
917
+ )
918
+
919
+ # The reason is provided as narrative information in the additional information field.
920
+ NARRATIVE =
921
+ T.let(
922
+ :narrative,
923
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
924
+ )
925
+
926
+ # Real-Time Payments transfers are not allowed to the destination account. Corresponds to the Real-Time Payments reason code "AG01".
927
+ TRANSACTION_FORBIDDEN =
928
+ T.let(
929
+ :transaction_forbidden,
930
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
931
+ )
932
+
933
+ # Real-Time Payments transfers are not enabled for the destination account. Corresponds to the Real-Time Payments reason code "AG03".
934
+ TRANSACTION_TYPE_NOT_SUPPORTED =
935
+ T.let(
936
+ :transaction_type_not_supported,
937
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
938
+ )
939
+
940
+ # The amount of the transfer is different than expected by the recipient. Corresponds to the Real-Time Payments reason code "AM09".
941
+ UNEXPECTED_AMOUNT =
942
+ T.let(
943
+ :unexpected_amount,
944
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
945
+ )
946
+
947
+ # The amount is higher than the recipient is authorized to send or receive. Corresponds to the Real-Time Payments reason code "AM14".
948
+ AMOUNT_EXCEEDS_BANK_LIMITS =
949
+ T.let(
950
+ :amount_exceeds_bank_limits,
951
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
952
+ )
953
+
954
+ # The creditor's address is required, but missing or invalid. Corresponds to the Real-Time Payments reason code "BE04".
955
+ INVALID_CREDITOR_ADDRESS =
956
+ T.let(
957
+ :invalid_creditor_address,
958
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
959
+ )
960
+
961
+ # The specified creditor is unknown. Corresponds to the Real-Time Payments reason code "BE06".
962
+ UNKNOWN_END_CUSTOMER =
963
+ T.let(
964
+ :unknown_end_customer,
965
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
966
+ )
967
+
968
+ # The debtor's address is required, but missing or invalid. Corresponds to the Real-Time Payments reason code "BE07".
969
+ INVALID_DEBTOR_ADDRESS =
970
+ T.let(
971
+ :invalid_debtor_address,
972
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
973
+ )
974
+
975
+ # There was a timeout processing the transfer. Corresponds to the Real-Time Payments reason code "DS24".
976
+ TIMEOUT =
977
+ T.let(
978
+ :timeout,
979
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
980
+ )
981
+
982
+ # Real-Time Payments transfers are not enabled for the destination account. Corresponds to the Real-Time Payments reason code "NOAT".
983
+ UNSUPPORTED_MESSAGE_FOR_RECIPIENT =
984
+ T.let(
985
+ :unsupported_message_for_recipient,
986
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
987
+ )
988
+
989
+ # The destination financial institution is currently not connected to Real-Time Payments. Corresponds to the Real-Time Payments reason code "9912".
990
+ RECIPIENT_CONNECTION_NOT_AVAILABLE =
991
+ T.let(
992
+ :recipient_connection_not_available,
993
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
994
+ )
995
+
996
+ # Real-Time Payments is currently unavailable. Corresponds to the Real-Time Payments reason code "9948".
997
+ REAL_TIME_PAYMENTS_SUSPENDED =
998
+ T.let(
999
+ :real_time_payments_suspended,
1000
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
1001
+ )
1002
+
1003
+ # The destination financial institution is currently signed off of Real-Time Payments. Corresponds to the Real-Time Payments reason code "9910".
1004
+ INSTRUCTED_AGENT_SIGNED_OFF =
1005
+ T.let(
1006
+ :instructed_agent_signed_off,
1007
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
1008
+ )
1009
+
1010
+ # The transfer was rejected due to an internal Increase issue. We have been notified.
1011
+ PROCESSING_ERROR =
1012
+ T.let(
1013
+ :processing_error,
1014
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
1015
+ )
1016
+
1017
+ # Some other error or issue has occurred.
1018
+ OTHER =
1019
+ T.let(
1020
+ :other,
1021
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
1022
+ )
1023
+
1024
+ sig do
1025
+ override.returns(
1026
+ T::Array[
1027
+ Increase::RealTimePaymentsRequestForPayment::Rejection::RejectReasonCode::TaggedSymbol
1028
+ ]
1029
+ )
1030
+ end
1031
+ def self.values
1032
+ end
1033
+ end
1034
+ end
1035
+
1036
+ # The lifecycle status of the request for payment.
1037
+ module Status
1038
+ extend Increase::Internal::Type::Enum
1039
+
1040
+ TaggedSymbol =
1041
+ T.type_alias do
1042
+ T.all(Symbol, Increase::RealTimePaymentsRequestForPayment::Status)
1043
+ end
1044
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1045
+
1046
+ # The request for payment is queued to be submitted to Real-Time Payments.
1047
+ PENDING_SUBMISSION =
1048
+ T.let(
1049
+ :pending_submission,
1050
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1051
+ )
1052
+
1053
+ # The request for payment has been submitted and is pending a response from Real-Time Payments.
1054
+ PENDING_RESPONSE =
1055
+ T.let(
1056
+ :pending_response,
1057
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1058
+ )
1059
+
1060
+ # The request for payment was rejected by the network or the recipient.
1061
+ REJECTED =
1062
+ T.let(
1063
+ :rejected,
1064
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1065
+ )
1066
+
1067
+ # The request for payment was accepted by the recipient but has not yet been paid.
1068
+ ACCEPTED =
1069
+ T.let(
1070
+ :accepted,
1071
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1072
+ )
1073
+
1074
+ # The request for payment was refused by the recipient.
1075
+ REFUSED =
1076
+ T.let(
1077
+ :refused,
1078
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1079
+ )
1080
+
1081
+ # The request for payment was fulfilled by the receiver.
1082
+ FULFILLED =
1083
+ T.let(
1084
+ :fulfilled,
1085
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1086
+ )
1087
+
1088
+ # The request for payment was canceled and can no longer be paid.
1089
+ CANCELED =
1090
+ T.let(
1091
+ :canceled,
1092
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1093
+ )
1094
+
1095
+ sig do
1096
+ override.returns(
1097
+ T::Array[
1098
+ Increase::RealTimePaymentsRequestForPayment::Status::TaggedSymbol
1099
+ ]
1100
+ )
1101
+ end
1102
+ def self.values
1103
+ end
1104
+ end
1105
+
1106
+ class Submission < Increase::Internal::Type::BaseModel
1107
+ OrHash =
1108
+ T.type_alias do
1109
+ T.any(
1110
+ Increase::RealTimePaymentsRequestForPayment::Submission,
1111
+ Increase::Internal::AnyHash
1112
+ )
1113
+ end
1114
+
1115
+ # The Real-Time Payments payment information identification of the request.
1116
+ sig { returns(String) }
1117
+ attr_accessor :payment_information_identification
1118
+
1119
+ # After the request for payment is submitted to Real-Time Payments, this will
1120
+ # contain supplemental details.
1121
+ sig do
1122
+ params(payment_information_identification: String).returns(
1123
+ T.attached_class
1124
+ )
1125
+ end
1126
+ def self.new(
1127
+ # The Real-Time Payments payment information identification of the request.
1128
+ payment_information_identification:
1129
+ )
1130
+ end
1131
+
1132
+ sig { override.returns({ payment_information_identification: String }) }
1133
+ def to_hash
1134
+ end
1135
+ end
1136
+
1137
+ # A constant representing the object's type. For this resource it will always be
1138
+ # `real_time_payments_request_for_payment`.
1139
+ module Type
1140
+ extend Increase::Internal::Type::Enum
1141
+
1142
+ TaggedSymbol =
1143
+ T.type_alias do
1144
+ T.all(Symbol, Increase::RealTimePaymentsRequestForPayment::Type)
1145
+ end
1146
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1147
+
1148
+ REAL_TIME_PAYMENTS_REQUEST_FOR_PAYMENT =
1149
+ T.let(
1150
+ :real_time_payments_request_for_payment,
1151
+ Increase::RealTimePaymentsRequestForPayment::Type::TaggedSymbol
1152
+ )
1153
+
1154
+ sig do
1155
+ override.returns(
1156
+ T::Array[
1157
+ Increase::RealTimePaymentsRequestForPayment::Type::TaggedSymbol
1158
+ ]
1159
+ )
1160
+ end
1161
+ def self.values
1162
+ end
1163
+ end
1164
+ end
1165
+ end
1166
+ end