straddle 0.2.0 → 0.4.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 (284) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +97 -0
  3. data/README.md +10 -1
  4. data/lib/straddle/client.rb +34 -0
  5. data/lib/straddle/internal/transport/base_client.rb +7 -1
  6. data/lib/straddle/internal/transport/pooled_net_requester.rb +39 -27
  7. data/lib/straddle/internal/util.rb +44 -8
  8. data/lib/straddle/models/bridge/link_bank_account_params.rb +31 -2
  9. data/lib/straddle/models/bridge/link_create_paykey_params.rb +31 -2
  10. data/lib/straddle/models/bridge/link_create_paykey_response.rb +39 -2
  11. data/lib/straddle/models/bridge/link_create_tan_params.rb +30 -2
  12. data/lib/straddle/models/bridge/link_create_tan_response.rb +39 -2
  13. data/lib/straddle/models/bridge/link_plaid_params.rb +30 -2
  14. data/lib/straddle/models/bridge_initialize_params.rb +30 -2
  15. data/lib/straddle/models/charge_cancel_params.rb +8 -1
  16. data/lib/straddle/models/charge_create_params.rb +20 -4
  17. data/lib/straddle/models/charge_get_params.rb +7 -1
  18. data/lib/straddle/models/charge_hold_params.rb +8 -1
  19. data/lib/straddle/models/charge_release_params.rb +8 -1
  20. data/lib/straddle/models/charge_unmask_params.rb +7 -1
  21. data/lib/straddle/models/charge_unmask_response.rb +59 -5
  22. data/lib/straddle/models/charge_update_params.rb +11 -4
  23. data/lib/straddle/models/charge_v1.rb +59 -5
  24. data/lib/straddle/models/customer_delete_params.rb +7 -1
  25. data/lib/straddle/models/customer_get_params.rb +7 -1
  26. data/lib/straddle/models/customer_unmasked_params.rb +7 -1
  27. data/lib/straddle/models/customer_update_params.rb +8 -1
  28. data/lib/straddle/models/customers/review_decision_params.rb +8 -1
  29. data/lib/straddle/models/customers/review_get_params.rb +7 -1
  30. data/lib/straddle/models/customers/review_refresh_review_params.rb +46 -0
  31. data/lib/straddle/models/embed/account_get_params.rb +11 -1
  32. data/lib/straddle/models/embed/account_onboard_params.rb +7 -1
  33. data/lib/straddle/models/embed/account_paged_v1.rb +4 -0
  34. data/lib/straddle/models/embed/account_simulate_params.rb +7 -1
  35. data/lib/straddle/models/embed/account_update_params.rb +8 -1
  36. data/lib/straddle/models/embed/account_v1.rb +4 -0
  37. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +8 -1
  38. data/lib/straddle/models/embed/accounts/capability_request_list_params.rb +8 -1
  39. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +9 -1
  40. data/lib/straddle/models/embed/address_v1.rb +14 -38
  41. data/lib/straddle/models/embed/linked_bank_account_cancel_params.rb +7 -1
  42. data/lib/straddle/models/embed/linked_bank_account_get_params.rb +7 -1
  43. data/lib/straddle/models/embed/linked_bank_account_list_params.rb +51 -1
  44. data/lib/straddle/models/embed/linked_bank_account_unmask_params.rb +7 -1
  45. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +8 -1
  46. data/lib/straddle/models/embed/organization_get_params.rb +7 -1
  47. data/lib/straddle/models/embed/representative_get_params.rb +7 -1
  48. data/lib/straddle/models/embed/representative_unmask_params.rb +7 -1
  49. data/lib/straddle/models/embed/representative_update_params.rb +8 -1
  50. data/lib/straddle/models/funding_event_get_params.rb +7 -1
  51. data/lib/straddle/models/funding_event_list_params.rb +113 -1
  52. data/lib/straddle/models/funding_event_summary_item_v1.rb +152 -1
  53. data/lib/straddle/models/funding_event_summary_paged_v1.rb +152 -1
  54. data/lib/straddle/models/paykey_cancel_params.rb +7 -1
  55. data/lib/straddle/models/paykey_get_params.rb +7 -1
  56. data/lib/straddle/models/paykey_list_params.rb +24 -1
  57. data/lib/straddle/models/paykey_reveal_params.rb +7 -1
  58. data/lib/straddle/models/paykey_reveal_response.rb +39 -2
  59. data/lib/straddle/models/paykey_summary_paged_v1.rb +48 -2
  60. data/lib/straddle/models/paykey_unmasked_params.rb +7 -1
  61. data/lib/straddle/models/paykey_unmasked_v1.rb +38 -2
  62. data/lib/straddle/models/{customer_refresh_review_params.rb → paykey_update_balance_params.rb} +9 -3
  63. data/lib/straddle/models/paykey_v1.rb +48 -2
  64. data/lib/straddle/models/paykeys/review_decision_params.rb +62 -0
  65. data/lib/straddle/models/paykeys/review_get_params.rb +40 -0
  66. data/lib/straddle/models/paykeys/review_get_response.rb +657 -0
  67. data/lib/straddle/models/paykeys/review_refresh_review_params.rb +46 -0
  68. data/lib/straddle/models/payment_list_params.rb +17 -1
  69. data/lib/straddle/models/payment_summary_paged_v1.rb +21 -4
  70. data/lib/straddle/models/payout_cancel_params.rb +8 -1
  71. data/lib/straddle/models/payout_create_params.rb +20 -4
  72. data/lib/straddle/models/payout_get_params.rb +7 -1
  73. data/lib/straddle/models/payout_hold_params.rb +8 -1
  74. data/lib/straddle/models/payout_release_params.rb +8 -1
  75. data/lib/straddle/models/payout_unmask_params.rb +7 -1
  76. data/lib/straddle/models/payout_unmask_response.rb +59 -5
  77. data/lib/straddle/models/payout_update_params.rb +11 -4
  78. data/lib/straddle/models/payout_v1.rb +59 -5
  79. data/lib/straddle/models/status_details_v1.rb +7 -0
  80. data/lib/straddle/models.rb +3 -3
  81. data/lib/straddle/resources/bridge/link.rb +24 -10
  82. data/lib/straddle/resources/bridge.rb +16 -2
  83. data/lib/straddle/resources/charges.rb +13 -8
  84. data/lib/straddle/resources/customers/review.rb +44 -1
  85. data/lib/straddle/resources/customers.rb +23 -47
  86. data/lib/straddle/resources/embed/accounts/capability_requests.rb +9 -4
  87. data/lib/straddle/resources/embed/accounts.rb +25 -14
  88. data/lib/straddle/resources/embed/linked_bank_accounts.rb +25 -7
  89. data/lib/straddle/resources/embed/organizations.rb +7 -2
  90. data/lib/straddle/resources/embed/representatives.rb +15 -8
  91. data/lib/straddle/resources/embed.rb +19 -0
  92. data/lib/straddle/resources/funding_events.rb +25 -3
  93. data/lib/straddle/resources/paykeys/review.rb +133 -0
  94. data/lib/straddle/resources/paykeys.rb +72 -50
  95. data/lib/straddle/resources/payments.rb +12 -6
  96. data/lib/straddle/resources/payouts.rb +11 -7
  97. data/lib/straddle/version.rb +1 -1
  98. data/lib/straddle.rb +9 -2
  99. data/manifest.yaml +2 -0
  100. data/rbi/straddle/client.rbi +34 -0
  101. data/rbi/straddle/internal/transport/base_client.rbi +5 -0
  102. data/rbi/straddle/internal/transport/pooled_net_requester.rbi +6 -2
  103. data/rbi/straddle/internal/type/base_model.rbi +8 -4
  104. data/rbi/straddle/internal/util.rbi +21 -1
  105. data/rbi/straddle/models/bridge/link_bank_account_params.rbi +76 -1
  106. data/rbi/straddle/models/bridge/link_create_paykey_params.rbi +76 -1
  107. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +116 -1
  108. data/rbi/straddle/models/bridge/link_create_tan_params.rbi +76 -1
  109. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +116 -1
  110. data/rbi/straddle/models/bridge/link_plaid_params.rbi +76 -1
  111. data/rbi/straddle/models/bridge_initialize_params.rbi +76 -1
  112. data/rbi/straddle/models/charge_cancel_params.rbi +6 -0
  113. data/rbi/straddle/models/charge_create_params.rbi +19 -3
  114. data/rbi/straddle/models/charge_get_params.rbi +6 -0
  115. data/rbi/straddle/models/charge_hold_params.rbi +6 -0
  116. data/rbi/straddle/models/charge_release_params.rbi +6 -0
  117. data/rbi/straddle/models/charge_unmask_params.rbi +6 -0
  118. data/rbi/straddle/models/charge_unmask_response.rbi +143 -6
  119. data/rbi/straddle/models/charge_update_params.rbi +9 -3
  120. data/rbi/straddle/models/charge_v1.rbi +135 -6
  121. data/rbi/straddle/models/customer_delete_params.rbi +6 -0
  122. data/rbi/straddle/models/customer_get_params.rbi +6 -0
  123. data/rbi/straddle/models/customer_unmasked_params.rbi +6 -0
  124. data/rbi/straddle/models/customer_update_params.rbi +6 -0
  125. data/rbi/straddle/models/customers/review_decision_params.rbi +6 -0
  126. data/rbi/straddle/models/customers/review_get_params.rbi +6 -0
  127. data/rbi/straddle/models/customers/review_refresh_review_params.rbi +82 -0
  128. data/rbi/straddle/models/embed/account_get_params.rbi +13 -1
  129. data/rbi/straddle/models/embed/account_onboard_params.rbi +6 -0
  130. data/rbi/straddle/models/embed/account_paged_v1.rbi +20 -0
  131. data/rbi/straddle/models/embed/account_simulate_params.rbi +6 -0
  132. data/rbi/straddle/models/embed/account_update_params.rbi +6 -0
  133. data/rbi/straddle/models/embed/account_v1.rbi +20 -0
  134. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +6 -0
  135. data/rbi/straddle/models/embed/accounts/capability_request_list_params.rbi +6 -0
  136. data/rbi/straddle/models/embed/accounts/capability_request_paged_v1.rbi +8 -0
  137. data/rbi/straddle/models/embed/address_v1.rbi +18 -42
  138. data/rbi/straddle/models/embed/linked_bank_account_cancel_params.rbi +6 -0
  139. data/rbi/straddle/models/embed/linked_bank_account_get_params.rbi +11 -1
  140. data/rbi/straddle/models/embed/linked_bank_account_list_params.rbi +149 -0
  141. data/rbi/straddle/models/embed/linked_bank_account_unmask_params.rbi +11 -1
  142. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +6 -0
  143. data/rbi/straddle/models/embed/organization_get_params.rbi +11 -1
  144. data/rbi/straddle/models/embed/representative_get_params.rbi +11 -1
  145. data/rbi/straddle/models/embed/representative_unmask_params.rbi +11 -1
  146. data/rbi/straddle/models/embed/representative_update_params.rbi +6 -0
  147. data/rbi/straddle/models/funding_event_get_params.rbi +6 -0
  148. data/rbi/straddle/models/funding_event_list_params.rbi +341 -0
  149. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +416 -0
  150. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +417 -0
  151. data/rbi/straddle/models/paykey_cancel_params.rbi +6 -0
  152. data/rbi/straddle/models/paykey_get_params.rbi +6 -0
  153. data/rbi/straddle/models/paykey_list_params.rbi +30 -0
  154. data/rbi/straddle/models/paykey_reveal_params.rbi +6 -0
  155. data/rbi/straddle/models/paykey_reveal_response.rbi +116 -1
  156. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +131 -4
  157. data/rbi/straddle/models/paykey_unmasked_params.rbi +6 -0
  158. data/rbi/straddle/models/paykey_unmasked_v1.rbi +116 -1
  159. data/rbi/straddle/models/{customer_refresh_review_params.rbi → paykey_update_balance_params.rbi} +8 -2
  160. data/rbi/straddle/models/paykey_v1.rbi +128 -4
  161. data/rbi/straddle/models/paykeys/review_decision_params.rbi +121 -0
  162. data/rbi/straddle/models/paykeys/review_get_params.rbi +73 -0
  163. data/rbi/straddle/models/paykeys/review_get_response.rbi +1561 -0
  164. data/rbi/straddle/models/paykeys/review_refresh_review_params.rbi +82 -0
  165. data/rbi/straddle/models/payment_list_params.rbi +51 -0
  166. data/rbi/straddle/models/payment_summary_paged_v1.rbi +24 -3
  167. data/rbi/straddle/models/payout_cancel_params.rbi +6 -0
  168. data/rbi/straddle/models/payout_create_params.rbi +19 -3
  169. data/rbi/straddle/models/payout_get_params.rbi +6 -0
  170. data/rbi/straddle/models/payout_hold_params.rbi +6 -0
  171. data/rbi/straddle/models/payout_release_params.rbi +6 -0
  172. data/rbi/straddle/models/payout_unmask_params.rbi +6 -0
  173. data/rbi/straddle/models/payout_unmask_response.rbi +140 -3
  174. data/rbi/straddle/models/payout_update_params.rbi +9 -3
  175. data/rbi/straddle/models/payout_v1.rbi +132 -3
  176. data/rbi/straddle/models/status_details_v1.rbi +29 -0
  177. data/rbi/straddle/models.rbi +3 -3
  178. data/rbi/straddle/resources/bridge/link.rbi +28 -6
  179. data/rbi/straddle/resources/bridge.rbi +17 -1
  180. data/rbi/straddle/resources/charges.rbi +13 -8
  181. data/rbi/straddle/resources/customers/review.rbi +34 -1
  182. data/rbi/straddle/resources/customers.rbi +20 -35
  183. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +6 -2
  184. data/rbi/straddle/resources/embed/accounts.rbi +19 -10
  185. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +18 -4
  186. data/rbi/straddle/resources/embed/organizations.rbi +4 -0
  187. data/rbi/straddle/resources/embed/representatives.rbi +12 -6
  188. data/rbi/straddle/resources/embed.rbi +19 -0
  189. data/rbi/straddle/resources/funding_events.rbi +30 -0
  190. data/rbi/straddle/resources/paykeys/review.rbi +99 -0
  191. data/rbi/straddle/resources/paykeys.rbi +45 -29
  192. data/rbi/straddle/resources/payments.rbi +8 -3
  193. data/rbi/straddle/resources/payouts.rbi +11 -7
  194. data/sig/straddle/internal/transport/base_client.rbs +2 -0
  195. data/sig/straddle/internal/transport/pooled_net_requester.rbs +4 -1
  196. data/sig/straddle/internal/util.rbs +10 -0
  197. data/sig/straddle/models/bridge/link_bank_account_params.rbs +28 -1
  198. data/sig/straddle/models/bridge/link_create_paykey_params.rbs +28 -1
  199. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +45 -2
  200. data/sig/straddle/models/bridge/link_create_tan_params.rbs +28 -1
  201. data/sig/straddle/models/bridge/link_create_tan_response.rbs +45 -2
  202. data/sig/straddle/models/bridge/link_plaid_params.rbs +28 -1
  203. data/sig/straddle/models/bridge_initialize_params.rbs +28 -1
  204. data/sig/straddle/models/charge_cancel_params.rbs +5 -0
  205. data/sig/straddle/models/charge_create_params.rbs +14 -4
  206. data/sig/straddle/models/charge_get_params.rbs +5 -0
  207. data/sig/straddle/models/charge_hold_params.rbs +5 -0
  208. data/sig/straddle/models/charge_release_params.rbs +5 -0
  209. data/sig/straddle/models/charge_unmask_params.rbs +5 -0
  210. data/sig/straddle/models/charge_unmask_response.rbs +57 -7
  211. data/sig/straddle/models/charge_update_params.rbs +9 -4
  212. data/sig/straddle/models/charge_v1.rbs +57 -7
  213. data/sig/straddle/models/customer_delete_params.rbs +5 -0
  214. data/sig/straddle/models/customer_get_params.rbs +5 -0
  215. data/sig/straddle/models/customer_unmasked_params.rbs +5 -0
  216. data/sig/straddle/models/customer_update_params.rbs +5 -0
  217. data/sig/straddle/models/customers/review_decision_params.rbs +5 -0
  218. data/sig/straddle/models/customers/review_get_params.rbs +5 -0
  219. data/sig/straddle/models/customers/review_refresh_review_params.rbs +56 -0
  220. data/sig/straddle/models/embed/account_get_params.rbs +5 -1
  221. data/sig/straddle/models/embed/account_onboard_params.rbs +5 -0
  222. data/sig/straddle/models/embed/account_paged_v1.rbs +18 -2
  223. data/sig/straddle/models/embed/account_simulate_params.rbs +5 -0
  224. data/sig/straddle/models/embed/account_update_params.rbs +5 -0
  225. data/sig/straddle/models/embed/account_v1.rbs +18 -2
  226. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +5 -0
  227. data/sig/straddle/models/embed/accounts/capability_request_list_params.rbs +5 -0
  228. data/sig/straddle/models/embed/accounts/capability_request_paged_v1.rbs +5 -0
  229. data/sig/straddle/models/embed/address_v1.rbs +12 -27
  230. data/sig/straddle/models/embed/linked_bank_account_cancel_params.rbs +10 -1
  231. data/sig/straddle/models/embed/linked_bank_account_get_params.rbs +9 -1
  232. data/sig/straddle/models/embed/linked_bank_account_list_params.rbs +46 -0
  233. data/sig/straddle/models/embed/linked_bank_account_unmask_params.rbs +9 -1
  234. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +5 -0
  235. data/sig/straddle/models/embed/organization_get_params.rbs +5 -1
  236. data/sig/straddle/models/embed/representative_get_params.rbs +9 -1
  237. data/sig/straddle/models/embed/representative_unmask_params.rbs +9 -1
  238. data/sig/straddle/models/embed/representative_update_params.rbs +5 -0
  239. data/sig/straddle/models/funding_event_get_params.rbs +5 -0
  240. data/sig/straddle/models/funding_event_list_params.rbs +130 -0
  241. data/sig/straddle/models/funding_event_summary_item_v1.rbs +179 -0
  242. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +179 -0
  243. data/sig/straddle/models/paykey_cancel_params.rbs +5 -0
  244. data/sig/straddle/models/paykey_get_params.rbs +5 -0
  245. data/sig/straddle/models/paykey_list_params.rbs +17 -1
  246. data/sig/straddle/models/paykey_reveal_params.rbs +5 -0
  247. data/sig/straddle/models/paykey_reveal_response.rbs +45 -2
  248. data/sig/straddle/models/paykey_summary_paged_v1.rbs +53 -5
  249. data/sig/straddle/models/paykey_unmasked_params.rbs +5 -0
  250. data/sig/straddle/models/paykey_unmasked_v1.rbs +45 -2
  251. data/sig/straddle/models/{customer_refresh_review_params.rbs → paykey_update_balance_params.rbs} +7 -2
  252. data/sig/straddle/models/paykey_v1.rbs +53 -5
  253. data/sig/straddle/models/paykeys/review_decision_params.rbs +72 -0
  254. data/sig/straddle/models/paykeys/review_get_params.rbs +49 -0
  255. data/sig/straddle/models/paykeys/review_get_response.rbs +645 -0
  256. data/sig/straddle/models/paykeys/review_refresh_review_params.rbs +56 -0
  257. data/sig/straddle/models/payment_list_params.rbs +23 -0
  258. data/sig/straddle/models/payment_summary_paged_v1.rbs +16 -4
  259. data/sig/straddle/models/payout_cancel_params.rbs +5 -0
  260. data/sig/straddle/models/payout_create_params.rbs +14 -4
  261. data/sig/straddle/models/payout_get_params.rbs +5 -0
  262. data/sig/straddle/models/payout_hold_params.rbs +5 -0
  263. data/sig/straddle/models/payout_release_params.rbs +5 -0
  264. data/sig/straddle/models/payout_unmask_params.rbs +5 -0
  265. data/sig/straddle/models/payout_unmask_response.rbs +54 -4
  266. data/sig/straddle/models/payout_update_params.rbs +9 -4
  267. data/sig/straddle/models/payout_v1.rbs +54 -4
  268. data/sig/straddle/models/status_details_v1.rbs +14 -0
  269. data/sig/straddle/models.rbs +3 -3
  270. data/sig/straddle/resources/bridge/link.rbs +4 -0
  271. data/sig/straddle/resources/bridge.rbs +1 -0
  272. data/sig/straddle/resources/charges.rbs +2 -2
  273. data/sig/straddle/resources/customers/review.rbs +9 -0
  274. data/sig/straddle/resources/customers.rbs +0 -9
  275. data/sig/straddle/resources/embed/linked_bank_accounts.rbs +2 -0
  276. data/sig/straddle/resources/funding_events.rbs +5 -0
  277. data/sig/straddle/resources/paykeys/review.rbs +36 -0
  278. data/sig/straddle/resources/paykeys.rbs +9 -6
  279. data/sig/straddle/resources/payments.rbs +1 -0
  280. data/sig/straddle/resources/payouts.rbs +2 -2
  281. metadata +37 -8
  282. data/lib/straddle/models/paykey_review_params.rb +0 -54
  283. data/rbi/straddle/models/paykey_review_params.rbi +0 -98
  284. data/sig/straddle/models/paykey_review_params.rbs +0 -65
@@ -0,0 +1,1561 @@
1
+ # typed: strong
2
+
3
+ module Straddle
4
+ module Models
5
+ module Paykeys
6
+ class ReviewGetResponse < Straddle::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Straddle::Models::Paykeys::ReviewGetResponse,
11
+ Straddle::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig { returns(Straddle::Models::Paykeys::ReviewGetResponse::Data) }
16
+ attr_reader :data
17
+
18
+ sig do
19
+ params(
20
+ data: Straddle::Models::Paykeys::ReviewGetResponse::Data::OrHash
21
+ ).void
22
+ end
23
+ attr_writer :data
24
+
25
+ # Metadata about the API request, including an identifier and timestamp.
26
+ sig { returns(Straddle::ResponseMetadata) }
27
+ attr_reader :meta
28
+
29
+ sig { params(meta: Straddle::ResponseMetadata::OrHash).void }
30
+ attr_writer :meta
31
+
32
+ # Indicates the structure of the returned content.
33
+ #
34
+ # - "object" means the `data` field contains a single JSON object.
35
+ # - "array" means the `data` field contains an array of objects.
36
+ # - "error" means the `data` field contains an error object with details of the
37
+ # issue.
38
+ # - "none" means no data is returned.
39
+ sig do
40
+ returns(
41
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
42
+ )
43
+ end
44
+ attr_accessor :response_type
45
+
46
+ sig do
47
+ params(
48
+ data: Straddle::Models::Paykeys::ReviewGetResponse::Data::OrHash,
49
+ meta: Straddle::ResponseMetadata::OrHash,
50
+ response_type:
51
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::OrSymbol
52
+ ).returns(T.attached_class)
53
+ end
54
+ def self.new(
55
+ data:,
56
+ # Metadata about the API request, including an identifier and timestamp.
57
+ meta:,
58
+ # Indicates the structure of the returned content.
59
+ #
60
+ # - "object" means the `data` field contains a single JSON object.
61
+ # - "array" means the `data` field contains an array of objects.
62
+ # - "error" means the `data` field contains an error object with details of the
63
+ # issue.
64
+ # - "none" means no data is returned.
65
+ response_type:
66
+ )
67
+ end
68
+
69
+ sig do
70
+ override.returns(
71
+ {
72
+ data: Straddle::Models::Paykeys::ReviewGetResponse::Data,
73
+ meta: Straddle::ResponseMetadata,
74
+ response_type:
75
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
76
+ }
77
+ )
78
+ end
79
+ def to_hash
80
+ end
81
+
82
+ class Data < Straddle::Internal::Type::BaseModel
83
+ OrHash =
84
+ T.type_alias do
85
+ T.any(
86
+ Straddle::Models::Paykeys::ReviewGetResponse::Data,
87
+ Straddle::Internal::AnyHash
88
+ )
89
+ end
90
+
91
+ sig do
92
+ returns(
93
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails
94
+ )
95
+ end
96
+ attr_reader :paykey_details
97
+
98
+ sig do
99
+ params(
100
+ paykey_details:
101
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::OrHash
102
+ ).void
103
+ end
104
+ attr_writer :paykey_details
105
+
106
+ sig do
107
+ returns(
108
+ T.nilable(
109
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails
110
+ )
111
+ )
112
+ end
113
+ attr_reader :verification_details
114
+
115
+ sig do
116
+ params(
117
+ verification_details:
118
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::OrHash
119
+ ).void
120
+ end
121
+ attr_writer :verification_details
122
+
123
+ sig do
124
+ params(
125
+ paykey_details:
126
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::OrHash,
127
+ verification_details:
128
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::OrHash
129
+ ).returns(T.attached_class)
130
+ end
131
+ def self.new(paykey_details:, verification_details: nil)
132
+ end
133
+
134
+ sig do
135
+ override.returns(
136
+ {
137
+ paykey_details:
138
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails,
139
+ verification_details:
140
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails
141
+ }
142
+ )
143
+ end
144
+ def to_hash
145
+ end
146
+
147
+ class PaykeyDetails < Straddle::Internal::Type::BaseModel
148
+ OrHash =
149
+ T.type_alias do
150
+ T.any(
151
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails,
152
+ Straddle::Internal::AnyHash
153
+ )
154
+ end
155
+
156
+ # Unique identifier for the paykey.
157
+ sig { returns(String) }
158
+ attr_accessor :id
159
+
160
+ sig do
161
+ returns(
162
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config
163
+ )
164
+ end
165
+ attr_reader :config
166
+
167
+ sig do
168
+ params(
169
+ config:
170
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::OrHash
171
+ ).void
172
+ end
173
+ attr_writer :config
174
+
175
+ # Timestamp of when the paykey was created.
176
+ sig { returns(Time) }
177
+ attr_accessor :created_at
178
+
179
+ # Human-readable label used to represent this paykey in a UI.
180
+ sig { returns(String) }
181
+ attr_accessor :label
182
+
183
+ # The tokenized paykey value. This value is used to create payments and should be
184
+ # stored securely.
185
+ sig { returns(String) }
186
+ attr_accessor :paykey
187
+
188
+ sig do
189
+ returns(
190
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
191
+ )
192
+ end
193
+ attr_accessor :source
194
+
195
+ sig do
196
+ returns(
197
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
198
+ )
199
+ end
200
+ attr_accessor :status
201
+
202
+ # Timestamp of the most recent update to the paykey.
203
+ sig { returns(Time) }
204
+ attr_accessor :updated_at
205
+
206
+ sig do
207
+ returns(
208
+ T.nilable(
209
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance
210
+ )
211
+ )
212
+ end
213
+ attr_reader :balance
214
+
215
+ sig do
216
+ params(
217
+ balance:
218
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::OrHash
219
+ ).void
220
+ end
221
+ attr_writer :balance
222
+
223
+ sig do
224
+ returns(
225
+ T.nilable(
226
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData
227
+ )
228
+ )
229
+ end
230
+ attr_reader :bank_data
231
+
232
+ sig do
233
+ params(
234
+ bank_data:
235
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::OrHash
236
+ ).void
237
+ end
238
+ attr_writer :bank_data
239
+
240
+ # Unique identifier of the related customer object.
241
+ sig { returns(T.nilable(String)) }
242
+ attr_accessor :customer_id
243
+
244
+ # Expiration date and time of the paykey, if applicable.
245
+ sig { returns(T.nilable(Time)) }
246
+ attr_accessor :expires_at
247
+
248
+ # Unique identifier for the paykey in your database, used for cross-referencing
249
+ # between Straddle and your systems.
250
+ sig { returns(T.nilable(String)) }
251
+ attr_accessor :external_id
252
+
253
+ # Name of the financial institution.
254
+ sig { returns(T.nilable(String)) }
255
+ attr_accessor :institution_name
256
+
257
+ # Up to 20 additional user-defined key-value pairs. Useful for storing additional
258
+ # information about the paykey in a structured format.
259
+ sig { returns(T.nilable(T::Hash[Symbol, String])) }
260
+ attr_accessor :metadata
261
+
262
+ sig do
263
+ returns(
264
+ T.nilable(
265
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails
266
+ )
267
+ )
268
+ end
269
+ attr_reader :status_details
270
+
271
+ sig do
272
+ params(
273
+ status_details:
274
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::OrHash
275
+ ).void
276
+ end
277
+ attr_writer :status_details
278
+
279
+ # Indicates whether this paykey is eligible for client-initiated unblocking. Only
280
+ # present for blocked paykeys. True when blocked due to R29 returns and not
281
+ # previously unblocked, false otherwise. Null when paykey is not blocked.
282
+ sig { returns(T.nilable(T::Boolean)) }
283
+ attr_accessor :unblock_eligible
284
+
285
+ sig do
286
+ params(
287
+ id: String,
288
+ config:
289
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::OrHash,
290
+ created_at: Time,
291
+ label: String,
292
+ paykey: String,
293
+ source:
294
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::OrSymbol,
295
+ status:
296
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::OrSymbol,
297
+ updated_at: Time,
298
+ balance:
299
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::OrHash,
300
+ bank_data:
301
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::OrHash,
302
+ customer_id: T.nilable(String),
303
+ expires_at: T.nilable(Time),
304
+ external_id: T.nilable(String),
305
+ institution_name: T.nilable(String),
306
+ metadata: T.nilable(T::Hash[Symbol, String]),
307
+ status_details:
308
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::OrHash,
309
+ unblock_eligible: T.nilable(T::Boolean)
310
+ ).returns(T.attached_class)
311
+ end
312
+ def self.new(
313
+ # Unique identifier for the paykey.
314
+ id:,
315
+ config:,
316
+ # Timestamp of when the paykey was created.
317
+ created_at:,
318
+ # Human-readable label used to represent this paykey in a UI.
319
+ label:,
320
+ # The tokenized paykey value. This value is used to create payments and should be
321
+ # stored securely.
322
+ paykey:,
323
+ source:,
324
+ status:,
325
+ # Timestamp of the most recent update to the paykey.
326
+ updated_at:,
327
+ balance: nil,
328
+ bank_data: nil,
329
+ # Unique identifier of the related customer object.
330
+ customer_id: nil,
331
+ # Expiration date and time of the paykey, if applicable.
332
+ expires_at: nil,
333
+ # Unique identifier for the paykey in your database, used for cross-referencing
334
+ # between Straddle and your systems.
335
+ external_id: nil,
336
+ # Name of the financial institution.
337
+ institution_name: nil,
338
+ # Up to 20 additional user-defined key-value pairs. Useful for storing additional
339
+ # information about the paykey in a structured format.
340
+ metadata: nil,
341
+ status_details: nil,
342
+ # Indicates whether this paykey is eligible for client-initiated unblocking. Only
343
+ # present for blocked paykeys. True when blocked due to R29 returns and not
344
+ # previously unblocked, false otherwise. Null when paykey is not blocked.
345
+ unblock_eligible: nil
346
+ )
347
+ end
348
+
349
+ sig do
350
+ override.returns(
351
+ {
352
+ id: String,
353
+ config:
354
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config,
355
+ created_at: Time,
356
+ label: String,
357
+ paykey: String,
358
+ source:
359
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol,
360
+ status:
361
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol,
362
+ updated_at: Time,
363
+ balance:
364
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance,
365
+ bank_data:
366
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData,
367
+ customer_id: T.nilable(String),
368
+ expires_at: T.nilable(Time),
369
+ external_id: T.nilable(String),
370
+ institution_name: T.nilable(String),
371
+ metadata: T.nilable(T::Hash[Symbol, String]),
372
+ status_details:
373
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails,
374
+ unblock_eligible: T.nilable(T::Boolean)
375
+ }
376
+ )
377
+ end
378
+ def to_hash
379
+ end
380
+
381
+ class Config < Straddle::Internal::Type::BaseModel
382
+ OrHash =
383
+ T.type_alias do
384
+ T.any(
385
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config,
386
+ Straddle::Internal::AnyHash
387
+ )
388
+ end
389
+
390
+ sig do
391
+ returns(
392
+ T.nilable(
393
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol
394
+ )
395
+ )
396
+ end
397
+ attr_reader :processing_method
398
+
399
+ sig do
400
+ params(
401
+ processing_method:
402
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::OrSymbol
403
+ ).void
404
+ end
405
+ attr_writer :processing_method
406
+
407
+ sig do
408
+ returns(
409
+ T.nilable(
410
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
411
+ )
412
+ )
413
+ end
414
+ attr_reader :sandbox_outcome
415
+
416
+ sig do
417
+ params(
418
+ sandbox_outcome:
419
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::OrSymbol
420
+ ).void
421
+ end
422
+ attr_writer :sandbox_outcome
423
+
424
+ sig do
425
+ params(
426
+ processing_method:
427
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::OrSymbol,
428
+ sandbox_outcome:
429
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::OrSymbol
430
+ ).returns(T.attached_class)
431
+ end
432
+ def self.new(processing_method: nil, sandbox_outcome: nil)
433
+ end
434
+
435
+ sig do
436
+ override.returns(
437
+ {
438
+ processing_method:
439
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol,
440
+ sandbox_outcome:
441
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
442
+ }
443
+ )
444
+ end
445
+ def to_hash
446
+ end
447
+
448
+ module ProcessingMethod
449
+ extend Straddle::Internal::Type::Enum
450
+
451
+ TaggedSymbol =
452
+ T.type_alias do
453
+ T.all(
454
+ Symbol,
455
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod
456
+ )
457
+ end
458
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
459
+
460
+ INLINE =
461
+ T.let(
462
+ :inline,
463
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol
464
+ )
465
+ BACKGROUND =
466
+ T.let(
467
+ :background,
468
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol
469
+ )
470
+ SKIP =
471
+ T.let(
472
+ :skip,
473
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol
474
+ )
475
+
476
+ sig do
477
+ override.returns(
478
+ T::Array[
479
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::ProcessingMethod::TaggedSymbol
480
+ ]
481
+ )
482
+ end
483
+ def self.values
484
+ end
485
+ end
486
+
487
+ module SandboxOutcome
488
+ extend Straddle::Internal::Type::Enum
489
+
490
+ TaggedSymbol =
491
+ T.type_alias do
492
+ T.all(
493
+ Symbol,
494
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome
495
+ )
496
+ end
497
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
498
+
499
+ STANDARD =
500
+ T.let(
501
+ :standard,
502
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
503
+ )
504
+ ACTIVE =
505
+ T.let(
506
+ :active,
507
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
508
+ )
509
+ REJECTED =
510
+ T.let(
511
+ :rejected,
512
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
513
+ )
514
+ REVIEW =
515
+ T.let(
516
+ :review,
517
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
518
+ )
519
+
520
+ sig do
521
+ override.returns(
522
+ T::Array[
523
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Config::SandboxOutcome::TaggedSymbol
524
+ ]
525
+ )
526
+ end
527
+ def self.values
528
+ end
529
+ end
530
+ end
531
+
532
+ module Source
533
+ extend Straddle::Internal::Type::Enum
534
+
535
+ TaggedSymbol =
536
+ T.type_alias do
537
+ T.all(
538
+ Symbol,
539
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source
540
+ )
541
+ end
542
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
543
+
544
+ BANK_ACCOUNT =
545
+ T.let(
546
+ :bank_account,
547
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
548
+ )
549
+ STRADDLE =
550
+ T.let(
551
+ :straddle,
552
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
553
+ )
554
+ MX =
555
+ T.let(
556
+ :mx,
557
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
558
+ )
559
+ PLAID =
560
+ T.let(
561
+ :plaid,
562
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
563
+ )
564
+ TAN =
565
+ T.let(
566
+ :tan,
567
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
568
+ )
569
+ QUILTT =
570
+ T.let(
571
+ :quiltt,
572
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
573
+ )
574
+
575
+ sig do
576
+ override.returns(
577
+ T::Array[
578
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Source::TaggedSymbol
579
+ ]
580
+ )
581
+ end
582
+ def self.values
583
+ end
584
+ end
585
+
586
+ module Status
587
+ extend Straddle::Internal::Type::Enum
588
+
589
+ TaggedSymbol =
590
+ T.type_alias do
591
+ T.all(
592
+ Symbol,
593
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status
594
+ )
595
+ end
596
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
597
+
598
+ PENDING =
599
+ T.let(
600
+ :pending,
601
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
602
+ )
603
+ ACTIVE =
604
+ T.let(
605
+ :active,
606
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
607
+ )
608
+ INACTIVE =
609
+ T.let(
610
+ :inactive,
611
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
612
+ )
613
+ REJECTED =
614
+ T.let(
615
+ :rejected,
616
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
617
+ )
618
+ REVIEW =
619
+ T.let(
620
+ :review,
621
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
622
+ )
623
+ BLOCKED =
624
+ T.let(
625
+ :blocked,
626
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
627
+ )
628
+
629
+ sig do
630
+ override.returns(
631
+ T::Array[
632
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Status::TaggedSymbol
633
+ ]
634
+ )
635
+ end
636
+ def self.values
637
+ end
638
+ end
639
+
640
+ class Balance < Straddle::Internal::Type::BaseModel
641
+ OrHash =
642
+ T.type_alias do
643
+ T.any(
644
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance,
645
+ Straddle::Internal::AnyHash
646
+ )
647
+ end
648
+
649
+ sig do
650
+ returns(
651
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol
652
+ )
653
+ end
654
+ attr_accessor :status
655
+
656
+ # Account Balance when last retrieved
657
+ sig { returns(T.nilable(Integer)) }
658
+ attr_accessor :account_balance
659
+
660
+ # Last time account balance was updated.
661
+ sig { returns(T.nilable(Time)) }
662
+ attr_accessor :updated_at
663
+
664
+ sig do
665
+ params(
666
+ status:
667
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::OrSymbol,
668
+ account_balance: T.nilable(Integer),
669
+ updated_at: T.nilable(Time)
670
+ ).returns(T.attached_class)
671
+ end
672
+ def self.new(
673
+ status:,
674
+ # Account Balance when last retrieved
675
+ account_balance: nil,
676
+ # Last time account balance was updated.
677
+ updated_at: nil
678
+ )
679
+ end
680
+
681
+ sig do
682
+ override.returns(
683
+ {
684
+ status:
685
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol,
686
+ account_balance: T.nilable(Integer),
687
+ updated_at: T.nilable(Time)
688
+ }
689
+ )
690
+ end
691
+ def to_hash
692
+ end
693
+
694
+ module Status
695
+ extend Straddle::Internal::Type::Enum
696
+
697
+ TaggedSymbol =
698
+ T.type_alias do
699
+ T.all(
700
+ Symbol,
701
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status
702
+ )
703
+ end
704
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
705
+
706
+ PENDING =
707
+ T.let(
708
+ :pending,
709
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol
710
+ )
711
+ COMPLETED =
712
+ T.let(
713
+ :completed,
714
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol
715
+ )
716
+ FAILED =
717
+ T.let(
718
+ :failed,
719
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol
720
+ )
721
+
722
+ sig do
723
+ override.returns(
724
+ T::Array[
725
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::Balance::Status::TaggedSymbol
726
+ ]
727
+ )
728
+ end
729
+ def self.values
730
+ end
731
+ end
732
+ end
733
+
734
+ class BankData < Straddle::Internal::Type::BaseModel
735
+ OrHash =
736
+ T.type_alias do
737
+ T.any(
738
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData,
739
+ Straddle::Internal::AnyHash
740
+ )
741
+ end
742
+
743
+ # Bank account number. This value is masked by default for security reasons. Use
744
+ # the /unmask endpoint to access the unmasked value.
745
+ sig { returns(String) }
746
+ attr_accessor :account_number
747
+
748
+ sig do
749
+ returns(
750
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::TaggedSymbol
751
+ )
752
+ end
753
+ attr_accessor :account_type
754
+
755
+ # The routing number of the bank account.
756
+ sig { returns(String) }
757
+ attr_accessor :routing_number
758
+
759
+ sig do
760
+ params(
761
+ account_number: String,
762
+ account_type:
763
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::OrSymbol,
764
+ routing_number: String
765
+ ).returns(T.attached_class)
766
+ end
767
+ def self.new(
768
+ # Bank account number. This value is masked by default for security reasons. Use
769
+ # the /unmask endpoint to access the unmasked value.
770
+ account_number:,
771
+ account_type:,
772
+ # The routing number of the bank account.
773
+ routing_number:
774
+ )
775
+ end
776
+
777
+ sig do
778
+ override.returns(
779
+ {
780
+ account_number: String,
781
+ account_type:
782
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::TaggedSymbol,
783
+ routing_number: String
784
+ }
785
+ )
786
+ end
787
+ def to_hash
788
+ end
789
+
790
+ module AccountType
791
+ extend Straddle::Internal::Type::Enum
792
+
793
+ TaggedSymbol =
794
+ T.type_alias do
795
+ T.all(
796
+ Symbol,
797
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType
798
+ )
799
+ end
800
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
801
+
802
+ CHECKING =
803
+ T.let(
804
+ :checking,
805
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::TaggedSymbol
806
+ )
807
+ SAVINGS =
808
+ T.let(
809
+ :savings,
810
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::TaggedSymbol
811
+ )
812
+
813
+ sig do
814
+ override.returns(
815
+ T::Array[
816
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::BankData::AccountType::TaggedSymbol
817
+ ]
818
+ )
819
+ end
820
+ def self.values
821
+ end
822
+ end
823
+ end
824
+
825
+ class StatusDetails < Straddle::Internal::Type::BaseModel
826
+ OrHash =
827
+ T.type_alias do
828
+ T.any(
829
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails,
830
+ Straddle::Internal::AnyHash
831
+ )
832
+ end
833
+
834
+ # The time the status change occurred.
835
+ sig { returns(Time) }
836
+ attr_accessor :changed_at
837
+
838
+ # A human-readable description of the current status.
839
+ sig { returns(String) }
840
+ attr_accessor :message
841
+
842
+ sig do
843
+ returns(
844
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
845
+ )
846
+ end
847
+ attr_accessor :reason
848
+
849
+ sig do
850
+ returns(
851
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
852
+ )
853
+ end
854
+ attr_accessor :source
855
+
856
+ # The status code if applicable.
857
+ sig { returns(T.nilable(String)) }
858
+ attr_accessor :code
859
+
860
+ sig do
861
+ params(
862
+ changed_at: Time,
863
+ message: String,
864
+ reason:
865
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::OrSymbol,
866
+ source:
867
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::OrSymbol,
868
+ code: T.nilable(String)
869
+ ).returns(T.attached_class)
870
+ end
871
+ def self.new(
872
+ # The time the status change occurred.
873
+ changed_at:,
874
+ # A human-readable description of the current status.
875
+ message:,
876
+ reason:,
877
+ source:,
878
+ # The status code if applicable.
879
+ code: nil
880
+ )
881
+ end
882
+
883
+ sig do
884
+ override.returns(
885
+ {
886
+ changed_at: Time,
887
+ message: String,
888
+ reason:
889
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol,
890
+ source:
891
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol,
892
+ code: T.nilable(String)
893
+ }
894
+ )
895
+ end
896
+ def to_hash
897
+ end
898
+
899
+ module Reason
900
+ extend Straddle::Internal::Type::Enum
901
+
902
+ TaggedSymbol =
903
+ T.type_alias do
904
+ T.all(
905
+ Symbol,
906
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason
907
+ )
908
+ end
909
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
910
+
911
+ INSUFFICIENT_FUNDS =
912
+ T.let(
913
+ :insufficient_funds,
914
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
915
+ )
916
+ CLOSED_BANK_ACCOUNT =
917
+ T.let(
918
+ :closed_bank_account,
919
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
920
+ )
921
+ INVALID_BANK_ACCOUNT =
922
+ T.let(
923
+ :invalid_bank_account,
924
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
925
+ )
926
+ INVALID_ROUTING =
927
+ T.let(
928
+ :invalid_routing,
929
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
930
+ )
931
+ DISPUTED =
932
+ T.let(
933
+ :disputed,
934
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
935
+ )
936
+ PAYMENT_STOPPED =
937
+ T.let(
938
+ :payment_stopped,
939
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
940
+ )
941
+ OWNER_DECEASED =
942
+ T.let(
943
+ :owner_deceased,
944
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
945
+ )
946
+ FROZEN_BANK_ACCOUNT =
947
+ T.let(
948
+ :frozen_bank_account,
949
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
950
+ )
951
+ RISK_REVIEW =
952
+ T.let(
953
+ :risk_review,
954
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
955
+ )
956
+ FRAUDULENT =
957
+ T.let(
958
+ :fraudulent,
959
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
960
+ )
961
+ DUPLICATE_ENTRY =
962
+ T.let(
963
+ :duplicate_entry,
964
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
965
+ )
966
+ INVALID_PAYKEY =
967
+ T.let(
968
+ :invalid_paykey,
969
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
970
+ )
971
+ PAYMENT_BLOCKED =
972
+ T.let(
973
+ :payment_blocked,
974
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
975
+ )
976
+ AMOUNT_TOO_LARGE =
977
+ T.let(
978
+ :amount_too_large,
979
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
980
+ )
981
+ TOO_MANY_ATTEMPTS =
982
+ T.let(
983
+ :too_many_attempts,
984
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
985
+ )
986
+ INTERNAL_SYSTEM_ERROR =
987
+ T.let(
988
+ :internal_system_error,
989
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
990
+ )
991
+ USER_REQUEST =
992
+ T.let(
993
+ :user_request,
994
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
995
+ )
996
+ OK =
997
+ T.let(
998
+ :ok,
999
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1000
+ )
1001
+ OTHER_NETWORK_RETURN =
1002
+ T.let(
1003
+ :other_network_return,
1004
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1005
+ )
1006
+ PAYOUT_REFUSED =
1007
+ T.let(
1008
+ :payout_refused,
1009
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1010
+ )
1011
+ CANCEL_REQUEST =
1012
+ T.let(
1013
+ :cancel_request,
1014
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1015
+ )
1016
+ FAILED_VERIFICATION =
1017
+ T.let(
1018
+ :failed_verification,
1019
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1020
+ )
1021
+ REQUIRE_REVIEW =
1022
+ T.let(
1023
+ :require_review,
1024
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1025
+ )
1026
+ BLOCKED_BY_SYSTEM =
1027
+ T.let(
1028
+ :blocked_by_system,
1029
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1030
+ )
1031
+ WATCHTOWER_REVIEW =
1032
+ T.let(
1033
+ :watchtower_review,
1034
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1035
+ )
1036
+ VALIDATING =
1037
+ T.let(
1038
+ :validating,
1039
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1040
+ )
1041
+ AUTO_HOLD =
1042
+ T.let(
1043
+ :auto_hold,
1044
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1045
+ )
1046
+
1047
+ sig do
1048
+ override.returns(
1049
+ T::Array[
1050
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Reason::TaggedSymbol
1051
+ ]
1052
+ )
1053
+ end
1054
+ def self.values
1055
+ end
1056
+ end
1057
+
1058
+ module Source
1059
+ extend Straddle::Internal::Type::Enum
1060
+
1061
+ TaggedSymbol =
1062
+ T.type_alias do
1063
+ T.all(
1064
+ Symbol,
1065
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source
1066
+ )
1067
+ end
1068
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1069
+
1070
+ WATCHTOWER =
1071
+ T.let(
1072
+ :watchtower,
1073
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1074
+ )
1075
+ BANK_DECLINE =
1076
+ T.let(
1077
+ :bank_decline,
1078
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1079
+ )
1080
+ CUSTOMER_DISPUTE =
1081
+ T.let(
1082
+ :customer_dispute,
1083
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1084
+ )
1085
+ USER_ACTION =
1086
+ T.let(
1087
+ :user_action,
1088
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1089
+ )
1090
+ SYSTEM =
1091
+ T.let(
1092
+ :system,
1093
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1094
+ )
1095
+
1096
+ sig do
1097
+ override.returns(
1098
+ T::Array[
1099
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::PaykeyDetails::StatusDetails::Source::TaggedSymbol
1100
+ ]
1101
+ )
1102
+ end
1103
+ def self.values
1104
+ end
1105
+ end
1106
+ end
1107
+ end
1108
+
1109
+ class VerificationDetails < Straddle::Internal::Type::BaseModel
1110
+ OrHash =
1111
+ T.type_alias do
1112
+ T.any(
1113
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails,
1114
+ Straddle::Internal::AnyHash
1115
+ )
1116
+ end
1117
+
1118
+ # Unique identifier for the verification details.
1119
+ sig { returns(String) }
1120
+ attr_accessor :id
1121
+
1122
+ sig do
1123
+ returns(
1124
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown
1125
+ )
1126
+ end
1127
+ attr_reader :breakdown
1128
+
1129
+ sig do
1130
+ params(
1131
+ breakdown:
1132
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::OrHash
1133
+ ).void
1134
+ end
1135
+ attr_writer :breakdown
1136
+
1137
+ # Timestamp of when the verification was initiated.
1138
+ sig { returns(Time) }
1139
+ attr_accessor :created_at
1140
+
1141
+ sig do
1142
+ returns(
1143
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol
1144
+ )
1145
+ end
1146
+ attr_accessor :decision
1147
+
1148
+ # Dictionary of all messages from the paykey verification process.
1149
+ sig { returns(T::Hash[Symbol, String]) }
1150
+ attr_accessor :messages
1151
+
1152
+ # Timestamp of the most recent update to the verification details.
1153
+ sig { returns(Time) }
1154
+ attr_accessor :updated_at
1155
+
1156
+ sig do
1157
+ params(
1158
+ id: String,
1159
+ breakdown:
1160
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::OrHash,
1161
+ created_at: Time,
1162
+ decision:
1163
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::OrSymbol,
1164
+ messages: T::Hash[Symbol, String],
1165
+ updated_at: Time
1166
+ ).returns(T.attached_class)
1167
+ end
1168
+ def self.new(
1169
+ # Unique identifier for the verification details.
1170
+ id:,
1171
+ breakdown:,
1172
+ # Timestamp of when the verification was initiated.
1173
+ created_at:,
1174
+ decision:,
1175
+ # Dictionary of all messages from the paykey verification process.
1176
+ messages:,
1177
+ # Timestamp of the most recent update to the verification details.
1178
+ updated_at:
1179
+ )
1180
+ end
1181
+
1182
+ sig do
1183
+ override.returns(
1184
+ {
1185
+ id: String,
1186
+ breakdown:
1187
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown,
1188
+ created_at: Time,
1189
+ decision:
1190
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol,
1191
+ messages: T::Hash[Symbol, String],
1192
+ updated_at: Time
1193
+ }
1194
+ )
1195
+ end
1196
+ def to_hash
1197
+ end
1198
+
1199
+ class Breakdown < Straddle::Internal::Type::BaseModel
1200
+ OrHash =
1201
+ T.type_alias do
1202
+ T.any(
1203
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown,
1204
+ Straddle::Internal::AnyHash
1205
+ )
1206
+ end
1207
+
1208
+ sig do
1209
+ returns(
1210
+ T.nilable(
1211
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation
1212
+ )
1213
+ )
1214
+ end
1215
+ attr_reader :account_validation
1216
+
1217
+ sig do
1218
+ params(
1219
+ account_validation:
1220
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::OrHash
1221
+ ).void
1222
+ end
1223
+ attr_writer :account_validation
1224
+
1225
+ sig do
1226
+ returns(
1227
+ T.nilable(
1228
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch
1229
+ )
1230
+ )
1231
+ end
1232
+ attr_reader :name_match
1233
+
1234
+ sig do
1235
+ params(
1236
+ name_match:
1237
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::OrHash
1238
+ ).void
1239
+ end
1240
+ attr_writer :name_match
1241
+
1242
+ sig do
1243
+ params(
1244
+ account_validation:
1245
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::OrHash,
1246
+ name_match:
1247
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::OrHash
1248
+ ).returns(T.attached_class)
1249
+ end
1250
+ def self.new(account_validation: nil, name_match: nil)
1251
+ end
1252
+
1253
+ sig do
1254
+ override.returns(
1255
+ {
1256
+ account_validation:
1257
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation,
1258
+ name_match:
1259
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch
1260
+ }
1261
+ )
1262
+ end
1263
+ def to_hash
1264
+ end
1265
+
1266
+ class AccountValidation < Straddle::Internal::Type::BaseModel
1267
+ OrHash =
1268
+ T.type_alias do
1269
+ T.any(
1270
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation,
1271
+ Straddle::Internal::AnyHash
1272
+ )
1273
+ end
1274
+
1275
+ sig { returns(T::Array[String]) }
1276
+ attr_accessor :codes
1277
+
1278
+ sig do
1279
+ returns(
1280
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol
1281
+ )
1282
+ end
1283
+ attr_accessor :decision
1284
+
1285
+ sig { returns(T.nilable(String)) }
1286
+ attr_accessor :reason
1287
+
1288
+ sig do
1289
+ params(
1290
+ codes: T::Array[String],
1291
+ decision:
1292
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::OrSymbol,
1293
+ reason: T.nilable(String)
1294
+ ).returns(T.attached_class)
1295
+ end
1296
+ def self.new(codes:, decision:, reason: nil)
1297
+ end
1298
+
1299
+ sig do
1300
+ override.returns(
1301
+ {
1302
+ codes: T::Array[String],
1303
+ decision:
1304
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol,
1305
+ reason: T.nilable(String)
1306
+ }
1307
+ )
1308
+ end
1309
+ def to_hash
1310
+ end
1311
+
1312
+ module Decision
1313
+ extend Straddle::Internal::Type::Enum
1314
+
1315
+ TaggedSymbol =
1316
+ T.type_alias do
1317
+ T.all(
1318
+ Symbol,
1319
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision
1320
+ )
1321
+ end
1322
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1323
+
1324
+ ACCEPT =
1325
+ T.let(
1326
+ :accept,
1327
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol
1328
+ )
1329
+ REJECT =
1330
+ T.let(
1331
+ :reject,
1332
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol
1333
+ )
1334
+ REVIEW =
1335
+ T.let(
1336
+ :review,
1337
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol
1338
+ )
1339
+
1340
+ sig do
1341
+ override.returns(
1342
+ T::Array[
1343
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::AccountValidation::Decision::TaggedSymbol
1344
+ ]
1345
+ )
1346
+ end
1347
+ def self.values
1348
+ end
1349
+ end
1350
+ end
1351
+
1352
+ class NameMatch < Straddle::Internal::Type::BaseModel
1353
+ OrHash =
1354
+ T.type_alias do
1355
+ T.any(
1356
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch,
1357
+ Straddle::Internal::AnyHash
1358
+ )
1359
+ end
1360
+
1361
+ sig { returns(T::Array[String]) }
1362
+ attr_accessor :codes
1363
+
1364
+ sig do
1365
+ returns(
1366
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol
1367
+ )
1368
+ end
1369
+ attr_accessor :decision
1370
+
1371
+ sig { returns(T.nilable(Float)) }
1372
+ attr_accessor :correlation_score
1373
+
1374
+ sig { returns(T.nilable(String)) }
1375
+ attr_accessor :customer_name
1376
+
1377
+ sig { returns(T.nilable(String)) }
1378
+ attr_accessor :matched_name
1379
+
1380
+ sig { returns(T.nilable(T::Array[String])) }
1381
+ attr_accessor :names_on_account
1382
+
1383
+ sig { returns(T.nilable(String)) }
1384
+ attr_accessor :reason
1385
+
1386
+ sig do
1387
+ params(
1388
+ codes: T::Array[String],
1389
+ decision:
1390
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::OrSymbol,
1391
+ correlation_score: T.nilable(Float),
1392
+ customer_name: T.nilable(String),
1393
+ matched_name: T.nilable(String),
1394
+ names_on_account: T.nilable(T::Array[String]),
1395
+ reason: T.nilable(String)
1396
+ ).returns(T.attached_class)
1397
+ end
1398
+ def self.new(
1399
+ codes:,
1400
+ decision:,
1401
+ correlation_score: nil,
1402
+ customer_name: nil,
1403
+ matched_name: nil,
1404
+ names_on_account: nil,
1405
+ reason: nil
1406
+ )
1407
+ end
1408
+
1409
+ sig do
1410
+ override.returns(
1411
+ {
1412
+ codes: T::Array[String],
1413
+ decision:
1414
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol,
1415
+ correlation_score: T.nilable(Float),
1416
+ customer_name: T.nilable(String),
1417
+ matched_name: T.nilable(String),
1418
+ names_on_account: T.nilable(T::Array[String]),
1419
+ reason: T.nilable(String)
1420
+ }
1421
+ )
1422
+ end
1423
+ def to_hash
1424
+ end
1425
+
1426
+ module Decision
1427
+ extend Straddle::Internal::Type::Enum
1428
+
1429
+ TaggedSymbol =
1430
+ T.type_alias do
1431
+ T.all(
1432
+ Symbol,
1433
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision
1434
+ )
1435
+ end
1436
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1437
+
1438
+ ACCEPT =
1439
+ T.let(
1440
+ :accept,
1441
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol
1442
+ )
1443
+ REJECT =
1444
+ T.let(
1445
+ :reject,
1446
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol
1447
+ )
1448
+ REVIEW =
1449
+ T.let(
1450
+ :review,
1451
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol
1452
+ )
1453
+
1454
+ sig do
1455
+ override.returns(
1456
+ T::Array[
1457
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Breakdown::NameMatch::Decision::TaggedSymbol
1458
+ ]
1459
+ )
1460
+ end
1461
+ def self.values
1462
+ end
1463
+ end
1464
+ end
1465
+ end
1466
+
1467
+ module Decision
1468
+ extend Straddle::Internal::Type::Enum
1469
+
1470
+ TaggedSymbol =
1471
+ T.type_alias do
1472
+ T.all(
1473
+ Symbol,
1474
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision
1475
+ )
1476
+ end
1477
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1478
+
1479
+ ACCEPT =
1480
+ T.let(
1481
+ :accept,
1482
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol
1483
+ )
1484
+ REJECT =
1485
+ T.let(
1486
+ :reject,
1487
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol
1488
+ )
1489
+ REVIEW =
1490
+ T.let(
1491
+ :review,
1492
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol
1493
+ )
1494
+
1495
+ sig do
1496
+ override.returns(
1497
+ T::Array[
1498
+ Straddle::Models::Paykeys::ReviewGetResponse::Data::VerificationDetails::Decision::TaggedSymbol
1499
+ ]
1500
+ )
1501
+ end
1502
+ def self.values
1503
+ end
1504
+ end
1505
+ end
1506
+ end
1507
+
1508
+ # Indicates the structure of the returned content.
1509
+ #
1510
+ # - "object" means the `data` field contains a single JSON object.
1511
+ # - "array" means the `data` field contains an array of objects.
1512
+ # - "error" means the `data` field contains an error object with details of the
1513
+ # issue.
1514
+ # - "none" means no data is returned.
1515
+ module ResponseType
1516
+ extend Straddle::Internal::Type::Enum
1517
+
1518
+ TaggedSymbol =
1519
+ T.type_alias do
1520
+ T.all(
1521
+ Symbol,
1522
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType
1523
+ )
1524
+ end
1525
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1526
+
1527
+ OBJECT =
1528
+ T.let(
1529
+ :object,
1530
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
1531
+ )
1532
+ ARRAY =
1533
+ T.let(
1534
+ :array,
1535
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
1536
+ )
1537
+ ERROR =
1538
+ T.let(
1539
+ :error,
1540
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
1541
+ )
1542
+ NONE =
1543
+ T.let(
1544
+ :none,
1545
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
1546
+ )
1547
+
1548
+ sig do
1549
+ override.returns(
1550
+ T::Array[
1551
+ Straddle::Models::Paykeys::ReviewGetResponse::ResponseType::TaggedSymbol
1552
+ ]
1553
+ )
1554
+ end
1555
+ def self.values
1556
+ end
1557
+ end
1558
+ end
1559
+ end
1560
+ end
1561
+ end