stripe 18.1.0 → 18.2.0.pre.beta.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 (446) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +34 -0
  3. data/lib/stripe/api_version.rb +1 -2
  4. data/lib/stripe/errors.rb +63 -0
  5. data/lib/stripe/event_types.rb +213 -0
  6. data/lib/stripe/events/v2_core_account_closed_event.rb +44 -0
  7. data/lib/stripe/events/v2_core_account_created_event.rb +44 -0
  8. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +63 -0
  9. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +44 -0
  10. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +63 -0
  11. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +44 -0
  12. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +63 -0
  13. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +44 -0
  14. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +63 -0
  15. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +44 -0
  16. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +44 -0
  17. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +44 -0
  18. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +44 -0
  19. data/lib/stripe/events/v2_core_account_link_returned_event.rb +42 -0
  20. data/lib/stripe/events/v2_core_account_person_created_event.rb +61 -0
  21. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +61 -0
  22. data/lib/stripe/events/v2_core_account_person_updated_event.rb +61 -0
  23. data/lib/stripe/events/v2_core_account_updated_event.rb +44 -0
  24. data/lib/stripe/events/v2_core_health_event_generation_failure_resolved_event.rb +78 -0
  25. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +44 -0
  26. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +44 -0
  27. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +44 -0
  28. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +44 -0
  29. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +44 -0
  30. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +61 -0
  31. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +44 -0
  32. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +44 -0
  33. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +44 -0
  34. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +44 -0
  35. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +44 -0
  36. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +44 -0
  37. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +44 -0
  38. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +44 -0
  39. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +44 -0
  40. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +44 -0
  41. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +44 -0
  42. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +44 -0
  43. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +44 -0
  44. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +44 -0
  45. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +44 -0
  46. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +44 -0
  47. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +44 -0
  48. data/lib/stripe/events/v2_money_management_payout_method_created_event.rb +44 -0
  49. data/lib/stripe/events/v2_money_management_payout_method_updated_event.rb +44 -0
  50. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +61 -0
  51. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +44 -0
  52. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +44 -0
  53. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +44 -0
  54. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +44 -0
  55. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +44 -0
  56. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +44 -0
  57. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +44 -0
  58. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +44 -0
  59. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +61 -0
  60. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +44 -0
  61. data/lib/stripe/object_types.rb +52 -0
  62. data/lib/stripe/params/account_create_params.rb +304 -1
  63. data/lib/stripe/params/account_notice_list_params.rb +25 -0
  64. data/lib/stripe/params/account_notice_retrieve_params.rb +13 -0
  65. data/lib/stripe/params/account_notice_update_params.rb +36 -0
  66. data/lib/stripe/params/account_session_create_params.rb +226 -1
  67. data/lib/stripe/params/account_update_params.rb +266 -0
  68. data/lib/stripe/params/billing/analytics/meter_usage_retrieve_params.rb +65 -0
  69. data/lib/stripe/params/capital/financing_offer_list_params.rb +58 -0
  70. data/lib/stripe/params/capital/financing_offer_mark_delivered_params.rb +15 -0
  71. data/lib/stripe/params/capital/financing_offer_retrieve_params.rb +15 -0
  72. data/lib/stripe/params/capital/financing_summary_retrieve_params.rb +15 -0
  73. data/lib/stripe/params/capital/financing_transaction_list_params.rb +45 -0
  74. data/lib/stripe/params/capital/financing_transaction_retrieve_params.rb +15 -0
  75. data/lib/stripe/params/charge_capture_params.rb +1648 -0
  76. data/lib/stripe/params/charge_update_params.rb +1648 -0
  77. data/lib/stripe/params/checkout/session_create_params.rb +129 -3
  78. data/lib/stripe/params/checkout/session_update_params.rb +141 -1
  79. data/lib/stripe/params/confirmation_token_create_params.rb +77 -0
  80. data/lib/stripe/params/coupon_create_params.rb +17 -1
  81. data/lib/stripe/params/customer_session_create_params.rb +32 -1
  82. data/lib/stripe/params/dispute_update_params.rb +10 -1
  83. data/lib/stripe/params/external_account_create_params.rb +134 -0
  84. data/lib/stripe/params/external_account_delete_params.rb +6 -0
  85. data/lib/stripe/params/external_account_list_params.rb +25 -0
  86. data/lib/stripe/params/external_account_retrieve_params.rb +13 -0
  87. data/lib/stripe/params/external_account_update_params.rb +91 -0
  88. data/lib/stripe/params/financial_connections/account_inferred_balance_list_params.rb +24 -0
  89. data/lib/stripe/params/financial_connections/institution_list_params.rb +24 -0
  90. data/lib/stripe/params/financial_connections/institution_retrieve_params.rb +15 -0
  91. data/lib/stripe/params/financial_connections/session_create_params.rb +30 -1
  92. data/lib/stripe/params/fx_quote_create_params.rb +73 -0
  93. data/lib/stripe/params/fx_quote_list_params.rb +22 -0
  94. data/lib/stripe/params/fx_quote_retrieve_params.rb +13 -0
  95. data/lib/stripe/params/invoice_add_lines_params.rb +33 -1
  96. data/lib/stripe/params/invoice_attach_payment_params.rb +43 -1
  97. data/lib/stripe/params/invoice_create_params.rb +107 -2
  98. data/lib/stripe/params/invoice_create_preview_params.rb +822 -9
  99. data/lib/stripe/params/invoice_item_create_params.rb +33 -1
  100. data/lib/stripe/params/invoice_item_update_params.rb +33 -1
  101. data/lib/stripe/params/invoice_line_item_update_params.rb +33 -1
  102. data/lib/stripe/params/invoice_update_lines_params.rb +33 -1
  103. data/lib/stripe/params/invoice_update_params.rb +107 -2
  104. data/lib/stripe/params/issuing/cardholder_create_params.rb +2 -1
  105. data/lib/stripe/params/issuing/credit_underwriting_record_correct_params.rb +163 -0
  106. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_application_params.rb +50 -0
  107. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_proactive_review_params.rb +128 -0
  108. data/lib/stripe/params/issuing/credit_underwriting_record_list_params.rb +24 -0
  109. data/lib/stripe/params/issuing/credit_underwriting_record_report_decision_params.rb +86 -0
  110. data/lib/stripe/params/issuing/credit_underwriting_record_retrieve_params.rb +15 -0
  111. data/lib/stripe/params/issuing/dispute_settlement_detail_list_params.rb +33 -0
  112. data/lib/stripe/params/issuing/dispute_settlement_detail_retrieve_params.rb +15 -0
  113. data/lib/stripe/params/issuing/fraud_liability_debit_list_params.rb +44 -0
  114. data/lib/stripe/params/issuing/fraud_liability_debit_retrieve_params.rb +15 -0
  115. data/lib/stripe/params/issuing/transaction_list_params.rb +4 -0
  116. data/lib/stripe/params/mandate_list_params.rb +39 -0
  117. data/lib/stripe/params/margin_create_params.rb +25 -0
  118. data/lib/stripe/params/margin_list_params.rb +25 -0
  119. data/lib/stripe/params/margin_retrieve_params.rb +13 -0
  120. data/lib/stripe/params/margin_update_params.rb +22 -0
  121. data/lib/stripe/params/order_cancel_params.rb +13 -0
  122. data/lib/stripe/params/order_create_params.rb +2061 -0
  123. data/lib/stripe/params/order_line_item_list_params.rb +22 -0
  124. data/lib/stripe/params/order_list_line_items_params.rb +22 -0
  125. data/lib/stripe/params/order_list_params.rb +25 -0
  126. data/lib/stripe/params/order_reopen_params.rb +13 -0
  127. data/lib/stripe/params/order_retrieve_params.rb +13 -0
  128. data/lib/stripe/params/order_submit_params.rb +16 -0
  129. data/lib/stripe/params/order_update_params.rb +2065 -0
  130. data/lib/stripe/params/payment_intent_capture_params.rb +1627 -1
  131. data/lib/stripe/params/payment_intent_confirm_params.rb +2971 -11
  132. data/lib/stripe/params/payment_intent_create_params.rb +2971 -11
  133. data/lib/stripe/params/payment_intent_decrement_authorization_params.rb +73 -0
  134. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +21 -0
  135. data/lib/stripe/params/payment_intent_trigger_action_params.rb +27 -0
  136. data/lib/stripe/params/payment_intent_update_params.rb +3003 -12
  137. data/lib/stripe/params/payment_method_configuration_create_params.rb +105 -0
  138. data/lib/stripe/params/payment_method_configuration_update_params.rb +105 -0
  139. data/lib/stripe/params/payment_method_create_params.rb +77 -0
  140. data/lib/stripe/params/price_update_params.rb +19 -0
  141. data/lib/stripe/params/privacy/redaction_job_cancel_params.rb +15 -0
  142. data/lib/stripe/params/privacy/redaction_job_create_params.rb +67 -0
  143. data/lib/stripe/params/privacy/redaction_job_list_params.rb +27 -0
  144. data/lib/stripe/params/privacy/redaction_job_retrieve_params.rb +15 -0
  145. data/lib/stripe/params/privacy/redaction_job_run_params.rb +15 -0
  146. data/lib/stripe/params/privacy/redaction_job_update_params.rb +18 -0
  147. data/lib/stripe/params/privacy/redaction_job_validate_params.rb +15 -0
  148. data/lib/stripe/params/privacy/redaction_job_validation_error_list_params.rb +24 -0
  149. data/lib/stripe/params/quote_create_params.rb +801 -3
  150. data/lib/stripe/params/quote_line_list_params.rb +22 -0
  151. data/lib/stripe/params/quote_list_lines_params.rb +22 -0
  152. data/lib/stripe/params/quote_list_params.rb +4 -0
  153. data/lib/stripe/params/quote_list_preview_invoice_lines_params.rb +22 -0
  154. data/lib/stripe/params/quote_mark_draft_params.rb +13 -0
  155. data/lib/stripe/params/quote_mark_stale_params.rb +16 -0
  156. data/lib/stripe/params/quote_preview_invoice_list_params.rb +22 -0
  157. data/lib/stripe/params/quote_preview_subscription_schedule_list_params.rb +22 -0
  158. data/lib/stripe/params/quote_reestimate_params.rb +13 -0
  159. data/lib/stripe/params/quote_update_params.rb +809 -4
  160. data/lib/stripe/params/reserve/hold_list_params.rb +53 -0
  161. data/lib/stripe/params/reserve/hold_retrieve_params.rb +15 -0
  162. data/lib/stripe/params/reserve/plan_retrieve_params.rb +15 -0
  163. data/lib/stripe/params/reserve/release_list_params.rb +41 -0
  164. data/lib/stripe/params/reserve/release_retrieve_params.rb +15 -0
  165. data/lib/stripe/params/setup_intent_confirm_params.rb +158 -3
  166. data/lib/stripe/params/setup_intent_create_params.rb +158 -3
  167. data/lib/stripe/params/setup_intent_update_params.rb +158 -3
  168. data/lib/stripe/params/subscription_attach_cadence_params.rb +16 -0
  169. data/lib/stripe/params/subscription_create_params.rb +254 -5
  170. data/lib/stripe/params/subscription_item_create_params.rb +46 -2
  171. data/lib/stripe/params/subscription_item_update_params.rb +29 -1
  172. data/lib/stripe/params/subscription_schedule_amend_params.rb +570 -0
  173. data/lib/stripe/params/subscription_schedule_create_params.rb +163 -5
  174. data/lib/stripe/params/subscription_schedule_update_params.rb +163 -5
  175. data/lib/stripe/params/subscription_update_params.rb +237 -4
  176. data/lib/stripe/params/tax/form_list_params.rb +51 -0
  177. data/lib/stripe/params/tax/form_pdf_params.rb +15 -0
  178. data/lib/stripe/params/tax/form_retrieve_params.rb +15 -0
  179. data/lib/stripe/params/terminal/configuration_create_params.rb +13 -0
  180. data/lib/stripe/params/terminal/configuration_update_params.rb +13 -0
  181. data/lib/stripe/params/terminal/reader_collected_data_retrieve_params.rb +15 -0
  182. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +77 -0
  183. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +25 -1
  184. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +25 -1
  185. data/lib/stripe/params/transfer_create_params.rb +4 -0
  186. data/lib/stripe/params/treasury/financial_account_create_params.rb +8 -1
  187. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +4 -1
  188. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +4 -1
  189. data/lib/stripe/params/treasury/financial_account_update_params.rb +8 -1
  190. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +24 -0
  191. data/lib/stripe/params/treasury/received_credit_create_params.rb +25 -1
  192. data/lib/stripe/params/treasury/received_debit_create_params.rb +25 -1
  193. data/lib/stripe/params/v2/billing/bill_setting_create_params.rb +74 -0
  194. data/lib/stripe/params/v2/billing/bill_setting_list_params.rb +21 -0
  195. data/lib/stripe/params/v2/billing/bill_setting_retrieve_params.rb +10 -0
  196. data/lib/stripe/params/v2/billing/bill_setting_update_params.rb +80 -0
  197. data/lib/stripe/params/v2/billing/bill_settings/version_list_params.rb +19 -0
  198. data/lib/stripe/params/v2/billing/bill_settings/version_retrieve_params.rb +12 -0
  199. data/lib/stripe/params/v2/billing/cadence_cancel_params.rb +10 -0
  200. data/lib/stripe/params/v2/billing/cadence_create_params.rb +253 -0
  201. data/lib/stripe/params/v2/billing/cadence_list_params.rb +43 -0
  202. data/lib/stripe/params/v2/billing/cadence_retrieve_params.rb +17 -0
  203. data/lib/stripe/params/v2/billing/cadence_update_params.rb +75 -0
  204. data/lib/stripe/params/v2/billing/collection_setting_create_params.rb +223 -0
  205. data/lib/stripe/params/v2/billing/collection_setting_list_params.rb +21 -0
  206. data/lib/stripe/params/v2/billing/collection_setting_retrieve_params.rb +10 -0
  207. data/lib/stripe/params/v2/billing/collection_setting_update_params.rb +229 -0
  208. data/lib/stripe/params/v2/billing/collection_settings/version_list_params.rb +19 -0
  209. data/lib/stripe/params/v2/billing/collection_settings/version_retrieve_params.rb +12 -0
  210. data/lib/stripe/params/v2/billing/profile_create_params.rb +37 -0
  211. data/lib/stripe/params/v2/billing/profile_list_params.rb +40 -0
  212. data/lib/stripe/params/v2/billing/profile_retrieve_params.rb +10 -0
  213. data/lib/stripe/params/v2/billing/profile_update_params.rb +35 -0
  214. data/lib/stripe/params/v2/core/account_create_params.rb +251 -4
  215. data/lib/stripe/params/v2/core/account_token_create_params.rb +13 -1
  216. data/lib/stripe/params/v2/core/account_update_params.rb +243 -3
  217. data/lib/stripe/params/v2/core/vault/gb_bank_account_acknowledge_confirmation_of_payee_params.rb +12 -0
  218. data/lib/stripe/params/v2/core/vault/gb_bank_account_archive_params.rb +12 -0
  219. data/lib/stripe/params/v2/core/vault/gb_bank_account_create_params.rb +50 -0
  220. data/lib/stripe/params/v2/core/vault/gb_bank_account_initiate_confirmation_of_payee_params.rb +22 -0
  221. data/lib/stripe/params/v2/core/vault/gb_bank_account_list_params.rb +19 -0
  222. data/lib/stripe/params/v2/core/vault/gb_bank_account_retrieve_params.rb +12 -0
  223. data/lib/stripe/params/v2/core/vault/us_bank_account_archive_params.rb +12 -0
  224. data/lib/stripe/params/v2/core/vault/us_bank_account_confirm_microdeposits_params.rb +22 -0
  225. data/lib/stripe/params/v2/core/vault/us_bank_account_create_params.rb +33 -0
  226. data/lib/stripe/params/v2/core/vault/us_bank_account_list_params.rb +22 -0
  227. data/lib/stripe/params/v2/core/vault/us_bank_account_retrieve_params.rb +12 -0
  228. data/lib/stripe/params/v2/core/vault/us_bank_account_send_microdeposits_params.rb +12 -0
  229. data/lib/stripe/params/v2/core/vault/us_bank_account_update_params.rb +22 -0
  230. data/lib/stripe/params/v2/money_management/adjustment_list_params.rb +48 -0
  231. data/lib/stripe/params/v2/money_management/adjustment_retrieve_params.rb +10 -0
  232. data/lib/stripe/params/v2/money_management/financial_account_close_params.rb +28 -0
  233. data/lib/stripe/params/v2/money_management/financial_account_create_params.rb +34 -0
  234. data/lib/stripe/params/v2/money_management/financial_account_list_params.rb +20 -0
  235. data/lib/stripe/params/v2/money_management/financial_account_retrieve_params.rb +10 -0
  236. data/lib/stripe/params/v2/money_management/financial_account_update_params.rb +20 -0
  237. data/lib/stripe/params/v2/money_management/financial_address_create_params.rb +20 -0
  238. data/lib/stripe/params/v2/money_management/financial_address_list_params.rb +23 -0
  239. data/lib/stripe/params/v2/money_management/financial_address_retrieve_params.rb +17 -0
  240. data/lib/stripe/params/v2/money_management/inbound_transfer_create_params.rb +62 -0
  241. data/lib/stripe/params/v2/money_management/inbound_transfer_list_params.rb +44 -0
  242. data/lib/stripe/params/v2/money_management/inbound_transfer_retrieve_params.rb +10 -0
  243. data/lib/stripe/params/v2/money_management/outbound_payment_cancel_params.rb +10 -0
  244. data/lib/stripe/params/v2/money_management/outbound_payment_create_params.rb +110 -0
  245. data/lib/stripe/params/v2/money_management/outbound_payment_list_params.rb +52 -0
  246. data/lib/stripe/params/v2/money_management/outbound_payment_quote_create_params.rb +79 -0
  247. data/lib/stripe/params/v2/money_management/outbound_payment_quote_retrieve_params.rb +10 -0
  248. data/lib/stripe/params/v2/money_management/outbound_payment_retrieve_params.rb +10 -0
  249. data/lib/stripe/params/v2/money_management/outbound_setup_intent_cancel_params.rb +10 -0
  250. data/lib/stripe/params/v2/money_management/outbound_setup_intent_create_params.rb +85 -0
  251. data/lib/stripe/params/v2/money_management/outbound_setup_intent_list_params.rb +17 -0
  252. data/lib/stripe/params/v2/money_management/outbound_setup_intent_retrieve_params.rb +10 -0
  253. data/lib/stripe/params/v2/money_management/outbound_setup_intent_update_params.rb +80 -0
  254. data/lib/stripe/params/v2/money_management/outbound_transfer_cancel_params.rb +10 -0
  255. data/lib/stripe/params/v2/money_management/outbound_transfer_create_params.rb +89 -0
  256. data/lib/stripe/params/v2/money_management/outbound_transfer_list_params.rb +48 -0
  257. data/lib/stripe/params/v2/money_management/outbound_transfer_retrieve_params.rb +10 -0
  258. data/lib/stripe/params/v2/money_management/payout_method_archive_params.rb +10 -0
  259. data/lib/stripe/params/v2/money_management/payout_method_list_params.rb +31 -0
  260. data/lib/stripe/params/v2/money_management/payout_method_retrieve_params.rb +10 -0
  261. data/lib/stripe/params/v2/money_management/payout_method_unarchive_params.rb +10 -0
  262. data/lib/stripe/params/v2/money_management/payout_methods_bank_account_spec_retrieve_params.rb +17 -0
  263. data/lib/stripe/params/v2/money_management/received_credit_list_params.rb +44 -0
  264. data/lib/stripe/params/v2/money_management/received_credit_retrieve_params.rb +10 -0
  265. data/lib/stripe/params/v2/money_management/received_debit_list_params.rb +17 -0
  266. data/lib/stripe/params/v2/money_management/received_debit_retrieve_params.rb +10 -0
  267. data/lib/stripe/params/v2/money_management/transaction_entry_list_params.rb +43 -0
  268. data/lib/stripe/params/v2/money_management/transaction_entry_retrieve_params.rb +10 -0
  269. data/lib/stripe/params/v2/money_management/transaction_list_params.rb +47 -0
  270. data/lib/stripe/params/v2/money_management/transaction_retrieve_params.rb +10 -0
  271. data/lib/stripe/params/v2/test_helpers/financial_address_credit_params.rb +34 -0
  272. data/lib/stripe/params/v2/test_helpers/financial_address_generate_microdeposits_params.rb +10 -0
  273. data/lib/stripe/params.rb +151 -0
  274. data/lib/stripe/resources/account.rb +182 -1
  275. data/lib/stripe/resources/account_notice.rb +94 -0
  276. data/lib/stripe/resources/account_session.rb +81 -0
  277. data/lib/stripe/resources/billing/analytics/meter_usage.rb +33 -0
  278. data/lib/stripe/resources/billing/analytics/meter_usage_row.rb +38 -0
  279. data/lib/stripe/resources/capital/financing_offer.rb +142 -0
  280. data/lib/stripe/resources/capital/financing_summary.rb +82 -0
  281. data/lib/stripe/resources/capital/financing_transaction.rb +99 -0
  282. data/lib/stripe/resources/card.rb +2 -0
  283. data/lib/stripe/resources/charge.rb +215 -1
  284. data/lib/stripe/resources/checkout/session.rb +104 -4
  285. data/lib/stripe/resources/confirmation_token.rb +133 -0
  286. data/lib/stripe/resources/coupon.rb +26 -1
  287. data/lib/stripe/resources/credit_note_line_item.rb +18 -0
  288. data/lib/stripe/resources/customer_session.rb +36 -0
  289. data/lib/stripe/resources/dispute.rb +22 -0
  290. data/lib/stripe/resources/event.rb +64 -1
  291. data/lib/stripe/resources/financial_connections/account.rb +25 -0
  292. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +35 -0
  293. data/lib/stripe/resources/financial_connections/institution.rb +127 -0
  294. data/lib/stripe/resources/financial_connections/session.rb +65 -1
  295. data/lib/stripe/resources/fx_quote.rb +147 -0
  296. data/lib/stripe/resources/invoice.rb +150 -1
  297. data/lib/stripe/resources/invoice_item.rb +2 -0
  298. data/lib/stripe/resources/invoice_line_item.rb +40 -0
  299. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +263 -0
  300. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +71 -0
  301. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +51 -0
  302. data/lib/stripe/resources/issuing/settlement.rb +61 -0
  303. data/lib/stripe/resources/issuing/transaction.rb +2 -0
  304. data/lib/stripe/resources/line_item.rb +66 -1
  305. data/lib/stripe/resources/mandate.rb +43 -0
  306. data/lib/stripe/resources/margin.rb +64 -0
  307. data/lib/stripe/resources/order.rb +987 -0
  308. data/lib/stripe/resources/payment_attempt_record.rb +181 -1
  309. data/lib/stripe/resources/payment_intent.rb +737 -4
  310. data/lib/stripe/resources/payment_method.rb +135 -0
  311. data/lib/stripe/resources/payment_method_configuration.rb +170 -0
  312. data/lib/stripe/resources/payment_record.rb +181 -1
  313. data/lib/stripe/resources/price.rb +20 -0
  314. data/lib/stripe/resources/privacy/redaction_job.rb +187 -0
  315. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +49 -0
  316. data/lib/stripe/resources/quote.rb +569 -2
  317. data/lib/stripe/resources/quote_line.rb +521 -0
  318. data/lib/stripe/resources/quote_preview_invoice.rb +1182 -0
  319. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +732 -0
  320. data/lib/stripe/resources/refund.rb +18 -0
  321. data/lib/stripe/resources/reserve/hold.rb +74 -0
  322. data/lib/stripe/resources/reserve/plan.rb +78 -0
  323. data/lib/stripe/resources/reserve/release.rb +77 -0
  324. data/lib/stripe/resources/setup_attempt.rb +48 -0
  325. data/lib/stripe/resources/setup_intent.rb +88 -1
  326. data/lib/stripe/resources/source.rb +38 -0
  327. data/lib/stripe/resources/subscription.rb +230 -0
  328. data/lib/stripe/resources/subscription_item.rb +20 -1
  329. data/lib/stripe/resources/subscription_schedule.rb +196 -3
  330. data/lib/stripe/resources/tax/form.rb +264 -0
  331. data/lib/stripe/resources/terminal/configuration.rb +16 -0
  332. data/lib/stripe/resources/terminal/reader.rb +8 -0
  333. data/lib/stripe/resources/terminal/reader_collected_data.rb +47 -0
  334. data/lib/stripe/resources/transfer.rb +2 -0
  335. data/lib/stripe/resources/treasury/financial_account.rb +2 -0
  336. data/lib/stripe/resources/treasury/financial_account_features.rb +2 -0
  337. data/lib/stripe/resources/treasury/outbound_transfer.rb +30 -0
  338. data/lib/stripe/resources/treasury/received_credit.rb +30 -0
  339. data/lib/stripe/resources/treasury/received_debit.rb +32 -0
  340. data/lib/stripe/resources/v2/billing/bill_setting.rb +102 -0
  341. data/lib/stripe/resources/v2/billing/bill_setting_version.rb +90 -0
  342. data/lib/stripe/resources/v2/billing/cadence.rb +609 -0
  343. data/lib/stripe/resources/v2/billing/collection_setting.rb +274 -0
  344. data/lib/stripe/resources/v2/billing/collection_setting_version.rb +262 -0
  345. data/lib/stripe/resources/v2/billing/profile.rb +46 -0
  346. data/lib/stripe/resources/v2/core/account.rb +565 -3
  347. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +114 -0
  348. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +83 -0
  349. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +28 -0
  350. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +44 -0
  351. data/lib/stripe/resources/v2/money_management/adjustment.rb +82 -0
  352. data/lib/stripe/resources/v2/money_management/financial_account.rb +188 -0
  353. data/lib/stripe/resources/v2/money_management/financial_address.rb +132 -0
  354. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +197 -0
  355. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +261 -0
  356. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +202 -0
  357. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +69 -0
  358. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +240 -0
  359. data/lib/stripe/resources/v2/money_management/payout_method.rb +111 -0
  360. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +81 -0
  361. data/lib/stripe/resources/v2/money_management/received_credit.rb +246 -0
  362. data/lib/stripe/resources/v2/money_management/received_debit.rb +152 -0
  363. data/lib/stripe/resources/v2/money_management/transaction.rb +180 -0
  364. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +153 -0
  365. data/lib/stripe/resources.rb +104 -0
  366. data/lib/stripe/services/account_notice_service.rb +39 -0
  367. data/lib/stripe/services/billing/analytics/meter_usage_service.rb +21 -0
  368. data/lib/stripe/services/billing/analytics_service.rb +15 -0
  369. data/lib/stripe/services/billing_service.rb +2 -1
  370. data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
  371. data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
  372. data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
  373. data/lib/stripe/services/capital_service.rb +15 -0
  374. data/lib/stripe/services/external_account_service.rb +68 -0
  375. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
  376. data/lib/stripe/services/financial_connections/account_service.rb +3 -1
  377. data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
  378. data/lib/stripe/services/financial_connections_service.rb +2 -1
  379. data/lib/stripe/services/fx_quote_service.rb +27 -0
  380. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
  381. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
  382. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
  383. data/lib/stripe/services/issuing_service.rb +5 -1
  384. data/lib/stripe/services/mandate_service.rb +5 -0
  385. data/lib/stripe/services/margin_service.rb +50 -0
  386. data/lib/stripe/services/order_line_item_service.rb +17 -0
  387. data/lib/stripe/services/order_service.rb +78 -0
  388. data/lib/stripe/services/payment_intent_service.rb +37 -0
  389. data/lib/stripe/services/privacy/redaction_job_service.rb +104 -0
  390. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +19 -0
  391. data/lib/stripe/services/privacy_service.rb +13 -0
  392. data/lib/stripe/services/quote_line_service.rb +17 -0
  393. data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
  394. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
  395. data/lib/stripe/services/quote_service.rb +49 -1
  396. data/lib/stripe/services/reserve/hold_service.rb +30 -0
  397. data/lib/stripe/services/reserve/plan_service.rb +19 -0
  398. data/lib/stripe/services/reserve/release_service.rb +30 -0
  399. data/lib/stripe/services/reserve_service.rb +15 -0
  400. data/lib/stripe/services/subscription_schedule_service.rb +11 -0
  401. data/lib/stripe/services/subscription_service.rb +11 -0
  402. data/lib/stripe/services/tax/form_service.rb +37 -0
  403. data/lib/stripe/services/tax_service.rb +2 -1
  404. data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
  405. data/lib/stripe/services/terminal_service.rb +2 -1
  406. data/lib/stripe/services/v1_services.rb +9 -1
  407. data/lib/stripe/services/v2/billing/bill_setting_service.rb +61 -0
  408. data/lib/stripe/services/v2/billing/bill_settings/version_service.rb +34 -0
  409. data/lib/stripe/services/v2/billing/cadence_service.rb +65 -0
  410. data/lib/stripe/services/v2/billing/collection_setting_service.rb +61 -0
  411. data/lib/stripe/services/v2/billing/collection_settings/version_service.rb +34 -0
  412. data/lib/stripe/services/v2/billing/profile_service.rb +54 -0
  413. data/lib/stripe/services/v2/billing_service.rb +5 -1
  414. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +85 -0
  415. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +101 -0
  416. data/lib/stripe/services/v2/core/vault_service.rb +18 -0
  417. data/lib/stripe/services/v2/core_service.rb +2 -1
  418. data/lib/stripe/services/v2/money_management/adjustment_service.rb +32 -0
  419. data/lib/stripe/services/v2/money_management/financial_account_service.rb +70 -0
  420. data/lib/stripe/services/v2/money_management/financial_address_service.rb +46 -0
  421. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +45 -0
  422. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +34 -0
  423. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +62 -0
  424. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +75 -0
  425. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +60 -0
  426. data/lib/stripe/services/v2/money_management/payout_method_service.rb +65 -0
  427. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +23 -0
  428. data/lib/stripe/services/v2/money_management/received_credit_service.rb +32 -0
  429. data/lib/stripe/services/v2/money_management/received_debit_service.rb +32 -0
  430. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +32 -0
  431. data/lib/stripe/services/v2/money_management/transaction_service.rb +32 -0
  432. data/lib/stripe/services/v2/money_management_service.rb +31 -0
  433. data/lib/stripe/services/v2/test_helper_service.rb +15 -0
  434. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +36 -0
  435. data/lib/stripe/services/v2_services.rb +3 -1
  436. data/lib/stripe/services.rb +55 -0
  437. data/lib/stripe/stripe_client.rb +8 -1
  438. data/lib/stripe/stripe_configuration.rb +3 -1
  439. data/lib/stripe/stripe_event_notification_handler.rb +425 -0
  440. data/lib/stripe/stripe_object.rb +1 -1
  441. data/lib/stripe/util.rb +7 -1
  442. data/lib/stripe/version.rb +1 -1
  443. data/lib/stripe.rb +54 -0
  444. data/rbi/stripe/stripe_client.rbi +13 -0
  445. data/rbi/stripe.rbi +93543 -33169
  446. metadata +314 -3
@@ -5,16 +5,44 @@ module Stripe
5
5
  class SubscriptionCreateParams < ::Stripe::RequestParams
6
6
  class AddInvoiceItem < ::Stripe::RequestParams
7
7
  class Discount < ::Stripe::RequestParams
8
+ class DiscountEnd < ::Stripe::RequestParams
9
+ class Duration < ::Stripe::RequestParams
10
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
11
+ attr_accessor :interval
12
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
13
+ attr_accessor :interval_count
14
+
15
+ def initialize(interval: nil, interval_count: nil)
16
+ @interval = interval
17
+ @interval_count = interval_count
18
+ end
19
+ end
20
+ # Time span for the redeemed discount.
21
+ attr_accessor :duration
22
+ # A precise Unix timestamp for the discount to end. Must be in the future.
23
+ attr_accessor :timestamp
24
+ # The type of calculation made to determine when the discount ends.
25
+ attr_accessor :type
26
+
27
+ def initialize(duration: nil, timestamp: nil, type: nil)
28
+ @duration = duration
29
+ @timestamp = timestamp
30
+ @type = type
31
+ end
32
+ end
8
33
  # ID of the coupon to create a new discount for.
9
34
  attr_accessor :coupon
10
35
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
11
36
  attr_accessor :discount
37
+ # Details to determine how long the discount should be applied for.
38
+ attr_accessor :discount_end
12
39
  # ID of the promotion code to create a new discount for.
13
40
  attr_accessor :promotion_code
14
41
 
15
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
42
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
16
43
  @coupon = coupon
17
44
  @discount = discount
45
+ @discount_end = discount_end
18
46
  @promotion_code = promotion_code
19
47
  end
20
48
  end
@@ -178,6 +206,58 @@ module Stripe
178
206
  end
179
207
  end
180
208
 
209
+ class BillingSchedule < ::Stripe::RequestParams
210
+ class AppliesTo < ::Stripe::RequestParams
211
+ # The ID of the price object.
212
+ attr_accessor :price
213
+ # Controls which subscription items the billing schedule applies to.
214
+ attr_accessor :type
215
+
216
+ def initialize(price: nil, type: nil)
217
+ @price = price
218
+ @type = type
219
+ end
220
+ end
221
+
222
+ class BillUntil < ::Stripe::RequestParams
223
+ class Duration < ::Stripe::RequestParams
224
+ # Specifies billing duration. Either `day`, `week`, `month` or `year`.
225
+ attr_accessor :interval
226
+ # The multiplier applied to the interval.
227
+ attr_accessor :interval_count
228
+
229
+ def initialize(interval: nil, interval_count: nil)
230
+ @interval = interval
231
+ @interval_count = interval_count
232
+ end
233
+ end
234
+ # Specifies the billing period.
235
+ attr_accessor :duration
236
+ # The end date of the billing schedule.
237
+ attr_accessor :timestamp
238
+ # Describes how the billing schedule will determine the end date. Either `duration` or `timestamp`.
239
+ attr_accessor :type
240
+
241
+ def initialize(duration: nil, timestamp: nil, type: nil)
242
+ @duration = duration
243
+ @timestamp = timestamp
244
+ @type = type
245
+ end
246
+ end
247
+ # Configure billing schedule differently for individual subscription items.
248
+ attr_accessor :applies_to
249
+ # The end date for the billing schedule.
250
+ attr_accessor :bill_until
251
+ # Specify a key for the billing schedule. Must be unique to this field, alphanumeric, and up to 200 characters. If not provided, a unique key will be generated.
252
+ attr_accessor :key
253
+
254
+ def initialize(applies_to: nil, bill_until: nil, key: nil)
255
+ @applies_to = applies_to
256
+ @bill_until = bill_until
257
+ @key = key
258
+ end
259
+ end
260
+
181
261
  class BillingThresholds < ::Stripe::RequestParams
182
262
  # Monetary threshold that triggers the subscription to advance to a new billing period
183
263
  attr_accessor :amount_gte
@@ -191,16 +271,44 @@ module Stripe
191
271
  end
192
272
 
193
273
  class Discount < ::Stripe::RequestParams
274
+ class DiscountEnd < ::Stripe::RequestParams
275
+ class Duration < ::Stripe::RequestParams
276
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
277
+ attr_accessor :interval
278
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
279
+ attr_accessor :interval_count
280
+
281
+ def initialize(interval: nil, interval_count: nil)
282
+ @interval = interval
283
+ @interval_count = interval_count
284
+ end
285
+ end
286
+ # Time span for the redeemed discount.
287
+ attr_accessor :duration
288
+ # A precise Unix timestamp for the discount to end. Must be in the future.
289
+ attr_accessor :timestamp
290
+ # The type of calculation made to determine when the discount ends.
291
+ attr_accessor :type
292
+
293
+ def initialize(duration: nil, timestamp: nil, type: nil)
294
+ @duration = duration
295
+ @timestamp = timestamp
296
+ @type = type
297
+ end
298
+ end
194
299
  # ID of the coupon to create a new discount for.
195
300
  attr_accessor :coupon
196
301
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
197
302
  attr_accessor :discount
303
+ # Details to determine how long the discount should be applied for.
304
+ attr_accessor :discount_end
198
305
  # ID of the promotion code to create a new discount for.
199
306
  attr_accessor :promotion_code
200
307
 
201
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
308
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
202
309
  @coupon = coupon
203
310
  @discount = discount
311
+ @discount_end = discount_end
204
312
  @promotion_code = promotion_code
205
313
  end
206
314
  end
@@ -239,16 +347,44 @@ module Stripe
239
347
  end
240
348
 
241
349
  class Discount < ::Stripe::RequestParams
350
+ class DiscountEnd < ::Stripe::RequestParams
351
+ class Duration < ::Stripe::RequestParams
352
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
353
+ attr_accessor :interval
354
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
355
+ attr_accessor :interval_count
356
+
357
+ def initialize(interval: nil, interval_count: nil)
358
+ @interval = interval
359
+ @interval_count = interval_count
360
+ end
361
+ end
362
+ # Time span for the redeemed discount.
363
+ attr_accessor :duration
364
+ # A precise Unix timestamp for the discount to end. Must be in the future.
365
+ attr_accessor :timestamp
366
+ # The type of calculation made to determine when the discount ends.
367
+ attr_accessor :type
368
+
369
+ def initialize(duration: nil, timestamp: nil, type: nil)
370
+ @duration = duration
371
+ @timestamp = timestamp
372
+ @type = type
373
+ end
374
+ end
242
375
  # ID of the coupon to create a new discount for.
243
376
  attr_accessor :coupon
244
377
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
245
378
  attr_accessor :discount
379
+ # Details to determine how long the discount should be applied for.
380
+ attr_accessor :discount_end
246
381
  # ID of the promotion code to create a new discount for.
247
382
  attr_accessor :promotion_code
248
383
 
249
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
384
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
250
385
  @coupon = coupon
251
386
  @discount = discount
387
+ @discount_end = discount_end
252
388
  @promotion_code = promotion_code
253
389
  end
254
390
  end
@@ -294,6 +430,18 @@ module Stripe
294
430
  @unit_amount_decimal = unit_amount_decimal
295
431
  end
296
432
  end
433
+
434
+ class Trial < ::Stripe::RequestParams
435
+ # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
436
+ attr_accessor :converts_to
437
+ # Determines the type of trial for this item.
438
+ attr_accessor :type
439
+
440
+ def initialize(converts_to: nil, type: nil)
441
+ @converts_to = converts_to
442
+ @type = type
443
+ end
444
+ end
297
445
  # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
298
446
  attr_accessor :billing_thresholds
299
447
  # The coupons to redeem into discounts for the subscription item.
@@ -310,6 +458,8 @@ module Stripe
310
458
  attr_accessor :quantity
311
459
  # A list of [Tax Rate](https://docs.stripe.com/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://docs.stripe.com/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
312
460
  attr_accessor :tax_rates
461
+ # Define options to configure the trial on the subscription item.
462
+ attr_accessor :trial
313
463
 
314
464
  def initialize(
315
465
  billing_thresholds: nil,
@@ -319,7 +469,8 @@ module Stripe
319
469
  price: nil,
320
470
  price_data: nil,
321
471
  quantity: nil,
322
- tax_rates: nil
472
+ tax_rates: nil,
473
+ trial: nil
323
474
  )
324
475
  @billing_thresholds = billing_thresholds
325
476
  @discounts = discounts
@@ -329,6 +480,7 @@ module Stripe
329
480
  @price_data = price_data
330
481
  @quantity = quantity
331
482
  @tax_rates = tax_rates
483
+ @trial = trial
332
484
  end
333
485
  end
334
486
 
@@ -423,6 +575,7 @@ module Stripe
423
575
  end
424
576
  end
425
577
 
578
+ class IdBankTransfer < ::Stripe::RequestParams; end
426
579
  class Konbini < ::Stripe::RequestParams; end
427
580
 
428
581
  class Payto < ::Stripe::RequestParams
@@ -445,16 +598,76 @@ module Stripe
445
598
  end
446
599
  end
447
600
 
601
+ class Pix < ::Stripe::RequestParams
602
+ class MandateOptions < ::Stripe::RequestParams
603
+ # Amount to be charged for future payments. If not provided, defaults to 40000.
604
+ attr_accessor :amount
605
+ # Determines if the amount includes the IOF tax. Defaults to `never`.
606
+ attr_accessor :amount_includes_iof
607
+ # Date when the mandate expires and no further payments will be charged, in `YYYY-MM-DD`. If not provided, the mandate will be active until canceled.
608
+ attr_accessor :end_date
609
+ # Schedule at which the future payments will be charged. Defaults to `weekly`.
610
+ attr_accessor :payment_schedule
611
+
612
+ def initialize(
613
+ amount: nil,
614
+ amount_includes_iof: nil,
615
+ end_date: nil,
616
+ payment_schedule: nil
617
+ )
618
+ @amount = amount
619
+ @amount_includes_iof = amount_includes_iof
620
+ @end_date = end_date
621
+ @payment_schedule = payment_schedule
622
+ end
623
+ end
624
+ # Configuration options for setting up a mandate
625
+ attr_accessor :mandate_options
626
+
627
+ def initialize(mandate_options: nil)
628
+ @mandate_options = mandate_options
629
+ end
630
+ end
631
+
448
632
  class SepaDebit < ::Stripe::RequestParams; end
449
633
 
634
+ class Upi < ::Stripe::RequestParams
635
+ class MandateOptions < ::Stripe::RequestParams
636
+ # Amount to be charged for future payments.
637
+ attr_accessor :amount
638
+ # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
639
+ attr_accessor :amount_type
640
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
641
+ attr_accessor :description
642
+ # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
643
+ attr_accessor :end_date
644
+
645
+ def initialize(amount: nil, amount_type: nil, description: nil, end_date: nil)
646
+ @amount = amount
647
+ @amount_type = amount_type
648
+ @description = description
649
+ @end_date = end_date
650
+ end
651
+ end
652
+ # Configuration options for setting up an eMandate
653
+ attr_accessor :mandate_options
654
+
655
+ def initialize(mandate_options: nil)
656
+ @mandate_options = mandate_options
657
+ end
658
+ end
659
+
450
660
  class UsBankAccount < ::Stripe::RequestParams
451
661
  class FinancialConnections < ::Stripe::RequestParams
452
662
  class Filters < ::Stripe::RequestParams
453
663
  # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
454
664
  attr_accessor :account_subcategories
665
+ # ID of the institution to use to filter for selectable accounts.
666
+ attr_accessor :institution
455
667
 
456
- def initialize(account_subcategories: nil)
668
+ def initialize(account_subcategories: nil, institution: nil)
457
669
  @account_subcategories = account_subcategories
670
+ @institution = institution
458
671
  end
459
672
  end
460
673
  # Provide filters for the linked accounts that the customer can select for the payment method.
@@ -488,12 +701,18 @@ module Stripe
488
701
  attr_accessor :card
489
702
  # This sub-hash contains details about the Bank transfer payment method options to pass to the invoice’s PaymentIntent.
490
703
  attr_accessor :customer_balance
704
+ # This sub-hash contains details about the Indonesia bank transfer payment method options to pass to the invoice’s PaymentIntent.
705
+ attr_accessor :id_bank_transfer
491
706
  # This sub-hash contains details about the Konbini payment method options to pass to the invoice’s PaymentIntent.
492
707
  attr_accessor :konbini
493
708
  # This sub-hash contains details about the PayTo payment method options to pass to the invoice’s PaymentIntent.
494
709
  attr_accessor :payto
710
+ # This sub-hash contains details about the Pix payment method options to pass to the invoice’s PaymentIntent.
711
+ attr_accessor :pix
495
712
  # This sub-hash contains details about the SEPA Direct Debit payment method options to pass to the invoice’s PaymentIntent.
496
713
  attr_accessor :sepa_debit
714
+ # This sub-hash contains details about the UPI payment method options to pass to the invoice’s PaymentIntent.
715
+ attr_accessor :upi
497
716
  # This sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent.
498
717
  attr_accessor :us_bank_account
499
718
 
@@ -502,18 +721,24 @@ module Stripe
502
721
  bancontact: nil,
503
722
  card: nil,
504
723
  customer_balance: nil,
724
+ id_bank_transfer: nil,
505
725
  konbini: nil,
506
726
  payto: nil,
727
+ pix: nil,
507
728
  sepa_debit: nil,
729
+ upi: nil,
508
730
  us_bank_account: nil
509
731
  )
510
732
  @acss_debit = acss_debit
511
733
  @bancontact = bancontact
512
734
  @card = card
513
735
  @customer_balance = customer_balance
736
+ @id_bank_transfer = id_bank_transfer
514
737
  @konbini = konbini
515
738
  @payto = payto
739
+ @pix = pix
516
740
  @sepa_debit = sepa_debit
741
+ @upi = upi
517
742
  @us_bank_account = us_bank_account
518
743
  end
519
744
  end
@@ -547,6 +772,18 @@ module Stripe
547
772
  end
548
773
  end
549
774
 
775
+ class Prebilling < ::Stripe::RequestParams
776
+ # This is used to determine the number of billing cycles to prebill.
777
+ attr_accessor :iterations
778
+ # Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period. The default value is `reset`.
779
+ attr_accessor :update_behavior
780
+
781
+ def initialize(iterations: nil, update_behavior: nil)
782
+ @iterations = iterations
783
+ @update_behavior = update_behavior
784
+ end
785
+ end
786
+
550
787
  class TransferData < ::Stripe::RequestParams
551
788
  # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the destination account. By default, the entire amount is transferred to the destination.
552
789
  attr_accessor :amount_percent
@@ -583,12 +820,16 @@ module Stripe
583
820
  attr_accessor :automatic_tax
584
821
  # A past timestamp to backdate the subscription's start date to. If set, the first invoice will contain line items for the timespan between the start date and the current time. Can be combined with trials and the billing cycle anchor.
585
822
  attr_accessor :backdate_start_date
823
+ # The Billing Cadence which controls the timing of recurring invoice generation for this subscription. If unset, the subscription will bill according to its own configured schedule and create its own invoices. If set, this subscription will be billed by the cadence instead, potentially sharing invoices with the other subscriptions linked to that Cadence.
824
+ attr_accessor :billing_cadence
586
825
  # A future timestamp in UTC format to anchor the subscription's [billing cycle](https://docs.stripe.com/subscriptions/billing-cycle). The anchor is the reference point that aligns future billing cycle dates. It sets the day of week for `week` intervals, the day of month for `month` and `year` intervals, and the month of year for `year` intervals.
587
826
  attr_accessor :billing_cycle_anchor
588
827
  # Mutually exclusive with billing_cycle_anchor and only valid with monthly and yearly price intervals. When provided, the billing_cycle_anchor is set to the next occurrence of the day_of_month at the hour, minute, and second UTC.
589
828
  attr_accessor :billing_cycle_anchor_config
590
829
  # Controls how prorations and invoices for subscriptions are calculated and orchestrated.
591
830
  attr_accessor :billing_mode
831
+ # Sets the billing schedules for the subscription.
832
+ attr_accessor :billing_schedules
592
833
  # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. When updating, pass an empty string to remove previously-defined thresholds.
593
834
  attr_accessor :billing_thresholds
594
835
  # A timestamp at which the subscription should cancel. If set to a date before the current period ends, this will cause a proration if prorations have been enabled using `proration_behavior`. If set during a future period, this will always cause a proration for that period.
@@ -643,6 +884,8 @@ module Stripe
643
884
  attr_accessor :payment_settings
644
885
  # Specifies an interval for how often to bill for any pending invoice items. It is analogous to calling [Create an invoice](https://docs.stripe.com/api#create_invoice) for the given subscription at the specified interval.
645
886
  attr_accessor :pending_invoice_item_interval
887
+ # If specified, the invoicing for the given billing cycle iterations will be processed now.
888
+ attr_accessor :prebilling
646
889
  # Determines how to handle [prorations](https://docs.stripe.com/billing/subscriptions/prorations) resulting from the `billing_cycle_anchor`. If no value is passed, the default is `create_prorations`.
647
890
  attr_accessor :proration_behavior
648
891
  # If specified, the funds from the subscription's invoices will be transferred to the destination and the ID of the resulting transfers will be found on the resulting charges.
@@ -661,9 +904,11 @@ module Stripe
661
904
  application_fee_percent: nil,
662
905
  automatic_tax: nil,
663
906
  backdate_start_date: nil,
907
+ billing_cadence: nil,
664
908
  billing_cycle_anchor: nil,
665
909
  billing_cycle_anchor_config: nil,
666
910
  billing_mode: nil,
911
+ billing_schedules: nil,
667
912
  billing_thresholds: nil,
668
913
  cancel_at: nil,
669
914
  cancel_at_period_end: nil,
@@ -686,6 +931,7 @@ module Stripe
686
931
  payment_behavior: nil,
687
932
  payment_settings: nil,
688
933
  pending_invoice_item_interval: nil,
934
+ prebilling: nil,
689
935
  proration_behavior: nil,
690
936
  transfer_data: nil,
691
937
  trial_end: nil,
@@ -697,9 +943,11 @@ module Stripe
697
943
  @application_fee_percent = application_fee_percent
698
944
  @automatic_tax = automatic_tax
699
945
  @backdate_start_date = backdate_start_date
946
+ @billing_cadence = billing_cadence
700
947
  @billing_cycle_anchor = billing_cycle_anchor
701
948
  @billing_cycle_anchor_config = billing_cycle_anchor_config
702
949
  @billing_mode = billing_mode
950
+ @billing_schedules = billing_schedules
703
951
  @billing_thresholds = billing_thresholds
704
952
  @cancel_at = cancel_at
705
953
  @cancel_at_period_end = cancel_at_period_end
@@ -722,6 +970,7 @@ module Stripe
722
970
  @payment_behavior = payment_behavior
723
971
  @payment_settings = payment_settings
724
972
  @pending_invoice_item_interval = pending_invoice_item_interval
973
+ @prebilling = prebilling
725
974
  @proration_behavior = proration_behavior
726
975
  @transfer_data = transfer_data
727
976
  @trial_end = trial_end
@@ -13,16 +13,44 @@ module Stripe
13
13
  end
14
14
 
15
15
  class Discount < ::Stripe::RequestParams
16
+ class DiscountEnd < ::Stripe::RequestParams
17
+ class Duration < ::Stripe::RequestParams
18
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
19
+ attr_accessor :interval
20
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
21
+ attr_accessor :interval_count
22
+
23
+ def initialize(interval: nil, interval_count: nil)
24
+ @interval = interval
25
+ @interval_count = interval_count
26
+ end
27
+ end
28
+ # Time span for the redeemed discount.
29
+ attr_accessor :duration
30
+ # A precise Unix timestamp for the discount to end. Must be in the future.
31
+ attr_accessor :timestamp
32
+ # The type of calculation made to determine when the discount ends.
33
+ attr_accessor :type
34
+
35
+ def initialize(duration: nil, timestamp: nil, type: nil)
36
+ @duration = duration
37
+ @timestamp = timestamp
38
+ @type = type
39
+ end
40
+ end
16
41
  # ID of the coupon to create a new discount for.
17
42
  attr_accessor :coupon
18
43
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
19
44
  attr_accessor :discount
45
+ # Details to determine how long the discount should be applied for.
46
+ attr_accessor :discount_end
20
47
  # ID of the promotion code to create a new discount for.
21
48
  attr_accessor :promotion_code
22
49
 
23
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
50
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
24
51
  @coupon = coupon
25
52
  @discount = discount
53
+ @discount_end = discount_end
26
54
  @promotion_code = promotion_code
27
55
  end
28
56
  end
@@ -68,6 +96,18 @@ module Stripe
68
96
  @unit_amount_decimal = unit_amount_decimal
69
97
  end
70
98
  end
99
+
100
+ class Trial < ::Stripe::RequestParams
101
+ # List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
102
+ attr_accessor :converts_to
103
+ # Determines the type of trial for this item.
104
+ attr_accessor :type
105
+
106
+ def initialize(converts_to: nil, type: nil)
107
+ @converts_to = converts_to
108
+ @type = type
109
+ end
110
+ end
71
111
  # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
72
112
  attr_accessor :billing_thresholds
73
113
  # The coupons to redeem into discounts for the subscription item.
@@ -100,6 +140,8 @@ module Stripe
100
140
  attr_accessor :subscription
101
141
  # A list of [Tax Rate](https://docs.stripe.com/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://docs.stripe.com/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
102
142
  attr_accessor :tax_rates
143
+ # Options that configure the trial on the subscription item.
144
+ attr_accessor :trial
103
145
 
104
146
  def initialize(
105
147
  billing_thresholds: nil,
@@ -114,7 +156,8 @@ module Stripe
114
156
  proration_date: nil,
115
157
  quantity: nil,
116
158
  subscription: nil,
117
- tax_rates: nil
159
+ tax_rates: nil,
160
+ trial: nil
118
161
  )
119
162
  @billing_thresholds = billing_thresholds
120
163
  @discounts = discounts
@@ -129,6 +172,7 @@ module Stripe
129
172
  @quantity = quantity
130
173
  @subscription = subscription
131
174
  @tax_rates = tax_rates
175
+ @trial = trial
132
176
  end
133
177
  end
134
178
  end
@@ -13,16 +13,44 @@ module Stripe
13
13
  end
14
14
 
15
15
  class Discount < ::Stripe::RequestParams
16
+ class DiscountEnd < ::Stripe::RequestParams
17
+ class Duration < ::Stripe::RequestParams
18
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
19
+ attr_accessor :interval
20
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
21
+ attr_accessor :interval_count
22
+
23
+ def initialize(interval: nil, interval_count: nil)
24
+ @interval = interval
25
+ @interval_count = interval_count
26
+ end
27
+ end
28
+ # Time span for the redeemed discount.
29
+ attr_accessor :duration
30
+ # A precise Unix timestamp for the discount to end. Must be in the future.
31
+ attr_accessor :timestamp
32
+ # The type of calculation made to determine when the discount ends.
33
+ attr_accessor :type
34
+
35
+ def initialize(duration: nil, timestamp: nil, type: nil)
36
+ @duration = duration
37
+ @timestamp = timestamp
38
+ @type = type
39
+ end
40
+ end
16
41
  # ID of the coupon to create a new discount for.
17
42
  attr_accessor :coupon
18
43
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
19
44
  attr_accessor :discount
45
+ # Details to determine how long the discount should be applied for.
46
+ attr_accessor :discount_end
20
47
  # ID of the promotion code to create a new discount for.
21
48
  attr_accessor :promotion_code
22
49
 
23
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
50
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
24
51
  @coupon = coupon
25
52
  @discount = discount
53
+ @discount_end = discount_end
26
54
  @promotion_code = promotion_code
27
55
  end
28
56
  end