stripe 5.38.0 → 15.2.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 (708) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +742 -0
  3. data/CONTRIBUTING.md +25 -0
  4. data/Gemfile +12 -4
  5. data/Makefile +22 -0
  6. data/OPENAPI_VERSION +1 -0
  7. data/README.md +137 -27
  8. data/Rakefile +3 -6
  9. data/VERSION +1 -1
  10. data/examples/README.md +16 -0
  11. data/examples/example_template.rb +36 -0
  12. data/examples/meter_event_stream.rb +57 -0
  13. data/examples/thinevent_webhook_handler.rb +39 -0
  14. data/{bin → exe}/stripe-console +1 -1
  15. data/justfile +43 -0
  16. data/lib/data/ca-certificates.crt +1241 -1937
  17. data/lib/stripe/api_operations/create.rb +6 -2
  18. data/lib/stripe/api_operations/delete.rb +12 -7
  19. data/lib/stripe/api_operations/list.rb +6 -9
  20. data/lib/stripe/api_operations/nested_resource.rb +59 -31
  21. data/lib/stripe/api_operations/request.rb +30 -65
  22. data/lib/stripe/api_operations/save.rb +20 -10
  23. data/lib/stripe/api_operations/search.rb +21 -0
  24. data/lib/stripe/api_operations/singleton_save.rb +90 -0
  25. data/lib/stripe/api_requestor.rb +1136 -0
  26. data/lib/stripe/api_resource.rb +49 -34
  27. data/lib/stripe/api_resource_test_helpers.rb +53 -0
  28. data/lib/stripe/{resources/usage_record.rb → api_version.rb} +2 -2
  29. data/lib/stripe/connection_manager.rb +28 -11
  30. data/lib/stripe/errors.rb +11 -20
  31. data/lib/stripe/event_types.rb +15 -0
  32. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +23 -0
  33. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +13 -0
  34. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
  35. data/lib/stripe/instrumentation.rb +37 -15
  36. data/lib/stripe/list_object.rb +5 -3
  37. data/lib/stripe/multipart_encoder.rb +7 -7
  38. data/lib/stripe/oauth.rb +14 -21
  39. data/lib/stripe/object_types.rb +157 -91
  40. data/lib/stripe/request_options.rb +129 -0
  41. data/lib/stripe/request_params.rb +24 -0
  42. data/lib/stripe/resources/account.rb +4854 -30
  43. data/lib/stripe/resources/account_link.rb +66 -0
  44. data/lib/stripe/resources/account_session.rb +868 -0
  45. data/lib/stripe/resources/alipay_account.rb +1 -1
  46. data/lib/stripe/resources/apple_pay_domain.rb +91 -0
  47. data/lib/stripe/resources/application.rb +20 -0
  48. data/lib/stripe/resources/application_fee.rb +96 -2
  49. data/lib/stripe/resources/application_fee_refund.rb +26 -2
  50. data/lib/stripe/resources/apps/secret.rb +196 -0
  51. data/lib/stripe/resources/balance.rb +178 -0
  52. data/lib/stripe/resources/balance_transaction.rb +124 -0
  53. data/lib/stripe/resources/bank_account.rb +137 -6
  54. data/lib/stripe/resources/billing/alert.rb +222 -0
  55. data/lib/stripe/resources/billing/alert_triggered.rb +26 -0
  56. data/lib/stripe/resources/billing/credit_balance_summary.rb +54 -0
  57. data/lib/stripe/resources/billing/credit_balance_transaction.rb +133 -0
  58. data/lib/stripe/resources/billing/credit_grant.rb +307 -0
  59. data/lib/stripe/resources/billing/meter.rb +254 -0
  60. data/lib/stripe/resources/billing/meter_event.rb +61 -0
  61. data/lib/stripe/resources/billing/meter_event_adjustment.rb +69 -0
  62. data/lib/stripe/resources/billing/meter_event_summary.rb +32 -0
  63. data/lib/stripe/resources/billing_portal/configuration.rb +587 -0
  64. data/lib/stripe/resources/billing_portal/session.rb +298 -0
  65. data/lib/stripe/resources/capability.rb +91 -2
  66. data/lib/stripe/resources/card.rb +111 -3
  67. data/lib/stripe/resources/cash_balance.rb +43 -0
  68. data/lib/stripe/resources/charge.rb +1682 -2
  69. data/lib/stripe/resources/checkout/session.rb +3666 -2
  70. data/lib/stripe/resources/climate/order.rb +234 -0
  71. data/lib/stripe/resources/climate/product.rb +74 -0
  72. data/lib/stripe/resources/climate/supplier.rb +71 -0
  73. data/lib/stripe/resources/confirmation_token.rb +1498 -0
  74. data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
  75. data/lib/stripe/resources/country_spec.rb +68 -0
  76. data/lib/stripe/resources/coupon.rb +236 -0
  77. data/lib/stripe/resources/credit_note.rb +709 -9
  78. data/lib/stripe/resources/credit_note_line_item.rb +71 -0
  79. data/lib/stripe/resources/customer.rb +1015 -16
  80. data/lib/stripe/resources/customer_balance_transaction.rb +38 -1
  81. data/lib/stripe/resources/customer_cash_balance_transaction.rb +124 -0
  82. data/lib/stripe/resources/customer_session.rb +188 -0
  83. data/lib/stripe/resources/discount.rb +37 -0
  84. data/lib/stripe/resources/dispute.rb +650 -2
  85. data/lib/stripe/resources/entitlements/active_entitlement.rb +63 -0
  86. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
  87. data/lib/stripe/resources/entitlements/feature.rb +130 -0
  88. data/lib/stripe/resources/ephemeral_key.rb +44 -0
  89. data/lib/stripe/resources/event.rb +130 -0
  90. data/lib/stripe/resources/exchange_rate.rb +58 -0
  91. data/lib/stripe/resources/file.rb +139 -15
  92. data/lib/stripe/resources/file_link.rb +129 -0
  93. data/lib/stripe/resources/financial_connections/account.rb +363 -0
  94. data/lib/stripe/resources/financial_connections/account_owner.rb +31 -0
  95. data/lib/stripe/resources/financial_connections/account_ownership.rb +23 -0
  96. data/lib/stripe/resources/financial_connections/session.rb +121 -0
  97. data/lib/stripe/resources/financial_connections/transaction.rb +118 -0
  98. data/lib/stripe/resources/forwarding/request.rb +208 -0
  99. data/lib/stripe/resources/funding_instructions.rb +332 -0
  100. data/lib/stripe/resources/identity/verification_report.rb +287 -0
  101. data/lib/stripe/resources/identity/verification_session.rb +474 -4
  102. data/lib/stripe/resources/invoice.rb +3525 -17
  103. data/lib/stripe/resources/invoice_item.rb +453 -0
  104. data/lib/stripe/resources/invoice_line_item.rb +372 -1
  105. data/lib/stripe/resources/invoice_payment.rb +112 -0
  106. data/lib/stripe/resources/invoice_rendering_template.rb +120 -0
  107. data/lib/stripe/resources/issuing/authorization.rb +1313 -4
  108. data/lib/stripe/resources/issuing/card.rb +785 -4
  109. data/lib/stripe/resources/issuing/cardholder.rb +684 -0
  110. data/lib/stripe/resources/issuing/dispute.rb +828 -2
  111. data/lib/stripe/resources/issuing/personalization_design.rb +395 -0
  112. data/lib/stripe/resources/issuing/physical_bundle.rb +80 -0
  113. data/lib/stripe/resources/issuing/token.rb +198 -0
  114. data/lib/stripe/resources/issuing/transaction.rb +991 -0
  115. data/lib/stripe/resources/line_item.rb +51 -0
  116. data/lib/stripe/resources/login_link.rb +12 -0
  117. data/lib/stripe/resources/mandate.rb +146 -0
  118. data/lib/stripe/resources/payment_intent.rb +8876 -6
  119. data/lib/stripe/resources/payment_link.rb +1692 -0
  120. data/lib/stripe/resources/payment_method.rb +1570 -4
  121. data/lib/stripe/resources/payment_method_configuration.rb +3189 -0
  122. data/lib/stripe/resources/payment_method_domain.rb +236 -0
  123. data/lib/stripe/resources/payout.rb +271 -4
  124. data/lib/stripe/resources/person.rb +295 -1
  125. data/lib/stripe/resources/plan.rb +352 -0
  126. data/lib/stripe/resources/price.rb +642 -0
  127. data/lib/stripe/resources/product.rb +534 -0
  128. data/lib/stripe/resources/product_feature.rb +25 -0
  129. data/lib/stripe/resources/promotion_code.rb +237 -0
  130. data/lib/stripe/resources/quote.rb +1015 -38
  131. data/lib/stripe/resources/radar/early_fraud_warning.rb +85 -0
  132. data/lib/stripe/resources/radar/value_list.rb +171 -0
  133. data/lib/stripe/resources/radar/value_list_item.rb +131 -0
  134. data/lib/stripe/resources/refund.rb +494 -0
  135. data/lib/stripe/resources/reporting/report_run.rb +172 -0
  136. data/lib/stripe/resources/reporting/report_type.rb +48 -1
  137. data/lib/stripe/resources/reserve_transaction.rb +22 -0
  138. data/lib/stripe/resources/reversal.rb +38 -2
  139. data/lib/stripe/resources/review.rb +122 -2
  140. data/lib/stripe/resources/setup_attempt.rb +380 -0
  141. data/lib/stripe/resources/setup_intent.rb +3432 -4
  142. data/lib/stripe/resources/shipping_rate.rb +287 -0
  143. data/lib/stripe/resources/sigma/scheduled_query_run.rb +62 -0
  144. data/lib/stripe/resources/source.rb +1250 -10
  145. data/lib/stripe/resources/source_mandate_notification.rb +66 -0
  146. data/lib/stripe/resources/source_transaction.rb +93 -0
  147. data/lib/stripe/resources/subscription.rb +1871 -3
  148. data/lib/stripe/resources/subscription_item.rb +399 -10
  149. data/lib/stripe/resources/subscription_schedule.rb +1455 -4
  150. data/lib/stripe/resources/tax/calculation.rb +430 -0
  151. data/lib/stripe/resources/tax/calculation_line_item.rb +71 -0
  152. data/lib/stripe/resources/tax/registration.rb +2667 -0
  153. data/lib/stripe/resources/tax/settings.rb +134 -0
  154. data/lib/stripe/resources/tax/transaction.rb +314 -0
  155. data/lib/stripe/resources/tax/transaction_line_item.rb +44 -0
  156. data/lib/stripe/resources/tax_code.rb +35 -0
  157. data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
  158. data/lib/stripe/resources/tax_id.rb +144 -11
  159. data/lib/stripe/resources/tax_rate.rb +217 -0
  160. data/lib/stripe/resources/terminal/configuration.rb +1328 -0
  161. data/lib/stripe/resources/terminal/connection_token.rb +34 -0
  162. data/lib/stripe/resources/terminal/location.rb +222 -0
  163. data/lib/stripe/resources/terminal/reader.rb +886 -0
  164. data/lib/stripe/resources/test_helpers/test_clock.rb +156 -0
  165. data/lib/stripe/resources/token.rb +1249 -0
  166. data/lib/stripe/resources/topup.rb +204 -2
  167. data/lib/stripe/resources/transfer.rb +173 -6
  168. data/lib/stripe/resources/treasury/credit_reversal.rb +120 -0
  169. data/lib/stripe/resources/treasury/debit_reversal.rb +131 -0
  170. data/lib/stripe/resources/treasury/financial_account.rb +833 -0
  171. data/lib/stripe/resources/treasury/financial_account_features.rb +204 -0
  172. data/lib/stripe/resources/treasury/inbound_transfer.rb +356 -0
  173. data/lib/stripe/resources/treasury/outbound_payment.rb +638 -0
  174. data/lib/stripe/resources/treasury/outbound_transfer.rb +493 -0
  175. data/lib/stripe/resources/treasury/received_credit.rb +284 -0
  176. data/lib/stripe/resources/treasury/received_debit.rb +243 -0
  177. data/lib/stripe/resources/treasury/transaction.rb +193 -0
  178. data/lib/stripe/resources/treasury/transaction_entry.rb +178 -0
  179. data/lib/stripe/resources/v2/amount.rb +9 -0
  180. data/lib/stripe/resources/v2/billing/meter_event.rb +34 -0
  181. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +36 -0
  182. data/lib/stripe/resources/v2/billing/meter_event_session.rb +29 -0
  183. data/lib/stripe/resources/v2/event.rb +41 -0
  184. data/lib/stripe/resources/v2/event_destination.rb +73 -0
  185. data/lib/stripe/resources/webhook_endpoint.rb +167 -0
  186. data/lib/stripe/resources.rb +70 -12
  187. data/lib/stripe/search_result_object.rb +89 -0
  188. data/lib/stripe/services/account_capability_service.rb +71 -0
  189. data/lib/stripe/services/account_external_account_service.rb +317 -0
  190. data/lib/stripe/services/account_link_service.rb +63 -0
  191. data/lib/stripe/services/account_login_link_service.rb +28 -0
  192. data/lib/stripe/services/account_person_service.rb +1019 -0
  193. data/lib/stripe/services/account_service.rb +4171 -0
  194. data/lib/stripe/services/account_session_service.rb +569 -0
  195. data/lib/stripe/services/apple_pay_domain_service.rb +100 -0
  196. data/lib/stripe/services/application_fee_refund_service.rb +114 -0
  197. data/lib/stripe/services/application_fee_service.rb +92 -0
  198. data/lib/stripe/services/apps/secret_service.rb +168 -0
  199. data/lib/stripe/services/apps_service.rb +13 -0
  200. data/lib/stripe/services/balance_service.rb +21 -0
  201. data/lib/stripe/services/balance_transaction_service.rb +101 -0
  202. data/lib/stripe/services/billing/alert_service.rb +187 -0
  203. data/lib/stripe/services/billing/credit_balance_summary_service.rb +67 -0
  204. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +70 -0
  205. data/lib/stripe/services/billing/credit_grant_service.rb +240 -0
  206. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +45 -0
  207. data/lib/stripe/services/billing/meter_event_service.rb +40 -0
  208. data/lib/stripe/services/billing/meter_event_summary_service.rb +58 -0
  209. data/lib/stripe/services/billing/meter_service.rb +211 -0
  210. data/lib/stripe/services/billing_portal/configuration_service.rb +496 -0
  211. data/lib/stripe/services/billing_portal/session_service.rb +192 -0
  212. data/lib/stripe/services/billing_portal_service.rb +14 -0
  213. data/lib/stripe/services/billing_service.rb +20 -0
  214. data/lib/stripe/services/charge_service.rb +471 -0
  215. data/lib/stripe/services/checkout/session_line_item_service.rb +37 -0
  216. data/lib/stripe/services/checkout/session_service.rb +2495 -0
  217. data/lib/stripe/services/checkout_service.rb +13 -0
  218. data/lib/stripe/services/climate/order_service.rb +170 -0
  219. data/lib/stripe/services/climate/product_service.rb +57 -0
  220. data/lib/stripe/services/climate/supplier_service.rb +57 -0
  221. data/lib/stripe/services/climate_service.rb +15 -0
  222. data/lib/stripe/services/confirmation_token_service.rb +26 -0
  223. data/lib/stripe/services/country_spec_service.rb +55 -0
  224. data/lib/stripe/services/coupon_service.rb +202 -0
  225. data/lib/stripe/services/credit_note_line_item_service.rb +35 -0
  226. data/lib/stripe/services/credit_note_preview_lines_service.rb +169 -0
  227. data/lib/stripe/services/credit_note_service.rb +457 -0
  228. data/lib/stripe/services/customer_balance_transaction_service.rb +113 -0
  229. data/lib/stripe/services/customer_cash_balance_service.rb +57 -0
  230. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +55 -0
  231. data/lib/stripe/services/customer_funding_instructions_service.rb +61 -0
  232. data/lib/stripe/services/customer_payment_method_service.rb +68 -0
  233. data/lib/stripe/services/customer_payment_source_service.rb +255 -0
  234. data/lib/stripe/services/customer_service.rb +664 -0
  235. data/lib/stripe/services/customer_session_service.rb +113 -0
  236. data/lib/stripe/services/customer_tax_id_service.rb +94 -0
  237. data/lib/stripe/services/dispute_service.rb +422 -0
  238. data/lib/stripe/services/entitlements/active_entitlement_service.rb +66 -0
  239. data/lib/stripe/services/entitlements/feature_service.rb +128 -0
  240. data/lib/stripe/services/entitlements_service.rb +14 -0
  241. data/lib/stripe/services/ephemeral_key_service.rb +64 -0
  242. data/lib/stripe/services/event_service.rb +87 -0
  243. data/lib/stripe/services/exchange_rate_service.rb +55 -0
  244. data/lib/stripe/services/file_link_service.rb +132 -0
  245. data/lib/stripe/services/file_service.rb +124 -0
  246. data/lib/stripe/services/financial_connections/account_owner_service.rb +46 -0
  247. data/lib/stripe/services/financial_connections/account_service.rb +177 -0
  248. data/lib/stripe/services/financial_connections/session_service.rb +98 -0
  249. data/lib/stripe/services/financial_connections/transaction_service.rb +100 -0
  250. data/lib/stripe/services/financial_connections_service.rb +15 -0
  251. data/lib/stripe/services/forwarding/request_service.rb +147 -0
  252. data/lib/stripe/services/forwarding_service.rb +13 -0
  253. data/lib/stripe/services/identity/verification_report_service.rb +95 -0
  254. data/lib/stripe/services/identity/verification_session_service.rb +337 -0
  255. data/lib/stripe/services/identity_service.rb +14 -0
  256. data/lib/stripe/services/invoice_item_service.rb +394 -0
  257. data/lib/stripe/services/invoice_line_item_service.rb +252 -0
  258. data/lib/stripe/services/invoice_payment_service.rb +83 -0
  259. data/lib/stripe/services/invoice_rendering_template_service.rb +101 -0
  260. data/lib/stripe/services/invoice_service.rb +2900 -0
  261. data/lib/stripe/services/issuing/authorization_service.rb +169 -0
  262. data/lib/stripe/services/issuing/card_service.rb +507 -0
  263. data/lib/stripe/services/issuing/cardholder_service.rb +577 -0
  264. data/lib/stripe/services/issuing/dispute_service.rb +696 -0
  265. data/lib/stripe/services/issuing/personalization_design_service.rb +245 -0
  266. data/lib/stripe/services/issuing/physical_bundle_service.rb +70 -0
  267. data/lib/stripe/services/issuing/token_service.rb +114 -0
  268. data/lib/stripe/services/issuing/transaction_service.rb +118 -0
  269. data/lib/stripe/services/issuing_service.rb +20 -0
  270. data/lib/stripe/services/mandate_service.rb +26 -0
  271. data/lib/stripe/services/oauth_service.rb +63 -0
  272. data/lib/stripe/services/payment_intent_service.rb +7202 -0
  273. data/lib/stripe/services/payment_link_line_item_service.rb +35 -0
  274. data/lib/stripe/services/payment_link_service.rb +1333 -0
  275. data/lib/stripe/services/payment_method_configuration_service.rb +2306 -0
  276. data/lib/stripe/services/payment_method_domain_service.rb +142 -0
  277. data/lib/stripe/services/payment_method_service.rb +843 -0
  278. data/lib/stripe/services/payout_service.rb +225 -0
  279. data/lib/stripe/services/plan_service.rb +297 -0
  280. data/lib/stripe/services/price_service.rb +545 -0
  281. data/lib/stripe/services/product_feature_service.rb +91 -0
  282. data/lib/stripe/services/product_service.rb +494 -0
  283. data/lib/stripe/services/promotion_code_service.rb +228 -0
  284. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +35 -0
  285. data/lib/stripe/services/quote_line_item_service.rb +35 -0
  286. data/lib/stripe/services/quote_service.rb +703 -0
  287. data/lib/stripe/services/radar/early_fraud_warning_service.rb +93 -0
  288. data/lib/stripe/services/radar/value_list_item_service.rb +130 -0
  289. data/lib/stripe/services/radar/value_list_service.rb +165 -0
  290. data/lib/stripe/services/radar_service.rb +15 -0
  291. data/lib/stripe/services/refund_service.rb +200 -0
  292. data/lib/stripe/services/reporting/report_run_service.rb +147 -0
  293. data/lib/stripe/services/reporting/report_type_service.rb +48 -0
  294. data/lib/stripe/services/reporting_service.rb +14 -0
  295. data/lib/stripe/services/review_service.rb +89 -0
  296. data/lib/stripe/services/setup_attempt_service.rb +68 -0
  297. data/lib/stripe/services/setup_intent_service.rb +3107 -0
  298. data/lib/stripe/services/shipping_rate_service.rb +250 -0
  299. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +57 -0
  300. data/lib/stripe/services/sigma_service.rb +13 -0
  301. data/lib/stripe/services/source_service.rb +665 -0
  302. data/lib/stripe/services/source_transaction_service.rb +35 -0
  303. data/lib/stripe/services/subscription_item_service.rb +372 -0
  304. data/lib/stripe/services/subscription_schedule_service.rb +1224 -0
  305. data/lib/stripe/services/subscription_service.rb +1590 -0
  306. data/lib/stripe/services/tax/calculation_line_item_service.rb +37 -0
  307. data/lib/stripe/services/tax/calculation_service.rb +246 -0
  308. data/lib/stripe/services/tax/registration_service.rb +1774 -0
  309. data/lib/stripe/services/tax/settings_service.rb +104 -0
  310. data/lib/stripe/services/tax/transaction_line_item_service.rb +37 -0
  311. data/lib/stripe/services/tax/transaction_service.rb +159 -0
  312. data/lib/stripe/services/tax_code_service.rb +49 -0
  313. data/lib/stripe/services/tax_id_service.rb +116 -0
  314. data/lib/stripe/services/tax_rate_service.rb +193 -0
  315. data/lib/stripe/services/tax_service.rb +16 -0
  316. data/lib/stripe/services/terminal/configuration_service.rb +1059 -0
  317. data/lib/stripe/services/terminal/connection_token_service.rb +31 -0
  318. data/lib/stripe/services/terminal/location_service.rb +207 -0
  319. data/lib/stripe/services/terminal/reader_service.rb +488 -0
  320. data/lib/stripe/services/terminal_service.rb +16 -0
  321. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +655 -0
  322. data/lib/stripe/services/test_helpers/customer_service.rb +37 -0
  323. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +832 -0
  324. data/lib/stripe/services/test_helpers/issuing/card_service.rb +110 -0
  325. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +84 -0
  326. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +675 -0
  327. data/lib/stripe/services/test_helpers/issuing_service.rb +19 -0
  328. data/lib/stripe/services/test_helpers/refund_service.rb +28 -0
  329. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +108 -0
  330. data/lib/stripe/services/test_helpers/terminal_service.rb +15 -0
  331. data/lib/stripe/services/test_helpers/test_clock_service.rb +119 -0
  332. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +81 -0
  333. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +141 -0
  334. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +141 -0
  335. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +81 -0
  336. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +81 -0
  337. data/lib/stripe/services/test_helpers/treasury_service.rb +19 -0
  338. data/lib/stripe/services/test_helpers_service.rb +19 -0
  339. data/lib/stripe/services/token_service.rb +1224 -0
  340. data/lib/stripe/services/topup_service.rb +191 -0
  341. data/lib/stripe/services/transfer_reversal_service.rb +122 -0
  342. data/lib/stripe/services/transfer_service.rb +166 -0
  343. data/lib/stripe/services/treasury/credit_reversal_service.rb +100 -0
  344. data/lib/stripe/services/treasury/debit_reversal_service.rb +104 -0
  345. data/lib/stripe/services/treasury/financial_account_features_service.rb +196 -0
  346. data/lib/stripe/services/treasury/financial_account_service.rb +554 -0
  347. data/lib/stripe/services/treasury/inbound_transfer_service.rb +140 -0
  348. data/lib/stripe/services/treasury/outbound_payment_service.rb +310 -0
  349. data/lib/stripe/services/treasury/outbound_transfer_service.rb +176 -0
  350. data/lib/stripe/services/treasury/received_credit_service.rb +82 -0
  351. data/lib/stripe/services/treasury/received_debit_service.rb +70 -0
  352. data/lib/stripe/services/treasury/transaction_entry_service.rb +117 -0
  353. data/lib/stripe/services/treasury/transaction_service.rb +125 -0
  354. data/lib/stripe/services/treasury_service.rb +22 -0
  355. data/lib/stripe/services/v1_services.rb +90 -0
  356. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +44 -0
  357. data/lib/stripe/services/v2/billing/meter_event_service.rb +46 -0
  358. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +23 -0
  359. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +56 -0
  360. data/lib/stripe/services/v2/billing_service.rb +18 -0
  361. data/lib/stripe/services/v2/core/event_destination_service.rb +235 -0
  362. data/lib/stripe/services/v2/core/event_service.rb +48 -0
  363. data/lib/stripe/services/v2/core_service.rb +16 -0
  364. data/lib/stripe/services/v2_services.rb +14 -0
  365. data/lib/stripe/services/webhook_endpoint_service.rb +156 -0
  366. data/lib/stripe/services.rb +180 -0
  367. data/lib/stripe/singleton_api_resource.rb +3 -3
  368. data/lib/stripe/stripe_client.rb +56 -1021
  369. data/lib/stripe/stripe_configuration.rb +63 -42
  370. data/lib/stripe/stripe_object.rb +75 -39
  371. data/lib/stripe/stripe_response.rb +1 -3
  372. data/lib/stripe/stripe_service.rb +32 -0
  373. data/lib/stripe/thin_event.rb +37 -0
  374. data/lib/stripe/util.rb +161 -39
  375. data/lib/stripe/v2_list_object.rb +84 -0
  376. data/lib/stripe/version.rb +1 -1
  377. data/lib/stripe/webhook.rb +3 -2
  378. data/lib/stripe.rb +44 -1
  379. data/rbi/stripe/resources/account.rbi +4926 -0
  380. data/rbi/stripe/resources/account_link.rbi +74 -0
  381. data/rbi/stripe/resources/account_session.rbi +1013 -0
  382. data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
  383. data/rbi/stripe/resources/application.rbi +20 -0
  384. data/rbi/stripe/resources/application_fee.rbi +118 -0
  385. data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
  386. data/rbi/stripe/resources/apps/secret.rbi +195 -0
  387. data/rbi/stripe/resources/balance.rbi +235 -0
  388. data/rbi/stripe/resources/balance_transaction.rbi +147 -0
  389. data/rbi/stripe/resources/bank_account.rbi +127 -0
  390. data/rbi/stripe/resources/billing/alert.rbi +201 -0
  391. data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
  392. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
  393. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
  394. data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
  395. data/rbi/stripe/resources/billing/meter.rbi +226 -0
  396. data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
  397. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
  398. data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
  399. data/rbi/stripe/resources/billing_portal/configuration.rbi +645 -0
  400. data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
  401. data/rbi/stripe/resources/capability.rbi +125 -0
  402. data/rbi/stripe/resources/card.rbi +125 -0
  403. data/rbi/stripe/resources/cash_balance.rbi +32 -0
  404. data/rbi/stripe/resources/charge.rbi +2069 -0
  405. data/rbi/stripe/resources/checkout/session.rbi +4004 -0
  406. data/rbi/stripe/resources/climate/order.rbi +245 -0
  407. data/rbi/stripe/resources/climate/product.rbi +75 -0
  408. data/rbi/stripe/resources/climate/supplier.rbi +72 -0
  409. data/rbi/stripe/resources/confirmation_token.rbi +1807 -0
  410. data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
  411. data/rbi/stripe/resources/country_spec.rbi +85 -0
  412. data/rbi/stripe/resources/coupon.rbi +250 -0
  413. data/rbi/stripe/resources/credit_note.rbi +752 -0
  414. data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
  415. data/rbi/stripe/resources/customer.rbi +1005 -0
  416. data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
  417. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
  418. data/rbi/stripe/resources/customer_session.rbi +200 -0
  419. data/rbi/stripe/resources/discount.rbi +53 -0
  420. data/rbi/stripe/resources/dispute.rbi +761 -0
  421. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
  422. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
  423. data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
  424. data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
  425. data/rbi/stripe/resources/event.rbi +149 -0
  426. data/rbi/stripe/resources/exchange_rate.rbi +66 -0
  427. data/rbi/stripe/resources/file.rbi +143 -0
  428. data/rbi/stripe/resources/file_link.rbi +141 -0
  429. data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
  430. data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
  431. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
  432. data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
  433. data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
  434. data/rbi/stripe/resources/forwarding/request.rbi +216 -0
  435. data/rbi/stripe/resources/funding_instructions.rbi +437 -0
  436. data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
  437. data/rbi/stripe/resources/identity/verification_session.rbi +526 -0
  438. data/rbi/stripe/resources/invoice.rbi +3812 -0
  439. data/rbi/stripe/resources/invoice_item.rbi +473 -0
  440. data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
  441. data/rbi/stripe/resources/invoice_payment.rbi +121 -0
  442. data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
  443. data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
  444. data/rbi/stripe/resources/issuing/card.rbi +741 -0
  445. data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
  446. data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
  447. data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
  448. data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
  449. data/rbi/stripe/resources/issuing/token.rbi +226 -0
  450. data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
  451. data/rbi/stripe/resources/line_item.rbi +72 -0
  452. data/rbi/stripe/resources/login_link.rbi +19 -0
  453. data/rbi/stripe/resources/mandate.rbi +187 -0
  454. data/rbi/stripe/resources/payment_intent.rbi +9647 -0
  455. data/rbi/stripe/resources/payment_link.rbi +1801 -0
  456. data/rbi/stripe/resources/payment_method.rbi +1761 -0
  457. data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
  458. data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
  459. data/rbi/stripe/resources/payout.rbi +300 -0
  460. data/rbi/stripe/resources/person.rbi +401 -0
  461. data/rbi/stripe/resources/plan.rbi +371 -0
  462. data/rbi/stripe/resources/price.rbi +694 -0
  463. data/rbi/stripe/resources/product.rbi +555 -0
  464. data/rbi/stripe/resources/product_feature.rbi +26 -0
  465. data/rbi/stripe/resources/promotion_code.rbi +261 -0
  466. data/rbi/stripe/resources/quote.rbi +1126 -0
  467. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
  468. data/rbi/stripe/resources/radar/value_list.rbi +168 -0
  469. data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
  470. data/rbi/stripe/resources/refund.rbi +523 -0
  471. data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
  472. data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
  473. data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
  474. data/rbi/stripe/resources/reversal.rbi +51 -0
  475. data/rbi/stripe/resources/review.rbi +154 -0
  476. data/rbi/stripe/resources/setup_attempt.rbi +477 -0
  477. data/rbi/stripe/resources/setup_intent.rbi +3655 -0
  478. data/rbi/stripe/resources/shipping_rate.rbi +305 -0
  479. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
  480. data/rbi/stripe/resources/source.rbi +1496 -0
  481. data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
  482. data/rbi/stripe/resources/source_transaction.rbi +127 -0
  483. data/rbi/stripe/resources/subscription.rbi +2027 -0
  484. data/rbi/stripe/resources/subscription_item.rbi +404 -0
  485. data/rbi/stripe/resources/subscription_schedule.rbi +1623 -0
  486. data/rbi/stripe/resources/tax/calculation.rbi +478 -0
  487. data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
  488. data/rbi/stripe/resources/tax/registration.rbi +2713 -0
  489. data/rbi/stripe/resources/tax/settings.rbi +141 -0
  490. data/rbi/stripe/resources/tax/transaction.rbi +351 -0
  491. data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
  492. data/rbi/stripe/resources/tax_code.rbi +44 -0
  493. data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
  494. data/rbi/stripe/resources/tax_id.rbi +165 -0
  495. data/rbi/stripe/resources/tax_rate.rbi +239 -0
  496. data/rbi/stripe/resources/terminal/configuration.rbi +1386 -0
  497. data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
  498. data/rbi/stripe/resources/terminal/location.rbi +222 -0
  499. data/rbi/stripe/resources/terminal/reader.rbi +847 -0
  500. data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
  501. data/rbi/stripe/resources/token.rbi +1283 -0
  502. data/rbi/stripe/resources/topup.rbi +222 -0
  503. data/rbi/stripe/resources/transfer.rbi +199 -0
  504. data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
  505. data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
  506. data/rbi/stripe/resources/treasury/financial_account.rbi +865 -0
  507. data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
  508. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
  509. data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
  510. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
  511. data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
  512. data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
  513. data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
  514. data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
  515. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  516. data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
  517. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
  518. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
  519. data/rbi/stripe/resources/v2/event.rbi +48 -0
  520. data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
  521. data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
  522. data/rbi/stripe/services/account_capability_service.rbi +51 -0
  523. data/rbi/stripe/services/account_external_account_service.rbi +304 -0
  524. data/rbi/stripe/services/account_link_service.rbi +58 -0
  525. data/rbi/stripe/services/account_login_link_service.rbi +22 -0
  526. data/rbi/stripe/services/account_person_service.rbi +1011 -0
  527. data/rbi/stripe/services/account_service.rbi +4213 -0
  528. data/rbi/stripe/services/account_session_service.rbi +646 -0
  529. data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
  530. data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
  531. data/rbi/stripe/services/application_fee_service.rbi +78 -0
  532. data/rbi/stripe/services/apps/secret_service.rbi +151 -0
  533. data/{lib/stripe/resources/usage_record_summary.rb → rbi/stripe/services/apps_service.rbi} +4 -3
  534. data/rbi/stripe/services/balance_service.rbi +21 -0
  535. data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
  536. data/rbi/stripe/services/billing/alert_service.rbi +152 -0
  537. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
  538. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  539. data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
  540. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
  541. data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
  542. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
  543. data/rbi/stripe/services/billing/meter_service.rbi +163 -0
  544. data/rbi/stripe/services/billing_portal/configuration_service.rbi +511 -0
  545. data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
  546. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  547. data/rbi/stripe/services/billing_service.rbi +15 -0
  548. data/rbi/stripe/services/charge_service.rbi +448 -0
  549. data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
  550. data/rbi/stripe/services/checkout/session_service.rbi +2614 -0
  551. data/rbi/stripe/services/checkout_service.rbi +9 -0
  552. data/rbi/stripe/services/climate/order_service.rbi +142 -0
  553. data/rbi/stripe/services/climate/product_service.rbi +46 -0
  554. data/rbi/stripe/services/climate/supplier_service.rbi +46 -0
  555. data/rbi/stripe/services/climate_service.rbi +11 -0
  556. data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
  557. data/rbi/stripe/services/country_spec_service.rbi +44 -0
  558. data/rbi/stripe/services/coupon_service.rbi +194 -0
  559. data/rbi/stripe/services/credit_note_line_item_service.rbi +31 -0
  560. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
  561. data/rbi/stripe/services/credit_note_service.rbi +415 -0
  562. data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
  563. data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
  564. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
  565. data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
  566. data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
  567. data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
  568. data/rbi/stripe/services/customer_service.rbi +647 -0
  569. data/rbi/stripe/services/customer_session_service.rbi +116 -0
  570. data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
  571. data/rbi/stripe/services/dispute_service.rbi +424 -0
  572. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
  573. data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
  574. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  575. data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
  576. data/rbi/stripe/services/event_service.rbi +83 -0
  577. data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
  578. data/rbi/stripe/services/file_link_service.rbi +124 -0
  579. data/rbi/stripe/services/file_service.rbi +116 -0
  580. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
  581. data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
  582. data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
  583. data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
  584. data/rbi/stripe/services/financial_connections_service.rbi +11 -0
  585. data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
  586. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  587. data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
  588. data/rbi/stripe/services/identity/verification_session_service.rbi +323 -0
  589. data/rbi/stripe/services/identity_service.rbi +10 -0
  590. data/rbi/stripe/services/invoice_item_service.rbi +366 -0
  591. data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
  592. data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
  593. data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
  594. data/rbi/stripe/services/invoice_service.rbi +2981 -0
  595. data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
  596. data/rbi/stripe/services/issuing/card_service.rbi +495 -0
  597. data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
  598. data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
  599. data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
  600. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
  601. data/rbi/stripe/services/issuing/token_service.rbi +99 -0
  602. data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
  603. data/rbi/stripe/services/issuing_service.rbi +16 -0
  604. data/rbi/stripe/services/mandate_service.rbi +20 -0
  605. data/rbi/stripe/services/payment_intent_service.rbi +7659 -0
  606. data/rbi/stripe/services/payment_link_line_item_service.rbi +31 -0
  607. data/rbi/stripe/services/payment_link_service.rbi +1352 -0
  608. data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
  609. data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
  610. data/rbi/stripe/services/payment_method_service.rbi +776 -0
  611. data/rbi/stripe/services/payout_service.rbi +205 -0
  612. data/rbi/stripe/services/plan_service.rbi +282 -0
  613. data/rbi/stripe/services/price_service.rbi +546 -0
  614. data/rbi/stripe/services/product_feature_service.rbi +67 -0
  615. data/rbi/stripe/services/product_service.rbi +477 -0
  616. data/rbi/stripe/services/promotion_code_service.rbi +214 -0
  617. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
  618. data/rbi/stripe/services/quote_line_item_service.rbi +31 -0
  619. data/rbi/stripe/services/quote_service.rbi +686 -0
  620. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
  621. data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
  622. data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
  623. data/rbi/stripe/services/radar_service.rbi +11 -0
  624. data/rbi/stripe/services/refund_service.rbi +185 -0
  625. data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
  626. data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
  627. data/rbi/stripe/services/reporting_service.rbi +10 -0
  628. data/rbi/stripe/services/review_service.rbi +84 -0
  629. data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
  630. data/rbi/stripe/services/setup_intent_service.rbi +3391 -0
  631. data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
  632. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
  633. data/rbi/stripe/services/sigma_service.rbi +9 -0
  634. data/rbi/stripe/services/source_service.rbi +663 -0
  635. data/rbi/stripe/services/source_transaction_service.rbi +31 -0
  636. data/rbi/stripe/services/subscription_item_service.rbi +350 -0
  637. data/rbi/stripe/services/subscription_schedule_service.rbi +1290 -0
  638. data/rbi/stripe/services/subscription_service.rbi +1648 -0
  639. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +33 -0
  640. data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
  641. data/rbi/stripe/services/tax/registration_service.rbi +1845 -0
  642. data/rbi/stripe/services/tax/settings_service.rbi +93 -0
  643. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +33 -0
  644. data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
  645. data/rbi/stripe/services/tax_code_service.rbi +44 -0
  646. data/rbi/stripe/services/tax_id_service.rbi +110 -0
  647. data/rbi/stripe/services/tax_rate_service.rbi +185 -0
  648. data/rbi/stripe/services/tax_service.rbi +12 -0
  649. data/rbi/stripe/services/terminal/configuration_service.rbi +1118 -0
  650. data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
  651. data/rbi/stripe/services/terminal/location_service.rbi +182 -0
  652. data/rbi/stripe/services/terminal/reader_service.rbi +455 -0
  653. data/rbi/stripe/services/terminal_service.rbi +12 -0
  654. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +739 -0
  655. data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
  656. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
  657. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
  658. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
  659. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
  660. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  661. data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
  662. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
  663. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  664. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
  665. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
  666. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
  667. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
  668. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
  669. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
  670. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  671. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  672. data/rbi/stripe/services/token_service.rbi +1257 -0
  673. data/rbi/stripe/services/topup_service.rbi +176 -0
  674. data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
  675. data/rbi/stripe/services/transfer_service.rbi +152 -0
  676. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
  677. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
  678. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
  679. data/rbi/stripe/services/treasury/financial_account_service.rbi +562 -0
  680. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
  681. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
  682. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
  683. data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
  684. data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
  685. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
  686. data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
  687. data/rbi/stripe/services/treasury_service.rbi +18 -0
  688. data/rbi/stripe/services/v1_services.rbi +77 -0
  689. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
  690. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
  691. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
  692. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
  693. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  694. data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
  695. data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
  696. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  697. data/rbi/stripe/services/v2_services.rbi +10 -0
  698. data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
  699. data/stripe.gemspec +10 -7
  700. metadata +599 -18
  701. data/lib/stripe/resources/bitcoin_receiver.rb +0 -24
  702. data/lib/stripe/resources/bitcoin_transaction.rb +0 -16
  703. data/lib/stripe/resources/issuing/card_details.rb +0 -9
  704. data/lib/stripe/resources/order.rb +0 -33
  705. data/lib/stripe/resources/order_return.rb +0 -10
  706. data/lib/stripe/resources/recipient.rb +0 -14
  707. data/lib/stripe/resources/sku.rb +0 -13
  708. data/lib/stripe/resources/three_d_secure.rb +0 -14
@@ -0,0 +1,1019 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ class AccountPersonService < StripeService
6
+ class DeleteParams < Stripe::RequestParams; end
7
+
8
+ class RetrieveParams < Stripe::RequestParams
9
+ # Specifies which fields in the response should be expanded.
10
+ attr_accessor :expand
11
+
12
+ def initialize(expand: nil)
13
+ @expand = expand
14
+ end
15
+ end
16
+
17
+ class UpdateParams < Stripe::RequestParams
18
+ class AdditionalTosAcceptances < Stripe::RequestParams
19
+ class Account < Stripe::RequestParams
20
+ # The Unix timestamp marking when the account representative accepted the service agreement.
21
+ attr_accessor :date
22
+ # The IP address from which the account representative accepted the service agreement.
23
+ attr_accessor :ip
24
+ # The user agent of the browser from which the account representative accepted the service agreement.
25
+ attr_accessor :user_agent
26
+
27
+ def initialize(date: nil, ip: nil, user_agent: nil)
28
+ @date = date
29
+ @ip = ip
30
+ @user_agent = user_agent
31
+ end
32
+ end
33
+ # Details on the legal guardian's acceptance of the main Stripe service agreement.
34
+ attr_accessor :account
35
+
36
+ def initialize(account: nil)
37
+ @account = account
38
+ end
39
+ end
40
+
41
+ class Address < Stripe::RequestParams
42
+ # City, district, suburb, town, or village.
43
+ attr_accessor :city
44
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
45
+ attr_accessor :country
46
+ # Address line 1 (e.g., street, PO Box, or company name).
47
+ attr_accessor :line1
48
+ # Address line 2 (e.g., apartment, suite, unit, or building).
49
+ attr_accessor :line2
50
+ # ZIP or postal code.
51
+ attr_accessor :postal_code
52
+ # State, county, province, or region.
53
+ attr_accessor :state
54
+
55
+ def initialize(
56
+ city: nil,
57
+ country: nil,
58
+ line1: nil,
59
+ line2: nil,
60
+ postal_code: nil,
61
+ state: nil
62
+ )
63
+ @city = city
64
+ @country = country
65
+ @line1 = line1
66
+ @line2 = line2
67
+ @postal_code = postal_code
68
+ @state = state
69
+ end
70
+ end
71
+
72
+ class AddressKana < Stripe::RequestParams
73
+ # City or ward.
74
+ attr_accessor :city
75
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
76
+ attr_accessor :country
77
+ # Block or building number.
78
+ attr_accessor :line1
79
+ # Building details.
80
+ attr_accessor :line2
81
+ # Postal code.
82
+ attr_accessor :postal_code
83
+ # Prefecture.
84
+ attr_accessor :state
85
+ # Town or cho-me.
86
+ attr_accessor :town
87
+
88
+ def initialize(
89
+ city: nil,
90
+ country: nil,
91
+ line1: nil,
92
+ line2: nil,
93
+ postal_code: nil,
94
+ state: nil,
95
+ town: nil
96
+ )
97
+ @city = city
98
+ @country = country
99
+ @line1 = line1
100
+ @line2 = line2
101
+ @postal_code = postal_code
102
+ @state = state
103
+ @town = town
104
+ end
105
+ end
106
+
107
+ class AddressKanji < Stripe::RequestParams
108
+ # City or ward.
109
+ attr_accessor :city
110
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
111
+ attr_accessor :country
112
+ # Block or building number.
113
+ attr_accessor :line1
114
+ # Building details.
115
+ attr_accessor :line2
116
+ # Postal code.
117
+ attr_accessor :postal_code
118
+ # Prefecture.
119
+ attr_accessor :state
120
+ # Town or cho-me.
121
+ attr_accessor :town
122
+
123
+ def initialize(
124
+ city: nil,
125
+ country: nil,
126
+ line1: nil,
127
+ line2: nil,
128
+ postal_code: nil,
129
+ state: nil,
130
+ town: nil
131
+ )
132
+ @city = city
133
+ @country = country
134
+ @line1 = line1
135
+ @line2 = line2
136
+ @postal_code = postal_code
137
+ @state = state
138
+ @town = town
139
+ end
140
+ end
141
+
142
+ class Dob < Stripe::RequestParams
143
+ # The day of birth, between 1 and 31.
144
+ attr_accessor :day
145
+ # The month of birth, between 1 and 12.
146
+ attr_accessor :month
147
+ # The four-digit year of birth.
148
+ attr_accessor :year
149
+
150
+ def initialize(day: nil, month: nil, year: nil)
151
+ @day = day
152
+ @month = month
153
+ @year = year
154
+ end
155
+ end
156
+
157
+ class Documents < Stripe::RequestParams
158
+ class CompanyAuthorization < Stripe::RequestParams
159
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
160
+ attr_accessor :files
161
+
162
+ def initialize(files: nil)
163
+ @files = files
164
+ end
165
+ end
166
+
167
+ class Passport < Stripe::RequestParams
168
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
169
+ attr_accessor :files
170
+
171
+ def initialize(files: nil)
172
+ @files = files
173
+ end
174
+ end
175
+
176
+ class Visa < Stripe::RequestParams
177
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
178
+ attr_accessor :files
179
+
180
+ def initialize(files: nil)
181
+ @files = files
182
+ end
183
+ end
184
+ # One or more documents that demonstrate proof that this person is authorized to represent the company.
185
+ attr_accessor :company_authorization
186
+ # One or more documents showing the person's passport page with photo and personal data.
187
+ attr_accessor :passport
188
+ # One or more documents showing the person's visa required for living in the country where they are residing.
189
+ attr_accessor :visa
190
+
191
+ def initialize(company_authorization: nil, passport: nil, visa: nil)
192
+ @company_authorization = company_authorization
193
+ @passport = passport
194
+ @visa = visa
195
+ end
196
+ end
197
+
198
+ class RegisteredAddress < Stripe::RequestParams
199
+ # City, district, suburb, town, or village.
200
+ attr_accessor :city
201
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
202
+ attr_accessor :country
203
+ # Address line 1 (e.g., street, PO Box, or company name).
204
+ attr_accessor :line1
205
+ # Address line 2 (e.g., apartment, suite, unit, or building).
206
+ attr_accessor :line2
207
+ # ZIP or postal code.
208
+ attr_accessor :postal_code
209
+ # State, county, province, or region.
210
+ attr_accessor :state
211
+
212
+ def initialize(
213
+ city: nil,
214
+ country: nil,
215
+ line1: nil,
216
+ line2: nil,
217
+ postal_code: nil,
218
+ state: nil
219
+ )
220
+ @city = city
221
+ @country = country
222
+ @line1 = line1
223
+ @line2 = line2
224
+ @postal_code = postal_code
225
+ @state = state
226
+ end
227
+ end
228
+
229
+ class Relationship < Stripe::RequestParams
230
+ # Whether the person is the authorizer of the account's representative.
231
+ attr_accessor :authorizer
232
+ # Whether the person is a director of the account's legal entity. Directors are typically members of the governing board of the company, or responsible for ensuring the company meets its regulatory obligations.
233
+ attr_accessor :director
234
+ # Whether the person has significant responsibility to control, manage, or direct the organization.
235
+ attr_accessor :executive
236
+ # Whether the person is the legal guardian of the account's representative.
237
+ attr_accessor :legal_guardian
238
+ # Whether the person is an owner of the account’s legal entity.
239
+ attr_accessor :owner
240
+ # The percent owned by the person of the account's legal entity.
241
+ attr_accessor :percent_ownership
242
+ # Whether the person is authorized as the primary representative of the account. This is the person nominated by the business to provide information about themselves, and general information about the account. There can only be one representative at any given time. At the time the account is created, this person should be set to the person responsible for opening the account.
243
+ attr_accessor :representative
244
+ # The person's title (e.g., CEO, Support Engineer).
245
+ attr_accessor :title
246
+
247
+ def initialize(
248
+ authorizer: nil,
249
+ director: nil,
250
+ executive: nil,
251
+ legal_guardian: nil,
252
+ owner: nil,
253
+ percent_ownership: nil,
254
+ representative: nil,
255
+ title: nil
256
+ )
257
+ @authorizer = authorizer
258
+ @director = director
259
+ @executive = executive
260
+ @legal_guardian = legal_guardian
261
+ @owner = owner
262
+ @percent_ownership = percent_ownership
263
+ @representative = representative
264
+ @title = title
265
+ end
266
+ end
267
+
268
+ class UsCfpbData < Stripe::RequestParams
269
+ class EthnicityDetails < Stripe::RequestParams
270
+ # The persons ethnicity
271
+ attr_accessor :ethnicity
272
+ # Please specify your origin, when other is selected.
273
+ attr_accessor :ethnicity_other
274
+
275
+ def initialize(ethnicity: nil, ethnicity_other: nil)
276
+ @ethnicity = ethnicity
277
+ @ethnicity_other = ethnicity_other
278
+ end
279
+ end
280
+
281
+ class RaceDetails < Stripe::RequestParams
282
+ # The persons race.
283
+ attr_accessor :race
284
+ # Please specify your race, when other is selected.
285
+ attr_accessor :race_other
286
+
287
+ def initialize(race: nil, race_other: nil)
288
+ @race = race
289
+ @race_other = race_other
290
+ end
291
+ end
292
+ # The persons ethnicity details
293
+ attr_accessor :ethnicity_details
294
+ # The persons race details
295
+ attr_accessor :race_details
296
+ # The persons self-identified gender
297
+ attr_accessor :self_identified_gender
298
+
299
+ def initialize(ethnicity_details: nil, race_details: nil, self_identified_gender: nil)
300
+ @ethnicity_details = ethnicity_details
301
+ @race_details = race_details
302
+ @self_identified_gender = self_identified_gender
303
+ end
304
+ end
305
+
306
+ class Verification < Stripe::RequestParams
307
+ class AdditionalDocument < Stripe::RequestParams
308
+ # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
309
+ attr_accessor :back
310
+ # The front of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
311
+ attr_accessor :front
312
+
313
+ def initialize(back: nil, front: nil)
314
+ @back = back
315
+ @front = front
316
+ end
317
+ end
318
+
319
+ class Document < Stripe::RequestParams
320
+ # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
321
+ attr_accessor :back
322
+ # The front of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
323
+ attr_accessor :front
324
+
325
+ def initialize(back: nil, front: nil)
326
+ @back = back
327
+ @front = front
328
+ end
329
+ end
330
+ # A document showing address, either a passport, local ID card, or utility bill from a well-known utility company.
331
+ attr_accessor :additional_document
332
+ # An identifying document, either a passport or local ID card.
333
+ attr_accessor :document
334
+
335
+ def initialize(additional_document: nil, document: nil)
336
+ @additional_document = additional_document
337
+ @document = document
338
+ end
339
+ end
340
+ # Details on the legal guardian's or authorizer's acceptance of the required Stripe agreements.
341
+ attr_accessor :additional_tos_acceptances
342
+ # The person's address.
343
+ attr_accessor :address
344
+ # The Kana variation of the person's address (Japan only).
345
+ attr_accessor :address_kana
346
+ # The Kanji variation of the person's address (Japan only).
347
+ attr_accessor :address_kanji
348
+ # The person's date of birth.
349
+ attr_accessor :dob
350
+ # Documents that may be submitted to satisfy various informational requests.
351
+ attr_accessor :documents
352
+ # The person's email address.
353
+ attr_accessor :email
354
+ # Specifies which fields in the response should be expanded.
355
+ attr_accessor :expand
356
+ # The person's first name.
357
+ attr_accessor :first_name
358
+ # The Kana variation of the person's first name (Japan only).
359
+ attr_accessor :first_name_kana
360
+ # The Kanji variation of the person's first name (Japan only).
361
+ attr_accessor :first_name_kanji
362
+ # A list of alternate names or aliases that the person is known by.
363
+ attr_accessor :full_name_aliases
364
+ # The person's gender (International regulations require either "male" or "female").
365
+ attr_accessor :gender
366
+ # The person's ID number, as appropriate for their country. For example, a social security number in the U.S., social insurance number in Canada, etc. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https://docs.stripe.com/js/tokens/create_token?type=pii).
367
+ attr_accessor :id_number
368
+ # The person's secondary ID number, as appropriate for their country, will be used for enhanced verification checks. In Thailand, this would be the laser code found on the back of an ID card. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https://docs.stripe.com/js/tokens/create_token?type=pii).
369
+ attr_accessor :id_number_secondary
370
+ # The person's last name.
371
+ attr_accessor :last_name
372
+ # The Kana variation of the person's last name (Japan only).
373
+ attr_accessor :last_name_kana
374
+ # The Kanji variation of the person's last name (Japan only).
375
+ attr_accessor :last_name_kanji
376
+ # The person's maiden name.
377
+ attr_accessor :maiden_name
378
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
379
+ attr_accessor :metadata
380
+ # The country where the person is a national. Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)), or "XX" if unavailable.
381
+ attr_accessor :nationality
382
+ # A [person token](https://docs.stripe.com/connect/account-tokens), used to securely provide details to the person.
383
+ attr_accessor :person_token
384
+ # The person's phone number.
385
+ attr_accessor :phone
386
+ # Indicates if the person or any of their representatives, family members, or other closely related persons, declares that they hold or have held an important public job or function, in any jurisdiction.
387
+ attr_accessor :political_exposure
388
+ # The person's registered address.
389
+ attr_accessor :registered_address
390
+ # The relationship that this person has with the account's legal entity.
391
+ attr_accessor :relationship
392
+ # The last four digits of the person's Social Security number (U.S. only).
393
+ attr_accessor :ssn_last_4
394
+ # Demographic data related to the person.
395
+ attr_accessor :us_cfpb_data
396
+ # The person's verification status.
397
+ attr_accessor :verification
398
+
399
+ def initialize(
400
+ additional_tos_acceptances: nil,
401
+ address: nil,
402
+ address_kana: nil,
403
+ address_kanji: nil,
404
+ dob: nil,
405
+ documents: nil,
406
+ email: nil,
407
+ expand: nil,
408
+ first_name: nil,
409
+ first_name_kana: nil,
410
+ first_name_kanji: nil,
411
+ full_name_aliases: nil,
412
+ gender: nil,
413
+ id_number: nil,
414
+ id_number_secondary: nil,
415
+ last_name: nil,
416
+ last_name_kana: nil,
417
+ last_name_kanji: nil,
418
+ maiden_name: nil,
419
+ metadata: nil,
420
+ nationality: nil,
421
+ person_token: nil,
422
+ phone: nil,
423
+ political_exposure: nil,
424
+ registered_address: nil,
425
+ relationship: nil,
426
+ ssn_last_4: nil,
427
+ us_cfpb_data: nil,
428
+ verification: nil
429
+ )
430
+ @additional_tos_acceptances = additional_tos_acceptances
431
+ @address = address
432
+ @address_kana = address_kana
433
+ @address_kanji = address_kanji
434
+ @dob = dob
435
+ @documents = documents
436
+ @email = email
437
+ @expand = expand
438
+ @first_name = first_name
439
+ @first_name_kana = first_name_kana
440
+ @first_name_kanji = first_name_kanji
441
+ @full_name_aliases = full_name_aliases
442
+ @gender = gender
443
+ @id_number = id_number
444
+ @id_number_secondary = id_number_secondary
445
+ @last_name = last_name
446
+ @last_name_kana = last_name_kana
447
+ @last_name_kanji = last_name_kanji
448
+ @maiden_name = maiden_name
449
+ @metadata = metadata
450
+ @nationality = nationality
451
+ @person_token = person_token
452
+ @phone = phone
453
+ @political_exposure = political_exposure
454
+ @registered_address = registered_address
455
+ @relationship = relationship
456
+ @ssn_last_4 = ssn_last_4
457
+ @us_cfpb_data = us_cfpb_data
458
+ @verification = verification
459
+ end
460
+ end
461
+
462
+ class ListParams < Stripe::RequestParams
463
+ class Relationship < Stripe::RequestParams
464
+ # A filter on the list of people returned based on whether these people are authorizers of the account's representative.
465
+ attr_accessor :authorizer
466
+ # A filter on the list of people returned based on whether these people are directors of the account's company.
467
+ attr_accessor :director
468
+ # A filter on the list of people returned based on whether these people are executives of the account's company.
469
+ attr_accessor :executive
470
+ # A filter on the list of people returned based on whether these people are legal guardians of the account's representative.
471
+ attr_accessor :legal_guardian
472
+ # A filter on the list of people returned based on whether these people are owners of the account's company.
473
+ attr_accessor :owner
474
+ # A filter on the list of people returned based on whether these people are the representative of the account's company.
475
+ attr_accessor :representative
476
+
477
+ def initialize(
478
+ authorizer: nil,
479
+ director: nil,
480
+ executive: nil,
481
+ legal_guardian: nil,
482
+ owner: nil,
483
+ representative: nil
484
+ )
485
+ @authorizer = authorizer
486
+ @director = director
487
+ @executive = executive
488
+ @legal_guardian = legal_guardian
489
+ @owner = owner
490
+ @representative = representative
491
+ end
492
+ end
493
+ # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
494
+ attr_accessor :ending_before
495
+ # Specifies which fields in the response should be expanded.
496
+ attr_accessor :expand
497
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
498
+ attr_accessor :limit
499
+ # Filters on the list of people returned based on the person's relationship to the account's company.
500
+ attr_accessor :relationship
501
+ # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
502
+ attr_accessor :starting_after
503
+
504
+ def initialize(
505
+ ending_before: nil,
506
+ expand: nil,
507
+ limit: nil,
508
+ relationship: nil,
509
+ starting_after: nil
510
+ )
511
+ @ending_before = ending_before
512
+ @expand = expand
513
+ @limit = limit
514
+ @relationship = relationship
515
+ @starting_after = starting_after
516
+ end
517
+ end
518
+
519
+ class CreateParams < Stripe::RequestParams
520
+ class AdditionalTosAcceptances < Stripe::RequestParams
521
+ class Account < Stripe::RequestParams
522
+ # The Unix timestamp marking when the account representative accepted the service agreement.
523
+ attr_accessor :date
524
+ # The IP address from which the account representative accepted the service agreement.
525
+ attr_accessor :ip
526
+ # The user agent of the browser from which the account representative accepted the service agreement.
527
+ attr_accessor :user_agent
528
+
529
+ def initialize(date: nil, ip: nil, user_agent: nil)
530
+ @date = date
531
+ @ip = ip
532
+ @user_agent = user_agent
533
+ end
534
+ end
535
+ # Details on the legal guardian's acceptance of the main Stripe service agreement.
536
+ attr_accessor :account
537
+
538
+ def initialize(account: nil)
539
+ @account = account
540
+ end
541
+ end
542
+
543
+ class Address < Stripe::RequestParams
544
+ # City, district, suburb, town, or village.
545
+ attr_accessor :city
546
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
547
+ attr_accessor :country
548
+ # Address line 1 (e.g., street, PO Box, or company name).
549
+ attr_accessor :line1
550
+ # Address line 2 (e.g., apartment, suite, unit, or building).
551
+ attr_accessor :line2
552
+ # ZIP or postal code.
553
+ attr_accessor :postal_code
554
+ # State, county, province, or region.
555
+ attr_accessor :state
556
+
557
+ def initialize(
558
+ city: nil,
559
+ country: nil,
560
+ line1: nil,
561
+ line2: nil,
562
+ postal_code: nil,
563
+ state: nil
564
+ )
565
+ @city = city
566
+ @country = country
567
+ @line1 = line1
568
+ @line2 = line2
569
+ @postal_code = postal_code
570
+ @state = state
571
+ end
572
+ end
573
+
574
+ class AddressKana < Stripe::RequestParams
575
+ # City or ward.
576
+ attr_accessor :city
577
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
578
+ attr_accessor :country
579
+ # Block or building number.
580
+ attr_accessor :line1
581
+ # Building details.
582
+ attr_accessor :line2
583
+ # Postal code.
584
+ attr_accessor :postal_code
585
+ # Prefecture.
586
+ attr_accessor :state
587
+ # Town or cho-me.
588
+ attr_accessor :town
589
+
590
+ def initialize(
591
+ city: nil,
592
+ country: nil,
593
+ line1: nil,
594
+ line2: nil,
595
+ postal_code: nil,
596
+ state: nil,
597
+ town: nil
598
+ )
599
+ @city = city
600
+ @country = country
601
+ @line1 = line1
602
+ @line2 = line2
603
+ @postal_code = postal_code
604
+ @state = state
605
+ @town = town
606
+ end
607
+ end
608
+
609
+ class AddressKanji < Stripe::RequestParams
610
+ # City or ward.
611
+ attr_accessor :city
612
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
613
+ attr_accessor :country
614
+ # Block or building number.
615
+ attr_accessor :line1
616
+ # Building details.
617
+ attr_accessor :line2
618
+ # Postal code.
619
+ attr_accessor :postal_code
620
+ # Prefecture.
621
+ attr_accessor :state
622
+ # Town or cho-me.
623
+ attr_accessor :town
624
+
625
+ def initialize(
626
+ city: nil,
627
+ country: nil,
628
+ line1: nil,
629
+ line2: nil,
630
+ postal_code: nil,
631
+ state: nil,
632
+ town: nil
633
+ )
634
+ @city = city
635
+ @country = country
636
+ @line1 = line1
637
+ @line2 = line2
638
+ @postal_code = postal_code
639
+ @state = state
640
+ @town = town
641
+ end
642
+ end
643
+
644
+ class Dob < Stripe::RequestParams
645
+ # The day of birth, between 1 and 31.
646
+ attr_accessor :day
647
+ # The month of birth, between 1 and 12.
648
+ attr_accessor :month
649
+ # The four-digit year of birth.
650
+ attr_accessor :year
651
+
652
+ def initialize(day: nil, month: nil, year: nil)
653
+ @day = day
654
+ @month = month
655
+ @year = year
656
+ end
657
+ end
658
+
659
+ class Documents < Stripe::RequestParams
660
+ class CompanyAuthorization < Stripe::RequestParams
661
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
662
+ attr_accessor :files
663
+
664
+ def initialize(files: nil)
665
+ @files = files
666
+ end
667
+ end
668
+
669
+ class Passport < Stripe::RequestParams
670
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
671
+ attr_accessor :files
672
+
673
+ def initialize(files: nil)
674
+ @files = files
675
+ end
676
+ end
677
+
678
+ class Visa < Stripe::RequestParams
679
+ # One or more document ids returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `account_requirement`.
680
+ attr_accessor :files
681
+
682
+ def initialize(files: nil)
683
+ @files = files
684
+ end
685
+ end
686
+ # One or more documents that demonstrate proof that this person is authorized to represent the company.
687
+ attr_accessor :company_authorization
688
+ # One or more documents showing the person's passport page with photo and personal data.
689
+ attr_accessor :passport
690
+ # One or more documents showing the person's visa required for living in the country where they are residing.
691
+ attr_accessor :visa
692
+
693
+ def initialize(company_authorization: nil, passport: nil, visa: nil)
694
+ @company_authorization = company_authorization
695
+ @passport = passport
696
+ @visa = visa
697
+ end
698
+ end
699
+
700
+ class RegisteredAddress < Stripe::RequestParams
701
+ # City, district, suburb, town, or village.
702
+ attr_accessor :city
703
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
704
+ attr_accessor :country
705
+ # Address line 1 (e.g., street, PO Box, or company name).
706
+ attr_accessor :line1
707
+ # Address line 2 (e.g., apartment, suite, unit, or building).
708
+ attr_accessor :line2
709
+ # ZIP or postal code.
710
+ attr_accessor :postal_code
711
+ # State, county, province, or region.
712
+ attr_accessor :state
713
+
714
+ def initialize(
715
+ city: nil,
716
+ country: nil,
717
+ line1: nil,
718
+ line2: nil,
719
+ postal_code: nil,
720
+ state: nil
721
+ )
722
+ @city = city
723
+ @country = country
724
+ @line1 = line1
725
+ @line2 = line2
726
+ @postal_code = postal_code
727
+ @state = state
728
+ end
729
+ end
730
+
731
+ class Relationship < Stripe::RequestParams
732
+ # Whether the person is the authorizer of the account's representative.
733
+ attr_accessor :authorizer
734
+ # Whether the person is a director of the account's legal entity. Directors are typically members of the governing board of the company, or responsible for ensuring the company meets its regulatory obligations.
735
+ attr_accessor :director
736
+ # Whether the person has significant responsibility to control, manage, or direct the organization.
737
+ attr_accessor :executive
738
+ # Whether the person is the legal guardian of the account's representative.
739
+ attr_accessor :legal_guardian
740
+ # Whether the person is an owner of the account’s legal entity.
741
+ attr_accessor :owner
742
+ # The percent owned by the person of the account's legal entity.
743
+ attr_accessor :percent_ownership
744
+ # Whether the person is authorized as the primary representative of the account. This is the person nominated by the business to provide information about themselves, and general information about the account. There can only be one representative at any given time. At the time the account is created, this person should be set to the person responsible for opening the account.
745
+ attr_accessor :representative
746
+ # The person's title (e.g., CEO, Support Engineer).
747
+ attr_accessor :title
748
+
749
+ def initialize(
750
+ authorizer: nil,
751
+ director: nil,
752
+ executive: nil,
753
+ legal_guardian: nil,
754
+ owner: nil,
755
+ percent_ownership: nil,
756
+ representative: nil,
757
+ title: nil
758
+ )
759
+ @authorizer = authorizer
760
+ @director = director
761
+ @executive = executive
762
+ @legal_guardian = legal_guardian
763
+ @owner = owner
764
+ @percent_ownership = percent_ownership
765
+ @representative = representative
766
+ @title = title
767
+ end
768
+ end
769
+
770
+ class UsCfpbData < Stripe::RequestParams
771
+ class EthnicityDetails < Stripe::RequestParams
772
+ # The persons ethnicity
773
+ attr_accessor :ethnicity
774
+ # Please specify your origin, when other is selected.
775
+ attr_accessor :ethnicity_other
776
+
777
+ def initialize(ethnicity: nil, ethnicity_other: nil)
778
+ @ethnicity = ethnicity
779
+ @ethnicity_other = ethnicity_other
780
+ end
781
+ end
782
+
783
+ class RaceDetails < Stripe::RequestParams
784
+ # The persons race.
785
+ attr_accessor :race
786
+ # Please specify your race, when other is selected.
787
+ attr_accessor :race_other
788
+
789
+ def initialize(race: nil, race_other: nil)
790
+ @race = race
791
+ @race_other = race_other
792
+ end
793
+ end
794
+ # The persons ethnicity details
795
+ attr_accessor :ethnicity_details
796
+ # The persons race details
797
+ attr_accessor :race_details
798
+ # The persons self-identified gender
799
+ attr_accessor :self_identified_gender
800
+
801
+ def initialize(ethnicity_details: nil, race_details: nil, self_identified_gender: nil)
802
+ @ethnicity_details = ethnicity_details
803
+ @race_details = race_details
804
+ @self_identified_gender = self_identified_gender
805
+ end
806
+ end
807
+
808
+ class Verification < Stripe::RequestParams
809
+ class AdditionalDocument < Stripe::RequestParams
810
+ # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
811
+ attr_accessor :back
812
+ # The front of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
813
+ attr_accessor :front
814
+
815
+ def initialize(back: nil, front: nil)
816
+ @back = back
817
+ @front = front
818
+ end
819
+ end
820
+
821
+ class Document < Stripe::RequestParams
822
+ # The back of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
823
+ attr_accessor :back
824
+ # The front of an ID returned by a [file upload](https://stripe.com/docs/api#create_file) with a `purpose` value of `identity_document`. The uploaded file needs to be a color image (smaller than 8,000px by 8,000px), in JPG, PNG, or PDF format, and less than 10 MB in size.
825
+ attr_accessor :front
826
+
827
+ def initialize(back: nil, front: nil)
828
+ @back = back
829
+ @front = front
830
+ end
831
+ end
832
+ # A document showing address, either a passport, local ID card, or utility bill from a well-known utility company.
833
+ attr_accessor :additional_document
834
+ # An identifying document, either a passport or local ID card.
835
+ attr_accessor :document
836
+
837
+ def initialize(additional_document: nil, document: nil)
838
+ @additional_document = additional_document
839
+ @document = document
840
+ end
841
+ end
842
+ # Details on the legal guardian's or authorizer's acceptance of the required Stripe agreements.
843
+ attr_accessor :additional_tos_acceptances
844
+ # The person's address.
845
+ attr_accessor :address
846
+ # The Kana variation of the person's address (Japan only).
847
+ attr_accessor :address_kana
848
+ # The Kanji variation of the person's address (Japan only).
849
+ attr_accessor :address_kanji
850
+ # The person's date of birth.
851
+ attr_accessor :dob
852
+ # Documents that may be submitted to satisfy various informational requests.
853
+ attr_accessor :documents
854
+ # The person's email address.
855
+ attr_accessor :email
856
+ # Specifies which fields in the response should be expanded.
857
+ attr_accessor :expand
858
+ # The person's first name.
859
+ attr_accessor :first_name
860
+ # The Kana variation of the person's first name (Japan only).
861
+ attr_accessor :first_name_kana
862
+ # The Kanji variation of the person's first name (Japan only).
863
+ attr_accessor :first_name_kanji
864
+ # A list of alternate names or aliases that the person is known by.
865
+ attr_accessor :full_name_aliases
866
+ # The person's gender (International regulations require either "male" or "female").
867
+ attr_accessor :gender
868
+ # The person's ID number, as appropriate for their country. For example, a social security number in the U.S., social insurance number in Canada, etc. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https://docs.stripe.com/js/tokens/create_token?type=pii).
869
+ attr_accessor :id_number
870
+ # The person's secondary ID number, as appropriate for their country, will be used for enhanced verification checks. In Thailand, this would be the laser code found on the back of an ID card. Instead of the number itself, you can also provide a [PII token provided by Stripe.js](https://docs.stripe.com/js/tokens/create_token?type=pii).
871
+ attr_accessor :id_number_secondary
872
+ # The person's last name.
873
+ attr_accessor :last_name
874
+ # The Kana variation of the person's last name (Japan only).
875
+ attr_accessor :last_name_kana
876
+ # The Kanji variation of the person's last name (Japan only).
877
+ attr_accessor :last_name_kanji
878
+ # The person's maiden name.
879
+ attr_accessor :maiden_name
880
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
881
+ attr_accessor :metadata
882
+ # The country where the person is a national. Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)), or "XX" if unavailable.
883
+ attr_accessor :nationality
884
+ # A [person token](https://docs.stripe.com/connect/account-tokens), used to securely provide details to the person.
885
+ attr_accessor :person_token
886
+ # The person's phone number.
887
+ attr_accessor :phone
888
+ # Indicates if the person or any of their representatives, family members, or other closely related persons, declares that they hold or have held an important public job or function, in any jurisdiction.
889
+ attr_accessor :political_exposure
890
+ # The person's registered address.
891
+ attr_accessor :registered_address
892
+ # The relationship that this person has with the account's legal entity.
893
+ attr_accessor :relationship
894
+ # The last four digits of the person's Social Security number (U.S. only).
895
+ attr_accessor :ssn_last_4
896
+ # Demographic data related to the person.
897
+ attr_accessor :us_cfpb_data
898
+ # The person's verification status.
899
+ attr_accessor :verification
900
+
901
+ def initialize(
902
+ additional_tos_acceptances: nil,
903
+ address: nil,
904
+ address_kana: nil,
905
+ address_kanji: nil,
906
+ dob: nil,
907
+ documents: nil,
908
+ email: nil,
909
+ expand: nil,
910
+ first_name: nil,
911
+ first_name_kana: nil,
912
+ first_name_kanji: nil,
913
+ full_name_aliases: nil,
914
+ gender: nil,
915
+ id_number: nil,
916
+ id_number_secondary: nil,
917
+ last_name: nil,
918
+ last_name_kana: nil,
919
+ last_name_kanji: nil,
920
+ maiden_name: nil,
921
+ metadata: nil,
922
+ nationality: nil,
923
+ person_token: nil,
924
+ phone: nil,
925
+ political_exposure: nil,
926
+ registered_address: nil,
927
+ relationship: nil,
928
+ ssn_last_4: nil,
929
+ us_cfpb_data: nil,
930
+ verification: nil
931
+ )
932
+ @additional_tos_acceptances = additional_tos_acceptances
933
+ @address = address
934
+ @address_kana = address_kana
935
+ @address_kanji = address_kanji
936
+ @dob = dob
937
+ @documents = documents
938
+ @email = email
939
+ @expand = expand
940
+ @first_name = first_name
941
+ @first_name_kana = first_name_kana
942
+ @first_name_kanji = first_name_kanji
943
+ @full_name_aliases = full_name_aliases
944
+ @gender = gender
945
+ @id_number = id_number
946
+ @id_number_secondary = id_number_secondary
947
+ @last_name = last_name
948
+ @last_name_kana = last_name_kana
949
+ @last_name_kanji = last_name_kanji
950
+ @maiden_name = maiden_name
951
+ @metadata = metadata
952
+ @nationality = nationality
953
+ @person_token = person_token
954
+ @phone = phone
955
+ @political_exposure = political_exposure
956
+ @registered_address = registered_address
957
+ @relationship = relationship
958
+ @ssn_last_4 = ssn_last_4
959
+ @us_cfpb_data = us_cfpb_data
960
+ @verification = verification
961
+ end
962
+ end
963
+
964
+ # Creates a new person.
965
+ def create(account, params = {}, opts = {})
966
+ request(
967
+ method: :post,
968
+ path: format("/v1/accounts/%<account>s/persons", { account: CGI.escape(account) }),
969
+ params: params,
970
+ opts: opts,
971
+ base_address: :api
972
+ )
973
+ end
974
+
975
+ # Deletes an existing person's relationship to the account's legal entity. Any person with a relationship for an account can be deleted through the API, except if the person is the account_opener. If your integration is using the executive parameter, you cannot delete the only verified executive on file.
976
+ def delete(account, person, params = {}, opts = {})
977
+ request(
978
+ method: :delete,
979
+ path: format("/v1/accounts/%<account>s/persons/%<person>s", { account: CGI.escape(account), person: CGI.escape(person) }),
980
+ params: params,
981
+ opts: opts,
982
+ base_address: :api
983
+ )
984
+ end
985
+
986
+ # Returns a list of people associated with the account's legal entity. The people are returned sorted by creation date, with the most recent people appearing first.
987
+ def list(account, params = {}, opts = {})
988
+ request(
989
+ method: :get,
990
+ path: format("/v1/accounts/%<account>s/persons", { account: CGI.escape(account) }),
991
+ params: params,
992
+ opts: opts,
993
+ base_address: :api
994
+ )
995
+ end
996
+
997
+ # Retrieves an existing person.
998
+ def retrieve(account, person, params = {}, opts = {})
999
+ request(
1000
+ method: :get,
1001
+ path: format("/v1/accounts/%<account>s/persons/%<person>s", { account: CGI.escape(account), person: CGI.escape(person) }),
1002
+ params: params,
1003
+ opts: opts,
1004
+ base_address: :api
1005
+ )
1006
+ end
1007
+
1008
+ # Updates an existing person.
1009
+ def update(account, person, params = {}, opts = {})
1010
+ request(
1011
+ method: :post,
1012
+ path: format("/v1/accounts/%<account>s/persons/%<person>s", { account: CGI.escape(account), person: CGI.escape(person) }),
1013
+ params: params,
1014
+ opts: opts,
1015
+ base_address: :api
1016
+ )
1017
+ end
1018
+ end
1019
+ end