straddle 0.3.0 → 0.5.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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +127 -0
  3. data/README.md +32 -1
  4. data/lib/straddle/client.rb +49 -1
  5. data/lib/straddle/internal/transport/base_client.rb +5 -0
  6. data/lib/straddle/internal/transport/pooled_net_requester.rb +13 -11
  7. data/lib/straddle/internal/util.rb +61 -10
  8. data/lib/straddle/models/bridge/link_create_paykey_response.rb +8 -0
  9. data/lib/straddle/models/bridge/link_create_tan_response.rb +8 -0
  10. data/lib/straddle/models/charge_cancel_params.rb +8 -1
  11. data/lib/straddle/models/charge_create_params.rb +22 -4
  12. data/lib/straddle/models/charge_get_params.rb +7 -1
  13. data/lib/straddle/models/charge_hold_params.rb +8 -1
  14. data/lib/straddle/models/charge_release_params.rb +8 -1
  15. data/lib/straddle/models/charge_unmask_params.rb +7 -1
  16. data/lib/straddle/models/charge_unmask_response.rb +190 -5
  17. data/lib/straddle/models/charge_update_params.rb +11 -4
  18. data/lib/straddle/models/charge_v1.rb +188 -5
  19. data/lib/straddle/models/customer_delete_params.rb +7 -1
  20. data/lib/straddle/models/customer_get_params.rb +7 -1
  21. data/lib/straddle/models/customer_unmasked_params.rb +7 -1
  22. data/lib/straddle/models/customer_update_params.rb +8 -1
  23. data/lib/straddle/models/customers/review_decision_params.rb +8 -1
  24. data/lib/straddle/models/customers/review_get_params.rb +7 -1
  25. data/lib/straddle/models/customers/review_refresh_review_params.rb +7 -1
  26. data/lib/straddle/models/embed/account_get_params.rb +11 -1
  27. data/lib/straddle/models/embed/account_list_params.rb +8 -1
  28. data/lib/straddle/models/embed/account_onboard_params.rb +7 -1
  29. data/lib/straddle/models/embed/account_paged_v1.rb +4 -0
  30. data/lib/straddle/models/embed/account_simulate_params.rb +7 -1
  31. data/lib/straddle/models/embed/account_update_params.rb +8 -1
  32. data/lib/straddle/models/embed/account_v1.rb +4 -0
  33. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +8 -1
  34. data/lib/straddle/models/embed/accounts/capability_request_list_params.rb +8 -1
  35. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +9 -1
  36. data/lib/straddle/models/embed/address_v1.rb +14 -38
  37. data/lib/straddle/models/embed/linked_bank_account_cancel_params.rb +7 -1
  38. data/lib/straddle/models/embed/linked_bank_account_get_params.rb +7 -1
  39. data/lib/straddle/models/embed/linked_bank_account_unmask_params.rb +7 -1
  40. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +8 -1
  41. data/lib/straddle/models/embed/organization_get_params.rb +7 -1
  42. data/lib/straddle/models/embed/representative.rb +2 -2
  43. data/lib/straddle/models/embed/representative_create_params.rb +2 -2
  44. data/lib/straddle/models/embed/representative_get_params.rb +7 -1
  45. data/lib/straddle/models/embed/representative_paged.rb +2 -2
  46. data/lib/straddle/models/embed/representative_unmask_params.rb +7 -1
  47. data/lib/straddle/models/embed/representative_update_params.rb +10 -3
  48. data/lib/straddle/models/funding_event_get_params.rb +7 -1
  49. data/lib/straddle/models/funding_event_list_params.rb +105 -1
  50. data/lib/straddle/models/funding_event_summary_item_v1.rb +128 -1
  51. data/lib/straddle/models/funding_event_summary_paged_v1.rb +128 -1
  52. data/lib/straddle/models/paykey_cancel_params.rb +7 -1
  53. data/lib/straddle/models/paykey_get_params.rb +7 -1
  54. data/lib/straddle/models/paykey_list_params.rb +40 -1
  55. data/lib/straddle/models/paykey_reveal_params.rb +7 -1
  56. data/lib/straddle/models/paykey_reveal_response.rb +8 -0
  57. data/lib/straddle/models/paykey_summary_paged_v1.rb +19 -1
  58. data/lib/straddle/models/paykey_unmasked_params.rb +7 -1
  59. data/lib/straddle/models/paykey_unmasked_v1.rb +8 -0
  60. data/lib/straddle/models/paykey_update_balance_params.rb +7 -1
  61. data/lib/straddle/models/paykey_v1.rb +19 -1
  62. data/lib/straddle/models/paykeys/review_decision_params.rb +7 -1
  63. data/lib/straddle/models/paykeys/review_get_params.rb +7 -1
  64. data/lib/straddle/models/paykeys/review_get_response.rb +19 -4
  65. data/lib/straddle/models/paykeys/review_refresh_review_params.rb +7 -1
  66. data/lib/straddle/models/payment_list_params.rb +71 -1
  67. data/lib/straddle/models/payment_summary_paged_v1.rb +110 -4
  68. data/lib/straddle/models/payout_cancel_params.rb +8 -1
  69. data/lib/straddle/models/payout_create_params.rb +22 -4
  70. data/lib/straddle/models/payout_get_params.rb +7 -1
  71. data/lib/straddle/models/payout_hold_params.rb +8 -1
  72. data/lib/straddle/models/payout_release_params.rb +8 -1
  73. data/lib/straddle/models/payout_unmask_params.rb +7 -1
  74. data/lib/straddle/models/payout_unmask_response.rb +193 -5
  75. data/lib/straddle/models/payout_update_params.rb +11 -4
  76. data/lib/straddle/models/payout_upload_authorization_document_params.rb +57 -0
  77. data/lib/straddle/models/payout_v1.rb +188 -5
  78. data/lib/straddle/models/status_details_v1.rb +7 -0
  79. data/lib/straddle/models.rb +2 -0
  80. data/lib/straddle/resources/bridge/link.rb +12 -6
  81. data/lib/straddle/resources/bridge.rb +13 -1
  82. data/lib/straddle/resources/charges.rb +13 -8
  83. data/lib/straddle/resources/customers/review.rb +7 -1
  84. data/lib/straddle/resources/customers.rb +23 -10
  85. data/lib/straddle/resources/embed/accounts/capability_requests.rb +9 -4
  86. data/lib/straddle/resources/embed/accounts.rb +29 -15
  87. data/lib/straddle/resources/embed/linked_bank_accounts.rb +11 -6
  88. data/lib/straddle/resources/embed/organizations.rb +7 -2
  89. data/lib/straddle/resources/embed/representatives.rb +15 -8
  90. data/lib/straddle/resources/embed.rb +19 -0
  91. data/lib/straddle/resources/funding_events.rb +22 -3
  92. data/lib/straddle/resources/paykeys/review.rb +7 -2
  93. data/lib/straddle/resources/paykeys.rb +42 -11
  94. data/lib/straddle/resources/payments.rb +30 -6
  95. data/lib/straddle/resources/payouts.rb +60 -7
  96. data/lib/straddle/version.rb +1 -1
  97. data/lib/straddle.rb +2 -0
  98. data/manifest.yaml +1 -0
  99. data/rbi/straddle/client.rbi +34 -0
  100. data/rbi/straddle/internal/util.rbi +29 -1
  101. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +40 -0
  102. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +40 -0
  103. data/rbi/straddle/models/charge_cancel_params.rbi +6 -0
  104. data/rbi/straddle/models/charge_create_params.rbi +29 -3
  105. data/rbi/straddle/models/charge_get_params.rbi +6 -0
  106. data/rbi/straddle/models/charge_hold_params.rbi +6 -0
  107. data/rbi/straddle/models/charge_release_params.rbi +6 -0
  108. data/rbi/straddle/models/charge_unmask_params.rbi +6 -0
  109. data/rbi/straddle/models/charge_unmask_response.rbi +396 -6
  110. data/rbi/straddle/models/charge_update_params.rbi +9 -3
  111. data/rbi/straddle/models/charge_v1.rbi +364 -6
  112. data/rbi/straddle/models/customer_delete_params.rbi +6 -0
  113. data/rbi/straddle/models/customer_get_params.rbi +6 -0
  114. data/rbi/straddle/models/customer_unmasked_params.rbi +6 -0
  115. data/rbi/straddle/models/customer_update_params.rbi +6 -0
  116. data/rbi/straddle/models/customers/review_decision_params.rbi +6 -0
  117. data/rbi/straddle/models/customers/review_get_params.rbi +6 -0
  118. data/rbi/straddle/models/customers/review_refresh_review_params.rbi +6 -0
  119. data/rbi/straddle/models/embed/account_get_params.rbi +13 -1
  120. data/rbi/straddle/models/embed/account_list_params.rbi +9 -0
  121. data/rbi/straddle/models/embed/account_onboard_params.rbi +6 -0
  122. data/rbi/straddle/models/embed/account_paged_v1.rbi +20 -0
  123. data/rbi/straddle/models/embed/account_simulate_params.rbi +6 -0
  124. data/rbi/straddle/models/embed/account_update_params.rbi +6 -0
  125. data/rbi/straddle/models/embed/account_v1.rbi +20 -0
  126. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +6 -0
  127. data/rbi/straddle/models/embed/accounts/capability_request_list_params.rbi +6 -0
  128. data/rbi/straddle/models/embed/accounts/capability_request_paged_v1.rbi +8 -0
  129. data/rbi/straddle/models/embed/address_v1.rbi +18 -42
  130. data/rbi/straddle/models/embed/linked_bank_account_cancel_params.rbi +6 -0
  131. data/rbi/straddle/models/embed/linked_bank_account_get_params.rbi +11 -1
  132. data/rbi/straddle/models/embed/linked_bank_account_unmask_params.rbi +11 -1
  133. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +6 -0
  134. data/rbi/straddle/models/embed/organization_get_params.rbi +11 -1
  135. data/rbi/straddle/models/embed/representative.rbi +2 -2
  136. data/rbi/straddle/models/embed/representative_create_params.rbi +2 -2
  137. data/rbi/straddle/models/embed/representative_get_params.rbi +11 -1
  138. data/rbi/straddle/models/embed/representative_paged.rbi +2 -2
  139. data/rbi/straddle/models/embed/representative_unmask_params.rbi +11 -1
  140. data/rbi/straddle/models/embed/representative_update_params.rbi +8 -2
  141. data/rbi/straddle/models/funding_event_get_params.rbi +6 -0
  142. data/rbi/straddle/models/funding_event_list_params.rbi +333 -0
  143. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +392 -0
  144. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +393 -0
  145. data/rbi/straddle/models/paykey_cancel_params.rbi +6 -0
  146. data/rbi/straddle/models/paykey_get_params.rbi +6 -0
  147. data/rbi/straddle/models/paykey_list_params.rbi +52 -0
  148. data/rbi/straddle/models/paykey_reveal_params.rbi +6 -0
  149. data/rbi/straddle/models/paykey_reveal_response.rbi +40 -0
  150. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +55 -3
  151. data/rbi/straddle/models/paykey_unmasked_params.rbi +6 -0
  152. data/rbi/straddle/models/paykey_unmasked_v1.rbi +40 -0
  153. data/rbi/straddle/models/paykey_update_balance_params.rbi +6 -0
  154. data/rbi/straddle/models/paykey_v1.rbi +52 -3
  155. data/rbi/straddle/models/paykeys/review_decision_params.rbi +6 -0
  156. data/rbi/straddle/models/paykeys/review_get_params.rbi +6 -0
  157. data/rbi/straddle/models/paykeys/review_get_response.rbi +55 -18
  158. data/rbi/straddle/models/paykeys/review_refresh_review_params.rbi +6 -0
  159. data/rbi/straddle/models/payment_list_params.rbi +126 -0
  160. data/rbi/straddle/models/payment_summary_paged_v1.rbi +214 -6
  161. data/rbi/straddle/models/payout_cancel_params.rbi +6 -0
  162. data/rbi/straddle/models/payout_create_params.rbi +29 -3
  163. data/rbi/straddle/models/payout_get_params.rbi +6 -0
  164. data/rbi/straddle/models/payout_hold_params.rbi +6 -0
  165. data/rbi/straddle/models/payout_release_params.rbi +6 -0
  166. data/rbi/straddle/models/payout_unmask_params.rbi +6 -0
  167. data/rbi/straddle/models/payout_unmask_response.rbi +393 -3
  168. data/rbi/straddle/models/payout_update_params.rbi +9 -3
  169. data/rbi/straddle/models/payout_upload_authorization_document_params.rbi +88 -0
  170. data/rbi/straddle/models/payout_v1.rbi +361 -3
  171. data/rbi/straddle/models/status_details_v1.rbi +29 -0
  172. data/rbi/straddle/models.rbi +3 -0
  173. data/rbi/straddle/resources/bridge/link.rbi +12 -6
  174. data/rbi/straddle/resources/bridge.rbi +13 -1
  175. data/rbi/straddle/resources/charges.rbi +13 -8
  176. data/rbi/straddle/resources/customers/review.rbi +7 -1
  177. data/rbi/straddle/resources/customers.rbi +20 -8
  178. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +6 -2
  179. data/rbi/straddle/resources/embed/accounts.rbi +22 -10
  180. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +8 -4
  181. data/rbi/straddle/resources/embed/organizations.rbi +4 -0
  182. data/rbi/straddle/resources/embed/representatives.rbi +12 -6
  183. data/rbi/straddle/resources/embed.rbi +19 -0
  184. data/rbi/straddle/resources/funding_events.rbi +27 -0
  185. data/rbi/straddle/resources/paykeys/review.rbi +7 -2
  186. data/rbi/straddle/resources/paykeys.rbi +32 -8
  187. data/rbi/straddle/resources/payments.rbi +28 -3
  188. data/rbi/straddle/resources/payouts.rbi +44 -7
  189. data/sig/straddle/internal/util.rbs +14 -0
  190. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +17 -1
  191. data/sig/straddle/models/bridge/link_create_tan_response.rbs +17 -1
  192. data/sig/straddle/models/charge_cancel_params.rbs +5 -0
  193. data/sig/straddle/models/charge_create_params.rbs +18 -4
  194. data/sig/straddle/models/charge_get_params.rbs +5 -0
  195. data/sig/straddle/models/charge_hold_params.rbs +5 -0
  196. data/sig/straddle/models/charge_release_params.rbs +5 -0
  197. data/sig/straddle/models/charge_unmask_params.rbs +5 -0
  198. data/sig/straddle/models/charge_unmask_response.rbs +166 -7
  199. data/sig/straddle/models/charge_update_params.rbs +9 -4
  200. data/sig/straddle/models/charge_v1.rbs +166 -7
  201. data/sig/straddle/models/customer_delete_params.rbs +5 -0
  202. data/sig/straddle/models/customer_get_params.rbs +5 -0
  203. data/sig/straddle/models/customer_unmasked_params.rbs +5 -0
  204. data/sig/straddle/models/customer_update_params.rbs +5 -0
  205. data/sig/straddle/models/customers/review_decision_params.rbs +5 -0
  206. data/sig/straddle/models/customers/review_get_params.rbs +5 -0
  207. data/sig/straddle/models/customers/review_refresh_review_params.rbs +5 -0
  208. data/sig/straddle/models/embed/account_get_params.rbs +5 -1
  209. data/sig/straddle/models/embed/account_list_params.rbs +7 -0
  210. data/sig/straddle/models/embed/account_onboard_params.rbs +5 -0
  211. data/sig/straddle/models/embed/account_paged_v1.rbs +18 -2
  212. data/sig/straddle/models/embed/account_simulate_params.rbs +5 -0
  213. data/sig/straddle/models/embed/account_update_params.rbs +5 -0
  214. data/sig/straddle/models/embed/account_v1.rbs +18 -2
  215. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +5 -0
  216. data/sig/straddle/models/embed/accounts/capability_request_list_params.rbs +5 -0
  217. data/sig/straddle/models/embed/accounts/capability_request_paged_v1.rbs +5 -0
  218. data/sig/straddle/models/embed/address_v1.rbs +12 -27
  219. data/sig/straddle/models/embed/linked_bank_account_cancel_params.rbs +10 -1
  220. data/sig/straddle/models/embed/linked_bank_account_get_params.rbs +9 -1
  221. data/sig/straddle/models/embed/linked_bank_account_unmask_params.rbs +9 -1
  222. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +5 -0
  223. data/sig/straddle/models/embed/organization_get_params.rbs +5 -1
  224. data/sig/straddle/models/embed/representative_get_params.rbs +9 -1
  225. data/sig/straddle/models/embed/representative_unmask_params.rbs +9 -1
  226. data/sig/straddle/models/embed/representative_update_params.rbs +5 -0
  227. data/sig/straddle/models/funding_event_get_params.rbs +5 -0
  228. data/sig/straddle/models/funding_event_list_params.rbs +125 -0
  229. data/sig/straddle/models/funding_event_summary_item_v1.rbs +164 -0
  230. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +164 -0
  231. data/sig/straddle/models/paykey_cancel_params.rbs +5 -0
  232. data/sig/straddle/models/paykey_get_params.rbs +5 -0
  233. data/sig/straddle/models/paykey_list_params.rbs +31 -1
  234. data/sig/straddle/models/paykey_reveal_params.rbs +5 -0
  235. data/sig/straddle/models/paykey_reveal_response.rbs +17 -1
  236. data/sig/straddle/models/paykey_summary_paged_v1.rbs +25 -4
  237. data/sig/straddle/models/paykey_unmasked_params.rbs +5 -0
  238. data/sig/straddle/models/paykey_unmasked_v1.rbs +17 -1
  239. data/sig/straddle/models/paykey_update_balance_params.rbs +5 -0
  240. data/sig/straddle/models/paykey_v1.rbs +25 -4
  241. data/sig/straddle/models/paykeys/review_decision_params.rbs +5 -0
  242. data/sig/straddle/models/paykeys/review_get_params.rbs +5 -0
  243. data/sig/straddle/models/paykeys/review_get_response.rbs +28 -10
  244. data/sig/straddle/models/paykeys/review_refresh_review_params.rbs +5 -0
  245. data/sig/straddle/models/payment_list_params.rbs +80 -2
  246. data/sig/straddle/models/payment_summary_paged_v1.rbs +89 -7
  247. data/sig/straddle/models/payout_cancel_params.rbs +5 -0
  248. data/sig/straddle/models/payout_create_params.rbs +18 -4
  249. data/sig/straddle/models/payout_get_params.rbs +5 -0
  250. data/sig/straddle/models/payout_hold_params.rbs +5 -0
  251. data/sig/straddle/models/payout_release_params.rbs +5 -0
  252. data/sig/straddle/models/payout_unmask_params.rbs +5 -0
  253. data/sig/straddle/models/payout_unmask_response.rbs +163 -4
  254. data/sig/straddle/models/payout_update_params.rbs +9 -4
  255. data/sig/straddle/models/payout_upload_authorization_document_params.rbs +59 -0
  256. data/sig/straddle/models/payout_v1.rbs +163 -4
  257. data/sig/straddle/models/status_details_v1.rbs +14 -0
  258. data/sig/straddle/models.rbs +2 -0
  259. data/sig/straddle/resources/charges.rbs +2 -2
  260. data/sig/straddle/resources/embed/accounts.rbs +1 -0
  261. data/sig/straddle/resources/funding_events.rbs +4 -0
  262. data/sig/straddle/resources/paykeys.rbs +4 -0
  263. data/sig/straddle/resources/payments.rbs +7 -0
  264. data/sig/straddle/resources/payouts.rbs +12 -2
  265. metadata +19 -2
@@ -0,0 +1,88 @@
1
+ # typed: strong
2
+
3
+ module Straddle
4
+ module Models
5
+ class PayoutUploadAuthorizationDocumentParams < Straddle::Internal::Type::BaseModel
6
+ extend Straddle::Internal::Type::RequestParameters::Converter
7
+ include Straddle::Internal::Type::RequestParameters
8
+
9
+ OrHash =
10
+ T.type_alias do
11
+ T.any(
12
+ Straddle::PayoutUploadAuthorizationDocumentParams,
13
+ Straddle::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :id
19
+
20
+ # The document file to upload as proof of authorization for this payout.
21
+ sig { returns(Straddle::Internal::FileInput) }
22
+ attr_accessor :file
23
+
24
+ sig { returns(T.nilable(String)) }
25
+ attr_reader :correlation_id
26
+
27
+ sig { params(correlation_id: String).void }
28
+ attr_writer :correlation_id
29
+
30
+ sig { returns(T.nilable(String)) }
31
+ attr_reader :idempotency_key
32
+
33
+ sig { params(idempotency_key: String).void }
34
+ attr_writer :idempotency_key
35
+
36
+ sig { returns(T.nilable(String)) }
37
+ attr_reader :request_id
38
+
39
+ sig { params(request_id: String).void }
40
+ attr_writer :request_id
41
+
42
+ sig { returns(T.nilable(String)) }
43
+ attr_reader :straddle_account_id
44
+
45
+ sig { params(straddle_account_id: String).void }
46
+ attr_writer :straddle_account_id
47
+
48
+ sig do
49
+ params(
50
+ id: String,
51
+ file: Straddle::Internal::FileInput,
52
+ correlation_id: String,
53
+ idempotency_key: String,
54
+ request_id: String,
55
+ straddle_account_id: String,
56
+ request_options: Straddle::RequestOptions::OrHash
57
+ ).returns(T.attached_class)
58
+ end
59
+ def self.new(
60
+ id:,
61
+ # The document file to upload as proof of authorization for this payout.
62
+ file:,
63
+ correlation_id: nil,
64
+ idempotency_key: nil,
65
+ request_id: nil,
66
+ straddle_account_id: nil,
67
+ request_options: {}
68
+ )
69
+ end
70
+
71
+ sig do
72
+ override.returns(
73
+ {
74
+ id: String,
75
+ file: Straddle::Internal::FileInput,
76
+ correlation_id: String,
77
+ idempotency_key: String,
78
+ request_id: String,
79
+ straddle_account_id: String,
80
+ request_options: Straddle::RequestOptions
81
+ }
82
+ )
83
+ end
84
+ def to_hash
85
+ end
86
+ end
87
+ end
88
+ end
@@ -89,7 +89,7 @@ module Straddle
89
89
  attr_accessor :currency
90
90
 
91
91
  # An arbitrary description for the payout.
92
- sig { returns(String) }
92
+ sig { returns(T.nilable(String)) }
93
93
  attr_accessor :description
94
94
 
95
95
  # Information about the device used when the customer authorized the payout.
@@ -108,6 +108,18 @@ module Straddle
108
108
  sig { returns(T::Array[String]) }
109
109
  attr_accessor :funding_ids
110
110
 
111
+ # Has the payout been resubmitted.
112
+ sig { returns(T::Boolean) }
113
+ attr_accessor :has_resubmit
114
+
115
+ # Is the payout a refund of an original charge.
116
+ sig { returns(T::Boolean) }
117
+ attr_accessor :is_refund
118
+
119
+ # Is the payout a resubmit of an original payout.
120
+ sig { returns(T::Boolean) }
121
+ attr_accessor :is_resubmit
122
+
111
123
  # Value of the `paykey` used for the payout.
112
124
  sig { returns(String) }
113
125
  attr_accessor :paykey
@@ -132,6 +144,10 @@ module Straddle
132
144
  sig { returns(T::Array[Straddle::PayoutV1::Data::StatusHistory]) }
133
145
  attr_accessor :status_history
134
146
 
147
+ # Trace Ids.
148
+ sig { returns(T::Hash[Symbol, String]) }
149
+ attr_accessor :trace_ids
150
+
135
151
  # The time the payout was created.
136
152
  sig { returns(T.nilable(Time)) }
137
153
  attr_accessor :created_at
@@ -145,6 +161,11 @@ module Straddle
145
161
  end
146
162
  attr_writer :customer_details
147
163
 
164
+ # Documents uploaded for this payout (e.g. proof of authorization), in the order
165
+ # they were uploaded.
166
+ sig { returns(T.nilable(T::Array[Straddle::PayoutV1::Data::Document])) }
167
+ attr_accessor :documents
168
+
148
169
  # The actual date on which the payment occurred. For payouts, this is the date the
149
170
  # funds were sent from your bank account.
150
171
  sig { returns(T.nilable(Time)) }
@@ -182,6 +203,12 @@ module Straddle
182
203
  sig { returns(T.nilable(Time)) }
183
204
  attr_accessor :processed_at
184
205
 
206
+ # Related payments.
207
+ sig do
208
+ returns(T.nilable(T::Array[Straddle::PayoutV1::Data::RelatedPayment]))
209
+ end
210
+ attr_accessor :related_payments
211
+
185
212
  # The time the payout was last updated.
186
213
  sig { returns(T.nilable(Time)) }
187
214
  attr_accessor :updated_at
@@ -192,23 +219,33 @@ module Straddle
192
219
  amount: Integer,
193
220
  config: Straddle::PayoutV1::Data::Config::OrHash,
194
221
  currency: String,
195
- description: String,
222
+ description: T.nilable(String),
196
223
  device: Straddle::DeviceInfoV1::OrHash,
197
224
  external_id: String,
198
225
  funding_ids: T::Array[String],
226
+ has_resubmit: T::Boolean,
227
+ is_refund: T::Boolean,
228
+ is_resubmit: T::Boolean,
199
229
  paykey: String,
200
230
  payment_date: Date,
201
231
  status: Straddle::PayoutV1::Data::Status::OrSymbol,
202
232
  status_details: Straddle::StatusDetailsV1::OrHash,
203
233
  status_history:
204
234
  T::Array[Straddle::PayoutV1::Data::StatusHistory::OrHash],
235
+ trace_ids: T::Hash[Symbol, String],
205
236
  created_at: T.nilable(Time),
206
237
  customer_details: Straddle::CustomerDetailsV1::OrHash,
238
+ documents:
239
+ T.nilable(T::Array[Straddle::PayoutV1::Data::Document::OrHash]),
207
240
  effective_at: T.nilable(Time),
208
241
  metadata: T.nilable(T::Hash[Symbol, String]),
209
242
  paykey_details: Straddle::PaykeyDetailsV1::OrHash,
210
243
  payment_rail: Straddle::PayoutV1::Data::PaymentRail::OrSymbol,
211
244
  processed_at: T.nilable(Time),
245
+ related_payments:
246
+ T.nilable(
247
+ T::Array[Straddle::PayoutV1::Data::RelatedPayment::OrHash]
248
+ ),
212
249
  updated_at: T.nilable(Time)
213
250
  ).returns(T.attached_class)
214
251
  end
@@ -230,6 +267,12 @@ module Straddle
230
267
  external_id:,
231
268
  # Funding Ids
232
269
  funding_ids:,
270
+ # Has the payout been resubmitted.
271
+ has_resubmit:,
272
+ # Is the payout a refund of an original charge.
273
+ is_refund:,
274
+ # Is the payout a resubmit of an original payout.
275
+ is_resubmit:,
233
276
  # Value of the `paykey` used for the payout.
234
277
  paykey:,
235
278
  # The desired date on which the payment should be occur. For payouts, this means
@@ -241,10 +284,15 @@ module Straddle
241
284
  status_details:,
242
285
  # History of the status changes for the payout.
243
286
  status_history:,
287
+ # Trace Ids.
288
+ trace_ids:,
244
289
  # The time the payout was created.
245
290
  created_at: nil,
246
291
  # Information about the customer associated with the payout.
247
292
  customer_details: nil,
293
+ # Documents uploaded for this payout (e.g. proof of authorization), in the order
294
+ # they were uploaded.
295
+ documents: nil,
248
296
  # The actual date on which the payment occurred. For payouts, this is the date the
249
297
  # funds were sent from your bank account.
250
298
  effective_at: nil,
@@ -258,6 +306,8 @@ module Straddle
258
306
  # The time the payout was processed by Straddle and originated to the payment
259
307
  # rail.
260
308
  processed_at: nil,
309
+ # Related payments.
310
+ related_payments: nil,
261
311
  # The time the payout was last updated.
262
312
  updated_at: nil
263
313
  )
@@ -270,22 +320,30 @@ module Straddle
270
320
  amount: Integer,
271
321
  config: Straddle::PayoutV1::Data::Config,
272
322
  currency: String,
273
- description: String,
323
+ description: T.nilable(String),
274
324
  device: Straddle::DeviceInfoV1,
275
325
  external_id: String,
276
326
  funding_ids: T::Array[String],
327
+ has_resubmit: T::Boolean,
328
+ is_refund: T::Boolean,
329
+ is_resubmit: T::Boolean,
277
330
  paykey: String,
278
331
  payment_date: Date,
279
332
  status: Straddle::PayoutV1::Data::Status::TaggedSymbol,
280
333
  status_details: Straddle::StatusDetailsV1,
281
334
  status_history: T::Array[Straddle::PayoutV1::Data::StatusHistory],
335
+ trace_ids: T::Hash[Symbol, String],
282
336
  created_at: T.nilable(Time),
283
337
  customer_details: Straddle::CustomerDetailsV1,
338
+ documents:
339
+ T.nilable(T::Array[Straddle::PayoutV1::Data::Document]),
284
340
  effective_at: T.nilable(Time),
285
341
  metadata: T.nilable(T::Hash[Symbol, String]),
286
342
  paykey_details: Straddle::PaykeyDetailsV1,
287
343
  payment_rail: Straddle::PayoutV1::Data::PaymentRail::TaggedSymbol,
288
344
  processed_at: T.nilable(Time),
345
+ related_payments:
346
+ T.nilable(T::Array[Straddle::PayoutV1::Data::RelatedPayment]),
289
347
  updated_at: T.nilable(Time)
290
348
  }
291
349
  )
@@ -302,6 +360,14 @@ module Straddle
302
360
  )
303
361
  end
304
362
 
363
+ # Defines whether to automatically place this charge on hold after being created.
364
+ sig { returns(T.nilable(T::Boolean)) }
365
+ attr_accessor :auto_hold
366
+
367
+ # The reason the payout is being automatically held on creation.
368
+ sig { returns(T.nilable(String)) }
369
+ attr_accessor :auto_hold_message
370
+
305
371
  # Payment will simulate processing if not Standard.
306
372
  sig do
307
373
  returns(
@@ -323,11 +389,17 @@ module Straddle
323
389
  # Configuration for the payout.
324
390
  sig do
325
391
  params(
392
+ auto_hold: T.nilable(T::Boolean),
393
+ auto_hold_message: T.nilable(String),
326
394
  sandbox_outcome:
327
395
  Straddle::PayoutV1::Data::Config::SandboxOutcome::OrSymbol
328
396
  ).returns(T.attached_class)
329
397
  end
330
398
  def self.new(
399
+ # Defines whether to automatically place this charge on hold after being created.
400
+ auto_hold: nil,
401
+ # The reason the payout is being automatically held on creation.
402
+ auto_hold_message: nil,
331
403
  # Payment will simulate processing if not Standard.
332
404
  sandbox_outcome: nil
333
405
  )
@@ -336,6 +408,8 @@ module Straddle
336
408
  sig do
337
409
  override.returns(
338
410
  {
411
+ auto_hold: T.nilable(T::Boolean),
412
+ auto_hold_message: T.nilable(String),
339
413
  sandbox_outcome:
340
414
  Straddle::PayoutV1::Data::Config::SandboxOutcome::TaggedSymbol
341
415
  }
@@ -409,6 +483,16 @@ module Straddle
409
483
  :reversed_closed_bank_account,
410
484
  Straddle::PayoutV1::Data::Config::SandboxOutcome::TaggedSymbol
411
485
  )
486
+ FAILED_NOT_AUTHORIZED =
487
+ T.let(
488
+ :failed_not_authorized,
489
+ Straddle::PayoutV1::Data::Config::SandboxOutcome::TaggedSymbol
490
+ )
491
+ REVERSED_NOT_AUTHORIZED =
492
+ T.let(
493
+ :reversed_not_authorized,
494
+ Straddle::PayoutV1::Data::Config::SandboxOutcome::TaggedSymbol
495
+ )
412
496
 
413
497
  sig do
414
498
  override.returns(
@@ -445,6 +529,8 @@ module Straddle
445
529
  PAID = T.let(:paid, Straddle::PayoutV1::Data::Status::TaggedSymbol)
446
530
  REVERSED =
447
531
  T.let(:reversed, Straddle::PayoutV1::Data::Status::TaggedSymbol)
532
+ VALIDATING =
533
+ T.let(:validating, Straddle::PayoutV1::Data::Status::TaggedSymbol)
448
534
 
449
535
  sig do
450
536
  override.returns(
@@ -659,6 +745,41 @@ module Straddle
659
745
  :payout_refused,
660
746
  Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
661
747
  )
748
+ CANCEL_REQUEST =
749
+ T.let(
750
+ :cancel_request,
751
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
752
+ )
753
+ FAILED_VERIFICATION =
754
+ T.let(
755
+ :failed_verification,
756
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
757
+ )
758
+ REQUIRE_REVIEW =
759
+ T.let(
760
+ :require_review,
761
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
762
+ )
763
+ BLOCKED_BY_SYSTEM =
764
+ T.let(
765
+ :blocked_by_system,
766
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
767
+ )
768
+ WATCHTOWER_REVIEW =
769
+ T.let(
770
+ :watchtower_review,
771
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
772
+ )
773
+ VALIDATING =
774
+ T.let(
775
+ :validating,
776
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
777
+ )
778
+ AUTO_HOLD =
779
+ T.let(
780
+ :auto_hold,
781
+ Straddle::PayoutV1::Data::StatusHistory::Reason::TaggedSymbol
782
+ )
662
783
 
663
784
  sig do
664
785
  override.returns(
@@ -769,6 +890,11 @@ module Straddle
769
890
  :reversed,
770
891
  Straddle::PayoutV1::Data::StatusHistory::Status::TaggedSymbol
771
892
  )
893
+ VALIDATING =
894
+ T.let(
895
+ :validating,
896
+ Straddle::PayoutV1::Data::StatusHistory::Status::TaggedSymbol
897
+ )
772
898
 
773
899
  sig do
774
900
  override.returns(
@@ -782,6 +908,103 @@ module Straddle
782
908
  end
783
909
  end
784
910
 
911
+ class Document < Straddle::Internal::Type::BaseModel
912
+ OrHash =
913
+ T.type_alias do
914
+ T.any(
915
+ Straddle::PayoutV1::Data::Document,
916
+ Straddle::Internal::AnyHash
917
+ )
918
+ end
919
+
920
+ # Unique identifier for this document.
921
+ sig { returns(String) }
922
+ attr_accessor :document_id
923
+
924
+ # The file name of this document as uploaded.
925
+ sig { returns(String) }
926
+ attr_accessor :document_name
927
+
928
+ # The size of this document in bytes.
929
+ sig { returns(Integer) }
930
+ attr_accessor :document_size
931
+
932
+ sig do
933
+ returns(
934
+ Straddle::PayoutV1::Data::Document::DocumentType::TaggedSymbol
935
+ )
936
+ end
937
+ attr_accessor :document_type
938
+
939
+ # The UTC timestamp when this document was uploaded.
940
+ sig { returns(Time) }
941
+ attr_accessor :uploaded_at
942
+
943
+ sig do
944
+ params(
945
+ document_id: String,
946
+ document_name: String,
947
+ document_size: Integer,
948
+ document_type:
949
+ Straddle::PayoutV1::Data::Document::DocumentType::OrSymbol,
950
+ uploaded_at: Time
951
+ ).returns(T.attached_class)
952
+ end
953
+ def self.new(
954
+ # Unique identifier for this document.
955
+ document_id:,
956
+ # The file name of this document as uploaded.
957
+ document_name:,
958
+ # The size of this document in bytes.
959
+ document_size:,
960
+ document_type:,
961
+ # The UTC timestamp when this document was uploaded.
962
+ uploaded_at:
963
+ )
964
+ end
965
+
966
+ sig do
967
+ override.returns(
968
+ {
969
+ document_id: String,
970
+ document_name: String,
971
+ document_size: Integer,
972
+ document_type:
973
+ Straddle::PayoutV1::Data::Document::DocumentType::TaggedSymbol,
974
+ uploaded_at: Time
975
+ }
976
+ )
977
+ end
978
+ def to_hash
979
+ end
980
+
981
+ module DocumentType
982
+ extend Straddle::Internal::Type::Enum
983
+
984
+ TaggedSymbol =
985
+ T.type_alias do
986
+ T.all(Symbol, Straddle::PayoutV1::Data::Document::DocumentType)
987
+ end
988
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
989
+
990
+ PAYMENT_AUTHORIZATION =
991
+ T.let(
992
+ :payment_authorization,
993
+ Straddle::PayoutV1::Data::Document::DocumentType::TaggedSymbol
994
+ )
995
+
996
+ sig do
997
+ override.returns(
998
+ T::Array[
999
+ Straddle::PayoutV1::Data::Document::DocumentType::TaggedSymbol
1000
+ ]
1001
+ )
1002
+ end
1003
+ def self.values
1004
+ end
1005
+ end
1006
+ end
1007
+
785
1008
  # The payment rail used for the payout.
786
1009
  module PaymentRail
787
1010
  extend Straddle::Internal::Type::Enum
@@ -802,6 +1025,141 @@ module Straddle
802
1025
  def self.values
803
1026
  end
804
1027
  end
1028
+
1029
+ class RelatedPayment < Straddle::Internal::Type::BaseModel
1030
+ OrHash =
1031
+ T.type_alias do
1032
+ T.any(
1033
+ Straddle::PayoutV1::Data::RelatedPayment,
1034
+ Straddle::Internal::AnyHash
1035
+ )
1036
+ end
1037
+
1038
+ # The ID of the related payment.
1039
+ sig { returns(String) }
1040
+ attr_accessor :id
1041
+
1042
+ # The type of payment.
1043
+ sig do
1044
+ returns(
1045
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::TaggedSymbol
1046
+ )
1047
+ end
1048
+ attr_accessor :payment_type
1049
+
1050
+ sig do
1051
+ returns(
1052
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1053
+ )
1054
+ end
1055
+ attr_accessor :relationship
1056
+
1057
+ sig do
1058
+ params(
1059
+ id: String,
1060
+ payment_type:
1061
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::OrSymbol,
1062
+ relationship:
1063
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::OrSymbol
1064
+ ).returns(T.attached_class)
1065
+ end
1066
+ def self.new(
1067
+ # The ID of the related payment.
1068
+ id:,
1069
+ # The type of payment.
1070
+ payment_type:,
1071
+ relationship:
1072
+ )
1073
+ end
1074
+
1075
+ sig do
1076
+ override.returns(
1077
+ {
1078
+ id: String,
1079
+ payment_type:
1080
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::TaggedSymbol,
1081
+ relationship:
1082
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1083
+ }
1084
+ )
1085
+ end
1086
+ def to_hash
1087
+ end
1088
+
1089
+ # The type of payment.
1090
+ module PaymentType
1091
+ extend Straddle::Internal::Type::Enum
1092
+
1093
+ TaggedSymbol =
1094
+ T.type_alias do
1095
+ T.all(
1096
+ Symbol,
1097
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType
1098
+ )
1099
+ end
1100
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1101
+
1102
+ CHARGE =
1103
+ T.let(
1104
+ :charge,
1105
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::TaggedSymbol
1106
+ )
1107
+ PAYOUT =
1108
+ T.let(
1109
+ :payout,
1110
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::TaggedSymbol
1111
+ )
1112
+
1113
+ sig do
1114
+ override.returns(
1115
+ T::Array[
1116
+ Straddle::PayoutV1::Data::RelatedPayment::PaymentType::TaggedSymbol
1117
+ ]
1118
+ )
1119
+ end
1120
+ def self.values
1121
+ end
1122
+ end
1123
+
1124
+ module Relationship
1125
+ extend Straddle::Internal::Type::Enum
1126
+
1127
+ TaggedSymbol =
1128
+ T.type_alias do
1129
+ T.all(
1130
+ Symbol,
1131
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship
1132
+ )
1133
+ end
1134
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1135
+
1136
+ ORIGINAL =
1137
+ T.let(
1138
+ :original,
1139
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1140
+ )
1141
+ RESUBMIT =
1142
+ T.let(
1143
+ :resubmit,
1144
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1145
+ )
1146
+ REFUND =
1147
+ T.let(
1148
+ :refund,
1149
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1150
+ )
1151
+
1152
+ sig do
1153
+ override.returns(
1154
+ T::Array[
1155
+ Straddle::PayoutV1::Data::RelatedPayment::Relationship::TaggedSymbol
1156
+ ]
1157
+ )
1158
+ end
1159
+ def self.values
1160
+ end
1161
+ end
1162
+ end
805
1163
  end
806
1164
 
807
1165
  # Indicates the structure of the returned content.
@@ -162,6 +162,35 @@ module Straddle
162
162
  :payout_refused,
163
163
  Straddle::StatusDetailsV1::Reason::TaggedSymbol
164
164
  )
165
+ CANCEL_REQUEST =
166
+ T.let(
167
+ :cancel_request,
168
+ Straddle::StatusDetailsV1::Reason::TaggedSymbol
169
+ )
170
+ FAILED_VERIFICATION =
171
+ T.let(
172
+ :failed_verification,
173
+ Straddle::StatusDetailsV1::Reason::TaggedSymbol
174
+ )
175
+ REQUIRE_REVIEW =
176
+ T.let(
177
+ :require_review,
178
+ Straddle::StatusDetailsV1::Reason::TaggedSymbol
179
+ )
180
+ BLOCKED_BY_SYSTEM =
181
+ T.let(
182
+ :blocked_by_system,
183
+ Straddle::StatusDetailsV1::Reason::TaggedSymbol
184
+ )
185
+ WATCHTOWER_REVIEW =
186
+ T.let(
187
+ :watchtower_review,
188
+ Straddle::StatusDetailsV1::Reason::TaggedSymbol
189
+ )
190
+ VALIDATING =
191
+ T.let(:validating, Straddle::StatusDetailsV1::Reason::TaggedSymbol)
192
+ AUTO_HOLD =
193
+ T.let(:auto_hold, Straddle::StatusDetailsV1::Reason::TaggedSymbol)
165
194
 
166
195
  sig do
167
196
  override.returns(
@@ -103,6 +103,9 @@ module Straddle
103
103
 
104
104
  PayoutUpdateParams = Straddle::Models::PayoutUpdateParams
105
105
 
106
+ PayoutUploadAuthorizationDocumentParams =
107
+ Straddle::Models::PayoutUploadAuthorizationDocumentParams
108
+
106
109
  PayoutV1 = Straddle::Models::PayoutV1
107
110
 
108
111
  ReportCreateTotalCustomersByStatusParams =