stripe 15.6.0.pre.beta.1 → 16.0.0

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 (1097) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/api_requestor.rb +5 -34
  3. data/lib/stripe/api_resource.rb +3 -0
  4. data/lib/stripe/api_version.rb +2 -1
  5. data/lib/stripe/errors.rb +0 -60
  6. data/lib/stripe/event_types.rb +20 -108
  7. data/lib/stripe/events/unknown_event_notification.rb +19 -0
  8. data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +115 -15
  9. data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +93 -6
  10. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +35 -12
  11. data/lib/stripe/object_types.rb +2 -54
  12. data/lib/stripe/params/account_capability_list_params.rb +13 -0
  13. data/lib/stripe/params/account_capability_retrieve_params.rb +13 -0
  14. data/lib/stripe/params/account_capability_update_params.rb +18 -0
  15. data/lib/stripe/params/account_create_params.rb +2083 -0
  16. data/lib/stripe/params/account_delete_params.rb +6 -0
  17. data/lib/stripe/params/account_external_account_create_params.rb +134 -0
  18. data/lib/stripe/params/account_external_account_delete_params.rb +6 -0
  19. data/lib/stripe/params/account_external_account_list_params.rb +25 -0
  20. data/lib/stripe/params/account_external_account_retrieve_params.rb +13 -0
  21. data/lib/stripe/params/account_external_account_update_params.rb +91 -0
  22. data/lib/stripe/params/account_link_create_params.rb +52 -0
  23. data/lib/stripe/params/account_list_params.rb +42 -0
  24. data/lib/stripe/params/account_login_link_create_params.rb +13 -0
  25. data/lib/stripe/params/account_person_create_params.rb +435 -0
  26. data/lib/stripe/params/account_person_delete_params.rb +6 -0
  27. data/lib/stripe/params/account_person_list_params.rb +61 -0
  28. data/lib/stripe/params/account_person_retrieve_params.rb +13 -0
  29. data/lib/stripe/params/account_person_update_params.rb +435 -0
  30. data/lib/stripe/params/account_persons_params.rb +61 -0
  31. data/lib/stripe/params/account_reject_params.rb +16 -0
  32. data/lib/stripe/params/account_retrieve_current_params.rb +13 -0
  33. data/lib/stripe/params/account_retrieve_params.rb +13 -0
  34. data/lib/stripe/params/account_session_create_params.rb +598 -0
  35. data/lib/stripe/params/account_update_params.rb +2030 -0
  36. data/lib/stripe/params/apple_pay_domain_create_params.rb +16 -0
  37. data/lib/stripe/params/apple_pay_domain_delete_params.rb +6 -0
  38. data/lib/stripe/params/apple_pay_domain_list_params.rb +31 -0
  39. data/lib/stripe/params/apple_pay_domain_retrieve_params.rb +13 -0
  40. data/lib/stripe/params/application_fee_list_params.rb +52 -0
  41. data/lib/stripe/params/application_fee_refund_create_params.rb +19 -0
  42. data/lib/stripe/params/application_fee_refund_list_params.rb +22 -0
  43. data/lib/stripe/params/application_fee_refund_retrieve_params.rb +13 -0
  44. data/lib/stripe/params/application_fee_refund_update_params.rb +16 -0
  45. data/lib/stripe/params/application_fee_retrieve_params.rb +13 -0
  46. data/lib/stripe/params/apps/secret_create_params.rb +38 -0
  47. data/lib/stripe/params/apps/secret_delete_where_params.rb +32 -0
  48. data/lib/stripe/params/apps/secret_find_params.rb +32 -0
  49. data/lib/stripe/{services/quote_line_service.rb → params/apps/secret_list_params.rb} +17 -14
  50. data/lib/stripe/params/balance_retrieve_params.rb +13 -0
  51. data/lib/stripe/params/balance_settings_retrieve_params.rb +13 -0
  52. data/lib/stripe/params/balance_settings_update_params.rb +67 -0
  53. data/lib/stripe/params/balance_transaction_list_params.rb +64 -0
  54. data/lib/stripe/params/balance_transaction_retrieve_params.rb +13 -0
  55. data/lib/stripe/params/billing/alert_activate_params.rb +15 -0
  56. data/lib/stripe/params/billing/alert_archive_params.rb +15 -0
  57. data/lib/stripe/params/billing/alert_create_params.rb +52 -0
  58. data/lib/stripe/params/billing/alert_deactivate_params.rb +15 -0
  59. data/lib/stripe/params/billing/alert_list_params.rb +37 -0
  60. data/lib/stripe/params/billing/alert_retrieve_params.rb +15 -0
  61. data/lib/stripe/params/billing/credit_balance_summary_retrieve_params.rb +54 -0
  62. data/lib/stripe/params/billing/credit_balance_transaction_list_params.rb +37 -0
  63. data/lib/stripe/params/billing/credit_balance_transaction_retrieve_params.rb +15 -0
  64. data/lib/stripe/params/billing/credit_grant_create_params.rb +103 -0
  65. data/lib/stripe/params/billing/credit_grant_expire_params.rb +15 -0
  66. data/lib/stripe/params/billing/credit_grant_list_params.rb +33 -0
  67. data/lib/stripe/params/billing/credit_grant_retrieve_params.rb +15 -0
  68. data/lib/stripe/params/billing/credit_grant_update_params.rb +21 -0
  69. data/lib/stripe/params/billing/credit_grant_void_grant_params.rb +15 -0
  70. data/lib/stripe/params/billing/meter_create_params.rb +70 -0
  71. data/lib/stripe/params/billing/meter_deactivate_params.rb +15 -0
  72. data/lib/stripe/params/billing/meter_event_adjustment_create_params.rb +32 -0
  73. data/lib/stripe/params/billing/meter_event_create_params.rb +27 -0
  74. data/lib/stripe/params/billing/meter_event_summary_list_params.rb +45 -0
  75. data/lib/stripe/params/billing/meter_list_params.rb +27 -0
  76. data/lib/stripe/params/billing/meter_reactivate_params.rb +15 -0
  77. data/lib/stripe/params/billing/meter_retrieve_params.rb +15 -0
  78. data/lib/stripe/params/billing/meter_update_params.rb +18 -0
  79. data/lib/stripe/params/billing_portal/configuration_create_params.rb +225 -0
  80. data/lib/stripe/params/billing_portal/configuration_list_params.rb +37 -0
  81. data/lib/stripe/params/billing_portal/configuration_retrieve_params.rb +15 -0
  82. data/lib/stripe/params/billing_portal/configuration_update_params.rb +231 -0
  83. data/lib/stripe/params/billing_portal/session_create_params.rb +179 -0
  84. data/lib/stripe/params/charge_capture_params.rb +57 -0
  85. data/lib/stripe/params/charge_create_params.rb +172 -0
  86. data/lib/stripe/params/charge_list_params.rb +60 -0
  87. data/lib/stripe/params/charge_retrieve_params.rb +13 -0
  88. data/lib/stripe/params/charge_search_params.rb +22 -0
  89. data/lib/stripe/params/charge_update_params.rb +102 -0
  90. data/lib/stripe/params/checkout/session_create_params.rb +2445 -0
  91. data/lib/stripe/params/checkout/session_expire_params.rb +15 -0
  92. data/lib/stripe/{services/quote_preview_subscription_schedule_service.rb → params/checkout/session_line_item_list_params.rb} +2 -13
  93. data/lib/stripe/{services/order_line_item_service.rb → params/checkout/session_list_line_items_params.rb} +2 -13
  94. data/lib/stripe/params/checkout/session_list_params.rb +83 -0
  95. data/lib/stripe/params/checkout/session_retrieve_params.rb +15 -0
  96. data/lib/stripe/params/checkout/session_update_params.rb +179 -0
  97. data/lib/stripe/params/climate/order_cancel_params.rb +15 -0
  98. data/lib/stripe/params/climate/order_create_params.rb +49 -0
  99. data/lib/stripe/params/climate/order_list_params.rb +24 -0
  100. data/lib/stripe/params/climate/order_retrieve_params.rb +15 -0
  101. data/lib/stripe/params/climate/order_update_params.rb +29 -0
  102. data/lib/stripe/params/climate/product_list_params.rb +24 -0
  103. data/lib/stripe/params/climate/product_retrieve_params.rb +15 -0
  104. data/lib/stripe/params/climate/supplier_list_params.rb +24 -0
  105. data/lib/stripe/params/climate/supplier_retrieve_params.rb +15 -0
  106. data/lib/stripe/params/confirmation_token_create_params.rb +650 -0
  107. data/lib/stripe/params/confirmation_token_retrieve_params.rb +13 -0
  108. data/lib/stripe/params/country_spec_list_params.rb +22 -0
  109. data/lib/stripe/params/country_spec_retrieve_params.rb +13 -0
  110. data/lib/stripe/params/coupon_create_params.rb +80 -0
  111. data/lib/stripe/params/coupon_delete_params.rb +6 -0
  112. data/lib/stripe/params/coupon_list_params.rb +42 -0
  113. data/lib/stripe/params/coupon_retrieve_params.rb +13 -0
  114. data/lib/stripe/params/coupon_update_params.rb +30 -0
  115. data/lib/stripe/params/credit_note_create_params.rb +144 -0
  116. data/lib/stripe/params/credit_note_line_item_list_params.rb +22 -0
  117. data/lib/stripe/params/credit_note_list_params.rb +56 -0
  118. data/lib/stripe/params/credit_note_list_preview_line_items_params.rb +156 -0
  119. data/lib/stripe/params/credit_note_preview_lines_list_params.rb +156 -0
  120. data/lib/stripe/params/credit_note_preview_params.rb +144 -0
  121. data/lib/stripe/params/credit_note_retrieve_params.rb +13 -0
  122. data/lib/stripe/params/credit_note_update_params.rb +19 -0
  123. data/lib/stripe/params/credit_note_void_credit_note_params.rb +13 -0
  124. data/lib/stripe/params/customer_balance_transaction_create_params.rb +25 -0
  125. data/lib/stripe/params/customer_balance_transaction_list_params.rb +22 -0
  126. data/lib/stripe/params/customer_balance_transaction_retrieve_params.rb +13 -0
  127. data/lib/stripe/params/customer_balance_transaction_update_params.rb +19 -0
  128. data/lib/stripe/params/customer_cash_balance_retrieve_params.rb +13 -0
  129. data/lib/stripe/params/customer_cash_balance_transaction_list_params.rb +22 -0
  130. data/lib/stripe/params/customer_cash_balance_transaction_retrieve_params.rb +13 -0
  131. data/lib/stripe/params/customer_cash_balance_update_params.rb +24 -0
  132. data/lib/stripe/params/customer_create_funding_instructions_params.rb +46 -0
  133. data/lib/stripe/params/customer_create_params.rb +259 -0
  134. data/lib/stripe/params/customer_delete_discount_params.rb +6 -0
  135. data/lib/stripe/params/customer_delete_params.rb +6 -0
  136. data/lib/stripe/params/customer_fund_cash_balance_params.rb +22 -0
  137. data/lib/stripe/params/customer_funding_instructions_create_params.rb +46 -0
  138. data/lib/stripe/params/customer_list_params.rb +56 -0
  139. data/lib/stripe/params/customer_list_payment_methods_params.rb +35 -0
  140. data/lib/stripe/params/customer_payment_method_list_params.rb +35 -0
  141. data/lib/stripe/params/customer_payment_method_retrieve_params.rb +13 -0
  142. data/lib/stripe/params/customer_payment_source_create_params.rb +22 -0
  143. data/lib/stripe/params/customer_payment_source_delete_params.rb +13 -0
  144. data/lib/stripe/params/customer_payment_source_list_params.rb +25 -0
  145. data/lib/stripe/params/customer_payment_source_retrieve_params.rb +13 -0
  146. data/lib/stripe/params/customer_payment_source_update_params.rb +114 -0
  147. data/lib/stripe/params/customer_payment_source_verify_params.rb +16 -0
  148. data/lib/stripe/params/customer_retrieve_params.rb +13 -0
  149. data/lib/stripe/params/customer_retrieve_payment_method_params.rb +13 -0
  150. data/lib/stripe/params/customer_search_params.rb +22 -0
  151. data/lib/stripe/params/customer_session_create_params.rb +100 -0
  152. data/lib/stripe/params/customer_tax_id_create_params.rb +19 -0
  153. data/lib/stripe/params/customer_tax_id_delete_params.rb +6 -0
  154. data/lib/stripe/params/customer_tax_id_list_params.rb +22 -0
  155. data/lib/stripe/params/customer_tax_id_retrieve_params.rb +13 -0
  156. data/lib/stripe/params/customer_update_params.rb +243 -0
  157. data/lib/stripe/params/dispute_close_params.rb +13 -0
  158. data/lib/stripe/params/dispute_list_params.rb +56 -0
  159. data/lib/stripe/params/dispute_retrieve_params.rb +13 -0
  160. data/lib/stripe/params/dispute_update_params.rb +308 -0
  161. data/lib/stripe/params/entitlements/active_entitlement_list_params.rb +33 -0
  162. data/lib/stripe/params/entitlements/active_entitlement_retrieve_params.rb +15 -0
  163. data/lib/stripe/params/entitlements/feature_create_params.rb +24 -0
  164. data/lib/stripe/params/entitlements/feature_list_params.rb +37 -0
  165. data/lib/stripe/params/entitlements/feature_retrieve_params.rb +15 -0
  166. data/lib/stripe/params/entitlements/feature_update_params.rb +24 -0
  167. data/lib/stripe/params/ephemeral_key_create_params.rb +31 -0
  168. data/lib/stripe/params/ephemeral_key_delete_params.rb +13 -0
  169. data/lib/stripe/params/event_list_params.rb +60 -0
  170. data/lib/stripe/params/event_retrieve_params.rb +13 -0
  171. data/lib/stripe/params/exchange_rate_list_params.rb +22 -0
  172. data/lib/stripe/params/exchange_rate_retrieve_params.rb +13 -0
  173. data/lib/stripe/params/file_create_params.rb +36 -0
  174. data/lib/stripe/params/file_link_create_params.rb +22 -0
  175. data/lib/stripe/params/file_link_list_params.rb +56 -0
  176. data/lib/stripe/params/file_link_retrieve_params.rb +13 -0
  177. data/lib/stripe/params/file_link_update_params.rb +19 -0
  178. data/lib/stripe/params/file_list_params.rb +52 -0
  179. data/lib/stripe/params/file_retrieve_params.rb +13 -0
  180. data/lib/stripe/params/financial_connections/account_disconnect_params.rb +15 -0
  181. data/lib/stripe/params/financial_connections/account_list_owners_params.rb +33 -0
  182. data/lib/stripe/params/financial_connections/account_list_params.rb +48 -0
  183. data/lib/stripe/params/financial_connections/account_owner_list_params.rb +33 -0
  184. data/lib/stripe/params/financial_connections/account_refresh_account_params.rb +18 -0
  185. data/lib/stripe/params/financial_connections/account_refresh_params.rb +18 -0
  186. data/lib/stripe/params/financial_connections/account_retrieve_params.rb +15 -0
  187. data/lib/stripe/params/financial_connections/account_subscribe_params.rb +18 -0
  188. data/lib/stripe/params/financial_connections/account_unsubscribe_params.rb +18 -0
  189. data/lib/stripe/params/financial_connections/session_create_params.rb +65 -0
  190. data/lib/stripe/params/financial_connections/session_retrieve_params.rb +15 -0
  191. data/lib/stripe/params/financial_connections/transaction_list_params.rb +67 -0
  192. data/lib/stripe/params/financial_connections/transaction_retrieve_params.rb +15 -0
  193. data/lib/stripe/params/forwarding/request_create_params.rb +59 -0
  194. data/lib/stripe/params/forwarding/request_list_params.rb +44 -0
  195. data/lib/stripe/params/forwarding/request_retrieve_params.rb +15 -0
  196. data/lib/stripe/params/identity/verification_report_list_params.rb +62 -0
  197. data/lib/stripe/params/identity/verification_report_retrieve_params.rb +15 -0
  198. data/lib/stripe/params/identity/verification_session_cancel_params.rb +15 -0
  199. data/lib/stripe/params/identity/verification_session_create_params.rb +107 -0
  200. data/lib/stripe/params/identity/verification_session_list_params.rb +62 -0
  201. data/lib/stripe/params/identity/verification_session_redact_params.rb +15 -0
  202. data/lib/stripe/params/identity/verification_session_retrieve_params.rb +15 -0
  203. data/lib/stripe/params/identity/verification_session_update_params.rb +69 -0
  204. data/lib/stripe/params/invoice_add_lines_params.rb +231 -0
  205. data/lib/stripe/params/invoice_attach_payment_params.rb +16 -0
  206. data/lib/stripe/params/invoice_create_params.rb +589 -0
  207. data/lib/stripe/params/invoice_create_preview_params.rb +993 -0
  208. data/lib/stripe/params/invoice_delete_params.rb +6 -0
  209. data/lib/stripe/params/invoice_finalize_invoice_params.rb +16 -0
  210. data/lib/stripe/params/invoice_item_create_params.rb +145 -0
  211. data/lib/stripe/params/invoice_item_delete_params.rb +6 -0
  212. data/lib/stripe/params/invoice_item_list_params.rb +60 -0
  213. data/lib/stripe/params/invoice_item_retrieve_params.rb +13 -0
  214. data/lib/stripe/params/invoice_item_update_params.rb +129 -0
  215. data/lib/stripe/params/invoice_line_item_list_params.rb +22 -0
  216. data/lib/stripe/params/invoice_line_item_update_params.rb +217 -0
  217. data/lib/stripe/params/invoice_list_params.rb +86 -0
  218. data/lib/stripe/params/invoice_mark_uncollectible_params.rb +13 -0
  219. data/lib/stripe/params/invoice_pay_params.rb +41 -0
  220. data/lib/stripe/params/invoice_payment_list_params.rb +50 -0
  221. data/lib/stripe/params/invoice_payment_retrieve_params.rb +13 -0
  222. data/lib/stripe/params/invoice_remove_lines_params.rb +30 -0
  223. data/lib/stripe/params/invoice_rendering_template_archive_params.rb +13 -0
  224. data/lib/stripe/params/invoice_rendering_template_list_params.rb +25 -0
  225. data/lib/stripe/params/invoice_rendering_template_retrieve_params.rb +16 -0
  226. data/lib/stripe/params/invoice_rendering_template_unarchive_params.rb +13 -0
  227. data/lib/stripe/params/invoice_retrieve_params.rb +13 -0
  228. data/lib/stripe/params/invoice_search_params.rb +22 -0
  229. data/lib/stripe/params/invoice_send_invoice_params.rb +13 -0
  230. data/lib/stripe/params/invoice_update_lines_params.rb +231 -0
  231. data/lib/stripe/params/invoice_update_params.rb +557 -0
  232. data/lib/stripe/params/invoice_void_invoice_params.rb +13 -0
  233. data/lib/stripe/params/issuing/authorization_approve_params.rb +21 -0
  234. data/lib/stripe/params/issuing/authorization_capture_params.rb +265 -0
  235. data/lib/stripe/params/issuing/authorization_create_params.rb +357 -0
  236. data/lib/stripe/params/issuing/authorization_decline_params.rb +18 -0
  237. data/lib/stripe/params/issuing/authorization_expire_params.rb +15 -0
  238. data/lib/stripe/params/issuing/authorization_finalize_amount_params.rb +143 -0
  239. data/lib/stripe/params/issuing/authorization_increment_params.rb +21 -0
  240. data/lib/stripe/params/issuing/authorization_list_params.rb +62 -0
  241. data/lib/stripe/params/issuing/authorization_respond_params.rb +18 -0
  242. data/lib/stripe/params/issuing/authorization_retrieve_params.rb +15 -0
  243. data/lib/stripe/params/issuing/authorization_reverse_params.rb +18 -0
  244. data/lib/stripe/params/issuing/authorization_update_params.rb +18 -0
  245. data/lib/stripe/params/issuing/card_create_params.rb +213 -0
  246. data/lib/stripe/params/issuing/card_deliver_card_params.rb +15 -0
  247. data/lib/stripe/params/issuing/card_fail_card_params.rb +15 -0
  248. data/lib/stripe/params/issuing/card_list_params.rb +78 -0
  249. data/lib/stripe/params/issuing/card_retrieve_params.rb +15 -0
  250. data/lib/stripe/params/issuing/card_return_card_params.rb +15 -0
  251. data/lib/stripe/params/issuing/card_ship_card_params.rb +15 -0
  252. data/lib/stripe/params/issuing/card_submit_card_params.rb +15 -0
  253. data/lib/stripe/params/issuing/card_update_params.rb +181 -0
  254. data/lib/stripe/params/issuing/cardholder_create_params.rb +238 -0
  255. data/lib/stripe/params/issuing/cardholder_list_params.rb +66 -0
  256. data/lib/stripe/params/issuing/cardholder_retrieve_params.rb +15 -0
  257. data/lib/stripe/params/issuing/cardholder_update_params.rb +230 -0
  258. data/lib/stripe/params/issuing/dispute_create_params.rb +297 -0
  259. data/lib/stripe/params/issuing/dispute_list_params.rb +58 -0
  260. data/lib/stripe/params/issuing/dispute_retrieve_params.rb +15 -0
  261. data/lib/stripe/params/issuing/dispute_submit_params.rb +18 -0
  262. data/lib/stripe/params/issuing/dispute_update_params.rb +275 -0
  263. data/lib/stripe/params/issuing/personalization_design_activate_params.rb +15 -0
  264. data/lib/stripe/params/issuing/personalization_design_create_params.rb +75 -0
  265. data/lib/stripe/params/issuing/personalization_design_deactivate_params.rb +15 -0
  266. data/lib/stripe/params/issuing/personalization_design_list_params.rb +52 -0
  267. data/lib/stripe/params/issuing/personalization_design_reject_params.rb +29 -0
  268. data/lib/stripe/params/issuing/personalization_design_retrieve_params.rb +15 -0
  269. data/lib/stripe/params/issuing/personalization_design_update_params.rb +75 -0
  270. data/lib/stripe/params/issuing/physical_bundle_list_params.rb +37 -0
  271. data/lib/stripe/params/issuing/physical_bundle_retrieve_params.rb +15 -0
  272. data/lib/stripe/params/issuing/token_list_params.rb +58 -0
  273. data/lib/stripe/params/issuing/token_retrieve_params.rb +15 -0
  274. data/lib/stripe/params/issuing/token_update_params.rb +18 -0
  275. data/lib/stripe/params/issuing/transaction_create_force_capture_params.rb +316 -0
  276. data/lib/stripe/params/issuing/transaction_create_unlinked_refund_params.rb +316 -0
  277. data/lib/stripe/params/issuing/transaction_list_params.rb +62 -0
  278. data/lib/stripe/params/issuing/transaction_refund_params.rb +18 -0
  279. data/lib/stripe/params/issuing/transaction_retrieve_params.rb +15 -0
  280. data/lib/stripe/params/issuing/transaction_update_params.rb +18 -0
  281. data/lib/stripe/params/mandate_retrieve_params.rb +13 -0
  282. data/lib/stripe/params/payment_intent_apply_customer_balance_params.rb +23 -0
  283. data/lib/stripe/params/payment_intent_cancel_params.rb +16 -0
  284. data/lib/stripe/params/payment_intent_capture_params.rb +54 -0
  285. data/lib/stripe/params/payment_intent_confirm_params.rb +2379 -0
  286. data/lib/stripe/params/payment_intent_create_params.rb +2480 -0
  287. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +48 -0
  288. data/lib/stripe/params/payment_intent_list_params.rb +52 -0
  289. data/lib/stripe/params/payment_intent_retrieve_params.rb +16 -0
  290. data/lib/stripe/params/payment_intent_search_params.rb +22 -0
  291. data/lib/stripe/params/payment_intent_update_params.rb +2353 -0
  292. data/lib/stripe/params/payment_intent_verify_microdeposits_params.rb +19 -0
  293. data/lib/stripe/params/payment_link_create_params.rb +776 -0
  294. data/lib/stripe/params/payment_link_line_item_list_params.rb +22 -0
  295. data/lib/stripe/params/payment_link_list_line_items_params.rb +22 -0
  296. data/lib/stripe/params/payment_link_list_params.rb +25 -0
  297. data/lib/stripe/params/payment_link_retrieve_params.rb +13 -0
  298. data/lib/stripe/params/payment_link_update_params.rb +564 -0
  299. data/lib/stripe/params/payment_method_attach_params.rb +16 -0
  300. data/lib/stripe/params/payment_method_configuration_create_params.rb +1135 -0
  301. data/lib/stripe/params/payment_method_configuration_list_params.rb +31 -0
  302. data/lib/stripe/params/payment_method_configuration_retrieve_params.rb +13 -0
  303. data/lib/stripe/params/payment_method_configuration_update_params.rb +1135 -0
  304. data/lib/stripe/params/payment_method_create_params.rb +583 -0
  305. data/lib/stripe/params/payment_method_detach_params.rb +13 -0
  306. data/lib/stripe/params/payment_method_domain_create_params.rb +19 -0
  307. data/lib/stripe/params/payment_method_domain_list_params.rb +35 -0
  308. data/lib/stripe/params/payment_method_domain_retrieve_params.rb +13 -0
  309. data/lib/stripe/params/payment_method_domain_update_params.rb +16 -0
  310. data/lib/stripe/params/payment_method_domain_validate_params.rb +13 -0
  311. data/lib/stripe/params/payment_method_list_params.rb +35 -0
  312. data/lib/stripe/params/payment_method_retrieve_params.rb +13 -0
  313. data/lib/stripe/params/payment_method_update_params.rb +120 -0
  314. data/lib/stripe/params/payout_cancel_params.rb +13 -0
  315. data/lib/stripe/params/payout_create_params.rb +51 -0
  316. data/lib/stripe/params/payout_list_params.rb +78 -0
  317. data/lib/stripe/params/payout_retrieve_params.rb +13 -0
  318. data/lib/stripe/params/payout_reverse_params.rb +16 -0
  319. data/lib/stripe/params/payout_update_params.rb +16 -0
  320. data/lib/stripe/params/plan_create_params.rb +158 -0
  321. data/lib/stripe/params/plan_delete_params.rb +6 -0
  322. data/lib/stripe/params/plan_list_params.rb +56 -0
  323. data/lib/stripe/params/plan_retrieve_params.rb +13 -0
  324. data/lib/stripe/params/plan_update_params.rb +35 -0
  325. data/lib/stripe/params/price_create_params.rb +278 -0
  326. data/lib/stripe/params/price_list_params.rb +87 -0
  327. data/lib/stripe/params/price_retrieve_params.rb +13 -0
  328. data/lib/stripe/params/price_search_params.rb +22 -0
  329. data/lib/stripe/params/price_update_params.rb +113 -0
  330. data/lib/stripe/params/product_create_params.rb +243 -0
  331. data/lib/stripe/params/product_delete_params.rb +6 -0
  332. data/lib/stripe/params/product_feature_create_params.rb +16 -0
  333. data/lib/stripe/params/product_feature_delete_params.rb +6 -0
  334. data/lib/stripe/params/product_feature_list_params.rb +22 -0
  335. data/lib/stripe/params/product_feature_retrieve_params.rb +13 -0
  336. data/lib/stripe/params/product_list_params.rb +68 -0
  337. data/lib/stripe/params/product_retrieve_params.rb +13 -0
  338. data/lib/stripe/params/product_search_params.rb +22 -0
  339. data/lib/stripe/params/product_update_params.rb +96 -0
  340. data/lib/stripe/params/promotion_code_create_params.rb +91 -0
  341. data/lib/stripe/params/promotion_code_list_params.rb +64 -0
  342. data/lib/stripe/params/promotion_code_retrieve_params.rb +13 -0
  343. data/lib/stripe/params/promotion_code_update_params.rb +38 -0
  344. data/lib/stripe/params/quote_accept_params.rb +13 -0
  345. data/lib/stripe/params/quote_cancel_params.rb +13 -0
  346. data/lib/stripe/params/quote_computed_upfront_line_items_list_params.rb +22 -0
  347. data/lib/stripe/params/quote_create_params.rb +301 -0
  348. data/lib/stripe/params/quote_finalize_quote_params.rb +16 -0
  349. data/lib/stripe/params/quote_line_item_list_params.rb +22 -0
  350. data/lib/stripe/params/quote_list_computed_upfront_line_items_params.rb +22 -0
  351. data/lib/stripe/params/quote_list_line_items_params.rb +22 -0
  352. data/lib/stripe/params/quote_list_params.rb +39 -0
  353. data/lib/stripe/params/quote_pdf_params.rb +13 -0
  354. data/lib/stripe/params/quote_retrieve_params.rb +13 -0
  355. data/lib/stripe/params/quote_update_params.rb +263 -0
  356. data/lib/stripe/params/radar/early_fraud_warning_list_params.rb +58 -0
  357. data/lib/stripe/params/radar/early_fraud_warning_retrieve_params.rb +15 -0
  358. data/lib/stripe/params/radar/value_list_create_params.rb +27 -0
  359. data/lib/stripe/params/radar/value_list_delete_params.rb +8 -0
  360. data/lib/stripe/params/radar/value_list_item_create_params.rb +21 -0
  361. data/lib/stripe/params/radar/value_list_item_delete_params.rb +8 -0
  362. data/lib/stripe/params/radar/value_list_item_list_params.rb +58 -0
  363. data/lib/stripe/params/radar/value_list_item_retrieve_params.rb +15 -0
  364. data/lib/stripe/params/radar/value_list_list_params.rb +58 -0
  365. data/lib/stripe/params/radar/value_list_retrieve_params.rb +15 -0
  366. data/lib/stripe/params/radar/value_list_update_params.rb +24 -0
  367. data/lib/stripe/params/refund_cancel_params.rb +13 -0
  368. data/lib/stripe/params/refund_create_params.rb +59 -0
  369. data/lib/stripe/params/refund_expire_params.rb +13 -0
  370. data/lib/stripe/params/refund_list_params.rb +56 -0
  371. data/lib/stripe/params/refund_retrieve_params.rb +13 -0
  372. data/lib/stripe/params/refund_update_params.rb +16 -0
  373. data/lib/stripe/params/reporting/report_run_create_params.rb +59 -0
  374. data/lib/stripe/params/reporting/report_run_list_params.rb +44 -0
  375. data/lib/stripe/params/reporting/report_run_retrieve_params.rb +15 -0
  376. data/lib/stripe/params/reporting/report_type_list_params.rb +15 -0
  377. data/lib/stripe/params/reporting/report_type_retrieve_params.rb +15 -0
  378. data/lib/stripe/params/review_approve_params.rb +13 -0
  379. data/lib/stripe/params/review_list_params.rb +42 -0
  380. data/lib/stripe/params/review_retrieve_params.rb +13 -0
  381. data/lib/stripe/params/setup_attempt_list_params.rb +55 -0
  382. data/lib/stripe/params/setup_intent_cancel_params.rb +16 -0
  383. data/lib/stripe/params/setup_intent_confirm_params.rb +1050 -0
  384. data/lib/stripe/params/setup_intent_create_params.rb +1130 -0
  385. data/lib/stripe/params/setup_intent_list_params.rb +62 -0
  386. data/lib/stripe/params/setup_intent_retrieve_params.rb +16 -0
  387. data/lib/stripe/params/setup_intent_update_params.rb +1025 -0
  388. data/lib/stripe/params/setup_intent_verify_microdeposits_params.rb +19 -0
  389. data/lib/stripe/params/shipping_rate_create_params.rb +103 -0
  390. data/lib/stripe/params/shipping_rate_list_params.rb +56 -0
  391. data/lib/stripe/params/shipping_rate_retrieve_params.rb +13 -0
  392. data/lib/stripe/params/shipping_rate_update_params.rb +44 -0
  393. data/lib/stripe/params/sigma/scheduled_query_run_list_params.rb +24 -0
  394. data/lib/stripe/params/sigma/scheduled_query_run_retrieve_params.rb +15 -0
  395. data/lib/stripe/params/source_create_params.rb +317 -0
  396. data/lib/stripe/params/source_detach_params.rb +13 -0
  397. data/lib/stripe/params/source_retrieve_params.rb +16 -0
  398. data/lib/stripe/params/source_transaction_list_params.rb +22 -0
  399. data/lib/stripe/params/source_update_params.rb +259 -0
  400. data/lib/stripe/params/source_verify_params.rb +16 -0
  401. data/lib/stripe/params/subscription_cancel_params.rb +33 -0
  402. data/lib/stripe/params/subscription_create_params.rb +704 -0
  403. data/lib/stripe/params/subscription_delete_discount_params.rb +6 -0
  404. data/lib/stripe/params/subscription_item_create_params.rb +134 -0
  405. data/lib/stripe/params/subscription_item_delete_params.rb +19 -0
  406. data/lib/stripe/params/subscription_item_list_params.rb +31 -0
  407. data/lib/stripe/params/subscription_item_retrieve_params.rb +13 -0
  408. data/lib/stripe/params/subscription_item_update_params.rb +134 -0
  409. data/lib/stripe/params/subscription_list_params.rb +129 -0
  410. data/lib/stripe/params/subscription_migrate_params.rb +35 -0
  411. data/lib/stripe/params/subscription_resume_params.rb +27 -0
  412. data/lib/stripe/params/subscription_retrieve_params.rb +13 -0
  413. data/lib/stripe/params/subscription_schedule_cancel_params.rb +19 -0
  414. data/lib/stripe/params/subscription_schedule_create_params.rb +590 -0
  415. data/lib/stripe/params/subscription_schedule_list_params.rb +122 -0
  416. data/lib/stripe/params/subscription_schedule_release_params.rb +16 -0
  417. data/lib/stripe/params/subscription_schedule_retrieve_params.rb +13 -0
  418. data/lib/stripe/params/subscription_schedule_update_params.rb +562 -0
  419. data/lib/stripe/params/subscription_search_params.rb +22 -0
  420. data/lib/stripe/params/subscription_update_params.rb +683 -0
  421. data/lib/stripe/params/tax/calculation_create_params.rb +206 -0
  422. data/lib/stripe/params/tax/calculation_line_item_list_params.rb +24 -0
  423. data/lib/stripe/{services/quote_preview_invoice_service.rb → params/tax/calculation_list_line_items_params.rb} +2 -13
  424. data/lib/stripe/params/tax/calculation_retrieve_params.rb +15 -0
  425. data/lib/stripe/params/tax/registration_create_params.rb +2018 -0
  426. data/lib/stripe/params/tax/registration_list_params.rb +27 -0
  427. data/lib/stripe/params/tax/registration_retrieve_params.rb +15 -0
  428. data/lib/stripe/params/tax/registration_update_params.rb +21 -0
  429. data/lib/stripe/params/tax/settings_retrieve_params.rb +15 -0
  430. data/lib/stripe/params/tax/settings_update_params.rb +71 -0
  431. data/lib/stripe/params/tax/transaction_create_from_calculation_params.rb +27 -0
  432. data/lib/stripe/params/tax/transaction_create_reversal_params.rb +87 -0
  433. data/lib/stripe/params/tax/transaction_line_item_list_params.rb +24 -0
  434. data/lib/stripe/{services/payment_intent_amount_details_line_item_service.rb → params/tax/transaction_list_line_items_params.rb} +2 -13
  435. data/lib/stripe/params/tax/transaction_retrieve_params.rb +15 -0
  436. data/lib/stripe/params/tax_code_list_params.rb +22 -0
  437. data/lib/stripe/params/tax_code_retrieve_params.rb +13 -0
  438. data/lib/stripe/params/tax_id_create_params.rb +36 -0
  439. data/lib/stripe/params/tax_id_delete_params.rb +6 -0
  440. data/lib/stripe/params/tax_id_list_params.rb +39 -0
  441. data/lib/stripe/params/tax_id_retrieve_params.rb +13 -0
  442. data/lib/stripe/params/tax_rate_create_params.rb +55 -0
  443. data/lib/stripe/params/tax_rate_list_params.rb +56 -0
  444. data/lib/stripe/params/tax_rate_retrieve_params.rb +13 -0
  445. data/lib/stripe/params/tax_rate_update_params.rb +47 -0
  446. data/lib/stripe/params/terminal/configuration_create_params.rb +593 -0
  447. data/lib/stripe/params/terminal/configuration_delete_params.rb +8 -0
  448. data/lib/stripe/params/terminal/configuration_list_params.rb +33 -0
  449. data/lib/stripe/params/terminal/configuration_retrieve_params.rb +15 -0
  450. data/lib/stripe/params/terminal/configuration_update_params.rb +593 -0
  451. data/lib/stripe/params/terminal/connection_token_create_params.rb +18 -0
  452. data/lib/stripe/params/terminal/location_create_params.rb +153 -0
  453. data/lib/stripe/params/terminal/location_delete_params.rb +8 -0
  454. data/lib/stripe/params/terminal/location_list_params.rb +24 -0
  455. data/lib/stripe/params/terminal/location_retrieve_params.rb +15 -0
  456. data/lib/stripe/params/terminal/location_update_params.rb +153 -0
  457. data/lib/stripe/params/terminal/reader_cancel_action_params.rb +15 -0
  458. data/lib/stripe/params/terminal/reader_collect_inputs_params.rb +96 -0
  459. data/lib/stripe/params/terminal/reader_collect_payment_method_params.rb +51 -0
  460. data/lib/stripe/params/terminal/reader_confirm_payment_intent_params.rb +29 -0
  461. data/lib/stripe/params/terminal/reader_create_params.rb +27 -0
  462. data/lib/stripe/params/terminal/reader_delete_params.rb +8 -0
  463. data/lib/stripe/params/terminal/reader_list_params.rb +45 -0
  464. data/lib/stripe/params/terminal/reader_present_payment_method_params.rb +72 -0
  465. data/lib/stripe/params/terminal/reader_process_payment_intent_params.rb +55 -0
  466. data/lib/stripe/params/terminal/reader_process_setup_intent_params.rb +32 -0
  467. data/lib/stripe/params/terminal/reader_refund_payment_params.rb +53 -0
  468. data/lib/stripe/params/terminal/reader_retrieve_params.rb +15 -0
  469. data/lib/stripe/params/terminal/reader_set_reader_display_params.rb +52 -0
  470. data/lib/stripe/params/terminal/reader_succeed_input_collection_params.rb +18 -0
  471. data/lib/stripe/params/terminal/reader_timeout_input_collection_params.rb +15 -0
  472. data/lib/stripe/params/terminal/reader_update_params.rb +21 -0
  473. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +652 -0
  474. data/lib/stripe/params/test_helpers/customer_fund_cash_balance_params.rb +24 -0
  475. data/lib/stripe/params/test_helpers/issuing/authorization_capture_params.rb +267 -0
  476. data/lib/stripe/params/test_helpers/issuing/authorization_create_params.rb +359 -0
  477. data/lib/stripe/params/test_helpers/issuing/authorization_expire_params.rb +17 -0
  478. data/lib/stripe/params/test_helpers/issuing/authorization_finalize_amount_params.rb +145 -0
  479. data/lib/stripe/params/test_helpers/issuing/authorization_increment_params.rb +23 -0
  480. data/lib/stripe/params/test_helpers/issuing/authorization_respond_params.rb +20 -0
  481. data/lib/stripe/params/test_helpers/issuing/authorization_reverse_params.rb +20 -0
  482. data/lib/stripe/params/test_helpers/issuing/card_deliver_card_params.rb +17 -0
  483. data/lib/stripe/params/test_helpers/issuing/card_fail_card_params.rb +17 -0
  484. data/lib/stripe/params/test_helpers/issuing/card_return_card_params.rb +17 -0
  485. data/lib/stripe/params/test_helpers/issuing/card_ship_card_params.rb +17 -0
  486. data/lib/stripe/params/test_helpers/issuing/card_submit_card_params.rb +17 -0
  487. data/lib/stripe/params/test_helpers/issuing/personalization_design_activate_params.rb +17 -0
  488. data/lib/stripe/params/test_helpers/issuing/personalization_design_deactivate_params.rb +17 -0
  489. data/lib/stripe/params/test_helpers/issuing/personalization_design_reject_params.rb +31 -0
  490. data/lib/stripe/params/test_helpers/issuing/transaction_create_force_capture_params.rb +318 -0
  491. data/lib/stripe/params/test_helpers/issuing/transaction_create_unlinked_refund_params.rb +318 -0
  492. data/lib/stripe/params/test_helpers/issuing/transaction_refund_params.rb +20 -0
  493. data/lib/stripe/params/test_helpers/refund_expire_params.rb +15 -0
  494. data/lib/stripe/params/test_helpers/terminal/reader_present_payment_method_params.rb +74 -0
  495. data/lib/stripe/params/test_helpers/terminal/reader_succeed_input_collection_params.rb +20 -0
  496. data/lib/stripe/params/test_helpers/terminal/reader_timeout_input_collection_params.rb +17 -0
  497. data/lib/stripe/params/test_helpers/test_clock_advance_params.rb +18 -0
  498. data/lib/stripe/params/test_helpers/test_clock_create_params.rb +21 -0
  499. data/lib/stripe/params/test_helpers/test_clock_delete_params.rb +8 -0
  500. data/lib/stripe/params/test_helpers/test_clock_list_params.rb +24 -0
  501. data/lib/stripe/params/test_helpers/test_clock_retrieve_params.rb +15 -0
  502. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_fail_params.rb +28 -0
  503. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_return_inbound_transfer_params.rb +17 -0
  504. data/lib/stripe/params/test_helpers/treasury/inbound_transfer_succeed_params.rb +17 -0
  505. data/lib/stripe/params/test_helpers/treasury/outbound_payment_fail_params.rb +17 -0
  506. data/lib/stripe/params/test_helpers/treasury/outbound_payment_post_params.rb +17 -0
  507. data/lib/stripe/params/test_helpers/treasury/outbound_payment_return_outbound_payment_params.rb +28 -0
  508. data/lib/stripe/params/test_helpers/treasury/outbound_payment_update_params.rb +57 -0
  509. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_fail_params.rb +17 -0
  510. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_post_params.rb +17 -0
  511. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_return_outbound_transfer_params.rb +28 -0
  512. data/lib/stripe/params/test_helpers/treasury/outbound_transfer_update_params.rb +57 -0
  513. data/lib/stripe/params/test_helpers/treasury/received_credit_create_params.rb +68 -0
  514. data/lib/stripe/params/test_helpers/treasury/received_debit_create_params.rb +68 -0
  515. data/lib/stripe/params/token_create_params.rb +1191 -0
  516. data/lib/stripe/params/token_retrieve_params.rb +13 -0
  517. data/lib/stripe/params/topup_cancel_params.rb +13 -0
  518. data/lib/stripe/params/topup_create_params.rb +43 -0
  519. data/lib/stripe/params/topup_list_params.rb +74 -0
  520. data/lib/stripe/params/topup_retrieve_params.rb +13 -0
  521. data/lib/stripe/params/topup_update_params.rb +19 -0
  522. data/lib/stripe/params/transfer_create_params.rb +47 -0
  523. data/lib/stripe/params/transfer_list_params.rb +56 -0
  524. data/lib/stripe/params/transfer_retrieve_params.rb +13 -0
  525. data/lib/stripe/params/transfer_reversal_create_params.rb +31 -0
  526. data/lib/stripe/params/transfer_reversal_list_params.rb +22 -0
  527. data/lib/stripe/params/transfer_reversal_retrieve_params.rb +13 -0
  528. data/lib/stripe/params/transfer_reversal_update_params.rb +16 -0
  529. data/lib/stripe/params/transfer_update_params.rb +19 -0
  530. data/lib/stripe/params/treasury/credit_reversal_create_params.rb +21 -0
  531. data/lib/stripe/params/treasury/credit_reversal_list_params.rb +41 -0
  532. data/lib/stripe/params/treasury/credit_reversal_retrieve_params.rb +15 -0
  533. data/lib/stripe/params/treasury/debit_reversal_create_params.rb +21 -0
  534. data/lib/stripe/params/treasury/debit_reversal_list_params.rb +45 -0
  535. data/lib/stripe/params/treasury/debit_reversal_retrieve_params.rb +15 -0
  536. data/lib/stripe/params/treasury/financial_account_close_params.rb +32 -0
  537. data/lib/stripe/params/treasury/financial_account_create_params.rb +201 -0
  538. data/lib/stripe/params/treasury/financial_account_features_retrieve_params.rb +15 -0
  539. data/lib/stripe/params/treasury/financial_account_features_update_params.rb +163 -0
  540. data/lib/stripe/params/treasury/financial_account_list_params.rb +54 -0
  541. data/lib/stripe/params/treasury/financial_account_retrieve_features_params.rb +15 -0
  542. data/lib/stripe/params/treasury/financial_account_retrieve_params.rb +15 -0
  543. data/lib/stripe/params/treasury/financial_account_update_features_params.rb +163 -0
  544. data/lib/stripe/params/treasury/financial_account_update_params.rb +216 -0
  545. data/lib/stripe/params/treasury/inbound_transfer_cancel_params.rb +15 -0
  546. data/lib/stripe/params/treasury/inbound_transfer_create_params.rb +45 -0
  547. data/lib/stripe/params/treasury/inbound_transfer_fail_params.rb +26 -0
  548. data/lib/stripe/params/treasury/inbound_transfer_list_params.rb +37 -0
  549. data/lib/stripe/params/treasury/inbound_transfer_retrieve_params.rb +15 -0
  550. data/lib/stripe/params/treasury/inbound_transfer_return_inbound_transfer_params.rb +15 -0
  551. data/lib/stripe/params/treasury/inbound_transfer_succeed_params.rb +15 -0
  552. data/lib/stripe/params/treasury/outbound_payment_cancel_params.rb +15 -0
  553. data/lib/stripe/params/treasury/outbound_payment_create_params.rb +190 -0
  554. data/lib/stripe/params/treasury/outbound_payment_fail_params.rb +15 -0
  555. data/lib/stripe/params/treasury/outbound_payment_list_params.rb +62 -0
  556. data/lib/stripe/params/treasury/outbound_payment_post_params.rb +15 -0
  557. data/lib/stripe/params/treasury/outbound_payment_retrieve_params.rb +15 -0
  558. data/lib/stripe/params/treasury/outbound_payment_return_outbound_payment_params.rb +26 -0
  559. data/lib/stripe/params/treasury/outbound_payment_update_params.rb +55 -0
  560. data/lib/stripe/params/treasury/outbound_transfer_cancel_params.rb +15 -0
  561. data/lib/stripe/params/treasury/outbound_transfer_create_params.rb +81 -0
  562. data/lib/stripe/params/treasury/outbound_transfer_fail_params.rb +15 -0
  563. data/lib/stripe/params/treasury/outbound_transfer_list_params.rb +37 -0
  564. data/lib/stripe/params/treasury/outbound_transfer_post_params.rb +15 -0
  565. data/lib/stripe/params/treasury/outbound_transfer_retrieve_params.rb +15 -0
  566. data/lib/stripe/params/treasury/outbound_transfer_return_outbound_transfer_params.rb +26 -0
  567. data/lib/stripe/params/treasury/outbound_transfer_update_params.rb +55 -0
  568. data/lib/stripe/params/treasury/received_credit_create_params.rb +66 -0
  569. data/lib/stripe/params/treasury/received_credit_list_params.rb +49 -0
  570. data/lib/stripe/params/treasury/received_credit_retrieve_params.rb +15 -0
  571. data/lib/stripe/params/treasury/received_debit_create_params.rb +66 -0
  572. data/lib/stripe/params/treasury/received_debit_list_params.rb +37 -0
  573. data/lib/stripe/params/treasury/received_debit_retrieve_params.rb +15 -0
  574. data/lib/stripe/params/treasury/transaction_entry_list_params.rb +84 -0
  575. data/lib/stripe/params/treasury/transaction_entry_retrieve_params.rb +15 -0
  576. data/lib/stripe/params/treasury/transaction_list_params.rb +92 -0
  577. data/lib/stripe/params/treasury/transaction_retrieve_params.rb +15 -0
  578. data/lib/stripe/params/v2/billing/meter_event_adjustment_create_params.rb +31 -0
  579. data/lib/stripe/params/v2/billing/meter_event_create_params.rb +33 -0
  580. data/lib/stripe/params/v2/billing/meter_event_session_create_params.rb +10 -0
  581. data/lib/stripe/params/v2/billing/meter_event_stream_create_params.rb +41 -0
  582. data/lib/stripe/params/v2/core/event_destination_create_params.rb +79 -0
  583. data/lib/stripe/params/v2/core/event_destination_delete_params.rb +10 -0
  584. data/lib/stripe/params/v2/core/event_destination_disable_params.rb +10 -0
  585. data/lib/stripe/params/v2/core/event_destination_enable_params.rb +10 -0
  586. data/lib/stripe/params/v2/core/event_destination_list_params.rb +20 -0
  587. data/lib/stripe/params/v2/core/event_destination_ping_params.rb +10 -0
  588. data/lib/stripe/params/v2/core/event_destination_retrieve_params.rb +17 -0
  589. data/lib/stripe/params/v2/core/event_destination_update_params.rb +47 -0
  590. data/lib/stripe/params/v2/core/event_list_params.rb +22 -0
  591. data/lib/stripe/params/v2/core/event_retrieve_params.rb +10 -0
  592. data/lib/stripe/params/webhook_endpoint_create_params.rb +39 -0
  593. data/lib/stripe/params/webhook_endpoint_delete_params.rb +6 -0
  594. data/lib/stripe/params/webhook_endpoint_list_params.rb +22 -0
  595. data/lib/stripe/params/webhook_endpoint_retrieve_params.rb +13 -0
  596. data/lib/stripe/params/webhook_endpoint_update_params.rb +35 -0
  597. data/lib/stripe/params.rb +588 -0
  598. data/lib/stripe/request_options.rb +14 -5
  599. data/lib/stripe/resources/account.rb +437 -4906
  600. data/lib/stripe/resources/account_link.rb +8 -47
  601. data/lib/stripe/resources/account_session.rb +338 -910
  602. data/lib/stripe/resources/apple_pay_domain.rb +8 -40
  603. data/lib/stripe/resources/application.rb +8 -0
  604. data/lib/stripe/resources/application_fee.rb +12 -44
  605. data/lib/stripe/resources/application_fee_refund.rb +8 -0
  606. data/lib/stripe/resources/apps/secret.rb +12 -112
  607. data/lib/stripe/resources/balance.rb +159 -0
  608. data/lib/stripe/resources/balance_settings.rb +40 -60
  609. data/lib/stripe/resources/balance_transaction.rb +12 -56
  610. data/lib/stripe/resources/bank_account.rb +40 -0
  611. data/lib/stripe/resources/billing/alert.rb +20 -100
  612. data/lib/stripe/resources/billing/alert_triggered.rb +8 -0
  613. data/lib/stripe/resources/billing/credit_balance_summary.rb +48 -2
  614. data/lib/stripe/resources/billing/credit_balance_transaction.rb +73 -33
  615. data/lib/stripe/resources/billing/credit_grant.rb +42 -161
  616. data/lib/stripe/resources/billing/meter.rb +40 -116
  617. data/lib/stripe/resources/billing/meter_event.rb +8 -20
  618. data/lib/stripe/resources/billing/meter_event_adjustment.rb +12 -22
  619. data/lib/stripe/resources/billing/meter_event_summary.rb +8 -0
  620. data/lib/stripe/resources/billing_portal/configuration.rb +120 -473
  621. data/lib/stripe/resources/billing_portal/session.rb +98 -176
  622. data/lib/stripe/resources/capability.rb +56 -0
  623. data/lib/stripe/resources/card.rb +17 -3
  624. data/lib/stripe/resources/cash_balance.rb +16 -2
  625. data/lib/stripe/resources/charge.rb +949 -1945
  626. data/lib/stripe/resources/checkout/session.rb +1038 -2991
  627. data/lib/stripe/resources/climate/order.rb +28 -89
  628. data/lib/stripe/resources/climate/product.rb +13 -15
  629. data/lib/stripe/resources/climate/supplier.rb +13 -15
  630. data/lib/stripe/resources/confirmation_token.rb +883 -841
  631. data/lib/stripe/resources/connect_collection_transfer.rb +8 -0
  632. data/lib/stripe/resources/country_spec.rb +29 -15
  633. data/lib/stripe/resources/coupon.rb +19 -166
  634. data/lib/stripe/resources/credit_note.rb +66 -510
  635. data/lib/stripe/resources/credit_note_line_item.rb +43 -8
  636. data/lib/stripe/resources/customer.rb +81 -677
  637. data/lib/stripe/resources/customer_balance_transaction.rb +8 -2
  638. data/lib/stripe/resources/customer_cash_balance_transaction.rb +108 -2
  639. data/lib/stripe/resources/customer_session.rb +49 -98
  640. data/lib/stripe/resources/discount.rb +24 -6
  641. data/lib/stripe/resources/dispute.rb +159 -376
  642. data/lib/stripe/resources/entitlements/active_entitlement.rb +8 -26
  643. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +8 -0
  644. data/lib/stripe/resources/entitlements/feature.rb +8 -66
  645. data/lib/stripe/resources/ephemeral_key.rb +8 -8
  646. data/lib/stripe/resources/event.rb +16 -79
  647. data/lib/stripe/resources/exchange_rate.rb +18 -17
  648. data/lib/stripe/resources/file.rb +8 -79
  649. data/lib/stripe/resources/file_link.rb +8 -84
  650. data/lib/stripe/resources/financial_connections/account.rb +65 -130
  651. data/lib/stripe/resources/financial_connections/account_owner.rb +8 -0
  652. data/lib/stripe/resources/financial_connections/account_ownership.rb +8 -0
  653. data/lib/stripe/resources/financial_connections/session.rb +20 -115
  654. data/lib/stripe/resources/financial_connections/transaction.rb +12 -57
  655. data/lib/stripe/resources/forwarding/request.rb +48 -93
  656. data/lib/stripe/resources/funding_instructions.rb +217 -24
  657. data/lib/stripe/resources/identity/verification_report.rb +165 -56
  658. data/lib/stripe/resources/identity/verification_session.rb +124 -247
  659. data/lib/stripe/resources/invoice.rb +500 -4017
  660. data/lib/stripe/resources/invoice_item.rb +69 -385
  661. data/lib/stripe/resources/invoice_line_item.rb +124 -251
  662. data/lib/stripe/resources/invoice_payment.rb +20 -47
  663. data/lib/stripe/resources/invoice_rendering_template.rb +8 -38
  664. data/lib/stripe/resources/issuing/authorization.rb +173 -836
  665. data/lib/stripe/resources/issuing/card.rb +98 -499
  666. data/lib/stripe/resources/issuing/cardholder.rb +108 -515
  667. data/lib/stripe/resources/issuing/dispute.rb +93 -620
  668. data/lib/stripe/resources/issuing/personalization_design.rb +32 -221
  669. data/lib/stripe/resources/issuing/physical_bundle.rb +13 -28
  670. data/lib/stripe/resources/issuing/token.rb +57 -60
  671. data/lib/stripe/resources/issuing/transaction.rb +147 -702
  672. data/lib/stripe/resources/line_item.rb +22 -35
  673. data/lib/stripe/resources/login_link.rb +8 -0
  674. data/lib/stripe/resources/mandate.rb +219 -94
  675. data/lib/stripe/resources/payment_intent.rb +1241 -13361
  676. data/lib/stripe/resources/payment_link.rb +333 -1357
  677. data/lib/stripe/resources/payment_method.rb +796 -966
  678. data/lib/stripe/resources/payment_method_configuration.rb +862 -2528
  679. data/lib/stripe/resources/payment_method_domain.rb +107 -63
  680. data/lib/stripe/resources/payout.rb +12 -150
  681. data/lib/stripe/resources/person.rb +184 -4
  682. data/lib/stripe/resources/plan.rb +20 -235
  683. data/lib/stripe/resources/price.rb +65 -509
  684. data/lib/stripe/resources/product.rb +23 -411
  685. data/lib/stripe/resources/product_feature.rb +8 -0
  686. data/lib/stripe/resources/promotion_code.rb +40 -182
  687. data/lib/stripe/resources/quote.rb +280 -2743
  688. data/lib/stripe/resources/radar/early_fraud_warning.rb +8 -51
  689. data/lib/stripe/resources/radar/value_list.rb +8 -92
  690. data/lib/stripe/resources/radar/value_list_item.rb +8 -68
  691. data/lib/stripe/resources/refund.rb +365 -159
  692. data/lib/stripe/resources/reporting/report_run.rb +12 -93
  693. data/lib/stripe/resources/reporting/report_type.rb +8 -8
  694. data/lib/stripe/resources/reserve_transaction.rb +8 -0
  695. data/lib/stripe/resources/reversal.rb +8 -0
  696. data/lib/stripe/resources/review.rb +20 -43
  697. data/lib/stripe/resources/setup_attempt.rb +284 -87
  698. data/lib/stripe/resources/setup_intent.rb +358 -4143
  699. data/lib/stripe/resources/shipping_rate.rb +44 -187
  700. data/lib/stripe/resources/sigma/scheduled_query_run.rb +13 -15
  701. data/lib/stripe/resources/source.rb +267 -611
  702. data/lib/stripe/resources/source_mandate_notification.rb +32 -0
  703. data/lib/stripe/resources/source_transaction.rb +54 -0
  704. data/lib/stripe/resources/subscription.rb +266 -1931
  705. data/lib/stripe/resources/subscription_item.rb +12 -379
  706. data/lib/stripe/resources/subscription_schedule.rb +230 -2273
  707. data/lib/stripe/resources/tax/calculation.rb +111 -220
  708. data/lib/stripe/resources/tax/calculation_line_item.rb +32 -0
  709. data/lib/stripe/resources/tax/registration.rb +1274 -2096
  710. data/lib/stripe/resources/tax/settings.rb +61 -64
  711. data/lib/stripe/resources/tax/transaction.rb +95 -122
  712. data/lib/stripe/resources/tax/transaction_line_item.rb +16 -0
  713. data/lib/stripe/resources/tax_code.rb +8 -17
  714. data/lib/stripe/resources/tax_deducted_at_source.rb +8 -0
  715. data/lib/stripe/resources/tax_id.rb +20 -75
  716. data/lib/stripe/resources/tax_rate.rb +12 -142
  717. data/lib/stripe/resources/terminal/configuration.rb +301 -1205
  718. data/lib/stripe/resources/terminal/connection_token.rb +8 -11
  719. data/lib/stripe/resources/terminal/location.rb +72 -126
  720. data/lib/stripe/resources/terminal/reader.rb +237 -509
  721. data/lib/stripe/resources/test_helpers/test_clock.rb +20 -43
  722. data/lib/stripe/resources/token.rb +8 -1191
  723. data/lib/stripe/resources/topup.rb +8 -132
  724. data/lib/stripe/resources/transfer.rb +8 -115
  725. data/lib/stripe/resources/treasury/credit_reversal.rb +12 -46
  726. data/lib/stripe/resources/treasury/debit_reversal.rb +20 -50
  727. data/lib/stripe/resources/treasury/financial_account.rb +55 -658
  728. data/lib/stripe/resources/treasury/financial_account_features.rb +192 -2
  729. data/lib/stripe/resources/treasury/inbound_transfer.rb +67 -115
  730. data/lib/stripe/resources/treasury/outbound_payment.rb +104 -334
  731. data/lib/stripe/resources/treasury/outbound_transfer.rb +93 -235
  732. data/lib/stripe/resources/treasury/received_credit.rb +76 -136
  733. data/lib/stripe/resources/treasury/received_debit.rb +68 -126
  734. data/lib/stripe/resources/treasury/transaction.rb +32 -82
  735. data/lib/stripe/resources/treasury/transaction_entry.rb +20 -74
  736. data/lib/stripe/resources/v2/billing/meter_event.rb +8 -0
  737. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +16 -0
  738. data/lib/stripe/resources/v2/billing/meter_event_session.rb +8 -0
  739. data/lib/stripe/resources/v2/core/event.rb +67 -0
  740. data/lib/stripe/resources/v2/core/event_destination.rb +119 -0
  741. data/lib/stripe/resources/v2/core/event_notification.rb +62 -0
  742. data/lib/stripe/resources/v2/deleted_object.rb +21 -0
  743. data/lib/stripe/resources/webhook_endpoint.rb +8 -85
  744. data/lib/stripe/resources.rb +3 -110
  745. data/lib/stripe/services/account_capability_service.rb +0 -32
  746. data/lib/stripe/services/account_external_account_service.rb +0 -249
  747. data/lib/stripe/services/account_link_service.rb +0 -48
  748. data/lib/stripe/services/account_login_link_service.rb +0 -9
  749. data/lib/stripe/services/account_person_service.rb +0 -958
  750. data/lib/stripe/services/account_service.rb +0 -4710
  751. data/lib/stripe/services/account_session_service.rb +0 -862
  752. data/lib/stripe/services/apple_pay_domain_service.rb +0 -50
  753. data/lib/stripe/services/application_fee_refund_service.rb +0 -54
  754. data/lib/stripe/services/application_fee_service.rb +0 -57
  755. data/lib/stripe/services/apps/secret_service.rb +0 -116
  756. data/lib/stripe/services/balance_service.rb +0 -9
  757. data/lib/stripe/services/balance_settings_service.rb +0 -69
  758. data/lib/stripe/services/balance_transaction_service.rb +0 -69
  759. data/lib/stripe/services/billing/alert_service.rb +0 -113
  760. data/lib/stripe/services/billing/credit_balance_summary_service.rb +0 -51
  761. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +0 -44
  762. data/lib/stripe/services/billing/credit_grant_service.rb +0 -174
  763. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +0 -26
  764. data/lib/stripe/services/billing/meter_event_service.rb +0 -21
  765. data/lib/stripe/services/billing/meter_event_summary_service.rb +0 -39
  766. data/lib/stripe/services/billing/meter_service.rb +0 -130
  767. data/lib/stripe/services/billing_portal/configuration_service.rb +0 -486
  768. data/lib/stripe/services/billing_portal/session_service.rb +0 -177
  769. data/lib/stripe/services/billing_service.rb +1 -2
  770. data/lib/stripe/services/charge_service.rb +0 -1820
  771. data/lib/stripe/services/checkout/session_line_item_service.rb +0 -18
  772. data/lib/stripe/services/checkout/session_service.rb +0 -2882
  773. data/lib/stripe/services/climate/order_service.rb +0 -102
  774. data/lib/stripe/services/climate/product_service.rb +0 -27
  775. data/lib/stripe/services/climate/supplier_service.rb +0 -27
  776. data/lib/stripe/services/confirmation_token_service.rb +0 -9
  777. data/lib/stripe/services/country_spec_service.rb +0 -27
  778. data/lib/stripe/services/coupon_service.rb +0 -167
  779. data/lib/stripe/services/credit_note_line_item_service.rb +0 -18
  780. data/lib/stripe/services/credit_note_preview_lines_service.rb +0 -152
  781. data/lib/stripe/services/credit_note_service.rb +0 -369
  782. data/lib/stripe/services/customer_balance_transaction_service.rb +0 -63
  783. data/lib/stripe/services/customer_cash_balance_service.rb +0 -29
  784. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +0 -27
  785. data/lib/stripe/services/customer_funding_instructions_service.rb +0 -42
  786. data/lib/stripe/services/customer_payment_method_service.rb +0 -40
  787. data/lib/stripe/services/customer_payment_source_service.rb +0 -179
  788. data/lib/stripe/services/customer_service.rb +0 -575
  789. data/lib/stripe/services/customer_session_service.rb +0 -99
  790. data/lib/stripe/services/customer_tax_id_service.rb +0 -44
  791. data/lib/stripe/services/dispute_service.rb +0 -374
  792. data/lib/stripe/services/entitlements/active_entitlement_service.rb +0 -36
  793. data/lib/stripe/services/entitlements/feature_service.rb +0 -76
  794. data/lib/stripe/services/ephemeral_key_service.rb +0 -36
  795. data/lib/stripe/services/event_service.rb +0 -65
  796. data/lib/stripe/services/exchange_rate_service.rb +4 -27
  797. data/lib/stripe/services/file_link_service.rb +0 -94
  798. data/lib/stripe/services/file_service.rb +0 -89
  799. data/lib/stripe/services/financial_connections/account_owner_service.rb +0 -27
  800. data/lib/stripe/services/financial_connections/account_service.rb +1 -102
  801. data/lib/stripe/services/financial_connections/session_service.rb +0 -100
  802. data/lib/stripe/services/financial_connections/transaction_service.rb +0 -70
  803. data/lib/stripe/services/financial_connections_service.rb +1 -2
  804. data/lib/stripe/services/forwarding/request_service.rb +0 -106
  805. data/lib/stripe/services/identity/verification_report_service.rb +0 -65
  806. data/lib/stripe/services/identity/verification_session_service.rb +0 -255
  807. data/lib/stripe/services/invoice_item_service.rb +0 -405
  808. data/lib/stripe/services/invoice_line_item_service.rb +0 -253
  809. data/lib/stripe/services/invoice_payment_service.rb +0 -58
  810. data/lib/stripe/services/invoice_rendering_template_service.rb +0 -51
  811. data/lib/stripe/services/invoice_service.rb +0 -3836
  812. data/lib/stripe/services/issuing/authorization_service.rb +0 -104
  813. data/lib/stripe/services/issuing/card_service.rb +0 -463
  814. data/lib/stripe/services/issuing/cardholder_service.rb +0 -526
  815. data/lib/stripe/services/issuing/dispute_service.rb +0 -633
  816. data/lib/stripe/services/issuing/personalization_design_service.rb +0 -193
  817. data/lib/stripe/services/issuing/physical_bundle_service.rb +0 -40
  818. data/lib/stripe/services/issuing/token_service.rb +0 -73
  819. data/lib/stripe/services/issuing/transaction_service.rb +0 -81
  820. data/lib/stripe/services/issuing_service.rb +1 -5
  821. data/lib/stripe/services/mandate_service.rb +0 -49
  822. data/lib/stripe/services/payment_intent_service.rb +0 -12747
  823. data/lib/stripe/services/payment_link_line_item_service.rb +0 -18
  824. data/lib/stripe/services/payment_link_service.rb +0 -1352
  825. data/lib/stripe/services/payment_method_configuration_service.rb +0 -2466
  826. data/lib/stripe/services/payment_method_domain_service.rb +0 -76
  827. data/lib/stripe/services/payment_method_service.rb +0 -881
  828. data/lib/stripe/services/payout_service.rb +0 -163
  829. data/lib/stripe/services/plan_service.rb +0 -248
  830. data/lib/stripe/services/price_service.rb +0 -512
  831. data/lib/stripe/services/product_feature_service.rb +0 -41
  832. data/lib/stripe/services/product_service.rb +0 -424
  833. data/lib/stripe/services/promotion_code_service.rb +1 -187
  834. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +0 -18
  835. data/lib/stripe/services/quote_line_item_service.rb +0 -18
  836. data/lib/stripe/services/quote_service.rb +1 -2344
  837. data/lib/stripe/services/radar/early_fraud_warning_service.rb +0 -61
  838. data/lib/stripe/services/radar/value_list_item_service.rb +0 -78
  839. data/lib/stripe/services/radar/value_list_service.rb +0 -102
  840. data/lib/stripe/services/refund_service.rb +0 -137
  841. data/lib/stripe/services/reporting/report_run_service.rb +0 -106
  842. data/lib/stripe/services/reporting/report_type_service.rb +0 -18
  843. data/lib/stripe/services/review_service.rb +0 -56
  844. data/lib/stripe/services/setup_attempt_service.rb +0 -51
  845. data/lib/stripe/services/setup_intent_service.rb +0 -3957
  846. data/lib/stripe/services/shipping_rate_service.rb +0 -200
  847. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +0 -27
  848. data/lib/stripe/services/source_service.rb +0 -601
  849. data/lib/stripe/services/source_transaction_service.rb +0 -18
  850. data/lib/stripe/services/subscription_item_service.rb +0 -383
  851. data/lib/stripe/services/subscription_schedule_service.rb +0 -2196
  852. data/lib/stripe/services/subscription_service.rb +0 -1894
  853. data/lib/stripe/services/tax/calculation_line_item_service.rb +0 -18
  854. data/lib/stripe/services/tax/calculation_service.rb +0 -209
  855. data/lib/stripe/services/tax/registration_service.rb +0 -2063
  856. data/lib/stripe/services/tax/settings_service.rb +0 -74
  857. data/lib/stripe/services/tax/transaction_line_item_service.rb +0 -18
  858. data/lib/stripe/services/tax/transaction_service.rb +0 -111
  859. data/lib/stripe/services/tax_code_service.rb +0 -27
  860. data/lib/stripe/services/tax_id_service.rb +0 -84
  861. data/lib/stripe/services/tax_rate_service.rb +0 -155
  862. data/lib/stripe/services/tax_service.rb +1 -3
  863. data/lib/stripe/services/terminal/configuration_service.rb +0 -1212
  864. data/lib/stripe/services/terminal/connection_token_service.rb +0 -12
  865. data/lib/stripe/services/terminal/location_service.rb +0 -143
  866. data/lib/stripe/services/terminal/reader_service.rb +0 -427
  867. data/lib/stripe/services/terminal_service.rb +1 -3
  868. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +0 -738
  869. data/lib/stripe/services/test_helpers/customer_service.rb +0 -18
  870. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +0 -745
  871. data/lib/stripe/services/test_helpers/issuing/card_service.rb +0 -45
  872. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +0 -41
  873. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +0 -632
  874. data/lib/stripe/services/test_helpers/refund_service.rb +0 -9
  875. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +0 -87
  876. data/lib/stripe/services/test_helpers/test_clock_service.rb +0 -56
  877. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +0 -38
  878. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +0 -87
  879. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +0 -87
  880. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +0 -84
  881. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +0 -84
  882. data/lib/stripe/services/token_service.rb +0 -1201
  883. data/lib/stripe/services/topup_service.rb +0 -142
  884. data/lib/stripe/services/transfer_reversal_service.rb +0 -66
  885. data/lib/stripe/services/transfer_service.rb +0 -123
  886. data/lib/stripe/services/treasury/credit_reversal_service.rb +0 -59
  887. data/lib/stripe/services/treasury/debit_reversal_service.rb +0 -63
  888. data/lib/stripe/services/treasury/financial_account_features_service.rb +0 -169
  889. data/lib/stripe/services/treasury/financial_account_service.rb +0 -502
  890. data/lib/stripe/services/treasury/inbound_transfer_service.rb +0 -88
  891. data/lib/stripe/services/treasury/outbound_payment_service.rb +0 -258
  892. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -148
  893. data/lib/stripe/services/treasury/received_credit_service.rb +0 -52
  894. data/lib/stripe/services/treasury/received_debit_service.rb +0 -40
  895. data/lib/stripe/services/treasury/transaction_entry_service.rb +0 -87
  896. data/lib/stripe/services/treasury/transaction_service.rb +0 -95
  897. data/lib/stripe/services/v1_services.rb +1 -10
  898. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +0 -23
  899. data/lib/stripe/services/v2/billing/meter_event_service.rb +0 -25
  900. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +0 -2
  901. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +0 -33
  902. data/lib/stripe/services/v2/core/event_destination_service.rb +0 -137
  903. data/lib/stripe/services/v2/core/event_service.rb +0 -16
  904. data/lib/stripe/services/v2/core_service.rb +1 -4
  905. data/lib/stripe/services/v2_services.rb +1 -4
  906. data/lib/stripe/services/webhook_endpoint_service.rb +0 -95
  907. data/lib/stripe/services.rb +0 -54
  908. data/lib/stripe/stripe_client.rb +8 -5
  909. data/lib/stripe/stripe_configuration.rb +2 -9
  910. data/lib/stripe/stripe_context.rb +68 -0
  911. data/lib/stripe/stripe_object.rb +34 -10
  912. data/lib/stripe/util.rb +25 -20
  913. data/lib/stripe/version.rb +1 -1
  914. data/lib/stripe.rb +3 -54
  915. data/rbi/stripe/resources/v2/core/event_notification.rbi +43 -0
  916. data/rbi/stripe/stripe_client.rbi +17 -0
  917. data/rbi/stripe.rbi +121931 -190301
  918. metadata +599 -189
  919. data/API_VERSION +0 -1
  920. data/CHANGELOG.md +0 -2780
  921. data/CODE_OF_CONDUCT.md +0 -77
  922. data/CONTRIBUTING.md +0 -25
  923. data/CONTRIBUTORS +0 -3
  924. data/Gemfile +0 -41
  925. data/History.txt +0 -1
  926. data/LICENSE +0 -21
  927. data/Makefile +0 -22
  928. data/OPENAPI_VERSION +0 -1
  929. data/README.md +0 -424
  930. data/Rakefile +0 -34
  931. data/VERSION +0 -1
  932. data/examples/README.md +0 -16
  933. data/examples/example_template.rb +0 -36
  934. data/examples/meter_event_stream.rb +0 -57
  935. data/examples/thinevent_webhook_handler.rb +0 -39
  936. data/justfile +0 -43
  937. data/lib/stripe/events/v2_core_account_closed_event.rb +0 -21
  938. data/lib/stripe/events/v2_core_account_created_event.rb +0 -21
  939. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +0 -23
  940. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +0 -21
  941. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +0 -23
  942. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +0 -21
  943. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +0 -23
  944. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +0 -21
  945. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +0 -23
  946. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +0 -21
  947. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +0 -21
  948. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +0 -21
  949. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +0 -21
  950. data/lib/stripe/events/v2_core_account_link_returned_event.rb +0 -13
  951. data/lib/stripe/events/v2_core_account_person_created_event.rb +0 -23
  952. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +0 -23
  953. data/lib/stripe/events/v2_core_account_person_updated_event.rb +0 -23
  954. data/lib/stripe/events/v2_core_account_updated_event.rb +0 -21
  955. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +0 -21
  956. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +0 -21
  957. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +0 -21
  958. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +0 -21
  959. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +0 -21
  960. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +0 -23
  961. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +0 -21
  962. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +0 -21
  963. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +0 -21
  964. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +0 -21
  965. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +0 -21
  966. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +0 -21
  967. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +0 -21
  968. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +0 -21
  969. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +0 -21
  970. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +0 -21
  971. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +0 -21
  972. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +0 -21
  973. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +0 -21
  974. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +0 -21
  975. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +0 -21
  976. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +0 -21
  977. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +0 -21
  978. data/lib/stripe/events/v2_money_management_payout_method_updated_event.rb +0 -21
  979. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +0 -23
  980. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +0 -21
  981. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +0 -21
  982. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +0 -21
  983. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +0 -21
  984. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +0 -21
  985. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +0 -21
  986. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +0 -21
  987. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +0 -21
  988. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +0 -21
  989. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +0 -21
  990. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +0 -21
  991. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +0 -22
  992. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +0 -21
  993. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +0 -21
  994. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +0 -21
  995. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +0 -21
  996. data/lib/stripe/resources/account_notice.rb +0 -123
  997. data/lib/stripe/resources/billing/meter_usage.rb +0 -23
  998. data/lib/stripe/resources/billing/meter_usage_row.rb +0 -28
  999. data/lib/stripe/resources/capital/financing_offer.rb +0 -179
  1000. data/lib/stripe/resources/capital/financing_summary.rb +0 -55
  1001. data/lib/stripe/resources/capital/financing_transaction.rb +0 -114
  1002. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  1003. data/lib/stripe/resources/financial_connections/institution.rb +0 -92
  1004. data/lib/stripe/resources/fx_quote.rb +0 -186
  1005. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -602
  1006. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -82
  1007. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -86
  1008. data/lib/stripe/resources/issuing/settlement.rb +0 -53
  1009. data/lib/stripe/resources/margin.rb +0 -115
  1010. data/lib/stripe/resources/order.rb +0 -2958
  1011. data/lib/stripe/resources/payment_attempt_record.rb +0 -1181
  1012. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +0 -72
  1013. data/lib/stripe/resources/payment_record.rb +0 -1727
  1014. data/lib/stripe/resources/privacy/redaction_job.rb +0 -298
  1015. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +0 -33
  1016. data/lib/stripe/resources/quote_line.rb +0 -274
  1017. data/lib/stripe/resources/quote_preview_invoice.rb +0 -680
  1018. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -395
  1019. data/lib/stripe/resources/tax/association.rb +0 -66
  1020. data/lib/stripe/resources/tax/form.rb +0 -211
  1021. data/lib/stripe/resources/terminal/onboarding_link.rb +0 -84
  1022. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -31
  1023. data/lib/stripe/resources/v2/core/account.rb +0 -1938
  1024. data/lib/stripe/resources/v2/core/account_link.rb +0 -72
  1025. data/lib/stripe/resources/v2/core/person.rb +0 -276
  1026. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +0 -74
  1027. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +0 -39
  1028. data/lib/stripe/resources/v2/event.rb +0 -41
  1029. data/lib/stripe/resources/v2/event_destination.rb +0 -73
  1030. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +0 -20
  1031. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +0 -22
  1032. data/lib/stripe/resources/v2/money_management/adjustment.rb +0 -51
  1033. data/lib/stripe/resources/v2/money_management/financial_account.rb +0 -79
  1034. data/lib/stripe/resources/v2/money_management/financial_address.rb +0 -68
  1035. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +0 -94
  1036. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +0 -129
  1037. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +0 -82
  1038. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +0 -45
  1039. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +0 -117
  1040. data/lib/stripe/resources/v2/money_management/payout_method.rb +0 -77
  1041. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +0 -49
  1042. data/lib/stripe/resources/v2/money_management/received_credit.rb +0 -122
  1043. data/lib/stripe/resources/v2/money_management/received_debit.rb +0 -84
  1044. data/lib/stripe/resources/v2/money_management/transaction.rb +0 -80
  1045. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +0 -70
  1046. data/lib/stripe/resources/v2/payments/off_session_payment.rb +0 -89
  1047. data/lib/stripe/services/account_notice_service.rb +0 -101
  1048. data/lib/stripe/services/billing/meter_usage_service.rb +0 -76
  1049. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  1050. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  1051. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  1052. data/lib/stripe/services/capital_service.rb +0 -15
  1053. data/lib/stripe/services/external_account_service.rb +0 -317
  1054. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +0 -37
  1055. data/lib/stripe/services/financial_connections/institution_service.rb +0 -57
  1056. data/lib/stripe/services/fx_quote_service.rb +0 -123
  1057. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  1058. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  1059. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  1060. data/lib/stripe/services/margin_service.rb +0 -119
  1061. data/lib/stripe/services/order_service.rb +0 -2388
  1062. data/lib/stripe/services/payment_attempt_record_service.rb +0 -52
  1063. data/lib/stripe/services/payment_record_service.rb +0 -562
  1064. data/lib/stripe/services/privacy/redaction_job_service.rb +0 -240
  1065. data/lib/stripe/services/privacy/redaction_job_validation_error_service.rb +0 -37
  1066. data/lib/stripe/services/privacy_service.rb +0 -13
  1067. data/lib/stripe/services/tax/association_service.rb +0 -31
  1068. data/lib/stripe/services/tax/form_service.rb +0 -100
  1069. data/lib/stripe/services/terminal/onboarding_link_service.rb +0 -56
  1070. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  1071. data/lib/stripe/services/v2/core/account_link_service.rb +0 -114
  1072. data/lib/stripe/services/v2/core/account_service.rb +0 -4536
  1073. data/lib/stripe/services/v2/core/accounts/person_service.rb +0 -1045
  1074. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +0 -130
  1075. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +0 -107
  1076. data/lib/stripe/services/v2/core/vault_service.rb +0 -18
  1077. data/lib/stripe/services/v2/money_management/adjustment_service.rb +0 -74
  1078. data/lib/stripe/services/v2/money_management/financial_account_service.rb +0 -119
  1079. data/lib/stripe/services/v2/money_management/financial_address_service.rb +0 -82
  1080. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +0 -125
  1081. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +0 -95
  1082. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +0 -199
  1083. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +0 -235
  1084. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +0 -172
  1085. data/lib/stripe/services/v2/money_management/payout_method_service.rb +0 -90
  1086. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +0 -32
  1087. data/lib/stripe/services/v2/money_management/received_credit_service.rb +0 -70
  1088. data/lib/stripe/services/v2/money_management/received_debit_service.rb +0 -43
  1089. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +0 -69
  1090. data/lib/stripe/services/v2/money_management/transaction_service.rb +0 -73
  1091. data/lib/stripe/services/v2/money_management_service.rb +0 -31
  1092. data/lib/stripe/services/v2/payment_service.rb +0 -15
  1093. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +0 -152
  1094. data/lib/stripe/services/v2/test_helper_service.rb +0 -15
  1095. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +0 -53
  1096. data/lib/stripe/thin_event.rb +0 -37
  1097. data/stripe.gemspec +0 -47
@@ -10,3842 +10,6 @@ module Stripe
10
10
  @line_items = Stripe::InvoiceLineItemService.new(@requestor)
11
11
  end
12
12
 
13
- class DeleteParams < Stripe::RequestParams; end
14
-
15
- class RetrieveParams < Stripe::RequestParams
16
- # Specifies which fields in the response should be expanded.
17
- attr_accessor :expand
18
-
19
- def initialize(expand: nil)
20
- @expand = expand
21
- end
22
- end
23
-
24
- class UpdateParams < Stripe::RequestParams
25
- class AmountsDue < Stripe::RequestParams
26
- # The amount in cents (or local equivalent).
27
- attr_accessor :amount
28
- # Number of days from when invoice is finalized until the payment is due.
29
- attr_accessor :days_until_due
30
- # An arbitrary string attached to the object. Often useful for displaying to users.
31
- attr_accessor :description
32
- # Date on which a payment plan’s payment is due.
33
- attr_accessor :due_date
34
-
35
- def initialize(amount: nil, days_until_due: nil, description: nil, due_date: nil)
36
- @amount = amount
37
- @days_until_due = days_until_due
38
- @description = description
39
- @due_date = due_date
40
- end
41
- end
42
-
43
- class AutomaticTax < Stripe::RequestParams
44
- class Liability < Stripe::RequestParams
45
- # The connected account being referenced when `type` is `account`.
46
- attr_accessor :account
47
- # Type of the account referenced in the request.
48
- attr_accessor :type
49
-
50
- def initialize(account: nil, type: nil)
51
- @account = account
52
- @type = type
53
- end
54
- end
55
- # Whether Stripe automatically computes tax on this invoice. Note that incompatible invoice items (invoice items with manually specified [tax rates](https://stripe.com/docs/api/tax_rates), negative amounts, or `tax_behavior=unspecified`) cannot be added to automatic tax invoices.
56
- attr_accessor :enabled
57
- # The account that's liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.
58
- attr_accessor :liability
59
-
60
- def initialize(enabled: nil, liability: nil)
61
- @enabled = enabled
62
- @liability = liability
63
- end
64
- end
65
-
66
- class CustomField < Stripe::RequestParams
67
- # The name of the custom field. This may be up to 40 characters.
68
- attr_accessor :name
69
- # The value of the custom field. This may be up to 140 characters.
70
- attr_accessor :value
71
-
72
- def initialize(name: nil, value: nil)
73
- @name = name
74
- @value = value
75
- end
76
- end
77
-
78
- class Discount < Stripe::RequestParams
79
- class DiscountEnd < Stripe::RequestParams
80
- class Duration < Stripe::RequestParams
81
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
82
- attr_accessor :interval
83
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
84
- attr_accessor :interval_count
85
-
86
- def initialize(interval: nil, interval_count: nil)
87
- @interval = interval
88
- @interval_count = interval_count
89
- end
90
- end
91
- # Time span for the redeemed discount.
92
- attr_accessor :duration
93
- # A precise Unix timestamp for the discount to end. Must be in the future.
94
- attr_accessor :timestamp
95
- # The type of calculation made to determine when the discount ends.
96
- attr_accessor :type
97
-
98
- def initialize(duration: nil, timestamp: nil, type: nil)
99
- @duration = duration
100
- @timestamp = timestamp
101
- @type = type
102
- end
103
- end
104
- # ID of the coupon to create a new discount for.
105
- attr_accessor :coupon
106
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
107
- attr_accessor :discount
108
- # Details to determine how long the discount should be applied for.
109
- attr_accessor :discount_end
110
- # ID of the promotion code to create a new discount for.
111
- attr_accessor :promotion_code
112
-
113
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
114
- @coupon = coupon
115
- @discount = discount
116
- @discount_end = discount_end
117
- @promotion_code = promotion_code
118
- end
119
- end
120
-
121
- class Issuer < Stripe::RequestParams
122
- # The connected account being referenced when `type` is `account`.
123
- attr_accessor :account
124
- # Type of the account referenced in the request.
125
- attr_accessor :type
126
-
127
- def initialize(account: nil, type: nil)
128
- @account = account
129
- @type = type
130
- end
131
- end
132
-
133
- class PaymentSettings < Stripe::RequestParams
134
- class PaymentMethodOptions < Stripe::RequestParams
135
- class AcssDebit < Stripe::RequestParams
136
- class MandateOptions < Stripe::RequestParams
137
- # Transaction type of the mandate.
138
- attr_accessor :transaction_type
139
-
140
- def initialize(transaction_type: nil)
141
- @transaction_type = transaction_type
142
- end
143
- end
144
- # Additional fields for Mandate creation
145
- attr_accessor :mandate_options
146
- # Verification method for the intent
147
- attr_accessor :verification_method
148
-
149
- def initialize(mandate_options: nil, verification_method: nil)
150
- @mandate_options = mandate_options
151
- @verification_method = verification_method
152
- end
153
- end
154
-
155
- class Bancontact < Stripe::RequestParams
156
- # Preferred language of the Bancontact authorization page that the customer is redirected to.
157
- attr_accessor :preferred_language
158
-
159
- def initialize(preferred_language: nil)
160
- @preferred_language = preferred_language
161
- end
162
- end
163
-
164
- class Card < Stripe::RequestParams
165
- class Installments < Stripe::RequestParams
166
- class Plan < Stripe::RequestParams
167
- # For `fixed_count` installment plans, this is required. It represents the number of installment payments your customer will make to their credit card.
168
- attr_accessor :count
169
- # For `fixed_count` installment plans, this is required. It represents the interval between installment payments your customer will make to their credit card.
170
- # One of `month`.
171
- attr_accessor :interval
172
- # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
173
- attr_accessor :type
174
-
175
- def initialize(count: nil, interval: nil, type: nil)
176
- @count = count
177
- @interval = interval
178
- @type = type
179
- end
180
- end
181
- # Setting to true enables installments for this invoice.
182
- # Setting to false will prevent any selected plan from applying to a payment.
183
- attr_accessor :enabled
184
- # The selected installment plan to use for this invoice.
185
- attr_accessor :plan
186
-
187
- def initialize(enabled: nil, plan: nil)
188
- @enabled = enabled
189
- @plan = plan
190
- end
191
- end
192
- # Installment configuration for payments attempted on this invoice.
193
- #
194
- # For more information, see the [installments integration guide](https://stripe.com/docs/payments/installments).
195
- attr_accessor :installments
196
- # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
197
- attr_accessor :request_three_d_secure
198
-
199
- def initialize(installments: nil, request_three_d_secure: nil)
200
- @installments = installments
201
- @request_three_d_secure = request_three_d_secure
202
- end
203
- end
204
-
205
- class CustomerBalance < Stripe::RequestParams
206
- class BankTransfer < Stripe::RequestParams
207
- class EuBankTransfer < Stripe::RequestParams
208
- # The desired country code of the bank account information. Permitted values include: `BE`, `DE`, `ES`, `FR`, `IE`, or `NL`.
209
- attr_accessor :country
210
-
211
- def initialize(country: nil)
212
- @country = country
213
- end
214
- end
215
- # Configuration for eu_bank_transfer funding type.
216
- attr_accessor :eu_bank_transfer
217
- # The bank transfer type that can be used for funding. Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, `mx_bank_transfer`, or `us_bank_transfer`.
218
- attr_accessor :type
219
-
220
- def initialize(eu_bank_transfer: nil, type: nil)
221
- @eu_bank_transfer = eu_bank_transfer
222
- @type = type
223
- end
224
- end
225
- # Configuration for the bank transfer funding type, if the `funding_type` is set to `bank_transfer`.
226
- attr_accessor :bank_transfer
227
- # The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
228
- attr_accessor :funding_type
229
-
230
- def initialize(bank_transfer: nil, funding_type: nil)
231
- @bank_transfer = bank_transfer
232
- @funding_type = funding_type
233
- end
234
- end
235
-
236
- class IdBankTransfer < Stripe::RequestParams; end
237
- class Konbini < Stripe::RequestParams; end
238
- class SepaDebit < Stripe::RequestParams; end
239
-
240
- class Upi < Stripe::RequestParams
241
- class MandateOptions < Stripe::RequestParams
242
- # Amount to be charged for future payments.
243
- attr_accessor :amount
244
- # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
245
- attr_accessor :amount_type
246
- # A description of the mandate or subscription that is meant to be displayed to the customer.
247
- attr_accessor :description
248
- # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
249
- attr_accessor :end_date
250
-
251
- def initialize(amount: nil, amount_type: nil, description: nil, end_date: nil)
252
- @amount = amount
253
- @amount_type = amount_type
254
- @description = description
255
- @end_date = end_date
256
- end
257
- end
258
- # Configuration options for setting up an eMandate
259
- attr_accessor :mandate_options
260
-
261
- def initialize(mandate_options: nil)
262
- @mandate_options = mandate_options
263
- end
264
- end
265
-
266
- class UsBankAccount < Stripe::RequestParams
267
- class FinancialConnections < Stripe::RequestParams
268
- class Filters < Stripe::RequestParams
269
- # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
270
- attr_accessor :account_subcategories
271
- # ID of the institution to use to filter for selectable accounts.
272
- attr_accessor :institution
273
-
274
- def initialize(account_subcategories: nil, institution: nil)
275
- @account_subcategories = account_subcategories
276
- @institution = institution
277
- end
278
- end
279
- # Provide filters for the linked accounts that the customer can select for the payment method.
280
- attr_accessor :filters
281
- # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
282
- attr_accessor :permissions
283
- # List of data features that you would like to retrieve upon account creation.
284
- attr_accessor :prefetch
285
-
286
- def initialize(filters: nil, permissions: nil, prefetch: nil)
287
- @filters = filters
288
- @permissions = permissions
289
- @prefetch = prefetch
290
- end
291
- end
292
- # Additional fields for Financial Connections Session creation
293
- attr_accessor :financial_connections
294
- # Verification method for the intent
295
- attr_accessor :verification_method
296
-
297
- def initialize(financial_connections: nil, verification_method: nil)
298
- @financial_connections = financial_connections
299
- @verification_method = verification_method
300
- end
301
- end
302
- # If paying by `acss_debit`, this sub-hash contains details about the Canadian pre-authorized debit payment method options to pass to the invoice’s PaymentIntent.
303
- attr_accessor :acss_debit
304
- # If paying by `bancontact`, this sub-hash contains details about the Bancontact payment method options to pass to the invoice’s PaymentIntent.
305
- attr_accessor :bancontact
306
- # If paying by `card`, this sub-hash contains details about the Card payment method options to pass to the invoice’s PaymentIntent.
307
- attr_accessor :card
308
- # If paying by `customer_balance`, this sub-hash contains details about the Bank transfer payment method options to pass to the invoice’s PaymentIntent.
309
- attr_accessor :customer_balance
310
- # If paying by `id_bank_transfer`, this sub-hash contains details about the Indonesia bank transfer payment method options to pass to the invoice’s PaymentIntent.
311
- attr_accessor :id_bank_transfer
312
- # If paying by `konbini`, this sub-hash contains details about the Konbini payment method options to pass to the invoice’s PaymentIntent.
313
- attr_accessor :konbini
314
- # If paying by `sepa_debit`, this sub-hash contains details about the SEPA Direct Debit payment method options to pass to the invoice’s PaymentIntent.
315
- attr_accessor :sepa_debit
316
- # If paying by `upi`, this sub-hash contains details about the UPI payment method options to pass to the invoice’s PaymentIntent.
317
- attr_accessor :upi
318
- # If paying by `us_bank_account`, this sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent.
319
- attr_accessor :us_bank_account
320
-
321
- def initialize(
322
- acss_debit: nil,
323
- bancontact: nil,
324
- card: nil,
325
- customer_balance: nil,
326
- id_bank_transfer: nil,
327
- konbini: nil,
328
- sepa_debit: nil,
329
- upi: nil,
330
- us_bank_account: nil
331
- )
332
- @acss_debit = acss_debit
333
- @bancontact = bancontact
334
- @card = card
335
- @customer_balance = customer_balance
336
- @id_bank_transfer = id_bank_transfer
337
- @konbini = konbini
338
- @sepa_debit = sepa_debit
339
- @upi = upi
340
- @us_bank_account = us_bank_account
341
- end
342
- end
343
- # ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the invoice's default_payment_method or default_source, if set.
344
- attr_accessor :default_mandate
345
- # Payment-method-specific configuration to provide to the invoice’s PaymentIntent.
346
- attr_accessor :payment_method_options
347
- # The list of payment method types (e.g. card) to provide to the invoice’s PaymentIntent. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice). Should not be specified with payment_method_configuration
348
- attr_accessor :payment_method_types
349
-
350
- def initialize(default_mandate: nil, payment_method_options: nil, payment_method_types: nil)
351
- @default_mandate = default_mandate
352
- @payment_method_options = payment_method_options
353
- @payment_method_types = payment_method_types
354
- end
355
- end
356
-
357
- class Rendering < Stripe::RequestParams
358
- class Pdf < Stripe::RequestParams
359
- # Page size for invoice PDF. Can be set to `a4`, `letter`, or `auto`.
360
- # If set to `auto`, invoice PDF page size defaults to `a4` for customers with
361
- # Japanese locale and `letter` for customers with other locales.
362
- attr_accessor :page_size
363
-
364
- def initialize(page_size: nil)
365
- @page_size = page_size
366
- end
367
- end
368
- # How line-item prices and amounts will be displayed with respect to tax on invoice PDFs. One of `exclude_tax` or `include_inclusive_tax`. `include_inclusive_tax` will include inclusive tax (and exclude exclusive tax) in invoice PDF amounts. `exclude_tax` will exclude all tax (inclusive and exclusive alike) from invoice PDF amounts.
369
- attr_accessor :amount_tax_display
370
- # Invoice pdf rendering options
371
- attr_accessor :pdf
372
- # ID of the invoice rendering template to use for this invoice.
373
- attr_accessor :template
374
- # The specific version of invoice rendering template to use for this invoice.
375
- attr_accessor :template_version
376
-
377
- def initialize(amount_tax_display: nil, pdf: nil, template: nil, template_version: nil)
378
- @amount_tax_display = amount_tax_display
379
- @pdf = pdf
380
- @template = template
381
- @template_version = template_version
382
- end
383
- end
384
-
385
- class ShippingCost < Stripe::RequestParams
386
- class ShippingRateData < Stripe::RequestParams
387
- class DeliveryEstimate < Stripe::RequestParams
388
- class Maximum < Stripe::RequestParams
389
- # A unit of time.
390
- attr_accessor :unit
391
- # Must be greater than 0.
392
- attr_accessor :value
393
-
394
- def initialize(unit: nil, value: nil)
395
- @unit = unit
396
- @value = value
397
- end
398
- end
399
-
400
- class Minimum < Stripe::RequestParams
401
- # A unit of time.
402
- attr_accessor :unit
403
- # Must be greater than 0.
404
- attr_accessor :value
405
-
406
- def initialize(unit: nil, value: nil)
407
- @unit = unit
408
- @value = value
409
- end
410
- end
411
- # The upper bound of the estimated range. If empty, represents no upper bound i.e., infinite.
412
- attr_accessor :maximum
413
- # The lower bound of the estimated range. If empty, represents no lower bound.
414
- attr_accessor :minimum
415
-
416
- def initialize(maximum: nil, minimum: nil)
417
- @maximum = maximum
418
- @minimum = minimum
419
- end
420
- end
421
-
422
- class FixedAmount < Stripe::RequestParams
423
- class CurrencyOptions < Stripe::RequestParams
424
- # A non-negative integer in cents representing how much to charge.
425
- attr_accessor :amount
426
- # Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
427
- attr_accessor :tax_behavior
428
-
429
- def initialize(amount: nil, tax_behavior: nil)
430
- @amount = amount
431
- @tax_behavior = tax_behavior
432
- end
433
- end
434
- # A non-negative integer in cents representing how much to charge.
435
- attr_accessor :amount
436
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
437
- attr_accessor :currency
438
- # Shipping rates defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies).
439
- attr_accessor :currency_options
440
-
441
- def initialize(amount: nil, currency: nil, currency_options: nil)
442
- @amount = amount
443
- @currency = currency
444
- @currency_options = currency_options
445
- end
446
- end
447
- # The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.
448
- attr_accessor :delivery_estimate
449
- # The name of the shipping rate, meant to be displayable to the customer. This will appear on CheckoutSessions.
450
- attr_accessor :display_name
451
- # Describes a fixed amount to charge for shipping. Must be present if type is `fixed_amount`.
452
- attr_accessor :fixed_amount
453
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
454
- attr_accessor :metadata
455
- # Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
456
- attr_accessor :tax_behavior
457
- # A [tax code](https://stripe.com/docs/tax/tax-categories) ID. The Shipping tax code is `txcd_92010001`.
458
- attr_accessor :tax_code
459
- # The type of calculation to use on the shipping rate.
460
- attr_accessor :type
461
-
462
- def initialize(
463
- delivery_estimate: nil,
464
- display_name: nil,
465
- fixed_amount: nil,
466
- metadata: nil,
467
- tax_behavior: nil,
468
- tax_code: nil,
469
- type: nil
470
- )
471
- @delivery_estimate = delivery_estimate
472
- @display_name = display_name
473
- @fixed_amount = fixed_amount
474
- @metadata = metadata
475
- @tax_behavior = tax_behavior
476
- @tax_code = tax_code
477
- @type = type
478
- end
479
- end
480
- # The ID of the shipping rate to use for this order.
481
- attr_accessor :shipping_rate
482
- # Parameters to create a new ad-hoc shipping rate for this order.
483
- attr_accessor :shipping_rate_data
484
-
485
- def initialize(shipping_rate: nil, shipping_rate_data: nil)
486
- @shipping_rate = shipping_rate
487
- @shipping_rate_data = shipping_rate_data
488
- end
489
- end
490
-
491
- class ShippingDetails < Stripe::RequestParams
492
- class Address < Stripe::RequestParams
493
- # City, district, suburb, town, or village.
494
- attr_accessor :city
495
- # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
496
- attr_accessor :country
497
- # Address line 1 (e.g., street, PO Box, or company name).
498
- attr_accessor :line1
499
- # Address line 2 (e.g., apartment, suite, unit, or building).
500
- attr_accessor :line2
501
- # ZIP or postal code.
502
- attr_accessor :postal_code
503
- # State, county, province, or region.
504
- attr_accessor :state
505
-
506
- def initialize(
507
- city: nil,
508
- country: nil,
509
- line1: nil,
510
- line2: nil,
511
- postal_code: nil,
512
- state: nil
513
- )
514
- @city = city
515
- @country = country
516
- @line1 = line1
517
- @line2 = line2
518
- @postal_code = postal_code
519
- @state = state
520
- end
521
- end
522
- # Shipping address
523
- attr_accessor :address
524
- # Recipient name.
525
- attr_accessor :name
526
- # Recipient phone (including extension)
527
- attr_accessor :phone
528
-
529
- def initialize(address: nil, name: nil, phone: nil)
530
- @address = address
531
- @name = name
532
- @phone = phone
533
- end
534
- end
535
-
536
- class TransferData < Stripe::RequestParams
537
- # The amount that will be transferred automatically when the invoice is paid. If no amount is set, the full amount is transferred.
538
- attr_accessor :amount
539
- # ID of an existing, connected Stripe account.
540
- attr_accessor :destination
541
-
542
- def initialize(amount: nil, destination: nil)
543
- @amount = amount
544
- @destination = destination
545
- end
546
- end
547
- # The account tax IDs associated with the invoice. Only editable when the invoice is a draft.
548
- attr_accessor :account_tax_ids
549
- # List of expected payments and corresponding due dates. Valid only for invoices where `collection_method=send_invoice`.
550
- attr_accessor :amounts_due
551
- # A fee in cents (or local equivalent) that will be applied to the invoice and transferred to the application owner's Stripe account. The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees [documentation](https://stripe.com/docs/billing/invoices/connect#collecting-fees).
552
- attr_accessor :application_fee_amount
553
- # Controls whether Stripe performs [automatic collection](https://stripe.com/docs/invoicing/integration/automatic-advancement-collection) of the invoice.
554
- attr_accessor :auto_advance
555
- # Settings for automatic tax lookup for this invoice.
556
- attr_accessor :automatic_tax
557
- # The time when this invoice should be scheduled to finalize (up to 5 years in the future). The invoice is finalized at this time if it's still in draft state. To turn off automatic finalization, set `auto_advance` to false.
558
- attr_accessor :automatically_finalizes_at
559
- # Either `charge_automatically` or `send_invoice`. This field can be updated only on `draft` invoices.
560
- attr_accessor :collection_method
561
- # A list of up to 4 custom fields to be displayed on the invoice. If a value for `custom_fields` is specified, the list specified will replace the existing custom field list on this invoice. Pass an empty string to remove previously-defined fields.
562
- attr_accessor :custom_fields
563
- # The number of days from which the invoice is created until it is due. Only valid for invoices where `collection_method=send_invoice`. This field can only be updated on `draft` invoices.
564
- attr_accessor :days_until_due
565
- # The ids of the margins to apply to the invoice. Can be overridden by line item `margins`.
566
- attr_accessor :default_margins
567
- # ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription's default payment method, if any, or to the default payment method in the customer's invoice settings.
568
- attr_accessor :default_payment_method
569
- # ID of the default payment source for the invoice. It must belong to the customer associated with the invoice and be in a chargeable state. If not set, defaults to the subscription's default source, if any, or to the customer's default source.
570
- attr_accessor :default_source
571
- # The tax rates that will apply to any line item that does not have `tax_rates` set. Pass an empty string to remove previously-defined tax rates.
572
- attr_accessor :default_tax_rates
573
- # An arbitrary string attached to the object. Often useful for displaying to users. Referenced as 'memo' in the Dashboard.
574
- attr_accessor :description
575
- # The discounts that will apply to the invoice. Pass an empty string to remove previously-defined discounts.
576
- attr_accessor :discounts
577
- # The date on which payment for this invoice is due. Only valid for invoices where `collection_method=send_invoice`. This field can only be updated on `draft` invoices.
578
- attr_accessor :due_date
579
- # The date when this invoice is in effect. Same as `finalized_at` unless overwritten. When defined, this value replaces the system-generated 'Date of issue' printed on the invoice PDF and receipt.
580
- attr_accessor :effective_at
581
- # Specifies which fields in the response should be expanded.
582
- attr_accessor :expand
583
- # Footer to be displayed on the invoice.
584
- attr_accessor :footer
585
- # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
586
- attr_accessor :issuer
587
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
588
- attr_accessor :metadata
589
- # Set the number for this invoice. If no number is present then a number will be assigned automatically when the invoice is finalized. In many markets, regulations require invoices to be unique, sequential and / or gapless. You are responsible for ensuring this is true across all your different invoicing systems in the event that you edit the invoice number using our API. If you use only Stripe for your invoices and do not change invoice numbers, Stripe handles this aspect of compliance for you automatically.
590
- attr_accessor :number
591
- # The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details.
592
- attr_accessor :on_behalf_of
593
- # Configuration settings for the PaymentIntent that is generated when the invoice is finalized.
594
- attr_accessor :payment_settings
595
- # The rendering-related settings that control how the invoice is displayed on customer-facing surfaces such as PDF and Hosted Invoice Page.
596
- attr_accessor :rendering
597
- # Settings for the cost of shipping for this invoice.
598
- attr_accessor :shipping_cost
599
- # Shipping details for the invoice. The Invoice PDF will use the `shipping_details` value if it is set, otherwise the PDF will render the shipping address from the customer.
600
- attr_accessor :shipping_details
601
- # Extra information about a charge for the customer's credit card statement. It must contain at least one letter. If not specified and this invoice is part of a subscription, the default `statement_descriptor` will be set to the first subscription item's product's `statement_descriptor`.
602
- attr_accessor :statement_descriptor
603
- # If specified, the funds from the invoice will be transferred to the destination and the ID of the resulting transfer will be found on the invoice's charge. This will be unset if you POST an empty value.
604
- attr_accessor :transfer_data
605
-
606
- def initialize(
607
- account_tax_ids: nil,
608
- amounts_due: nil,
609
- application_fee_amount: nil,
610
- auto_advance: nil,
611
- automatic_tax: nil,
612
- automatically_finalizes_at: nil,
613
- collection_method: nil,
614
- custom_fields: nil,
615
- days_until_due: nil,
616
- default_margins: nil,
617
- default_payment_method: nil,
618
- default_source: nil,
619
- default_tax_rates: nil,
620
- description: nil,
621
- discounts: nil,
622
- due_date: nil,
623
- effective_at: nil,
624
- expand: nil,
625
- footer: nil,
626
- issuer: nil,
627
- metadata: nil,
628
- number: nil,
629
- on_behalf_of: nil,
630
- payment_settings: nil,
631
- rendering: nil,
632
- shipping_cost: nil,
633
- shipping_details: nil,
634
- statement_descriptor: nil,
635
- transfer_data: nil
636
- )
637
- @account_tax_ids = account_tax_ids
638
- @amounts_due = amounts_due
639
- @application_fee_amount = application_fee_amount
640
- @auto_advance = auto_advance
641
- @automatic_tax = automatic_tax
642
- @automatically_finalizes_at = automatically_finalizes_at
643
- @collection_method = collection_method
644
- @custom_fields = custom_fields
645
- @days_until_due = days_until_due
646
- @default_margins = default_margins
647
- @default_payment_method = default_payment_method
648
- @default_source = default_source
649
- @default_tax_rates = default_tax_rates
650
- @description = description
651
- @discounts = discounts
652
- @due_date = due_date
653
- @effective_at = effective_at
654
- @expand = expand
655
- @footer = footer
656
- @issuer = issuer
657
- @metadata = metadata
658
- @number = number
659
- @on_behalf_of = on_behalf_of
660
- @payment_settings = payment_settings
661
- @rendering = rendering
662
- @shipping_cost = shipping_cost
663
- @shipping_details = shipping_details
664
- @statement_descriptor = statement_descriptor
665
- @transfer_data = transfer_data
666
- end
667
- end
668
-
669
- class ListParams < Stripe::RequestParams
670
- class Created < Stripe::RequestParams
671
- # Minimum value to filter by (exclusive)
672
- attr_accessor :gt
673
- # Minimum value to filter by (inclusive)
674
- attr_accessor :gte
675
- # Maximum value to filter by (exclusive)
676
- attr_accessor :lt
677
- # Maximum value to filter by (inclusive)
678
- attr_accessor :lte
679
-
680
- def initialize(gt: nil, gte: nil, lt: nil, lte: nil)
681
- @gt = gt
682
- @gte = gte
683
- @lt = lt
684
- @lte = lte
685
- end
686
- end
687
-
688
- class DueDate < Stripe::RequestParams
689
- # Minimum value to filter by (exclusive)
690
- attr_accessor :gt
691
- # Minimum value to filter by (inclusive)
692
- attr_accessor :gte
693
- # Maximum value to filter by (exclusive)
694
- attr_accessor :lt
695
- # Maximum value to filter by (inclusive)
696
- attr_accessor :lte
697
-
698
- def initialize(gt: nil, gte: nil, lt: nil, lte: nil)
699
- @gt = gt
700
- @gte = gte
701
- @lt = lt
702
- @lte = lte
703
- end
704
- end
705
- # The collection method of the invoice to retrieve. Either `charge_automatically` or `send_invoice`.
706
- attr_accessor :collection_method
707
- # Only return invoices that were created during the given date interval.
708
- attr_accessor :created
709
- # Only return invoices for the customer specified by this customer ID.
710
- attr_accessor :customer
711
- # Only return invoices for the account specified by this account ID.
712
- attr_accessor :customer_account
713
- # Attribute for param field due_date
714
- attr_accessor :due_date
715
- # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
716
- attr_accessor :ending_before
717
- # Specifies which fields in the response should be expanded.
718
- attr_accessor :expand
719
- # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
720
- attr_accessor :limit
721
- # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
722
- attr_accessor :starting_after
723
- # The status of the invoice, one of `draft`, `open`, `paid`, `uncollectible`, or `void`. [Learn more](https://stripe.com/docs/billing/invoices/workflow#workflow-overview)
724
- attr_accessor :status
725
- # Only return invoices for the subscription specified by this subscription ID.
726
- attr_accessor :subscription
727
-
728
- def initialize(
729
- collection_method: nil,
730
- created: nil,
731
- customer: nil,
732
- customer_account: nil,
733
- due_date: nil,
734
- ending_before: nil,
735
- expand: nil,
736
- limit: nil,
737
- starting_after: nil,
738
- status: nil,
739
- subscription: nil
740
- )
741
- @collection_method = collection_method
742
- @created = created
743
- @customer = customer
744
- @customer_account = customer_account
745
- @due_date = due_date
746
- @ending_before = ending_before
747
- @expand = expand
748
- @limit = limit
749
- @starting_after = starting_after
750
- @status = status
751
- @subscription = subscription
752
- end
753
- end
754
-
755
- class CreateParams < Stripe::RequestParams
756
- class AmountsDue < Stripe::RequestParams
757
- # The amount in cents (or local equivalent).
758
- attr_accessor :amount
759
- # Number of days from when invoice is finalized until the payment is due.
760
- attr_accessor :days_until_due
761
- # An arbitrary string attached to the object. Often useful for displaying to users.
762
- attr_accessor :description
763
- # Date on which a payment plan’s payment is due.
764
- attr_accessor :due_date
765
-
766
- def initialize(amount: nil, days_until_due: nil, description: nil, due_date: nil)
767
- @amount = amount
768
- @days_until_due = days_until_due
769
- @description = description
770
- @due_date = due_date
771
- end
772
- end
773
-
774
- class AutomaticTax < Stripe::RequestParams
775
- class Liability < Stripe::RequestParams
776
- # The connected account being referenced when `type` is `account`.
777
- attr_accessor :account
778
- # Type of the account referenced in the request.
779
- attr_accessor :type
780
-
781
- def initialize(account: nil, type: nil)
782
- @account = account
783
- @type = type
784
- end
785
- end
786
- # Whether Stripe automatically computes tax on this invoice. Note that incompatible invoice items (invoice items with manually specified [tax rates](https://stripe.com/docs/api/tax_rates), negative amounts, or `tax_behavior=unspecified`) cannot be added to automatic tax invoices.
787
- attr_accessor :enabled
788
- # The account that's liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.
789
- attr_accessor :liability
790
-
791
- def initialize(enabled: nil, liability: nil)
792
- @enabled = enabled
793
- @liability = liability
794
- end
795
- end
796
-
797
- class CustomField < Stripe::RequestParams
798
- # The name of the custom field. This may be up to 40 characters.
799
- attr_accessor :name
800
- # The value of the custom field. This may be up to 140 characters.
801
- attr_accessor :value
802
-
803
- def initialize(name: nil, value: nil)
804
- @name = name
805
- @value = value
806
- end
807
- end
808
-
809
- class Discount < Stripe::RequestParams
810
- class DiscountEnd < Stripe::RequestParams
811
- class Duration < Stripe::RequestParams
812
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
813
- attr_accessor :interval
814
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
815
- attr_accessor :interval_count
816
-
817
- def initialize(interval: nil, interval_count: nil)
818
- @interval = interval
819
- @interval_count = interval_count
820
- end
821
- end
822
- # Time span for the redeemed discount.
823
- attr_accessor :duration
824
- # A precise Unix timestamp for the discount to end. Must be in the future.
825
- attr_accessor :timestamp
826
- # The type of calculation made to determine when the discount ends.
827
- attr_accessor :type
828
-
829
- def initialize(duration: nil, timestamp: nil, type: nil)
830
- @duration = duration
831
- @timestamp = timestamp
832
- @type = type
833
- end
834
- end
835
- # ID of the coupon to create a new discount for.
836
- attr_accessor :coupon
837
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
838
- attr_accessor :discount
839
- # Details to determine how long the discount should be applied for.
840
- attr_accessor :discount_end
841
- # ID of the promotion code to create a new discount for.
842
- attr_accessor :promotion_code
843
-
844
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
845
- @coupon = coupon
846
- @discount = discount
847
- @discount_end = discount_end
848
- @promotion_code = promotion_code
849
- end
850
- end
851
-
852
- class FromInvoice < Stripe::RequestParams
853
- # The relation between the new invoice and the original invoice. Currently, only 'revision' is permitted
854
- attr_accessor :action
855
- # The `id` of the invoice that will be cloned.
856
- attr_accessor :invoice
857
-
858
- def initialize(action: nil, invoice: nil)
859
- @action = action
860
- @invoice = invoice
861
- end
862
- end
863
-
864
- class Issuer < Stripe::RequestParams
865
- # The connected account being referenced when `type` is `account`.
866
- attr_accessor :account
867
- # Type of the account referenced in the request.
868
- attr_accessor :type
869
-
870
- def initialize(account: nil, type: nil)
871
- @account = account
872
- @type = type
873
- end
874
- end
875
-
876
- class PaymentSettings < Stripe::RequestParams
877
- class PaymentMethodOptions < Stripe::RequestParams
878
- class AcssDebit < Stripe::RequestParams
879
- class MandateOptions < Stripe::RequestParams
880
- # Transaction type of the mandate.
881
- attr_accessor :transaction_type
882
-
883
- def initialize(transaction_type: nil)
884
- @transaction_type = transaction_type
885
- end
886
- end
887
- # Additional fields for Mandate creation
888
- attr_accessor :mandate_options
889
- # Verification method for the intent
890
- attr_accessor :verification_method
891
-
892
- def initialize(mandate_options: nil, verification_method: nil)
893
- @mandate_options = mandate_options
894
- @verification_method = verification_method
895
- end
896
- end
897
-
898
- class Bancontact < Stripe::RequestParams
899
- # Preferred language of the Bancontact authorization page that the customer is redirected to.
900
- attr_accessor :preferred_language
901
-
902
- def initialize(preferred_language: nil)
903
- @preferred_language = preferred_language
904
- end
905
- end
906
-
907
- class Card < Stripe::RequestParams
908
- class Installments < Stripe::RequestParams
909
- class Plan < Stripe::RequestParams
910
- # For `fixed_count` installment plans, this is required. It represents the number of installment payments your customer will make to their credit card.
911
- attr_accessor :count
912
- # For `fixed_count` installment plans, this is required. It represents the interval between installment payments your customer will make to their credit card.
913
- # One of `month`.
914
- attr_accessor :interval
915
- # Type of installment plan, one of `fixed_count`, `bonus`, or `revolving`.
916
- attr_accessor :type
917
-
918
- def initialize(count: nil, interval: nil, type: nil)
919
- @count = count
920
- @interval = interval
921
- @type = type
922
- end
923
- end
924
- # Setting to true enables installments for this invoice.
925
- # Setting to false will prevent any selected plan from applying to a payment.
926
- attr_accessor :enabled
927
- # The selected installment plan to use for this invoice.
928
- attr_accessor :plan
929
-
930
- def initialize(enabled: nil, plan: nil)
931
- @enabled = enabled
932
- @plan = plan
933
- end
934
- end
935
- # Installment configuration for payments attempted on this invoice.
936
- #
937
- # For more information, see the [installments integration guide](https://stripe.com/docs/payments/installments).
938
- attr_accessor :installments
939
- # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
940
- attr_accessor :request_three_d_secure
941
-
942
- def initialize(installments: nil, request_three_d_secure: nil)
943
- @installments = installments
944
- @request_three_d_secure = request_three_d_secure
945
- end
946
- end
947
-
948
- class CustomerBalance < Stripe::RequestParams
949
- class BankTransfer < Stripe::RequestParams
950
- class EuBankTransfer < Stripe::RequestParams
951
- # The desired country code of the bank account information. Permitted values include: `BE`, `DE`, `ES`, `FR`, `IE`, or `NL`.
952
- attr_accessor :country
953
-
954
- def initialize(country: nil)
955
- @country = country
956
- end
957
- end
958
- # Configuration for eu_bank_transfer funding type.
959
- attr_accessor :eu_bank_transfer
960
- # The bank transfer type that can be used for funding. Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, `mx_bank_transfer`, or `us_bank_transfer`.
961
- attr_accessor :type
962
-
963
- def initialize(eu_bank_transfer: nil, type: nil)
964
- @eu_bank_transfer = eu_bank_transfer
965
- @type = type
966
- end
967
- end
968
- # Configuration for the bank transfer funding type, if the `funding_type` is set to `bank_transfer`.
969
- attr_accessor :bank_transfer
970
- # The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
971
- attr_accessor :funding_type
972
-
973
- def initialize(bank_transfer: nil, funding_type: nil)
974
- @bank_transfer = bank_transfer
975
- @funding_type = funding_type
976
- end
977
- end
978
-
979
- class IdBankTransfer < Stripe::RequestParams; end
980
- class Konbini < Stripe::RequestParams; end
981
- class SepaDebit < Stripe::RequestParams; end
982
-
983
- class Upi < Stripe::RequestParams
984
- class MandateOptions < Stripe::RequestParams
985
- # Amount to be charged for future payments.
986
- attr_accessor :amount
987
- # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
988
- attr_accessor :amount_type
989
- # A description of the mandate or subscription that is meant to be displayed to the customer.
990
- attr_accessor :description
991
- # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
992
- attr_accessor :end_date
993
-
994
- def initialize(amount: nil, amount_type: nil, description: nil, end_date: nil)
995
- @amount = amount
996
- @amount_type = amount_type
997
- @description = description
998
- @end_date = end_date
999
- end
1000
- end
1001
- # Configuration options for setting up an eMandate
1002
- attr_accessor :mandate_options
1003
-
1004
- def initialize(mandate_options: nil)
1005
- @mandate_options = mandate_options
1006
- end
1007
- end
1008
-
1009
- class UsBankAccount < Stripe::RequestParams
1010
- class FinancialConnections < Stripe::RequestParams
1011
- class Filters < Stripe::RequestParams
1012
- # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
1013
- attr_accessor :account_subcategories
1014
- # ID of the institution to use to filter for selectable accounts.
1015
- attr_accessor :institution
1016
-
1017
- def initialize(account_subcategories: nil, institution: nil)
1018
- @account_subcategories = account_subcategories
1019
- @institution = institution
1020
- end
1021
- end
1022
- # Provide filters for the linked accounts that the customer can select for the payment method.
1023
- attr_accessor :filters
1024
- # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
1025
- attr_accessor :permissions
1026
- # List of data features that you would like to retrieve upon account creation.
1027
- attr_accessor :prefetch
1028
-
1029
- def initialize(filters: nil, permissions: nil, prefetch: nil)
1030
- @filters = filters
1031
- @permissions = permissions
1032
- @prefetch = prefetch
1033
- end
1034
- end
1035
- # Additional fields for Financial Connections Session creation
1036
- attr_accessor :financial_connections
1037
- # Verification method for the intent
1038
- attr_accessor :verification_method
1039
-
1040
- def initialize(financial_connections: nil, verification_method: nil)
1041
- @financial_connections = financial_connections
1042
- @verification_method = verification_method
1043
- end
1044
- end
1045
- # If paying by `acss_debit`, this sub-hash contains details about the Canadian pre-authorized debit payment method options to pass to the invoice’s PaymentIntent.
1046
- attr_accessor :acss_debit
1047
- # If paying by `bancontact`, this sub-hash contains details about the Bancontact payment method options to pass to the invoice’s PaymentIntent.
1048
- attr_accessor :bancontact
1049
- # If paying by `card`, this sub-hash contains details about the Card payment method options to pass to the invoice’s PaymentIntent.
1050
- attr_accessor :card
1051
- # If paying by `customer_balance`, this sub-hash contains details about the Bank transfer payment method options to pass to the invoice’s PaymentIntent.
1052
- attr_accessor :customer_balance
1053
- # If paying by `id_bank_transfer`, this sub-hash contains details about the Indonesia bank transfer payment method options to pass to the invoice’s PaymentIntent.
1054
- attr_accessor :id_bank_transfer
1055
- # If paying by `konbini`, this sub-hash contains details about the Konbini payment method options to pass to the invoice’s PaymentIntent.
1056
- attr_accessor :konbini
1057
- # If paying by `sepa_debit`, this sub-hash contains details about the SEPA Direct Debit payment method options to pass to the invoice’s PaymentIntent.
1058
- attr_accessor :sepa_debit
1059
- # If paying by `upi`, this sub-hash contains details about the UPI payment method options to pass to the invoice’s PaymentIntent.
1060
- attr_accessor :upi
1061
- # If paying by `us_bank_account`, this sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent.
1062
- attr_accessor :us_bank_account
1063
-
1064
- def initialize(
1065
- acss_debit: nil,
1066
- bancontact: nil,
1067
- card: nil,
1068
- customer_balance: nil,
1069
- id_bank_transfer: nil,
1070
- konbini: nil,
1071
- sepa_debit: nil,
1072
- upi: nil,
1073
- us_bank_account: nil
1074
- )
1075
- @acss_debit = acss_debit
1076
- @bancontact = bancontact
1077
- @card = card
1078
- @customer_balance = customer_balance
1079
- @id_bank_transfer = id_bank_transfer
1080
- @konbini = konbini
1081
- @sepa_debit = sepa_debit
1082
- @upi = upi
1083
- @us_bank_account = us_bank_account
1084
- end
1085
- end
1086
- # ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the invoice's default_payment_method or default_source, if set.
1087
- attr_accessor :default_mandate
1088
- # Payment-method-specific configuration to provide to the invoice’s PaymentIntent.
1089
- attr_accessor :payment_method_options
1090
- # The list of payment method types (e.g. card) to provide to the invoice’s PaymentIntent. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice). Should not be specified with payment_method_configuration
1091
- attr_accessor :payment_method_types
1092
-
1093
- def initialize(default_mandate: nil, payment_method_options: nil, payment_method_types: nil)
1094
- @default_mandate = default_mandate
1095
- @payment_method_options = payment_method_options
1096
- @payment_method_types = payment_method_types
1097
- end
1098
- end
1099
-
1100
- class Rendering < Stripe::RequestParams
1101
- class Pdf < Stripe::RequestParams
1102
- # Page size for invoice PDF. Can be set to `a4`, `letter`, or `auto`.
1103
- # If set to `auto`, invoice PDF page size defaults to `a4` for customers with
1104
- # Japanese locale and `letter` for customers with other locales.
1105
- attr_accessor :page_size
1106
-
1107
- def initialize(page_size: nil)
1108
- @page_size = page_size
1109
- end
1110
- end
1111
- # How line-item prices and amounts will be displayed with respect to tax on invoice PDFs. One of `exclude_tax` or `include_inclusive_tax`. `include_inclusive_tax` will include inclusive tax (and exclude exclusive tax) in invoice PDF amounts. `exclude_tax` will exclude all tax (inclusive and exclusive alike) from invoice PDF amounts.
1112
- attr_accessor :amount_tax_display
1113
- # Invoice pdf rendering options
1114
- attr_accessor :pdf
1115
- # ID of the invoice rendering template to use for this invoice.
1116
- attr_accessor :template
1117
- # The specific version of invoice rendering template to use for this invoice.
1118
- attr_accessor :template_version
1119
-
1120
- def initialize(amount_tax_display: nil, pdf: nil, template: nil, template_version: nil)
1121
- @amount_tax_display = amount_tax_display
1122
- @pdf = pdf
1123
- @template = template
1124
- @template_version = template_version
1125
- end
1126
- end
1127
-
1128
- class ShippingCost < Stripe::RequestParams
1129
- class ShippingRateData < Stripe::RequestParams
1130
- class DeliveryEstimate < Stripe::RequestParams
1131
- class Maximum < Stripe::RequestParams
1132
- # A unit of time.
1133
- attr_accessor :unit
1134
- # Must be greater than 0.
1135
- attr_accessor :value
1136
-
1137
- def initialize(unit: nil, value: nil)
1138
- @unit = unit
1139
- @value = value
1140
- end
1141
- end
1142
-
1143
- class Minimum < Stripe::RequestParams
1144
- # A unit of time.
1145
- attr_accessor :unit
1146
- # Must be greater than 0.
1147
- attr_accessor :value
1148
-
1149
- def initialize(unit: nil, value: nil)
1150
- @unit = unit
1151
- @value = value
1152
- end
1153
- end
1154
- # The upper bound of the estimated range. If empty, represents no upper bound i.e., infinite.
1155
- attr_accessor :maximum
1156
- # The lower bound of the estimated range. If empty, represents no lower bound.
1157
- attr_accessor :minimum
1158
-
1159
- def initialize(maximum: nil, minimum: nil)
1160
- @maximum = maximum
1161
- @minimum = minimum
1162
- end
1163
- end
1164
-
1165
- class FixedAmount < Stripe::RequestParams
1166
- class CurrencyOptions < Stripe::RequestParams
1167
- # A non-negative integer in cents representing how much to charge.
1168
- attr_accessor :amount
1169
- # Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
1170
- attr_accessor :tax_behavior
1171
-
1172
- def initialize(amount: nil, tax_behavior: nil)
1173
- @amount = amount
1174
- @tax_behavior = tax_behavior
1175
- end
1176
- end
1177
- # A non-negative integer in cents representing how much to charge.
1178
- attr_accessor :amount
1179
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
1180
- attr_accessor :currency
1181
- # Shipping rates defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies).
1182
- attr_accessor :currency_options
1183
-
1184
- def initialize(amount: nil, currency: nil, currency_options: nil)
1185
- @amount = amount
1186
- @currency = currency
1187
- @currency_options = currency_options
1188
- end
1189
- end
1190
- # The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.
1191
- attr_accessor :delivery_estimate
1192
- # The name of the shipping rate, meant to be displayable to the customer. This will appear on CheckoutSessions.
1193
- attr_accessor :display_name
1194
- # Describes a fixed amount to charge for shipping. Must be present if type is `fixed_amount`.
1195
- attr_accessor :fixed_amount
1196
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1197
- attr_accessor :metadata
1198
- # Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
1199
- attr_accessor :tax_behavior
1200
- # A [tax code](https://stripe.com/docs/tax/tax-categories) ID. The Shipping tax code is `txcd_92010001`.
1201
- attr_accessor :tax_code
1202
- # The type of calculation to use on the shipping rate.
1203
- attr_accessor :type
1204
-
1205
- def initialize(
1206
- delivery_estimate: nil,
1207
- display_name: nil,
1208
- fixed_amount: nil,
1209
- metadata: nil,
1210
- tax_behavior: nil,
1211
- tax_code: nil,
1212
- type: nil
1213
- )
1214
- @delivery_estimate = delivery_estimate
1215
- @display_name = display_name
1216
- @fixed_amount = fixed_amount
1217
- @metadata = metadata
1218
- @tax_behavior = tax_behavior
1219
- @tax_code = tax_code
1220
- @type = type
1221
- end
1222
- end
1223
- # The ID of the shipping rate to use for this order.
1224
- attr_accessor :shipping_rate
1225
- # Parameters to create a new ad-hoc shipping rate for this order.
1226
- attr_accessor :shipping_rate_data
1227
-
1228
- def initialize(shipping_rate: nil, shipping_rate_data: nil)
1229
- @shipping_rate = shipping_rate
1230
- @shipping_rate_data = shipping_rate_data
1231
- end
1232
- end
1233
-
1234
- class ShippingDetails < Stripe::RequestParams
1235
- class Address < Stripe::RequestParams
1236
- # City, district, suburb, town, or village.
1237
- attr_accessor :city
1238
- # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1239
- attr_accessor :country
1240
- # Address line 1 (e.g., street, PO Box, or company name).
1241
- attr_accessor :line1
1242
- # Address line 2 (e.g., apartment, suite, unit, or building).
1243
- attr_accessor :line2
1244
- # ZIP or postal code.
1245
- attr_accessor :postal_code
1246
- # State, county, province, or region.
1247
- attr_accessor :state
1248
-
1249
- def initialize(
1250
- city: nil,
1251
- country: nil,
1252
- line1: nil,
1253
- line2: nil,
1254
- postal_code: nil,
1255
- state: nil
1256
- )
1257
- @city = city
1258
- @country = country
1259
- @line1 = line1
1260
- @line2 = line2
1261
- @postal_code = postal_code
1262
- @state = state
1263
- end
1264
- end
1265
- # Shipping address
1266
- attr_accessor :address
1267
- # Recipient name.
1268
- attr_accessor :name
1269
- # Recipient phone (including extension)
1270
- attr_accessor :phone
1271
-
1272
- def initialize(address: nil, name: nil, phone: nil)
1273
- @address = address
1274
- @name = name
1275
- @phone = phone
1276
- end
1277
- end
1278
-
1279
- class TransferData < Stripe::RequestParams
1280
- # The amount that will be transferred automatically when the invoice is paid. If no amount is set, the full amount is transferred.
1281
- attr_accessor :amount
1282
- # ID of an existing, connected Stripe account.
1283
- attr_accessor :destination
1284
-
1285
- def initialize(amount: nil, destination: nil)
1286
- @amount = amount
1287
- @destination = destination
1288
- end
1289
- end
1290
- # The account tax IDs associated with the invoice. Only editable when the invoice is a draft.
1291
- attr_accessor :account_tax_ids
1292
- # List of expected payments and corresponding due dates. Valid only for invoices where `collection_method=send_invoice`.
1293
- attr_accessor :amounts_due
1294
- # A fee in cents (or local equivalent) that will be applied to the invoice and transferred to the application owner's Stripe account. The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees [documentation](https://stripe.com/docs/billing/invoices/connect#collecting-fees).
1295
- attr_accessor :application_fee_amount
1296
- # Controls whether Stripe performs [automatic collection](https://stripe.com/docs/invoicing/integration/automatic-advancement-collection) of the invoice. If `false`, the invoice's state doesn't automatically advance without an explicit action. Defaults to false.
1297
- attr_accessor :auto_advance
1298
- # Settings for automatic tax lookup for this invoice.
1299
- attr_accessor :automatic_tax
1300
- # The time when this invoice should be scheduled to finalize (up to 5 years in the future). The invoice is finalized at this time if it's still in draft state.
1301
- attr_accessor :automatically_finalizes_at
1302
- # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions. Defaults to `charge_automatically`.
1303
- attr_accessor :collection_method
1304
- # The currency to create this invoice in. Defaults to that of `customer` if not specified.
1305
- attr_accessor :currency
1306
- # A list of up to 4 custom fields to be displayed on the invoice.
1307
- attr_accessor :custom_fields
1308
- # The ID of the customer who will be billed.
1309
- attr_accessor :customer
1310
- # The ID of the account who will be billed.
1311
- attr_accessor :customer_account
1312
- # The number of days from when the invoice is created until it is due. Valid only for invoices where `collection_method=send_invoice`.
1313
- attr_accessor :days_until_due
1314
- # The ids of the margins to apply to the invoice. Can be overridden by line item `margins`.
1315
- attr_accessor :default_margins
1316
- # ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription's default payment method, if any, or to the default payment method in the customer's invoice settings.
1317
- attr_accessor :default_payment_method
1318
- # ID of the default payment source for the invoice. It must belong to the customer associated with the invoice and be in a chargeable state. If not set, defaults to the subscription's default source, if any, or to the customer's default source.
1319
- attr_accessor :default_source
1320
- # The tax rates that will apply to any line item that does not have `tax_rates` set.
1321
- attr_accessor :default_tax_rates
1322
- # An arbitrary string attached to the object. Often useful for displaying to users. Referenced as 'memo' in the Dashboard.
1323
- attr_accessor :description
1324
- # The coupons and promotion codes to redeem into discounts for the invoice. If not specified, inherits the discount from the invoice's customer. Pass an empty string to avoid inheriting any discounts.
1325
- attr_accessor :discounts
1326
- # The date on which payment for this invoice is due. Valid only for invoices where `collection_method=send_invoice`.
1327
- attr_accessor :due_date
1328
- # The date when this invoice is in effect. Same as `finalized_at` unless overwritten. When defined, this value replaces the system-generated 'Date of issue' printed on the invoice PDF and receipt.
1329
- attr_accessor :effective_at
1330
- # Specifies which fields in the response should be expanded.
1331
- attr_accessor :expand
1332
- # Footer to be displayed on the invoice.
1333
- attr_accessor :footer
1334
- # Revise an existing invoice. The new invoice will be created in `status=draft`. See the [revision documentation](https://stripe.com/docs/invoicing/invoice-revisions) for more details.
1335
- attr_accessor :from_invoice
1336
- # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
1337
- attr_accessor :issuer
1338
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1339
- attr_accessor :metadata
1340
- # Set the number for this invoice. If no number is present then a number will be assigned automatically when the invoice is finalized. In many markets, regulations require invoices to be unique, sequential and / or gapless. You are responsible for ensuring this is true across all your different invoicing systems in the event that you edit the invoice number using our API. If you use only Stripe for your invoices and do not change invoice numbers, Stripe handles this aspect of compliance for you automatically.
1341
- attr_accessor :number
1342
- # The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details.
1343
- attr_accessor :on_behalf_of
1344
- # Configuration settings for the PaymentIntent that is generated when the invoice is finalized.
1345
- attr_accessor :payment_settings
1346
- # How to handle pending invoice items on invoice creation. Defaults to `exclude` if the parameter is omitted.
1347
- attr_accessor :pending_invoice_items_behavior
1348
- # The rendering-related settings that control how the invoice is displayed on customer-facing surfaces such as PDF and Hosted Invoice Page.
1349
- attr_accessor :rendering
1350
- # Settings for the cost of shipping for this invoice.
1351
- attr_accessor :shipping_cost
1352
- # Shipping details for the invoice. The Invoice PDF will use the `shipping_details` value if it is set, otherwise the PDF will render the shipping address from the customer.
1353
- attr_accessor :shipping_details
1354
- # Extra information about a charge for the customer's credit card statement. It must contain at least one letter. If not specified and this invoice is part of a subscription, the default `statement_descriptor` will be set to the first subscription item's product's `statement_descriptor`.
1355
- attr_accessor :statement_descriptor
1356
- # The ID of the subscription to invoice, if any. If set, the created invoice will only include pending invoice items for that subscription. The subscription's billing cycle and regular subscription events won't be affected.
1357
- attr_accessor :subscription
1358
- # If specified, the funds from the invoice will be transferred to the destination and the ID of the resulting transfer will be found on the invoice's charge.
1359
- attr_accessor :transfer_data
1360
-
1361
- def initialize(
1362
- account_tax_ids: nil,
1363
- amounts_due: nil,
1364
- application_fee_amount: nil,
1365
- auto_advance: nil,
1366
- automatic_tax: nil,
1367
- automatically_finalizes_at: nil,
1368
- collection_method: nil,
1369
- currency: nil,
1370
- custom_fields: nil,
1371
- customer: nil,
1372
- customer_account: nil,
1373
- days_until_due: nil,
1374
- default_margins: nil,
1375
- default_payment_method: nil,
1376
- default_source: nil,
1377
- default_tax_rates: nil,
1378
- description: nil,
1379
- discounts: nil,
1380
- due_date: nil,
1381
- effective_at: nil,
1382
- expand: nil,
1383
- footer: nil,
1384
- from_invoice: nil,
1385
- issuer: nil,
1386
- metadata: nil,
1387
- number: nil,
1388
- on_behalf_of: nil,
1389
- payment_settings: nil,
1390
- pending_invoice_items_behavior: nil,
1391
- rendering: nil,
1392
- shipping_cost: nil,
1393
- shipping_details: nil,
1394
- statement_descriptor: nil,
1395
- subscription: nil,
1396
- transfer_data: nil
1397
- )
1398
- @account_tax_ids = account_tax_ids
1399
- @amounts_due = amounts_due
1400
- @application_fee_amount = application_fee_amount
1401
- @auto_advance = auto_advance
1402
- @automatic_tax = automatic_tax
1403
- @automatically_finalizes_at = automatically_finalizes_at
1404
- @collection_method = collection_method
1405
- @currency = currency
1406
- @custom_fields = custom_fields
1407
- @customer = customer
1408
- @customer_account = customer_account
1409
- @days_until_due = days_until_due
1410
- @default_margins = default_margins
1411
- @default_payment_method = default_payment_method
1412
- @default_source = default_source
1413
- @default_tax_rates = default_tax_rates
1414
- @description = description
1415
- @discounts = discounts
1416
- @due_date = due_date
1417
- @effective_at = effective_at
1418
- @expand = expand
1419
- @footer = footer
1420
- @from_invoice = from_invoice
1421
- @issuer = issuer
1422
- @metadata = metadata
1423
- @number = number
1424
- @on_behalf_of = on_behalf_of
1425
- @payment_settings = payment_settings
1426
- @pending_invoice_items_behavior = pending_invoice_items_behavior
1427
- @rendering = rendering
1428
- @shipping_cost = shipping_cost
1429
- @shipping_details = shipping_details
1430
- @statement_descriptor = statement_descriptor
1431
- @subscription = subscription
1432
- @transfer_data = transfer_data
1433
- end
1434
- end
1435
-
1436
- class SearchParams < Stripe::RequestParams
1437
- # Specifies which fields in the response should be expanded.
1438
- attr_accessor :expand
1439
- # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
1440
- attr_accessor :limit
1441
- # A cursor for pagination across multiple pages of results. Don't include this parameter on the first call. Use the next_page value returned in a previous response to request subsequent results.
1442
- attr_accessor :page
1443
- # The search query string. See [search query language](https://stripe.com/docs/search#search-query-language) and the list of supported [query fields for invoices](https://stripe.com/docs/search#query-fields-for-invoices).
1444
- attr_accessor :query
1445
-
1446
- def initialize(expand: nil, limit: nil, page: nil, query: nil)
1447
- @expand = expand
1448
- @limit = limit
1449
- @page = page
1450
- @query = query
1451
- end
1452
- end
1453
-
1454
- class AddLinesParams < Stripe::RequestParams
1455
- class Line < Stripe::RequestParams
1456
- class Discount < Stripe::RequestParams
1457
- class DiscountEnd < Stripe::RequestParams
1458
- class Duration < Stripe::RequestParams
1459
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1460
- attr_accessor :interval
1461
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1462
- attr_accessor :interval_count
1463
-
1464
- def initialize(interval: nil, interval_count: nil)
1465
- @interval = interval
1466
- @interval_count = interval_count
1467
- end
1468
- end
1469
- # Time span for the redeemed discount.
1470
- attr_accessor :duration
1471
- # A precise Unix timestamp for the discount to end. Must be in the future.
1472
- attr_accessor :timestamp
1473
- # The type of calculation made to determine when the discount ends.
1474
- attr_accessor :type
1475
-
1476
- def initialize(duration: nil, timestamp: nil, type: nil)
1477
- @duration = duration
1478
- @timestamp = timestamp
1479
- @type = type
1480
- end
1481
- end
1482
- # ID of the coupon to create a new discount for.
1483
- attr_accessor :coupon
1484
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1485
- attr_accessor :discount
1486
- # Details to determine how long the discount should be applied for.
1487
- attr_accessor :discount_end
1488
- # ID of the promotion code to create a new discount for.
1489
- attr_accessor :promotion_code
1490
-
1491
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1492
- @coupon = coupon
1493
- @discount = discount
1494
- @discount_end = discount_end
1495
- @promotion_code = promotion_code
1496
- end
1497
- end
1498
-
1499
- class Period < Stripe::RequestParams
1500
- # The end of the period, which must be greater than or equal to the start. This value is inclusive.
1501
- attr_accessor :end
1502
- # The start of the period. This value is inclusive.
1503
- attr_accessor :start
1504
-
1505
- def initialize(end_: nil, start: nil)
1506
- @end = end_
1507
- @start = start
1508
- end
1509
- end
1510
-
1511
- class PriceData < Stripe::RequestParams
1512
- class ProductData < Stripe::RequestParams
1513
- # The product's description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.
1514
- attr_accessor :description
1515
- # A list of up to 8 URLs of images for this product, meant to be displayable to the customer.
1516
- attr_accessor :images
1517
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1518
- attr_accessor :metadata
1519
- # The product's name, meant to be displayable to the customer.
1520
- attr_accessor :name
1521
- # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
1522
- attr_accessor :tax_code
1523
-
1524
- def initialize(description: nil, images: nil, metadata: nil, name: nil, tax_code: nil)
1525
- @description = description
1526
- @images = images
1527
- @metadata = metadata
1528
- @name = name
1529
- @tax_code = tax_code
1530
- end
1531
- end
1532
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
1533
- attr_accessor :currency
1534
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to. One of `product` or `product_data` is required.
1535
- attr_accessor :product
1536
- # Data used to generate a new [Product](https://docs.stripe.com/api/products) object inline. One of `product` or `product_data` is required.
1537
- attr_accessor :product_data
1538
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
1539
- attr_accessor :tax_behavior
1540
- # A non-negative integer in cents (or local equivalent) representing how much to charge. One of `unit_amount` or `unit_amount_decimal` is required.
1541
- attr_accessor :unit_amount
1542
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
1543
- attr_accessor :unit_amount_decimal
1544
-
1545
- def initialize(
1546
- currency: nil,
1547
- product: nil,
1548
- product_data: nil,
1549
- tax_behavior: nil,
1550
- unit_amount: nil,
1551
- unit_amount_decimal: nil
1552
- )
1553
- @currency = currency
1554
- @product = product
1555
- @product_data = product_data
1556
- @tax_behavior = tax_behavior
1557
- @unit_amount = unit_amount
1558
- @unit_amount_decimal = unit_amount_decimal
1559
- end
1560
- end
1561
-
1562
- class Pricing < Stripe::RequestParams
1563
- # The ID of the price object.
1564
- attr_accessor :price
1565
-
1566
- def initialize(price: nil)
1567
- @price = price
1568
- end
1569
- end
1570
-
1571
- class TaxAmount < Stripe::RequestParams
1572
- class TaxRateData < Stripe::RequestParams
1573
- # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1574
- attr_accessor :country
1575
- # An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.
1576
- attr_accessor :description
1577
- # The display name of the tax rate, which will be shown to users.
1578
- attr_accessor :display_name
1579
- # This specifies if the tax rate is inclusive or exclusive.
1580
- attr_accessor :inclusive
1581
- # The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.
1582
- attr_accessor :jurisdiction
1583
- # The level of the jurisdiction that imposes this tax rate.
1584
- attr_accessor :jurisdiction_level
1585
- # The statutory tax rate percent. This field accepts decimal values between 0 and 100 inclusive with at most 4 decimal places. To accommodate fixed-amount taxes, set the percentage to zero. Stripe will not display zero percentages on the invoice unless the `amount` of the tax is also zero.
1586
- attr_accessor :percentage
1587
- # [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2:US), without country prefix. For example, "NY" for New York, United States.
1588
- attr_accessor :state
1589
- # The high-level tax type, such as `vat` or `sales_tax`.
1590
- attr_accessor :tax_type
1591
-
1592
- def initialize(
1593
- country: nil,
1594
- description: nil,
1595
- display_name: nil,
1596
- inclusive: nil,
1597
- jurisdiction: nil,
1598
- jurisdiction_level: nil,
1599
- percentage: nil,
1600
- state: nil,
1601
- tax_type: nil
1602
- )
1603
- @country = country
1604
- @description = description
1605
- @display_name = display_name
1606
- @inclusive = inclusive
1607
- @jurisdiction = jurisdiction
1608
- @jurisdiction_level = jurisdiction_level
1609
- @percentage = percentage
1610
- @state = state
1611
- @tax_type = tax_type
1612
- end
1613
- end
1614
- # The amount, in cents (or local equivalent), of the tax.
1615
- attr_accessor :amount
1616
- # Data to find or create a TaxRate object.
1617
- #
1618
- # Stripe automatically creates or reuses a TaxRate object for each tax amount. If the `tax_rate_data` exactly matches a previous value, Stripe will reuse the TaxRate object. TaxRate objects created automatically by Stripe are immediately archived, do not appear in the line item’s `tax_rates`, and cannot be directly added to invoices, payments, or line items.
1619
- attr_accessor :tax_rate_data
1620
- # The reasoning behind this tax, for example, if the product is tax exempt.
1621
- attr_accessor :taxability_reason
1622
- # The amount on which tax is calculated, in cents (or local equivalent).
1623
- attr_accessor :taxable_amount
1624
-
1625
- def initialize(
1626
- amount: nil,
1627
- tax_rate_data: nil,
1628
- taxability_reason: nil,
1629
- taxable_amount: nil
1630
- )
1631
- @amount = amount
1632
- @tax_rate_data = tax_rate_data
1633
- @taxability_reason = taxability_reason
1634
- @taxable_amount = taxable_amount
1635
- end
1636
- end
1637
- # The integer amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. If you want to apply a credit to the customer's account, pass a negative amount.
1638
- attr_accessor :amount
1639
- # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
1640
- attr_accessor :description
1641
- # Controls whether discounts apply to this line item. Defaults to false for prorations or negative line items, and true for all other line items. Cannot be set to true for prorations.
1642
- attr_accessor :discountable
1643
- # The coupons, promotion codes & existing discounts which apply to the line item. Item discounts are applied before invoice discounts. Pass an empty string to remove previously-defined discounts.
1644
- attr_accessor :discounts
1645
- # ID of an unassigned invoice item to assign to this invoice. If not provided, a new item will be created.
1646
- attr_accessor :invoice_item
1647
- # The IDs of the margins to apply to the line item. When set, the `default_margins` on the invoice do not apply to this line item.
1648
- attr_accessor :margins
1649
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1650
- attr_accessor :metadata
1651
- # The period associated with this invoice item. When set to different values, the period will be rendered on the invoice. If you have [Stripe Revenue Recognition](https://stripe.com/docs/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](https://stripe.com/docs/revenue-recognition/methodology/subscriptions-and-invoicing) for details.
1652
- attr_accessor :period
1653
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
1654
- attr_accessor :price_data
1655
- # The pricing information for the invoice item.
1656
- attr_accessor :pricing
1657
- # Non-negative integer. The quantity of units for the line item.
1658
- attr_accessor :quantity
1659
- # A list of up to 10 tax amounts for this line item. This can be useful if you calculate taxes on your own or use a third-party to calculate them. You cannot set tax amounts if any line item has [tax_rates](https://stripe.com/docs/api/invoices/line_item#invoice_line_item_object-tax_rates) or if the invoice has [default_tax_rates](https://stripe.com/docs/api/invoices/object#invoice_object-default_tax_rates) or uses [automatic tax](https://stripe.com/docs/tax/invoicing). Pass an empty string to remove previously defined tax amounts.
1660
- attr_accessor :tax_amounts
1661
- # The tax rates which apply to the line item. When set, the `default_tax_rates` on the invoice do not apply to this line item. Pass an empty string to remove previously-defined tax rates.
1662
- attr_accessor :tax_rates
1663
-
1664
- def initialize(
1665
- amount: nil,
1666
- description: nil,
1667
- discountable: nil,
1668
- discounts: nil,
1669
- invoice_item: nil,
1670
- margins: nil,
1671
- metadata: nil,
1672
- period: nil,
1673
- price_data: nil,
1674
- pricing: nil,
1675
- quantity: nil,
1676
- tax_amounts: nil,
1677
- tax_rates: nil
1678
- )
1679
- @amount = amount
1680
- @description = description
1681
- @discountable = discountable
1682
- @discounts = discounts
1683
- @invoice_item = invoice_item
1684
- @margins = margins
1685
- @metadata = metadata
1686
- @period = period
1687
- @price_data = price_data
1688
- @pricing = pricing
1689
- @quantity = quantity
1690
- @tax_amounts = tax_amounts
1691
- @tax_rates = tax_rates
1692
- end
1693
- end
1694
- # Specifies which fields in the response should be expanded.
1695
- attr_accessor :expand
1696
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1697
- attr_accessor :invoice_metadata
1698
- # The line items to add.
1699
- attr_accessor :lines
1700
-
1701
- def initialize(expand: nil, invoice_metadata: nil, lines: nil)
1702
- @expand = expand
1703
- @invoice_metadata = invoice_metadata
1704
- @lines = lines
1705
- end
1706
- end
1707
-
1708
- class AttachPaymentParams < Stripe::RequestParams
1709
- class PaymentRecordData < Stripe::RequestParams
1710
- # The amount that was paid out of band.
1711
- attr_accessor :amount
1712
- # The currency that was paid out of band.
1713
- attr_accessor :currency
1714
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1715
- attr_accessor :metadata
1716
- # The type of money movement for this out of band payment record.
1717
- attr_accessor :money_movement_type
1718
- # The timestamp when this out of band payment was paid.
1719
- attr_accessor :paid_at
1720
- # The reference for this out of band payment record.
1721
- attr_accessor :payment_reference
1722
-
1723
- def initialize(
1724
- amount: nil,
1725
- currency: nil,
1726
- metadata: nil,
1727
- money_movement_type: nil,
1728
- paid_at: nil,
1729
- payment_reference: nil
1730
- )
1731
- @amount = amount
1732
- @currency = currency
1733
- @metadata = metadata
1734
- @money_movement_type = money_movement_type
1735
- @paid_at = paid_at
1736
- @payment_reference = payment_reference
1737
- end
1738
- end
1739
- # The portion of the `amount` on the PaymentIntent or out of band payment to apply to this invoice. It defaults to the entire amount.
1740
- attr_accessor :amount_requested
1741
- # Specifies which fields in the response should be expanded.
1742
- attr_accessor :expand
1743
- # The ID of the PaymentIntent to attach to the invoice.
1744
- attr_accessor :payment_intent
1745
- # The ID of the PaymentRecord to attach to the invoice.
1746
- attr_accessor :payment_record
1747
- # The PaymentRecord data for attaching an out of band payment to the invoice.
1748
- attr_accessor :payment_record_data
1749
-
1750
- def initialize(
1751
- amount_requested: nil,
1752
- expand: nil,
1753
- payment_intent: nil,
1754
- payment_record: nil,
1755
- payment_record_data: nil
1756
- )
1757
- @amount_requested = amount_requested
1758
- @expand = expand
1759
- @payment_intent = payment_intent
1760
- @payment_record = payment_record
1761
- @payment_record_data = payment_record_data
1762
- end
1763
- end
1764
-
1765
- class FinalizeInvoiceParams < Stripe::RequestParams
1766
- # Controls whether Stripe performs [automatic collection](https://stripe.com/docs/invoicing/integration/automatic-advancement-collection) of the invoice. If `false`, the invoice's state doesn't automatically advance without an explicit action.
1767
- attr_accessor :auto_advance
1768
- # Specifies which fields in the response should be expanded.
1769
- attr_accessor :expand
1770
-
1771
- def initialize(auto_advance: nil, expand: nil)
1772
- @auto_advance = auto_advance
1773
- @expand = expand
1774
- end
1775
- end
1776
-
1777
- class MarkUncollectibleParams < Stripe::RequestParams
1778
- # Specifies which fields in the response should be expanded.
1779
- attr_accessor :expand
1780
-
1781
- def initialize(expand: nil)
1782
- @expand = expand
1783
- end
1784
- end
1785
-
1786
- class PayParams < Stripe::RequestParams
1787
- # Specifies which fields in the response should be expanded.
1788
- attr_accessor :expand
1789
- # In cases where the source used to pay the invoice has insufficient funds, passing `forgive=true` controls whether a charge should be attempted for the full amount available on the source, up to the amount to fully pay the invoice. This effectively forgives the difference between the amount available on the source and the amount due.
1790
- #
1791
- # Passing `forgive=false` will fail the charge if the source hasn't been pre-funded with the right amount. An example for this case is with ACH Credit Transfers and wires: if the amount wired is less than the amount due by a small amount, you might want to forgive the difference. Defaults to `false`.
1792
- attr_accessor :forgive
1793
- # ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the payment_method param or the invoice's default_payment_method or default_source, if set.
1794
- attr_accessor :mandate
1795
- # Indicates if a customer is on or off-session while an invoice payment is attempted. Defaults to `true` (off-session).
1796
- attr_accessor :off_session
1797
- # Boolean representing whether an invoice is paid outside of Stripe. This will result in no charge being made. Defaults to `false`.
1798
- attr_accessor :paid_out_of_band
1799
- # A PaymentMethod to be charged. The PaymentMethod must be the ID of a PaymentMethod belonging to the customer associated with the invoice being paid.
1800
- attr_accessor :payment_method
1801
- # A payment source to be charged. The source must be the ID of a source belonging to the customer associated with the invoice being paid.
1802
- attr_accessor :source
1803
-
1804
- def initialize(
1805
- expand: nil,
1806
- forgive: nil,
1807
- mandate: nil,
1808
- off_session: nil,
1809
- paid_out_of_band: nil,
1810
- payment_method: nil,
1811
- source: nil
1812
- )
1813
- @expand = expand
1814
- @forgive = forgive
1815
- @mandate = mandate
1816
- @off_session = off_session
1817
- @paid_out_of_band = paid_out_of_band
1818
- @payment_method = payment_method
1819
- @source = source
1820
- end
1821
- end
1822
-
1823
- class RemoveLinesParams < Stripe::RequestParams
1824
- class Line < Stripe::RequestParams
1825
- # Either `delete` or `unassign`. Deleted line items are permanently deleted. Unassigned line items can be reassigned to an invoice.
1826
- attr_accessor :behavior
1827
- # ID of an existing line item to remove from this invoice.
1828
- attr_accessor :id
1829
-
1830
- def initialize(behavior: nil, id: nil)
1831
- @behavior = behavior
1832
- @id = id
1833
- end
1834
- end
1835
- # Specifies which fields in the response should be expanded.
1836
- attr_accessor :expand
1837
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1838
- attr_accessor :invoice_metadata
1839
- # The line items to remove.
1840
- attr_accessor :lines
1841
-
1842
- def initialize(expand: nil, invoice_metadata: nil, lines: nil)
1843
- @expand = expand
1844
- @invoice_metadata = invoice_metadata
1845
- @lines = lines
1846
- end
1847
- end
1848
-
1849
- class SendInvoiceParams < Stripe::RequestParams
1850
- # Specifies which fields in the response should be expanded.
1851
- attr_accessor :expand
1852
-
1853
- def initialize(expand: nil)
1854
- @expand = expand
1855
- end
1856
- end
1857
-
1858
- class UpdateLinesParams < Stripe::RequestParams
1859
- class Line < Stripe::RequestParams
1860
- class Discount < Stripe::RequestParams
1861
- class DiscountEnd < Stripe::RequestParams
1862
- class Duration < Stripe::RequestParams
1863
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
1864
- attr_accessor :interval
1865
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
1866
- attr_accessor :interval_count
1867
-
1868
- def initialize(interval: nil, interval_count: nil)
1869
- @interval = interval
1870
- @interval_count = interval_count
1871
- end
1872
- end
1873
- # Time span for the redeemed discount.
1874
- attr_accessor :duration
1875
- # A precise Unix timestamp for the discount to end. Must be in the future.
1876
- attr_accessor :timestamp
1877
- # The type of calculation made to determine when the discount ends.
1878
- attr_accessor :type
1879
-
1880
- def initialize(duration: nil, timestamp: nil, type: nil)
1881
- @duration = duration
1882
- @timestamp = timestamp
1883
- @type = type
1884
- end
1885
- end
1886
- # ID of the coupon to create a new discount for.
1887
- attr_accessor :coupon
1888
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
1889
- attr_accessor :discount
1890
- # Details to determine how long the discount should be applied for.
1891
- attr_accessor :discount_end
1892
- # ID of the promotion code to create a new discount for.
1893
- attr_accessor :promotion_code
1894
-
1895
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
1896
- @coupon = coupon
1897
- @discount = discount
1898
- @discount_end = discount_end
1899
- @promotion_code = promotion_code
1900
- end
1901
- end
1902
-
1903
- class Period < Stripe::RequestParams
1904
- # The end of the period, which must be greater than or equal to the start. This value is inclusive.
1905
- attr_accessor :end
1906
- # The start of the period. This value is inclusive.
1907
- attr_accessor :start
1908
-
1909
- def initialize(end_: nil, start: nil)
1910
- @end = end_
1911
- @start = start
1912
- end
1913
- end
1914
-
1915
- class PriceData < Stripe::RequestParams
1916
- class ProductData < Stripe::RequestParams
1917
- # The product's description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.
1918
- attr_accessor :description
1919
- # A list of up to 8 URLs of images for this product, meant to be displayable to the customer.
1920
- attr_accessor :images
1921
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1922
- attr_accessor :metadata
1923
- # The product's name, meant to be displayable to the customer.
1924
- attr_accessor :name
1925
- # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
1926
- attr_accessor :tax_code
1927
-
1928
- def initialize(description: nil, images: nil, metadata: nil, name: nil, tax_code: nil)
1929
- @description = description
1930
- @images = images
1931
- @metadata = metadata
1932
- @name = name
1933
- @tax_code = tax_code
1934
- end
1935
- end
1936
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
1937
- attr_accessor :currency
1938
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to. One of `product` or `product_data` is required.
1939
- attr_accessor :product
1940
- # Data used to generate a new [Product](https://docs.stripe.com/api/products) object inline. One of `product` or `product_data` is required.
1941
- attr_accessor :product_data
1942
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
1943
- attr_accessor :tax_behavior
1944
- # A non-negative integer in cents (or local equivalent) representing how much to charge. One of `unit_amount` or `unit_amount_decimal` is required.
1945
- attr_accessor :unit_amount
1946
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
1947
- attr_accessor :unit_amount_decimal
1948
-
1949
- def initialize(
1950
- currency: nil,
1951
- product: nil,
1952
- product_data: nil,
1953
- tax_behavior: nil,
1954
- unit_amount: nil,
1955
- unit_amount_decimal: nil
1956
- )
1957
- @currency = currency
1958
- @product = product
1959
- @product_data = product_data
1960
- @tax_behavior = tax_behavior
1961
- @unit_amount = unit_amount
1962
- @unit_amount_decimal = unit_amount_decimal
1963
- end
1964
- end
1965
-
1966
- class Pricing < Stripe::RequestParams
1967
- # The ID of the price object.
1968
- attr_accessor :price
1969
-
1970
- def initialize(price: nil)
1971
- @price = price
1972
- end
1973
- end
1974
-
1975
- class TaxAmount < Stripe::RequestParams
1976
- class TaxRateData < Stripe::RequestParams
1977
- # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1978
- attr_accessor :country
1979
- # An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.
1980
- attr_accessor :description
1981
- # The display name of the tax rate, which will be shown to users.
1982
- attr_accessor :display_name
1983
- # This specifies if the tax rate is inclusive or exclusive.
1984
- attr_accessor :inclusive
1985
- # The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.
1986
- attr_accessor :jurisdiction
1987
- # The level of the jurisdiction that imposes this tax rate.
1988
- attr_accessor :jurisdiction_level
1989
- # The statutory tax rate percent. This field accepts decimal values between 0 and 100 inclusive with at most 4 decimal places. To accommodate fixed-amount taxes, set the percentage to zero. Stripe will not display zero percentages on the invoice unless the `amount` of the tax is also zero.
1990
- attr_accessor :percentage
1991
- # [ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2:US), without country prefix. For example, "NY" for New York, United States.
1992
- attr_accessor :state
1993
- # The high-level tax type, such as `vat` or `sales_tax`.
1994
- attr_accessor :tax_type
1995
-
1996
- def initialize(
1997
- country: nil,
1998
- description: nil,
1999
- display_name: nil,
2000
- inclusive: nil,
2001
- jurisdiction: nil,
2002
- jurisdiction_level: nil,
2003
- percentage: nil,
2004
- state: nil,
2005
- tax_type: nil
2006
- )
2007
- @country = country
2008
- @description = description
2009
- @display_name = display_name
2010
- @inclusive = inclusive
2011
- @jurisdiction = jurisdiction
2012
- @jurisdiction_level = jurisdiction_level
2013
- @percentage = percentage
2014
- @state = state
2015
- @tax_type = tax_type
2016
- end
2017
- end
2018
- # The amount, in cents (or local equivalent), of the tax.
2019
- attr_accessor :amount
2020
- # Data to find or create a TaxRate object.
2021
- #
2022
- # Stripe automatically creates or reuses a TaxRate object for each tax amount. If the `tax_rate_data` exactly matches a previous value, Stripe will reuse the TaxRate object. TaxRate objects created automatically by Stripe are immediately archived, do not appear in the line item’s `tax_rates`, and cannot be directly added to invoices, payments, or line items.
2023
- attr_accessor :tax_rate_data
2024
- # The reasoning behind this tax, for example, if the product is tax exempt.
2025
- attr_accessor :taxability_reason
2026
- # The amount on which tax is calculated, in cents (or local equivalent).
2027
- attr_accessor :taxable_amount
2028
-
2029
- def initialize(
2030
- amount: nil,
2031
- tax_rate_data: nil,
2032
- taxability_reason: nil,
2033
- taxable_amount: nil
2034
- )
2035
- @amount = amount
2036
- @tax_rate_data = tax_rate_data
2037
- @taxability_reason = taxability_reason
2038
- @taxable_amount = taxable_amount
2039
- end
2040
- end
2041
- # The integer amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. If you want to apply a credit to the customer's account, pass a negative amount.
2042
- attr_accessor :amount
2043
- # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
2044
- attr_accessor :description
2045
- # Controls whether discounts apply to this line item. Defaults to false for prorations or negative line items, and true for all other line items. Cannot be set to true for prorations.
2046
- attr_accessor :discountable
2047
- # The coupons, promotion codes & existing discounts which apply to the line item. Item discounts are applied before invoice discounts. Pass an empty string to remove previously-defined discounts.
2048
- attr_accessor :discounts
2049
- # ID of an existing line item on the invoice.
2050
- attr_accessor :id
2051
- # The IDs of the margins to apply to the line item. When set, the `default_margins` on the invoice do not apply to this line item.
2052
- attr_accessor :margins
2053
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. For [type=subscription](https://stripe.com/docs/api/invoices/line_item#invoice_line_item_object-type) line items, the incoming metadata specified on the request is directly used to set this value, in contrast to [type=invoiceitem](api/invoices/line_item#invoice_line_item_object-type) line items, where any existing metadata on the invoice line is merged with the incoming data.
2054
- attr_accessor :metadata
2055
- # The period associated with this invoice item. When set to different values, the period will be rendered on the invoice. If you have [Stripe Revenue Recognition](https://stripe.com/docs/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](https://stripe.com/docs/revenue-recognition/methodology/subscriptions-and-invoicing) for details.
2056
- attr_accessor :period
2057
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
2058
- attr_accessor :price_data
2059
- # The pricing information for the invoice item.
2060
- attr_accessor :pricing
2061
- # Non-negative integer. The quantity of units for the line item.
2062
- attr_accessor :quantity
2063
- # A list of up to 10 tax amounts for this line item. This can be useful if you calculate taxes on your own or use a third-party to calculate them. You cannot set tax amounts if any line item has [tax_rates](https://stripe.com/docs/api/invoices/line_item#invoice_line_item_object-tax_rates) or if the invoice has [default_tax_rates](https://stripe.com/docs/api/invoices/object#invoice_object-default_tax_rates) or uses [automatic tax](https://stripe.com/docs/tax/invoicing). Pass an empty string to remove previously defined tax amounts.
2064
- attr_accessor :tax_amounts
2065
- # The tax rates which apply to the line item. When set, the `default_tax_rates` on the invoice do not apply to this line item. Pass an empty string to remove previously-defined tax rates.
2066
- attr_accessor :tax_rates
2067
-
2068
- def initialize(
2069
- amount: nil,
2070
- description: nil,
2071
- discountable: nil,
2072
- discounts: nil,
2073
- id: nil,
2074
- margins: nil,
2075
- metadata: nil,
2076
- period: nil,
2077
- price_data: nil,
2078
- pricing: nil,
2079
- quantity: nil,
2080
- tax_amounts: nil,
2081
- tax_rates: nil
2082
- )
2083
- @amount = amount
2084
- @description = description
2085
- @discountable = discountable
2086
- @discounts = discounts
2087
- @id = id
2088
- @margins = margins
2089
- @metadata = metadata
2090
- @period = period
2091
- @price_data = price_data
2092
- @pricing = pricing
2093
- @quantity = quantity
2094
- @tax_amounts = tax_amounts
2095
- @tax_rates = tax_rates
2096
- end
2097
- end
2098
- # Specifies which fields in the response should be expanded.
2099
- attr_accessor :expand
2100
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. For [type=subscription](https://stripe.com/docs/api/invoices/line_item#invoice_line_item_object-type) line items, the incoming metadata specified on the request is directly used to set this value, in contrast to [type=invoiceitem](api/invoices/line_item#invoice_line_item_object-type) line items, where any existing metadata on the invoice line is merged with the incoming data.
2101
- attr_accessor :invoice_metadata
2102
- # The line items to update.
2103
- attr_accessor :lines
2104
-
2105
- def initialize(expand: nil, invoice_metadata: nil, lines: nil)
2106
- @expand = expand
2107
- @invoice_metadata = invoice_metadata
2108
- @lines = lines
2109
- end
2110
- end
2111
-
2112
- class VoidInvoiceParams < Stripe::RequestParams
2113
- # Specifies which fields in the response should be expanded.
2114
- attr_accessor :expand
2115
-
2116
- def initialize(expand: nil)
2117
- @expand = expand
2118
- end
2119
- end
2120
-
2121
- class CreatePreviewParams < Stripe::RequestParams
2122
- class AutomaticTax < Stripe::RequestParams
2123
- class Liability < Stripe::RequestParams
2124
- # The connected account being referenced when `type` is `account`.
2125
- attr_accessor :account
2126
- # Type of the account referenced in the request.
2127
- attr_accessor :type
2128
-
2129
- def initialize(account: nil, type: nil)
2130
- @account = account
2131
- @type = type
2132
- end
2133
- end
2134
- # Whether Stripe automatically computes tax on this invoice. Note that incompatible invoice items (invoice items with manually specified [tax rates](https://stripe.com/docs/api/tax_rates), negative amounts, or `tax_behavior=unspecified`) cannot be added to automatic tax invoices.
2135
- attr_accessor :enabled
2136
- # The account that's liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.
2137
- attr_accessor :liability
2138
-
2139
- def initialize(enabled: nil, liability: nil)
2140
- @enabled = enabled
2141
- @liability = liability
2142
- end
2143
- end
2144
-
2145
- class CustomerDetails < Stripe::RequestParams
2146
- class Address < Stripe::RequestParams
2147
- # City, district, suburb, town, or village.
2148
- attr_accessor :city
2149
- # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2150
- attr_accessor :country
2151
- # Address line 1 (e.g., street, PO Box, or company name).
2152
- attr_accessor :line1
2153
- # Address line 2 (e.g., apartment, suite, unit, or building).
2154
- attr_accessor :line2
2155
- # ZIP or postal code.
2156
- attr_accessor :postal_code
2157
- # State, county, province, or region.
2158
- attr_accessor :state
2159
-
2160
- def initialize(
2161
- city: nil,
2162
- country: nil,
2163
- line1: nil,
2164
- line2: nil,
2165
- postal_code: nil,
2166
- state: nil
2167
- )
2168
- @city = city
2169
- @country = country
2170
- @line1 = line1
2171
- @line2 = line2
2172
- @postal_code = postal_code
2173
- @state = state
2174
- end
2175
- end
2176
-
2177
- class Shipping < Stripe::RequestParams
2178
- class Address < Stripe::RequestParams
2179
- # City, district, suburb, town, or village.
2180
- attr_accessor :city
2181
- # A freeform text field for the country. However, in order to activate some tax features, the format should be a two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2182
- attr_accessor :country
2183
- # Address line 1 (e.g., street, PO Box, or company name).
2184
- attr_accessor :line1
2185
- # Address line 2 (e.g., apartment, suite, unit, or building).
2186
- attr_accessor :line2
2187
- # ZIP or postal code.
2188
- attr_accessor :postal_code
2189
- # State, county, province, or region.
2190
- attr_accessor :state
2191
-
2192
- def initialize(
2193
- city: nil,
2194
- country: nil,
2195
- line1: nil,
2196
- line2: nil,
2197
- postal_code: nil,
2198
- state: nil
2199
- )
2200
- @city = city
2201
- @country = country
2202
- @line1 = line1
2203
- @line2 = line2
2204
- @postal_code = postal_code
2205
- @state = state
2206
- end
2207
- end
2208
- # Customer shipping address.
2209
- attr_accessor :address
2210
- # Customer name.
2211
- attr_accessor :name
2212
- # Customer phone (including extension).
2213
- attr_accessor :phone
2214
-
2215
- def initialize(address: nil, name: nil, phone: nil)
2216
- @address = address
2217
- @name = name
2218
- @phone = phone
2219
- end
2220
- end
2221
-
2222
- class Tax < Stripe::RequestParams
2223
- # A recent IP address of the customer used for tax reporting and tax location inference. Stripe recommends updating the IP address when a new PaymentMethod is attached or the address field on the customer is updated. We recommend against updating this field more frequently since it could result in unexpected tax location/reporting outcomes.
2224
- attr_accessor :ip_address
2225
-
2226
- def initialize(ip_address: nil)
2227
- @ip_address = ip_address
2228
- end
2229
- end
2230
-
2231
- class TaxId < Stripe::RequestParams
2232
- # Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `aw_tin`, `az_tin`, `ba_tin`, `bb_tin`, `bd_bin`, `bf_ifu`, `bg_uic`, `bh_vat`, `bj_ifu`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cm_niu`, `cn_tin`, `co_nit`, `cr_tin`, `cv_nif`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `et_tin`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kg_tin`, `kh_tin`, `kr_brn`, `kz_bin`, `la_tin`, `li_uid`, `li_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`
2233
- attr_accessor :type
2234
- # Value of the tax ID.
2235
- attr_accessor :value
2236
-
2237
- def initialize(type: nil, value: nil)
2238
- @type = type
2239
- @value = value
2240
- end
2241
- end
2242
- # The customer's address.
2243
- attr_accessor :address
2244
- # The customer's shipping information. Appears on invoices emailed to this customer.
2245
- attr_accessor :shipping
2246
- # Tax details about the customer.
2247
- attr_accessor :tax
2248
- # The customer's tax exemption. One of `none`, `exempt`, or `reverse`.
2249
- attr_accessor :tax_exempt
2250
- # The customer's tax IDs.
2251
- attr_accessor :tax_ids
2252
-
2253
- def initialize(address: nil, shipping: nil, tax: nil, tax_exempt: nil, tax_ids: nil)
2254
- @address = address
2255
- @shipping = shipping
2256
- @tax = tax
2257
- @tax_exempt = tax_exempt
2258
- @tax_ids = tax_ids
2259
- end
2260
- end
2261
-
2262
- class Discount < Stripe::RequestParams
2263
- class DiscountEnd < Stripe::RequestParams
2264
- class Duration < Stripe::RequestParams
2265
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2266
- attr_accessor :interval
2267
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2268
- attr_accessor :interval_count
2269
-
2270
- def initialize(interval: nil, interval_count: nil)
2271
- @interval = interval
2272
- @interval_count = interval_count
2273
- end
2274
- end
2275
- # Time span for the redeemed discount.
2276
- attr_accessor :duration
2277
- # A precise Unix timestamp for the discount to end. Must be in the future.
2278
- attr_accessor :timestamp
2279
- # The type of calculation made to determine when the discount ends.
2280
- attr_accessor :type
2281
-
2282
- def initialize(duration: nil, timestamp: nil, type: nil)
2283
- @duration = duration
2284
- @timestamp = timestamp
2285
- @type = type
2286
- end
2287
- end
2288
- # ID of the coupon to create a new discount for.
2289
- attr_accessor :coupon
2290
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
2291
- attr_accessor :discount
2292
- # Details to determine how long the discount should be applied for.
2293
- attr_accessor :discount_end
2294
- # ID of the promotion code to create a new discount for.
2295
- attr_accessor :promotion_code
2296
-
2297
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
2298
- @coupon = coupon
2299
- @discount = discount
2300
- @discount_end = discount_end
2301
- @promotion_code = promotion_code
2302
- end
2303
- end
2304
-
2305
- class InvoiceItem < Stripe::RequestParams
2306
- class Discount < Stripe::RequestParams
2307
- class DiscountEnd < Stripe::RequestParams
2308
- class Duration < Stripe::RequestParams
2309
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2310
- attr_accessor :interval
2311
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2312
- attr_accessor :interval_count
2313
-
2314
- def initialize(interval: nil, interval_count: nil)
2315
- @interval = interval
2316
- @interval_count = interval_count
2317
- end
2318
- end
2319
- # Time span for the redeemed discount.
2320
- attr_accessor :duration
2321
- # A precise Unix timestamp for the discount to end. Must be in the future.
2322
- attr_accessor :timestamp
2323
- # The type of calculation made to determine when the discount ends.
2324
- attr_accessor :type
2325
-
2326
- def initialize(duration: nil, timestamp: nil, type: nil)
2327
- @duration = duration
2328
- @timestamp = timestamp
2329
- @type = type
2330
- end
2331
- end
2332
- # ID of the coupon to create a new discount for.
2333
- attr_accessor :coupon
2334
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
2335
- attr_accessor :discount
2336
- # Details to determine how long the discount should be applied for.
2337
- attr_accessor :discount_end
2338
- # ID of the promotion code to create a new discount for.
2339
- attr_accessor :promotion_code
2340
-
2341
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
2342
- @coupon = coupon
2343
- @discount = discount
2344
- @discount_end = discount_end
2345
- @promotion_code = promotion_code
2346
- end
2347
- end
2348
-
2349
- class Period < Stripe::RequestParams
2350
- # The end of the period, which must be greater than or equal to the start. This value is inclusive.
2351
- attr_accessor :end
2352
- # The start of the period. This value is inclusive.
2353
- attr_accessor :start
2354
-
2355
- def initialize(end_: nil, start: nil)
2356
- @end = end_
2357
- @start = start
2358
- end
2359
- end
2360
-
2361
- class PriceData < Stripe::RequestParams
2362
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
2363
- attr_accessor :currency
2364
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
2365
- attr_accessor :product
2366
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
2367
- attr_accessor :tax_behavior
2368
- # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
2369
- attr_accessor :unit_amount
2370
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
2371
- attr_accessor :unit_amount_decimal
2372
-
2373
- def initialize(
2374
- currency: nil,
2375
- product: nil,
2376
- tax_behavior: nil,
2377
- unit_amount: nil,
2378
- unit_amount_decimal: nil
2379
- )
2380
- @currency = currency
2381
- @product = product
2382
- @tax_behavior = tax_behavior
2383
- @unit_amount = unit_amount
2384
- @unit_amount_decimal = unit_amount_decimal
2385
- end
2386
- end
2387
- # The integer amount in cents (or local equivalent) of previewed invoice item.
2388
- attr_accessor :amount
2389
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies). Only applicable to new invoice items.
2390
- attr_accessor :currency
2391
- # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
2392
- attr_accessor :description
2393
- # Explicitly controls whether discounts apply to this invoice item. Defaults to true, except for negative invoice items.
2394
- attr_accessor :discountable
2395
- # The coupons to redeem into discounts for the invoice item in the preview.
2396
- attr_accessor :discounts
2397
- # The ID of the invoice item to update in preview. If not specified, a new invoice item will be added to the preview of the upcoming invoice.
2398
- attr_accessor :invoiceitem
2399
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
2400
- attr_accessor :metadata
2401
- # The period associated with this invoice item. When set to different values, the period will be rendered on the invoice. If you have [Stripe Revenue Recognition](https://stripe.com/docs/revenue-recognition) enabled, the period will be used to recognize and defer revenue. See the [Revenue Recognition documentation](https://stripe.com/docs/revenue-recognition/methodology/subscriptions-and-invoicing) for details.
2402
- attr_accessor :period
2403
- # The ID of the price object. One of `price` or `price_data` is required.
2404
- attr_accessor :price
2405
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
2406
- attr_accessor :price_data
2407
- # Non-negative integer. The quantity of units for the invoice item.
2408
- attr_accessor :quantity
2409
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
2410
- attr_accessor :tax_behavior
2411
- # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
2412
- attr_accessor :tax_code
2413
- # The tax rates that apply to the item. When set, any `default_tax_rates` do not apply to this item.
2414
- attr_accessor :tax_rates
2415
- # The integer unit amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. This unit_amount will be multiplied by the quantity to get the full amount. If you want to apply a credit to the customer's account, pass a negative unit_amount.
2416
- attr_accessor :unit_amount
2417
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
2418
- attr_accessor :unit_amount_decimal
2419
-
2420
- def initialize(
2421
- amount: nil,
2422
- currency: nil,
2423
- description: nil,
2424
- discountable: nil,
2425
- discounts: nil,
2426
- invoiceitem: nil,
2427
- metadata: nil,
2428
- period: nil,
2429
- price: nil,
2430
- price_data: nil,
2431
- quantity: nil,
2432
- tax_behavior: nil,
2433
- tax_code: nil,
2434
- tax_rates: nil,
2435
- unit_amount: nil,
2436
- unit_amount_decimal: nil
2437
- )
2438
- @amount = amount
2439
- @currency = currency
2440
- @description = description
2441
- @discountable = discountable
2442
- @discounts = discounts
2443
- @invoiceitem = invoiceitem
2444
- @metadata = metadata
2445
- @period = period
2446
- @price = price
2447
- @price_data = price_data
2448
- @quantity = quantity
2449
- @tax_behavior = tax_behavior
2450
- @tax_code = tax_code
2451
- @tax_rates = tax_rates
2452
- @unit_amount = unit_amount
2453
- @unit_amount_decimal = unit_amount_decimal
2454
- end
2455
- end
2456
-
2457
- class Issuer < Stripe::RequestParams
2458
- # The connected account being referenced when `type` is `account`.
2459
- attr_accessor :account
2460
- # Type of the account referenced in the request.
2461
- attr_accessor :type
2462
-
2463
- def initialize(account: nil, type: nil)
2464
- @account = account
2465
- @type = type
2466
- end
2467
- end
2468
-
2469
- class ScheduleDetails < Stripe::RequestParams
2470
- class Amendment < Stripe::RequestParams
2471
- class AmendmentEnd < Stripe::RequestParams
2472
- class DiscountEnd < Stripe::RequestParams
2473
- # The ID of a specific discount.
2474
- attr_accessor :discount
2475
-
2476
- def initialize(discount: nil)
2477
- @discount = discount
2478
- end
2479
- end
2480
-
2481
- class Duration < Stripe::RequestParams
2482
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2483
- attr_accessor :interval
2484
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2485
- attr_accessor :interval_count
2486
-
2487
- def initialize(interval: nil, interval_count: nil)
2488
- @interval = interval
2489
- @interval_count = interval_count
2490
- end
2491
- end
2492
- # Use the `end` time of a given discount.
2493
- attr_accessor :discount_end
2494
- # Time span for the amendment starting from the `amendment_start`.
2495
- attr_accessor :duration
2496
- # A precise Unix timestamp for the amendment to end. Must be after the `amendment_start`.
2497
- attr_accessor :timestamp
2498
- # Select one of three ways to pass the `amendment_end`.
2499
- attr_accessor :type
2500
-
2501
- def initialize(discount_end: nil, duration: nil, timestamp: nil, type: nil)
2502
- @discount_end = discount_end
2503
- @duration = duration
2504
- @timestamp = timestamp
2505
- @type = type
2506
- end
2507
- end
2508
-
2509
- class AmendmentStart < Stripe::RequestParams
2510
- class AmendmentEnd < Stripe::RequestParams
2511
- # The position of the previous amendment in the `amendments` array after which this amendment should begin. Indexes start from 0 and must be less than the index of the current amendment in the array.
2512
- attr_accessor :index
2513
-
2514
- def initialize(index: nil)
2515
- @index = index
2516
- end
2517
- end
2518
-
2519
- class DiscountEnd < Stripe::RequestParams
2520
- # The ID of a specific discount.
2521
- attr_accessor :discount
2522
-
2523
- def initialize(discount: nil)
2524
- @discount = discount
2525
- end
2526
- end
2527
- # Details of another amendment in the same array, immediately after which this amendment should begin.
2528
- attr_accessor :amendment_end
2529
- # Use the `end` time of a given discount.
2530
- attr_accessor :discount_end
2531
- # A precise Unix timestamp for the amendment to start.
2532
- attr_accessor :timestamp
2533
- # Select one of three ways to pass the `amendment_start`.
2534
- attr_accessor :type
2535
-
2536
- def initialize(amendment_end: nil, discount_end: nil, timestamp: nil, type: nil)
2537
- @amendment_end = amendment_end
2538
- @discount_end = discount_end
2539
- @timestamp = timestamp
2540
- @type = type
2541
- end
2542
- end
2543
-
2544
- class DiscountAction < Stripe::RequestParams
2545
- class Add < Stripe::RequestParams
2546
- class DiscountEnd < Stripe::RequestParams
2547
- # The type of calculation made to determine when the discount ends.
2548
- attr_accessor :type
2549
-
2550
- def initialize(type: nil)
2551
- @type = type
2552
- end
2553
- end
2554
- # The coupon code to redeem.
2555
- attr_accessor :coupon
2556
- # An ID of an existing discount for a coupon that was already redeemed.
2557
- attr_accessor :discount
2558
- # Details to determine how long the discount should be applied for.
2559
- attr_accessor :discount_end
2560
- # 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.
2561
- attr_accessor :index
2562
- # The promotion code to redeem.
2563
- attr_accessor :promotion_code
2564
-
2565
- def initialize(
2566
- coupon: nil,
2567
- discount: nil,
2568
- discount_end: nil,
2569
- index: nil,
2570
- promotion_code: nil
2571
- )
2572
- @coupon = coupon
2573
- @discount = discount
2574
- @discount_end = discount_end
2575
- @index = index
2576
- @promotion_code = promotion_code
2577
- end
2578
- end
2579
-
2580
- class Remove < Stripe::RequestParams
2581
- # The coupon code to remove from the `discounts` array.
2582
- attr_accessor :coupon
2583
- # The ID of a discount to remove from the `discounts` array.
2584
- attr_accessor :discount
2585
- # The ID of a promotion code to remove from the `discounts` array.
2586
- attr_accessor :promotion_code
2587
-
2588
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
2589
- @coupon = coupon
2590
- @discount = discount
2591
- @promotion_code = promotion_code
2592
- end
2593
- end
2594
-
2595
- class Set < Stripe::RequestParams
2596
- # The coupon code to replace the `discounts` array with.
2597
- attr_accessor :coupon
2598
- # An ID of an existing discount to replace the `discounts` array with.
2599
- attr_accessor :discount
2600
- # An ID of an existing promotion code to replace the `discounts` array with.
2601
- attr_accessor :promotion_code
2602
-
2603
- def initialize(coupon: nil, discount: nil, promotion_code: nil)
2604
- @coupon = coupon
2605
- @discount = discount
2606
- @promotion_code = promotion_code
2607
- end
2608
- end
2609
- # Details of the discount to add.
2610
- attr_accessor :add
2611
- # Details of the discount to remove.
2612
- attr_accessor :remove
2613
- # Details of the discount to replace the existing discounts with.
2614
- attr_accessor :set
2615
- # Determines the type of discount action.
2616
- attr_accessor :type
2617
-
2618
- def initialize(add: nil, remove: nil, set: nil, type: nil)
2619
- @add = add
2620
- @remove = remove
2621
- @set = set
2622
- @type = type
2623
- end
2624
- end
2625
-
2626
- class ItemAction < Stripe::RequestParams
2627
- class Add < Stripe::RequestParams
2628
- class Discount < Stripe::RequestParams
2629
- class DiscountEnd < Stripe::RequestParams
2630
- class Duration < Stripe::RequestParams
2631
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2632
- attr_accessor :interval
2633
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2634
- attr_accessor :interval_count
2635
-
2636
- def initialize(interval: nil, interval_count: nil)
2637
- @interval = interval
2638
- @interval_count = interval_count
2639
- end
2640
- end
2641
- # Time span for the redeemed discount.
2642
- attr_accessor :duration
2643
- # A precise Unix timestamp for the discount to end. Must be in the future.
2644
- attr_accessor :timestamp
2645
- # The type of calculation made to determine when the discount ends.
2646
- attr_accessor :type
2647
-
2648
- def initialize(duration: nil, timestamp: nil, type: nil)
2649
- @duration = duration
2650
- @timestamp = timestamp
2651
- @type = type
2652
- end
2653
- end
2654
- # ID of the coupon to create a new discount for.
2655
- attr_accessor :coupon
2656
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
2657
- attr_accessor :discount
2658
- # Details to determine how long the discount should be applied for.
2659
- attr_accessor :discount_end
2660
- # ID of the promotion code to create a new discount for.
2661
- attr_accessor :promotion_code
2662
-
2663
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
2664
- @coupon = coupon
2665
- @discount = discount
2666
- @discount_end = discount_end
2667
- @promotion_code = promotion_code
2668
- end
2669
- end
2670
-
2671
- class Trial < Stripe::RequestParams
2672
- # 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.
2673
- attr_accessor :converts_to
2674
- # Determines the type of trial for this item.
2675
- attr_accessor :type
2676
-
2677
- def initialize(converts_to: nil, type: nil)
2678
- @converts_to = converts_to
2679
- @type = type
2680
- end
2681
- end
2682
- # The discounts applied to the item. Subscription item discounts are applied before subscription discounts.
2683
- attr_accessor :discounts
2684
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
2685
- attr_accessor :metadata
2686
- # The ID of the price object.
2687
- attr_accessor :price
2688
- # Quantity for this item.
2689
- attr_accessor :quantity
2690
- # 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`.
2691
- attr_accessor :tax_rates
2692
- # Options that configure the trial on the subscription item.
2693
- attr_accessor :trial
2694
-
2695
- def initialize(
2696
- discounts: nil,
2697
- metadata: nil,
2698
- price: nil,
2699
- quantity: nil,
2700
- tax_rates: nil,
2701
- trial: nil
2702
- )
2703
- @discounts = discounts
2704
- @metadata = metadata
2705
- @price = price
2706
- @quantity = quantity
2707
- @tax_rates = tax_rates
2708
- @trial = trial
2709
- end
2710
- end
2711
-
2712
- class Remove < Stripe::RequestParams
2713
- # ID of a price to remove.
2714
- attr_accessor :price
2715
-
2716
- def initialize(price: nil)
2717
- @price = price
2718
- end
2719
- end
2720
-
2721
- class Set < Stripe::RequestParams
2722
- class Discount < Stripe::RequestParams
2723
- class DiscountEnd < Stripe::RequestParams
2724
- class Duration < Stripe::RequestParams
2725
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2726
- attr_accessor :interval
2727
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2728
- attr_accessor :interval_count
2729
-
2730
- def initialize(interval: nil, interval_count: nil)
2731
- @interval = interval
2732
- @interval_count = interval_count
2733
- end
2734
- end
2735
- # Time span for the redeemed discount.
2736
- attr_accessor :duration
2737
- # A precise Unix timestamp for the discount to end. Must be in the future.
2738
- attr_accessor :timestamp
2739
- # The type of calculation made to determine when the discount ends.
2740
- attr_accessor :type
2741
-
2742
- def initialize(duration: nil, timestamp: nil, type: nil)
2743
- @duration = duration
2744
- @timestamp = timestamp
2745
- @type = type
2746
- end
2747
- end
2748
- # ID of the coupon to create a new discount for.
2749
- attr_accessor :coupon
2750
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
2751
- attr_accessor :discount
2752
- # Details to determine how long the discount should be applied for.
2753
- attr_accessor :discount_end
2754
- # ID of the promotion code to create a new discount for.
2755
- attr_accessor :promotion_code
2756
-
2757
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
2758
- @coupon = coupon
2759
- @discount = discount
2760
- @discount_end = discount_end
2761
- @promotion_code = promotion_code
2762
- end
2763
- end
2764
-
2765
- class Trial < Stripe::RequestParams
2766
- # 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.
2767
- attr_accessor :converts_to
2768
- # Determines the type of trial for this item.
2769
- attr_accessor :type
2770
-
2771
- def initialize(converts_to: nil, type: nil)
2772
- @converts_to = converts_to
2773
- @type = type
2774
- end
2775
- end
2776
- # 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`.
2777
- attr_accessor :discounts
2778
- # 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`.
2779
- attr_accessor :metadata
2780
- # The ID of the price object.
2781
- attr_accessor :price
2782
- # 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`.
2783
- attr_accessor :quantity
2784
- # 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`.
2785
- attr_accessor :tax_rates
2786
- # 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`.
2787
- attr_accessor :trial
2788
-
2789
- def initialize(
2790
- discounts: nil,
2791
- metadata: nil,
2792
- price: nil,
2793
- quantity: nil,
2794
- tax_rates: nil,
2795
- trial: nil
2796
- )
2797
- @discounts = discounts
2798
- @metadata = metadata
2799
- @price = price
2800
- @quantity = quantity
2801
- @tax_rates = tax_rates
2802
- @trial = trial
2803
- end
2804
- end
2805
- # Details of the subscription item to add. If an item with the same `price` exists, it will be replaced by this new item. Otherwise, it adds the new item.
2806
- attr_accessor :add
2807
- # Details of the subscription item to remove.
2808
- attr_accessor :remove
2809
- # Details of the subscription item to replace the existing items with. If an item with the `set[price]` already exists, the `items` array is not cleared. Instead, all of the other `set` properties that are passed in this request will replace the existing values for the configuration item.
2810
- attr_accessor :set
2811
- # Determines the type of item action.
2812
- attr_accessor :type
2813
-
2814
- def initialize(add: nil, remove: nil, set: nil, type: nil)
2815
- @add = add
2816
- @remove = remove
2817
- @set = set
2818
- @type = type
2819
- end
2820
- end
2821
-
2822
- class MetadataAction < Stripe::RequestParams
2823
- # Key-value pairs to add to schedule phase metadata. These values will merge with existing schedule phase metadata.
2824
- attr_accessor :add
2825
- # Keys to remove from schedule phase metadata.
2826
- attr_accessor :remove
2827
- # Key-value pairs to set as schedule phase metadata. Existing schedule phase metadata will be overwritten.
2828
- attr_accessor :set
2829
- # Select one of three ways to update phase-level `metadata` on subscription schedules.
2830
- attr_accessor :type
2831
-
2832
- def initialize(add: nil, remove: nil, set: nil, type: nil)
2833
- @add = add
2834
- @remove = remove
2835
- @set = set
2836
- @type = type
2837
- end
2838
- end
2839
-
2840
- class SetPauseCollection < Stripe::RequestParams
2841
- class Set < Stripe::RequestParams
2842
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
2843
- attr_accessor :behavior
2844
-
2845
- def initialize(behavior: nil)
2846
- @behavior = behavior
2847
- end
2848
- end
2849
- # Details of the pause_collection behavior to apply to the amendment.
2850
- attr_accessor :set
2851
- # Determines the type of the pause_collection amendment.
2852
- attr_accessor :type
2853
-
2854
- def initialize(set: nil, type: nil)
2855
- @set = set
2856
- @type = type
2857
- end
2858
- end
2859
-
2860
- class TrialSettings < Stripe::RequestParams
2861
- class EndBehavior < Stripe::RequestParams
2862
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
2863
- attr_accessor :prorate_up_front
2864
-
2865
- def initialize(prorate_up_front: nil)
2866
- @prorate_up_front = prorate_up_front
2867
- end
2868
- end
2869
- # Defines how the subscription should behave when a trial ends.
2870
- attr_accessor :end_behavior
2871
-
2872
- def initialize(end_behavior: nil)
2873
- @end_behavior = end_behavior
2874
- end
2875
- end
2876
- # Details to identify the end of the time range modified by the proposed change. If not supplied, the amendment is considered a point-in-time operation that only affects the exact timestamp at `amendment_start`, and a restricted set of attributes is supported on the amendment.
2877
- attr_accessor :amendment_end
2878
- # Details to identify the earliest timestamp where the proposed change should take effect.
2879
- attr_accessor :amendment_start
2880
- # For point-in-time amendments (having no `amendment_end`), this attribute lets you set or remove whether the subscription's billing cycle anchor is reset at the `amendment_start` timestamp.For time-span based amendments (having both `amendment_start` and `amendment_end`), the only value valid is `automatic`, which removes any previously configured billing cycle anchor resets scheduled to occur during the window of time spanned by the amendment.
2881
- attr_accessor :billing_cycle_anchor
2882
- # Changes to the coupons being redeemed or discounts being applied during the amendment time span.
2883
- attr_accessor :discount_actions
2884
- # Changes to the subscription items during the amendment time span.
2885
- attr_accessor :item_actions
2886
- # Instructions for how to modify phase metadata
2887
- attr_accessor :metadata_actions
2888
- # Changes to how Stripe handles prorations during the amendment time span. Affects if and how prorations are created when a future phase starts. In cases where the amendment changes the currently active phase, it is used to determine whether or how to prorate now, at the time of the request. Also supported as a point-in-time operation when `amendment_end` is `null`.
2889
- attr_accessor :proration_behavior
2890
- # Defines how to pause collection for the underlying subscription throughout the duration of the amendment.
2891
- attr_accessor :set_pause_collection
2892
- # Ends the subscription schedule early as dictated by either the accompanying amendment's start or end.
2893
- attr_accessor :set_schedule_end
2894
- # Settings related to subscription trials.
2895
- attr_accessor :trial_settings
2896
-
2897
- def initialize(
2898
- amendment_end: nil,
2899
- amendment_start: nil,
2900
- billing_cycle_anchor: nil,
2901
- discount_actions: nil,
2902
- item_actions: nil,
2903
- metadata_actions: nil,
2904
- proration_behavior: nil,
2905
- set_pause_collection: nil,
2906
- set_schedule_end: nil,
2907
- trial_settings: nil
2908
- )
2909
- @amendment_end = amendment_end
2910
- @amendment_start = amendment_start
2911
- @billing_cycle_anchor = billing_cycle_anchor
2912
- @discount_actions = discount_actions
2913
- @item_actions = item_actions
2914
- @metadata_actions = metadata_actions
2915
- @proration_behavior = proration_behavior
2916
- @set_pause_collection = set_pause_collection
2917
- @set_schedule_end = set_schedule_end
2918
- @trial_settings = trial_settings
2919
- end
2920
- end
2921
-
2922
- class BillingMode < Stripe::RequestParams
2923
- # Controls the calculation and orchestration of prorations and invoices for subscriptions.
2924
- attr_accessor :type
2925
-
2926
- def initialize(type: nil)
2927
- @type = type
2928
- end
2929
- end
2930
-
2931
- class Phase < Stripe::RequestParams
2932
- class AddInvoiceItem < Stripe::RequestParams
2933
- class Discount < Stripe::RequestParams
2934
- class DiscountEnd < Stripe::RequestParams
2935
- class Duration < Stripe::RequestParams
2936
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
2937
- attr_accessor :interval
2938
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
2939
- attr_accessor :interval_count
2940
-
2941
- def initialize(interval: nil, interval_count: nil)
2942
- @interval = interval
2943
- @interval_count = interval_count
2944
- end
2945
- end
2946
- # Time span for the redeemed discount.
2947
- attr_accessor :duration
2948
- # A precise Unix timestamp for the discount to end. Must be in the future.
2949
- attr_accessor :timestamp
2950
- # The type of calculation made to determine when the discount ends.
2951
- attr_accessor :type
2952
-
2953
- def initialize(duration: nil, timestamp: nil, type: nil)
2954
- @duration = duration
2955
- @timestamp = timestamp
2956
- @type = type
2957
- end
2958
- end
2959
- # ID of the coupon to create a new discount for.
2960
- attr_accessor :coupon
2961
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
2962
- attr_accessor :discount
2963
- # Details to determine how long the discount should be applied for.
2964
- attr_accessor :discount_end
2965
- # ID of the promotion code to create a new discount for.
2966
- attr_accessor :promotion_code
2967
-
2968
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
2969
- @coupon = coupon
2970
- @discount = discount
2971
- @discount_end = discount_end
2972
- @promotion_code = promotion_code
2973
- end
2974
- end
2975
-
2976
- class Period < Stripe::RequestParams
2977
- class End < Stripe::RequestParams
2978
- # A precise Unix timestamp for the end of the invoice item period. Must be greater than or equal to `period.start`.
2979
- attr_accessor :timestamp
2980
- # Select how to calculate the end of the invoice item period.
2981
- attr_accessor :type
2982
-
2983
- def initialize(timestamp: nil, type: nil)
2984
- @timestamp = timestamp
2985
- @type = type
2986
- end
2987
- end
2988
-
2989
- class Start < Stripe::RequestParams
2990
- # A precise Unix timestamp for the start of the invoice item period. Must be less than or equal to `period.end`.
2991
- attr_accessor :timestamp
2992
- # Select how to calculate the start of the invoice item period.
2993
- attr_accessor :type
2994
-
2995
- def initialize(timestamp: nil, type: nil)
2996
- @timestamp = timestamp
2997
- @type = type
2998
- end
2999
- end
3000
- # End of the invoice item period.
3001
- attr_accessor :end
3002
- # Start of the invoice item period.
3003
- attr_accessor :start
3004
-
3005
- def initialize(end_: nil, start: nil)
3006
- @end = end_
3007
- @start = start
3008
- end
3009
- end
3010
-
3011
- class PriceData < Stripe::RequestParams
3012
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
3013
- attr_accessor :currency
3014
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
3015
- attr_accessor :product
3016
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
3017
- attr_accessor :tax_behavior
3018
- # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge or a negative integer representing the amount to credit to the customer.
3019
- attr_accessor :unit_amount
3020
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
3021
- attr_accessor :unit_amount_decimal
3022
-
3023
- def initialize(
3024
- currency: nil,
3025
- product: nil,
3026
- tax_behavior: nil,
3027
- unit_amount: nil,
3028
- unit_amount_decimal: nil
3029
- )
3030
- @currency = currency
3031
- @product = product
3032
- @tax_behavior = tax_behavior
3033
- @unit_amount = unit_amount
3034
- @unit_amount_decimal = unit_amount_decimal
3035
- end
3036
- end
3037
- # The coupons to redeem into discounts for the item.
3038
- attr_accessor :discounts
3039
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
3040
- attr_accessor :metadata
3041
- # The period associated with this invoice item. Defaults to the period of the underlying subscription that surrounds the start of the phase.
3042
- attr_accessor :period
3043
- # The ID of the price object. One of `price` or `price_data` is required.
3044
- attr_accessor :price
3045
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
3046
- attr_accessor :price_data
3047
- # Quantity for this item. Defaults to 1.
3048
- attr_accessor :quantity
3049
- # The tax rates which apply to the item. When set, the `default_tax_rates` do not apply to this item.
3050
- attr_accessor :tax_rates
3051
-
3052
- def initialize(
3053
- discounts: nil,
3054
- metadata: nil,
3055
- period: nil,
3056
- price: nil,
3057
- price_data: nil,
3058
- quantity: nil,
3059
- tax_rates: nil
3060
- )
3061
- @discounts = discounts
3062
- @metadata = metadata
3063
- @period = period
3064
- @price = price
3065
- @price_data = price_data
3066
- @quantity = quantity
3067
- @tax_rates = tax_rates
3068
- end
3069
- end
3070
-
3071
- class AutomaticTax < Stripe::RequestParams
3072
- class Liability < Stripe::RequestParams
3073
- # The connected account being referenced when `type` is `account`.
3074
- attr_accessor :account
3075
- # Type of the account referenced in the request.
3076
- attr_accessor :type
3077
-
3078
- def initialize(account: nil, type: nil)
3079
- @account = account
3080
- @type = type
3081
- end
3082
- end
3083
- # Enabled automatic tax calculation which will automatically compute tax rates on all invoices generated by the subscription.
3084
- attr_accessor :enabled
3085
- # The account that's liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.
3086
- attr_accessor :liability
3087
-
3088
- def initialize(enabled: nil, liability: nil)
3089
- @enabled = enabled
3090
- @liability = liability
3091
- end
3092
- end
3093
-
3094
- class BillingThresholds < Stripe::RequestParams
3095
- # Monetary threshold that triggers the subscription to advance to a new billing period
3096
- attr_accessor :amount_gte
3097
- # Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
3098
- attr_accessor :reset_billing_cycle_anchor
3099
-
3100
- def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
3101
- @amount_gte = amount_gte
3102
- @reset_billing_cycle_anchor = reset_billing_cycle_anchor
3103
- end
3104
- end
3105
-
3106
- class Discount < Stripe::RequestParams
3107
- class DiscountEnd < Stripe::RequestParams
3108
- class Duration < Stripe::RequestParams
3109
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
3110
- attr_accessor :interval
3111
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
3112
- attr_accessor :interval_count
3113
-
3114
- def initialize(interval: nil, interval_count: nil)
3115
- @interval = interval
3116
- @interval_count = interval_count
3117
- end
3118
- end
3119
- # Time span for the redeemed discount.
3120
- attr_accessor :duration
3121
- # A precise Unix timestamp for the discount to end. Must be in the future.
3122
- attr_accessor :timestamp
3123
- # The type of calculation made to determine when the discount ends.
3124
- attr_accessor :type
3125
-
3126
- def initialize(duration: nil, timestamp: nil, type: nil)
3127
- @duration = duration
3128
- @timestamp = timestamp
3129
- @type = type
3130
- end
3131
- end
3132
- # ID of the coupon to create a new discount for.
3133
- attr_accessor :coupon
3134
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
3135
- attr_accessor :discount
3136
- # Details to determine how long the discount should be applied for.
3137
- attr_accessor :discount_end
3138
- # ID of the promotion code to create a new discount for.
3139
- attr_accessor :promotion_code
3140
-
3141
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
3142
- @coupon = coupon
3143
- @discount = discount
3144
- @discount_end = discount_end
3145
- @promotion_code = promotion_code
3146
- end
3147
- end
3148
-
3149
- class Duration < Stripe::RequestParams
3150
- # Specifies phase duration. Either `day`, `week`, `month` or `year`.
3151
- attr_accessor :interval
3152
- # The multiplier applied to the interval.
3153
- attr_accessor :interval_count
3154
-
3155
- def initialize(interval: nil, interval_count: nil)
3156
- @interval = interval
3157
- @interval_count = interval_count
3158
- end
3159
- end
3160
-
3161
- class InvoiceSettings < Stripe::RequestParams
3162
- class Issuer < Stripe::RequestParams
3163
- # The connected account being referenced when `type` is `account`.
3164
- attr_accessor :account
3165
- # Type of the account referenced in the request.
3166
- attr_accessor :type
3167
-
3168
- def initialize(account: nil, type: nil)
3169
- @account = account
3170
- @type = type
3171
- end
3172
- end
3173
- # The account tax IDs associated with this phase of the subscription schedule. Will be set on invoices generated by this phase of the subscription schedule.
3174
- attr_accessor :account_tax_ids
3175
- # Number of days within which a customer must pay invoices generated by this subscription schedule. This value will be `null` for subscription schedules where `billing=charge_automatically`.
3176
- attr_accessor :days_until_due
3177
- # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
3178
- attr_accessor :issuer
3179
-
3180
- def initialize(account_tax_ids: nil, days_until_due: nil, issuer: nil)
3181
- @account_tax_ids = account_tax_ids
3182
- @days_until_due = days_until_due
3183
- @issuer = issuer
3184
- end
3185
- end
3186
-
3187
- class Item < Stripe::RequestParams
3188
- class BillingThresholds < Stripe::RequestParams
3189
- # Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
3190
- attr_accessor :usage_gte
3191
-
3192
- def initialize(usage_gte: nil)
3193
- @usage_gte = usage_gte
3194
- end
3195
- end
3196
-
3197
- class Discount < Stripe::RequestParams
3198
- class DiscountEnd < Stripe::RequestParams
3199
- class Duration < Stripe::RequestParams
3200
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
3201
- attr_accessor :interval
3202
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
3203
- attr_accessor :interval_count
3204
-
3205
- def initialize(interval: nil, interval_count: nil)
3206
- @interval = interval
3207
- @interval_count = interval_count
3208
- end
3209
- end
3210
- # Time span for the redeemed discount.
3211
- attr_accessor :duration
3212
- # A precise Unix timestamp for the discount to end. Must be in the future.
3213
- attr_accessor :timestamp
3214
- # The type of calculation made to determine when the discount ends.
3215
- attr_accessor :type
3216
-
3217
- def initialize(duration: nil, timestamp: nil, type: nil)
3218
- @duration = duration
3219
- @timestamp = timestamp
3220
- @type = type
3221
- end
3222
- end
3223
- # ID of the coupon to create a new discount for.
3224
- attr_accessor :coupon
3225
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
3226
- attr_accessor :discount
3227
- # Details to determine how long the discount should be applied for.
3228
- attr_accessor :discount_end
3229
- # ID of the promotion code to create a new discount for.
3230
- attr_accessor :promotion_code
3231
-
3232
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
3233
- @coupon = coupon
3234
- @discount = discount
3235
- @discount_end = discount_end
3236
- @promotion_code = promotion_code
3237
- end
3238
- end
3239
-
3240
- class PriceData < Stripe::RequestParams
3241
- class Recurring < Stripe::RequestParams
3242
- # Specifies billing frequency. Either `day`, `week`, `month` or `year`.
3243
- attr_accessor :interval
3244
- # The number of intervals between subscription billings. For example, `interval=month` and `interval_count=3` bills every 3 months. Maximum of three years interval allowed (3 years, 36 months, or 156 weeks).
3245
- attr_accessor :interval_count
3246
-
3247
- def initialize(interval: nil, interval_count: nil)
3248
- @interval = interval
3249
- @interval_count = interval_count
3250
- end
3251
- end
3252
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
3253
- attr_accessor :currency
3254
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
3255
- attr_accessor :product
3256
- # The recurring components of a price such as `interval` and `interval_count`.
3257
- attr_accessor :recurring
3258
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
3259
- attr_accessor :tax_behavior
3260
- # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
3261
- attr_accessor :unit_amount
3262
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
3263
- attr_accessor :unit_amount_decimal
3264
-
3265
- def initialize(
3266
- currency: nil,
3267
- product: nil,
3268
- recurring: nil,
3269
- tax_behavior: nil,
3270
- unit_amount: nil,
3271
- unit_amount_decimal: nil
3272
- )
3273
- @currency = currency
3274
- @product = product
3275
- @recurring = recurring
3276
- @tax_behavior = tax_behavior
3277
- @unit_amount = unit_amount
3278
- @unit_amount_decimal = unit_amount_decimal
3279
- end
3280
- end
3281
-
3282
- class Trial < Stripe::RequestParams
3283
- # 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.
3284
- attr_accessor :converts_to
3285
- # Determines the type of trial for this item.
3286
- attr_accessor :type
3287
-
3288
- def initialize(converts_to: nil, type: nil)
3289
- @converts_to = converts_to
3290
- @type = type
3291
- end
3292
- end
3293
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
3294
- attr_accessor :billing_thresholds
3295
- # The coupons to redeem into discounts for the subscription item.
3296
- attr_accessor :discounts
3297
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a configuration item. Metadata on a configuration item will update the underlying subscription item's `metadata` when the phase is entered, adding new keys and replacing existing keys. Individual keys in the subscription item's `metadata` can be unset by posting an empty value to them in the configuration item's `metadata`. To unset all keys in the subscription item's `metadata`, update the subscription item directly or unset every key individually from the configuration item's `metadata`.
3298
- attr_accessor :metadata
3299
- # The plan ID to subscribe to. You may specify the same ID in `plan` and `price`.
3300
- attr_accessor :plan
3301
- # The ID of the price object.
3302
- attr_accessor :price
3303
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
3304
- attr_accessor :price_data
3305
- # Quantity for the given price. Can be set only if the price's `usage_type` is `licensed` and not `metered`.
3306
- attr_accessor :quantity
3307
- # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
3308
- attr_accessor :tax_rates
3309
- # Options that configure the trial on the subscription item.
3310
- attr_accessor :trial
3311
-
3312
- def initialize(
3313
- billing_thresholds: nil,
3314
- discounts: nil,
3315
- metadata: nil,
3316
- plan: nil,
3317
- price: nil,
3318
- price_data: nil,
3319
- quantity: nil,
3320
- tax_rates: nil,
3321
- trial: nil
3322
- )
3323
- @billing_thresholds = billing_thresholds
3324
- @discounts = discounts
3325
- @metadata = metadata
3326
- @plan = plan
3327
- @price = price
3328
- @price_data = price_data
3329
- @quantity = quantity
3330
- @tax_rates = tax_rates
3331
- @trial = trial
3332
- end
3333
- end
3334
-
3335
- class PauseCollection < Stripe::RequestParams
3336
- # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
3337
- attr_accessor :behavior
3338
-
3339
- def initialize(behavior: nil)
3340
- @behavior = behavior
3341
- end
3342
- end
3343
-
3344
- class TransferData < Stripe::RequestParams
3345
- # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the destination account. By default, the entire amount is transferred to the destination.
3346
- attr_accessor :amount_percent
3347
- # ID of an existing, connected Stripe account.
3348
- attr_accessor :destination
3349
-
3350
- def initialize(amount_percent: nil, destination: nil)
3351
- @amount_percent = amount_percent
3352
- @destination = destination
3353
- end
3354
- end
3355
-
3356
- class TrialSettings < Stripe::RequestParams
3357
- class EndBehavior < Stripe::RequestParams
3358
- # Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
3359
- attr_accessor :prorate_up_front
3360
-
3361
- def initialize(prorate_up_front: nil)
3362
- @prorate_up_front = prorate_up_front
3363
- end
3364
- end
3365
- # Defines how the subscription should behave when a trial ends.
3366
- attr_accessor :end_behavior
3367
-
3368
- def initialize(end_behavior: nil)
3369
- @end_behavior = end_behavior
3370
- end
3371
- end
3372
- # A list of prices and quantities that will generate invoice items appended to the next invoice for this phase. You may pass up to 20 items.
3373
- attr_accessor :add_invoice_items
3374
- # 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. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
3375
- attr_accessor :application_fee_percent
3376
- # Automatic tax settings for this phase.
3377
- attr_accessor :automatic_tax
3378
- # Can be set to `phase_start` to set the anchor to the start of the phase or `automatic` to automatically change it if needed. Cannot be set to `phase_start` if this phase specifies a trial. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
3379
- attr_accessor :billing_cycle_anchor
3380
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
3381
- attr_accessor :billing_thresholds
3382
- # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay the underlying subscription at the end of each billing cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions and mark the subscription as `active`. Defaults to `charge_automatically` on creation.
3383
- attr_accessor :collection_method
3384
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
3385
- attr_accessor :currency
3386
- # ID of the default payment method for the subscription schedule. It must belong to the customer associated with the subscription schedule. If not set, invoices will use the default payment method in the customer's invoice settings.
3387
- attr_accessor :default_payment_method
3388
- # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will set the Subscription's [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates), which means they will be the Invoice's [`default_tax_rates`](https://stripe.com/docs/api/invoices/create#create_invoice-default_tax_rates) for any Invoices issued by the Subscription during this Phase.
3389
- attr_accessor :default_tax_rates
3390
- # Subscription 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.
3391
- attr_accessor :description
3392
- # The coupons to redeem into discounts for the schedule phase. If not specified, inherits the discount from the subscription's customer. Pass an empty string to avoid inheriting any discounts.
3393
- attr_accessor :discounts
3394
- # The number of intervals the phase should last. If set, `end_date` must not be set.
3395
- attr_accessor :duration
3396
- # The date at which this phase of the subscription schedule ends. If set, `iterations` must not be set.
3397
- attr_accessor :end_date
3398
- # All invoices will be billed using the specified settings.
3399
- attr_accessor :invoice_settings
3400
- # List of configuration items, each with an attached price, to apply during this phase of the subscription schedule.
3401
- attr_accessor :items
3402
- # Integer representing the multiplier applied to the price interval. For example, `iterations=2` applied to a price with `interval=month` and `interval_count=3` results in a phase of duration `2 * 3 months = 6 months`. If set, `end_date` must not be set. This parameter is deprecated and will be removed in a future version. Use `duration` instead.
3403
- attr_accessor :iterations
3404
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to a phase. Metadata on a schedule's phase will update the underlying subscription's `metadata` when the phase is entered, adding new keys and replacing existing keys in the subscription's `metadata`. Individual keys in the subscription's `metadata` can be unset by posting an empty value to them in the phase's `metadata`. To unset all keys in the subscription's `metadata`, update the subscription directly or unset every key individually from the phase's `metadata`.
3405
- attr_accessor :metadata
3406
- # The account on behalf of which to charge, for each of the associated subscription's invoices.
3407
- attr_accessor :on_behalf_of
3408
- # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
3409
- attr_accessor :pause_collection
3410
- # Controls whether the subscription schedule should create [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when transitioning to this phase if there is a difference in billing configuration. It's different from the request-level [proration_behavior](https://stripe.com/docs/api/subscription_schedules/update#update_subscription_schedule-proration_behavior) parameter which controls what happens if the update request affects the billing configuration (item price, quantity, etc.) of the current phase.
3411
- attr_accessor :proration_behavior
3412
- # The date at which this phase of the subscription schedule starts or `now`. Must be set on the first phase.
3413
- attr_accessor :start_date
3414
- # The data with which to automatically create a Transfer for each of the associated subscription's invoices.
3415
- attr_accessor :transfer_data
3416
- # If set to true the entire phase is counted as a trial and the customer will not be charged for any fees.
3417
- attr_accessor :trial
3418
- # Specify trial behavior when crossing phase boundaries
3419
- attr_accessor :trial_continuation
3420
- # Sets the phase to trialing from the start date to this date. Must be before the phase end date, can not be combined with `trial`
3421
- attr_accessor :trial_end
3422
- # Settings related to subscription trials.
3423
- attr_accessor :trial_settings
3424
-
3425
- def initialize(
3426
- add_invoice_items: nil,
3427
- application_fee_percent: nil,
3428
- automatic_tax: nil,
3429
- billing_cycle_anchor: nil,
3430
- billing_thresholds: nil,
3431
- collection_method: nil,
3432
- currency: nil,
3433
- default_payment_method: nil,
3434
- default_tax_rates: nil,
3435
- description: nil,
3436
- discounts: nil,
3437
- duration: nil,
3438
- end_date: nil,
3439
- invoice_settings: nil,
3440
- items: nil,
3441
- iterations: nil,
3442
- metadata: nil,
3443
- on_behalf_of: nil,
3444
- pause_collection: nil,
3445
- proration_behavior: nil,
3446
- start_date: nil,
3447
- transfer_data: nil,
3448
- trial: nil,
3449
- trial_continuation: nil,
3450
- trial_end: nil,
3451
- trial_settings: nil
3452
- )
3453
- @add_invoice_items = add_invoice_items
3454
- @application_fee_percent = application_fee_percent
3455
- @automatic_tax = automatic_tax
3456
- @billing_cycle_anchor = billing_cycle_anchor
3457
- @billing_thresholds = billing_thresholds
3458
- @collection_method = collection_method
3459
- @currency = currency
3460
- @default_payment_method = default_payment_method
3461
- @default_tax_rates = default_tax_rates
3462
- @description = description
3463
- @discounts = discounts
3464
- @duration = duration
3465
- @end_date = end_date
3466
- @invoice_settings = invoice_settings
3467
- @items = items
3468
- @iterations = iterations
3469
- @metadata = metadata
3470
- @on_behalf_of = on_behalf_of
3471
- @pause_collection = pause_collection
3472
- @proration_behavior = proration_behavior
3473
- @start_date = start_date
3474
- @transfer_data = transfer_data
3475
- @trial = trial
3476
- @trial_continuation = trial_continuation
3477
- @trial_end = trial_end
3478
- @trial_settings = trial_settings
3479
- end
3480
- end
3481
-
3482
- class Prebilling < Stripe::RequestParams
3483
- class BillUntil < Stripe::RequestParams
3484
- class AmendmentEnd < Stripe::RequestParams
3485
- # The position of the amendment in the `amendments` array at which prebilling should end. Indexes start from 0 and must be less than the total number of supplied amendments.
3486
- attr_accessor :index
3487
-
3488
- def initialize(index: nil)
3489
- @index = index
3490
- end
3491
- end
3492
-
3493
- class Duration < Stripe::RequestParams
3494
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
3495
- attr_accessor :interval
3496
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
3497
- attr_accessor :interval_count
3498
-
3499
- def initialize(interval: nil, interval_count: nil)
3500
- @interval = interval
3501
- @interval_count = interval_count
3502
- end
3503
- end
3504
- # End the prebilled period when a specified amendment ends.
3505
- attr_accessor :amendment_end
3506
- # Time span for prebilling, starting from `bill_from`.
3507
- attr_accessor :duration
3508
- # End the prebilled period at a precise integer timestamp, starting from the Unix epoch.
3509
- attr_accessor :timestamp
3510
- # Select one of several ways to pass the `bill_until` value.
3511
- attr_accessor :type
3512
-
3513
- def initialize(amendment_end: nil, duration: nil, timestamp: nil, type: nil)
3514
- @amendment_end = amendment_end
3515
- @duration = duration
3516
- @timestamp = timestamp
3517
- @type = type
3518
- end
3519
- end
3520
- # The end of the prebilled time period.
3521
- attr_accessor :bill_until
3522
- # This is used to determine the number of billing cycles to prebill.
3523
- attr_accessor :iterations
3524
-
3525
- def initialize(bill_until: nil, iterations: nil)
3526
- @bill_until = bill_until
3527
- @iterations = iterations
3528
- end
3529
- end
3530
- # Changes to apply to the phases of the subscription schedule, in the order provided.
3531
- attr_accessor :amendments
3532
- # 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.
3533
- attr_accessor :billing_behavior
3534
- # Controls how prorations and invoices for subscriptions are calculated and orchestrated.
3535
- attr_accessor :billing_mode
3536
- # Behavior of the subscription schedule and underlying subscription when it ends. Possible values are `release` or `cancel` with the default being `release`. `release` will end the subscription schedule and keep the underlying subscription running. `cancel` will end the subscription schedule and cancel the underlying subscription.
3537
- attr_accessor :end_behavior
3538
- # List representing phases of the subscription schedule. Each phase can be customized to have different durations, plans, and coupons. If there are multiple phases, the `end_date` of one phase will always equal the `start_date` of the next phase.
3539
- attr_accessor :phases
3540
- # Provide any time periods to bill in advance.
3541
- attr_accessor :prebilling
3542
- # In cases where the `schedule_details` params update the currently active phase, specifies if and how to prorate at the time of the request.
3543
- attr_accessor :proration_behavior
3544
-
3545
- def initialize(
3546
- amendments: nil,
3547
- billing_behavior: nil,
3548
- billing_mode: nil,
3549
- end_behavior: nil,
3550
- phases: nil,
3551
- prebilling: nil,
3552
- proration_behavior: nil
3553
- )
3554
- @amendments = amendments
3555
- @billing_behavior = billing_behavior
3556
- @billing_mode = billing_mode
3557
- @end_behavior = end_behavior
3558
- @phases = phases
3559
- @prebilling = prebilling
3560
- @proration_behavior = proration_behavior
3561
- end
3562
- end
3563
-
3564
- class SubscriptionDetails < Stripe::RequestParams
3565
- class BillingMode < Stripe::RequestParams
3566
- # Controls the calculation and orchestration of prorations and invoices for subscriptions.
3567
- attr_accessor :type
3568
-
3569
- def initialize(type: nil)
3570
- @type = type
3571
- end
3572
- end
3573
-
3574
- class Item < Stripe::RequestParams
3575
- class BillingThresholds < Stripe::RequestParams
3576
- # Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
3577
- attr_accessor :usage_gte
3578
-
3579
- def initialize(usage_gte: nil)
3580
- @usage_gte = usage_gte
3581
- end
3582
- end
3583
-
3584
- class Discount < Stripe::RequestParams
3585
- class DiscountEnd < Stripe::RequestParams
3586
- class Duration < Stripe::RequestParams
3587
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
3588
- attr_accessor :interval
3589
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
3590
- attr_accessor :interval_count
3591
-
3592
- def initialize(interval: nil, interval_count: nil)
3593
- @interval = interval
3594
- @interval_count = interval_count
3595
- end
3596
- end
3597
- # Time span for the redeemed discount.
3598
- attr_accessor :duration
3599
- # A precise Unix timestamp for the discount to end. Must be in the future.
3600
- attr_accessor :timestamp
3601
- # The type of calculation made to determine when the discount ends.
3602
- attr_accessor :type
3603
-
3604
- def initialize(duration: nil, timestamp: nil, type: nil)
3605
- @duration = duration
3606
- @timestamp = timestamp
3607
- @type = type
3608
- end
3609
- end
3610
- # ID of the coupon to create a new discount for.
3611
- attr_accessor :coupon
3612
- # ID of an existing discount on the object (or one of its ancestors) to reuse.
3613
- attr_accessor :discount
3614
- # Details to determine how long the discount should be applied for.
3615
- attr_accessor :discount_end
3616
- # ID of the promotion code to create a new discount for.
3617
- attr_accessor :promotion_code
3618
-
3619
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil)
3620
- @coupon = coupon
3621
- @discount = discount
3622
- @discount_end = discount_end
3623
- @promotion_code = promotion_code
3624
- end
3625
- end
3626
-
3627
- class PriceData < Stripe::RequestParams
3628
- class Recurring < Stripe::RequestParams
3629
- # Specifies billing frequency. Either `day`, `week`, `month` or `year`.
3630
- attr_accessor :interval
3631
- # The number of intervals between subscription billings. For example, `interval=month` and `interval_count=3` bills every 3 months. Maximum of three years interval allowed (3 years, 36 months, or 156 weeks).
3632
- attr_accessor :interval_count
3633
-
3634
- def initialize(interval: nil, interval_count: nil)
3635
- @interval = interval
3636
- @interval_count = interval_count
3637
- end
3638
- end
3639
- # Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
3640
- attr_accessor :currency
3641
- # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
3642
- attr_accessor :product
3643
- # The recurring components of a price such as `interval` and `interval_count`.
3644
- attr_accessor :recurring
3645
- # Only required if a [default tax behavior](https://stripe.com/docs/tax/products-prices-tax-categories-tax-behavior#setting-a-default-tax-behavior-(recommended)) was not provided in the Stripe Tax settings. Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
3646
- attr_accessor :tax_behavior
3647
- # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
3648
- attr_accessor :unit_amount
3649
- # Same as `unit_amount`, but accepts a decimal value in cents (or local equivalent) with at most 12 decimal places. Only one of `unit_amount` and `unit_amount_decimal` can be set.
3650
- attr_accessor :unit_amount_decimal
3651
-
3652
- def initialize(
3653
- currency: nil,
3654
- product: nil,
3655
- recurring: nil,
3656
- tax_behavior: nil,
3657
- unit_amount: nil,
3658
- unit_amount_decimal: nil
3659
- )
3660
- @currency = currency
3661
- @product = product
3662
- @recurring = recurring
3663
- @tax_behavior = tax_behavior
3664
- @unit_amount = unit_amount
3665
- @unit_amount_decimal = unit_amount_decimal
3666
- end
3667
- end
3668
- # Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
3669
- attr_accessor :billing_thresholds
3670
- # Delete all usage for a given subscription item. You must pass this when deleting a usage records subscription item. `clear_usage` has no effect if the plan has a billing meter attached.
3671
- attr_accessor :clear_usage
3672
- # A flag that, if set to `true`, will delete the specified item.
3673
- attr_accessor :deleted
3674
- # The coupons to redeem into discounts for the subscription item.
3675
- attr_accessor :discounts
3676
- # Subscription item to update.
3677
- attr_accessor :id
3678
- # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
3679
- attr_accessor :metadata
3680
- # Plan ID for this item, as a string.
3681
- attr_accessor :plan
3682
- # The ID of the price object. One of `price` or `price_data` is required. When changing a subscription item's price, `quantity` is set to 1 unless a `quantity` parameter is provided.
3683
- attr_accessor :price
3684
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
3685
- attr_accessor :price_data
3686
- # Quantity for this item.
3687
- attr_accessor :quantity
3688
- # A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
3689
- attr_accessor :tax_rates
3690
-
3691
- def initialize(
3692
- billing_thresholds: nil,
3693
- clear_usage: nil,
3694
- deleted: nil,
3695
- discounts: nil,
3696
- id: nil,
3697
- metadata: nil,
3698
- plan: nil,
3699
- price: nil,
3700
- price_data: nil,
3701
- quantity: nil,
3702
- tax_rates: nil
3703
- )
3704
- @billing_thresholds = billing_thresholds
3705
- @clear_usage = clear_usage
3706
- @deleted = deleted
3707
- @discounts = discounts
3708
- @id = id
3709
- @metadata = metadata
3710
- @plan = plan
3711
- @price = price
3712
- @price_data = price_data
3713
- @quantity = quantity
3714
- @tax_rates = tax_rates
3715
- end
3716
- end
3717
-
3718
- class Prebilling < Stripe::RequestParams
3719
- # This is used to determine the number of billing cycles to prebill.
3720
- attr_accessor :iterations
3721
-
3722
- def initialize(iterations: nil)
3723
- @iterations = iterations
3724
- end
3725
- end
3726
- # For new subscriptions, a future timestamp to anchor the subscription's [billing cycle](https://stripe.com/docs/subscriptions/billing-cycle). This is used to determine the date of the first full invoice, and, for plans with `month` or `year` intervals, the day of the month for subsequent invoices. For existing subscriptions, the value can only be set to `now` or `unchanged`.
3727
- attr_accessor :billing_cycle_anchor
3728
- # Controls how prorations and invoices for subscriptions are calculated and orchestrated.
3729
- attr_accessor :billing_mode
3730
- # A timestamp at which the subscription should cancel. If set to a date before the current period ends, this will cause a proration if prorations have been enabled using `proration_behavior`. If set during a future period, this will always cause a proration for that period.
3731
- attr_accessor :cancel_at
3732
- # Indicate whether this subscription should cancel at the end of the current period (`current_period_end`). Defaults to `false`.
3733
- attr_accessor :cancel_at_period_end
3734
- # This simulates the subscription being canceled or expired immediately.
3735
- attr_accessor :cancel_now
3736
- # If provided, the invoice returned will preview updating or creating a subscription with these default tax rates. The default tax rates will apply to any line item that does not have `tax_rates` set.
3737
- attr_accessor :default_tax_rates
3738
- # A list of up to 20 subscription items, each with an attached price.
3739
- attr_accessor :items
3740
- # The pre-billing to apply to the subscription as a preview.
3741
- attr_accessor :prebilling
3742
- # Determines how to handle [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when the billing cycle changes (e.g., when switching plans, resetting `billing_cycle_anchor=now`, or starting a trial), or if an item's `quantity` changes. The default value is `create_prorations`.
3743
- attr_accessor :proration_behavior
3744
- # If previewing an update to a subscription, and doing proration, `subscription_details.proration_date` forces the proration to be calculated as though the update was done at the specified time. The time given must be within the current subscription period and within the current phase of the schedule backing this subscription, if the schedule exists. If set, `subscription`, and one of `subscription_details.items`, or `subscription_details.trial_end` are required. Also, `subscription_details.proration_behavior` cannot be set to 'none'.
3745
- attr_accessor :proration_date
3746
- # For paused subscriptions, setting `subscription_details.resume_at` to `now` will preview the invoice that will be generated if the subscription is resumed.
3747
- attr_accessor :resume_at
3748
- # Date a subscription is intended to start (can be future or past).
3749
- attr_accessor :start_date
3750
- # If provided, the invoice returned will preview updating or creating a subscription with that trial end. If set, one of `subscription_details.items` or `subscription` is required.
3751
- attr_accessor :trial_end
3752
-
3753
- def initialize(
3754
- billing_cycle_anchor: nil,
3755
- billing_mode: nil,
3756
- cancel_at: nil,
3757
- cancel_at_period_end: nil,
3758
- cancel_now: nil,
3759
- default_tax_rates: nil,
3760
- items: nil,
3761
- prebilling: nil,
3762
- proration_behavior: nil,
3763
- proration_date: nil,
3764
- resume_at: nil,
3765
- start_date: nil,
3766
- trial_end: nil
3767
- )
3768
- @billing_cycle_anchor = billing_cycle_anchor
3769
- @billing_mode = billing_mode
3770
- @cancel_at = cancel_at
3771
- @cancel_at_period_end = cancel_at_period_end
3772
- @cancel_now = cancel_now
3773
- @default_tax_rates = default_tax_rates
3774
- @items = items
3775
- @prebilling = prebilling
3776
- @proration_behavior = proration_behavior
3777
- @proration_date = proration_date
3778
- @resume_at = resume_at
3779
- @start_date = start_date
3780
- @trial_end = trial_end
3781
- end
3782
- end
3783
- # Settings for automatic tax lookup for this invoice preview.
3784
- attr_accessor :automatic_tax
3785
- # The currency to preview this invoice in. Defaults to that of `customer` if not specified.
3786
- attr_accessor :currency
3787
- # The identifier of the customer whose upcoming invoice you'd like to retrieve. If `automatic_tax` is enabled then one of `customer`, `customer_details`, `subscription`, or `schedule` must be set.
3788
- attr_accessor :customer
3789
- # The identifier of the account whose upcoming invoice you'd like to retrieve. If `automatic_tax` is enabled then one of `customer`, `customer_account`, `customer_details`, `subscription`, or `schedule` must be set.
3790
- attr_accessor :customer_account
3791
- # Details about the customer you want to invoice or overrides for an existing customer. If `automatic_tax` is enabled then one of `customer`, `customer_details`, `subscription`, or `schedule` must be set.
3792
- attr_accessor :customer_details
3793
- # The coupons to redeem into discounts for the invoice preview. If not specified, inherits the discount from the subscription or customer. This works for both coupons directly applied to an invoice and coupons applied to a subscription. Pass an empty string to avoid inheriting any discounts.
3794
- attr_accessor :discounts
3795
- # Specifies which fields in the response should be expanded.
3796
- attr_accessor :expand
3797
- # List of invoice items to add or update in the upcoming invoice preview (up to 250).
3798
- attr_accessor :invoice_items
3799
- # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
3800
- attr_accessor :issuer
3801
- # The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details.
3802
- attr_accessor :on_behalf_of
3803
- # Customizes the types of values to include when calculating the invoice. Defaults to `next` if unspecified.
3804
- attr_accessor :preview_mode
3805
- # The identifier of the schedule whose upcoming invoice you'd like to retrieve. Cannot be used with subscription or subscription fields.
3806
- attr_accessor :schedule
3807
- # The schedule creation or modification params to apply as a preview. Cannot be used with `subscription` or `subscription_` prefixed fields.
3808
- attr_accessor :schedule_details
3809
- # The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_details.items` is provided, you will preview creating a subscription with those items. If neither `subscription` nor `subscription_details.items` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions.
3810
- attr_accessor :subscription
3811
- # The subscription creation or modification params to apply as a preview. Cannot be used with `schedule` or `schedule_details` fields.
3812
- attr_accessor :subscription_details
3813
-
3814
- def initialize(
3815
- automatic_tax: nil,
3816
- currency: nil,
3817
- customer: nil,
3818
- customer_account: nil,
3819
- customer_details: nil,
3820
- discounts: nil,
3821
- expand: nil,
3822
- invoice_items: nil,
3823
- issuer: nil,
3824
- on_behalf_of: nil,
3825
- preview_mode: nil,
3826
- schedule: nil,
3827
- schedule_details: nil,
3828
- subscription: nil,
3829
- subscription_details: nil
3830
- )
3831
- @automatic_tax = automatic_tax
3832
- @currency = currency
3833
- @customer = customer
3834
- @customer_account = customer_account
3835
- @customer_details = customer_details
3836
- @discounts = discounts
3837
- @expand = expand
3838
- @invoice_items = invoice_items
3839
- @issuer = issuer
3840
- @on_behalf_of = on_behalf_of
3841
- @preview_mode = preview_mode
3842
- @schedule = schedule
3843
- @schedule_details = schedule_details
3844
- @subscription = subscription
3845
- @subscription_details = subscription_details
3846
- end
3847
- end
3848
-
3849
13
  # Adds multiple line items to an invoice. This is only possible when an invoice is still a draft.
3850
14
  def add_lines(invoice, params = {}, opts = {})
3851
15
  request(