stripe 13.4.1 → 17.0.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 (861) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_operations/nested_resource.rb +35 -35
  3. data/lib/stripe/api_operations/request.rb +1 -0
  4. data/lib/stripe/api_operations/save.rb +2 -1
  5. data/lib/stripe/api_operations/singleton_save.rb +2 -1
  6. data/lib/stripe/api_requestor.rb +12 -4
  7. data/lib/stripe/api_resource.rb +13 -3
  8. data/lib/stripe/api_version.rb +2 -1
  9. data/lib/stripe/connection_manager.rb +1 -3
  10. data/lib/stripe/errors.rb +0 -7
  11. data/lib/stripe/event_types.rb +20 -5
  12. data/lib/stripe/events/unknown_event_notification.rb +19 -0
  13. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +115 -15
  14. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +93 -6
  15. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +44 -0
  16. data/lib/stripe/oauth.rb +1 -1
  17. data/lib/stripe/object_types.rb +11 -4
  18. data/lib/stripe/params/account_capability_list_params.rb +13 -0
  19. data/lib/stripe/params/account_capability_retrieve_params.rb +13 -0
  20. data/lib/stripe/params/account_capability_update_params.rb +18 -0
  21. data/lib/stripe/params/account_create_params.rb +2083 -0
  22. data/lib/stripe/params/account_delete_params.rb +6 -0
  23. data/lib/stripe/params/account_external_account_create_params.rb +134 -0
  24. data/lib/stripe/params/account_external_account_delete_params.rb +6 -0
  25. data/lib/stripe/params/account_external_account_list_params.rb +25 -0
  26. data/lib/stripe/params/account_external_account_retrieve_params.rb +13 -0
  27. data/lib/stripe/params/account_external_account_update_params.rb +91 -0
  28. data/lib/stripe/params/account_link_create_params.rb +52 -0
  29. data/lib/stripe/params/account_list_params.rb +42 -0
  30. data/lib/stripe/params/account_login_link_create_params.rb +13 -0
  31. data/lib/stripe/params/account_person_create_params.rb +435 -0
  32. data/lib/stripe/params/account_person_delete_params.rb +6 -0
  33. data/lib/stripe/params/account_person_list_params.rb +61 -0
  34. data/lib/stripe/params/account_person_retrieve_params.rb +13 -0
  35. data/lib/stripe/params/account_person_update_params.rb +435 -0
  36. data/lib/stripe/params/account_persons_params.rb +61 -0
  37. data/lib/stripe/params/account_reject_params.rb +16 -0
  38. data/lib/stripe/params/account_retrieve_current_params.rb +13 -0
  39. data/lib/stripe/params/account_retrieve_params.rb +13 -0
  40. data/lib/stripe/params/account_session_create_params.rb +598 -0
  41. data/lib/stripe/params/account_update_params.rb +2030 -0
  42. data/lib/stripe/params/apple_pay_domain_create_params.rb +16 -0
  43. data/lib/stripe/params/apple_pay_domain_delete_params.rb +6 -0
  44. data/lib/stripe/params/apple_pay_domain_list_params.rb +31 -0
  45. data/lib/stripe/params/apple_pay_domain_retrieve_params.rb +13 -0
  46. data/lib/stripe/params/application_fee_list_params.rb +52 -0
  47. data/lib/stripe/params/application_fee_refund_create_params.rb +19 -0
  48. data/lib/stripe/params/application_fee_refund_list_params.rb +22 -0
  49. data/lib/stripe/params/application_fee_refund_retrieve_params.rb +13 -0
  50. data/lib/stripe/params/application_fee_refund_update_params.rb +16 -0
  51. data/lib/stripe/params/application_fee_retrieve_params.rb +13 -0
  52. data/lib/stripe/params/apps/secret_create_params.rb +38 -0
  53. data/lib/stripe/params/apps/secret_delete_where_params.rb +32 -0
  54. data/lib/stripe/params/apps/secret_find_params.rb +32 -0
  55. data/lib/stripe/params/apps/secret_list_params.rb +38 -0
  56. data/lib/stripe/params/balance_retrieve_params.rb +13 -0
  57. data/lib/stripe/params/balance_settings_retrieve_params.rb +13 -0
  58. data/lib/stripe/params/balance_settings_update_params.rb +67 -0
  59. data/lib/stripe/params/balance_transaction_list_params.rb +64 -0
  60. data/lib/stripe/params/balance_transaction_retrieve_params.rb +13 -0
  61. data/lib/stripe/params/billing/alert_activate_params.rb +15 -0
  62. data/lib/stripe/params/billing/alert_archive_params.rb +15 -0
  63. data/lib/stripe/params/billing/alert_create_params.rb +52 -0
  64. data/lib/stripe/params/billing/alert_deactivate_params.rb +15 -0
  65. data/lib/stripe/params/billing/alert_list_params.rb +37 -0
  66. data/lib/stripe/params/billing/alert_retrieve_params.rb +15 -0
  67. data/lib/stripe/params/billing/credit_balance_summary_retrieve_params.rb +54 -0
  68. data/lib/stripe/params/billing/credit_balance_transaction_list_params.rb +37 -0
  69. data/lib/stripe/params/billing/credit_balance_transaction_retrieve_params.rb +15 -0
  70. data/lib/stripe/params/billing/credit_grant_create_params.rb +103 -0
  71. data/lib/stripe/params/billing/credit_grant_expire_params.rb +15 -0
  72. data/lib/stripe/params/billing/credit_grant_list_params.rb +33 -0
  73. data/lib/stripe/params/billing/credit_grant_retrieve_params.rb +15 -0
  74. data/lib/stripe/params/billing/credit_grant_update_params.rb +21 -0
  75. data/lib/stripe/params/billing/credit_grant_void_grant_params.rb +15 -0
  76. data/lib/stripe/params/billing/meter_create_params.rb +70 -0
  77. data/lib/stripe/params/billing/meter_deactivate_params.rb +15 -0
  78. data/lib/stripe/params/billing/meter_event_adjustment_create_params.rb +32 -0
  79. data/lib/stripe/params/billing/meter_event_create_params.rb +27 -0
  80. data/lib/stripe/params/billing/meter_event_summary_list_params.rb +45 -0
  81. data/lib/stripe/params/billing/meter_list_params.rb +27 -0
  82. data/lib/stripe/params/billing/meter_reactivate_params.rb +15 -0
  83. data/lib/stripe/params/billing/meter_retrieve_params.rb +15 -0
  84. data/lib/stripe/params/billing/meter_update_params.rb +18 -0
  85. data/lib/stripe/params/billing_portal/configuration_create_params.rb +225 -0
  86. data/lib/stripe/params/billing_portal/configuration_list_params.rb +37 -0
  87. data/lib/stripe/params/billing_portal/configuration_retrieve_params.rb +15 -0
  88. data/lib/stripe/params/billing_portal/configuration_update_params.rb +231 -0
  89. data/lib/stripe/params/billing_portal/session_create_params.rb +179 -0
  90. data/lib/stripe/params/charge_capture_params.rb +57 -0
  91. data/lib/stripe/params/charge_create_params.rb +172 -0
  92. data/lib/stripe/params/charge_list_params.rb +60 -0
  93. data/lib/stripe/params/charge_retrieve_params.rb +13 -0
  94. data/lib/stripe/params/charge_search_params.rb +22 -0
  95. data/lib/stripe/params/charge_update_params.rb +102 -0
  96. data/lib/stripe/params/checkout/session_create_params.rb +2445 -0
  97. data/lib/stripe/params/checkout/session_expire_params.rb +15 -0
  98. data/lib/stripe/params/checkout/session_line_item_list_params.rb +24 -0
  99. data/lib/stripe/params/checkout/session_list_line_items_params.rb +24 -0
  100. data/lib/stripe/params/checkout/session_list_params.rb +83 -0
  101. data/lib/stripe/params/checkout/session_retrieve_params.rb +15 -0
  102. data/lib/stripe/params/checkout/session_update_params.rb +179 -0
  103. data/lib/stripe/params/climate/order_cancel_params.rb +15 -0
  104. data/lib/stripe/params/climate/order_create_params.rb +49 -0
  105. data/lib/stripe/params/climate/order_list_params.rb +24 -0
  106. data/lib/stripe/params/climate/order_retrieve_params.rb +15 -0
  107. data/lib/stripe/params/climate/order_update_params.rb +29 -0
  108. data/lib/stripe/params/climate/product_list_params.rb +24 -0
  109. data/lib/stripe/params/climate/product_retrieve_params.rb +15 -0
  110. data/lib/stripe/params/climate/supplier_list_params.rb +24 -0
  111. data/lib/stripe/params/climate/supplier_retrieve_params.rb +15 -0
  112. data/lib/stripe/params/confirmation_token_create_params.rb +650 -0
  113. data/lib/stripe/params/confirmation_token_retrieve_params.rb +13 -0
  114. data/lib/stripe/params/country_spec_list_params.rb +22 -0
  115. data/lib/stripe/params/country_spec_retrieve_params.rb +13 -0
  116. data/lib/stripe/params/coupon_create_params.rb +80 -0
  117. data/lib/stripe/params/coupon_delete_params.rb +6 -0
  118. data/lib/stripe/params/coupon_list_params.rb +42 -0
  119. data/lib/stripe/params/coupon_retrieve_params.rb +13 -0
  120. data/lib/stripe/params/coupon_update_params.rb +30 -0
  121. data/lib/stripe/params/credit_note_create_params.rb +144 -0
  122. data/lib/stripe/params/credit_note_line_item_list_params.rb +22 -0
  123. data/lib/stripe/params/credit_note_list_params.rb +56 -0
  124. data/lib/stripe/params/credit_note_list_preview_line_items_params.rb +156 -0
  125. data/lib/stripe/params/credit_note_preview_lines_list_params.rb +156 -0
  126. data/lib/stripe/params/credit_note_preview_params.rb +144 -0
  127. data/lib/stripe/params/credit_note_retrieve_params.rb +13 -0
  128. data/lib/stripe/params/credit_note_update_params.rb +19 -0
  129. data/lib/stripe/params/credit_note_void_credit_note_params.rb +13 -0
  130. data/lib/stripe/params/customer_balance_transaction_create_params.rb +25 -0
  131. data/lib/stripe/params/customer_balance_transaction_list_params.rb +22 -0
  132. data/lib/stripe/params/customer_balance_transaction_retrieve_params.rb +13 -0
  133. data/lib/stripe/params/customer_balance_transaction_update_params.rb +19 -0
  134. data/lib/stripe/params/customer_cash_balance_retrieve_params.rb +13 -0
  135. data/lib/stripe/params/customer_cash_balance_transaction_list_params.rb +22 -0
  136. data/lib/stripe/params/customer_cash_balance_transaction_retrieve_params.rb +13 -0
  137. data/lib/stripe/params/customer_cash_balance_update_params.rb +24 -0
  138. data/lib/stripe/params/customer_create_funding_instructions_params.rb +46 -0
  139. data/lib/stripe/params/customer_create_params.rb +259 -0
  140. data/lib/stripe/params/customer_delete_discount_params.rb +6 -0
  141. data/lib/stripe/params/customer_delete_params.rb +6 -0
  142. data/lib/stripe/params/customer_fund_cash_balance_params.rb +22 -0
  143. data/lib/stripe/params/customer_funding_instructions_create_params.rb +46 -0
  144. data/lib/stripe/params/customer_list_params.rb +56 -0
  145. data/lib/stripe/params/customer_list_payment_methods_params.rb +35 -0
  146. data/lib/stripe/params/customer_payment_method_list_params.rb +35 -0
  147. data/lib/stripe/params/customer_payment_method_retrieve_params.rb +13 -0
  148. data/lib/stripe/params/customer_payment_source_create_params.rb +22 -0
  149. data/lib/stripe/params/customer_payment_source_delete_params.rb +13 -0
  150. data/lib/stripe/params/customer_payment_source_list_params.rb +25 -0
  151. data/lib/stripe/params/customer_payment_source_retrieve_params.rb +13 -0
  152. data/lib/stripe/params/customer_payment_source_update_params.rb +114 -0
  153. data/lib/stripe/params/customer_payment_source_verify_params.rb +16 -0
  154. data/lib/stripe/params/customer_retrieve_params.rb +13 -0
  155. data/lib/stripe/params/customer_retrieve_payment_method_params.rb +13 -0
  156. data/lib/stripe/params/customer_search_params.rb +22 -0
  157. data/lib/stripe/params/customer_session_create_params.rb +100 -0
  158. data/lib/stripe/params/customer_tax_id_create_params.rb +19 -0
  159. data/lib/stripe/params/customer_tax_id_delete_params.rb +6 -0
  160. data/lib/stripe/params/customer_tax_id_list_params.rb +22 -0
  161. data/lib/stripe/params/customer_tax_id_retrieve_params.rb +13 -0
  162. data/lib/stripe/params/customer_update_params.rb +243 -0
  163. data/lib/stripe/params/dispute_close_params.rb +13 -0
  164. data/lib/stripe/params/dispute_list_params.rb +56 -0
  165. data/lib/stripe/params/dispute_retrieve_params.rb +13 -0
  166. data/lib/stripe/params/dispute_update_params.rb +308 -0
  167. data/lib/stripe/params/entitlements/active_entitlement_list_params.rb +33 -0
  168. data/lib/stripe/params/entitlements/active_entitlement_retrieve_params.rb +15 -0
  169. data/lib/stripe/params/entitlements/feature_create_params.rb +24 -0
  170. data/lib/stripe/params/entitlements/feature_list_params.rb +37 -0
  171. data/lib/stripe/params/entitlements/feature_retrieve_params.rb +15 -0
  172. data/lib/stripe/params/entitlements/feature_update_params.rb +24 -0
  173. data/lib/stripe/params/ephemeral_key_create_params.rb +31 -0
  174. data/lib/stripe/params/ephemeral_key_delete_params.rb +13 -0
  175. data/lib/stripe/params/event_list_params.rb +60 -0
  176. data/lib/stripe/params/event_retrieve_params.rb +13 -0
  177. data/lib/stripe/params/exchange_rate_list_params.rb +22 -0
  178. data/lib/stripe/params/exchange_rate_retrieve_params.rb +13 -0
  179. data/lib/stripe/params/file_create_params.rb +36 -0
  180. data/lib/stripe/params/file_link_create_params.rb +22 -0
  181. data/lib/stripe/params/file_link_list_params.rb +56 -0
  182. data/lib/stripe/params/file_link_retrieve_params.rb +13 -0
  183. data/lib/stripe/params/file_link_update_params.rb +19 -0
  184. data/lib/stripe/params/file_list_params.rb +52 -0
  185. data/lib/stripe/params/file_retrieve_params.rb +13 -0
  186. data/lib/stripe/params/financial_connections/account_disconnect_params.rb +15 -0
  187. data/lib/stripe/params/financial_connections/account_list_owners_params.rb +33 -0
  188. data/lib/stripe/params/financial_connections/account_list_params.rb +48 -0
  189. data/lib/stripe/params/financial_connections/account_owner_list_params.rb +33 -0
  190. data/lib/stripe/params/financial_connections/account_refresh_account_params.rb +18 -0
  191. data/lib/stripe/params/financial_connections/account_refresh_params.rb +18 -0
  192. data/lib/stripe/params/financial_connections/account_retrieve_params.rb +15 -0
  193. data/lib/stripe/params/financial_connections/account_subscribe_params.rb +18 -0
  194. data/lib/stripe/params/financial_connections/account_unsubscribe_params.rb +18 -0
  195. data/lib/stripe/params/financial_connections/session_create_params.rb +65 -0
  196. data/lib/stripe/params/financial_connections/session_retrieve_params.rb +15 -0
  197. data/lib/stripe/params/financial_connections/transaction_list_params.rb +67 -0
  198. data/lib/stripe/params/financial_connections/transaction_retrieve_params.rb +15 -0
  199. data/lib/stripe/params/forwarding/request_create_params.rb +59 -0
  200. data/lib/stripe/params/forwarding/request_list_params.rb +44 -0
  201. data/lib/stripe/params/forwarding/request_retrieve_params.rb +15 -0
  202. data/lib/stripe/params/identity/verification_report_list_params.rb +62 -0
  203. data/lib/stripe/params/identity/verification_report_retrieve_params.rb +15 -0
  204. data/lib/stripe/params/identity/verification_session_cancel_params.rb +15 -0
  205. data/lib/stripe/params/identity/verification_session_create_params.rb +107 -0
  206. data/lib/stripe/params/identity/verification_session_list_params.rb +62 -0
  207. data/lib/stripe/params/identity/verification_session_redact_params.rb +15 -0
  208. data/lib/stripe/params/identity/verification_session_retrieve_params.rb +15 -0
  209. data/lib/stripe/params/identity/verification_session_update_params.rb +69 -0
  210. data/lib/stripe/params/invoice_add_lines_params.rb +231 -0
  211. data/lib/stripe/params/invoice_attach_payment_params.rb +16 -0
  212. data/lib/stripe/params/invoice_create_params.rb +589 -0
  213. data/lib/stripe/params/invoice_create_preview_params.rb +993 -0
  214. data/lib/stripe/params/invoice_delete_params.rb +6 -0
  215. data/lib/stripe/params/invoice_finalize_invoice_params.rb +16 -0
  216. data/lib/stripe/params/invoice_item_create_params.rb +145 -0
  217. data/lib/stripe/params/invoice_item_delete_params.rb +6 -0
  218. data/lib/stripe/params/invoice_item_list_params.rb +60 -0
  219. data/lib/stripe/params/invoice_item_retrieve_params.rb +13 -0
  220. data/lib/stripe/params/invoice_item_update_params.rb +129 -0
  221. data/lib/stripe/params/invoice_line_item_list_params.rb +22 -0
  222. data/lib/stripe/params/invoice_line_item_update_params.rb +217 -0
  223. data/lib/stripe/params/invoice_list_params.rb +86 -0
  224. data/lib/stripe/params/invoice_mark_uncollectible_params.rb +13 -0
  225. data/lib/stripe/params/invoice_pay_params.rb +41 -0
  226. data/lib/stripe/params/invoice_payment_list_params.rb +50 -0
  227. data/lib/stripe/params/invoice_payment_retrieve_params.rb +13 -0
  228. data/lib/stripe/params/invoice_remove_lines_params.rb +30 -0
  229. data/lib/stripe/params/invoice_rendering_template_archive_params.rb +13 -0
  230. data/lib/stripe/params/invoice_rendering_template_list_params.rb +25 -0
  231. data/lib/stripe/params/invoice_rendering_template_retrieve_params.rb +16 -0
  232. data/lib/stripe/params/invoice_rendering_template_unarchive_params.rb +13 -0
  233. data/lib/stripe/params/invoice_retrieve_params.rb +13 -0
  234. data/lib/stripe/params/invoice_search_params.rb +22 -0
  235. data/lib/stripe/params/invoice_send_invoice_params.rb +13 -0
  236. data/lib/stripe/params/invoice_update_lines_params.rb +231 -0
  237. data/lib/stripe/params/invoice_update_params.rb +557 -0
  238. data/lib/stripe/params/invoice_void_invoice_params.rb +13 -0
  239. data/lib/stripe/params/issuing/authorization_approve_params.rb +21 -0
  240. data/lib/stripe/params/issuing/authorization_capture_params.rb +265 -0
  241. data/lib/stripe/params/issuing/authorization_create_params.rb +357 -0
  242. data/lib/stripe/params/issuing/authorization_decline_params.rb +18 -0
  243. data/lib/stripe/params/issuing/authorization_expire_params.rb +15 -0
  244. data/lib/stripe/params/issuing/authorization_finalize_amount_params.rb +143 -0
  245. data/lib/stripe/params/issuing/authorization_increment_params.rb +21 -0
  246. data/lib/stripe/params/issuing/authorization_list_params.rb +62 -0
  247. data/lib/stripe/params/issuing/authorization_respond_params.rb +18 -0
  248. data/lib/stripe/params/issuing/authorization_retrieve_params.rb +15 -0
  249. data/lib/stripe/params/issuing/authorization_reverse_params.rb +18 -0
  250. data/lib/stripe/params/issuing/authorization_update_params.rb +18 -0
  251. data/lib/stripe/params/issuing/card_create_params.rb +213 -0
  252. data/lib/stripe/params/issuing/card_deliver_card_params.rb +15 -0
  253. data/lib/stripe/params/issuing/card_fail_card_params.rb +15 -0
  254. data/lib/stripe/params/issuing/card_list_params.rb +78 -0
  255. data/lib/stripe/params/issuing/card_retrieve_params.rb +15 -0
  256. data/lib/stripe/params/issuing/card_return_card_params.rb +15 -0
  257. data/lib/stripe/params/issuing/card_ship_card_params.rb +15 -0
  258. data/lib/stripe/params/issuing/card_submit_card_params.rb +15 -0
  259. data/lib/stripe/params/issuing/card_update_params.rb +181 -0
  260. data/lib/stripe/params/issuing/cardholder_create_params.rb +238 -0
  261. data/lib/stripe/params/issuing/cardholder_list_params.rb +66 -0
  262. data/lib/stripe/params/issuing/cardholder_retrieve_params.rb +15 -0
  263. data/lib/stripe/params/issuing/cardholder_update_params.rb +230 -0
  264. data/lib/stripe/params/issuing/dispute_create_params.rb +297 -0
  265. data/lib/stripe/params/issuing/dispute_list_params.rb +58 -0
  266. data/lib/stripe/params/issuing/dispute_retrieve_params.rb +15 -0
  267. data/lib/stripe/params/issuing/dispute_submit_params.rb +18 -0
  268. data/lib/stripe/params/issuing/dispute_update_params.rb +275 -0
  269. data/lib/stripe/params/issuing/personalization_design_activate_params.rb +15 -0
  270. data/lib/stripe/params/issuing/personalization_design_create_params.rb +75 -0
  271. data/lib/stripe/params/issuing/personalization_design_deactivate_params.rb +15 -0
  272. data/lib/stripe/params/issuing/personalization_design_list_params.rb +52 -0
  273. data/lib/stripe/params/issuing/personalization_design_reject_params.rb +29 -0
  274. data/lib/stripe/params/issuing/personalization_design_retrieve_params.rb +15 -0
  275. data/lib/stripe/params/issuing/personalization_design_update_params.rb +75 -0
  276. data/lib/stripe/params/issuing/physical_bundle_list_params.rb +37 -0
  277. data/lib/stripe/params/issuing/physical_bundle_retrieve_params.rb +15 -0
  278. data/lib/stripe/params/issuing/token_list_params.rb +58 -0
  279. data/lib/stripe/params/issuing/token_retrieve_params.rb +15 -0
  280. data/lib/stripe/params/issuing/token_update_params.rb +18 -0
  281. data/lib/stripe/params/issuing/transaction_create_force_capture_params.rb +316 -0
  282. data/lib/stripe/params/issuing/transaction_create_unlinked_refund_params.rb +316 -0
  283. data/lib/stripe/params/issuing/transaction_list_params.rb +62 -0
  284. data/lib/stripe/params/issuing/transaction_refund_params.rb +18 -0
  285. data/lib/stripe/params/issuing/transaction_retrieve_params.rb +15 -0
  286. data/lib/stripe/params/issuing/transaction_update_params.rb +18 -0
  287. data/lib/stripe/params/mandate_retrieve_params.rb +13 -0
  288. data/lib/stripe/params/payment_intent_apply_customer_balance_params.rb +23 -0
  289. data/lib/stripe/params/payment_intent_cancel_params.rb +16 -0
  290. data/lib/stripe/params/payment_intent_capture_params.rb +54 -0
  291. data/lib/stripe/params/payment_intent_confirm_params.rb +2379 -0
  292. data/lib/stripe/params/payment_intent_create_params.rb +2480 -0
  293. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +48 -0
  294. data/lib/stripe/params/payment_intent_list_params.rb +52 -0
  295. data/lib/stripe/params/payment_intent_retrieve_params.rb +16 -0
  296. data/lib/stripe/params/payment_intent_search_params.rb +22 -0
  297. data/lib/stripe/params/payment_intent_update_params.rb +2353 -0
  298. data/lib/stripe/params/payment_intent_verify_microdeposits_params.rb +19 -0
  299. data/lib/stripe/params/payment_link_create_params.rb +776 -0
  300. data/lib/stripe/params/payment_link_line_item_list_params.rb +22 -0
  301. data/lib/stripe/params/payment_link_list_line_items_params.rb +22 -0
  302. data/lib/stripe/params/payment_link_list_params.rb +25 -0
  303. data/lib/stripe/params/payment_link_retrieve_params.rb +13 -0
  304. data/lib/stripe/params/payment_link_update_params.rb +564 -0
  305. data/lib/stripe/params/payment_method_attach_params.rb +16 -0
  306. data/lib/stripe/params/payment_method_configuration_create_params.rb +1135 -0
  307. data/lib/stripe/params/payment_method_configuration_list_params.rb +31 -0
  308. data/lib/stripe/params/payment_method_configuration_retrieve_params.rb +13 -0
  309. data/lib/stripe/params/payment_method_configuration_update_params.rb +1135 -0
  310. data/lib/stripe/params/payment_method_create_params.rb +583 -0
  311. data/lib/stripe/params/payment_method_detach_params.rb +13 -0
  312. data/lib/stripe/params/payment_method_domain_create_params.rb +19 -0
  313. data/lib/stripe/params/payment_method_domain_list_params.rb +35 -0
  314. data/lib/stripe/params/payment_method_domain_retrieve_params.rb +13 -0
  315. data/lib/stripe/params/payment_method_domain_update_params.rb +16 -0
  316. data/lib/stripe/params/payment_method_domain_validate_params.rb +13 -0
  317. data/lib/stripe/params/payment_method_list_params.rb +35 -0
  318. data/lib/stripe/params/payment_method_retrieve_params.rb +13 -0
  319. data/lib/stripe/params/payment_method_update_params.rb +120 -0
  320. data/lib/stripe/params/payout_cancel_params.rb +13 -0
  321. data/lib/stripe/params/payout_create_params.rb +51 -0
  322. data/lib/stripe/params/payout_list_params.rb +78 -0
  323. data/lib/stripe/params/payout_retrieve_params.rb +13 -0
  324. data/lib/stripe/params/payout_reverse_params.rb +16 -0
  325. data/lib/stripe/params/payout_update_params.rb +16 -0
  326. data/lib/stripe/params/plan_create_params.rb +158 -0
  327. data/lib/stripe/params/plan_delete_params.rb +6 -0
  328. data/lib/stripe/params/plan_list_params.rb +56 -0
  329. data/lib/stripe/params/plan_retrieve_params.rb +13 -0
  330. data/lib/stripe/params/plan_update_params.rb +35 -0
  331. data/lib/stripe/params/price_create_params.rb +278 -0
  332. data/lib/stripe/params/price_list_params.rb +87 -0
  333. data/lib/stripe/params/price_retrieve_params.rb +13 -0
  334. data/lib/stripe/params/price_search_params.rb +22 -0
  335. data/lib/stripe/params/price_update_params.rb +113 -0
  336. data/lib/stripe/params/product_create_params.rb +243 -0
  337. data/lib/stripe/params/product_delete_params.rb +6 -0
  338. data/lib/stripe/params/product_feature_create_params.rb +16 -0
  339. data/lib/stripe/params/product_feature_delete_params.rb +6 -0
  340. data/lib/stripe/params/product_feature_list_params.rb +22 -0
  341. data/lib/stripe/params/product_feature_retrieve_params.rb +13 -0
  342. data/lib/stripe/params/product_list_params.rb +68 -0
  343. data/lib/stripe/params/product_retrieve_params.rb +13 -0
  344. data/lib/stripe/params/product_search_params.rb +22 -0
  345. data/lib/stripe/params/product_update_params.rb +96 -0
  346. data/lib/stripe/params/promotion_code_create_params.rb +91 -0
  347. data/lib/stripe/params/promotion_code_list_params.rb +64 -0
  348. data/lib/stripe/params/promotion_code_retrieve_params.rb +13 -0
  349. data/lib/stripe/params/promotion_code_update_params.rb +38 -0
  350. data/lib/stripe/params/quote_accept_params.rb +13 -0
  351. data/lib/stripe/params/quote_cancel_params.rb +13 -0
  352. data/lib/stripe/params/quote_computed_upfront_line_items_list_params.rb +22 -0
  353. data/lib/stripe/params/quote_create_params.rb +301 -0
  354. data/lib/stripe/params/quote_finalize_quote_params.rb +16 -0
  355. data/lib/stripe/params/quote_line_item_list_params.rb +22 -0
  356. data/lib/stripe/params/quote_list_computed_upfront_line_items_params.rb +22 -0
  357. data/lib/stripe/params/quote_list_line_items_params.rb +22 -0
  358. data/lib/stripe/params/quote_list_params.rb +39 -0
  359. data/lib/stripe/params/quote_pdf_params.rb +13 -0
  360. data/lib/stripe/params/quote_retrieve_params.rb +13 -0
  361. data/lib/stripe/params/quote_update_params.rb +263 -0
  362. data/lib/stripe/params/radar/early_fraud_warning_list_params.rb +58 -0
  363. data/lib/stripe/params/radar/early_fraud_warning_retrieve_params.rb +15 -0
  364. data/lib/stripe/params/radar/value_list_create_params.rb +27 -0
  365. data/lib/stripe/params/radar/value_list_delete_params.rb +8 -0
  366. data/lib/stripe/params/radar/value_list_item_create_params.rb +21 -0
  367. data/lib/stripe/params/radar/value_list_item_delete_params.rb +8 -0
  368. data/lib/stripe/params/radar/value_list_item_list_params.rb +58 -0
  369. data/lib/stripe/params/radar/value_list_item_retrieve_params.rb +15 -0
  370. data/lib/stripe/params/radar/value_list_list_params.rb +58 -0
  371. data/lib/stripe/params/radar/value_list_retrieve_params.rb +15 -0
  372. data/lib/stripe/params/radar/value_list_update_params.rb +24 -0
  373. data/lib/stripe/params/refund_cancel_params.rb +13 -0
  374. data/lib/stripe/params/refund_create_params.rb +59 -0
  375. data/lib/stripe/params/refund_expire_params.rb +13 -0
  376. data/lib/stripe/params/refund_list_params.rb +56 -0
  377. data/lib/stripe/params/refund_retrieve_params.rb +13 -0
  378. data/lib/stripe/params/refund_update_params.rb +16 -0
  379. data/lib/stripe/params/reporting/report_run_create_params.rb +59 -0
  380. data/lib/stripe/params/reporting/report_run_list_params.rb +44 -0
  381. data/lib/stripe/params/reporting/report_run_retrieve_params.rb +15 -0
  382. data/lib/stripe/params/reporting/report_type_list_params.rb +15 -0
  383. data/lib/stripe/params/reporting/report_type_retrieve_params.rb +15 -0
  384. data/lib/stripe/params/review_approve_params.rb +13 -0
  385. data/lib/stripe/params/review_list_params.rb +42 -0
  386. data/lib/stripe/params/review_retrieve_params.rb +13 -0
  387. data/lib/stripe/params/setup_attempt_list_params.rb +55 -0
  388. data/lib/stripe/params/setup_intent_cancel_params.rb +16 -0
  389. data/lib/stripe/params/setup_intent_confirm_params.rb +1050 -0
  390. data/lib/stripe/params/setup_intent_create_params.rb +1130 -0
  391. data/lib/stripe/params/setup_intent_list_params.rb +62 -0
  392. data/lib/stripe/params/setup_intent_retrieve_params.rb +16 -0
  393. data/lib/stripe/params/setup_intent_update_params.rb +1025 -0
  394. data/lib/stripe/params/setup_intent_verify_microdeposits_params.rb +19 -0
  395. data/lib/stripe/params/shipping_rate_create_params.rb +103 -0
  396. data/lib/stripe/params/shipping_rate_list_params.rb +56 -0
  397. data/lib/stripe/params/shipping_rate_retrieve_params.rb +13 -0
  398. data/lib/stripe/params/shipping_rate_update_params.rb +44 -0
  399. data/lib/stripe/params/sigma/scheduled_query_run_list_params.rb +24 -0
  400. data/lib/stripe/params/sigma/scheduled_query_run_retrieve_params.rb +15 -0
  401. data/lib/stripe/params/source_create_params.rb +317 -0
  402. data/lib/stripe/params/source_detach_params.rb +13 -0
  403. data/lib/stripe/params/source_retrieve_params.rb +16 -0
  404. data/lib/stripe/params/source_transaction_list_params.rb +22 -0
  405. data/lib/stripe/params/source_update_params.rb +259 -0
  406. data/lib/stripe/params/source_verify_params.rb +16 -0
  407. data/lib/stripe/params/subscription_cancel_params.rb +33 -0
  408. data/lib/stripe/params/subscription_create_params.rb +704 -0
  409. data/lib/stripe/params/subscription_delete_discount_params.rb +6 -0
  410. data/lib/stripe/params/subscription_item_create_params.rb +134 -0
  411. data/lib/stripe/params/subscription_item_delete_params.rb +19 -0
  412. data/lib/stripe/params/subscription_item_list_params.rb +31 -0
  413. data/lib/stripe/params/subscription_item_retrieve_params.rb +13 -0
  414. data/lib/stripe/params/subscription_item_update_params.rb +134 -0
  415. data/lib/stripe/params/subscription_list_params.rb +129 -0
  416. data/lib/stripe/params/subscription_migrate_params.rb +35 -0
  417. data/lib/stripe/params/subscription_resume_params.rb +27 -0
  418. data/lib/stripe/params/subscription_retrieve_params.rb +13 -0
  419. data/lib/stripe/params/subscription_schedule_cancel_params.rb +19 -0
  420. data/lib/stripe/params/subscription_schedule_create_params.rb +590 -0
  421. data/lib/stripe/params/subscription_schedule_list_params.rb +122 -0
  422. data/lib/stripe/params/subscription_schedule_release_params.rb +16 -0
  423. data/lib/stripe/params/subscription_schedule_retrieve_params.rb +13 -0
  424. data/lib/stripe/params/subscription_schedule_update_params.rb +562 -0
  425. data/lib/stripe/params/subscription_search_params.rb +22 -0
  426. data/lib/stripe/params/subscription_update_params.rb +683 -0
  427. data/lib/stripe/params/tax/calculation_create_params.rb +206 -0
  428. data/lib/stripe/params/tax/calculation_line_item_list_params.rb +24 -0
  429. data/lib/stripe/params/tax/calculation_list_line_items_params.rb +24 -0
  430. data/lib/stripe/params/tax/calculation_retrieve_params.rb +15 -0
  431. data/lib/stripe/params/tax/registration_create_params.rb +2018 -0
  432. data/lib/stripe/params/tax/registration_list_params.rb +27 -0
  433. data/lib/stripe/params/tax/registration_retrieve_params.rb +15 -0
  434. data/lib/stripe/params/tax/registration_update_params.rb +21 -0
  435. data/lib/stripe/params/tax/settings_retrieve_params.rb +15 -0
  436. data/lib/stripe/params/tax/settings_update_params.rb +71 -0
  437. data/lib/stripe/params/tax/transaction_create_from_calculation_params.rb +27 -0
  438. data/lib/stripe/params/tax/transaction_create_reversal_params.rb +87 -0
  439. data/lib/stripe/params/tax/transaction_line_item_list_params.rb +24 -0
  440. data/lib/stripe/params/tax/transaction_list_line_items_params.rb +24 -0
  441. data/lib/stripe/params/tax/transaction_retrieve_params.rb +15 -0
  442. data/lib/stripe/params/tax_code_list_params.rb +22 -0
  443. data/lib/stripe/params/tax_code_retrieve_params.rb +13 -0
  444. data/lib/stripe/params/tax_id_create_params.rb +36 -0
  445. data/lib/stripe/params/tax_id_delete_params.rb +6 -0
  446. data/lib/stripe/params/tax_id_list_params.rb +39 -0
  447. data/lib/stripe/params/tax_id_retrieve_params.rb +13 -0
  448. data/lib/stripe/params/tax_rate_create_params.rb +55 -0
  449. data/lib/stripe/params/tax_rate_list_params.rb +56 -0
  450. data/lib/stripe/params/tax_rate_retrieve_params.rb +13 -0
  451. data/lib/stripe/params/tax_rate_update_params.rb +47 -0
  452. data/lib/stripe/params/terminal/configuration_create_params.rb +593 -0
  453. data/lib/stripe/params/terminal/configuration_delete_params.rb +8 -0
  454. data/lib/stripe/params/terminal/configuration_list_params.rb +33 -0
  455. data/lib/stripe/params/terminal/configuration_retrieve_params.rb +15 -0
  456. data/lib/stripe/params/terminal/configuration_update_params.rb +593 -0
  457. data/lib/stripe/params/terminal/connection_token_create_params.rb +18 -0
  458. data/lib/stripe/params/terminal/location_create_params.rb +153 -0
  459. data/lib/stripe/params/terminal/location_delete_params.rb +8 -0
  460. data/lib/stripe/params/terminal/location_list_params.rb +24 -0
  461. data/lib/stripe/params/terminal/location_retrieve_params.rb +15 -0
  462. data/lib/stripe/params/terminal/location_update_params.rb +153 -0
  463. data/lib/stripe/params/terminal/reader_cancel_action_params.rb +15 -0
  464. data/lib/stripe/params/terminal/reader_collect_inputs_params.rb +96 -0
  465. data/lib/stripe/params/terminal/reader_collect_payment_method_params.rb +51 -0
  466. data/lib/stripe/params/terminal/reader_confirm_payment_intent_params.rb +29 -0
  467. data/lib/stripe/params/terminal/reader_create_params.rb +27 -0
  468. data/lib/stripe/params/terminal/reader_delete_params.rb +8 -0
  469. data/lib/stripe/params/terminal/reader_list_params.rb +45 -0
  470. data/lib/stripe/params/terminal/reader_present_payment_method_params.rb +72 -0
  471. data/lib/stripe/params/terminal/reader_process_payment_intent_params.rb +55 -0
  472. data/lib/stripe/params/terminal/reader_process_setup_intent_params.rb +32 -0
  473. data/lib/stripe/params/terminal/reader_refund_payment_params.rb +53 -0
  474. data/lib/stripe/params/terminal/reader_retrieve_params.rb +15 -0
  475. data/lib/stripe/params/terminal/reader_set_reader_display_params.rb +52 -0
  476. data/lib/stripe/params/terminal/reader_succeed_input_collection_params.rb +18 -0
  477. data/lib/stripe/params/terminal/reader_timeout_input_collection_params.rb +15 -0
  478. data/lib/stripe/params/terminal/reader_update_params.rb +21 -0
  479. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +652 -0
  480. data/lib/stripe/params/test_helpers/customer_fund_cash_balance_params.rb +24 -0
  481. data/lib/stripe/params/test_helpers/issuing/authorization_capture_params.rb +267 -0
  482. data/lib/stripe/params/test_helpers/issuing/authorization_create_params.rb +359 -0
  483. data/lib/stripe/params/test_helpers/issuing/authorization_expire_params.rb +17 -0
  484. data/lib/stripe/params/test_helpers/issuing/authorization_finalize_amount_params.rb +145 -0
  485. data/lib/stripe/params/test_helpers/issuing/authorization_increment_params.rb +23 -0
  486. data/lib/stripe/params/test_helpers/issuing/authorization_respond_params.rb +20 -0
  487. data/lib/stripe/params/test_helpers/issuing/authorization_reverse_params.rb +20 -0
  488. data/lib/stripe/params/test_helpers/issuing/card_deliver_card_params.rb +17 -0
  489. data/lib/stripe/params/test_helpers/issuing/card_fail_card_params.rb +17 -0
  490. data/lib/stripe/params/test_helpers/issuing/card_return_card_params.rb +17 -0
  491. data/lib/stripe/params/test_helpers/issuing/card_ship_card_params.rb +17 -0
  492. data/lib/stripe/params/test_helpers/issuing/card_submit_card_params.rb +17 -0
  493. data/lib/stripe/params/test_helpers/issuing/personalization_design_activate_params.rb +17 -0
  494. data/lib/stripe/params/test_helpers/issuing/personalization_design_deactivate_params.rb +17 -0
  495. data/lib/stripe/params/test_helpers/issuing/personalization_design_reject_params.rb +31 -0
  496. data/lib/stripe/params/test_helpers/issuing/transaction_create_force_capture_params.rb +318 -0
  497. data/lib/stripe/params/test_helpers/issuing/transaction_create_unlinked_refund_params.rb +318 -0
  498. data/lib/stripe/params/test_helpers/issuing/transaction_refund_params.rb +20 -0
  499. data/lib/stripe/params/test_helpers/refund_expire_params.rb +15 -0
  500. data/lib/stripe/params/test_helpers/terminal/reader_present_payment_method_params.rb +74 -0
  501. data/lib/stripe/params/test_helpers/terminal/reader_succeed_input_collection_params.rb +20 -0
  502. data/lib/stripe/params/test_helpers/terminal/reader_timeout_input_collection_params.rb +17 -0
  503. data/lib/stripe/params/test_helpers/test_clock_advance_params.rb +18 -0
  504. data/lib/stripe/params/test_helpers/test_clock_create_params.rb +21 -0
  505. data/lib/stripe/params/test_helpers/test_clock_delete_params.rb +8 -0
  506. data/lib/stripe/params/test_helpers/test_clock_list_params.rb +24 -0
  507. data/lib/stripe/params/test_helpers/test_clock_retrieve_params.rb +15 -0
  508. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_fail_params.rb +28 -0
  509. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_return_inbound_transfer_params.rb +17 -0
  510. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_succeed_params.rb +17 -0
  511. data/lib/stripe/params/test_helpers/treasury/outbound_payment_fail_params.rb +17 -0
  512. data/lib/stripe/params/test_helpers/treasury/outbound_payment_post_params.rb +17 -0
  513. data/lib/stripe/params/test_helpers/treasury/outbound_payment_return_outbound_payment_params.rb +28 -0
  514. data/lib/stripe/params/test_helpers/treasury/outbound_payment_update_params.rb +57 -0
  515. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_fail_params.rb +17 -0
  516. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_post_params.rb +17 -0
  517. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_return_outbound_transfer_params.rb +28 -0
  518. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_update_params.rb +57 -0
  519. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +68 -0
  520. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +68 -0
  521. data/lib/stripe/params/token_create_params.rb +1191 -0
  522. data/lib/stripe/params/token_retrieve_params.rb +13 -0
  523. data/lib/stripe/params/topup_cancel_params.rb +13 -0
  524. data/lib/stripe/params/topup_create_params.rb +43 -0
  525. data/lib/stripe/params/topup_list_params.rb +74 -0
  526. data/lib/stripe/params/topup_retrieve_params.rb +13 -0
  527. data/lib/stripe/params/topup_update_params.rb +19 -0
  528. data/lib/stripe/params/transfer_create_params.rb +47 -0
  529. data/lib/stripe/params/transfer_list_params.rb +56 -0
  530. data/lib/stripe/params/transfer_retrieve_params.rb +13 -0
  531. data/lib/stripe/params/transfer_reversal_create_params.rb +31 -0
  532. data/lib/stripe/params/transfer_reversal_list_params.rb +22 -0
  533. data/lib/stripe/params/transfer_reversal_retrieve_params.rb +13 -0
  534. data/lib/stripe/params/transfer_reversal_update_params.rb +16 -0
  535. data/lib/stripe/params/transfer_update_params.rb +19 -0
  536. data/lib/stripe/params/treasury/credit_reversal_create_params.rb +21 -0
  537. data/lib/stripe/params/treasury/credit_reversal_list_params.rb +41 -0
  538. data/lib/stripe/params/treasury/credit_reversal_retrieve_params.rb +15 -0
  539. data/lib/stripe/params/treasury/debit_reversal_create_params.rb +21 -0
  540. data/lib/stripe/params/treasury/debit_reversal_list_params.rb +45 -0
  541. data/lib/stripe/params/treasury/debit_reversal_retrieve_params.rb +15 -0
  542. data/lib/stripe/params/treasury/financial_account_close_params.rb +32 -0
  543. data/lib/stripe/params/treasury/financial_account_create_params.rb +201 -0
  544. data/lib/stripe/params/treasury/financial_account_features_retrieve_params.rb +15 -0
  545. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +163 -0
  546. data/lib/stripe/params/treasury/financial_account_list_params.rb +54 -0
  547. data/lib/stripe/params/treasury/financial_account_retrieve_features_params.rb +15 -0
  548. data/lib/stripe/params/treasury/financial_account_retrieve_params.rb +15 -0
  549. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +163 -0
  550. data/lib/stripe/params/treasury/financial_account_update_params.rb +216 -0
  551. data/lib/stripe/params/treasury/inbound_transfer_cancel_params.rb +15 -0
  552. data/lib/stripe/params/treasury/inbound_transfer_create_params.rb +45 -0
  553. data/lib/stripe/params/treasury/inbound_transfer_fail_params.rb +26 -0
  554. data/lib/stripe/params/treasury/inbound_transfer_list_params.rb +37 -0
  555. data/lib/stripe/params/treasury/inbound_transfer_retrieve_params.rb +15 -0
  556. data/lib/stripe/params/treasury/inbound_transfer_return_inbound_transfer_params.rb +15 -0
  557. data/lib/stripe/params/treasury/inbound_transfer_succeed_params.rb +15 -0
  558. data/lib/stripe/params/treasury/outbound_payment_cancel_params.rb +15 -0
  559. data/lib/stripe/params/treasury/outbound_payment_create_params.rb +190 -0
  560. data/lib/stripe/params/treasury/outbound_payment_fail_params.rb +15 -0
  561. data/lib/stripe/params/treasury/outbound_payment_list_params.rb +62 -0
  562. data/lib/stripe/params/treasury/outbound_payment_post_params.rb +15 -0
  563. data/lib/stripe/params/treasury/outbound_payment_retrieve_params.rb +15 -0
  564. data/lib/stripe/params/treasury/outbound_payment_return_outbound_payment_params.rb +26 -0
  565. data/lib/stripe/params/treasury/outbound_payment_update_params.rb +55 -0
  566. data/lib/stripe/params/treasury/outbound_transfer_cancel_params.rb +15 -0
  567. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +81 -0
  568. data/lib/stripe/params/treasury/outbound_transfer_fail_params.rb +15 -0
  569. data/lib/stripe/params/treasury/outbound_transfer_list_params.rb +37 -0
  570. data/lib/stripe/params/treasury/outbound_transfer_post_params.rb +15 -0
  571. data/lib/stripe/params/treasury/outbound_transfer_retrieve_params.rb +15 -0
  572. data/lib/stripe/params/treasury/outbound_transfer_return_outbound_transfer_params.rb +26 -0
  573. data/lib/stripe/params/treasury/outbound_transfer_update_params.rb +55 -0
  574. data/lib/stripe/params/treasury/received_credit_create_params.rb +66 -0
  575. data/lib/stripe/params/treasury/received_credit_list_params.rb +49 -0
  576. data/lib/stripe/params/treasury/received_credit_retrieve_params.rb +15 -0
  577. data/lib/stripe/params/treasury/received_debit_create_params.rb +66 -0
  578. data/lib/stripe/params/treasury/received_debit_list_params.rb +37 -0
  579. data/lib/stripe/params/treasury/received_debit_retrieve_params.rb +15 -0
  580. data/lib/stripe/params/treasury/transaction_entry_list_params.rb +84 -0
  581. data/lib/stripe/params/treasury/transaction_entry_retrieve_params.rb +15 -0
  582. data/lib/stripe/params/treasury/transaction_list_params.rb +92 -0
  583. data/lib/stripe/params/treasury/transaction_retrieve_params.rb +15 -0
  584. data/lib/stripe/params/v2/billing/meter_event_adjustment_create_params.rb +31 -0
  585. data/lib/stripe/params/v2/billing/meter_event_create_params.rb +33 -0
  586. data/lib/stripe/params/v2/billing/meter_event_session_create_params.rb +10 -0
  587. data/lib/stripe/params/v2/billing/meter_event_stream_create_params.rb +41 -0
  588. data/lib/stripe/params/v2/core/event_destination_create_params.rb +79 -0
  589. data/lib/stripe/params/v2/core/event_destination_delete_params.rb +10 -0
  590. data/lib/stripe/params/v2/core/event_destination_disable_params.rb +10 -0
  591. data/lib/stripe/params/v2/core/event_destination_enable_params.rb +10 -0
  592. data/lib/stripe/params/v2/core/event_destination_list_params.rb +20 -0
  593. data/lib/stripe/params/v2/core/event_destination_ping_params.rb +10 -0
  594. data/lib/stripe/params/v2/core/event_destination_retrieve_params.rb +17 -0
  595. data/lib/stripe/params/v2/core/event_destination_update_params.rb +47 -0
  596. data/lib/stripe/params/v2/core/event_list_params.rb +22 -0
  597. data/lib/stripe/params/v2/core/event_retrieve_params.rb +10 -0
  598. data/lib/stripe/params/webhook_endpoint_create_params.rb +39 -0
  599. data/lib/stripe/params/webhook_endpoint_delete_params.rb +6 -0
  600. data/lib/stripe/params/webhook_endpoint_list_params.rb +22 -0
  601. data/lib/stripe/params/webhook_endpoint_retrieve_params.rb +13 -0
  602. data/lib/stripe/params/webhook_endpoint_update_params.rb +35 -0
  603. data/lib/stripe/params.rb +588 -0
  604. data/lib/stripe/request_options.rb +16 -6
  605. data/lib/stripe/request_params.rb +24 -0
  606. data/lib/stripe/resources/account.rb +1007 -20
  607. data/lib/stripe/resources/account_link.rb +17 -0
  608. data/lib/stripe/resources/account_session.rb +658 -0
  609. data/lib/stripe/resources/apple_pay_domain.rb +21 -0
  610. data/lib/stripe/resources/application.rb +28 -0
  611. data/lib/stripe/resources/application_fee.rb +55 -0
  612. data/lib/stripe/resources/application_fee_refund.rb +25 -0
  613. data/lib/stripe/resources/apps/secret.rb +41 -0
  614. data/lib/stripe/resources/balance.rb +325 -7
  615. data/lib/stripe/resources/balance_settings.rb +92 -0
  616. data/lib/stripe/resources/balance_transaction.rb +61 -0
  617. data/lib/stripe/resources/bank_account.rb +126 -4
  618. data/lib/stripe/resources/billing/alert.rb +55 -0
  619. data/lib/stripe/resources/billing/alert_triggered.rb +34 -0
  620. data/lib/stripe/resources/billing/credit_balance_summary.rb +88 -0
  621. data/lib/stripe/resources/billing/credit_balance_transaction.rb +151 -0
  622. data/lib/stripe/resources/billing/credit_grant.rb +108 -0
  623. data/lib/stripe/resources/billing/meter.rb +93 -0
  624. data/lib/stripe/resources/billing/meter_event.rb +23 -0
  625. data/lib/stripe/resources/billing/meter_event_adjustment.rb +33 -0
  626. data/lib/stripe/resources/billing/meter_event_summary.rb +25 -0
  627. data/lib/stripe/resources/billing_portal/configuration.rb +254 -0
  628. data/lib/stripe/resources/billing_portal/session.rb +200 -1
  629. data/lib/stripe/resources/capability.rb +140 -0
  630. data/lib/stripe/resources/card.rb +93 -0
  631. data/lib/stripe/resources/cash_balance.rb +33 -0
  632. data/lib/stripe/resources/charge.rb +2221 -7
  633. data/lib/stripe/resources/checkout/session.rb +2206 -6
  634. data/lib/stripe/resources/climate/order.rb +106 -0
  635. data/lib/stripe/resources/climate/product.rb +45 -0
  636. data/lib/stripe/resources/climate/supplier.rb +43 -0
  637. data/lib/stripe/resources/confirmation_token.rb +1679 -0
  638. data/lib/stripe/resources/connect_collection_transfer.rb +32 -0
  639. data/lib/stripe/resources/country_spec.rb +69 -1
  640. data/lib/stripe/resources/coupon.rb +70 -0
  641. data/lib/stripe/resources/credit_note.rb +213 -9
  642. data/lib/stripe/resources/credit_note_line_item.rb +111 -0
  643. data/lib/stripe/resources/customer.rb +228 -0
  644. data/lib/stripe/resources/customer_balance_transaction.rb +37 -0
  645. data/lib/stripe/resources/customer_cash_balance_transaction.rb +217 -0
  646. data/lib/stripe/resources/customer_session.rb +118 -3
  647. data/lib/stripe/resources/discount.rb +49 -0
  648. data/lib/stripe/resources/dispute.rb +405 -1
  649. data/lib/stripe/resources/entitlements/active_entitlement.rb +19 -0
  650. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +31 -0
  651. data/lib/stripe/resources/entitlements/feature.rb +23 -0
  652. data/lib/stripe/resources/ephemeral_key.rb +21 -0
  653. data/lib/stripe/resources/event.rb +74 -26
  654. data/lib/stripe/resources/exchange_rate.rb +25 -0
  655. data/lib/stripe/resources/file.rb +32 -1
  656. data/lib/stripe/resources/file_link.rb +27 -0
  657. data/lib/stripe/resources/financial_connections/account.rb +193 -0
  658. data/lib/stripe/resources/financial_connections/account_owner.rb +25 -0
  659. data/lib/stripe/resources/financial_connections/account_ownership.rb +17 -0
  660. data/lib/stripe/resources/financial_connections/session.rb +60 -0
  661. data/lib/stripe/resources/financial_connections/transaction.rb +47 -0
  662. data/lib/stripe/resources/forwarding/request.rb +111 -0
  663. data/lib/stripe/resources/funding_instructions.rb +502 -1
  664. data/lib/stripe/resources/identity/verification_report.rb +372 -0
  665. data/lib/stripe/resources/identity/verification_session.rb +290 -11
  666. data/lib/stripe/resources/invoice.rb +997 -34
  667. data/lib/stripe/resources/invoice_item.rb +160 -4
  668. data/lib/stripe/resources/invoice_line_item.rb +278 -1
  669. data/lib/stripe/resources/invoice_payment.rb +90 -0
  670. data/lib/stripe/resources/invoice_rendering_template.rb +25 -0
  671. data/lib/stripe/resources/issuing/authorization.rb +449 -8
  672. data/lib/stripe/resources/issuing/card.rb +264 -0
  673. data/lib/stripe/resources/issuing/cardholder.rb +242 -0
  674. data/lib/stripe/resources/issuing/dispute.rb +257 -3
  675. data/lib/stripe/resources/issuing/personalization_design.rb +87 -0
  676. data/lib/stripe/resources/issuing/physical_bundle.rb +39 -0
  677. data/lib/stripe/resources/issuing/token.rb +163 -0
  678. data/lib/stripe/resources/issuing/transaction.rb +363 -0
  679. data/lib/stripe/resources/line_item.rb +71 -0
  680. data/lib/stripe/resources/login_link.rb +17 -1
  681. data/lib/stripe/resources/mandate.rb +358 -0
  682. data/lib/stripe/resources/payment_intent.rb +2775 -23
  683. data/lib/stripe/resources/payment_link.rb +686 -0
  684. data/lib/stripe/resources/payment_method.rb +1536 -12
  685. data/lib/stripe/resources/payment_method_configuration.rb +1759 -0
  686. data/lib/stripe/resources/payment_method_domain.rb +209 -8
  687. data/lib/stripe/resources/payout.rb +81 -4
  688. data/lib/stripe/resources/person.rb +469 -2
  689. data/lib/stripe/resources/plan.rb +87 -1
  690. data/lib/stripe/resources/price.rb +192 -2
  691. data/lib/stripe/resources/product.rb +83 -0
  692. data/lib/stripe/resources/product_feature.rb +20 -0
  693. data/lib/stripe/resources/promotion_code.rb +86 -3
  694. data/lib/stripe/resources/quote.rb +510 -0
  695. data/lib/stripe/resources/radar/early_fraud_warning.rb +25 -0
  696. data/lib/stripe/resources/radar/value_list.rb +31 -0
  697. data/lib/stripe/resources/radar/value_list_item.rb +25 -0
  698. data/lib/stripe/resources/refund.rb +614 -0
  699. data/lib/stripe/resources/reporting/report_run.rb +60 -0
  700. data/lib/stripe/resources/reporting/report_type.rb +27 -0
  701. data/lib/stripe/resources/reserve_transaction.rb +30 -0
  702. data/lib/stripe/resources/reversal.rb +30 -1
  703. data/lib/stripe/resources/review.rb +77 -1
  704. data/lib/stripe/resources/setup_attempt.rb +589 -0
  705. data/lib/stripe/resources/setup_intent.rb +574 -3
  706. data/lib/stripe/resources/shipping_rate.rb +107 -0
  707. data/lib/stripe/resources/sigma/scheduled_query_run.rb +43 -0
  708. data/lib/stripe/resources/source.rb +885 -2
  709. data/lib/stripe/resources/source_mandate_notification.rb +98 -0
  710. data/lib/stripe/resources/source_transaction.rb +139 -0
  711. data/lib/stripe/resources/subscription.rb +606 -9
  712. data/lib/stripe/resources/subscription_item.rb +60 -5
  713. data/lib/stripe/resources/subscription_schedule.rb +526 -0
  714. data/lib/stripe/resources/tax/calculation.rb +273 -0
  715. data/lib/stripe/resources/tax/calculation_line_item.rb +90 -0
  716. data/lib/stripe/resources/tax/registration.rb +2189 -0
  717. data/lib/stripe/resources/tax/settings.rb +114 -0
  718. data/lib/stripe/resources/tax/transaction.rb +231 -0
  719. data/lib/stripe/resources/tax/transaction_line_item.rb +47 -0
  720. data/lib/stripe/resources/tax_code.rb +17 -0
  721. data/lib/stripe/resources/tax_deducted_at_source.rb +30 -0
  722. data/lib/stripe/resources/tax_id.rb +66 -0
  723. data/lib/stripe/resources/tax_rate.rb +63 -2
  724. data/lib/stripe/resources/terminal/configuration.rb +634 -0
  725. data/lib/stripe/resources/terminal/connection_token.rb +15 -0
  726. data/lib/stripe/resources/terminal/location.rb +112 -1
  727. data/lib/stripe/resources/terminal/reader.rb +605 -0
  728. data/lib/stripe/resources/test_helpers/test_clock.rb +53 -0
  729. data/lib/stripe/resources/token.rb +39 -2
  730. data/lib/stripe/resources/topup.rb +41 -0
  731. data/lib/stripe/resources/transfer.rb +44 -1
  732. data/lib/stripe/resources/treasury/credit_reversal.rb +49 -0
  733. data/lib/stripe/resources/treasury/debit_reversal.rb +64 -0
  734. data/lib/stripe/resources/treasury/financial_account.rb +145 -1
  735. data/lib/stripe/resources/treasury/financial_account_features.rb +381 -0
  736. data/lib/stripe/resources/treasury/inbound_transfer.rb +178 -0
  737. data/lib/stripe/resources/treasury/outbound_payment.rb +256 -0
  738. data/lib/stripe/resources/treasury/outbound_transfer.rb +236 -0
  739. data/lib/stripe/resources/treasury/received_credit.rb +214 -0
  740. data/lib/stripe/resources/treasury/received_debit.rb +177 -0
  741. data/lib/stripe/resources/treasury/transaction.rb +117 -0
  742. data/lib/stripe/resources/treasury/transaction_entry.rb +94 -0
  743. data/lib/stripe/resources/v2/amount.rb +9 -0
  744. data/lib/stripe/resources/v2/billing/meter_event.rb +26 -0
  745. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +37 -0
  746. data/lib/stripe/resources/v2/billing/meter_event_session.rb +22 -0
  747. data/lib/stripe/resources/v2/core/event.rb +67 -0
  748. data/lib/stripe/resources/v2/core/event_destination.rb +119 -0
  749. data/lib/stripe/resources/v2/core/event_notification.rb +62 -0
  750. data/lib/stripe/resources/v2/deleted_object.rb +21 -0
  751. data/lib/stripe/resources/webhook_endpoint.rb +35 -0
  752. data/lib/stripe/resources.rb +13 -4
  753. data/lib/stripe/services/account_external_account_service.rb +1 -1
  754. data/lib/stripe/services/account_login_link_service.rb +1 -1
  755. data/lib/stripe/services/account_service.rb +12 -12
  756. data/lib/stripe/services/application_fee_service.rb +1 -1
  757. data/lib/stripe/services/apps_service.rb +1 -1
  758. data/lib/stripe/services/balance_service.rb +1 -1
  759. data/lib/stripe/services/balance_settings_service.rb +30 -0
  760. data/lib/stripe/services/billing/meter_service.rb +1 -1
  761. data/lib/stripe/services/billing_portal_service.rb +1 -1
  762. data/lib/stripe/services/billing_service.rb +1 -1
  763. data/lib/stripe/services/charge_service.rb +4 -4
  764. data/lib/stripe/services/checkout/session_service.rb +8 -6
  765. data/lib/stripe/services/checkout_service.rb +1 -1
  766. data/lib/stripe/services/climate_service.rb +1 -1
  767. data/lib/stripe/services/credit_note_service.rb +8 -9
  768. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  769. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  770. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  771. data/lib/stripe/services/customer_service.rb +6 -6
  772. data/lib/stripe/services/dispute_service.rb +1 -1
  773. data/lib/stripe/services/entitlements_service.rb +1 -1
  774. data/lib/stripe/services/exchange_rate_service.rb +4 -0
  775. data/lib/stripe/services/file_service.rb +1 -1
  776. data/lib/stripe/services/financial_connections/account_service.rb +1 -1
  777. data/lib/stripe/services/financial_connections_service.rb +1 -1
  778. data/lib/stripe/services/forwarding_service.rb +1 -1
  779. data/lib/stripe/services/identity/verification_session_service.rb +5 -5
  780. data/lib/stripe/services/identity_service.rb +1 -1
  781. data/lib/stripe/services/invoice_payment_service.rb +28 -0
  782. data/lib/stripe/services/invoice_service.rb +34 -30
  783. data/lib/stripe/services/issuing/authorization_service.rb +4 -4
  784. data/lib/stripe/services/issuing/dispute_service.rb +2 -2
  785. data/lib/stripe/services/issuing_service.rb +1 -1
  786. data/lib/stripe/services/payment_intent_service.rb +20 -15
  787. data/lib/stripe/services/payment_link_service.rb +1 -1
  788. data/lib/stripe/services/payment_method_domain_service.rb +4 -4
  789. data/lib/stripe/services/payment_method_service.rb +9 -9
  790. data/lib/stripe/services/payout_service.rb +2 -2
  791. data/lib/stripe/services/plan_service.rb +1 -1
  792. data/lib/stripe/services/price_service.rb +3 -3
  793. data/lib/stripe/services/product_service.rb +2 -2
  794. data/lib/stripe/services/promotion_code_service.rb +2 -2
  795. data/lib/stripe/services/quote_service.rb +3 -3
  796. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  797. data/lib/stripe/services/radar_service.rb +1 -1
  798. data/lib/stripe/services/reporting_service.rb +1 -1
  799. data/lib/stripe/services/setup_intent_service.rb +3 -3
  800. data/lib/stripe/services/sigma_service.rb +1 -1
  801. data/lib/stripe/services/source_service.rb +2 -2
  802. data/lib/stripe/services/subscription_item_service.rb +0 -8
  803. data/lib/stripe/services/subscription_service.rb +19 -8
  804. data/lib/stripe/services/tax/calculation_service.rb +1 -1
  805. data/lib/stripe/services/tax/transaction_service.rb +1 -1
  806. data/lib/stripe/services/tax_service.rb +1 -1
  807. data/lib/stripe/services/terminal/location_service.rb +1 -1
  808. data/lib/stripe/services/terminal/reader_service.rb +33 -0
  809. data/lib/stripe/services/terminal_service.rb +1 -1
  810. data/lib/stripe/services/test_helpers/issuing_service.rb +1 -1
  811. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +22 -0
  812. data/lib/stripe/services/test_helpers/terminal_service.rb +1 -1
  813. data/lib/stripe/services/test_helpers/treasury_service.rb +1 -1
  814. data/lib/stripe/services/test_helpers_service.rb +1 -1
  815. data/lib/stripe/services/token_service.rb +1 -1
  816. data/lib/stripe/services/transfer_service.rb +2 -2
  817. data/lib/stripe/services/treasury/financial_account_service.rb +2 -2
  818. data/lib/stripe/services/treasury_service.rb +1 -1
  819. data/lib/stripe/services/v1_services.rb +7 -5
  820. data/lib/stripe/services/v2/billing_service.rb +4 -4
  821. data/lib/stripe/services/v2/core_service.rb +3 -3
  822. data/lib/stripe/services/v2_services.rb +1 -1
  823. data/lib/stripe/services.rb +2 -3
  824. data/lib/stripe/stripe_client.rb +10 -6
  825. data/lib/stripe/stripe_configuration.rb +1 -6
  826. data/lib/stripe/stripe_context.rb +68 -0
  827. data/lib/stripe/stripe_object.rb +57 -12
  828. data/lib/stripe/stripe_service.rb +3 -1
  829. data/lib/stripe/util.rb +34 -12
  830. data/lib/stripe/version.rb +1 -1
  831. data/lib/stripe/webhook.rb +1 -1
  832. data/lib/stripe.rb +6 -1
  833. data/rbi/stripe/resources/v2/core/event_notification.rbi +43 -0
  834. data/rbi/stripe/stripe_client.rbi +17 -0
  835. data/rbi/stripe.rbi +132984 -0
  836. metadata +612 -28
  837. data/CHANGELOG.md +0 -1589
  838. data/CODE_OF_CONDUCT.md +0 -77
  839. data/CONTRIBUTORS +0 -3
  840. data/Gemfile +0 -37
  841. data/History.txt +0 -1
  842. data/LICENSE +0 -21
  843. data/Makefile +0 -22
  844. data/OPENAPI_VERSION +0 -1
  845. data/README.md +0 -422
  846. data/Rakefile +0 -34
  847. data/VERSION +0 -1
  848. data/examples/README.md +0 -16
  849. data/examples/example_template.rb +0 -36
  850. data/examples/meter_event_stream.rb +0 -57
  851. data/examples/thinevent_webhook_handler.rb +0 -39
  852. data/justfile +0 -43
  853. data/lib/stripe/resources/usage_record.rb +0 -17
  854. data/lib/stripe/resources/usage_record_summary.rb +0 -12
  855. data/lib/stripe/resources/v2/event.rb +0 -13
  856. data/lib/stripe/resources/v2/event_destination.rb +0 -13
  857. data/lib/stripe/services/invoice_upcoming_lines_service.rb +0 -17
  858. data/lib/stripe/services/subscription_item_usage_record_service.rb +0 -23
  859. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +0 -19
  860. data/lib/stripe/thin_event.rb +0 -37
  861. data/stripe.gemspec +0 -44
@@ -15,6 +15,28 @@ module Stripe
15
15
  base_address: :api
16
16
  )
17
17
  end
18
+
19
+ # Use this endpoint to trigger a successful input collection on a simulated reader.
20
+ def succeed_input_collection(reader, params = {}, opts = {})
21
+ request(
22
+ method: :post,
23
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/succeed_input_collection", { reader: CGI.escape(reader) }),
24
+ params: params,
25
+ opts: opts,
26
+ base_address: :api
27
+ )
28
+ end
29
+
30
+ # Use this endpoint to complete an input collection with a timeout error on a simulated reader.
31
+ def timeout_input_collection(reader, params = {}, opts = {})
32
+ request(
33
+ method: :post,
34
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/timeout_input_collection", { reader: CGI.escape(reader) }),
35
+ params: params,
36
+ opts: opts,
37
+ base_address: :api
38
+ )
39
+ end
18
40
  end
19
41
  end
20
42
  end
@@ -7,7 +7,7 @@ module Stripe
7
7
  attr_reader :readers
8
8
 
9
9
  def initialize(requestor)
10
- super(requestor)
10
+ super
11
11
  @readers = Stripe::TestHelpers::Terminal::ReaderService.new(@requestor)
12
12
  end
13
13
  end
@@ -7,7 +7,7 @@ module Stripe
7
7
  attr_reader :inbound_transfers, :outbound_payments, :outbound_transfers, :received_credits, :received_debits
8
8
 
9
9
  def initialize(requestor)
10
- super(requestor)
10
+ super
11
11
  @inbound_transfers = Stripe::TestHelpers::Treasury::InboundTransferService.new(@requestor)
12
12
  @outbound_payments = Stripe::TestHelpers::Treasury::OutboundPaymentService.new(@requestor)
13
13
  @outbound_transfers = Stripe::TestHelpers::Treasury::OutboundTransferService.new(@requestor)
@@ -6,7 +6,7 @@ module Stripe
6
6
  attr_reader :confirmation_tokens, :customers, :issuing, :refunds, :terminal, :test_clocks, :treasury
7
7
 
8
8
  def initialize(requestor)
9
- super(requestor)
9
+ super
10
10
  @confirmation_tokens = Stripe::TestHelpers::ConfirmationTokenService.new(@requestor)
11
11
  @customers = Stripe::TestHelpers::CustomerService.new(@requestor)
12
12
  @issuing = Stripe::TestHelpers::IssuingService.new(@requestor)
@@ -4,7 +4,7 @@
4
4
  module Stripe
5
5
  class TokenService < StripeService
6
6
  # Creates a single-use token that represents a bank account's details.
7
- # You can use this token with any v1 API method in place of a bank account dictionary. You can only use this token once. To do so, attach it to a [connected account](https://stripe.com/docs/api#accounts) where [controller.requirement_collection](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection) is application, which includes Custom accounts.
7
+ # You can use this token with any v1 API method in place of a bank account dictionary. You can only use this token once. To do so, attach it to a [connected account](https://docs.stripe.com/api#accounts) where [controller.requirement_collection](https://docs.stripe.com/api/accounts/object#account_object-controller-requirement_collection) is application, which includes Custom accounts.
8
8
  def create(params = {}, opts = {})
9
9
  request(method: :post, path: "/v1/tokens", params: params, opts: opts, base_address: :api)
10
10
  end
@@ -6,11 +6,11 @@ module Stripe
6
6
  attr_reader :reversals
7
7
 
8
8
  def initialize(requestor)
9
- super(requestor)
9
+ super
10
10
  @reversals = Stripe::TransferReversalService.new(@requestor)
11
11
  end
12
12
 
13
- # To send funds from your Stripe account to a connected account, you create a new transfer object. Your [Stripe balance](https://stripe.com/docs/api#balance) must be able to cover the transfer amount, or you'll receive an “Insufficient Funds” error.
13
+ # To send funds from your Stripe account to a connected account, you create a new transfer object. Your [Stripe balance](https://docs.stripe.com/api#balance) must be able to cover the transfer amount, or you'll receive an “Insufficient Funds” error.
14
14
  def create(params = {}, opts = {})
15
15
  request(method: :post, path: "/v1/transfers", params: params, opts: opts, base_address: :api)
16
16
  end
@@ -7,7 +7,7 @@ module Stripe
7
7
  attr_reader :features
8
8
 
9
9
  def initialize(requestor)
10
- super(requestor)
10
+ super
11
11
  @features = Stripe::Treasury::FinancialAccountFeaturesService.new(@requestor)
12
12
  end
13
13
 
@@ -22,7 +22,7 @@ module Stripe
22
22
  )
23
23
  end
24
24
 
25
- # Creates a new FinancialAccount. For now, each connected account can only have one FinancialAccount.
25
+ # Creates a new FinancialAccount. Each connected account can have up to three FinancialAccounts by default.
26
26
  def create(params = {}, opts = {})
27
27
  request(
28
28
  method: :post,
@@ -6,7 +6,7 @@ module Stripe
6
6
  attr_reader :credit_reversals, :debit_reversals, :financial_accounts, :inbound_transfers, :outbound_payments, :outbound_transfers, :received_credits, :received_debits, :transactions, :transaction_entries
7
7
 
8
8
  def initialize(requestor)
9
- super(requestor)
9
+ super
10
10
  @credit_reversals = Stripe::Treasury::CreditReversalService.new(@requestor)
11
11
  @debit_reversals = Stripe::Treasury::DebitReversalService.new(@requestor)
12
12
  @financial_accounts = Stripe::Treasury::FinancialAccountService.new(@requestor)
@@ -4,14 +4,14 @@ module Stripe
4
4
  class V1Services < StripeService
5
5
  # v1 accessors: The beginning of the section generated from our OpenAPI spec
6
6
  attr_reader :accounts
7
- attr_reader :account_links, :account_sessions, :apple_pay_domains, :application_fees, :apps, :balance, :balance_transactions, :billing, :billing_portal, :charges, :checkout, :climate, :confirmation_tokens, :test_helpers, :country_specs, :coupons, :credit_notes, :customers, :customer_sessions, :disputes, :entitlements, :ephemeral_keys, :events, :exchange_rates, :files, :file_links, :financial_connections, :forwarding, :identity, :invoices, :invoice_rendering_templates, :invoice_items, :issuing, :mandates, :payment_intents, :payment_links, :payment_methods, :payment_method_configurations, :payment_method_domains, :payouts, :plans, :prices, :products, :promotion_codes, :quotes, :radar, :refunds, :reporting, :reviews, :sigma, :setup_attempts, :setup_intents, :shipping_rates, :sources, :subscriptions, :subscription_items, :subscription_schedules, :tax, :tax_codes, :tax_ids, :tax_rates, :terminal, :tokens, :topups, :transfers, :treasury, :webhook_endpoints
7
+ attr_reader :account_links, :account_sessions, :apple_pay_domains, :application_fees, :apps, :balance, :balance_settings, :balance_transactions, :billing, :billing_portal, :charges, :checkout, :climate, :confirmation_tokens, :country_specs, :coupons, :credit_notes, :customers, :customer_sessions, :disputes, :entitlements, :ephemeral_keys, :events, :exchange_rates, :files, :file_links, :financial_connections, :forwarding, :identity, :invoices, :invoice_items, :invoice_payments, :invoice_rendering_templates, :issuing, :mandates, :payment_intents, :payment_links, :payment_methods, :payment_method_configurations, :payment_method_domains, :payouts, :plans, :prices, :products, :promotion_codes, :quotes, :radar, :refunds, :reporting, :reviews, :setup_attempts, :setup_intents, :shipping_rates, :sigma, :sources, :subscriptions, :subscription_items, :subscription_schedules, :tax, :tax_codes, :tax_ids, :tax_rates, :terminal, :test_helpers, :tokens, :topups, :transfers, :treasury, :webhook_endpoints
8
8
  # v1 accessors: The end of the section generated from our OpenAPI spec
9
9
 
10
10
  # OAuthService is manually maintained, as it has special behaviors
11
11
  attr_reader :oauth
12
12
 
13
13
  def initialize(requestor)
14
- super(requestor)
14
+ super
15
15
  # v1 services: The beginning of the section generated from our OpenAPI spec
16
16
  @accounts = Stripe::AccountService.new(@requestor)
17
17
  @account_links = Stripe::AccountLinkService.new(@requestor)
@@ -20,6 +20,7 @@ module Stripe
20
20
  @application_fees = Stripe::ApplicationFeeService.new(@requestor)
21
21
  @apps = Stripe::AppsService.new(@requestor)
22
22
  @balance = Stripe::BalanceService.new(@requestor)
23
+ @balance_settings = Stripe::BalanceSettingsService.new(@requestor)
23
24
  @balance_transactions = Stripe::BalanceTransactionService.new(@requestor)
24
25
  @billing = Stripe::BillingService.new(@requestor)
25
26
  @billing_portal = Stripe::BillingPortalService.new(@requestor)
@@ -27,7 +28,6 @@ module Stripe
27
28
  @checkout = Stripe::CheckoutService.new(@requestor)
28
29
  @climate = Stripe::ClimateService.new(@requestor)
29
30
  @confirmation_tokens = Stripe::ConfirmationTokenService.new(@requestor)
30
- @test_helpers = Stripe::TestHelpersService.new(@requestor)
31
31
  @country_specs = Stripe::CountrySpecService.new(@requestor)
32
32
  @coupons = Stripe::CouponService.new(@requestor)
33
33
  @credit_notes = Stripe::CreditNoteService.new(@requestor)
@@ -44,8 +44,9 @@ module Stripe
44
44
  @forwarding = Stripe::ForwardingService.new(@requestor)
45
45
  @identity = Stripe::IdentityService.new(@requestor)
46
46
  @invoices = Stripe::InvoiceService.new(@requestor)
47
- @invoice_rendering_templates = Stripe::InvoiceRenderingTemplateService.new(@requestor)
48
47
  @invoice_items = Stripe::InvoiceItemService.new(@requestor)
48
+ @invoice_payments = Stripe::InvoicePaymentService.new(@requestor)
49
+ @invoice_rendering_templates = Stripe::InvoiceRenderingTemplateService.new(@requestor)
49
50
  @issuing = Stripe::IssuingService.new(@requestor)
50
51
  @mandates = Stripe::MandateService.new(@requestor)
51
52
  @payment_intents = Stripe::PaymentIntentService.new(@requestor)
@@ -63,10 +64,10 @@ module Stripe
63
64
  @refunds = Stripe::RefundService.new(@requestor)
64
65
  @reporting = Stripe::ReportingService.new(@requestor)
65
66
  @reviews = Stripe::ReviewService.new(@requestor)
66
- @sigma = Stripe::SigmaService.new(@requestor)
67
67
  @setup_attempts = Stripe::SetupAttemptService.new(@requestor)
68
68
  @setup_intents = Stripe::SetupIntentService.new(@requestor)
69
69
  @shipping_rates = Stripe::ShippingRateService.new(@requestor)
70
+ @sigma = Stripe::SigmaService.new(@requestor)
70
71
  @sources = Stripe::SourceService.new(@requestor)
71
72
  @subscriptions = Stripe::SubscriptionService.new(@requestor)
72
73
  @subscription_items = Stripe::SubscriptionItemService.new(@requestor)
@@ -76,6 +77,7 @@ module Stripe
76
77
  @tax_ids = Stripe::TaxIdService.new(@requestor)
77
78
  @tax_rates = Stripe::TaxRateService.new(@requestor)
78
79
  @terminal = Stripe::TerminalService.new(@requestor)
80
+ @test_helpers = Stripe::TestHelpersService.new(@requestor)
79
81
  @tokens = Stripe::TokenService.new(@requestor)
80
82
  @topups = Stripe::TopupService.new(@requestor)
81
83
  @transfers = Stripe::TransferService.new(@requestor)
@@ -4,14 +4,14 @@
4
4
  module Stripe
5
5
  module V2
6
6
  class BillingService < StripeService
7
- attr_reader :meter_event_session, :meter_event_adjustments, :meter_event_stream, :meter_events
7
+ attr_reader :meter_events, :meter_event_adjustments, :meter_event_session, :meter_event_stream
8
8
 
9
9
  def initialize(requestor)
10
- super(requestor)
11
- @meter_event_session = Stripe::V2::Billing::MeterEventSessionService.new(@requestor)
10
+ super
11
+ @meter_events = Stripe::V2::Billing::MeterEventService.new(@requestor)
12
12
  @meter_event_adjustments = Stripe::V2::Billing::MeterEventAdjustmentService.new(@requestor)
13
+ @meter_event_session = Stripe::V2::Billing::MeterEventSessionService.new(@requestor)
13
14
  @meter_event_stream = Stripe::V2::Billing::MeterEventStreamService.new(@requestor)
14
- @meter_events = Stripe::V2::Billing::MeterEventService.new(@requestor)
15
15
  end
16
16
  end
17
17
  end
@@ -4,12 +4,12 @@
4
4
  module Stripe
5
5
  module V2
6
6
  class CoreService < StripeService
7
- attr_reader :event_destinations, :events
7
+ attr_reader :events, :event_destinations
8
8
 
9
9
  def initialize(requestor)
10
- super(requestor)
11
- @event_destinations = Stripe::V2::Core::EventDestinationService.new(@requestor)
10
+ super
12
11
  @events = Stripe::V2::Core::EventService.new(@requestor)
12
+ @event_destinations = Stripe::V2::Core::EventDestinationService.new(@requestor)
13
13
  end
14
14
  end
15
15
  end
@@ -6,7 +6,7 @@ module Stripe
6
6
  attr_reader :billing, :core
7
7
 
8
8
  def initialize(requestor)
9
- super(requestor)
9
+ super
10
10
  @billing = Stripe::V2::BillingService.new(@requestor)
11
11
  @core = Stripe::V2::CoreService.new(@requestor)
12
12
  end
@@ -14,6 +14,7 @@ require "stripe/services/application_fee_service"
14
14
  require "stripe/services/apps/secret_service"
15
15
  require "stripe/services/apps_service"
16
16
  require "stripe/services/balance_service"
17
+ require "stripe/services/balance_settings_service"
17
18
  require "stripe/services/balance_transaction_service"
18
19
  require "stripe/services/billing/alert_service"
19
20
  require "stripe/services/billing/credit_balance_summary_service"
@@ -71,9 +72,9 @@ require "stripe/services/identity/verification_session_service"
71
72
  require "stripe/services/identity_service"
72
73
  require "stripe/services/invoice_item_service"
73
74
  require "stripe/services/invoice_line_item_service"
75
+ require "stripe/services/invoice_payment_service"
74
76
  require "stripe/services/invoice_rendering_template_service"
75
77
  require "stripe/services/invoice_service"
76
- require "stripe/services/invoice_upcoming_lines_service"
77
78
  require "stripe/services/issuing/authorization_service"
78
79
  require "stripe/services/issuing/card_service"
79
80
  require "stripe/services/issuing/cardholder_service"
@@ -116,8 +117,6 @@ require "stripe/services/sigma_service"
116
117
  require "stripe/services/source_service"
117
118
  require "stripe/services/source_transaction_service"
118
119
  require "stripe/services/subscription_item_service"
119
- require "stripe/services/subscription_item_usage_record_service"
120
- require "stripe/services/subscription_item_usage_record_summary_service"
121
120
  require "stripe/services/subscription_schedule_service"
122
121
  require "stripe/services/subscription_service"
123
122
  require "stripe/services/tax/calculation_line_item_service"
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "json"
4
+ require "stripe/events/unknown_event_notification"
4
5
 
5
6
  module Stripe
6
7
  class StripeClient
@@ -15,7 +16,7 @@ module Stripe
15
16
  CLIENT_OPTIONS = Set.new(%i[api_key stripe_account stripe_context api_version api_base uploads_base connect_base meter_events_base client_id])
16
17
 
17
18
  # Initializes a new StripeClient
18
- def initialize(api_key, # rubocop:todo Metrics/ParameterLists
19
+ def initialize(api_key,
19
20
  stripe_account: nil,
20
21
  stripe_context: nil,
21
22
  stripe_version: nil,
@@ -42,7 +43,7 @@ module Stripe
42
43
  connect_base: connect_base,
43
44
  meter_events_base: meter_events_base,
44
45
  client_id: client_id,
45
- }.reject { |_k, v| v.nil? }
46
+ }.compact
46
47
 
47
48
  config = StripeConfiguration.client_init(config_opts)
48
49
  @requestor = APIRequestor.new(config)
@@ -59,7 +60,7 @@ module Stripe
59
60
  extend Gem::Deprecate
60
61
  deprecate :request, :raw_request, 2024, 9
61
62
 
62
- def parse_thin_event(payload, sig_header, secret, tolerance: Webhook::DEFAULT_TOLERANCE)
63
+ def parse_event_notification(payload, sig_header, secret, tolerance: Webhook::DEFAULT_TOLERANCE)
63
64
  payload = payload.force_encoding("UTF-8") if payload.respond_to?(:force_encoding)
64
65
 
65
66
  # v2 events use the same signing mechanism as v1 events
@@ -67,14 +68,17 @@ module Stripe
67
68
 
68
69
  parsed = JSON.parse(payload, symbolize_names: true)
69
70
 
70
- Stripe::ThinEvent.new(parsed)
71
+ cls = Util.event_notification_classes.fetch(parsed[:type], Stripe::Events::UnknownEventNotification)
72
+
73
+ cls.new(parsed, self)
71
74
  end
72
75
 
73
- def raw_request(method, url, base_address: :api, params: {}, opts: {})
76
+ def raw_request(method, url, base_address: :api, params: {}, opts: {}, usage: nil)
74
77
  opts = Util.normalize_opts(opts)
75
78
  req_opts = RequestOptions.extract_opts_from_hash(opts)
76
79
 
77
- resp, = @requestor.send(:execute_request_internal, method, url, base_address, params, req_opts, usage: ["raw_request"])
80
+ params = params.to_h if params.is_a?(Stripe::RequestParams)
81
+ resp, = @requestor.send(:execute_request_internal, method, url, base_address, params, req_opts, usage: usage || ["raw_request"])
78
82
 
79
83
  @requestor.interpret_response(resp)
80
84
  end
@@ -45,12 +45,7 @@ module Stripe
45
45
  imported_options = USER_CONFIGURABLE_GLOBAL_OPTIONS - StripeClient::CLIENT_OPTIONS
46
46
  client_config = StripeConfiguration.setup do |instance|
47
47
  imported_options.each do |key|
48
- begin
49
- instance.public_send("#{key}=", global_config.public_send(key)) if global_config.respond_to?(key)
50
- rescue NotImplementedError => e
51
- # In Ruby <= 2.5, we can't set write_timeout on Net::HTTP, log an error and continue
52
- Util.log_error("Failed to set #{key} on client configuration: #{e}")
53
- end
48
+ instance.public_send("#{key}=", global_config.public_send(key)) if global_config.respond_to?(key)
54
49
  end
55
50
  end
56
51
  client_config.reverse_duplicate_merge(config_opts)
@@ -0,0 +1,68 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Stripe
4
+ # Represents hierarchical context for Stripe API operations.
5
+ #
6
+ # This class is immutable - all methods return new instances rather than
7
+ # modifying the existing instance. It provides utilities for building
8
+ # context hierarchies and converting to/from string representations.
9
+ class StripeContext
10
+ include Comparable
11
+
12
+ attr_reader :segments
13
+
14
+ # Creates a new StripeContext with the given segments.
15
+ def initialize(segments = nil)
16
+ @segments = (segments || []).map(&:to_s).freeze
17
+ end
18
+
19
+ # Parses a context string into a StripeContext instance.
20
+ def self.parse(context_str)
21
+ return new if context_str.nil? || context_str.empty?
22
+
23
+ new(context_str.split("/"))
24
+ end
25
+
26
+ # Creates a new StripeContext with an additional segment appended.
27
+ def push(segment)
28
+ segment_str = segment.to_s.strip
29
+ raise ArgumentError, "Segment cannot be empty or whitespace" if segment_str.empty?
30
+
31
+ new_segments = @segments + [segment_str]
32
+ self.class.new(new_segments)
33
+ end
34
+
35
+ # Creates a new StripeContext with the last segment removed.
36
+ # If there are no segments, returns a new empty StripeContext.
37
+ def pop
38
+ raise IndexError, "No segments to pop" if @segments.empty?
39
+
40
+ new_segments = @segments[0...-1]
41
+ self.class.new(new_segments)
42
+ end
43
+
44
+ # Converts this context to its string representation.
45
+ def to_s
46
+ @segments.join("/")
47
+ end
48
+
49
+ # Checks equality with another StripeContext.
50
+ def ==(other)
51
+ other.is_a?(StripeContext) && @segments == other.segments
52
+ end
53
+
54
+ # Alias for == to support eql? method
55
+ alias eql? ==
56
+
57
+ # Returns a human-readable representation for debugging.
58
+ def inspect
59
+ "#<#{self.class}:0x#{object_id.to_s(16)} segments=#{@segments.inspect}>"
60
+ end
61
+
62
+ # Returns true if the context has no segments.
63
+ # @return [Boolean] true if empty, false otherwise
64
+ def empty?
65
+ @segments.empty?
66
+ end
67
+ end
68
+ end
@@ -83,6 +83,7 @@ module Stripe
83
83
  @unsaved_values = Set.new
84
84
  @transient_values = Set.new
85
85
  @values[:id] = id if id
86
+ @id = id
86
87
  @last_response = nil
87
88
  @requestor = requestor || APIRequestor.active_requestor
88
89
  end
@@ -153,12 +154,22 @@ module Stripe
153
154
  def update_attributes(values, opts = {}, dirty: true)
154
155
  values.each do |k, v|
155
156
  add_accessors([k], values) unless metaclass.method_defined?(k.to_sym)
156
- @values[k] = Util.convert_to_stripe_object(v, opts, api_mode: @api_mode, requestor: @requestor)
157
+ @values[k] = convert_value_with_inner_types(k, v, opts)
157
158
  dirty_value!(@values[k]) if dirty
158
159
  @unsaved_values.add(k)
159
160
  end
160
161
  end
161
162
 
163
+ private def convert_value_with_inner_types(key, value, opts)
164
+ inner_class = _get_inner_class_type(key)
165
+
166
+ if inner_class
167
+ Util.convert_to_stripe_object(value, opts, api_mode: @api_mode, requestor: @requestor, klass: inner_class)
168
+ else
169
+ Util.convert_to_stripe_object(value, opts, api_mode: @api_mode, requestor: @requestor)
170
+ end
171
+ end
172
+
162
173
  def [](key)
163
174
  @values[key.to_sym]
164
175
  end
@@ -191,13 +202,13 @@ module Stripe
191
202
  value.respond_to?(:to_hash) ? value.to_hash : value
192
203
  end
193
204
 
194
- @values.each_with_object({}) do |(key, value), acc|
195
- acc[key] = case value
196
- when Array
197
- value.map(&maybe_to_hash)
198
- else
199
- maybe_to_hash.call(value)
200
- end
205
+ @values.transform_values do |value|
206
+ case value
207
+ when Array
208
+ value.map(&maybe_to_hash)
209
+ else
210
+ maybe_to_hash.call(value)
211
+ end
201
212
  end
202
213
  end
203
214
 
@@ -262,7 +273,7 @@ module Stripe
262
273
 
263
274
  # a `nil` that makes it out of `#serialize_params_value` signals an empty
264
275
  # value that we shouldn't appear in the serialized form of the object
265
- update_hash.reject! { |_, v| v.nil? }
276
+ update_hash.compact!
266
277
 
267
278
  update_hash
268
279
  end
@@ -302,6 +313,7 @@ module Stripe
302
313
  protected def remove_accessors(keys)
303
314
  # not available in the #instance_eval below
304
315
  protected_fields = self.class.protected_fields
316
+ obj = self # capture self to use inside instance_eval
305
317
 
306
318
  metaclass.instance_eval do
307
319
  keys.each do |k|
@@ -331,11 +343,16 @@ module Stripe
331
343
  "collide with an API property name.")
332
344
  end
333
345
  end
346
+
347
+ # Also remove instance variables so that static attr_readers (if any exist)
348
+ # will return nil instead of stale data or data of the wrong type
349
+ ivar_name = :"@#{k}"
350
+ obj.remove_instance_variable(ivar_name) if obj.instance_variable_defined?(ivar_name)
334
351
  end
335
352
  end
336
353
  end
337
354
 
338
- protected def add_accessors(keys, values)
355
+ protected def add_accessors(keys, values) # rubocop:todo Metrics/PerceivedComplexity
339
356
  # not available in the #instance_eval below
340
357
  protected_fields = self.class.protected_fields
341
358
 
@@ -369,6 +386,19 @@ module Stripe
369
386
  define_method(:"#{k}?") { @values[k] } if [FalseClass, TrueClass].include?(values[k].class)
370
387
  end
371
388
  end
389
+
390
+ keys.each do |k|
391
+ if Util.valid_variable_name?(k)
392
+ instance_variable_set(:"@#{k}", values[k])
393
+ else
394
+ Util.log_info(<<~LOG
395
+ The variable name '#{k}' is not a valid Ruby variable name.
396
+ Use ["#{k}"] to access this field, skipping instance variable instantiation...
397
+ LOG
398
+ )
399
+
400
+ end
401
+ end
372
402
  end
373
403
 
374
404
  # Disabling the cop because it's confused by the fact that the methods are
@@ -468,13 +498,14 @@ module Stripe
468
498
 
469
499
  # Should only be for v2 events and lists, for now.
470
500
  protected def _request(method:, path:, base_address:, params: {}, opts: {})
471
- req_opts = RequestOptions.combine_opts(@opts, opts)
501
+ req_opts = RequestOptions.extract_opts_from_hash(opts)
502
+ req_opts = RequestOptions.combine_opts(@opts, req_opts)
472
503
  @requestor.execute_request(
473
504
  method,
474
505
  path,
475
506
  base_address,
476
507
  params: params,
477
- opts: RequestOptions.extract_opts_from_hash(req_opts)
508
+ opts: req_opts
478
509
  )
479
510
  end
480
511
 
@@ -605,5 +636,19 @@ module Stripe
605
636
  update[k] = ""
606
637
  end
607
638
  end
639
+
640
+ # Instance methods to get inner class types
641
+ def _get_inner_class_type(field_name)
642
+ self.class.inner_class_types[field_name.to_sym]
643
+ end
644
+
645
+ # Class methods for inner class types, similar to Python's implementation
646
+ def self.inner_class_types
647
+ @inner_class_types ||= {}
648
+ end
649
+
650
+ def self.field_remappings
651
+ @field_remappings ||= {}
652
+ end
608
653
  end
609
654
  end
@@ -14,7 +14,8 @@ module Stripe
14
14
  path,
15
15
  base_address,
16
16
  params: params,
17
- opts: RequestOptions.extract_opts_from_hash(opts)
17
+ opts: RequestOptions.extract_opts_from_hash(opts),
18
+ usage: ["stripe_client"]
18
19
  )
19
20
  end
20
21
 
@@ -25,6 +26,7 @@ module Stripe
25
26
  base_address,
26
27
  params: params,
27
28
  opts: RequestOptions.extract_opts_from_hash(opts),
29
+ usage: ["stripe_client"],
28
30
  &read_body_chunk_block
29
31
  )
30
32
  end
data/lib/stripe/util.rb CHANGED
@@ -4,6 +4,9 @@ require "cgi"
4
4
 
5
5
  module Stripe
6
6
  module Util
7
+ LEGAL_FIRST_CHARACTER = /[a-zA-Z_]/.freeze
8
+ LEGAL_VARIABLE_CHARACTER = /[a-zA-Z0-9_]/.freeze
9
+
7
10
  def self.objects_to_ids(obj)
8
11
  case obj
9
12
  when APIResource
@@ -27,8 +30,12 @@ module Stripe
27
30
  @v2_object_classes ||= Stripe::ObjectTypes.v2_object_names_to_classes
28
31
  end
29
32
 
30
- def self.thin_event_classes
31
- @thin_event_classes ||= Stripe::EventTypes.thin_event_names_to_classes
33
+ def self.v2_event_classes
34
+ @v2_event_classes ||= Stripe::EventTypes.v2_event_types_to_classes
35
+ end
36
+
37
+ def self.event_notification_classes
38
+ @event_notification_classes ||= Stripe::EventTypes.event_notification_types_to_classes
32
39
  end
33
40
 
34
41
  def self.object_name_matches_class?(object_name, klass)
@@ -96,8 +103,8 @@ module Stripe
96
103
  # will be reused on subsequent API calls.
97
104
  # * +opts+ - Options for +StripeObject+ like an API key that will be reused
98
105
  # on subsequent API calls.
99
- def self.convert_to_stripe_object(data, opts = {}, api_mode: :v1, requestor: nil)
100
- convert_to_stripe_object_with_params(data, {}, opts, api_mode: api_mode, requestor: requestor)
106
+ def self.convert_to_stripe_object(data, opts = {}, api_mode: :v1, requestor: nil, klass: nil)
107
+ convert_to_stripe_object_with_params(data, {}, opts, api_mode: api_mode, requestor: requestor, klass: klass)
101
108
  end
102
109
 
103
110
  # Converts a hash of fields or an array of hashes into a +StripeObject+ or
@@ -115,23 +122,26 @@ module Stripe
115
122
  # * +last_response+ - The raw response associated with the object.
116
123
  # * +api_mode+ - The API mode to use when converting the object, either :v1 or :v2.
117
124
  # * +requestor+ - The requestor to use when constructing the object.
125
+ # * +v2_deleted_object+ - If true, ignore the object tag for casting purposes
126
+ # * +klass+ - The class to use for inner types
118
127
  def self.convert_to_stripe_object_with_params(
119
128
  data,
120
129
  params,
121
130
  opts = {},
122
131
  last_response = nil,
123
132
  api_mode: :v1,
124
- requestor: nil
133
+ requestor: nil,
134
+ v2_deleted_object: false,
135
+ klass: nil
125
136
  )
126
137
  opts = normalize_opts(opts)
127
138
 
128
139
  case data
129
140
  when Array
130
- data.map { |i| convert_to_stripe_object(i, opts, api_mode: api_mode, requestor: requestor) }
141
+ data.map { |i| convert_to_stripe_object(i, opts, api_mode: api_mode, requestor: requestor, klass: klass) }
131
142
  when Hash
132
143
  # TODO: This is a terrible hack.
133
- # Waiting on https://jira.corp.stripe.com/browse/API_SERVICES-3167 to add
134
- # an object in v2 lists
144
+ # Waiting on https://go/j/API_SERVICES-3167 to add an object in v2 lists
135
145
  if api_mode == :v2 && data.include?(:data) && data.include?(:next_page_url)
136
146
  return V2::ListObject.construct_from(data, opts, last_response, api_mode, requestor)
137
147
  end
@@ -140,9 +150,13 @@ module Stripe
140
150
  # to generic StripeObject
141
151
  object_type = data[:type] || data["type"]
142
152
  object_name = data[:object] || data["object"]
143
- object_class = if api_mode == :v2
144
- if object_name == "v2.core.event" && thin_event_classes.key?(object_type)
145
- thin_event_classes.fetch(object_type)
153
+ object_class = if klass
154
+ klass
155
+ elsif api_mode == :v2
156
+ if v2_deleted_object
157
+ V2::DeletedObject
158
+ elsif object_name == "v2.core.event" && v2_event_classes.key?(object_type)
159
+ v2_event_classes.fetch(object_type)
146
160
  else
147
161
  v2_object_classes.fetch(
148
162
  object_name, StripeObject
@@ -309,6 +323,14 @@ module Stripe
309
323
  end
310
324
  end
311
325
 
326
+ # Return false for strings that are invalid variable names
327
+ # Does NOT expect there to be a preceding '@' for instance variables
328
+ def self.valid_variable_name?(key)
329
+ return false if key.empty? || key[0] !~ LEGAL_FIRST_CHARACTER
330
+
331
+ key[1..].chars.all? { |char| char =~ LEGAL_VARIABLE_CHARACTER }
332
+ end
333
+
312
334
  def self.check_string_argument!(key)
313
335
  raise TypeError, "argument must be a string" unless key.is_a?(String)
314
336
 
@@ -406,7 +428,7 @@ module Stripe
406
428
  private_class_method :level_name
407
429
 
408
430
  def self.log_internal(message, data = {}, color:, level:, logger:, out:)
409
- data_str = data.reject { |_k, v| v.nil? }
431
+ data_str = data.compact
410
432
  .map do |(k, v)|
411
433
  format("%<key>s=%<value>s",
412
434
  key: colorize(k, color, logger.nil? && !out.nil? && out.isatty),