stripe 18.3.0 → 18.4.0.pre.alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (791) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +37 -1
  3. data/lib/stripe/api_version.rb +1 -2
  4. data/lib/stripe/errors.rb +66 -0
  5. data/lib/stripe/event_types.rb +512 -0
  6. data/lib/stripe/events/v2_billing_cadence_billed_event.rb +61 -0
  7. data/lib/stripe/events/v2_billing_cadence_canceled_event.rb +44 -0
  8. data/lib/stripe/events/v2_billing_cadence_created_event.rb +61 -0
  9. data/lib/stripe/events/v2_billing_license_fee_created_event.rb +44 -0
  10. data/lib/stripe/events/v2_billing_license_fee_updated_event.rb +44 -0
  11. data/lib/stripe/events/v2_billing_license_fee_version_created_event.rb +61 -0
  12. data/lib/stripe/events/v2_billing_licensed_item_created_event.rb +44 -0
  13. data/lib/stripe/events/v2_billing_licensed_item_updated_event.rb +44 -0
  14. data/lib/stripe/events/v2_billing_metered_item_created_event.rb +44 -0
  15. data/lib/stripe/events/v2_billing_metered_item_updated_event.rb +44 -0
  16. data/lib/stripe/events/v2_billing_pricing_plan_component_created_event.rb +61 -0
  17. data/lib/stripe/events/v2_billing_pricing_plan_component_updated_event.rb +61 -0
  18. data/lib/stripe/events/v2_billing_pricing_plan_created_event.rb +44 -0
  19. data/lib/stripe/events/v2_billing_pricing_plan_subscription_collection_awaiting_customer_action_event.rb +44 -0
  20. data/lib/stripe/events/v2_billing_pricing_plan_subscription_collection_current_event.rb +44 -0
  21. data/lib/stripe/events/v2_billing_pricing_plan_subscription_collection_past_due_event.rb +44 -0
  22. data/lib/stripe/events/v2_billing_pricing_plan_subscription_collection_paused_event.rb +44 -0
  23. data/lib/stripe/events/v2_billing_pricing_plan_subscription_collection_unpaid_event.rb +44 -0
  24. data/lib/stripe/events/v2_billing_pricing_plan_subscription_servicing_activated_event.rb +44 -0
  25. data/lib/stripe/events/v2_billing_pricing_plan_subscription_servicing_canceled_event.rb +44 -0
  26. data/lib/stripe/events/v2_billing_pricing_plan_subscription_servicing_paused_event.rb +44 -0
  27. data/lib/stripe/events/v2_billing_pricing_plan_updated_event.rb +44 -0
  28. data/lib/stripe/events/v2_billing_pricing_plan_version_created_event.rb +61 -0
  29. data/lib/stripe/events/v2_billing_rate_card_created_event.rb +61 -0
  30. data/lib/stripe/events/v2_billing_rate_card_rate_created_event.rb +67 -0
  31. data/lib/stripe/events/v2_billing_rate_card_subscription_activated_event.rb +44 -0
  32. data/lib/stripe/events/v2_billing_rate_card_subscription_canceled_event.rb +44 -0
  33. data/lib/stripe/events/v2_billing_rate_card_subscription_collection_awaiting_customer_action_event.rb +44 -0
  34. data/lib/stripe/events/v2_billing_rate_card_subscription_collection_current_event.rb +44 -0
  35. data/lib/stripe/events/v2_billing_rate_card_subscription_collection_past_due_event.rb +44 -0
  36. data/lib/stripe/events/v2_billing_rate_card_subscription_collection_paused_event.rb +44 -0
  37. data/lib/stripe/events/v2_billing_rate_card_subscription_collection_unpaid_event.rb +44 -0
  38. data/lib/stripe/events/v2_billing_rate_card_subscription_servicing_activated_event.rb +44 -0
  39. data/lib/stripe/events/v2_billing_rate_card_subscription_servicing_canceled_event.rb +44 -0
  40. data/lib/stripe/events/v2_billing_rate_card_subscription_servicing_paused_event.rb +44 -0
  41. data/lib/stripe/events/v2_billing_rate_card_updated_event.rb +44 -0
  42. data/lib/stripe/events/v2_billing_rate_card_version_created_event.rb +61 -0
  43. data/lib/stripe/events/v2_core_account_including_configuration_card_creator_capability_status_updated_event.rb +63 -0
  44. data/lib/stripe/events/v2_core_account_including_configuration_card_creator_updated_event.rb +44 -0
  45. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +63 -0
  46. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +44 -0
  47. data/lib/stripe/events/v2_core_claimable_sandbox_claimed_event.rb +44 -0
  48. data/lib/stripe/events/v2_core_claimable_sandbox_created_event.rb +44 -0
  49. data/lib/stripe/events/v2_core_claimable_sandbox_expired_event.rb +44 -0
  50. data/lib/stripe/events/v2_core_claimable_sandbox_expiring_event.rb +44 -0
  51. data/lib/stripe/events/v2_core_claimable_sandbox_sandbox_details_owner_account_updated_event.rb +44 -0
  52. data/lib/stripe/events/v2_core_health_api_error_firing_event.rb +86 -0
  53. data/lib/stripe/events/v2_core_health_api_error_resolved_event.rb +86 -0
  54. data/lib/stripe/events/v2_core_health_api_latency_firing_event.rb +84 -0
  55. data/lib/stripe/events/v2_core_health_api_latency_resolved_event.rb +84 -0
  56. data/lib/stripe/events/v2_core_health_authorization_rate_drop_firing_event.rb +80 -0
  57. data/lib/stripe/events/v2_core_health_authorization_rate_drop_resolved_event.rb +80 -0
  58. data/lib/stripe/events/v2_core_health_event_generation_failure_resolved_event.rb +78 -0
  59. data/lib/stripe/events/v2_core_health_fraud_rate_increased_event.rb +78 -0
  60. data/lib/stripe/events/v2_core_health_issuing_authorization_request_errors_firing_event.rb +91 -0
  61. data/lib/stripe/events/v2_core_health_issuing_authorization_request_errors_resolved_event.rb +93 -0
  62. data/lib/stripe/events/v2_core_health_issuing_authorization_request_timeout_firing_event.rb +93 -0
  63. data/lib/stripe/events/v2_core_health_issuing_authorization_request_timeout_resolved_event.rb +93 -0
  64. data/lib/stripe/events/v2_core_health_payment_method_error_firing_event.rb +82 -0
  65. data/lib/stripe/events/v2_core_health_payment_method_error_resolved_event.rb +82 -0
  66. data/lib/stripe/events/v2_core_health_sepa_debit_delayed_firing_event.rb +58 -0
  67. data/lib/stripe/events/v2_core_health_sepa_debit_delayed_resolved_event.rb +60 -0
  68. data/lib/stripe/events/v2_core_health_traffic_volume_drop_firing_event.rb +62 -0
  69. data/lib/stripe/events/v2_core_health_traffic_volume_drop_resolved_event.rb +62 -0
  70. data/lib/stripe/events/v2_core_health_webhook_latency_firing_event.rb +58 -0
  71. data/lib/stripe/events/v2_core_health_webhook_latency_resolved_event.rb +58 -0
  72. data/lib/stripe/events/v2_iam_api_key_created_event.rb +20 -0
  73. data/lib/stripe/events/v2_iam_api_key_default_secret_revealed_event.rb +20 -0
  74. data/lib/stripe/events/v2_iam_api_key_expired_event.rb +20 -0
  75. data/lib/stripe/events/v2_iam_api_key_permissions_updated_event.rb +20 -0
  76. data/lib/stripe/events/v2_iam_api_key_rotated_event.rb +38 -0
  77. data/lib/stripe/events/v2_iam_api_key_updated_event.rb +20 -0
  78. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +44 -0
  79. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +44 -0
  80. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +44 -0
  81. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +44 -0
  82. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +44 -0
  83. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +61 -0
  84. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +44 -0
  85. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +44 -0
  86. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +44 -0
  87. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +44 -0
  88. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +44 -0
  89. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +44 -0
  90. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +44 -0
  91. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +44 -0
  92. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +44 -0
  93. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +44 -0
  94. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +44 -0
  95. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +44 -0
  96. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +44 -0
  97. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +44 -0
  98. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +44 -0
  99. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +44 -0
  100. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +44 -0
  101. data/lib/stripe/events/v2_money_management_payout_method_created_event.rb +44 -0
  102. data/lib/stripe/events/v2_money_management_payout_method_updated_event.rb +44 -0
  103. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +61 -0
  104. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +44 -0
  105. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +44 -0
  106. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +44 -0
  107. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +44 -0
  108. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +44 -0
  109. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +44 -0
  110. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +44 -0
  111. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +44 -0
  112. data/lib/stripe/events/v2_money_management_recipient_verification_created_event.rb +44 -0
  113. data/lib/stripe/events/v2_money_management_recipient_verification_updated_event.rb +44 -0
  114. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +61 -0
  115. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +44 -0
  116. data/lib/stripe/events/v2_payments_off_session_payment_attempt_failed_event.rb +44 -0
  117. data/lib/stripe/events/v2_payments_off_session_payment_attempt_started_event.rb +46 -0
  118. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +46 -0
  119. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +48 -0
  120. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +44 -0
  121. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +44 -0
  122. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +44 -0
  123. data/lib/stripe/events/v2_payments_off_session_payment_requires_capture_event.rb +44 -0
  124. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +44 -0
  125. data/lib/stripe/events/v2_payments_settlement_allocation_intent_canceled_event.rb +44 -0
  126. data/lib/stripe/events/v2_payments_settlement_allocation_intent_created_event.rb +44 -0
  127. data/lib/stripe/events/v2_payments_settlement_allocation_intent_errored_event.rb +65 -0
  128. data/lib/stripe/events/v2_payments_settlement_allocation_intent_funds_not_received_event.rb +44 -0
  129. data/lib/stripe/events/v2_payments_settlement_allocation_intent_matched_event.rb +44 -0
  130. data/lib/stripe/events/v2_payments_settlement_allocation_intent_not_found_event.rb +38 -0
  131. data/lib/stripe/events/v2_payments_settlement_allocation_intent_settled_event.rb +44 -0
  132. data/lib/stripe/events/v2_payments_settlement_allocation_intent_split_canceled_event.rb +61 -0
  133. data/lib/stripe/events/v2_payments_settlement_allocation_intent_split_created_event.rb +61 -0
  134. data/lib/stripe/events/v2_payments_settlement_allocation_intent_split_settled_event.rb +61 -0
  135. data/lib/stripe/events/v2_payments_settlement_allocation_intent_submitted_event.rb +44 -0
  136. data/lib/stripe/events/v2_reporting_report_run_created_event.rb +44 -0
  137. data/lib/stripe/events/v2_reporting_report_run_failed_event.rb +44 -0
  138. data/lib/stripe/events/v2_reporting_report_run_succeeded_event.rb +44 -0
  139. data/lib/stripe/events/v2_reporting_report_run_updated_event.rb +44 -0
  140. data/lib/stripe/object_types.rb +95 -0
  141. data/lib/stripe/params/account_create_params.rb +381 -1
  142. data/lib/stripe/params/account_notice_list_params.rb +25 -0
  143. data/lib/stripe/params/account_notice_retrieve_params.rb +13 -0
  144. data/lib/stripe/params/account_notice_update_params.rb +36 -0
  145. data/lib/stripe/params/account_person_create_params.rb +32 -0
  146. data/lib/stripe/params/account_person_update_params.rb +32 -0
  147. data/lib/stripe/params/account_session_create_params.rb +243 -1
  148. data/lib/stripe/params/account_update_params.rb +343 -0
  149. data/lib/stripe/params/balance_transfer_create_params.rb +66 -0
  150. data/lib/stripe/params/billing/alert_create_params.rb +121 -1
  151. data/lib/stripe/params/billing/alert_list_params.rb +4 -0
  152. data/lib/stripe/params/billing/analytics/meter_usage_retrieve_params.rb +69 -0
  153. data/lib/stripe/params/billing/credit_balance_summary_retrieve_params.rb +13 -1
  154. data/lib/stripe/params/billing/credit_grant_create_params.rb +29 -2
  155. data/lib/stripe/params/billing/meter_create_params.rb +4 -0
  156. data/lib/stripe/params/billing/meter_event_summary_list_params.rb +8 -0
  157. data/lib/stripe/params/capital/financing_offer_create_params.rb +37 -0
  158. data/lib/stripe/params/capital/financing_offer_list_params.rb +58 -0
  159. data/lib/stripe/params/capital/financing_offer_mark_delivered_params.rb +15 -0
  160. data/lib/stripe/params/capital/financing_offer_refill_params.rb +37 -0
  161. data/lib/stripe/params/capital/financing_offer_retrieve_params.rb +15 -0
  162. data/lib/stripe/params/capital/financing_summary_retrieve_params.rb +15 -0
  163. data/lib/stripe/params/capital/financing_transaction_list_params.rb +45 -0
  164. data/lib/stripe/params/capital/financing_transaction_retrieve_params.rb +15 -0
  165. data/lib/stripe/params/charge_capture_params.rb +1648 -0
  166. data/lib/stripe/params/charge_update_params.rb +1648 -0
  167. data/lib/stripe/params/checkout/session_create_params.rb +224 -4
  168. data/lib/stripe/params/checkout/session_update_params.rb +156 -1
  169. data/lib/stripe/params/confirmation_token_create_params.rb +77 -0
  170. data/lib/stripe/params/coupon_create_params.rb +47 -1
  171. data/lib/stripe/params/customer_session_create_params.rb +32 -1
  172. data/lib/stripe/params/delegated_checkout/requested_session_confirm_params.rb +138 -0
  173. data/lib/stripe/params/delegated_checkout/requested_session_create_params.rb +205 -0
  174. data/lib/stripe/params/delegated_checkout/requested_session_expire_params.rb +15 -0
  175. data/lib/stripe/params/delegated_checkout/requested_session_retrieve_params.rb +15 -0
  176. data/lib/stripe/params/delegated_checkout/requested_session_update_params.rb +209 -0
  177. data/lib/stripe/params/dispute_update_params.rb +10 -1
  178. data/lib/stripe/params/external_account_create_params.rb +134 -0
  179. data/lib/stripe/params/external_account_delete_params.rb +6 -0
  180. data/lib/stripe/params/external_account_list_params.rb +25 -0
  181. data/lib/stripe/params/external_account_retrieve_params.rb +13 -0
  182. data/lib/stripe/params/external_account_update_params.rb +91 -0
  183. data/lib/stripe/params/financial_connections/account_inferred_balance_list_params.rb +24 -0
  184. data/lib/stripe/params/financial_connections/authorization_retrieve_params.rb +15 -0
  185. data/lib/stripe/params/financial_connections/institution_list_params.rb +24 -0
  186. data/lib/stripe/params/financial_connections/institution_retrieve_params.rb +15 -0
  187. data/lib/stripe/params/financial_connections/session_create_params.rb +46 -1
  188. data/lib/stripe/params/fr_meal_vouchers_onboarding_create_params.rb +25 -0
  189. data/lib/stripe/params/fr_meal_vouchers_onboarding_list_params.rb +22 -0
  190. data/lib/stripe/params/fr_meal_vouchers_onboarding_retrieve_params.rb +13 -0
  191. data/lib/stripe/params/fr_meal_vouchers_onboarding_update_params.rb +16 -0
  192. data/lib/stripe/params/fx_quote_create_params.rb +73 -0
  193. data/lib/stripe/params/fx_quote_list_params.rb +22 -0
  194. data/lib/stripe/params/fx_quote_retrieve_params.rb +13 -0
  195. data/lib/stripe/params/identity/blocklist_entry_create_params.rb +29 -0
  196. data/lib/stripe/params/identity/blocklist_entry_disable_params.rb +15 -0
  197. data/lib/stripe/params/identity/blocklist_entry_list_params.rb +62 -0
  198. data/lib/stripe/params/identity/blocklist_entry_retrieve_params.rb +15 -0
  199. data/lib/stripe/params/identity/verification_report_list_params.rb +4 -0
  200. data/lib/stripe/params/invoice_add_lines_params.rb +48 -1
  201. data/lib/stripe/params/invoice_attach_payment_params.rb +43 -1
  202. data/lib/stripe/params/invoice_create_params.rb +107 -2
  203. data/lib/stripe/params/invoice_create_preview_params.rb +1357 -9
  204. data/lib/stripe/params/invoice_detach_payment_params.rb +16 -0
  205. data/lib/stripe/params/invoice_item_create_params.rb +33 -1
  206. data/lib/stripe/params/invoice_item_update_params.rb +33 -1
  207. data/lib/stripe/params/invoice_line_item_update_params.rb +48 -1
  208. data/lib/stripe/params/invoice_list_params.rb +4 -0
  209. data/lib/stripe/params/invoice_update_lines_params.rb +48 -1
  210. data/lib/stripe/params/invoice_update_params.rb +107 -2
  211. data/lib/stripe/params/issuing/card_list_params.rb +34 -1
  212. data/lib/stripe/params/issuing/cardholder_create_params.rb +2 -1
  213. data/lib/stripe/params/issuing/credit_underwriting_record_correct_params.rb +163 -0
  214. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_application_params.rb +50 -0
  215. data/lib/stripe/params/issuing/credit_underwriting_record_create_from_proactive_review_params.rb +128 -0
  216. data/lib/stripe/params/issuing/credit_underwriting_record_list_params.rb +24 -0
  217. data/lib/stripe/params/issuing/credit_underwriting_record_report_decision_params.rb +86 -0
  218. data/lib/stripe/params/issuing/credit_underwriting_record_retrieve_params.rb +15 -0
  219. data/lib/stripe/params/issuing/dispute_settlement_detail_list_params.rb +33 -0
  220. data/lib/stripe/params/issuing/dispute_settlement_detail_retrieve_params.rb +15 -0
  221. data/lib/stripe/params/issuing/fraud_liability_debit_list_params.rb +44 -0
  222. data/lib/stripe/params/issuing/fraud_liability_debit_retrieve_params.rb +15 -0
  223. data/lib/stripe/params/issuing/program_create_params.rb +21 -0
  224. data/lib/stripe/params/issuing/program_list_params.rb +24 -0
  225. data/lib/stripe/params/issuing/program_retrieve_params.rb +15 -0
  226. data/lib/stripe/params/issuing/program_update_params.rb +21 -0
  227. data/lib/stripe/params/issuing/transaction_list_params.rb +4 -0
  228. data/lib/stripe/params/mandate_list_params.rb +39 -0
  229. data/lib/stripe/params/margin_create_params.rb +25 -0
  230. data/lib/stripe/params/margin_list_params.rb +25 -0
  231. data/lib/stripe/params/margin_retrieve_params.rb +13 -0
  232. data/lib/stripe/params/margin_update_params.rb +22 -0
  233. data/lib/stripe/params/order_create_params.rb +2061 -0
  234. data/lib/stripe/params/order_list_params.rb +25 -0
  235. data/lib/stripe/params/order_retrieve_params.rb +13 -0
  236. data/lib/stripe/params/order_submit_params.rb +16 -0
  237. data/lib/stripe/params/order_update_params.rb +2065 -0
  238. data/lib/stripe/params/payment_intent_capture_params.rb +1627 -1
  239. data/lib/stripe/params/payment_intent_confirm_params.rb +3124 -126
  240. data/lib/stripe/params/payment_intent_create_params.rb +3141 -130
  241. data/lib/stripe/params/payment_intent_decrement_authorization_params.rb +73 -0
  242. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +21 -0
  243. data/lib/stripe/params/payment_intent_trigger_action_params.rb +27 -0
  244. data/lib/stripe/params/payment_intent_update_params.rb +3187 -162
  245. data/lib/stripe/params/payment_link_create_params.rb +15 -0
  246. data/lib/stripe/params/payment_method_check_balance_params.rb +13 -0
  247. data/lib/stripe/params/payment_method_configuration_create_params.rb +105 -0
  248. data/lib/stripe/params/payment_method_configuration_update_params.rb +105 -0
  249. data/lib/stripe/params/payment_method_create_params.rb +77 -0
  250. data/lib/stripe/params/plan_create_params.rb +15 -0
  251. data/lib/stripe/params/price_create_params.rb +15 -0
  252. data/lib/stripe/params/price_update_params.rb +19 -0
  253. data/lib/stripe/params/privacy/redaction_job_cancel_params.rb +15 -0
  254. data/lib/stripe/params/privacy/redaction_job_create_params.rb +67 -0
  255. data/lib/stripe/params/privacy/redaction_job_list_params.rb +27 -0
  256. data/lib/stripe/params/privacy/redaction_job_retrieve_params.rb +15 -0
  257. data/lib/stripe/params/privacy/redaction_job_run_params.rb +15 -0
  258. data/lib/stripe/params/privacy/redaction_job_update_params.rb +18 -0
  259. data/lib/stripe/params/privacy/redaction_job_validate_params.rb +15 -0
  260. data/lib/stripe/params/privacy/redaction_job_validation_error_list_params.rb +24 -0
  261. data/lib/stripe/params/product_catalog/trial_offer_create_params.rb +63 -0
  262. data/lib/stripe/params/product_create_params.rb +16 -0
  263. data/lib/stripe/params/product_update_params.rb +16 -0
  264. data/lib/stripe/params/quote_create_params.rb +1217 -3
  265. data/lib/stripe/params/quote_line_list_params.rb +22 -0
  266. data/lib/stripe/params/quote_list_lines_params.rb +22 -0
  267. data/lib/stripe/params/quote_list_params.rb +4 -0
  268. data/lib/stripe/params/quote_list_preview_invoice_lines_params.rb +22 -0
  269. data/lib/stripe/params/quote_mark_draft_params.rb +13 -0
  270. data/lib/stripe/params/quote_mark_stale_params.rb +16 -0
  271. data/lib/stripe/params/quote_preview_invoice_list_params.rb +22 -0
  272. data/lib/stripe/params/quote_preview_subscription_schedule_list_params.rb +22 -0
  273. data/lib/stripe/params/quote_reestimate_params.rb +13 -0
  274. data/lib/stripe/params/quote_update_params.rb +1225 -4
  275. data/lib/stripe/params/radar/account_evaluation_create_params.rb +81 -0
  276. data/lib/stripe/params/radar/account_evaluation_retrieve_params.rb +15 -0
  277. data/lib/stripe/params/radar/account_evaluation_update_params.rb +41 -0
  278. data/lib/stripe/params/reserve/hold_list_params.rb +53 -0
  279. data/lib/stripe/params/reserve/hold_retrieve_params.rb +15 -0
  280. data/lib/stripe/params/reserve/plan_retrieve_params.rb +15 -0
  281. data/lib/stripe/params/reserve/release_list_params.rb +41 -0
  282. data/lib/stripe/params/reserve/release_retrieve_params.rb +15 -0
  283. data/lib/stripe/params/setup_intent_confirm_params.rb +187 -3
  284. data/lib/stripe/params/setup_intent_create_params.rb +187 -3
  285. data/lib/stripe/params/setup_intent_update_params.rb +188 -4
  286. data/lib/stripe/params/shared_payment/granted_token_create_params.rb +47 -0
  287. data/lib/stripe/params/shared_payment/granted_token_retrieve_params.rb +15 -0
  288. data/lib/stripe/params/shared_payment/granted_token_revoke_params.rb +15 -0
  289. data/lib/stripe/params/subscription_attach_cadence_params.rb +16 -0
  290. data/lib/stripe/params/subscription_create_params.rb +374 -5
  291. data/lib/stripe/params/subscription_item_create_params.rb +114 -2
  292. data/lib/stripe/params/subscription_item_update_params.rb +97 -1
  293. data/lib/stripe/params/subscription_list_params.rb +4 -0
  294. data/lib/stripe/params/subscription_pause_params.rb +33 -0
  295. data/lib/stripe/params/subscription_schedule_amend_params.rb +805 -0
  296. data/lib/stripe/params/subscription_schedule_create_params.rb +335 -5
  297. data/lib/stripe/params/subscription_schedule_update_params.rb +335 -5
  298. data/lib/stripe/params/subscription_update_params.rb +357 -4
  299. data/lib/stripe/params/tax/calculation_create_params.rb +4 -0
  300. data/lib/stripe/params/tax/form_list_params.rb +51 -0
  301. data/lib/stripe/params/tax/form_pdf_params.rb +15 -0
  302. data/lib/stripe/params/tax/form_retrieve_params.rb +15 -0
  303. data/lib/stripe/params/tax/location_create_params.rb +54 -0
  304. data/lib/stripe/params/tax/location_list_params.rb +27 -0
  305. data/lib/stripe/params/tax/location_retrieve_params.rb +15 -0
  306. data/lib/stripe/params/terminal/configuration_create_params.rb +13 -0
  307. data/lib/stripe/params/terminal/configuration_update_params.rb +13 -0
  308. data/lib/stripe/params/terminal/reader_collected_data_retrieve_params.rb +15 -0
  309. data/lib/stripe/params/test_helpers/capital/financing_offer_create_params.rb +39 -0
  310. data/lib/stripe/params/test_helpers/capital/financing_offer_refill_params.rb +39 -0
  311. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +77 -0
  312. data/lib/stripe/params/test_helpers/shared_payment/granted_token_create_params.rb +49 -0
  313. data/lib/stripe/params/test_helpers/shared_payment/granted_token_revoke_params.rb +17 -0
  314. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +25 -1
  315. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +25 -1
  316. data/lib/stripe/params/token_create_params.rb +64 -0
  317. data/lib/stripe/params/transfer_create_params.rb +8 -0
  318. data/lib/stripe/params/treasury/financial_account_create_params.rb +8 -1
  319. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +4 -1
  320. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +4 -1
  321. data/lib/stripe/params/treasury/financial_account_update_params.rb +8 -1
  322. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +24 -0
  323. data/lib/stripe/params/treasury/received_credit_create_params.rb +25 -1
  324. data/lib/stripe/params/treasury/received_debit_create_params.rb +25 -1
  325. data/lib/stripe/params/v2/billing/bill_setting_create_params.rb +74 -0
  326. data/lib/stripe/params/v2/billing/bill_setting_list_params.rb +21 -0
  327. data/lib/stripe/params/v2/billing/bill_setting_retrieve_params.rb +10 -0
  328. data/lib/stripe/params/v2/billing/bill_setting_update_params.rb +80 -0
  329. data/lib/stripe/params/v2/billing/bill_settings/version_list_params.rb +19 -0
  330. data/lib/stripe/params/v2/billing/bill_settings/version_retrieve_params.rb +12 -0
  331. data/lib/stripe/params/v2/billing/cadence_cancel_params.rb +17 -0
  332. data/lib/stripe/params/v2/billing/cadence_create_params.rb +257 -0
  333. data/lib/stripe/params/v2/billing/cadence_list_params.rb +43 -0
  334. data/lib/stripe/params/v2/billing/cadence_retrieve_params.rb +17 -0
  335. data/lib/stripe/params/v2/billing/cadence_update_params.rb +78 -0
  336. data/lib/stripe/params/v2/billing/collection_setting_create_params.rb +223 -0
  337. data/lib/stripe/params/v2/billing/collection_setting_list_params.rb +21 -0
  338. data/lib/stripe/params/v2/billing/collection_setting_retrieve_params.rb +10 -0
  339. data/lib/stripe/params/v2/billing/collection_setting_update_params.rb +229 -0
  340. data/lib/stripe/params/v2/billing/collection_settings/version_list_params.rb +19 -0
  341. data/lib/stripe/params/v2/billing/collection_settings/version_retrieve_params.rb +12 -0
  342. data/lib/stripe/params/v2/billing/custom_pricing_unit_create_params.rb +26 -0
  343. data/lib/stripe/params/v2/billing/custom_pricing_unit_list_params.rb +24 -0
  344. data/lib/stripe/params/v2/billing/custom_pricing_unit_retrieve_params.rb +10 -0
  345. data/lib/stripe/params/v2/billing/custom_pricing_unit_update_params.rb +26 -0
  346. data/lib/stripe/params/v2/billing/intent_cancel_params.rb +10 -0
  347. data/lib/stripe/params/v2/billing/intent_commit_params.rb +17 -0
  348. data/lib/stripe/params/v2/billing/intent_create_params.rb +425 -0
  349. data/lib/stripe/params/v2/billing/intent_list_params.rb +17 -0
  350. data/lib/stripe/params/v2/billing/intent_release_reservation_params.rb +10 -0
  351. data/lib/stripe/params/v2/billing/intent_reserve_params.rb +10 -0
  352. data/lib/stripe/params/v2/billing/intent_retrieve_params.rb +10 -0
  353. data/lib/stripe/params/v2/billing/intents/action_list_params.rb +19 -0
  354. data/lib/stripe/params/v2/billing/intents/action_retrieve_params.rb +12 -0
  355. data/lib/stripe/params/v2/billing/license_fee_create_params.rb +103 -0
  356. data/lib/stripe/params/v2/billing/license_fee_list_params.rb +24 -0
  357. data/lib/stripe/params/v2/billing/license_fee_retrieve_params.rb +10 -0
  358. data/lib/stripe/params/v2/billing/license_fee_subscription_retrieve_params.rb +10 -0
  359. data/lib/stripe/params/v2/billing/license_fee_update_params.rb +84 -0
  360. data/lib/stripe/params/v2/billing/license_fees/version_list_params.rb +19 -0
  361. data/lib/stripe/params/v2/billing/license_fees/version_retrieve_params.rb +12 -0
  362. data/lib/stripe/params/v2/billing/licensed_item_create_params.rb +48 -0
  363. data/lib/stripe/params/v2/billing/licensed_item_list_params.rb +21 -0
  364. data/lib/stripe/params/v2/billing/licensed_item_retrieve_params.rb +10 -0
  365. data/lib/stripe/params/v2/billing/licensed_item_update_params.rb +48 -0
  366. data/lib/stripe/params/v2/billing/metered_item_create_params.rb +73 -0
  367. data/lib/stripe/params/v2/billing/metered_item_list_params.rb +21 -0
  368. data/lib/stripe/params/v2/billing/metered_item_retrieve_params.rb +10 -0
  369. data/lib/stripe/params/v2/billing/metered_item_update_params.rb +50 -0
  370. data/lib/stripe/params/v2/billing/pricing_plan_create_params.rb +39 -0
  371. data/lib/stripe/params/v2/billing/pricing_plan_list_params.rb +24 -0
  372. data/lib/stripe/params/v2/billing/pricing_plan_retrieve_params.rb +10 -0
  373. data/lib/stripe/params/v2/billing/pricing_plan_subscription_list_params.rb +50 -0
  374. data/lib/stripe/params/v2/billing/pricing_plan_subscription_retrieve_params.rb +10 -0
  375. data/lib/stripe/params/v2/billing/pricing_plan_subscription_update_params.rb +20 -0
  376. data/lib/stripe/params/v2/billing/pricing_plan_subscriptions/component_retrieve_params.rb +12 -0
  377. data/lib/stripe/params/v2/billing/pricing_plan_update_params.rb +39 -0
  378. data/lib/stripe/params/v2/billing/pricing_plans/component_create_params.rb +73 -0
  379. data/lib/stripe/params/v2/billing/pricing_plans/component_delete_params.rb +12 -0
  380. data/lib/stripe/params/v2/billing/pricing_plans/component_list_params.rb +27 -0
  381. data/lib/stripe/params/v2/billing/pricing_plans/component_retrieve_params.rb +12 -0
  382. data/lib/stripe/params/v2/billing/pricing_plans/component_update_params.rb +22 -0
  383. data/lib/stripe/params/v2/billing/pricing_plans/version_list_params.rb +19 -0
  384. data/lib/stripe/params/v2/billing/pricing_plans/version_retrieve_params.rb +12 -0
  385. data/lib/stripe/params/v2/billing/profile_create_params.rb +37 -0
  386. data/lib/stripe/params/v2/billing/profile_list_params.rb +40 -0
  387. data/lib/stripe/params/v2/billing/profile_retrieve_params.rb +10 -0
  388. data/lib/stripe/params/v2/billing/profile_update_params.rb +35 -0
  389. data/lib/stripe/params/v2/billing/rate_card_create_params.rb +49 -0
  390. data/lib/stripe/params/v2/billing/rate_card_list_params.rb +24 -0
  391. data/lib/stripe/params/v2/billing/rate_card_retrieve_params.rb +10 -0
  392. data/lib/stripe/params/v2/billing/rate_card_subscription_cancel_params.rb +10 -0
  393. data/lib/stripe/params/v2/billing/rate_card_subscription_create_params.rb +26 -0
  394. data/lib/stripe/params/v2/billing/rate_card_subscription_list_params.rb +51 -0
  395. data/lib/stripe/params/v2/billing/rate_card_subscription_retrieve_params.rb +10 -0
  396. data/lib/stripe/params/v2/billing/rate_card_subscription_update_params.rb +17 -0
  397. data/lib/stripe/params/v2/billing/rate_card_update_params.rb +38 -0
  398. data/lib/stripe/params/v2/billing/rate_cards/rate_create_params.rb +91 -0
  399. data/lib/stripe/params/v2/billing/rate_cards/rate_delete_params.rb +12 -0
  400. data/lib/stripe/params/v2/billing/rate_cards/rate_list_params.rb +25 -0
  401. data/lib/stripe/params/v2/billing/rate_cards/rate_retrieve_params.rb +12 -0
  402. data/lib/stripe/params/v2/billing/rate_cards/version_list_params.rb +19 -0
  403. data/lib/stripe/params/v2/billing/rate_cards/version_retrieve_params.rb +12 -0
  404. data/lib/stripe/params/v2/billing/service_action_create_params.rb +278 -0
  405. data/lib/stripe/params/v2/billing/service_action_retrieve_params.rb +10 -0
  406. data/lib/stripe/params/v2/billing/service_action_update_params.rb +40 -0
  407. data/lib/stripe/params/v2/core/account_create_params.rb +959 -28
  408. data/lib/stripe/params/v2/core/account_token_create_params.rb +251 -25
  409. data/lib/stripe/params/v2/core/account_update_params.rb +938 -28
  410. data/lib/stripe/params/v2/core/claimable_sandbox_create_params.rb +36 -0
  411. data/lib/stripe/params/v2/core/claimable_sandbox_retrieve_params.rb +10 -0
  412. data/lib/stripe/params/v2/core/event_list_params.rb +4 -1
  413. data/lib/stripe/params/v2/core/event_retrieve_params.rb +8 -1
  414. data/lib/stripe/params/v2/core/vault/gb_bank_account_acknowledge_confirmation_of_payee_params.rb +12 -0
  415. data/lib/stripe/params/v2/core/vault/gb_bank_account_archive_params.rb +12 -0
  416. data/lib/stripe/params/v2/core/vault/gb_bank_account_create_params.rb +50 -0
  417. data/lib/stripe/params/v2/core/vault/gb_bank_account_initiate_confirmation_of_payee_params.rb +22 -0
  418. data/lib/stripe/params/v2/core/vault/gb_bank_account_list_params.rb +19 -0
  419. data/lib/stripe/params/v2/core/vault/gb_bank_account_retrieve_params.rb +12 -0
  420. data/lib/stripe/params/v2/core/vault/us_bank_account_archive_params.rb +12 -0
  421. data/lib/stripe/params/v2/core/vault/us_bank_account_confirm_microdeposits_params.rb +22 -0
  422. data/lib/stripe/params/v2/core/vault/us_bank_account_create_params.rb +33 -0
  423. data/lib/stripe/params/v2/core/vault/us_bank_account_list_params.rb +22 -0
  424. data/lib/stripe/params/v2/core/vault/us_bank_account_retrieve_params.rb +12 -0
  425. data/lib/stripe/params/v2/core/vault/us_bank_account_send_microdeposits_params.rb +12 -0
  426. data/lib/stripe/params/v2/core/vault/us_bank_account_update_params.rb +22 -0
  427. data/lib/stripe/params/v2/iam/api_key_create_params.rb +51 -0
  428. data/lib/stripe/params/v2/iam/api_key_expire_params.rb +10 -0
  429. data/lib/stripe/params/v2/iam/api_key_list_params.rb +20 -0
  430. data/lib/stripe/params/v2/iam/api_key_retrieve_params.rb +10 -0
  431. data/lib/stripe/params/v2/iam/api_key_rotate_params.rb +46 -0
  432. data/lib/stripe/params/v2/iam/api_key_update_params.rb +20 -0
  433. data/lib/stripe/params/v2/money_management/adjustment_list_params.rb +48 -0
  434. data/lib/stripe/params/v2/money_management/adjustment_retrieve_params.rb +10 -0
  435. data/lib/stripe/params/v2/money_management/currency_conversion_create_params.rb +68 -0
  436. data/lib/stripe/params/v2/money_management/currency_conversion_list_params.rb +20 -0
  437. data/lib/stripe/params/v2/money_management/currency_conversion_retrieve_params.rb +10 -0
  438. data/lib/stripe/params/v2/money_management/financial_account_close_params.rb +28 -0
  439. data/lib/stripe/params/v2/money_management/financial_account_create_params.rb +34 -0
  440. data/lib/stripe/params/v2/money_management/financial_account_list_params.rb +23 -0
  441. data/lib/stripe/params/v2/money_management/financial_account_retrieve_params.rb +10 -0
  442. data/lib/stripe/params/v2/money_management/financial_account_update_params.rb +20 -0
  443. data/lib/stripe/params/v2/money_management/financial_address_create_params.rb +31 -0
  444. data/lib/stripe/params/v2/money_management/financial_address_list_params.rb +23 -0
  445. data/lib/stripe/params/v2/money_management/financial_address_retrieve_params.rb +17 -0
  446. data/lib/stripe/params/v2/money_management/inbound_transfer_create_params.rb +62 -0
  447. data/lib/stripe/params/v2/money_management/inbound_transfer_list_params.rb +44 -0
  448. data/lib/stripe/params/v2/money_management/inbound_transfer_retrieve_params.rb +10 -0
  449. data/lib/stripe/params/v2/money_management/outbound_payment_cancel_params.rb +10 -0
  450. data/lib/stripe/params/v2/money_management/outbound_payment_create_params.rb +134 -0
  451. data/lib/stripe/params/v2/money_management/outbound_payment_list_params.rb +52 -0
  452. data/lib/stripe/params/v2/money_management/outbound_payment_quote_create_params.rb +82 -0
  453. data/lib/stripe/params/v2/money_management/outbound_payment_quote_retrieve_params.rb +10 -0
  454. data/lib/stripe/params/v2/money_management/outbound_payment_retrieve_params.rb +10 -0
  455. data/lib/stripe/params/v2/money_management/outbound_setup_intent_cancel_params.rb +10 -0
  456. data/lib/stripe/params/v2/money_management/outbound_setup_intent_create_params.rb +103 -0
  457. data/lib/stripe/params/v2/money_management/outbound_setup_intent_list_params.rb +17 -0
  458. data/lib/stripe/params/v2/money_management/outbound_setup_intent_retrieve_params.rb +10 -0
  459. data/lib/stripe/params/v2/money_management/outbound_setup_intent_update_params.rb +80 -0
  460. data/lib/stripe/params/v2/money_management/outbound_transfer_cancel_params.rb +10 -0
  461. data/lib/stripe/params/v2/money_management/outbound_transfer_create_params.rb +93 -0
  462. data/lib/stripe/params/v2/money_management/outbound_transfer_list_params.rb +48 -0
  463. data/lib/stripe/params/v2/money_management/outbound_transfer_retrieve_params.rb +10 -0
  464. data/lib/stripe/params/v2/money_management/payout_method_archive_params.rb +10 -0
  465. data/lib/stripe/params/v2/money_management/payout_method_list_params.rb +31 -0
  466. data/lib/stripe/params/v2/money_management/payout_method_retrieve_params.rb +10 -0
  467. data/lib/stripe/params/v2/money_management/payout_method_unarchive_params.rb +10 -0
  468. data/lib/stripe/params/v2/money_management/payout_methods_bank_account_spec_retrieve_params.rb +17 -0
  469. data/lib/stripe/params/v2/money_management/received_credit_list_params.rb +44 -0
  470. data/lib/stripe/params/v2/money_management/received_credit_retrieve_params.rb +10 -0
  471. data/lib/stripe/params/v2/money_management/received_debit_list_params.rb +17 -0
  472. data/lib/stripe/params/v2/money_management/received_debit_retrieve_params.rb +10 -0
  473. data/lib/stripe/params/v2/money_management/recipient_verification_acknowledge_params.rb +10 -0
  474. data/lib/stripe/params/v2/money_management/recipient_verification_create_params.rb +20 -0
  475. data/lib/stripe/params/v2/money_management/recipient_verification_retrieve_params.rb +10 -0
  476. data/lib/stripe/params/v2/money_management/transaction_entry_list_params.rb +43 -0
  477. data/lib/stripe/params/v2/money_management/transaction_entry_retrieve_params.rb +10 -0
  478. data/lib/stripe/params/v2/money_management/transaction_list_params.rb +47 -0
  479. data/lib/stripe/params/v2/money_management/transaction_retrieve_params.rb +10 -0
  480. data/lib/stripe/params/v2/payments/off_session_payment_cancel_params.rb +10 -0
  481. data/lib/stripe/params/v2/payments/off_session_payment_capture_params.rb +57 -0
  482. data/lib/stripe/params/v2/payments/off_session_payment_create_params.rb +161 -0
  483. data/lib/stripe/params/v2/payments/off_session_payment_list_params.rb +17 -0
  484. data/lib/stripe/params/v2/payments/off_session_payment_retrieve_params.rb +10 -0
  485. data/lib/stripe/params/v2/payments/settlement_allocation_intent_cancel_params.rb +10 -0
  486. data/lib/stripe/params/v2/payments/settlement_allocation_intent_create_params.rb +46 -0
  487. data/lib/stripe/params/v2/payments/settlement_allocation_intent_retrieve_params.rb +10 -0
  488. data/lib/stripe/params/v2/payments/settlement_allocation_intent_submit_params.rb +10 -0
  489. data/lib/stripe/params/v2/payments/settlement_allocation_intent_update_params.rb +31 -0
  490. data/lib/stripe/params/v2/payments/settlement_allocation_intents/split_cancel_params.rb +12 -0
  491. data/lib/stripe/params/v2/payments/settlement_allocation_intents/split_create_params.rb +39 -0
  492. data/lib/stripe/params/v2/payments/settlement_allocation_intents/split_retrieve_params.rb +12 -0
  493. data/lib/stripe/params/v2/reporting/report_retrieve_params.rb +10 -0
  494. data/lib/stripe/params/v2/reporting/report_run_create_params.rb +33 -0
  495. data/lib/stripe/params/v2/reporting/report_run_retrieve_params.rb +10 -0
  496. data/lib/stripe/params/v2/tax/manual_rule_create_params.rb +94 -0
  497. data/lib/stripe/params/v2/tax/manual_rule_deactivate_params.rb +10 -0
  498. data/lib/stripe/params/v2/tax/manual_rule_list_params.rb +17 -0
  499. data/lib/stripe/params/v2/tax/manual_rule_retrieve_params.rb +10 -0
  500. data/lib/stripe/params/v2/tax/manual_rule_update_params.rb +94 -0
  501. data/lib/stripe/params/v2/test_helpers/financial_address_credit_params.rb +34 -0
  502. data/lib/stripe/params/v2/test_helpers/financial_address_generate_microdeposits_params.rb +10 -0
  503. data/lib/stripe/params/v2/test_helpers/money_management_recipient_verifications_params.rb +24 -0
  504. data/lib/stripe/params.rb +282 -0
  505. data/lib/stripe/resources/account.rb +227 -1
  506. data/lib/stripe/resources/account_notice.rb +94 -0
  507. data/lib/stripe/resources/account_session.rb +135 -0
  508. data/lib/stripe/resources/application_fee.rb +2 -0
  509. data/lib/stripe/resources/balance.rb +83 -0
  510. data/lib/stripe/resources/balance_transfer.rb +139 -0
  511. data/lib/stripe/resources/billing/alert.rb +105 -1
  512. data/lib/stripe/resources/billing/alert_triggered.rb +6 -0
  513. data/lib/stripe/resources/billing/analytics/meter_usage.rb +33 -0
  514. data/lib/stripe/resources/billing/analytics/meter_usage_row.rb +40 -0
  515. data/lib/stripe/resources/billing/credit_balance_summary.rb +84 -2
  516. data/lib/stripe/resources/billing/credit_balance_transaction.rb +84 -2
  517. data/lib/stripe/resources/billing/credit_grant.rb +58 -2
  518. data/lib/stripe/resources/billing/meter.rb +2 -0
  519. data/lib/stripe/resources/billing/meter_event_summary.rb +2 -0
  520. data/lib/stripe/resources/capital/financing_offer.rb +183 -0
  521. data/lib/stripe/resources/capital/financing_summary.rb +82 -0
  522. data/lib/stripe/resources/capital/financing_transaction.rb +99 -0
  523. data/lib/stripe/resources/card.rb +20 -1
  524. data/lib/stripe/resources/charge.rb +233 -1
  525. data/lib/stripe/resources/checkout/session.rb +196 -4
  526. data/lib/stripe/resources/confirmation_token.rb +151 -0
  527. data/lib/stripe/resources/coupon.rb +60 -1
  528. data/lib/stripe/resources/credit_note_line_item.rb +18 -0
  529. data/lib/stripe/resources/customer_session.rb +36 -0
  530. data/lib/stripe/resources/delegated_checkout/requested_session.rb +509 -0
  531. data/lib/stripe/resources/discount.rb +20 -1
  532. data/lib/stripe/resources/dispute.rb +22 -0
  533. data/lib/stripe/resources/event.rb +64 -1
  534. data/lib/stripe/resources/financial_connections/account.rb +57 -0
  535. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +35 -0
  536. data/lib/stripe/resources/financial_connections/authorization.rb +82 -0
  537. data/lib/stripe/resources/financial_connections/institution.rb +127 -0
  538. data/lib/stripe/resources/financial_connections/session.rb +103 -1
  539. data/lib/stripe/resources/fr_meal_vouchers_onboarding.rb +143 -0
  540. data/lib/stripe/resources/fx_quote.rb +147 -0
  541. data/lib/stripe/resources/identity/blocklist_entry.rb +116 -0
  542. data/lib/stripe/resources/identity/verification_report.rb +4 -0
  543. data/lib/stripe/resources/invoice.rb +188 -1
  544. data/lib/stripe/resources/invoice_item.rb +108 -2
  545. data/lib/stripe/resources/invoice_line_item.rb +147 -1
  546. data/lib/stripe/resources/issuing/card.rb +4 -0
  547. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +263 -0
  548. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +71 -0
  549. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +51 -0
  550. data/lib/stripe/resources/issuing/program.rb +69 -0
  551. data/lib/stripe/resources/issuing/settlement.rb +61 -0
  552. data/lib/stripe/resources/issuing/transaction.rb +2 -0
  553. data/lib/stripe/resources/line_item.rb +42 -0
  554. data/lib/stripe/resources/mandate.rb +43 -0
  555. data/lib/stripe/resources/margin.rb +64 -0
  556. data/lib/stripe/resources/order.rb +927 -0
  557. data/lib/stripe/resources/payment_attempt_record.rb +181 -1
  558. data/lib/stripe/resources/payment_intent.rb +1625 -9
  559. data/lib/stripe/resources/payment_method.rb +173 -0
  560. data/lib/stripe/resources/payment_method_balance.rb +68 -0
  561. data/lib/stripe/resources/payment_method_configuration.rb +170 -0
  562. data/lib/stripe/resources/payment_record.rb +181 -1
  563. data/lib/stripe/resources/person.rb +36 -0
  564. data/lib/stripe/resources/plan.rb +2 -0
  565. data/lib/stripe/resources/price.rb +22 -0
  566. data/lib/stripe/resources/privacy/redaction_job.rb +187 -0
  567. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +49 -0
  568. data/lib/stripe/resources/product_catalog/trial_offer.rb +103 -0
  569. data/lib/stripe/resources/quote.rb +806 -2
  570. data/lib/stripe/resources/quote_line.rb +527 -0
  571. data/lib/stripe/resources/quote_preview_invoice.rb +1200 -0
  572. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +826 -0
  573. data/lib/stripe/resources/radar/account_evaluation.rb +145 -0
  574. data/lib/stripe/resources/refund.rb +18 -0
  575. data/lib/stripe/resources/reserve/hold.rb +74 -0
  576. data/lib/stripe/resources/reserve/plan.rb +78 -0
  577. data/lib/stripe/resources/reserve/release.rb +77 -0
  578. data/lib/stripe/resources/setup_attempt.rb +48 -0
  579. data/lib/stripe/resources/setup_intent.rb +128 -1
  580. data/lib/stripe/resources/shared_payment/granted_token.rb +126 -0
  581. data/lib/stripe/resources/source.rb +38 -0
  582. data/lib/stripe/resources/subscription.rb +269 -0
  583. data/lib/stripe/resources/subscription_item.rb +43 -1
  584. data/lib/stripe/resources/subscription_schedule.rb +290 -3
  585. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  586. data/lib/stripe/resources/tax/form.rb +264 -0
  587. data/lib/stripe/resources/tax/location.rb +72 -0
  588. data/lib/stripe/resources/tax/registration.rb +128 -0
  589. data/lib/stripe/resources/tax_code.rb +15 -1
  590. data/lib/stripe/resources/terminal/configuration.rb +16 -0
  591. data/lib/stripe/resources/terminal/reader.rb +8 -0
  592. data/lib/stripe/resources/terminal/reader_collected_data.rb +47 -0
  593. data/lib/stripe/resources/transfer.rb +6 -0
  594. data/lib/stripe/resources/transit_balance.rb +45 -0
  595. data/lib/stripe/resources/treasury/financial_account.rb +2 -0
  596. data/lib/stripe/resources/treasury/financial_account_features.rb +2 -0
  597. data/lib/stripe/resources/treasury/outbound_transfer.rb +30 -0
  598. data/lib/stripe/resources/treasury/received_credit.rb +30 -0
  599. data/lib/stripe/resources/treasury/received_debit.rb +32 -0
  600. data/lib/stripe/resources/v2/billing/bill_setting.rb +102 -0
  601. data/lib/stripe/resources/v2/billing/bill_setting_version.rb +90 -0
  602. data/lib/stripe/resources/v2/billing/cadence.rb +655 -0
  603. data/lib/stripe/resources/v2/billing/collection_setting.rb +274 -0
  604. data/lib/stripe/resources/v2/billing/collection_setting_version.rb +262 -0
  605. data/lib/stripe/resources/v2/billing/custom_pricing_unit.rb +43 -0
  606. data/lib/stripe/resources/v2/billing/intent.rb +86 -0
  607. data/lib/stripe/resources/v2/billing/intent_action.rb +483 -0
  608. data/lib/stripe/resources/v2/billing/license_fee.rb +104 -0
  609. data/lib/stripe/resources/v2/billing/license_fee_subscription.rb +44 -0
  610. data/lib/stripe/resources/v2/billing/license_fee_version.rb +80 -0
  611. data/lib/stripe/resources/v2/billing/licensed_item.rb +60 -0
  612. data/lib/stripe/resources/v2/billing/metered_item.rb +85 -0
  613. data/lib/stripe/resources/v2/billing/pricing_plan.rb +51 -0
  614. data/lib/stripe/resources/v2/billing/pricing_plan_component.rb +94 -0
  615. data/lib/stripe/resources/v2/billing/pricing_plan_subscription.rb +94 -0
  616. data/lib/stripe/resources/v2/billing/pricing_plan_subscription_components.rb +49 -0
  617. data/lib/stripe/resources/v2/billing/pricing_plan_version.rb +38 -0
  618. data/lib/stripe/resources/v2/billing/profile.rb +46 -0
  619. data/lib/stripe/resources/v2/billing/rate_card.rb +61 -0
  620. data/lib/stripe/resources/v2/billing/rate_card_rate.rb +110 -0
  621. data/lib/stripe/resources/v2/billing/rate_card_subscription.rb +94 -0
  622. data/lib/stripe/resources/v2/billing/rate_card_version.rb +34 -0
  623. data/lib/stripe/resources/v2/billing/service_action.rb +274 -0
  624. data/lib/stripe/resources/v2/core/account.rb +1688 -80
  625. data/lib/stripe/resources/v2/core/claimable_sandbox.rb +105 -0
  626. data/lib/stripe/resources/v2/core/event.rb +50 -1
  627. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +134 -0
  628. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +103 -0
  629. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +28 -0
  630. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +44 -0
  631. data/lib/stripe/resources/v2/iam/api_key.rb +129 -0
  632. data/lib/stripe/resources/v2/money_management/adjustment.rb +82 -0
  633. data/lib/stripe/resources/v2/money_management/currency_conversion.rb +94 -0
  634. data/lib/stripe/resources/v2/money_management/financial_account.rb +223 -0
  635. data/lib/stripe/resources/v2/money_management/financial_address.rb +132 -0
  636. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +197 -0
  637. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +347 -0
  638. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +204 -0
  639. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +69 -0
  640. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +242 -0
  641. data/lib/stripe/resources/v2/money_management/payout_method.rb +157 -0
  642. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +81 -0
  643. data/lib/stripe/resources/v2/money_management/received_credit.rb +280 -0
  644. data/lib/stripe/resources/v2/money_management/received_debit.rb +208 -0
  645. data/lib/stripe/resources/v2/money_management/recipient_verification.rb +83 -0
  646. data/lib/stripe/resources/v2/money_management/transaction.rb +180 -0
  647. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +153 -0
  648. data/lib/stripe/resources/v2/payments/off_session_payment.rb +186 -0
  649. data/lib/stripe/resources/v2/payments/settlement_allocation_intent.rb +92 -0
  650. data/lib/stripe/resources/v2/payments/settlement_allocation_intent_split.rb +78 -0
  651. data/lib/stripe/resources/v2/reporting/report.rb +116 -0
  652. data/lib/stripe/resources/v2/reporting/report_run.rb +128 -0
  653. data/lib/stripe/resources/v2/tax/manual_rule.rb +115 -0
  654. data/lib/stripe/resources.rb +223 -0
  655. data/lib/stripe/services/account_notice_service.rb +39 -0
  656. data/lib/stripe/services/balance_transfer_service.rb +17 -0
  657. data/lib/stripe/services/billing/analytics/meter_usage_service.rb +21 -0
  658. data/lib/stripe/services/billing/analytics_service.rb +15 -0
  659. data/lib/stripe/services/billing_service.rb +2 -1
  660. data/lib/stripe/services/capital/financing_offer_service.rb +42 -0
  661. data/lib/stripe/services/capital/financing_summary_service.rb +19 -0
  662. data/lib/stripe/services/capital/financing_transaction_service.rb +31 -0
  663. data/lib/stripe/services/capital_service.rb +15 -0
  664. data/lib/stripe/services/delegated_checkout/requested_session_service.rb +63 -0
  665. data/lib/stripe/services/delegated_checkout_service.rb +13 -0
  666. data/lib/stripe/services/external_account_service.rb +68 -0
  667. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +19 -0
  668. data/lib/stripe/services/financial_connections/account_service.rb +3 -1
  669. data/lib/stripe/services/financial_connections/authorization_service.rb +19 -0
  670. data/lib/stripe/services/financial_connections/institution_service.rb +30 -0
  671. data/lib/stripe/services/financial_connections_service.rb +3 -1
  672. data/lib/stripe/services/fr_meal_vouchers_onboarding_service.rb +50 -0
  673. data/lib/stripe/services/fx_quote_service.rb +27 -0
  674. data/lib/stripe/services/identity/blocklist_entry_service.rb +71 -0
  675. data/lib/stripe/services/identity_service.rb +2 -1
  676. data/lib/stripe/services/invoice_service.rb +11 -0
  677. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +74 -0
  678. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +30 -0
  679. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +30 -0
  680. data/lib/stripe/services/issuing/program_service.rb +52 -0
  681. data/lib/stripe/services/issuing_service.rb +6 -1
  682. data/lib/stripe/services/mandate_service.rb +5 -0
  683. data/lib/stripe/services/margin_service.rb +50 -0
  684. data/lib/stripe/services/order_service.rb +49 -0
  685. data/lib/stripe/services/payment_intent_service.rb +37 -0
  686. data/lib/stripe/services/payment_method_service.rb +11 -0
  687. data/lib/stripe/services/privacy/redaction_job_service.rb +104 -0
  688. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +19 -0
  689. data/lib/stripe/services/privacy_service.rb +13 -0
  690. data/lib/stripe/services/product_catalog/trial_offer_service.rb +19 -0
  691. data/lib/stripe/services/product_catalog_service.rb +13 -0
  692. data/lib/stripe/services/quote_line_service.rb +17 -0
  693. data/lib/stripe/services/quote_preview_invoice_service.rb +17 -0
  694. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +17 -0
  695. data/lib/stripe/services/quote_service.rb +49 -1
  696. data/lib/stripe/services/radar/account_evaluation_service.rb +41 -0
  697. data/lib/stripe/services/radar_service.rb +2 -1
  698. data/lib/stripe/services/reserve/hold_service.rb +30 -0
  699. data/lib/stripe/services/reserve/plan_service.rb +19 -0
  700. data/lib/stripe/services/reserve/release_service.rb +30 -0
  701. data/lib/stripe/services/reserve_service.rb +15 -0
  702. data/lib/stripe/services/shared_payment/granted_token_service.rb +19 -0
  703. data/lib/stripe/services/shared_payment_service.rb +13 -0
  704. data/lib/stripe/services/subscription_schedule_service.rb +11 -0
  705. data/lib/stripe/services/subscription_service.rb +22 -0
  706. data/lib/stripe/services/tax/form_service.rb +37 -0
  707. data/lib/stripe/services/tax/location_service.rb +45 -0
  708. data/lib/stripe/services/tax_service.rb +3 -1
  709. data/lib/stripe/services/terminal/reader_collected_data_service.rb +19 -0
  710. data/lib/stripe/services/terminal_service.rb +2 -1
  711. data/lib/stripe/services/test_helpers/capital/financing_offer_service.rb +32 -0
  712. data/lib/stripe/services/test_helpers/capital_service.rb +15 -0
  713. data/lib/stripe/services/test_helpers/shared_payment/granted_token_service.rb +32 -0
  714. data/lib/stripe/services/test_helpers/shared_payment_service.rb +15 -0
  715. data/lib/stripe/services/test_helpers_service.rb +3 -1
  716. data/lib/stripe/services/v1_services.rb +14 -1
  717. data/lib/stripe/services/v2/billing/bill_setting_service.rb +61 -0
  718. data/lib/stripe/services/v2/billing/bill_settings/version_service.rb +34 -0
  719. data/lib/stripe/services/v2/billing/cadence_service.rb +65 -0
  720. data/lib/stripe/services/v2/billing/collection_setting_service.rb +61 -0
  721. data/lib/stripe/services/v2/billing/collection_settings/version_service.rb +34 -0
  722. data/lib/stripe/services/v2/billing/custom_pricing_unit_service.rb +54 -0
  723. data/lib/stripe/services/v2/billing/intent_service.rb +94 -0
  724. data/lib/stripe/services/v2/billing/intents/action_service.rb +34 -0
  725. data/lib/stripe/services/v2/billing/license_fee_service.rb +61 -0
  726. data/lib/stripe/services/v2/billing/license_fee_subscription_service.rb +21 -0
  727. data/lib/stripe/services/v2/billing/license_fees/version_service.rb +34 -0
  728. data/lib/stripe/services/v2/billing/licensed_item_service.rb +54 -0
  729. data/lib/stripe/services/v2/billing/metered_item_service.rb +54 -0
  730. data/lib/stripe/services/v2/billing/pricing_plan_service.rb +62 -0
  731. data/lib/stripe/services/v2/billing/pricing_plan_subscription_service.rb +51 -0
  732. data/lib/stripe/services/v2/billing/pricing_plan_subscriptions/component_service.rb +23 -0
  733. data/lib/stripe/services/v2/billing/pricing_plans/component_service.rb +67 -0
  734. data/lib/stripe/services/v2/billing/pricing_plans/version_service.rb +34 -0
  735. data/lib/stripe/services/v2/billing/profile_service.rb +54 -0
  736. data/lib/stripe/services/v2/billing/rate_card_service.rb +62 -0
  737. data/lib/stripe/services/v2/billing/rate_card_subscription_service.rb +65 -0
  738. data/lib/stripe/services/v2/billing/rate_cards/rate_service.rb +57 -0
  739. data/lib/stripe/services/v2/billing/rate_cards/version_service.rb +34 -0
  740. data/lib/stripe/services/v2/billing/service_action_service.rb +43 -0
  741. data/lib/stripe/services/v2/billing_service.rb +18 -1
  742. data/lib/stripe/services/v2/core/account_link_service.rb +2 -0
  743. data/lib/stripe/services/v2/core/account_service.rb +10 -0
  744. data/lib/stripe/services/v2/core/account_token_service.rb +4 -0
  745. data/lib/stripe/services/v2/core/accounts/person_service.rb +10 -0
  746. data/lib/stripe/services/v2/core/accounts/person_token_service.rb +4 -0
  747. data/lib/stripe/services/v2/core/claimable_sandbox_service.rb +35 -0
  748. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +85 -0
  749. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +101 -0
  750. data/lib/stripe/services/v2/core/vault_service.rb +18 -0
  751. data/lib/stripe/services/v2/core_service.rb +3 -1
  752. data/lib/stripe/services/v2/iam/api_key_service.rb +76 -0
  753. data/lib/stripe/services/v2/iam_service.rb +15 -0
  754. data/lib/stripe/services/v2/money_management/adjustment_service.rb +32 -0
  755. data/lib/stripe/services/v2/money_management/currency_conversion_service.rb +45 -0
  756. data/lib/stripe/services/v2/money_management/financial_account_service.rb +70 -0
  757. data/lib/stripe/services/v2/money_management/financial_address_service.rb +46 -0
  758. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +45 -0
  759. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +34 -0
  760. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +62 -0
  761. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +75 -0
  762. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +60 -0
  763. data/lib/stripe/services/v2/money_management/payout_method_service.rb +65 -0
  764. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +23 -0
  765. data/lib/stripe/services/v2/money_management/received_credit_service.rb +32 -0
  766. data/lib/stripe/services/v2/money_management/received_debit_service.rb +32 -0
  767. data/lib/stripe/services/v2/money_management/recipient_verification_service.rb +43 -0
  768. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +32 -0
  769. data/lib/stripe/services/v2/money_management/transaction_service.rb +32 -0
  770. data/lib/stripe/services/v2/money_management_service.rb +35 -0
  771. data/lib/stripe/services/v2/payment_service.rb +17 -0
  772. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +65 -0
  773. data/lib/stripe/services/v2/payments/settlement_allocation_intent_service.rb +72 -0
  774. data/lib/stripe/services/v2/payments/settlement_allocation_intents/split_service.rb +45 -0
  775. data/lib/stripe/services/v2/reporting/report_run_service.rb +38 -0
  776. data/lib/stripe/services/v2/reporting/report_service.rb +23 -0
  777. data/lib/stripe/services/v2/reporting_service.rb +16 -0
  778. data/lib/stripe/services/v2/tax/manual_rule_service.rb +65 -0
  779. data/lib/stripe/services/v2/tax_service.rb +15 -0
  780. data/lib/stripe/services/v2/test_helper_service.rb +16 -0
  781. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +36 -0
  782. data/lib/stripe/services/v2/test_helpers/money_management_service.rb +21 -0
  783. data/lib/stripe/services/v2_services.rb +7 -1
  784. data/lib/stripe/services.rb +104 -0
  785. data/lib/stripe/stripe_configuration.rb +3 -1
  786. data/lib/stripe/stripe_object.rb +1 -1
  787. data/lib/stripe/util.rb +16 -4
  788. data/lib/stripe/version.rb +1 -1
  789. data/lib/stripe.rb +53 -0
  790. data/rbi/stripe.rbi +147289 -62508
  791. metadata +612 -3
@@ -27,16 +27,44 @@ module Stripe
27
27
  end
28
28
 
29
29
  class Discount < ::Stripe::RequestParams
30
+ class DiscountEnd < ::Stripe::RequestParams
31
+ class Duration < ::Stripe::RequestParams
32
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
33
+ attr_accessor :interval
34
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
35
+ attr_accessor :interval_count
36
+
37
+ def initialize(interval: nil, interval_count: nil)
38
+ @interval = interval
39
+ @interval_count = interval_count
40
+ end
41
+ end
42
+ # Time span for the redeemed discount.
43
+ attr_accessor :duration
44
+ # A precise Unix timestamp for the discount to end. Must be in the future.
45
+ attr_accessor :timestamp
46
+ # The type of calculation made to determine when the discount ends.
47
+ attr_accessor :type
48
+
49
+ def initialize(duration: nil, timestamp: nil, type: nil)
50
+ @duration = duration
51
+ @timestamp = timestamp
52
+ @type = type
53
+ end
54
+ end
30
55
  # ID of the coupon to create a new discount for.
31
56
  attr_accessor :coupon
32
57
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
33
58
  attr_accessor :discount
59
+ # Details to determine how long the discount should be applied for.
60
+ attr_accessor :discount_end
34
61
  # ID of the promotion code to create a new discount for.
35
62
  attr_accessor :promotion_code
36
63
 
37
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
64
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
38
65
  @coupon = coupon
39
66
  @discount = discount
67
+ @discount_end = discount_end
40
68
  @promotion_code = promotion_code
41
69
  end
42
70
  end
@@ -64,18 +92,737 @@ module Stripe
64
92
  end
65
93
  end
66
94
 
95
+ class Line < ::Stripe::RequestParams
96
+ class Action < ::Stripe::RequestParams
97
+ class AddDiscount < ::Stripe::RequestParams
98
+ class DiscountEnd < ::Stripe::RequestParams
99
+ # The type of calculation made to determine when the discount ends.
100
+ attr_accessor :type
101
+
102
+ def initialize(type: nil)
103
+ @type = type
104
+ end
105
+ end
106
+
107
+ class Settings < ::Stripe::RequestParams
108
+ class ServicePeriodAnchorConfig < ::Stripe::RequestParams
109
+ class Custom < ::Stripe::RequestParams
110
+ # The day of the month the anchor should be. Ranges from 1 to 31.
111
+ attr_accessor :day_of_month
112
+ # The hour of the day the anchor should be. Ranges from 0 to 23.
113
+ attr_accessor :hour
114
+ # The minute of the hour the anchor should be. Ranges from 0 to 59.
115
+ attr_accessor :minute
116
+ # The month to start full cycle periods. Ranges from 1 to 12.
117
+ attr_accessor :month
118
+ # The second of the minute the anchor should be. Ranges from 0 to 59.
119
+ attr_accessor :second
120
+
121
+ def initialize(day_of_month: nil, hour: nil, minute: nil, month: nil, second: nil)
122
+ @day_of_month = day_of_month
123
+ @hour = hour
124
+ @minute = minute
125
+ @month = month
126
+ @second = second
127
+ end
128
+ end
129
+ # Anchor the service period to a custom date. Type must be `custom` to specify.
130
+ attr_accessor :custom
131
+ # The type of service period anchor config. Defaults to `inherit` if omitted.
132
+ attr_accessor :type
133
+
134
+ def initialize(custom: nil, type: nil)
135
+ @custom = custom
136
+ @type = type
137
+ end
138
+ end
139
+ # Configures service period cycle anchoring.
140
+ attr_accessor :service_period_anchor_config
141
+ # The start date of the discount's service period when applying a coupon or promotion code with a service period duration. Defaults to `line_start` if omitted.
142
+ attr_accessor :start_date
143
+
144
+ def initialize(service_period_anchor_config: nil, start_date: nil)
145
+ @service_period_anchor_config = service_period_anchor_config
146
+ @start_date = start_date
147
+ end
148
+ end
149
+ # The coupon code to redeem.
150
+ attr_accessor :coupon
151
+ # An ID of an existing discount for a coupon that was already redeemed.
152
+ attr_accessor :discount
153
+ # Details to determine how long the discount should be applied for.
154
+ attr_accessor :discount_end
155
+ # The index, starting at 0, at which to position the new discount. When not supplied, Stripe defaults to appending the discount to the end of the `discounts` array.
156
+ attr_accessor :index
157
+ # The promotion code to redeem.
158
+ attr_accessor :promotion_code
159
+ # Settings for discount application including service period anchoring.
160
+ attr_accessor :settings
161
+
162
+ def initialize(
163
+ coupon: nil,
164
+ discount: nil,
165
+ discount_end: nil,
166
+ index: nil,
167
+ promotion_code: nil,
168
+ settings: nil
169
+ )
170
+ @coupon = coupon
171
+ @discount = discount
172
+ @discount_end = discount_end
173
+ @index = index
174
+ @promotion_code = promotion_code
175
+ @settings = settings
176
+ end
177
+ end
178
+
179
+ class AddItem < ::Stripe::RequestParams
180
+ class Discount < ::Stripe::RequestParams
181
+ class DiscountEnd < ::Stripe::RequestParams
182
+ class Duration < ::Stripe::RequestParams
183
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
184
+ attr_accessor :interval
185
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
186
+ attr_accessor :interval_count
187
+
188
+ def initialize(interval: nil, interval_count: nil)
189
+ @interval = interval
190
+ @interval_count = interval_count
191
+ end
192
+ end
193
+ # Time span for the redeemed discount.
194
+ attr_accessor :duration
195
+ # A precise Unix timestamp for the discount to end. Must be in the future.
196
+ attr_accessor :timestamp
197
+ # The type of calculation made to determine when the discount ends.
198
+ attr_accessor :type
199
+
200
+ def initialize(duration: nil, timestamp: nil, type: nil)
201
+ @duration = duration
202
+ @timestamp = timestamp
203
+ @type = type
204
+ end
205
+ end
206
+
207
+ class Settings < ::Stripe::RequestParams
208
+ class ServicePeriodAnchorConfig < ::Stripe::RequestParams
209
+ class Custom < ::Stripe::RequestParams
210
+ # The day of the month the anchor should be. Ranges from 1 to 31.
211
+ attr_accessor :day_of_month
212
+ # The hour of the day the anchor should be. Ranges from 0 to 23.
213
+ attr_accessor :hour
214
+ # The minute of the hour the anchor should be. Ranges from 0 to 59.
215
+ attr_accessor :minute
216
+ # The month to start full cycle periods. Ranges from 1 to 12.
217
+ attr_accessor :month
218
+ # The second of the minute the anchor should be. Ranges from 0 to 59.
219
+ attr_accessor :second
220
+
221
+ def initialize(day_of_month: nil, hour: nil, minute: nil, month: nil, second: nil)
222
+ @day_of_month = day_of_month
223
+ @hour = hour
224
+ @minute = minute
225
+ @month = month
226
+ @second = second
227
+ end
228
+ end
229
+ # Anchor the service period to a custom date. Type must be `custom` to specify.
230
+ attr_accessor :custom
231
+ # The type of service period anchor config. Defaults to `inherit` if omitted.
232
+ attr_accessor :type
233
+
234
+ def initialize(custom: nil, type: nil)
235
+ @custom = custom
236
+ @type = type
237
+ end
238
+ end
239
+ # Configures service period cycle anchoring.
240
+ attr_accessor :service_period_anchor_config
241
+ # The start date of the discount's service period when applying a coupon or promotion code with a service period duration. Defaults to `line_start` if omitted.
242
+ attr_accessor :start_date
243
+
244
+ def initialize(service_period_anchor_config: nil, start_date: nil)
245
+ @service_period_anchor_config = service_period_anchor_config
246
+ @start_date = start_date
247
+ end
248
+ end
249
+ # ID of the coupon to create a new discount for.
250
+ attr_accessor :coupon
251
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
252
+ attr_accessor :discount
253
+ # Details to determine how long the discount should be applied for.
254
+ attr_accessor :discount_end
255
+ # ID of the promotion code to create a new discount for.
256
+ attr_accessor :promotion_code
257
+ # Settings for discount application including service period anchoring.
258
+ attr_accessor :settings
259
+
260
+ def initialize(
261
+ coupon: nil,
262
+ discount: nil,
263
+ discount_end: nil,
264
+ promotion_code: nil,
265
+ settings: nil
266
+ )
267
+ @coupon = coupon
268
+ @discount = discount
269
+ @discount_end = discount_end
270
+ @promotion_code = promotion_code
271
+ @settings = settings
272
+ end
273
+ end
274
+
275
+ class Trial < ::Stripe::RequestParams
276
+ # 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.
277
+ attr_accessor :converts_to
278
+ # Determines the type of trial for this item.
279
+ attr_accessor :type
280
+
281
+ def initialize(converts_to: nil, type: nil)
282
+ @converts_to = converts_to
283
+ @type = type
284
+ end
285
+ end
286
+ # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
287
+ attr_accessor :discounts
288
+ # Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
289
+ attr_accessor :metadata
290
+ # The ID of the price object.
291
+ attr_accessor :price
292
+ # Quantity for this item.
293
+ attr_accessor :quantity
294
+ # The tax rates that apply to this subscription item. When set, the `default_tax_rates` on the subscription do not apply to this `subscription_item`.
295
+ attr_accessor :tax_rates
296
+ # Options that configure the trial on the subscription item.
297
+ attr_accessor :trial
298
+ # The ID of the trial offer to apply to the configuration item.
299
+ attr_accessor :trial_offer
300
+
301
+ def initialize(
302
+ discounts: nil,
303
+ metadata: nil,
304
+ price: nil,
305
+ quantity: nil,
306
+ tax_rates: nil,
307
+ trial: nil,
308
+ trial_offer: nil
309
+ )
310
+ @discounts = discounts
311
+ @metadata = metadata
312
+ @price = price
313
+ @quantity = quantity
314
+ @tax_rates = tax_rates
315
+ @trial = trial
316
+ @trial_offer = trial_offer
317
+ end
318
+ end
319
+
320
+ class RemoveDiscount < ::Stripe::RequestParams
321
+ # The coupon code to remove from the `discounts` array.
322
+ attr_accessor :coupon
323
+ # The ID of a discount to remove from the `discounts` array.
324
+ attr_accessor :discount
325
+ # The ID of a promotion code to remove from the `discounts` array.
326
+ attr_accessor :promotion_code
327
+
328
+ def initialize(coupon: nil, discount: nil, promotion_code: nil)
329
+ @coupon = coupon
330
+ @discount = discount
331
+ @promotion_code = promotion_code
332
+ end
333
+ end
334
+
335
+ class RemoveItem < ::Stripe::RequestParams
336
+ # ID of a price to remove.
337
+ attr_accessor :price
338
+
339
+ def initialize(price: nil)
340
+ @price = price
341
+ end
342
+ end
343
+
344
+ class SetDiscount < ::Stripe::RequestParams
345
+ class Settings < ::Stripe::RequestParams
346
+ class ServicePeriodAnchorConfig < ::Stripe::RequestParams
347
+ class Custom < ::Stripe::RequestParams
348
+ # The day of the month the anchor should be. Ranges from 1 to 31.
349
+ attr_accessor :day_of_month
350
+ # The hour of the day the anchor should be. Ranges from 0 to 23.
351
+ attr_accessor :hour
352
+ # The minute of the hour the anchor should be. Ranges from 0 to 59.
353
+ attr_accessor :minute
354
+ # The month to start full cycle periods. Ranges from 1 to 12.
355
+ attr_accessor :month
356
+ # The second of the minute the anchor should be. Ranges from 0 to 59.
357
+ attr_accessor :second
358
+
359
+ def initialize(day_of_month: nil, hour: nil, minute: nil, month: nil, second: nil)
360
+ @day_of_month = day_of_month
361
+ @hour = hour
362
+ @minute = minute
363
+ @month = month
364
+ @second = second
365
+ end
366
+ end
367
+ # Anchor the service period to a custom date. Type must be `custom` to specify.
368
+ attr_accessor :custom
369
+ # The type of service period anchor config. Defaults to `inherit` if omitted.
370
+ attr_accessor :type
371
+
372
+ def initialize(custom: nil, type: nil)
373
+ @custom = custom
374
+ @type = type
375
+ end
376
+ end
377
+ # Configures service period cycle anchoring.
378
+ attr_accessor :service_period_anchor_config
379
+ # The start date of the discount's service period when applying a coupon or promotion code with a service period duration. Defaults to `line_start` if omitted.
380
+ attr_accessor :start_date
381
+
382
+ def initialize(service_period_anchor_config: nil, start_date: nil)
383
+ @service_period_anchor_config = service_period_anchor_config
384
+ @start_date = start_date
385
+ end
386
+ end
387
+ # The coupon code to replace the `discounts` array with.
388
+ attr_accessor :coupon
389
+ # An ID of an existing discount to replace the `discounts` array with.
390
+ attr_accessor :discount
391
+ # An ID of an existing promotion code to replace the `discounts` array with.
392
+ attr_accessor :promotion_code
393
+ # Settings for discount application including service period anchoring.
394
+ attr_accessor :settings
395
+
396
+ def initialize(coupon: nil, discount: nil, promotion_code: nil, settings: nil)
397
+ @coupon = coupon
398
+ @discount = discount
399
+ @promotion_code = promotion_code
400
+ @settings = settings
401
+ end
402
+ end
403
+
404
+ class SetItem < ::Stripe::RequestParams
405
+ class Discount < ::Stripe::RequestParams
406
+ class DiscountEnd < ::Stripe::RequestParams
407
+ class Duration < ::Stripe::RequestParams
408
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
409
+ attr_accessor :interval
410
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
411
+ attr_accessor :interval_count
412
+
413
+ def initialize(interval: nil, interval_count: nil)
414
+ @interval = interval
415
+ @interval_count = interval_count
416
+ end
417
+ end
418
+ # Time span for the redeemed discount.
419
+ attr_accessor :duration
420
+ # A precise Unix timestamp for the discount to end. Must be in the future.
421
+ attr_accessor :timestamp
422
+ # The type of calculation made to determine when the discount ends.
423
+ attr_accessor :type
424
+
425
+ def initialize(duration: nil, timestamp: nil, type: nil)
426
+ @duration = duration
427
+ @timestamp = timestamp
428
+ @type = type
429
+ end
430
+ end
431
+
432
+ class Settings < ::Stripe::RequestParams
433
+ class ServicePeriodAnchorConfig < ::Stripe::RequestParams
434
+ class Custom < ::Stripe::RequestParams
435
+ # The day of the month the anchor should be. Ranges from 1 to 31.
436
+ attr_accessor :day_of_month
437
+ # The hour of the day the anchor should be. Ranges from 0 to 23.
438
+ attr_accessor :hour
439
+ # The minute of the hour the anchor should be. Ranges from 0 to 59.
440
+ attr_accessor :minute
441
+ # The month to start full cycle periods. Ranges from 1 to 12.
442
+ attr_accessor :month
443
+ # The second of the minute the anchor should be. Ranges from 0 to 59.
444
+ attr_accessor :second
445
+
446
+ def initialize(day_of_month: nil, hour: nil, minute: nil, month: nil, second: nil)
447
+ @day_of_month = day_of_month
448
+ @hour = hour
449
+ @minute = minute
450
+ @month = month
451
+ @second = second
452
+ end
453
+ end
454
+ # Anchor the service period to a custom date. Type must be `custom` to specify.
455
+ attr_accessor :custom
456
+ # The type of service period anchor config. Defaults to `inherit` if omitted.
457
+ attr_accessor :type
458
+
459
+ def initialize(custom: nil, type: nil)
460
+ @custom = custom
461
+ @type = type
462
+ end
463
+ end
464
+ # Configures service period cycle anchoring.
465
+ attr_accessor :service_period_anchor_config
466
+ # The start date of the discount's service period when applying a coupon or promotion code with a service period duration. Defaults to `line_start` if omitted.
467
+ attr_accessor :start_date
468
+
469
+ def initialize(service_period_anchor_config: nil, start_date: nil)
470
+ @service_period_anchor_config = service_period_anchor_config
471
+ @start_date = start_date
472
+ end
473
+ end
474
+ # ID of the coupon to create a new discount for.
475
+ attr_accessor :coupon
476
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
477
+ attr_accessor :discount
478
+ # Details to determine how long the discount should be applied for.
479
+ attr_accessor :discount_end
480
+ # ID of the promotion code to create a new discount for.
481
+ attr_accessor :promotion_code
482
+ # Settings for discount application including service period anchoring.
483
+ attr_accessor :settings
484
+
485
+ def initialize(
486
+ coupon: nil,
487
+ discount: nil,
488
+ discount_end: nil,
489
+ promotion_code: nil,
490
+ settings: nil
491
+ )
492
+ @coupon = coupon
493
+ @discount = discount
494
+ @discount_end = discount_end
495
+ @promotion_code = promotion_code
496
+ @settings = settings
497
+ end
498
+ end
499
+
500
+ class Trial < ::Stripe::RequestParams
501
+ # 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.
502
+ attr_accessor :converts_to
503
+ # Determines the type of trial for this item.
504
+ attr_accessor :type
505
+
506
+ def initialize(converts_to: nil, type: nil)
507
+ @converts_to = converts_to
508
+ @type = type
509
+ end
510
+ end
511
+ # If an item with the `price` already exists, passing this will override the `discounts` array on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `discounts`.
512
+ attr_accessor :discounts
513
+ # If an item with the `price` already exists, passing this will override the `metadata` on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `metadata`.
514
+ attr_accessor :metadata
515
+ # The ID of the price object.
516
+ attr_accessor :price
517
+ # If an item with the `price` already exists, passing this will override the quantity on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `quantity`.
518
+ attr_accessor :quantity
519
+ # If an item with the `price` already exists, passing this will override the `tax_rates` array on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `tax_rates`.
520
+ attr_accessor :tax_rates
521
+ # If an item with the `price` already exists, passing this will override the `trial` configuration on the subscription item that matches that price. Otherwise, the `items` array is cleared and a single new item is added with the supplied `trial`.
522
+ attr_accessor :trial
523
+ # The ID of the trial offer to apply to the configuration item.
524
+ attr_accessor :trial_offer
525
+
526
+ def initialize(
527
+ discounts: nil,
528
+ metadata: nil,
529
+ price: nil,
530
+ quantity: nil,
531
+ tax_rates: nil,
532
+ trial: nil,
533
+ trial_offer: nil
534
+ )
535
+ @discounts = discounts
536
+ @metadata = metadata
537
+ @price = price
538
+ @quantity = quantity
539
+ @tax_rates = tax_rates
540
+ @trial = trial
541
+ @trial_offer = trial_offer
542
+ end
543
+ end
544
+ # Details for the `add_discount` type.
545
+ attr_accessor :add_discount
546
+ # Details for the `add_item` type.
547
+ attr_accessor :add_item
548
+ # Details for the `add_metadata` type: specify a hash of key-value pairs.
549
+ attr_accessor :add_metadata
550
+ # Details for the `remove_discount` type.
551
+ attr_accessor :remove_discount
552
+ # Details for the `remove_item` type.
553
+ attr_accessor :remove_item
554
+ # Details for the `remove_metadata` type: specify an array of metadata keys.
555
+ attr_accessor :remove_metadata
556
+ # Details for the `set_discounts` type.
557
+ attr_accessor :set_discounts
558
+ # Details for the `set_items` type.
559
+ attr_accessor :set_items
560
+ # Details for the `set_metadata` type: specify an array of key-value pairs.
561
+ attr_accessor :set_metadata
562
+ # The type of action the quote line performs.
563
+ attr_accessor :type
564
+
565
+ def initialize(
566
+ add_discount: nil,
567
+ add_item: nil,
568
+ add_metadata: nil,
569
+ remove_discount: nil,
570
+ remove_item: nil,
571
+ remove_metadata: nil,
572
+ set_discounts: nil,
573
+ set_items: nil,
574
+ set_metadata: nil,
575
+ type: nil
576
+ )
577
+ @add_discount = add_discount
578
+ @add_item = add_item
579
+ @add_metadata = add_metadata
580
+ @remove_discount = remove_discount
581
+ @remove_item = remove_item
582
+ @remove_metadata = remove_metadata
583
+ @set_discounts = set_discounts
584
+ @set_items = set_items
585
+ @set_metadata = set_metadata
586
+ @type = type
587
+ end
588
+ end
589
+
590
+ class AppliesTo < ::Stripe::RequestParams
591
+ # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
592
+ attr_accessor :new_reference
593
+ # The ID of the schedule the line applies to.
594
+ attr_accessor :subscription_schedule
595
+ # Describes whether the quote line is affecting a new schedule or an existing schedule.
596
+ attr_accessor :type
597
+
598
+ def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
599
+ @new_reference = new_reference
600
+ @subscription_schedule = subscription_schedule
601
+ @type = type
602
+ end
603
+ end
604
+
605
+ class CancelSubscriptionSchedule < ::Stripe::RequestParams
606
+ # Timestamp helper to cancel the underlying schedule on the accompanying line's start date. Must be set to `line_starts_at`.
607
+ attr_accessor :cancel_at
608
+ # If the subscription schedule is `active`, indicates if a final invoice will be generated that contains any un-invoiced metered usage and new/pending proration invoice items. Boolean that defaults to `true`.
609
+ attr_accessor :invoice_now
610
+ # If the subscription schedule is `active`, indicates if the cancellation should be prorated. Boolean that defaults to `true`.
611
+ attr_accessor :prorate
612
+
613
+ def initialize(cancel_at: nil, invoice_now: nil, prorate: nil)
614
+ @cancel_at = cancel_at
615
+ @invoice_now = invoice_now
616
+ @prorate = prorate
617
+ end
618
+ end
619
+
620
+ class EndsAt < ::Stripe::RequestParams
621
+ class DiscountEnd < ::Stripe::RequestParams
622
+ # The ID of a specific discount.
623
+ attr_accessor :discount
624
+
625
+ def initialize(discount: nil)
626
+ @discount = discount
627
+ end
628
+ end
629
+
630
+ class Duration < ::Stripe::RequestParams
631
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
632
+ attr_accessor :interval
633
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
634
+ attr_accessor :interval_count
635
+
636
+ def initialize(interval: nil, interval_count: nil)
637
+ @interval = interval
638
+ @interval_count = interval_count
639
+ end
640
+ end
641
+ # Use the `end` time of a given discount.
642
+ attr_accessor :discount_end
643
+ # Time span for the quote line starting from the `starts_at` date.
644
+ attr_accessor :duration
645
+ # A precise Unix timestamp.
646
+ attr_accessor :timestamp
647
+ # Select a way to pass in `ends_at`.
648
+ attr_accessor :type
649
+
650
+ def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
651
+ @discount_end = discount_end
652
+ @duration = duration
653
+ @timestamp = timestamp
654
+ @type = type
655
+ end
656
+ end
657
+
658
+ class SetPauseCollection < ::Stripe::RequestParams
659
+ class Set < ::Stripe::RequestParams
660
+ # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
661
+ attr_accessor :behavior
662
+
663
+ def initialize(behavior: nil)
664
+ @behavior = behavior
665
+ end
666
+ end
667
+ # Details of the pause_collection behavior to apply to the amendment.
668
+ attr_accessor :set
669
+ # Determines the type of the pause_collection amendment.
670
+ attr_accessor :type
671
+
672
+ def initialize(set: nil, type: nil)
673
+ @set = set
674
+ @type = type
675
+ end
676
+ end
677
+
678
+ class StartsAt < ::Stripe::RequestParams
679
+ class DiscountEnd < ::Stripe::RequestParams
680
+ # The ID of a specific discount.
681
+ attr_accessor :discount
682
+
683
+ def initialize(discount: nil)
684
+ @discount = discount
685
+ end
686
+ end
687
+
688
+ class LineEndsAt < ::Stripe::RequestParams
689
+ # The ID of a quote line.
690
+ attr_accessor :id
691
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
692
+ attr_accessor :index
693
+
694
+ def initialize(id: nil, index: nil)
695
+ @id = id
696
+ @index = index
697
+ end
698
+ end
699
+ # Use the `end` time of a given discount.
700
+ attr_accessor :discount_end
701
+ # The timestamp the given line ends at.
702
+ attr_accessor :line_ends_at
703
+ # A precise Unix timestamp.
704
+ attr_accessor :timestamp
705
+ # Select a way to pass in `starts_at`.
706
+ attr_accessor :type
707
+
708
+ def initialize(discount_end: nil, line_ends_at: nil, timestamp: nil, type: nil)
709
+ @discount_end = discount_end
710
+ @line_ends_at = line_ends_at
711
+ @timestamp = timestamp
712
+ @type = type
713
+ end
714
+ end
715
+
716
+ class TrialSettings < ::Stripe::RequestParams
717
+ class EndBehavior < ::Stripe::RequestParams
718
+ # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
719
+ attr_accessor :prorate_up_front
720
+
721
+ def initialize(prorate_up_front: nil)
722
+ @prorate_up_front = prorate_up_front
723
+ end
724
+ end
725
+ # Defines how the subscription should behave when a trial ends.
726
+ attr_accessor :end_behavior
727
+
728
+ def initialize(end_behavior: nil)
729
+ @end_behavior = end_behavior
730
+ end
731
+ end
732
+ # An array of operations the quote line performs.
733
+ attr_accessor :actions
734
+ # Details to identify the subscription schedule the quote line applies to.
735
+ attr_accessor :applies_to
736
+ # For point-in-time quote lines (having no `ends_at` timestamp), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the Quote Line `starts_at` timestamp.For time-span based quote lines (having both `starts_at` and `ends_at`), the only valid value is `automatic`, which removes any previously configured billing cycle anchor resets during the window of time spanning the quote line.
737
+ attr_accessor :billing_cycle_anchor
738
+ # A point-in-time operation that cancels an existing subscription schedule at the line's starts_at timestamp. Currently only compatible with `quote_acceptance_date` for `starts_at`. When using cancel_subscription_schedule, the subscription schedule on the quote remains unalterable, except for modifications to the metadata, collection_method or invoice_settings.
739
+ attr_accessor :cancel_subscription_schedule
740
+ # Configures how the quote handles billing for line transitions.
741
+ attr_accessor :effective_at
742
+ # Details to identify the end of the time range modified by the proposed change. If not supplied, the quote line is considered a point-in-time operation that only affects the exact timestamp at `starts_at`, and a restricted set of attributes is supported on the quote line.
743
+ attr_accessor :ends_at
744
+ # The ID of an existing line on the quote.
745
+ attr_accessor :id
746
+ # Changes to how Stripe handles prorations during the quote line's time span. Affects if and how prorations are created when a future phase starts.
747
+ attr_accessor :proration_behavior
748
+ # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
749
+ attr_accessor :set_pause_collection
750
+ # Timestamp helper to end the underlying schedule early, based on the acompanying line's start or end date.
751
+ attr_accessor :set_schedule_end
752
+ # Details to identify the earliest timestamp where the proposed change should take effect.
753
+ attr_accessor :starts_at
754
+ # Settings related to subscription trials.
755
+ attr_accessor :trial_settings
756
+
757
+ def initialize(
758
+ actions: nil,
759
+ applies_to: nil,
760
+ billing_cycle_anchor: nil,
761
+ cancel_subscription_schedule: nil,
762
+ effective_at: nil,
763
+ ends_at: nil,
764
+ id: nil,
765
+ proration_behavior: nil,
766
+ set_pause_collection: nil,
767
+ set_schedule_end: nil,
768
+ starts_at: nil,
769
+ trial_settings: nil
770
+ )
771
+ @actions = actions
772
+ @applies_to = applies_to
773
+ @billing_cycle_anchor = billing_cycle_anchor
774
+ @cancel_subscription_schedule = cancel_subscription_schedule
775
+ @effective_at = effective_at
776
+ @ends_at = ends_at
777
+ @id = id
778
+ @proration_behavior = proration_behavior
779
+ @set_pause_collection = set_pause_collection
780
+ @set_schedule_end = set_schedule_end
781
+ @starts_at = starts_at
782
+ @trial_settings = trial_settings
783
+ end
784
+ end
785
+
67
786
  class LineItem < ::Stripe::RequestParams
68
787
  class Discount < ::Stripe::RequestParams
788
+ class DiscountEnd < ::Stripe::RequestParams
789
+ class Duration < ::Stripe::RequestParams
790
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
791
+ attr_accessor :interval
792
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
793
+ attr_accessor :interval_count
794
+
795
+ def initialize(interval: nil, interval_count: nil)
796
+ @interval = interval
797
+ @interval_count = interval_count
798
+ end
799
+ end
800
+ # Time span for the redeemed discount.
801
+ attr_accessor :duration
802
+ # A precise Unix timestamp for the discount to end. Must be in the future.
803
+ attr_accessor :timestamp
804
+ # The type of calculation made to determine when the discount ends.
805
+ attr_accessor :type
806
+
807
+ def initialize(duration: nil, timestamp: nil, type: nil)
808
+ @duration = duration
809
+ @timestamp = timestamp
810
+ @type = type
811
+ end
812
+ end
69
813
  # ID of the coupon to create a new discount for.
70
814
  attr_accessor :coupon
71
815
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
72
816
  attr_accessor :discount
817
+ # Details to determine how long the discount should be applied for.
818
+ attr_accessor :discount_end
73
819
  # ID of the promotion code to create a new discount for.
74
820
  attr_accessor :promotion_code
75
821
 
76
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
822
+ def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
77
823
  @coupon = coupon
78
824
  @discount = discount
825
+ @discount_end = discount_end
79
826
  @promotion_code = promotion_code
80
827
  end
81
828
  end
@@ -152,23 +899,485 @@ module Stripe
152
899
  end
153
900
 
154
901
  class SubscriptionData < ::Stripe::RequestParams
902
+ class BillOnAcceptance < ::Stripe::RequestParams
903
+ class BillFrom < ::Stripe::RequestParams
904
+ class LineStartsAt < ::Stripe::RequestParams
905
+ # The ID of a quote line.
906
+ attr_accessor :id
907
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
908
+ attr_accessor :index
909
+
910
+ def initialize(id: nil, index: nil)
911
+ @id = id
912
+ @index = index
913
+ end
914
+ end
915
+ # Details of a Quote line to start the bill period from.
916
+ attr_accessor :line_starts_at
917
+ # A precise Unix timestamp.
918
+ attr_accessor :timestamp
919
+ # The type of method to specify the `bill_from` time.
920
+ attr_accessor :type
921
+
922
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil)
923
+ @line_starts_at = line_starts_at
924
+ @timestamp = timestamp
925
+ @type = type
926
+ end
927
+ end
928
+
929
+ class BillUntil < ::Stripe::RequestParams
930
+ class Duration < ::Stripe::RequestParams
931
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
932
+ attr_accessor :interval
933
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
934
+ attr_accessor :interval_count
935
+
936
+ def initialize(interval: nil, interval_count: nil)
937
+ @interval = interval
938
+ @interval_count = interval_count
939
+ end
940
+ end
941
+
942
+ class LineEndsAt < ::Stripe::RequestParams
943
+ # The ID of a quote line.
944
+ attr_accessor :id
945
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
946
+ attr_accessor :index
947
+
948
+ def initialize(id: nil, index: nil)
949
+ @id = id
950
+ @index = index
951
+ end
952
+ end
953
+ # Details of the duration over which to bill.
954
+ attr_accessor :duration
955
+ # Details of a Quote line item from which to bill until.
956
+ attr_accessor :line_ends_at
957
+ # A precise Unix timestamp.
958
+ attr_accessor :timestamp
959
+ # The type of method to specify the `bill_until` time.
960
+ attr_accessor :type
961
+
962
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
963
+ @duration = duration
964
+ @line_ends_at = line_ends_at
965
+ @timestamp = timestamp
966
+ @type = type
967
+ end
968
+ end
969
+ # The start of the period to bill from when the Quote is accepted.
970
+ attr_accessor :bill_from
971
+ # The end of the period to bill until when the Quote is accepted.
972
+ attr_accessor :bill_until
973
+
974
+ def initialize(bill_from: nil, bill_until: nil)
975
+ @bill_from = bill_from
976
+ @bill_until = bill_until
977
+ end
978
+ end
979
+
980
+ class BillingSchedule < ::Stripe::RequestParams
981
+ class AppliesTo < ::Stripe::RequestParams
982
+ # The ID of the price object.
983
+ attr_accessor :price
984
+ # Controls which subscription items the billing schedule applies to.
985
+ attr_accessor :type
986
+
987
+ def initialize(price: nil, type: nil)
988
+ @price = price
989
+ @type = type
990
+ end
991
+ end
992
+
993
+ class BillFrom < ::Stripe::RequestParams
994
+ class LineStartsAt < ::Stripe::RequestParams
995
+ # The ID of a quote line.
996
+ attr_accessor :id
997
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
998
+ attr_accessor :index
999
+
1000
+ def initialize(id: nil, index: nil)
1001
+ @id = id
1002
+ @index = index
1003
+ end
1004
+ end
1005
+ # Details of a Quote line to start the bill period from.
1006
+ attr_accessor :line_starts_at
1007
+ # A precise Unix timestamp.
1008
+ attr_accessor :timestamp
1009
+ # The type of method to specify the `bill_from` time.
1010
+ attr_accessor :type
1011
+
1012
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil)
1013
+ @line_starts_at = line_starts_at
1014
+ @timestamp = timestamp
1015
+ @type = type
1016
+ end
1017
+ end
1018
+
1019
+ class BillUntil < ::Stripe::RequestParams
1020
+ class Duration < ::Stripe::RequestParams
1021
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1022
+ attr_accessor :interval
1023
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1024
+ attr_accessor :interval_count
1025
+
1026
+ def initialize(interval: nil, interval_count: nil)
1027
+ @interval = interval
1028
+ @interval_count = interval_count
1029
+ end
1030
+ end
1031
+
1032
+ class LineEndsAt < ::Stripe::RequestParams
1033
+ # The ID of a quote line.
1034
+ attr_accessor :id
1035
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1036
+ attr_accessor :index
1037
+
1038
+ def initialize(id: nil, index: nil)
1039
+ @id = id
1040
+ @index = index
1041
+ end
1042
+ end
1043
+ # Details of the duration over which to bill.
1044
+ attr_accessor :duration
1045
+ # Details of a Quote line item from which to bill until.
1046
+ attr_accessor :line_ends_at
1047
+ # A precise Unix timestamp.
1048
+ attr_accessor :timestamp
1049
+ # The type of method to specify the `bill_until` time.
1050
+ attr_accessor :type
1051
+
1052
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
1053
+ @duration = duration
1054
+ @line_ends_at = line_ends_at
1055
+ @timestamp = timestamp
1056
+ @type = type
1057
+ end
1058
+ end
1059
+ # Configure billing schedule differently for individual subscription items.
1060
+ attr_accessor :applies_to
1061
+ # The start of the period to bill from when the Quote is accepted.
1062
+ attr_accessor :bill_from
1063
+ # The end of the period to bill until when the Quote is accepted.
1064
+ attr_accessor :bill_until
1065
+ # 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.
1066
+ attr_accessor :key
1067
+
1068
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil)
1069
+ @applies_to = applies_to
1070
+ @bill_from = bill_from
1071
+ @bill_until = bill_until
1072
+ @key = key
1073
+ end
1074
+ end
1075
+
1076
+ class Prebilling < ::Stripe::RequestParams
1077
+ # This is used to determine the number of billing cycles to prebill.
1078
+ attr_accessor :iterations
1079
+
1080
+ def initialize(iterations: nil)
1081
+ @iterations = iterations
1082
+ end
1083
+ end
1084
+ # Describes the period to bill for upon accepting the quote.
1085
+ attr_accessor :bill_on_acceptance
1086
+ # Configures when the subscription schedule generates prorations for phase transitions. Possible values are `prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.
1087
+ attr_accessor :billing_behavior
1088
+ # When specified as `reset`, the subscription will always start a new billing period when the quote is accepted.
1089
+ attr_accessor :billing_cycle_anchor
1090
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
1091
+ attr_accessor :billing_schedules
155
1092
  # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
156
1093
  attr_accessor :description
157
- # When creating a new subscription, the date of which the subscription schedule will start after the quote is accepted. The `effective_date` is ignored if it is in the past when the quote is accepted.
1094
+ # When creating a new subscription, the date of which the subscription schedule will start after the quote is accepted. When updating a subscription, the date of which the subscription will be updated using a subscription schedule. The special value `current_period_end` can be provided to update a subscription at the end of its current period. The `effective_date` is ignored if it is in the past when the quote is accepted.
158
1095
  attr_accessor :effective_date
1096
+ # Behavior of the subscription schedule and underlying subscription when it ends.
1097
+ attr_accessor :end_behavior
159
1098
  # Set of [key-value pairs](https://docs.stripe.com/api/metadata) that will set metadata on the subscription or subscription schedule when the quote is accepted. If a recurring price is included in `line_items`, this field will be passed to the resulting subscription's `metadata` field. If `subscription_data.effective_date` is used, this field will be passed to the resulting subscription schedule's `phases.metadata` field. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
160
1099
  attr_accessor :metadata
1100
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted.
1101
+ attr_accessor :phase_effective_at
1102
+ # If specified, the invoicing for the given billing cycle iterations will be processed when the quote is accepted. Cannot be used with `effective_date`.
1103
+ attr_accessor :prebilling
1104
+ # Determines how to handle [prorations](https://docs.stripe.com/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
1105
+ #
1106
+ # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
1107
+ #
1108
+ # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://docs.stripe.com/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
1109
+ #
1110
+ # Prorations can be disabled by passing `none`.
1111
+ attr_accessor :proration_behavior
161
1112
  # Integer representing the number of trial period days before the customer is charged for the first time.
162
1113
  attr_accessor :trial_period_days
163
1114
 
164
- def initialize(description: nil, effective_date: nil, metadata: nil, trial_period_days: nil)
1115
+ def initialize(
1116
+ bill_on_acceptance: nil,
1117
+ billing_behavior: nil,
1118
+ billing_cycle_anchor: nil,
1119
+ billing_schedules: nil,
1120
+ description: nil,
1121
+ effective_date: nil,
1122
+ end_behavior: nil,
1123
+ metadata: nil,
1124
+ phase_effective_at: nil,
1125
+ prebilling: nil,
1126
+ proration_behavior: nil,
1127
+ trial_period_days: nil
1128
+ )
1129
+ @bill_on_acceptance = bill_on_acceptance
1130
+ @billing_behavior = billing_behavior
1131
+ @billing_cycle_anchor = billing_cycle_anchor
1132
+ @billing_schedules = billing_schedules
165
1133
  @description = description
166
1134
  @effective_date = effective_date
1135
+ @end_behavior = end_behavior
167
1136
  @metadata = metadata
1137
+ @phase_effective_at = phase_effective_at
1138
+ @prebilling = prebilling
1139
+ @proration_behavior = proration_behavior
168
1140
  @trial_period_days = trial_period_days
169
1141
  end
170
1142
  end
171
1143
 
1144
+ class SubscriptionDataOverride < ::Stripe::RequestParams
1145
+ class AppliesTo < ::Stripe::RequestParams
1146
+ # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
1147
+ attr_accessor :new_reference
1148
+ # The ID of the schedule the line applies to.
1149
+ attr_accessor :subscription_schedule
1150
+ # Describes whether the quote line is affecting a new schedule or an existing schedule.
1151
+ attr_accessor :type
1152
+
1153
+ def initialize(new_reference: nil, subscription_schedule: nil, type: nil)
1154
+ @new_reference = new_reference
1155
+ @subscription_schedule = subscription_schedule
1156
+ @type = type
1157
+ end
1158
+ end
1159
+
1160
+ class BillOnAcceptance < ::Stripe::RequestParams
1161
+ class BillFrom < ::Stripe::RequestParams
1162
+ class LineStartsAt < ::Stripe::RequestParams
1163
+ # The ID of a quote line.
1164
+ attr_accessor :id
1165
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1166
+ attr_accessor :index
1167
+
1168
+ def initialize(id: nil, index: nil)
1169
+ @id = id
1170
+ @index = index
1171
+ end
1172
+ end
1173
+ # Details of a Quote line to start the bill period from.
1174
+ attr_accessor :line_starts_at
1175
+ # A precise Unix timestamp.
1176
+ attr_accessor :timestamp
1177
+ # The type of method to specify the `bill_from` time.
1178
+ attr_accessor :type
1179
+
1180
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil)
1181
+ @line_starts_at = line_starts_at
1182
+ @timestamp = timestamp
1183
+ @type = type
1184
+ end
1185
+ end
1186
+
1187
+ class BillUntil < ::Stripe::RequestParams
1188
+ class Duration < ::Stripe::RequestParams
1189
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1190
+ attr_accessor :interval
1191
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1192
+ attr_accessor :interval_count
1193
+
1194
+ def initialize(interval: nil, interval_count: nil)
1195
+ @interval = interval
1196
+ @interval_count = interval_count
1197
+ end
1198
+ end
1199
+
1200
+ class LineEndsAt < ::Stripe::RequestParams
1201
+ # The ID of a quote line.
1202
+ attr_accessor :id
1203
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1204
+ attr_accessor :index
1205
+
1206
+ def initialize(id: nil, index: nil)
1207
+ @id = id
1208
+ @index = index
1209
+ end
1210
+ end
1211
+ # Details of the duration over which to bill.
1212
+ attr_accessor :duration
1213
+ # Details of a Quote line item from which to bill until.
1214
+ attr_accessor :line_ends_at
1215
+ # A precise Unix timestamp.
1216
+ attr_accessor :timestamp
1217
+ # The type of method to specify the `bill_until` time.
1218
+ attr_accessor :type
1219
+
1220
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
1221
+ @duration = duration
1222
+ @line_ends_at = line_ends_at
1223
+ @timestamp = timestamp
1224
+ @type = type
1225
+ end
1226
+ end
1227
+ # The start of the period to bill from when the Quote is accepted.
1228
+ attr_accessor :bill_from
1229
+ # The end of the period to bill until when the Quote is accepted.
1230
+ attr_accessor :bill_until
1231
+
1232
+ def initialize(bill_from: nil, bill_until: nil)
1233
+ @bill_from = bill_from
1234
+ @bill_until = bill_until
1235
+ end
1236
+ end
1237
+
1238
+ class BillingSchedule < ::Stripe::RequestParams
1239
+ class AppliesTo < ::Stripe::RequestParams
1240
+ # The ID of the price object.
1241
+ attr_accessor :price
1242
+ # Controls which subscription items the billing schedule applies to.
1243
+ attr_accessor :type
1244
+
1245
+ def initialize(price: nil, type: nil)
1246
+ @price = price
1247
+ @type = type
1248
+ end
1249
+ end
1250
+
1251
+ class BillFrom < ::Stripe::RequestParams
1252
+ class LineStartsAt < ::Stripe::RequestParams
1253
+ # The ID of a quote line.
1254
+ attr_accessor :id
1255
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1256
+ attr_accessor :index
1257
+
1258
+ def initialize(id: nil, index: nil)
1259
+ @id = id
1260
+ @index = index
1261
+ end
1262
+ end
1263
+ # Details of a Quote line to start the bill period from.
1264
+ attr_accessor :line_starts_at
1265
+ # A precise Unix timestamp.
1266
+ attr_accessor :timestamp
1267
+ # The type of method to specify the `bill_from` time.
1268
+ attr_accessor :type
1269
+
1270
+ def initialize(line_starts_at: nil, timestamp: nil, type: nil)
1271
+ @line_starts_at = line_starts_at
1272
+ @timestamp = timestamp
1273
+ @type = type
1274
+ end
1275
+ end
1276
+
1277
+ class BillUntil < ::Stripe::RequestParams
1278
+ class Duration < ::Stripe::RequestParams
1279
+ # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1280
+ attr_accessor :interval
1281
+ # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1282
+ attr_accessor :interval_count
1283
+
1284
+ def initialize(interval: nil, interval_count: nil)
1285
+ @interval = interval
1286
+ @interval_count = interval_count
1287
+ end
1288
+ end
1289
+
1290
+ class LineEndsAt < ::Stripe::RequestParams
1291
+ # The ID of a quote line.
1292
+ attr_accessor :id
1293
+ # The position of the previous quote line in the `lines` array after which this line should begin. Indexes start from 0 and must be less than the index of the current line in the array.
1294
+ attr_accessor :index
1295
+
1296
+ def initialize(id: nil, index: nil)
1297
+ @id = id
1298
+ @index = index
1299
+ end
1300
+ end
1301
+ # Details of the duration over which to bill.
1302
+ attr_accessor :duration
1303
+ # Details of a Quote line item from which to bill until.
1304
+ attr_accessor :line_ends_at
1305
+ # A precise Unix timestamp.
1306
+ attr_accessor :timestamp
1307
+ # The type of method to specify the `bill_until` time.
1308
+ attr_accessor :type
1309
+
1310
+ def initialize(duration: nil, line_ends_at: nil, timestamp: nil, type: nil)
1311
+ @duration = duration
1312
+ @line_ends_at = line_ends_at
1313
+ @timestamp = timestamp
1314
+ @type = type
1315
+ end
1316
+ end
1317
+ # Configure billing schedule differently for individual subscription items.
1318
+ attr_accessor :applies_to
1319
+ # The start of the period to bill from when the Quote is accepted.
1320
+ attr_accessor :bill_from
1321
+ # The end of the period to bill until when the Quote is accepted.
1322
+ attr_accessor :bill_until
1323
+ # 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.
1324
+ attr_accessor :key
1325
+
1326
+ def initialize(applies_to: nil, bill_from: nil, bill_until: nil, key: nil)
1327
+ @applies_to = applies_to
1328
+ @bill_from = bill_from
1329
+ @bill_until = bill_until
1330
+ @key = key
1331
+ end
1332
+ end
1333
+ # Whether the override applies to an existing Subscription Schedule or a new Subscription Schedule.
1334
+ attr_accessor :applies_to
1335
+ # Describes the period to bill for upon accepting the quote.
1336
+ attr_accessor :bill_on_acceptance
1337
+ # Configures when the subscription schedule generates prorations for phase transitions. Possible values are `prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.
1338
+ attr_accessor :billing_behavior
1339
+ # Billing schedules that will be applied to the subscription or subscription schedule created when the quote is accepted.
1340
+ attr_accessor :billing_schedules
1341
+ # The customer the Subscription Data override applies to.
1342
+ attr_accessor :customer
1343
+ # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
1344
+ attr_accessor :description
1345
+ # Behavior of the subscription schedule and underlying subscription when it ends.
1346
+ attr_accessor :end_behavior
1347
+ # Configures how the subscription schedule handles billing for phase transitions when the quote is accepted.
1348
+ attr_accessor :phase_effective_at
1349
+ # Determines how to handle [prorations](https://docs.stripe.com/subscriptions/billing-cycle#prorations). When creating a subscription, valid values are `create_prorations` or `none`.
1350
+ #
1351
+ # When updating a subscription, valid values are `create_prorations`, `none`, or `always_invoice`.
1352
+ #
1353
+ # Passing `create_prorations` will cause proration invoice items to be created when applicable. These proration items will only be invoiced immediately under [certain conditions](https://docs.stripe.com/subscriptions/upgrading-downgrading#immediate-payment). In order to always invoice immediately for prorations, pass `always_invoice`.
1354
+ #
1355
+ # Prorations can be disabled by passing `none`.
1356
+ attr_accessor :proration_behavior
1357
+
1358
+ def initialize(
1359
+ applies_to: nil,
1360
+ bill_on_acceptance: nil,
1361
+ billing_behavior: nil,
1362
+ billing_schedules: nil,
1363
+ customer: nil,
1364
+ description: nil,
1365
+ end_behavior: nil,
1366
+ phase_effective_at: nil,
1367
+ proration_behavior: nil
1368
+ )
1369
+ @applies_to = applies_to
1370
+ @bill_on_acceptance = bill_on_acceptance
1371
+ @billing_behavior = billing_behavior
1372
+ @billing_schedules = billing_schedules
1373
+ @customer = customer
1374
+ @description = description
1375
+ @end_behavior = end_behavior
1376
+ @phase_effective_at = phase_effective_at
1377
+ @proration_behavior = proration_behavior
1378
+ end
1379
+ end
1380
+
172
1381
  class TransferData < ::Stripe::RequestParams
173
1382
  # The amount that will be transferred automatically when the invoice is paid. If no amount is set, the full amount is transferred. There cannot be any line items with recurring prices when using this field.
174
1383
  attr_accessor :amount
@@ -183,6 +1392,8 @@ module Stripe
183
1392
  @destination = destination
184
1393
  end
185
1394
  end
1395
+ # Set to true to allow quote lines to have `starts_at` in the past if collection is paused between `starts_at` and now.
1396
+ attr_accessor :allow_backdated_lines
186
1397
  # The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account. There cannot be any line items with recurring prices when using this field.
187
1398
  attr_accessor :application_fee_amount
188
1399
  # 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 application owner's Stripe account. There must be at least 1 line item with a recurring price to use this field.
@@ -213,16 +1424,21 @@ module Stripe
213
1424
  attr_accessor :invoice_settings
214
1425
  # A list of line items the customer is being quoted for. Each line item includes information about the product, the quantity, and the resulting cost.
215
1426
  attr_accessor :line_items
1427
+ # A list of [quote lines](https://docs.stripe.com/api/quote_lines) on the quote. These lines describe changes, in the order provided, that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
1428
+ attr_accessor :lines
216
1429
  # Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
217
1430
  attr_accessor :metadata
218
1431
  # The account on behalf of which to charge.
219
1432
  attr_accessor :on_behalf_of
220
1433
  # When creating a subscription or subscription schedule, the specified configuration data will be used. There must be at least one line item with a recurring price for a subscription or subscription schedule to be created. A subscription schedule is created if `subscription_data[effective_date]` is present and in the future, otherwise a subscription is created.
221
1434
  attr_accessor :subscription_data
1435
+ # List representing overrides for `subscription_data` configurations for specific subscription schedules.
1436
+ attr_accessor :subscription_data_overrides
222
1437
  # The data with which to automatically create a Transfer for each of the invoices.
223
1438
  attr_accessor :transfer_data
224
1439
 
225
1440
  def initialize(
1441
+ allow_backdated_lines: nil,
226
1442
  application_fee_amount: nil,
227
1443
  application_fee_percent: nil,
228
1444
  automatic_tax: nil,
@@ -238,11 +1454,14 @@ module Stripe
238
1454
  header: nil,
239
1455
  invoice_settings: nil,
240
1456
  line_items: nil,
1457
+ lines: nil,
241
1458
  metadata: nil,
242
1459
  on_behalf_of: nil,
243
1460
  subscription_data: nil,
1461
+ subscription_data_overrides: nil,
244
1462
  transfer_data: nil
245
1463
  )
1464
+ @allow_backdated_lines = allow_backdated_lines
246
1465
  @application_fee_amount = application_fee_amount
247
1466
  @application_fee_percent = application_fee_percent
248
1467
  @automatic_tax = automatic_tax
@@ -258,9 +1477,11 @@ module Stripe
258
1477
  @header = header
259
1478
  @invoice_settings = invoice_settings
260
1479
  @line_items = line_items
1480
+ @lines = lines
261
1481
  @metadata = metadata
262
1482
  @on_behalf_of = on_behalf_of
263
1483
  @subscription_data = subscription_data
1484
+ @subscription_data_overrides = subscription_data_overrides
264
1485
  @transfer_data = transfer_data
265
1486
  end
266
1487
  end