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,485 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Models
5
+ # @see Straddle::Resources::Charges#create
6
+ class ChargeV1 < Straddle::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [Straddle::Models::ChargeV1::Data]
10
+ required :data, -> { Straddle::ChargeV1::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::ChargeV1::ResponseType]
28
+ required :response_type, enum: -> { Straddle::ChargeV1::ResponseType }
29
+
30
+ # @!method initialize(data:, meta:, response_type:)
31
+ # Some parameter documentations has been truncated, see
32
+ # {Straddle::Models::ChargeV1} for more details.
33
+ #
34
+ # @param data [Straddle::Models::ChargeV1::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::ChargeV1::ResponseType] Indicates the structure of the returned content.
39
+
40
+ # @see Straddle::Models::ChargeV1#data
41
+ class Data < Straddle::Internal::Type::BaseModel
42
+ # @!attribute id
43
+ # Unique identifier for the charge.
44
+ #
45
+ # @return [String]
46
+ required :id, String
47
+
48
+ # @!attribute amount
49
+ # The amount of the charge in cents.
50
+ #
51
+ # @return [Integer]
52
+ required :amount, Integer
53
+
54
+ # @!attribute config
55
+ # Configuration options for the charge.
56
+ #
57
+ # @return [Straddle::Models::ChargeV1::Data::Config]
58
+ required :config, -> { Straddle::ChargeV1::Data::Config }
59
+
60
+ # @!attribute consent_type
61
+ # The channel or mechanism through which the payment was authorized. Use
62
+ # `internet` for payments made online or through a mobile app and `signed` for
63
+ # signed agreements where there is a consent form or contract. Use `signed` for
64
+ # PDF signatures.
65
+ #
66
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::ConsentType]
67
+ required :consent_type, enum: -> { Straddle::ChargeV1::Data::ConsentType }
68
+
69
+ # @!attribute created_at
70
+ # Timestamp of when the charge was created.
71
+ #
72
+ # @return [Time, nil]
73
+ required :created_at, Time, nil?: true
74
+
75
+ # @!attribute currency
76
+ # The currency of the charge. Only USD is supported.
77
+ #
78
+ # @return [String]
79
+ required :currency, String
80
+
81
+ # @!attribute description
82
+ # An arbitrary description for the charge.
83
+ #
84
+ # @return [String]
85
+ required :description, String
86
+
87
+ # @!attribute device
88
+ # Information about the device used when the customer authorized the payment.
89
+ #
90
+ # @return [Straddle::Models::DeviceInfoV1]
91
+ required :device, -> { Straddle::DeviceInfoV1 }
92
+
93
+ # @!attribute external_id
94
+ # Unique identifier for the charge in your database. This value must be unique
95
+ # across all charges.
96
+ #
97
+ # @return [String]
98
+ required :external_id, String
99
+
100
+ # @!attribute funding_ids
101
+ # Funding Ids
102
+ #
103
+ # @return [Array<String>]
104
+ required :funding_ids, Straddle::Internal::Type::ArrayOf[String]
105
+
106
+ # @!attribute paykey
107
+ # Value of the `paykey` used for the charge.
108
+ #
109
+ # @return [String]
110
+ required :paykey, String
111
+
112
+ # @!attribute payment_date
113
+ # The desired date on which the payment should be occur. For charges, this means
114
+ # the date you want the customer to be debited on.
115
+ #
116
+ # @return [Date]
117
+ required :payment_date, Date
118
+
119
+ # @!attribute status
120
+ # The current status of the charge.
121
+ #
122
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::Status]
123
+ required :status, enum: -> { Straddle::ChargeV1::Data::Status }
124
+
125
+ # @!attribute status_details
126
+ # Additional details about the current status of the charge.
127
+ #
128
+ # @return [Straddle::Models::StatusDetailsV1]
129
+ required :status_details, -> { Straddle::StatusDetailsV1 }
130
+
131
+ # @!attribute status_history
132
+ # Status history.
133
+ #
134
+ # @return [Array<Straddle::Models::ChargeV1::Data::StatusHistory>]
135
+ required :status_history,
136
+ -> { Straddle::Internal::Type::ArrayOf[Straddle::ChargeV1::Data::StatusHistory] }
137
+
138
+ # @!attribute updated_at
139
+ # Timestamp of when the charge was last updated.
140
+ #
141
+ # @return [Time, nil]
142
+ required :updated_at, Time, nil?: true
143
+
144
+ # @!attribute customer_details
145
+ # Information about the customer associated with the charge.
146
+ #
147
+ # @return [Straddle::Models::CustomerDetailsV1, nil]
148
+ optional :customer_details, -> { Straddle::CustomerDetailsV1 }
149
+
150
+ # @!attribute effective_at
151
+ # Timestamp of when the charge was effective in the customer's bank account,
152
+ # otherwise known as the date on which the customer is debited.
153
+ #
154
+ # @return [Time, nil]
155
+ optional :effective_at, Time, nil?: true
156
+
157
+ # @!attribute metadata
158
+ # Up to 20 additional user-defined key-value pairs. Useful for storing additional
159
+ # information about the charge in a structured format.
160
+ #
161
+ # @return [Hash{Symbol=>String}, nil]
162
+ optional :metadata, Straddle::Internal::Type::HashOf[String], nil?: true
163
+
164
+ # @!attribute paykey_details
165
+ # Information about the paykey used for the charge.
166
+ #
167
+ # @return [Straddle::Models::PaykeyDetailsV1, nil]
168
+ optional :paykey_details, -> { Straddle::PaykeyDetailsV1 }
169
+
170
+ # @!attribute payment_rail
171
+ # The payment rail that the charge will be processed through.
172
+ #
173
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::PaymentRail, nil]
174
+ optional :payment_rail, enum: -> { Straddle::ChargeV1::Data::PaymentRail }
175
+
176
+ # @!attribute processed_at
177
+ # Timestamp of when the charge was processed by Straddle and originated to the
178
+ # payment rail.
179
+ #
180
+ # @return [Time, nil]
181
+ optional :processed_at, Time, nil?: true
182
+
183
+ # @!method initialize(id:, amount:, config:, consent_type:, created_at:, currency:, description:, device:, external_id:, funding_ids:, paykey:, payment_date:, status:, status_details:, status_history:, updated_at:, customer_details: nil, effective_at: nil, metadata: nil, paykey_details: nil, payment_rail: nil, processed_at: nil)
184
+ # Some parameter documentations has been truncated, see
185
+ # {Straddle::Models::ChargeV1::Data} for more details.
186
+ #
187
+ # @param id [String] Unique identifier for the charge.
188
+ #
189
+ # @param amount [Integer] The amount of the charge in cents.
190
+ #
191
+ # @param config [Straddle::Models::ChargeV1::Data::Config] Configuration options for the charge.
192
+ #
193
+ # @param consent_type [Symbol, Straddle::Models::ChargeV1::Data::ConsentType] The channel or mechanism through which the payment was authorized. Use `internet
194
+ #
195
+ # @param created_at [Time, nil] Timestamp of when the charge was created.
196
+ #
197
+ # @param currency [String] The currency of the charge. Only USD is supported.
198
+ #
199
+ # @param description [String] An arbitrary description for the charge.
200
+ #
201
+ # @param device [Straddle::Models::DeviceInfoV1] Information about the device used when the customer authorized the payment.
202
+ #
203
+ # @param external_id [String] Unique identifier for the charge in your database. This value must be unique acr
204
+ #
205
+ # @param funding_ids [Array<String>] Funding Ids
206
+ #
207
+ # @param paykey [String] Value of the `paykey` used for the charge.
208
+ #
209
+ # @param payment_date [Date] The desired date on which the payment should be occur. For charges, this means t
210
+ #
211
+ # @param status [Symbol, Straddle::Models::ChargeV1::Data::Status] The current status of the charge.
212
+ #
213
+ # @param status_details [Straddle::Models::StatusDetailsV1] Additional details about the current status of the charge.
214
+ #
215
+ # @param status_history [Array<Straddle::Models::ChargeV1::Data::StatusHistory>] Status history.
216
+ #
217
+ # @param updated_at [Time, nil] Timestamp of when the charge was last updated.
218
+ #
219
+ # @param customer_details [Straddle::Models::CustomerDetailsV1] Information about the customer associated with the charge.
220
+ #
221
+ # @param effective_at [Time, nil] Timestamp of when the charge was effective in the customer's bank account, other
222
+ #
223
+ # @param metadata [Hash{Symbol=>String}, nil] Up to 20 additional user-defined key-value pairs. Useful for storing additional
224
+ #
225
+ # @param paykey_details [Straddle::Models::PaykeyDetailsV1] Information about the paykey used for the charge.
226
+ #
227
+ # @param payment_rail [Symbol, Straddle::Models::ChargeV1::Data::PaymentRail] The payment rail that the charge will be processed through.
228
+ #
229
+ # @param processed_at [Time, nil] Timestamp of when the charge was processed by Straddle and originated to the pay
230
+
231
+ # @see Straddle::Models::ChargeV1::Data#config
232
+ class Config < Straddle::Internal::Type::BaseModel
233
+ # @!attribute balance_check
234
+ # Defines whether to check the customer's balance before processing the charge.
235
+ #
236
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::Config::BalanceCheck]
237
+ required :balance_check, enum: -> { Straddle::ChargeV1::Data::Config::BalanceCheck }
238
+
239
+ # @!attribute sandbox_outcome
240
+ # Payment will simulate processing if not Standard.
241
+ #
242
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::Config::SandboxOutcome, nil]
243
+ optional :sandbox_outcome, enum: -> { Straddle::ChargeV1::Data::Config::SandboxOutcome }
244
+
245
+ # @!method initialize(balance_check:, sandbox_outcome: nil)
246
+ # Configuration options for the charge.
247
+ #
248
+ # @param balance_check [Symbol, Straddle::Models::ChargeV1::Data::Config::BalanceCheck] Defines whether to check the customer's balance before processing the charge.
249
+ #
250
+ # @param sandbox_outcome [Symbol, Straddle::Models::ChargeV1::Data::Config::SandboxOutcome] Payment will simulate processing if not Standard.
251
+
252
+ # Defines whether to check the customer's balance before processing the charge.
253
+ #
254
+ # @see Straddle::Models::ChargeV1::Data::Config#balance_check
255
+ module BalanceCheck
256
+ extend Straddle::Internal::Type::Enum
257
+
258
+ REQUIRED = :required
259
+ ENABLED = :enabled
260
+ DISABLED = :disabled
261
+
262
+ # @!method self.values
263
+ # @return [Array<Symbol>]
264
+ end
265
+
266
+ # Payment will simulate processing if not Standard.
267
+ #
268
+ # @see Straddle::Models::ChargeV1::Data::Config#sandbox_outcome
269
+ module SandboxOutcome
270
+ extend Straddle::Internal::Type::Enum
271
+
272
+ STANDARD = :standard
273
+ PAID = :paid
274
+ ON_HOLD_DAILY_LIMIT = :on_hold_daily_limit
275
+ CANCELLED_FOR_FRAUD_RISK = :cancelled_for_fraud_risk
276
+ CANCELLED_FOR_BALANCE_CHECK = :cancelled_for_balance_check
277
+ FAILED_INSUFFICIENT_FUNDS = :failed_insufficient_funds
278
+ REVERSED_INSUFFICIENT_FUNDS = :reversed_insufficient_funds
279
+ FAILED_CUSTOMER_DISPUTE = :failed_customer_dispute
280
+ REVERSED_CUSTOMER_DISPUTE = :reversed_customer_dispute
281
+ FAILED_CLOSED_BANK_ACCOUNT = :failed_closed_bank_account
282
+ REVERSED_CLOSED_BANK_ACCOUNT = :reversed_closed_bank_account
283
+
284
+ # @!method self.values
285
+ # @return [Array<Symbol>]
286
+ end
287
+ end
288
+
289
+ # The channel or mechanism through which the payment was authorized. Use
290
+ # `internet` for payments made online or through a mobile app and `signed` for
291
+ # signed agreements where there is a consent form or contract. Use `signed` for
292
+ # PDF signatures.
293
+ #
294
+ # @see Straddle::Models::ChargeV1::Data#consent_type
295
+ module ConsentType
296
+ extend Straddle::Internal::Type::Enum
297
+
298
+ INTERNET = :internet
299
+ SIGNED = :signed
300
+
301
+ # @!method self.values
302
+ # @return [Array<Symbol>]
303
+ end
304
+
305
+ # The current status of the charge.
306
+ #
307
+ # @see Straddle::Models::ChargeV1::Data#status
308
+ module Status
309
+ extend Straddle::Internal::Type::Enum
310
+
311
+ CREATED = :created
312
+ SCHEDULED = :scheduled
313
+ FAILED = :failed
314
+ CANCELLED = :cancelled
315
+ ON_HOLD = :on_hold
316
+ PENDING = :pending
317
+ PAID = :paid
318
+ REVERSED = :reversed
319
+
320
+ # @!method self.values
321
+ # @return [Array<Symbol>]
322
+ end
323
+
324
+ class StatusHistory < Straddle::Internal::Type::BaseModel
325
+ # @!attribute changed_at
326
+ # The time the status change occurred.
327
+ #
328
+ # @return [Time]
329
+ required :changed_at, Time
330
+
331
+ # @!attribute message
332
+ # A human-readable description of the status.
333
+ #
334
+ # @return [String]
335
+ required :message, String
336
+
337
+ # @!attribute reason
338
+ # A machine-readable identifier for the specific status, useful for programmatic
339
+ # handling.
340
+ #
341
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Reason]
342
+ required :reason, enum: -> { Straddle::ChargeV1::Data::StatusHistory::Reason }
343
+
344
+ # @!attribute source
345
+ # Identifies the origin of the status change (e.g., `bank_decline`, `watchtower`).
346
+ # This helps in tracking the cause of status updates.
347
+ #
348
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Source]
349
+ required :source, enum: -> { Straddle::ChargeV1::Data::StatusHistory::Source }
350
+
351
+ # @!attribute status
352
+ # The current status of the `charge` or `payout`.
353
+ #
354
+ # @return [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Status]
355
+ required :status, enum: -> { Straddle::ChargeV1::Data::StatusHistory::Status }
356
+
357
+ # @!attribute code
358
+ # The status code if applicable.
359
+ #
360
+ # @return [String, nil]
361
+ optional :code, String, nil?: true
362
+
363
+ # @!method initialize(changed_at:, message:, reason:, source:, status:, code: nil)
364
+ # Some parameter documentations has been truncated, see
365
+ # {Straddle::Models::ChargeV1::Data::StatusHistory} for more details.
366
+ #
367
+ # A record of the charge's status changes over time.
368
+ #
369
+ # @param changed_at [Time] The time the status change occurred.
370
+ #
371
+ # @param message [String] A human-readable description of the status.
372
+ #
373
+ # @param reason [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Reason] A machine-readable identifier for the specific status, useful for programmatic h
374
+ #
375
+ # @param source [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Source] Identifies the origin of the status change (e.g., `bank_decline`, `watchtower`).
376
+ #
377
+ # @param status [Symbol, Straddle::Models::ChargeV1::Data::StatusHistory::Status] The current status of the `charge` or `payout`.
378
+ #
379
+ # @param code [String, nil] The status code if applicable.
380
+
381
+ # A machine-readable identifier for the specific status, useful for programmatic
382
+ # handling.
383
+ #
384
+ # @see Straddle::Models::ChargeV1::Data::StatusHistory#reason
385
+ module Reason
386
+ extend Straddle::Internal::Type::Enum
387
+
388
+ INSUFFICIENT_FUNDS = :insufficient_funds
389
+ CLOSED_BANK_ACCOUNT = :closed_bank_account
390
+ INVALID_BANK_ACCOUNT = :invalid_bank_account
391
+ INVALID_ROUTING = :invalid_routing
392
+ DISPUTED = :disputed
393
+ PAYMENT_STOPPED = :payment_stopped
394
+ OWNER_DECEASED = :owner_deceased
395
+ FROZEN_BANK_ACCOUNT = :frozen_bank_account
396
+ RISK_REVIEW = :risk_review
397
+ FRAUDULENT = :fraudulent
398
+ DUPLICATE_ENTRY = :duplicate_entry
399
+ INVALID_PAYKEY = :invalid_paykey
400
+ PAYMENT_BLOCKED = :payment_blocked
401
+ AMOUNT_TOO_LARGE = :amount_too_large
402
+ TOO_MANY_ATTEMPTS = :too_many_attempts
403
+ INTERNAL_SYSTEM_ERROR = :internal_system_error
404
+ USER_REQUEST = :user_request
405
+ OK = :ok
406
+ OTHER_NETWORK_RETURN = :other_network_return
407
+ PAYOUT_REFUSED = :payout_refused
408
+
409
+ # @!method self.values
410
+ # @return [Array<Symbol>]
411
+ end
412
+
413
+ # Identifies the origin of the status change (e.g., `bank_decline`, `watchtower`).
414
+ # This helps in tracking the cause of status updates.
415
+ #
416
+ # @see Straddle::Models::ChargeV1::Data::StatusHistory#source
417
+ module Source
418
+ extend Straddle::Internal::Type::Enum
419
+
420
+ WATCHTOWER = :watchtower
421
+ BANK_DECLINE = :bank_decline
422
+ CUSTOMER_DISPUTE = :customer_dispute
423
+ USER_ACTION = :user_action
424
+ SYSTEM = :system
425
+
426
+ # @!method self.values
427
+ # @return [Array<Symbol>]
428
+ end
429
+
430
+ # The current status of the `charge` or `payout`.
431
+ #
432
+ # @see Straddle::Models::ChargeV1::Data::StatusHistory#status
433
+ module Status
434
+ extend Straddle::Internal::Type::Enum
435
+
436
+ CREATED = :created
437
+ SCHEDULED = :scheduled
438
+ FAILED = :failed
439
+ CANCELLED = :cancelled
440
+ ON_HOLD = :on_hold
441
+ PENDING = :pending
442
+ PAID = :paid
443
+ REVERSED = :reversed
444
+
445
+ # @!method self.values
446
+ # @return [Array<Symbol>]
447
+ end
448
+ end
449
+
450
+ # The payment rail that the charge will be processed through.
451
+ #
452
+ # @see Straddle::Models::ChargeV1::Data#payment_rail
453
+ module PaymentRail
454
+ extend Straddle::Internal::Type::Enum
455
+
456
+ ACH = :ach
457
+
458
+ # @!method self.values
459
+ # @return [Array<Symbol>]
460
+ end
461
+ end
462
+
463
+ # Indicates the structure of the returned content.
464
+ #
465
+ # - "object" means the `data` field contains a single JSON object.
466
+ # - "array" means the `data` field contains an array of objects.
467
+ # - "error" means the `data` field contains an error object with details of the
468
+ # issue.
469
+ # - "none" means no data is returned.
470
+ #
471
+ # @see Straddle::Models::ChargeV1#response_type
472
+ module ResponseType
473
+ extend Straddle::Internal::Type::Enum
474
+
475
+ OBJECT = :object
476
+ ARRAY = :array
477
+ ERROR = :error
478
+ NONE = :none
479
+
480
+ # @!method self.values
481
+ # @return [Array<Symbol>]
482
+ end
483
+ end
484
+ end
485
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Straddle
4
+ module Models
5
+ class CustomerAddressV1 < Straddle::Internal::Type::BaseModel
6
+ # @!attribute address1
7
+ # Primary address line (e.g., street, PO Box).
8
+ #
9
+ # @return [String]
10
+ required :address1, String
11
+
12
+ # @!attribute city
13
+ # City, district, suburb, town, or village.
14
+ #
15
+ # @return [String]
16
+ required :city, String
17
+
18
+ # @!attribute state
19
+ # Two-letter state code.
20
+ #
21
+ # @return [String]
22
+ required :state, String
23
+
24
+ # @!attribute zip
25
+ # Zip or postal code.
26
+ #
27
+ # @return [String]
28
+ required :zip, String
29
+
30
+ # @!attribute address2
31
+ # Secondary address line (e.g., apartment, suite, unit, or building).
32
+ #
33
+ # @return [String, nil]
34
+ optional :address2, String, nil?: true
35
+
36
+ # @!method initialize(address1:, city:, state:, zip:, address2: nil)
37
+ # An object containing the customer's address. This is optional, but if provided,
38
+ # all required fields must be present.
39
+ #
40
+ # @param address1 [String] Primary address line (e.g., street, PO Box).
41
+ #
42
+ # @param city [String] City, district, suburb, town, or village.
43
+ #
44
+ # @param state [String] Two-letter state code.
45
+ #
46
+ # @param zip [String] Zip or postal code.
47
+ #
48
+ # @param address2 [String, nil] Secondary address line (e.g., apartment, suite, unit, or building).
49
+ end
50
+ end
51
+ end