straddle 0.1.1 → 0.3.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 (248) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +66 -0
  3. data/README.md +2 -2
  4. data/SECURITY.md +1 -1
  5. data/lib/straddle/client.rb +3 -3
  6. data/lib/straddle/errors.rb +25 -11
  7. data/lib/straddle/file_part.rb +10 -7
  8. data/lib/straddle/internal/page_number_schema.rb +1 -1
  9. data/lib/straddle/internal/transport/base_client.rb +19 -9
  10. data/lib/straddle/internal/transport/pooled_net_requester.rb +41 -42
  11. data/lib/straddle/internal/type/array_of.rb +1 -0
  12. data/lib/straddle/internal/type/base_model.rb +4 -9
  13. data/lib/straddle/internal/type/base_page.rb +1 -1
  14. data/lib/straddle/internal/type/converter.rb +27 -0
  15. data/lib/straddle/internal/type/file_input.rb +7 -4
  16. data/lib/straddle/internal/type/hash_of.rb +1 -0
  17. data/lib/straddle/internal/type/union.rb +9 -7
  18. data/lib/straddle/internal/util.rb +9 -8
  19. data/lib/straddle/models/bridge/link_bank_account_params.rb +39 -6
  20. data/lib/straddle/models/bridge/link_create_paykey_params.rb +39 -6
  21. data/lib/straddle/models/bridge/link_create_paykey_response.rb +31 -2
  22. data/lib/straddle/models/bridge/link_create_tan_params.rb +38 -6
  23. data/lib/straddle/models/bridge/link_create_tan_response.rb +31 -2
  24. data/lib/straddle/models/bridge/link_plaid_params.rb +37 -2
  25. data/lib/straddle/models/bridge_initialize_params.rb +37 -2
  26. data/lib/straddle/models/charge_cancel_params.rb +8 -1
  27. data/lib/straddle/models/charge_create_params.rb +8 -1
  28. data/lib/straddle/models/charge_hold_params.rb +8 -1
  29. data/lib/straddle/models/charge_release_params.rb +8 -1
  30. data/lib/straddle/models/charge_update_params.rb +8 -1
  31. data/lib/straddle/models/customer_create_params.rb +8 -1
  32. data/lib/straddle/models/customer_delete_params.rb +7 -1
  33. data/lib/straddle/models/customer_unmasked_v1.rb +1 -4
  34. data/lib/straddle/models/customer_update_params.rb +8 -1
  35. data/lib/straddle/models/customers/customer_review_v1.rb +15 -50
  36. data/lib/straddle/models/customers/review_decision_params.rb +8 -1
  37. data/lib/straddle/models/customers/review_refresh_review_params.rb +40 -0
  38. data/lib/straddle/models/embed/account_create_params.rb +8 -1
  39. data/lib/straddle/models/embed/account_onboard_params.rb +7 -1
  40. data/lib/straddle/models/embed/account_paged_v1.rb +3 -12
  41. data/lib/straddle/models/embed/account_simulate_params.rb +7 -1
  42. data/lib/straddle/models/embed/account_update_params.rb +8 -1
  43. data/lib/straddle/models/embed/account_v1.rb +2 -8
  44. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +8 -1
  45. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +3 -11
  46. data/lib/straddle/models/embed/linked_bank_account_cancel_params.rb +34 -0
  47. data/lib/straddle/models/embed/linked_bank_account_create_params.rb +51 -4
  48. data/lib/straddle/models/embed/linked_bank_account_list_params.rb +51 -1
  49. data/lib/straddle/models/embed/linked_bank_account_paged_v1.rb +33 -13
  50. data/lib/straddle/models/embed/linked_bank_account_unmask_v1.rb +3 -8
  51. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +8 -1
  52. data/lib/straddle/models/embed/linked_bank_account_v1.rb +30 -1
  53. data/lib/straddle/models/embed/organization_create_params.rb +8 -1
  54. data/lib/straddle/models/embed/representative.rb +10 -1
  55. data/lib/straddle/models/embed/representative_create_params.rb +17 -1
  56. data/lib/straddle/models/embed/representative_paged.rb +10 -1
  57. data/lib/straddle/models/embed/representative_update_params.rb +17 -1
  58. data/lib/straddle/models/funding_event_list_params.rb +9 -1
  59. data/lib/straddle/models/funding_event_summary_item_v1.rb +25 -1
  60. data/lib/straddle/models/funding_event_summary_paged_v1.rb +25 -1
  61. data/lib/straddle/models/paykey_cancel_params.rb +7 -1
  62. data/lib/straddle/models/paykey_reveal_response.rb +31 -2
  63. data/lib/straddle/models/paykey_summary_paged_v1.rb +30 -2
  64. data/lib/straddle/models/paykey_unmasked_v1.rb +30 -2
  65. data/lib/straddle/models/{customer_refresh_review_params.rb → paykey_update_balance_params.rb} +9 -3
  66. data/lib/straddle/models/paykey_v1.rb +30 -2
  67. data/lib/straddle/models/paykeys/review_decision_params.rb +56 -0
  68. data/lib/straddle/models/paykeys/review_get_params.rb +34 -0
  69. data/lib/straddle/models/paykeys/review_get_response.rb +642 -0
  70. data/lib/straddle/models/paykeys/review_refresh_review_params.rb +40 -0
  71. data/lib/straddle/models/payment_summary_paged_v1.rb +9 -1
  72. data/lib/straddle/models/payout_cancel_params.rb +8 -1
  73. data/lib/straddle/models/payout_create_params.rb +8 -1
  74. data/lib/straddle/models/payout_hold_params.rb +8 -1
  75. data/lib/straddle/models/payout_release_params.rb +8 -1
  76. data/lib/straddle/models/payout_update_params.rb +8 -1
  77. data/lib/straddle/models.rb +4 -2
  78. data/lib/straddle/resources/bridge/link.rb +24 -4
  79. data/lib/straddle/resources/bridge.rb +6 -1
  80. data/lib/straddle/resources/charges.rb +20 -5
  81. data/lib/straddle/resources/customers/review.rb +41 -1
  82. data/lib/straddle/resources/customers.rb +12 -37
  83. data/lib/straddle/resources/embed/accounts/capability_requests.rb +5 -2
  84. data/lib/straddle/resources/embed/accounts.rb +19 -7
  85. data/lib/straddle/resources/embed/linked_bank_accounts.rb +66 -7
  86. data/lib/straddle/resources/embed/organizations.rb +5 -2
  87. data/lib/straddle/resources/embed/representatives.rb +14 -4
  88. data/lib/straddle/resources/funding_events.rb +4 -1
  89. data/lib/straddle/resources/paykeys/review.rb +128 -0
  90. data/lib/straddle/resources/paykeys.rb +44 -1
  91. data/lib/straddle/resources/payouts.rb +20 -5
  92. data/lib/straddle/version.rb +1 -1
  93. data/lib/straddle.rb +9 -1
  94. data/manifest.yaml +1 -0
  95. data/rbi/straddle/client.rbi +4 -4
  96. data/rbi/straddle/errors.rbi +31 -4
  97. data/rbi/straddle/file_part.rbi +1 -1
  98. data/rbi/straddle/internal/transport/base_client.rbi +10 -6
  99. data/rbi/straddle/internal/transport/pooled_net_requester.rbi +6 -2
  100. data/rbi/straddle/internal/type/base_model.rbi +8 -4
  101. data/rbi/straddle/internal/type/base_page.rbi +1 -1
  102. data/rbi/straddle/internal/type/converter.rbi +54 -0
  103. data/rbi/straddle/internal/type/union.rbi +9 -2
  104. data/rbi/straddle/internal/util.rbi +1 -1
  105. data/rbi/straddle/models/bridge/link_bank_account_params.rbi +85 -1
  106. data/rbi/straddle/models/bridge/link_create_paykey_params.rbi +85 -1
  107. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +76 -1
  108. data/rbi/straddle/models/bridge/link_create_tan_params.rbi +85 -1
  109. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +76 -1
  110. data/rbi/straddle/models/bridge/link_plaid_params.rbi +85 -1
  111. data/rbi/straddle/models/bridge_initialize_params.rbi +85 -1
  112. data/rbi/straddle/models/charge_cancel_params.rbi +9 -0
  113. data/rbi/straddle/models/charge_create_params.rbi +9 -0
  114. data/rbi/straddle/models/charge_hold_params.rbi +9 -0
  115. data/rbi/straddle/models/charge_release_params.rbi +9 -0
  116. data/rbi/straddle/models/charge_update_params.rbi +9 -0
  117. data/rbi/straddle/models/customer_create_params.rbi +9 -0
  118. data/rbi/straddle/models/customer_delete_params.rbi +9 -0
  119. data/rbi/straddle/models/customer_update_params.rbi +9 -0
  120. data/rbi/straddle/models/customers/review_decision_params.rbi +9 -0
  121. data/rbi/straddle/models/customers/review_refresh_review_params.rbi +76 -0
  122. data/rbi/straddle/models/embed/account_create_params.rbi +9 -0
  123. data/rbi/straddle/models/embed/account_onboard_params.rbi +9 -0
  124. data/rbi/straddle/models/embed/account_simulate_params.rbi +9 -0
  125. data/rbi/straddle/models/embed/account_update_params.rbi +9 -0
  126. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +9 -0
  127. data/rbi/straddle/models/embed/linked_bank_account_cancel_params.rbi +67 -0
  128. data/rbi/straddle/models/embed/linked_bank_account_create_params.rbi +95 -3
  129. data/rbi/straddle/models/embed/linked_bank_account_list_params.rbi +149 -0
  130. data/rbi/straddle/models/embed/linked_bank_account_paged_v1.rbi +72 -0
  131. data/rbi/straddle/models/embed/linked_bank_account_unmask_v1.rbi +5 -0
  132. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +9 -0
  133. data/rbi/straddle/models/embed/linked_bank_account_v1.rbi +72 -0
  134. data/rbi/straddle/models/embed/organization_create_params.rbi +9 -0
  135. data/rbi/straddle/models/embed/representative.rbi +10 -0
  136. data/rbi/straddle/models/embed/representative_create_params.rbi +19 -0
  137. data/rbi/straddle/models/embed/representative_paged.rbi +10 -0
  138. data/rbi/straddle/models/embed/representative_update_params.rbi +19 -0
  139. data/rbi/straddle/models/funding_event_list_params.rbi +8 -0
  140. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +24 -0
  141. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +24 -0
  142. data/rbi/straddle/models/paykey_cancel_params.rbi +9 -0
  143. data/rbi/straddle/models/paykey_reveal_response.rbi +76 -1
  144. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +76 -1
  145. data/rbi/straddle/models/paykey_unmasked_v1.rbi +76 -1
  146. data/rbi/straddle/models/{customer_refresh_review_params.rbi → paykey_update_balance_params.rbi} +11 -2
  147. data/rbi/straddle/models/paykey_v1.rbi +76 -1
  148. data/rbi/straddle/models/paykeys/review_decision_params.rbi +115 -0
  149. data/rbi/straddle/models/paykeys/review_get_params.rbi +67 -0
  150. data/rbi/straddle/models/paykeys/review_get_response.rbi +1524 -0
  151. data/rbi/straddle/models/paykeys/review_refresh_review_params.rbi +76 -0
  152. data/rbi/straddle/models/payment_summary_paged_v1.rbi +8 -0
  153. data/rbi/straddle/models/payout_cancel_params.rbi +9 -0
  154. data/rbi/straddle/models/payout_create_params.rbi +9 -0
  155. data/rbi/straddle/models/payout_hold_params.rbi +9 -0
  156. data/rbi/straddle/models/payout_release_params.rbi +9 -0
  157. data/rbi/straddle/models/payout_update_params.rbi +9 -0
  158. data/rbi/straddle/models.rbi +4 -2
  159. data/rbi/straddle/resources/bridge/link.rbi +28 -0
  160. data/rbi/straddle/resources/bridge.rbi +7 -0
  161. data/rbi/straddle/resources/charges.rbi +15 -0
  162. data/rbi/straddle/resources/customers/review.rbi +30 -0
  163. data/rbi/straddle/resources/customers.rbi +9 -24
  164. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +3 -0
  165. data/rbi/straddle/resources/embed/accounts.rbi +12 -0
  166. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +56 -1
  167. data/rbi/straddle/resources/embed/organizations.rbi +3 -0
  168. data/rbi/straddle/resources/embed/representatives.rbi +14 -0
  169. data/rbi/straddle/resources/funding_events.rbi +3 -0
  170. data/rbi/straddle/resources/paykeys/review.rbi +94 -0
  171. data/rbi/straddle/resources/paykeys.rbi +32 -0
  172. data/rbi/straddle/resources/payouts.rbi +15 -0
  173. data/sig/straddle/client.rbs +2 -2
  174. data/sig/straddle/errors.rbs +7 -0
  175. data/sig/straddle/file_part.rbs +1 -1
  176. data/sig/straddle/internal/transport/base_client.rbs +3 -1
  177. data/sig/straddle/internal/transport/pooled_net_requester.rbs +4 -1
  178. data/sig/straddle/internal/type/converter.rbs +17 -0
  179. data/sig/straddle/internal/type/union.rbs +2 -2
  180. data/sig/straddle/models/bridge/link_bank_account_params.rbs +35 -1
  181. data/sig/straddle/models/bridge/link_create_paykey_params.rbs +35 -1
  182. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +28 -1
  183. data/sig/straddle/models/bridge/link_create_tan_params.rbs +35 -1
  184. data/sig/straddle/models/bridge/link_create_tan_response.rbs +28 -1
  185. data/sig/straddle/models/bridge/link_plaid_params.rbs +35 -1
  186. data/sig/straddle/models/bridge_initialize_params.rbs +35 -1
  187. data/sig/straddle/models/charge_cancel_params.rbs +7 -0
  188. data/sig/straddle/models/charge_create_params.rbs +7 -0
  189. data/sig/straddle/models/charge_hold_params.rbs +7 -0
  190. data/sig/straddle/models/charge_release_params.rbs +7 -0
  191. data/sig/straddle/models/charge_update_params.rbs +7 -0
  192. data/sig/straddle/models/customer_create_params.rbs +7 -0
  193. data/sig/straddle/models/customer_delete_params.rbs +7 -0
  194. data/sig/straddle/models/customer_update_params.rbs +7 -0
  195. data/sig/straddle/models/customers/review_decision_params.rbs +7 -0
  196. data/sig/straddle/models/customers/review_refresh_review_params.rbs +51 -0
  197. data/sig/straddle/models/embed/account_create_params.rbs +7 -0
  198. data/sig/straddle/models/embed/account_onboard_params.rbs +7 -0
  199. data/sig/straddle/models/embed/account_simulate_params.rbs +7 -0
  200. data/sig/straddle/models/embed/account_update_params.rbs +7 -0
  201. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +7 -0
  202. data/sig/straddle/models/embed/linked_bank_account_cancel_params.rbs +40 -0
  203. data/sig/straddle/models/embed/linked_bank_account_create_params.rbs +38 -4
  204. data/sig/straddle/models/embed/linked_bank_account_list_params.rbs +46 -0
  205. data/sig/straddle/models/embed/linked_bank_account_paged_v1.rbs +25 -1
  206. data/sig/straddle/models/embed/linked_bank_account_unmask_v1.rbs +3 -1
  207. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +7 -0
  208. data/sig/straddle/models/embed/linked_bank_account_v1.rbs +25 -1
  209. data/sig/straddle/models/embed/organization_create_params.rbs +7 -0
  210. data/sig/straddle/models/embed/representative.rbs +5 -0
  211. data/sig/straddle/models/embed/representative_create_params.rbs +12 -0
  212. data/sig/straddle/models/embed/representative_paged.rbs +5 -0
  213. data/sig/straddle/models/embed/representative_update_params.rbs +12 -0
  214. data/sig/straddle/models/funding_event_list_params.rbs +5 -0
  215. data/sig/straddle/models/funding_event_summary_item_v1.rbs +15 -0
  216. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +15 -0
  217. data/sig/straddle/models/paykey_cancel_params.rbs +7 -0
  218. data/sig/straddle/models/paykey_reveal_response.rbs +28 -1
  219. data/sig/straddle/models/paykey_summary_paged_v1.rbs +28 -1
  220. data/sig/straddle/models/paykey_unmasked_v1.rbs +28 -1
  221. data/sig/straddle/models/{customer_refresh_review_params.rbs → paykey_update_balance_params.rbs} +9 -2
  222. data/sig/straddle/models/paykey_v1.rbs +28 -1
  223. data/sig/straddle/models/paykeys/review_decision_params.rbs +67 -0
  224. data/sig/straddle/models/paykeys/review_get_params.rbs +44 -0
  225. data/sig/straddle/models/paykeys/review_get_response.rbs +627 -0
  226. data/sig/straddle/models/paykeys/review_refresh_review_params.rbs +51 -0
  227. data/sig/straddle/models/payment_summary_paged_v1.rbs +5 -0
  228. data/sig/straddle/models/payout_cancel_params.rbs +7 -0
  229. data/sig/straddle/models/payout_create_params.rbs +7 -0
  230. data/sig/straddle/models/payout_hold_params.rbs +7 -0
  231. data/sig/straddle/models/payout_release_params.rbs +7 -0
  232. data/sig/straddle/models/payout_update_params.rbs +7 -0
  233. data/sig/straddle/models.rbs +4 -2
  234. data/sig/straddle/resources/bridge/link.rbs +8 -0
  235. data/sig/straddle/resources/bridge.rbs +2 -0
  236. data/sig/straddle/resources/charges.rbs +5 -0
  237. data/sig/straddle/resources/customers/review.rbs +10 -0
  238. data/sig/straddle/resources/customers.rbs +3 -8
  239. data/sig/straddle/resources/embed/accounts/capability_requests.rbs +1 -0
  240. data/sig/straddle/resources/embed/accounts.rbs +4 -0
  241. data/sig/straddle/resources/embed/linked_bank_accounts.rbs +16 -1
  242. data/sig/straddle/resources/embed/organizations.rbs +1 -0
  243. data/sig/straddle/resources/embed/representatives.rbs +4 -0
  244. data/sig/straddle/resources/funding_events.rbs +1 -0
  245. data/sig/straddle/resources/paykeys/review.rbs +36 -0
  246. data/sig/straddle/resources/paykeys.rbs +12 -0
  247. data/sig/straddle/resources/payouts.rbs +5 -0
  248. metadata +27 -6
@@ -46,6 +46,11 @@ module Straddle
46
46
  end
47
47
  attr_writer :config
48
48
 
49
+ # Unique identifier for the paykey in your database, used for cross-referencing
50
+ # between Straddle and your systems.
51
+ sig { returns(T.nilable(String)) }
52
+ attr_accessor :external_id
53
+
49
54
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
50
55
  # information about the paykey in a structured format.
51
56
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
@@ -57,6 +62,12 @@ module Straddle
57
62
  sig { params(correlation_id: String).void }
58
63
  attr_writer :correlation_id
59
64
 
65
+ sig { returns(T.nilable(String)) }
66
+ attr_reader :idempotency_key
67
+
68
+ sig { params(idempotency_key: String).void }
69
+ attr_writer :idempotency_key
70
+
60
71
  sig { returns(T.nilable(String)) }
61
72
  attr_reader :request_id
62
73
 
@@ -77,8 +88,10 @@ module Straddle
77
88
  customer_id: String,
78
89
  routing_number: String,
79
90
  config: Straddle::Bridge::LinkBankAccountParams::Config::OrHash,
91
+ external_id: T.nilable(String),
80
92
  metadata: T.nilable(T::Hash[Symbol, String]),
81
93
  correlation_id: String,
94
+ idempotency_key: String,
82
95
  request_id: String,
83
96
  straddle_account_id: String,
84
97
  request_options: Straddle::RequestOptions::OrHash
@@ -93,10 +106,14 @@ module Straddle
93
106
  # The routing number of the bank account.
94
107
  routing_number:,
95
108
  config: nil,
109
+ # Unique identifier for the paykey in your database, used for cross-referencing
110
+ # between Straddle and your systems.
111
+ external_id: nil,
96
112
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
97
113
  # information about the paykey in a structured format.
98
114
  metadata: nil,
99
115
  correlation_id: nil,
116
+ idempotency_key: nil,
100
117
  request_id: nil,
101
118
  straddle_account_id: nil,
102
119
  request_options: {}
@@ -112,8 +129,10 @@ module Straddle
112
129
  customer_id: String,
113
130
  routing_number: String,
114
131
  config: Straddle::Bridge::LinkBankAccountParams::Config,
132
+ external_id: T.nilable(String),
115
133
  metadata: T.nilable(T::Hash[Symbol, String]),
116
134
  correlation_id: String,
135
+ idempotency_key: String,
117
136
  request_id: String,
118
137
  straddle_account_id: String,
119
138
  request_options: Straddle::RequestOptions
@@ -166,6 +185,23 @@ module Straddle
166
185
  )
167
186
  end
168
187
 
188
+ sig do
189
+ returns(
190
+ T.nilable(
191
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::OrSymbol
192
+ )
193
+ )
194
+ end
195
+ attr_reader :processing_method
196
+
197
+ sig do
198
+ params(
199
+ processing_method:
200
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::OrSymbol
201
+ ).void
202
+ end
203
+ attr_writer :processing_method
204
+
169
205
  sig do
170
206
  returns(
171
207
  T.nilable(
@@ -185,16 +221,20 @@ module Straddle
185
221
 
186
222
  sig do
187
223
  params(
224
+ processing_method:
225
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::OrSymbol,
188
226
  sandbox_outcome:
189
227
  Straddle::Bridge::LinkBankAccountParams::Config::SandboxOutcome::OrSymbol
190
228
  ).returns(T.attached_class)
191
229
  end
192
- def self.new(sandbox_outcome: nil)
230
+ def self.new(processing_method: nil, sandbox_outcome: nil)
193
231
  end
194
232
 
195
233
  sig do
196
234
  override.returns(
197
235
  {
236
+ processing_method:
237
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::OrSymbol,
198
238
  sandbox_outcome:
199
239
  Straddle::Bridge::LinkBankAccountParams::Config::SandboxOutcome::OrSymbol
200
240
  }
@@ -203,6 +243,45 @@ module Straddle
203
243
  def to_hash
204
244
  end
205
245
 
246
+ module ProcessingMethod
247
+ extend Straddle::Internal::Type::Enum
248
+
249
+ TaggedSymbol =
250
+ T.type_alias do
251
+ T.all(
252
+ Symbol,
253
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod
254
+ )
255
+ end
256
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
257
+
258
+ INLINE =
259
+ T.let(
260
+ :inline,
261
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::TaggedSymbol
262
+ )
263
+ BACKGROUND =
264
+ T.let(
265
+ :background,
266
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::TaggedSymbol
267
+ )
268
+ SKIP =
269
+ T.let(
270
+ :skip,
271
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::TaggedSymbol
272
+ )
273
+
274
+ sig do
275
+ override.returns(
276
+ T::Array[
277
+ Straddle::Bridge::LinkBankAccountParams::Config::ProcessingMethod::TaggedSymbol
278
+ ]
279
+ )
280
+ end
281
+ def self.values
282
+ end
283
+ end
284
+
206
285
  module SandboxOutcome
207
286
  extend Straddle::Internal::Type::Enum
208
287
 
@@ -230,6 +309,11 @@ module Straddle
230
309
  :rejected,
231
310
  Straddle::Bridge::LinkBankAccountParams::Config::SandboxOutcome::TaggedSymbol
232
311
  )
312
+ REVIEW =
313
+ T.let(
314
+ :review,
315
+ Straddle::Bridge::LinkBankAccountParams::Config::SandboxOutcome::TaggedSymbol
316
+ )
233
317
 
234
318
  sig do
235
319
  override.returns(
@@ -36,6 +36,11 @@ module Straddle
36
36
  end
37
37
  attr_writer :config
38
38
 
39
+ # Unique identifier for the paykey in your database, used for cross-referencing
40
+ # between Straddle and your systems.
41
+ sig { returns(T.nilable(String)) }
42
+ attr_accessor :external_id
43
+
39
44
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
40
45
  # information about the paykey in a structured format.
41
46
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
@@ -47,6 +52,12 @@ module Straddle
47
52
  sig { params(correlation_id: String).void }
48
53
  attr_writer :correlation_id
49
54
 
55
+ sig { returns(T.nilable(String)) }
56
+ attr_reader :idempotency_key
57
+
58
+ sig { params(idempotency_key: String).void }
59
+ attr_writer :idempotency_key
60
+
50
61
  sig { returns(T.nilable(String)) }
51
62
  attr_reader :request_id
52
63
 
@@ -64,8 +75,10 @@ module Straddle
64
75
  customer_id: String,
65
76
  quiltt_token: String,
66
77
  config: Straddle::Bridge::LinkCreatePaykeyParams::Config::OrHash,
78
+ external_id: T.nilable(String),
67
79
  metadata: T.nilable(T::Hash[Symbol, String]),
68
80
  correlation_id: String,
81
+ idempotency_key: String,
69
82
  request_id: String,
70
83
  straddle_account_id: String,
71
84
  request_options: Straddle::RequestOptions::OrHash
@@ -78,10 +91,14 @@ module Straddle
78
91
  # API.
79
92
  quiltt_token:,
80
93
  config: nil,
94
+ # Unique identifier for the paykey in your database, used for cross-referencing
95
+ # between Straddle and your systems.
96
+ external_id: nil,
81
97
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
82
98
  # information about the paykey in a structured format.
83
99
  metadata: nil,
84
100
  correlation_id: nil,
101
+ idempotency_key: nil,
85
102
  request_id: nil,
86
103
  straddle_account_id: nil,
87
104
  request_options: {}
@@ -94,8 +111,10 @@ module Straddle
94
111
  customer_id: String,
95
112
  quiltt_token: String,
96
113
  config: Straddle::Bridge::LinkCreatePaykeyParams::Config,
114
+ external_id: T.nilable(String),
97
115
  metadata: T.nilable(T::Hash[Symbol, String]),
98
116
  correlation_id: String,
117
+ idempotency_key: String,
99
118
  request_id: String,
100
119
  straddle_account_id: String,
101
120
  request_options: Straddle::RequestOptions
@@ -114,6 +133,23 @@ module Straddle
114
133
  )
115
134
  end
116
135
 
136
+ sig do
137
+ returns(
138
+ T.nilable(
139
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::OrSymbol
140
+ )
141
+ )
142
+ end
143
+ attr_reader :processing_method
144
+
145
+ sig do
146
+ params(
147
+ processing_method:
148
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::OrSymbol
149
+ ).void
150
+ end
151
+ attr_writer :processing_method
152
+
117
153
  sig do
118
154
  returns(
119
155
  T.nilable(
@@ -133,16 +169,20 @@ module Straddle
133
169
 
134
170
  sig do
135
171
  params(
172
+ processing_method:
173
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::OrSymbol,
136
174
  sandbox_outcome:
137
175
  Straddle::Bridge::LinkCreatePaykeyParams::Config::SandboxOutcome::OrSymbol
138
176
  ).returns(T.attached_class)
139
177
  end
140
- def self.new(sandbox_outcome: nil)
178
+ def self.new(processing_method: nil, sandbox_outcome: nil)
141
179
  end
142
180
 
143
181
  sig do
144
182
  override.returns(
145
183
  {
184
+ processing_method:
185
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::OrSymbol,
146
186
  sandbox_outcome:
147
187
  Straddle::Bridge::LinkCreatePaykeyParams::Config::SandboxOutcome::OrSymbol
148
188
  }
@@ -151,6 +191,45 @@ module Straddle
151
191
  def to_hash
152
192
  end
153
193
 
194
+ module ProcessingMethod
195
+ extend Straddle::Internal::Type::Enum
196
+
197
+ TaggedSymbol =
198
+ T.type_alias do
199
+ T.all(
200
+ Symbol,
201
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod
202
+ )
203
+ end
204
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
205
+
206
+ INLINE =
207
+ T.let(
208
+ :inline,
209
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::TaggedSymbol
210
+ )
211
+ BACKGROUND =
212
+ T.let(
213
+ :background,
214
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::TaggedSymbol
215
+ )
216
+ SKIP =
217
+ T.let(
218
+ :skip,
219
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::TaggedSymbol
220
+ )
221
+
222
+ sig do
223
+ override.returns(
224
+ T::Array[
225
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::ProcessingMethod::TaggedSymbol
226
+ ]
227
+ )
228
+ end
229
+ def self.values
230
+ end
231
+ end
232
+
154
233
  module SandboxOutcome
155
234
  extend Straddle::Internal::Type::Enum
156
235
 
@@ -178,6 +257,11 @@ module Straddle
178
257
  :rejected,
179
258
  Straddle::Bridge::LinkCreatePaykeyParams::Config::SandboxOutcome::TaggedSymbol
180
259
  )
260
+ REVIEW =
261
+ T.let(
262
+ :review,
263
+ Straddle::Bridge::LinkCreatePaykeyParams::Config::SandboxOutcome::TaggedSymbol
264
+ )
181
265
 
182
266
  sig do
183
267
  override.returns(
@@ -185,6 +185,11 @@ module Straddle
185
185
  sig { returns(T.nilable(Time)) }
186
186
  attr_accessor :expires_at
187
187
 
188
+ # Unique identifier for the paykey in your database, used for cross-referencing
189
+ # between Straddle and your systems.
190
+ sig { returns(T.nilable(String)) }
191
+ attr_accessor :external_id
192
+
188
193
  # Name of the financial institution.
189
194
  sig { returns(T.nilable(String)) }
190
195
  attr_accessor :institution_name
@@ -230,6 +235,7 @@ module Straddle
230
235
  Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::BankData::OrHash,
231
236
  customer_id: T.nilable(String),
232
237
  expires_at: T.nilable(Time),
238
+ external_id: T.nilable(String),
233
239
  institution_name: T.nilable(String),
234
240
  metadata: T.nilable(T::Hash[Symbol, String]),
235
241
  status_details:
@@ -258,6 +264,9 @@ module Straddle
258
264
  customer_id: nil,
259
265
  # Expiration date and time of the paykey, if applicable.
260
266
  expires_at: nil,
267
+ # Unique identifier for the paykey in your database, used for cross-referencing
268
+ # between Straddle and your systems.
269
+ external_id: nil,
261
270
  # Name of the financial institution.
262
271
  institution_name: nil,
263
272
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
@@ -287,6 +296,7 @@ module Straddle
287
296
  Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::BankData,
288
297
  customer_id: T.nilable(String),
289
298
  expires_at: T.nilable(Time),
299
+ external_id: T.nilable(String),
290
300
  institution_name: T.nilable(String),
291
301
  metadata: T.nilable(T::Hash[Symbol, String]),
292
302
  status_details:
@@ -306,6 +316,23 @@ module Straddle
306
316
  )
307
317
  end
308
318
 
319
+ sig do
320
+ returns(
321
+ T.nilable(
322
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol
323
+ )
324
+ )
325
+ end
326
+ attr_reader :processing_method
327
+
328
+ sig do
329
+ params(
330
+ processing_method:
331
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::OrSymbol
332
+ ).void
333
+ end
334
+ attr_writer :processing_method
335
+
309
336
  sig do
310
337
  returns(
311
338
  T.nilable(
@@ -325,16 +352,20 @@ module Straddle
325
352
 
326
353
  sig do
327
354
  params(
355
+ processing_method:
356
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::OrSymbol,
328
357
  sandbox_outcome:
329
358
  Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::SandboxOutcome::OrSymbol
330
359
  ).returns(T.attached_class)
331
360
  end
332
- def self.new(sandbox_outcome: nil)
361
+ def self.new(processing_method: nil, sandbox_outcome: nil)
333
362
  end
334
363
 
335
364
  sig do
336
365
  override.returns(
337
366
  {
367
+ processing_method:
368
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol,
338
369
  sandbox_outcome:
339
370
  Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::SandboxOutcome::TaggedSymbol
340
371
  }
@@ -343,6 +374,45 @@ module Straddle
343
374
  def to_hash
344
375
  end
345
376
 
377
+ module ProcessingMethod
378
+ extend Straddle::Internal::Type::Enum
379
+
380
+ TaggedSymbol =
381
+ T.type_alias do
382
+ T.all(
383
+ Symbol,
384
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod
385
+ )
386
+ end
387
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
388
+
389
+ INLINE =
390
+ T.let(
391
+ :inline,
392
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol
393
+ )
394
+ BACKGROUND =
395
+ T.let(
396
+ :background,
397
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol
398
+ )
399
+ SKIP =
400
+ T.let(
401
+ :skip,
402
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol
403
+ )
404
+
405
+ sig do
406
+ override.returns(
407
+ T::Array[
408
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::ProcessingMethod::TaggedSymbol
409
+ ]
410
+ )
411
+ end
412
+ def self.values
413
+ end
414
+ end
415
+
346
416
  module SandboxOutcome
347
417
  extend Straddle::Internal::Type::Enum
348
418
 
@@ -370,6 +440,11 @@ module Straddle
370
440
  :rejected,
371
441
  Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::SandboxOutcome::TaggedSymbol
372
442
  )
443
+ REVIEW =
444
+ T.let(
445
+ :review,
446
+ Straddle::Models::Bridge::LinkCreatePaykeyResponse::Data::Config::SandboxOutcome::TaggedSymbol
447
+ )
373
448
 
374
449
  sig do
375
450
  override.returns(
@@ -44,6 +44,11 @@ module Straddle
44
44
  end
45
45
  attr_writer :config
46
46
 
47
+ # Unique identifier for the paykey in your database, used for cross-referencing
48
+ # between Straddle and your systems.
49
+ sig { returns(T.nilable(String)) }
50
+ attr_accessor :external_id
51
+
47
52
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
48
53
  # information about the paykey in a structured format.
49
54
  sig { returns(T.nilable(T::Hash[Symbol, String])) }
@@ -55,6 +60,12 @@ module Straddle
55
60
  sig { params(correlation_id: String).void }
56
61
  attr_writer :correlation_id
57
62
 
63
+ sig { returns(T.nilable(String)) }
64
+ attr_reader :idempotency_key
65
+
66
+ sig { params(idempotency_key: String).void }
67
+ attr_writer :idempotency_key
68
+
58
69
  sig { returns(T.nilable(String)) }
59
70
  attr_reader :request_id
60
71
 
@@ -75,8 +86,10 @@ module Straddle
75
86
  routing_number: String,
76
87
  tan: String,
77
88
  config: Straddle::Bridge::LinkCreateTanParams::Config::OrHash,
89
+ external_id: T.nilable(String),
78
90
  metadata: T.nilable(T::Hash[Symbol, String]),
79
91
  correlation_id: String,
92
+ idempotency_key: String,
80
93
  request_id: String,
81
94
  straddle_account_id: String,
82
95
  request_options: Straddle::RequestOptions::OrHash
@@ -91,10 +104,14 @@ module Straddle
91
104
  # Tokenized account number.
92
105
  tan:,
93
106
  config: nil,
107
+ # Unique identifier for the paykey in your database, used for cross-referencing
108
+ # between Straddle and your systems.
109
+ external_id: nil,
94
110
  # Up to 20 additional user-defined key-value pairs. Useful for storing additional
95
111
  # information about the paykey in a structured format.
96
112
  metadata: nil,
97
113
  correlation_id: nil,
114
+ idempotency_key: nil,
98
115
  request_id: nil,
99
116
  straddle_account_id: nil,
100
117
  request_options: {}
@@ -110,8 +127,10 @@ module Straddle
110
127
  routing_number: String,
111
128
  tan: String,
112
129
  config: Straddle::Bridge::LinkCreateTanParams::Config,
130
+ external_id: T.nilable(String),
113
131
  metadata: T.nilable(T::Hash[Symbol, String]),
114
132
  correlation_id: String,
133
+ idempotency_key: String,
115
134
  request_id: String,
116
135
  straddle_account_id: String,
117
136
  request_options: Straddle::RequestOptions
@@ -161,6 +180,23 @@ module Straddle
161
180
  )
162
181
  end
163
182
 
183
+ sig do
184
+ returns(
185
+ T.nilable(
186
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::OrSymbol
187
+ )
188
+ )
189
+ end
190
+ attr_reader :processing_method
191
+
192
+ sig do
193
+ params(
194
+ processing_method:
195
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::OrSymbol
196
+ ).void
197
+ end
198
+ attr_writer :processing_method
199
+
164
200
  sig do
165
201
  returns(
166
202
  T.nilable(
@@ -180,16 +216,20 @@ module Straddle
180
216
 
181
217
  sig do
182
218
  params(
219
+ processing_method:
220
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::OrSymbol,
183
221
  sandbox_outcome:
184
222
  Straddle::Bridge::LinkCreateTanParams::Config::SandboxOutcome::OrSymbol
185
223
  ).returns(T.attached_class)
186
224
  end
187
- def self.new(sandbox_outcome: nil)
225
+ def self.new(processing_method: nil, sandbox_outcome: nil)
188
226
  end
189
227
 
190
228
  sig do
191
229
  override.returns(
192
230
  {
231
+ processing_method:
232
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::OrSymbol,
193
233
  sandbox_outcome:
194
234
  Straddle::Bridge::LinkCreateTanParams::Config::SandboxOutcome::OrSymbol
195
235
  }
@@ -198,6 +238,45 @@ module Straddle
198
238
  def to_hash
199
239
  end
200
240
 
241
+ module ProcessingMethod
242
+ extend Straddle::Internal::Type::Enum
243
+
244
+ TaggedSymbol =
245
+ T.type_alias do
246
+ T.all(
247
+ Symbol,
248
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod
249
+ )
250
+ end
251
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
252
+
253
+ INLINE =
254
+ T.let(
255
+ :inline,
256
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::TaggedSymbol
257
+ )
258
+ BACKGROUND =
259
+ T.let(
260
+ :background,
261
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::TaggedSymbol
262
+ )
263
+ SKIP =
264
+ T.let(
265
+ :skip,
266
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::TaggedSymbol
267
+ )
268
+
269
+ sig do
270
+ override.returns(
271
+ T::Array[
272
+ Straddle::Bridge::LinkCreateTanParams::Config::ProcessingMethod::TaggedSymbol
273
+ ]
274
+ )
275
+ end
276
+ def self.values
277
+ end
278
+ end
279
+
201
280
  module SandboxOutcome
202
281
  extend Straddle::Internal::Type::Enum
203
282
 
@@ -225,6 +304,11 @@ module Straddle
225
304
  :rejected,
226
305
  Straddle::Bridge::LinkCreateTanParams::Config::SandboxOutcome::TaggedSymbol
227
306
  )
307
+ REVIEW =
308
+ T.let(
309
+ :review,
310
+ Straddle::Bridge::LinkCreateTanParams::Config::SandboxOutcome::TaggedSymbol
311
+ )
228
312
 
229
313
  sig do
230
314
  override.returns(