straddle 0.1.0.pre.alpha.1

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 (428) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +9 -0
  4. data/README.md +344 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/straddle/client.rb +125 -0
  7. data/lib/straddle/errors.rb +214 -0
  8. data/lib/straddle/file_part.rb +55 -0
  9. data/lib/straddle/internal/page_number_schema.rb +127 -0
  10. data/lib/straddle/internal/transport/base_client.rb +563 -0
  11. data/lib/straddle/internal/transport/pooled_net_requester.rb +209 -0
  12. data/lib/straddle/internal/type/array_of.rb +167 -0
  13. data/lib/straddle/internal/type/base_model.rb +536 -0
  14. data/lib/straddle/internal/type/base_page.rb +55 -0
  15. data/lib/straddle/internal/type/boolean.rb +77 -0
  16. data/lib/straddle/internal/type/converter.rb +300 -0
  17. data/lib/straddle/internal/type/enum.rb +131 -0
  18. data/lib/straddle/internal/type/file_input.rb +108 -0
  19. data/lib/straddle/internal/type/hash_of.rb +187 -0
  20. data/lib/straddle/internal/type/request_parameters.rb +42 -0
  21. data/lib/straddle/internal/type/union.rb +235 -0
  22. data/lib/straddle/internal/type/unknown.rb +81 -0
  23. data/lib/straddle/internal/util.rb +914 -0
  24. data/lib/straddle/internal.rb +20 -0
  25. data/lib/straddle/models/bridge/link_bank_account_params.rb +122 -0
  26. data/lib/straddle/models/bridge/link_create_paykey_params.rb +98 -0
  27. data/lib/straddle/models/bridge/link_create_paykey_response.rb +411 -0
  28. data/lib/straddle/models/bridge/link_create_tan_params.rb +122 -0
  29. data/lib/straddle/models/bridge/link_create_tan_response.rb +411 -0
  30. data/lib/straddle/models/bridge/link_plaid_params.rb +95 -0
  31. data/lib/straddle/models/bridge_initialize_params.rb +76 -0
  32. data/lib/straddle/models/bridge_token_v1.rb +74 -0
  33. data/lib/straddle/models/charge_cancel_params.rb +43 -0
  34. data/lib/straddle/models/charge_create_params.rb +191 -0
  35. data/lib/straddle/models/charge_get_params.rb +32 -0
  36. data/lib/straddle/models/charge_hold_params.rb +43 -0
  37. data/lib/straddle/models/charge_release_params.rb +43 -0
  38. data/lib/straddle/models/charge_unmask_params.rb +32 -0
  39. data/lib/straddle/models/charge_unmask_response.rb +485 -0
  40. data/lib/straddle/models/charge_update_params.rb +72 -0
  41. data/lib/straddle/models/charge_v1.rb +485 -0
  42. data/lib/straddle/models/customer_address_v1.rb +51 -0
  43. data/lib/straddle/models/customer_create_params.rb +287 -0
  44. data/lib/straddle/models/customer_delete_params.rb +32 -0
  45. data/lib/straddle/models/customer_details_v1.rb +63 -0
  46. data/lib/straddle/models/customer_get_params.rb +32 -0
  47. data/lib/straddle/models/customer_list_params.rb +173 -0
  48. data/lib/straddle/models/customer_refresh_review_params.rb +32 -0
  49. data/lib/straddle/models/customer_summary_paged_v1.rb +248 -0
  50. data/lib/straddle/models/customer_unmasked_params.rb +32 -0
  51. data/lib/straddle/models/customer_unmasked_v1.rb +366 -0
  52. data/lib/straddle/models/customer_update_params.rb +239 -0
  53. data/lib/straddle/models/customer_v1.rb +371 -0
  54. data/lib/straddle/models/customers/customer_review_v1.rb +1091 -0
  55. data/lib/straddle/models/customers/identity_verification_breakdown_v1.rb +79 -0
  56. data/lib/straddle/models/customers/review_decision_params.rb +56 -0
  57. data/lib/straddle/models/customers/review_get_params.rb +34 -0
  58. data/lib/straddle/models/device_info_v1.rb +20 -0
  59. data/lib/straddle/models/device_unmasked_v1.rb +20 -0
  60. data/lib/straddle/models/embed/account_create_params.rb +106 -0
  61. data/lib/straddle/models/embed/account_get_params.rb +28 -0
  62. data/lib/straddle/models/embed/account_list_params.rb +116 -0
  63. data/lib/straddle/models/embed/account_onboard_params.rb +34 -0
  64. data/lib/straddle/models/embed/account_paged_v1.rb +561 -0
  65. data/lib/straddle/models/embed/account_simulate_params.rb +44 -0
  66. data/lib/straddle/models/embed/account_update_params.rb +58 -0
  67. data/lib/straddle/models/embed/account_v1.rb +557 -0
  68. data/lib/straddle/models/embed/accounts/capability_request_create_params.rb +227 -0
  69. data/lib/straddle/models/embed/accounts/capability_request_list_params.rb +139 -0
  70. data/lib/straddle/models/embed/accounts/capability_request_paged_v1.rb +201 -0
  71. data/lib/straddle/models/embed/address_v1.rb +84 -0
  72. data/lib/straddle/models/embed/business_profile_v1.rb +88 -0
  73. data/lib/straddle/models/embed/capability_v1.rb +28 -0
  74. data/lib/straddle/models/embed/industry_v1.rb +37 -0
  75. data/lib/straddle/models/embed/linked_bank_account_create_params.rb +90 -0
  76. data/lib/straddle/models/embed/linked_bank_account_get_params.rb +28 -0
  77. data/lib/straddle/models/embed/linked_bank_account_list_params.rb +98 -0
  78. data/lib/straddle/models/embed/linked_bank_account_paged_v1.rb +271 -0
  79. data/lib/straddle/models/embed/linked_bank_account_unmask_params.rb +28 -0
  80. data/lib/straddle/models/embed/linked_bank_account_unmask_v1.rb +262 -0
  81. data/lib/straddle/models/embed/linked_bank_account_update_params.rb +81 -0
  82. data/lib/straddle/models/embed/linked_bank_account_v1.rb +263 -0
  83. data/lib/straddle/models/embed/organization_create_params.rb +59 -0
  84. data/lib/straddle/models/embed/organization_get_params.rb +28 -0
  85. data/lib/straddle/models/embed/organization_list_params.rb +89 -0
  86. data/lib/straddle/models/embed/organization_paged_v1.rb +120 -0
  87. data/lib/straddle/models/embed/organization_v1.rb +121 -0
  88. data/lib/straddle/models/embed/representative.rb +351 -0
  89. data/lib/straddle/models/embed/representative_create_params.rb +160 -0
  90. data/lib/straddle/models/embed/representative_get_params.rb +28 -0
  91. data/lib/straddle/models/embed/representative_list_params.rb +112 -0
  92. data/lib/straddle/models/embed/representative_paged.rb +352 -0
  93. data/lib/straddle/models/embed/representative_unmask_params.rb +28 -0
  94. data/lib/straddle/models/embed/representative_update_params.rb +152 -0
  95. data/lib/straddle/models/embed/support_channels_v1.rb +34 -0
  96. data/lib/straddle/models/embed/terms_of_service_v1.rb +68 -0
  97. data/lib/straddle/models/funding_event_get_params.rb +32 -0
  98. data/lib/straddle/models/funding_event_list_params.rb +161 -0
  99. data/lib/straddle/models/funding_event_summary_item_v1.rb +167 -0
  100. data/lib/straddle/models/funding_event_summary_paged_v1.rb +249 -0
  101. data/lib/straddle/models/paged_response_metadata.rb +93 -0
  102. data/lib/straddle/models/paykey_cancel_params.rb +38 -0
  103. data/lib/straddle/models/paykey_details_v1.rb +45 -0
  104. data/lib/straddle/models/paykey_get_params.rb +32 -0
  105. data/lib/straddle/models/paykey_list_params.rb +137 -0
  106. data/lib/straddle/models/paykey_reveal_params.rb +32 -0
  107. data/lib/straddle/models/paykey_reveal_response.rb +405 -0
  108. data/lib/straddle/models/paykey_summary_paged_v1.rb +431 -0
  109. data/lib/straddle/models/paykey_unmasked_params.rb +32 -0
  110. data/lib/straddle/models/paykey_unmasked_v1.rb +399 -0
  111. data/lib/straddle/models/paykey_v1.rb +403 -0
  112. data/lib/straddle/models/payment_list_params.rb +361 -0
  113. data/lib/straddle/models/payment_summary_paged_v1.rb +325 -0
  114. data/lib/straddle/models/payout_cancel_params.rb +43 -0
  115. data/lib/straddle/models/payout_create_params.rb +145 -0
  116. data/lib/straddle/models/payout_get_params.rb +32 -0
  117. data/lib/straddle/models/payout_hold_params.rb +43 -0
  118. data/lib/straddle/models/payout_release_params.rb +43 -0
  119. data/lib/straddle/models/payout_unmask_params.rb +32 -0
  120. data/lib/straddle/models/payout_unmask_response.rb +433 -0
  121. data/lib/straddle/models/payout_update_params.rb +72 -0
  122. data/lib/straddle/models/payout_v1.rb +434 -0
  123. data/lib/straddle/models/report_create_total_customers_by_status_params.rb +32 -0
  124. data/lib/straddle/models/report_create_total_customers_by_status_response.rb +98 -0
  125. data/lib/straddle/models/response_metadata.rb +26 -0
  126. data/lib/straddle/models/status_details_v1.rb +102 -0
  127. data/lib/straddle/models.rb +149 -0
  128. data/lib/straddle/request_options.rb +77 -0
  129. data/lib/straddle/resources/bridge/link.rb +204 -0
  130. data/lib/straddle/resources/bridge.rb +58 -0
  131. data/lib/straddle/resources/charges.rb +305 -0
  132. data/lib/straddle/resources/customers/review.rb +99 -0
  133. data/lib/straddle/resources/customers.rb +349 -0
  134. data/lib/straddle/resources/embed/accounts/capability_requests.rb +115 -0
  135. data/lib/straddle/resources/embed/accounts.rb +251 -0
  136. data/lib/straddle/resources/embed/linked_bank_accounts.rb +199 -0
  137. data/lib/straddle/resources/embed/organizations.rb +129 -0
  138. data/lib/straddle/resources/embed/representatives.rb +233 -0
  139. data/lib/straddle/resources/embed.rb +30 -0
  140. data/lib/straddle/resources/funding_events.rb +114 -0
  141. data/lib/straddle/resources/paykeys.rb +207 -0
  142. data/lib/straddle/resources/payments.rb +131 -0
  143. data/lib/straddle/resources/payouts.rb +303 -0
  144. data/lib/straddle/resources/reports.rb +42 -0
  145. data/lib/straddle/version.rb +5 -0
  146. data/lib/straddle.rb +172 -0
  147. data/manifest.yaml +15 -0
  148. data/rbi/straddle/client.rbi +93 -0
  149. data/rbi/straddle/errors.rbi +178 -0
  150. data/rbi/straddle/file_part.rbi +37 -0
  151. data/rbi/straddle/internal/page_number_schema.rbi +79 -0
  152. data/rbi/straddle/internal/transport/base_client.rbi +293 -0
  153. data/rbi/straddle/internal/transport/pooled_net_requester.rbi +79 -0
  154. data/rbi/straddle/internal/type/array_of.rbi +104 -0
  155. data/rbi/straddle/internal/type/base_model.rbi +302 -0
  156. data/rbi/straddle/internal/type/base_page.rbi +42 -0
  157. data/rbi/straddle/internal/type/boolean.rbi +58 -0
  158. data/rbi/straddle/internal/type/converter.rbi +162 -0
  159. data/rbi/straddle/internal/type/enum.rbi +82 -0
  160. data/rbi/straddle/internal/type/file_input.rbi +59 -0
  161. data/rbi/straddle/internal/type/hash_of.rbi +104 -0
  162. data/rbi/straddle/internal/type/request_parameters.rbi +29 -0
  163. data/rbi/straddle/internal/type/union.rbi +121 -0
  164. data/rbi/straddle/internal/type/unknown.rbi +58 -0
  165. data/rbi/straddle/internal/util.rbi +487 -0
  166. data/rbi/straddle/internal.rbi +16 -0
  167. data/rbi/straddle/models/bridge/link_bank_account_params.rbi +248 -0
  168. data/rbi/straddle/models/bridge/link_create_paykey_params.rbi +196 -0
  169. data/rbi/straddle/models/bridge/link_create_paykey_response.rbi +976 -0
  170. data/rbi/straddle/models/bridge/link_create_tan_params.rbi +243 -0
  171. data/rbi/straddle/models/bridge/link_create_tan_response.rbi +972 -0
  172. data/rbi/straddle/models/bridge/link_plaid_params.rbi +192 -0
  173. data/rbi/straddle/models/bridge_initialize_params.rbi +169 -0
  174. data/rbi/straddle/models/bridge_token_v1.rbi +122 -0
  175. data/rbi/straddle/models/charge_cancel_params.rbi +70 -0
  176. data/rbi/straddle/models/charge_create_params.rbi +369 -0
  177. data/rbi/straddle/models/charge_get_params.rbi +62 -0
  178. data/rbi/straddle/models/charge_hold_params.rbi +70 -0
  179. data/rbi/straddle/models/charge_release_params.rbi +70 -0
  180. data/rbi/straddle/models/charge_unmask_params.rbi +62 -0
  181. data/rbi/straddle/models/charge_unmask_response.rbi +1078 -0
  182. data/rbi/straddle/models/charge_update_params.rbi +98 -0
  183. data/rbi/straddle/models/charge_v1.rbi +932 -0
  184. data/rbi/straddle/models/customer_address_v1.rbi +71 -0
  185. data/rbi/straddle/models/customer_create_params.rbi +542 -0
  186. data/rbi/straddle/models/customer_delete_params.rbi +62 -0
  187. data/rbi/straddle/models/customer_details_v1.rbi +101 -0
  188. data/rbi/straddle/models/customer_get_params.rbi +62 -0
  189. data/rbi/straddle/models/customer_list_params.rbi +306 -0
  190. data/rbi/straddle/models/customer_refresh_review_params.rbi +65 -0
  191. data/rbi/straddle/models/customer_summary_paged_v1.rbi +432 -0
  192. data/rbi/straddle/models/customer_unmasked_params.rbi +62 -0
  193. data/rbi/straddle/models/customer_unmasked_v1.rbi +700 -0
  194. data/rbi/straddle/models/customer_update_params.rbi +381 -0
  195. data/rbi/straddle/models/customer_v1.rbi +667 -0
  196. data/rbi/straddle/models/customers/customer_review_v1.rbi +2212 -0
  197. data/rbi/straddle/models/customers/identity_verification_breakdown_v1.rbi +194 -0
  198. data/rbi/straddle/models/customers/review_decision_params.rbi +110 -0
  199. data/rbi/straddle/models/customers/review_get_params.rbi +67 -0
  200. data/rbi/straddle/models/device_info_v1.rbi +29 -0
  201. data/rbi/straddle/models/device_unmasked_v1.rbi +29 -0
  202. data/rbi/straddle/models/embed/account_create_params.rbi +190 -0
  203. data/rbi/straddle/models/embed/account_get_params.rbi +54 -0
  204. data/rbi/straddle/models/embed/account_list_params.rbi +250 -0
  205. data/rbi/straddle/models/embed/account_onboard_params.rbi +71 -0
  206. data/rbi/straddle/models/embed/account_paged_v1.rbi +1193 -0
  207. data/rbi/straddle/models/embed/account_simulate_params.rbi +111 -0
  208. data/rbi/straddle/models/embed/account_update_params.rbi +91 -0
  209. data/rbi/straddle/models/embed/account_v1.rbi +1162 -0
  210. data/rbi/straddle/models/embed/accounts/capability_request_create_params.rbi +434 -0
  211. data/rbi/straddle/models/embed/accounts/capability_request_list_params.rbi +364 -0
  212. data/rbi/straddle/models/embed/accounts/capability_request_paged_v1.rbi +409 -0
  213. data/rbi/straddle/models/embed/address_v1.rbi +104 -0
  214. data/rbi/straddle/models/embed/business_profile_v1.rbi +125 -0
  215. data/rbi/straddle/models/embed/capability_v1.rbi +70 -0
  216. data/rbi/straddle/models/embed/industry_v1.rbi +55 -0
  217. data/rbi/straddle/models/embed/linked_bank_account_create_params.rbi +149 -0
  218. data/rbi/straddle/models/embed/linked_bank_account_get_params.rbi +54 -0
  219. data/rbi/straddle/models/embed/linked_bank_account_list_params.rbi +213 -0
  220. data/rbi/straddle/models/embed/linked_bank_account_paged_v1.rbi +539 -0
  221. data/rbi/straddle/models/embed/linked_bank_account_unmask_params.rbi +54 -0
  222. data/rbi/straddle/models/embed/linked_bank_account_unmask_v1.rbi +535 -0
  223. data/rbi/straddle/models/embed/linked_bank_account_update_params.rbi +139 -0
  224. data/rbi/straddle/models/embed/linked_bank_account_v1.rbi +532 -0
  225. data/rbi/straddle/models/embed/organization_create_params.rbi +86 -0
  226. data/rbi/straddle/models/embed/organization_get_params.rbi +54 -0
  227. data/rbi/straddle/models/embed/organization_list_params.rbi +169 -0
  228. data/rbi/straddle/models/embed/organization_paged_v1.rbi +206 -0
  229. data/rbi/straddle/models/embed/organization_v1.rbi +202 -0
  230. data/rbi/straddle/models/embed/representative.rbi +609 -0
  231. data/rbi/straddle/models/embed/representative_create_params.rbi +225 -0
  232. data/rbi/straddle/models/embed/representative_get_params.rbi +54 -0
  233. data/rbi/straddle/models/embed/representative_list_params.rbi +229 -0
  234. data/rbi/straddle/models/embed/representative_paged.rbi +623 -0
  235. data/rbi/straddle/models/embed/representative_unmask_params.rbi +54 -0
  236. data/rbi/straddle/models/embed/representative_update_params.rbi +217 -0
  237. data/rbi/straddle/models/embed/support_channels_v1.rbi +58 -0
  238. data/rbi/straddle/models/embed/terms_of_service_v1.rbi +113 -0
  239. data/rbi/straddle/models/funding_event_get_params.rbi +62 -0
  240. data/rbi/straddle/models/funding_event_list_params.rbi +311 -0
  241. data/rbi/straddle/models/funding_event_summary_item_v1.rbi +319 -0
  242. data/rbi/straddle/models/funding_event_summary_paged_v1.rbi +451 -0
  243. data/rbi/straddle/models/paged_response_metadata.rbi +125 -0
  244. data/rbi/straddle/models/paykey_cancel_params.rbi +68 -0
  245. data/rbi/straddle/models/paykey_details_v1.rbi +65 -0
  246. data/rbi/straddle/models/paykey_get_params.rbi +62 -0
  247. data/rbi/straddle/models/paykey_list_params.rbi +253 -0
  248. data/rbi/straddle/models/paykey_reveal_params.rbi +62 -0
  249. data/rbi/straddle/models/paykey_reveal_response.rbi +953 -0
  250. data/rbi/straddle/models/paykey_summary_paged_v1.rbi +926 -0
  251. data/rbi/straddle/models/paykey_unmasked_params.rbi +62 -0
  252. data/rbi/straddle/models/paykey_unmasked_v1.rbi +871 -0
  253. data/rbi/straddle/models/paykey_v1.rbi +800 -0
  254. data/rbi/straddle/models/payment_list_params.rbi +781 -0
  255. data/rbi/straddle/models/payment_summary_paged_v1.rbi +536 -0
  256. data/rbi/straddle/models/payout_cancel_params.rbi +70 -0
  257. data/rbi/straddle/models/payout_create_params.rbi +275 -0
  258. data/rbi/straddle/models/payout_get_params.rbi +62 -0
  259. data/rbi/straddle/models/payout_hold_params.rbi +70 -0
  260. data/rbi/straddle/models/payout_release_params.rbi +70 -0
  261. data/rbi/straddle/models/payout_unmask_params.rbi +62 -0
  262. data/rbi/straddle/models/payout_unmask_response.rbi +966 -0
  263. data/rbi/straddle/models/payout_update_params.rbi +98 -0
  264. data/rbi/straddle/models/payout_v1.rbi +836 -0
  265. data/rbi/straddle/models/report_create_total_customers_by_status_params.rbi +65 -0
  266. data/rbi/straddle/models/report_create_total_customers_by_status_response.rbi +191 -0
  267. data/rbi/straddle/models/response_metadata.rbi +42 -0
  268. data/rbi/straddle/models/status_details_v1.rbi +207 -0
  269. data/rbi/straddle/models.rbi +112 -0
  270. data/rbi/straddle/request_options.rbi +59 -0
  271. data/rbi/straddle/resources/bridge/link.rbi +175 -0
  272. data/rbi/straddle/resources/bridge.rbi +44 -0
  273. data/rbi/straddle/resources/charges.rbi +242 -0
  274. data/rbi/straddle/resources/customers/review.rbi +75 -0
  275. data/rbi/straddle/resources/customers.rbi +307 -0
  276. data/rbi/straddle/resources/embed/accounts/capability_requests.rbi +116 -0
  277. data/rbi/straddle/resources/embed/accounts.rbi +216 -0
  278. data/rbi/straddle/resources/embed/linked_bank_accounts.rbi +169 -0
  279. data/rbi/straddle/resources/embed/organizations.rbi +110 -0
  280. data/rbi/straddle/resources/embed/representatives.rbi +208 -0
  281. data/rbi/straddle/resources/embed.rbi +24 -0
  282. data/rbi/straddle/resources/funding_events.rbi +94 -0
  283. data/rbi/straddle/resources/paykeys.rbi +161 -0
  284. data/rbi/straddle/resources/payments.rbi +125 -0
  285. data/rbi/straddle/resources/payouts.rbi +237 -0
  286. data/rbi/straddle/resources/reports.rbi +31 -0
  287. data/rbi/straddle/version.rbi +5 -0
  288. data/sig/straddle/client.rbs +48 -0
  289. data/sig/straddle/errors.rbs +110 -0
  290. data/sig/straddle/file_part.rbs +21 -0
  291. data/sig/straddle/internal/page_number_schema.rbs +52 -0
  292. data/sig/straddle/internal/transport/base_client.rbs +131 -0
  293. data/sig/straddle/internal/transport/pooled_net_requester.rbs +45 -0
  294. data/sig/straddle/internal/type/array_of.rbs +48 -0
  295. data/sig/straddle/internal/type/base_model.rbs +102 -0
  296. data/sig/straddle/internal/type/base_page.rbs +24 -0
  297. data/sig/straddle/internal/type/boolean.rbs +26 -0
  298. data/sig/straddle/internal/type/converter.rbs +62 -0
  299. data/sig/straddle/internal/type/enum.rbs +32 -0
  300. data/sig/straddle/internal/type/file_input.rbs +25 -0
  301. data/sig/straddle/internal/type/hash_of.rbs +48 -0
  302. data/sig/straddle/internal/type/request_parameters.rbs +17 -0
  303. data/sig/straddle/internal/type/union.rbs +52 -0
  304. data/sig/straddle/internal/type/unknown.rbs +26 -0
  305. data/sig/straddle/internal/util.rbs +185 -0
  306. data/sig/straddle/internal.rbs +9 -0
  307. data/sig/straddle/models/bridge/link_bank_account_params.rbs +122 -0
  308. data/sig/straddle/models/bridge/link_create_paykey_params.rbs +101 -0
  309. data/sig/straddle/models/bridge/link_create_paykey_response.rbs +389 -0
  310. data/sig/straddle/models/bridge/link_create_tan_params.rbs +122 -0
  311. data/sig/straddle/models/bridge/link_create_tan_response.rbs +389 -0
  312. data/sig/straddle/models/bridge/link_plaid_params.rbs +101 -0
  313. data/sig/straddle/models/bridge_initialize_params.rbs +89 -0
  314. data/sig/straddle/models/bridge_token_v1.rbs +53 -0
  315. data/sig/straddle/models/charge_cancel_params.rbs +47 -0
  316. data/sig/straddle/models/charge_create_params.rbs +172 -0
  317. data/sig/straddle/models/charge_get_params.rbs +42 -0
  318. data/sig/straddle/models/charge_hold_params.rbs +47 -0
  319. data/sig/straddle/models/charge_release_params.rbs +47 -0
  320. data/sig/straddle/models/charge_unmask_params.rbs +42 -0
  321. data/sig/straddle/models/charge_unmask_response.rbs +437 -0
  322. data/sig/straddle/models/charge_update_params.rbs +62 -0
  323. data/sig/straddle/models/charge_v1.rbs +427 -0
  324. data/sig/straddle/models/customer_address_v1.rbs +40 -0
  325. data/sig/straddle/models/customer_create_params.rbs +235 -0
  326. data/sig/straddle/models/customer_delete_params.rbs +42 -0
  327. data/sig/straddle/models/customer_details_v1.rbs +51 -0
  328. data/sig/straddle/models/customer_get_params.rbs +42 -0
  329. data/sig/straddle/models/customer_list_params.rbs +182 -0
  330. data/sig/straddle/models/customer_refresh_review_params.rbs +42 -0
  331. data/sig/straddle/models/customer_summary_paged_v1.rbs +194 -0
  332. data/sig/straddle/models/customer_unmasked_params.rbs +42 -0
  333. data/sig/straddle/models/customer_unmasked_v1.rbs +285 -0
  334. data/sig/straddle/models/customer_update_params.rbs +173 -0
  335. data/sig/straddle/models/customer_v1.rbs +297 -0
  336. data/sig/straddle/models/customers/customer_review_v1.rbs +1001 -0
  337. data/sig/straddle/models/customers/identity_verification_breakdown_v1.rbs +81 -0
  338. data/sig/straddle/models/customers/review_decision_params.rbs +60 -0
  339. data/sig/straddle/models/customers/review_get_params.rbs +44 -0
  340. data/sig/straddle/models/device_info_v1.rbs +13 -0
  341. data/sig/straddle/models/device_unmasked_v1.rbs +13 -0
  342. data/sig/straddle/models/embed/account_create_params.rbs +89 -0
  343. data/sig/straddle/models/embed/account_get_params.rbs +34 -0
  344. data/sig/straddle/models/embed/account_list_params.rbs +127 -0
  345. data/sig/straddle/models/embed/account_onboard_params.rbs +42 -0
  346. data/sig/straddle/models/embed/account_paged_v1.rbs +493 -0
  347. data/sig/straddle/models/embed/account_simulate_params.rbs +57 -0
  348. data/sig/straddle/models/embed/account_update_params.rbs +52 -0
  349. data/sig/straddle/models/embed/account_v1.rbs +493 -0
  350. data/sig/straddle/models/embed/accounts/capability_request_create_params.rbs +207 -0
  351. data/sig/straddle/models/embed/accounts/capability_request_list_params.rbs +153 -0
  352. data/sig/straddle/models/embed/accounts/capability_request_paged_v1.rbs +153 -0
  353. data/sig/straddle/models/embed/address_v1.rbs +62 -0
  354. data/sig/straddle/models/embed/business_profile_v1.rbs +75 -0
  355. data/sig/straddle/models/embed/capability_v1.rbs +33 -0
  356. data/sig/straddle/models/embed/industry_v1.rbs +23 -0
  357. data/sig/straddle/models/embed/linked_bank_account_create_params.rbs +79 -0
  358. data/sig/straddle/models/embed/linked_bank_account_get_params.rbs +34 -0
  359. data/sig/straddle/models/embed/linked_bank_account_list_params.rbs +105 -0
  360. data/sig/straddle/models/embed/linked_bank_account_paged_v1.rbs +215 -0
  361. data/sig/straddle/models/embed/linked_bank_account_unmask_params.rbs +34 -0
  362. data/sig/straddle/models/embed/linked_bank_account_unmask_v1.rbs +210 -0
  363. data/sig/straddle/models/embed/linked_bank_account_update_params.rbs +74 -0
  364. data/sig/straddle/models/embed/linked_bank_account_v1.rbs +215 -0
  365. data/sig/straddle/models/embed/organization_create_params.rbs +52 -0
  366. data/sig/straddle/models/embed/organization_get_params.rbs +34 -0
  367. data/sig/straddle/models/embed/organization_list_params.rbs +92 -0
  368. data/sig/straddle/models/embed/organization_paged_v1.rbs +87 -0
  369. data/sig/straddle/models/embed/organization_v1.rbs +87 -0
  370. data/sig/straddle/models/embed/representative.rbs +260 -0
  371. data/sig/straddle/models/embed/representative_create_params.rbs +119 -0
  372. data/sig/straddle/models/embed/representative_get_params.rbs +34 -0
  373. data/sig/straddle/models/embed/representative_list_params.rbs +119 -0
  374. data/sig/straddle/models/embed/representative_paged.rbs +260 -0
  375. data/sig/straddle/models/embed/representative_unmask_params.rbs +34 -0
  376. data/sig/straddle/models/embed/representative_update_params.rbs +114 -0
  377. data/sig/straddle/models/embed/support_channels_v1.rbs +24 -0
  378. data/sig/straddle/models/embed/terms_of_service_v1.rbs +53 -0
  379. data/sig/straddle/models/funding_event_get_params.rbs +42 -0
  380. data/sig/straddle/models/funding_event_list_params.rbs +155 -0
  381. data/sig/straddle/models/funding_event_summary_item_v1.rbs +123 -0
  382. data/sig/straddle/models/funding_event_summary_paged_v1.rbs +191 -0
  383. data/sig/straddle/models/paged_response_metadata.rbs +71 -0
  384. data/sig/straddle/models/paykey_cancel_params.rbs +47 -0
  385. data/sig/straddle/models/paykey_details_v1.rbs +30 -0
  386. data/sig/straddle/models/paykey_get_params.rbs +42 -0
  387. data/sig/straddle/models/paykey_list_params.rbs +151 -0
  388. data/sig/straddle/models/paykey_reveal_params.rbs +42 -0
  389. data/sig/straddle/models/paykey_reveal_response.rbs +386 -0
  390. data/sig/straddle/models/paykey_summary_paged_v1.rbs +401 -0
  391. data/sig/straddle/models/paykey_unmasked_params.rbs +42 -0
  392. data/sig/straddle/models/paykey_unmasked_v1.rbs +386 -0
  393. data/sig/straddle/models/paykey_v1.rbs +386 -0
  394. data/sig/straddle/models/payment_list_params.rbs +391 -0
  395. data/sig/straddle/models/payment_summary_paged_v1.rbs +252 -0
  396. data/sig/straddle/models/payout_cancel_params.rbs +47 -0
  397. data/sig/straddle/models/payout_create_params.rbs +143 -0
  398. data/sig/straddle/models/payout_get_params.rbs +42 -0
  399. data/sig/straddle/models/payout_hold_params.rbs +47 -0
  400. data/sig/straddle/models/payout_release_params.rbs +47 -0
  401. data/sig/straddle/models/payout_unmask_params.rbs +42 -0
  402. data/sig/straddle/models/payout_unmask_response.rbs +404 -0
  403. data/sig/straddle/models/payout_update_params.rbs +62 -0
  404. data/sig/straddle/models/payout_v1.rbs +394 -0
  405. data/sig/straddle/models/report_create_total_customers_by_status_params.rbs +42 -0
  406. data/sig/straddle/models/report_create_total_customers_by_status_response.rbs +80 -0
  407. data/sig/straddle/models/response_metadata.rbs +19 -0
  408. data/sig/straddle/models/status_details_v1.rbs +104 -0
  409. data/sig/straddle/models.rbs +109 -0
  410. data/sig/straddle/request_options.rbs +34 -0
  411. data/sig/straddle/resources/bridge/link.rbs +57 -0
  412. data/sig/straddle/resources/bridge.rbs +18 -0
  413. data/sig/straddle/resources/charges.rbs +79 -0
  414. data/sig/straddle/resources/customers/review.rbs +26 -0
  415. data/sig/straddle/resources/customers.rbs +94 -0
  416. data/sig/straddle/resources/embed/accounts/capability_requests.rbs +38 -0
  417. data/sig/straddle/resources/embed/accounts.rbs +69 -0
  418. data/sig/straddle/resources/embed/linked_bank_accounts.rbs +53 -0
  419. data/sig/straddle/resources/embed/organizations.rbs +37 -0
  420. data/sig/straddle/resources/embed/representatives.rbs +67 -0
  421. data/sig/straddle/resources/embed.rbs +15 -0
  422. data/sig/straddle/resources/funding_events.rbs +31 -0
  423. data/sig/straddle/resources/paykeys.rbs +54 -0
  424. data/sig/straddle/resources/payments.rbs +40 -0
  425. data/sig/straddle/resources/payouts.rbs +78 -0
  426. data/sig/straddle/resources/reports.rbs +14 -0
  427. data/sig/straddle/version.rbs +3 -0
  428. metadata +485 -0
@@ -0,0 +1,239 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Models
5
+ # @see Straddle::Resources::Customers#update
6
+ class CustomerUpdateParams < Straddle::Internal::Type::BaseModel
7
+ extend Straddle::Internal::Type::RequestParameters::Converter
8
+ include Straddle::Internal::Type::RequestParameters
9
+
10
+ # @!attribute device
11
+ #
12
+ # @return [Straddle::Models::DeviceUnmaskedV1]
13
+ required :device, -> { Straddle::DeviceUnmaskedV1 }
14
+
15
+ # @!attribute email
16
+ # The customer's email address.
17
+ #
18
+ # @return [String]
19
+ required :email, String
20
+
21
+ # @!attribute name
22
+ # The customer's full name or business name.
23
+ #
24
+ # @return [String]
25
+ required :name, String
26
+
27
+ # @!attribute phone
28
+ # The customer's phone number in E.164 format.
29
+ #
30
+ # @return [String]
31
+ required :phone, String
32
+
33
+ # @!attribute status
34
+ #
35
+ # @return [Symbol, Straddle::Models::CustomerUpdateParams::Status]
36
+ required :status, enum: -> { Straddle::CustomerUpdateParams::Status }
37
+
38
+ # @!attribute address
39
+ # An object containing the customer's address. This is optional, but if provided,
40
+ # all required fields must be present.
41
+ #
42
+ # @return [Straddle::Models::CustomerAddressV1, nil]
43
+ optional :address, -> { Straddle::CustomerAddressV1 }, nil?: true
44
+
45
+ # @!attribute compliance_profile
46
+ # Individual PII data required to trigger Patriot Act compliant KYC verification.
47
+ #
48
+ # @return [Straddle::Models::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile, nil]
49
+ optional :compliance_profile,
50
+ union: -> {
51
+ Straddle::CustomerUpdateParams::ComplianceProfile
52
+ },
53
+ nil?: true
54
+
55
+ # @!attribute external_id
56
+ # Unique identifier for the customer in your database, used for cross-referencing
57
+ # between Straddle and your systems.
58
+ #
59
+ # @return [String, nil]
60
+ optional :external_id, String, nil?: true
61
+
62
+ # @!attribute metadata
63
+ # Up to 20 additional user-defined key-value pairs. Useful for storing additional
64
+ # information about the customer in a structured format.
65
+ #
66
+ # @return [Hash{Symbol=>String}, nil]
67
+ optional :metadata, Straddle::Internal::Type::HashOf[String], nil?: true
68
+
69
+ # @!attribute correlation_id
70
+ #
71
+ # @return [String, nil]
72
+ optional :correlation_id, String
73
+
74
+ # @!attribute request_id
75
+ #
76
+ # @return [String, nil]
77
+ optional :request_id, String
78
+
79
+ # @!attribute straddle_account_id
80
+ #
81
+ # @return [String, nil]
82
+ optional :straddle_account_id, String
83
+
84
+ # @!method initialize(device:, email:, name:, phone:, status:, address: nil, compliance_profile: nil, external_id: nil, metadata: nil, correlation_id: nil, request_id: nil, straddle_account_id: nil, request_options: {})
85
+ # Some parameter documentations has been truncated, see
86
+ # {Straddle::Models::CustomerUpdateParams} for more details.
87
+ #
88
+ # @param device [Straddle::Models::DeviceUnmaskedV1]
89
+ #
90
+ # @param email [String] The customer's email address.
91
+ #
92
+ # @param name [String] The customer's full name or business name.
93
+ #
94
+ # @param phone [String] The customer's phone number in E.164 format.
95
+ #
96
+ # @param status [Symbol, Straddle::Models::CustomerUpdateParams::Status]
97
+ #
98
+ # @param address [Straddle::Models::CustomerAddressV1, nil] An object containing the customer's address. This is optional, but if provided,
99
+ #
100
+ # @param compliance_profile [Straddle::Models::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile, nil] Individual PII data required to trigger Patriot Act compliant KYC verification.
101
+ #
102
+ # @param external_id [String, nil] Unique identifier for the customer in your database, used for cross-referencing
103
+ #
104
+ # @param metadata [Hash{Symbol=>String}, nil] Up to 20 additional user-defined key-value pairs. Useful for storing additional
105
+ #
106
+ # @param correlation_id [String]
107
+ #
108
+ # @param request_id [String]
109
+ #
110
+ # @param straddle_account_id [String]
111
+ #
112
+ # @param request_options [Straddle::RequestOptions, Hash{Symbol=>Object}]
113
+
114
+ module Status
115
+ extend Straddle::Internal::Type::Enum
116
+
117
+ PENDING = :pending
118
+ REVIEW = :review
119
+ VERIFIED = :verified
120
+ INACTIVE = :inactive
121
+ REJECTED = :rejected
122
+
123
+ # @!method self.values
124
+ # @return [Array<Symbol>]
125
+ end
126
+
127
+ # Individual PII data required to trigger Patriot Act compliant KYC verification.
128
+ module ComplianceProfile
129
+ extend Straddle::Internal::Type::Union
130
+
131
+ # Individual PII data required to trigger Patriot Act compliant KYC verification.
132
+ variant -> { Straddle::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile }
133
+
134
+ # Business registration data required to trigger Patriot Act compliant KYB verification.
135
+ variant -> { Straddle::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile }
136
+
137
+ class IndividualComplianceProfile < Straddle::Internal::Type::BaseModel
138
+ # @!attribute dob
139
+ # Date of birth (YYYY-MM-DD). Required for Patriot Act-compliant KYC verification.
140
+ #
141
+ # @return [Date, nil]
142
+ required :dob, Date, nil?: true
143
+
144
+ # @!attribute ssn
145
+ # Social Security Number (format XXX-XX-XXXX). Required for Patriot Act-compliant
146
+ # KYC verification.
147
+ #
148
+ # @return [String, nil]
149
+ required :ssn, String, nil?: true
150
+
151
+ # @!method initialize(dob:, ssn:)
152
+ # Some parameter documentations has been truncated, see
153
+ # {Straddle::Models::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile}
154
+ # for more details.
155
+ #
156
+ # Individual PII data required to trigger Patriot Act compliant KYC verification.
157
+ #
158
+ # @param dob [Date, nil] Date of birth (YYYY-MM-DD). Required for Patriot Act-compliant KYC verification.
159
+ #
160
+ # @param ssn [String, nil] Social Security Number (format XXX-XX-XXXX). Required for Patriot Act-compliant
161
+ end
162
+
163
+ class BusinessComplianceProfile < Straddle::Internal::Type::BaseModel
164
+ # @!attribute ein
165
+ # Employer Identification Number (format XX-XXXXXXX). Required for Patriot
166
+ # Act-compliant KYB verification.
167
+ #
168
+ # @return [String, nil]
169
+ required :ein, String, nil?: true
170
+
171
+ # @!attribute legal_business_name
172
+ # Official registered business name as listed with the IRS. This value will be
173
+ # matched against the 'legal_business name'.
174
+ #
175
+ # @return [String, nil]
176
+ required :legal_business_name, String, nil?: true
177
+
178
+ # @!attribute representatives
179
+ # A list of people related to the company. Only valid where customer type is
180
+ # 'business'.
181
+ #
182
+ # @return [Array<Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile::Representative>, nil]
183
+ optional :representatives,
184
+ -> {
185
+ Straddle::Internal::Type::ArrayOf[Straddle::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile::Representative]
186
+ },
187
+ nil?: true
188
+
189
+ # @!attribute website
190
+ # Official business website URL. Optional but recommended for enhanced KYB.
191
+ #
192
+ # @return [String, nil]
193
+ optional :website, String, nil?: true
194
+
195
+ # @!method initialize(ein:, legal_business_name:, representatives: nil, website: nil)
196
+ # Some parameter documentations has been truncated, see
197
+ # {Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile}
198
+ # for more details.
199
+ #
200
+ # Business registration data required to trigger Patriot Act compliant KYB
201
+ # verification.
202
+ #
203
+ # @param ein [String, nil] Employer Identification Number (format XX-XXXXXXX). Required for Patriot Act-com
204
+ #
205
+ # @param legal_business_name [String, nil] Official registered business name as listed with the IRS. This value will be mat
206
+ #
207
+ # @param representatives [Array<Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile::Representative>, nil] A list of people related to the company. Only valid where customer type is 'busi
208
+ #
209
+ # @param website [String, nil] Official business website URL. Optional but recommended for enhanced KYB.
210
+
211
+ class Representative < Straddle::Internal::Type::BaseModel
212
+ # @!attribute name
213
+ #
214
+ # @return [String]
215
+ required :name, String
216
+
217
+ # @!attribute email
218
+ #
219
+ # @return [String, nil]
220
+ optional :email, String, nil?: true
221
+
222
+ # @!attribute phone
223
+ #
224
+ # @return [String, nil]
225
+ optional :phone, String, nil?: true
226
+
227
+ # @!method initialize(name:, email: nil, phone: nil)
228
+ # @param name [String]
229
+ # @param email [String, nil]
230
+ # @param phone [String, nil]
231
+ end
232
+ end
233
+
234
+ # @!method self.variants
235
+ # @return [Array(Straddle::Models::CustomerUpdateParams::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerUpdateParams::ComplianceProfile::BusinessComplianceProfile)]
236
+ end
237
+ end
238
+ end
239
+ end
@@ -0,0 +1,371 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Models
5
+ # @see Straddle::Resources::Customers#create
6
+ class CustomerV1 < Straddle::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [Straddle::Models::CustomerV1::Data]
10
+ required :data, -> { Straddle::CustomerV1::Data }
11
+
12
+ # @!attribute meta
13
+ # Metadata about the API request, including an identifier and timestamp.
14
+ #
15
+ # @return [Straddle::Models::ResponseMetadata]
16
+ required :meta, -> { Straddle::ResponseMetadata }
17
+
18
+ # @!attribute response_type
19
+ # Indicates the structure of the returned content.
20
+ #
21
+ # - "object" means the `data` field contains a single JSON object.
22
+ # - "array" means the `data` field contains an array of objects.
23
+ # - "error" means the `data` field contains an error object with details of the
24
+ # issue.
25
+ # - "none" means no data is returned.
26
+ #
27
+ # @return [Symbol, Straddle::Models::CustomerV1::ResponseType]
28
+ required :response_type, enum: -> { Straddle::CustomerV1::ResponseType }
29
+
30
+ # @!method initialize(data:, meta:, response_type:)
31
+ # Some parameter documentations has been truncated, see
32
+ # {Straddle::Models::CustomerV1} for more details.
33
+ #
34
+ # @param data [Straddle::Models::CustomerV1::Data]
35
+ #
36
+ # @param meta [Straddle::Models::ResponseMetadata] Metadata about the API request, including an identifier and timestamp.
37
+ #
38
+ # @param response_type [Symbol, Straddle::Models::CustomerV1::ResponseType] Indicates the structure of the returned content.
39
+
40
+ # @see Straddle::Models::CustomerV1#data
41
+ class Data < Straddle::Internal::Type::BaseModel
42
+ # @!attribute id
43
+ # Unique identifier for the customer.
44
+ #
45
+ # @return [String]
46
+ required :id, String
47
+
48
+ # @!attribute created_at
49
+ # Timestamp of when the customer record was created.
50
+ #
51
+ # @return [Time]
52
+ required :created_at, Time
53
+
54
+ # @!attribute email
55
+ # The customer's email address.
56
+ #
57
+ # @return [String]
58
+ required :email, String
59
+
60
+ # @!attribute name
61
+ # Full name of the individual or business name.
62
+ #
63
+ # @return [String]
64
+ required :name, String
65
+
66
+ # @!attribute phone
67
+ # The customer's phone number in E.164 format.
68
+ #
69
+ # @return [String]
70
+ required :phone, String
71
+
72
+ # @!attribute status
73
+ #
74
+ # @return [Symbol, Straddle::Models::CustomerV1::Data::Status]
75
+ required :status, enum: -> { Straddle::CustomerV1::Data::Status }
76
+
77
+ # @!attribute type
78
+ #
79
+ # @return [Symbol, Straddle::Models::CustomerV1::Data::Type]
80
+ required :type, enum: -> { Straddle::CustomerV1::Data::Type }
81
+
82
+ # @!attribute updated_at
83
+ # Timestamp of the most recent update to the customer record.
84
+ #
85
+ # @return [Time]
86
+ required :updated_at, Time
87
+
88
+ # @!attribute address
89
+ # An object containing the customer's address. This is optional, but if provided,
90
+ # all required fields must be present.
91
+ #
92
+ # @return [Straddle::Models::CustomerAddressV1, nil]
93
+ optional :address, -> { Straddle::CustomerAddressV1 }, nil?: true
94
+
95
+ # @!attribute compliance_profile
96
+ # PII required to trigger Patriot Act compliant KYC verification.
97
+ #
98
+ # @return [Straddle::Models::CustomerV1::Data::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile, nil]
99
+ optional :compliance_profile, union: -> { Straddle::CustomerV1::Data::ComplianceProfile }, nil?: true
100
+
101
+ # @!attribute config
102
+ #
103
+ # @return [Straddle::Models::CustomerV1::Data::Config, nil]
104
+ optional :config, -> { Straddle::CustomerV1::Data::Config }
105
+
106
+ # @!attribute device
107
+ #
108
+ # @return [Straddle::Models::CustomerV1::Data::Device, nil]
109
+ optional :device, -> { Straddle::CustomerV1::Data::Device }
110
+
111
+ # @!attribute external_id
112
+ # Unique identifier for the customer in your database, used for cross-referencing
113
+ # between Straddle and your systems.
114
+ #
115
+ # @return [String, nil]
116
+ optional :external_id, String, nil?: true
117
+
118
+ # @!attribute metadata
119
+ # Up to 20 additional user-defined key-value pairs. Useful for storing additional
120
+ # information about the customer in a structured format.
121
+ #
122
+ # @return [Hash{Symbol=>String}, nil]
123
+ optional :metadata, Straddle::Internal::Type::HashOf[String], nil?: true
124
+
125
+ # @!method initialize(id:, created_at:, email:, name:, phone:, status:, type:, updated_at:, address: nil, compliance_profile: nil, config: nil, device: nil, external_id: nil, metadata: nil)
126
+ # Some parameter documentations has been truncated, see
127
+ # {Straddle::Models::CustomerV1::Data} for more details.
128
+ #
129
+ # @param id [String] Unique identifier for the customer.
130
+ #
131
+ # @param created_at [Time] Timestamp of when the customer record was created.
132
+ #
133
+ # @param email [String] The customer's email address.
134
+ #
135
+ # @param name [String] Full name of the individual or business name.
136
+ #
137
+ # @param phone [String] The customer's phone number in E.164 format.
138
+ #
139
+ # @param status [Symbol, Straddle::Models::CustomerV1::Data::Status]
140
+ #
141
+ # @param type [Symbol, Straddle::Models::CustomerV1::Data::Type]
142
+ #
143
+ # @param updated_at [Time] Timestamp of the most recent update to the customer record.
144
+ #
145
+ # @param address [Straddle::Models::CustomerAddressV1, nil] An object containing the customer's address. This is optional, but if provided,
146
+ #
147
+ # @param compliance_profile [Straddle::Models::CustomerV1::Data::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile, nil] PII required to trigger Patriot Act compliant KYC verification.
148
+ #
149
+ # @param config [Straddle::Models::CustomerV1::Data::Config]
150
+ #
151
+ # @param device [Straddle::Models::CustomerV1::Data::Device]
152
+ #
153
+ # @param external_id [String, nil] Unique identifier for the customer in your database, used for cross-referencing
154
+ #
155
+ # @param metadata [Hash{Symbol=>String}, nil] Up to 20 additional user-defined key-value pairs. Useful for storing additional
156
+
157
+ # @see Straddle::Models::CustomerV1::Data#status
158
+ module Status
159
+ extend Straddle::Internal::Type::Enum
160
+
161
+ PENDING = :pending
162
+ REVIEW = :review
163
+ VERIFIED = :verified
164
+ INACTIVE = :inactive
165
+ REJECTED = :rejected
166
+
167
+ # @!method self.values
168
+ # @return [Array<Symbol>]
169
+ end
170
+
171
+ # @see Straddle::Models::CustomerV1::Data#type
172
+ module Type
173
+ extend Straddle::Internal::Type::Enum
174
+
175
+ INDIVIDUAL = :individual
176
+ BUSINESS = :business
177
+ UNKNOWN = :unknown
178
+
179
+ # @!method self.values
180
+ # @return [Array<Symbol>]
181
+ end
182
+
183
+ # PII required to trigger Patriot Act compliant KYC verification.
184
+ #
185
+ # @see Straddle::Models::CustomerV1::Data#compliance_profile
186
+ module ComplianceProfile
187
+ extend Straddle::Internal::Type::Union
188
+
189
+ # PII required to trigger Patriot Act compliant KYC verification.
190
+ variant -> { Straddle::CustomerV1::Data::ComplianceProfile::IndividualComplianceProfile }
191
+
192
+ # Business registration data required to trigger Patriot Act compliant KYB verification.
193
+ variant -> { Straddle::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile }
194
+
195
+ class IndividualComplianceProfile < Straddle::Internal::Type::BaseModel
196
+ # @!attribute dob
197
+ # Masked date of birth in \***\*-**-\*\* format.
198
+ #
199
+ # @return [Date, nil]
200
+ required :dob, Date, nil?: true
201
+
202
+ # @!attribute ssn
203
+ # Masked Social Security Number in the format **\*-**-\*\*\*\*.
204
+ #
205
+ # @return [String, nil]
206
+ required :ssn, String, nil?: true
207
+
208
+ # @!method initialize(dob:, ssn:)
209
+ # PII required to trigger Patriot Act compliant KYC verification.
210
+ #
211
+ # @param dob [Date, nil] Masked date of birth in \***\*-**-\*\* format.
212
+ #
213
+ # @param ssn [String, nil] Masked Social Security Number in the format **\*-**-\*\*\*\*.
214
+ end
215
+
216
+ class BusinessComplianceProfile < Straddle::Internal::Type::BaseModel
217
+ # @!attribute ein
218
+ # Masked Employer Identification Number in the format **-**\*****
219
+ #
220
+ # @return [String, nil]
221
+ required :ein, String, nil?: true
222
+
223
+ # @!attribute legal_business_name
224
+ # The official registered name of the business. This name should be correlated
225
+ # with the `ein` value.
226
+ #
227
+ # @return [String, nil]
228
+ required :legal_business_name, String, nil?: true
229
+
230
+ # @!attribute representatives
231
+ # A list of people related to the company. Only valid where customer type is
232
+ # 'business'.
233
+ #
234
+ # @return [Array<Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile::Representative>, nil]
235
+ optional :representatives,
236
+ -> {
237
+ Straddle::Internal::Type::ArrayOf[Straddle::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile::Representative]
238
+ },
239
+ nil?: true
240
+
241
+ # @!attribute website
242
+ # Official business website URL. Optional but recommended for enhanced KYB.
243
+ #
244
+ # @return [String, nil]
245
+ optional :website, String, nil?: true
246
+
247
+ # @!method initialize(ein:, legal_business_name:, representatives: nil, website: nil)
248
+ # Some parameter documentations has been truncated, see
249
+ # {Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile}
250
+ # for more details.
251
+ #
252
+ # Business registration data required to trigger Patriot Act compliant KYB
253
+ # verification.
254
+ #
255
+ # @param ein [String, nil] Masked Employer Identification Number in the format **-**\*****
256
+ #
257
+ # @param legal_business_name [String, nil] The official registered name of the business. This name should be correlated wit
258
+ #
259
+ # @param representatives [Array<Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile::Representative>, nil] A list of people related to the company. Only valid where customer type is 'busi
260
+ #
261
+ # @param website [String, nil] Official business website URL. Optional but recommended for enhanced KYB.
262
+
263
+ class Representative < Straddle::Internal::Type::BaseModel
264
+ # @!attribute name
265
+ #
266
+ # @return [String]
267
+ required :name, String
268
+
269
+ # @!attribute email
270
+ #
271
+ # @return [String, nil]
272
+ optional :email, String, nil?: true
273
+
274
+ # @!attribute phone
275
+ #
276
+ # @return [String, nil]
277
+ optional :phone, String, nil?: true
278
+
279
+ # @!method initialize(name:, email: nil, phone: nil)
280
+ # @param name [String]
281
+ # @param email [String, nil]
282
+ # @param phone [String, nil]
283
+ end
284
+ end
285
+
286
+ # @!method self.variants
287
+ # @return [Array(Straddle::Models::CustomerV1::Data::ComplianceProfile::IndividualComplianceProfile, Straddle::Models::CustomerV1::Data::ComplianceProfile::BusinessComplianceProfile)]
288
+ end
289
+
290
+ # @see Straddle::Models::CustomerV1::Data#config
291
+ class Config < Straddle::Internal::Type::BaseModel
292
+ # @!attribute processing_method
293
+ #
294
+ # @return [Symbol, Straddle::Models::CustomerV1::Data::Config::ProcessingMethod, nil]
295
+ optional :processing_method, enum: -> { Straddle::CustomerV1::Data::Config::ProcessingMethod }
296
+
297
+ # @!attribute sandbox_outcome
298
+ #
299
+ # @return [Symbol, Straddle::Models::CustomerV1::Data::Config::SandboxOutcome, nil]
300
+ optional :sandbox_outcome, enum: -> { Straddle::CustomerV1::Data::Config::SandboxOutcome }
301
+
302
+ # @!method initialize(processing_method: nil, sandbox_outcome: nil)
303
+ # @param processing_method [Symbol, Straddle::Models::CustomerV1::Data::Config::ProcessingMethod]
304
+ # @param sandbox_outcome [Symbol, Straddle::Models::CustomerV1::Data::Config::SandboxOutcome]
305
+
306
+ # @see Straddle::Models::CustomerV1::Data::Config#processing_method
307
+ module ProcessingMethod
308
+ extend Straddle::Internal::Type::Enum
309
+
310
+ INLINE = :inline
311
+ BACKGROUND = :background
312
+ SKIP = :skip
313
+
314
+ # @!method self.values
315
+ # @return [Array<Symbol>]
316
+ end
317
+
318
+ # @see Straddle::Models::CustomerV1::Data::Config#sandbox_outcome
319
+ module SandboxOutcome
320
+ extend Straddle::Internal::Type::Enum
321
+
322
+ STANDARD = :standard
323
+ VERIFIED = :verified
324
+ REJECTED = :rejected
325
+ REVIEW = :review
326
+
327
+ # @!method self.values
328
+ # @return [Array<Symbol>]
329
+ end
330
+ end
331
+
332
+ # @see Straddle::Models::CustomerV1::Data#device
333
+ class Device < Straddle::Internal::Type::BaseModel
334
+ # @!attribute ip_address
335
+ # The customer's IP address at the time of profile creation. Use `0.0.0.0` to
336
+ # represent an offline customer registration.
337
+ #
338
+ # @return [String]
339
+ required :ip_address, String
340
+
341
+ # @!method initialize(ip_address:)
342
+ # Some parameter documentations has been truncated, see
343
+ # {Straddle::Models::CustomerV1::Data::Device} for more details.
344
+ #
345
+ # @param ip_address [String] The customer's IP address at the time of profile creation. Use `0.0.0.0` to repr
346
+ end
347
+ end
348
+
349
+ # Indicates the structure of the returned content.
350
+ #
351
+ # - "object" means the `data` field contains a single JSON object.
352
+ # - "array" means the `data` field contains an array of objects.
353
+ # - "error" means the `data` field contains an error object with details of the
354
+ # issue.
355
+ # - "none" means no data is returned.
356
+ #
357
+ # @see Straddle::Models::CustomerV1#response_type
358
+ module ResponseType
359
+ extend Straddle::Internal::Type::Enum
360
+
361
+ OBJECT = :object
362
+ ARRAY = :array
363
+ ERROR = :error
364
+ NONE = :none
365
+
366
+ # @!method self.values
367
+ # @return [Array<Symbol>]
368
+ end
369
+ end
370
+ end
371
+ end