stripe 13.6.0.pre.beta.1 → 14.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 (556) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +699 -1457
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +29 -0
  5. data/VERSION +1 -1
  6. data/lib/stripe/api_requestor.rb +2 -0
  7. data/lib/stripe/api_version.rb +1 -1
  8. data/lib/stripe/errors.rb +0 -7
  9. data/lib/stripe/object_types.rb +0 -26
  10. data/lib/stripe/resources/account.rb +83 -614
  11. data/lib/stripe/resources/account_session.rb +1 -247
  12. data/lib/stripe/resources/apple_pay_domain.rb +0 -9
  13. data/lib/stripe/resources/application_fee.rb +1 -10
  14. data/lib/stripe/resources/balance.rb +0 -9
  15. data/lib/stripe/resources/balance_transaction.rb +2 -11
  16. data/lib/stripe/resources/bank_account.rb +1 -1
  17. data/lib/stripe/resources/billing/alert.rb +0 -9
  18. data/lib/stripe/resources/billing/credit_balance_summary.rb +0 -48
  19. data/lib/stripe/resources/billing/credit_balance_transaction.rb +0 -9
  20. data/lib/stripe/resources/billing/credit_grant.rb +4 -13
  21. data/lib/stripe/resources/billing/meter.rb +1 -10
  22. data/lib/stripe/resources/billing_portal/configuration.rb +0 -9
  23. data/lib/stripe/resources/card.rb +2 -4
  24. data/lib/stripe/resources/charge.rb +35 -1457
  25. data/lib/stripe/resources/checkout/session.rb +100 -293
  26. data/lib/stripe/resources/climate/order.rb +0 -9
  27. data/lib/stripe/resources/climate/product.rb +0 -9
  28. data/lib/stripe/resources/climate/supplier.rb +0 -9
  29. data/lib/stripe/resources/confirmation_token.rb +74 -156
  30. data/lib/stripe/resources/country_spec.rb +0 -9
  31. data/lib/stripe/resources/coupon.rb +0 -9
  32. data/lib/stripe/resources/credit_note.rb +14 -35
  33. data/lib/stripe/resources/credit_note_line_item.rb +14 -12
  34. data/lib/stripe/resources/customer.rb +12 -28
  35. data/lib/stripe/resources/customer_balance_transaction.rb +3 -1
  36. data/lib/stripe/resources/dispute.rb +0 -9
  37. data/lib/stripe/resources/entitlements/active_entitlement.rb +0 -9
  38. data/lib/stripe/resources/entitlements/feature.rb +0 -9
  39. data/lib/stripe/resources/event.rb +0 -40
  40. data/lib/stripe/resources/exchange_rate.rb +0 -9
  41. data/lib/stripe/resources/file.rb +0 -9
  42. data/lib/stripe/resources/file_link.rb +0 -9
  43. data/lib/stripe/resources/financial_connections/account.rb +0 -23
  44. data/lib/stripe/resources/financial_connections/session.rb +1 -65
  45. data/lib/stripe/resources/financial_connections/transaction.rb +0 -9
  46. data/lib/stripe/resources/forwarding/request.rb +0 -9
  47. data/lib/stripe/resources/identity/verification_report.rb +0 -9
  48. data/lib/stripe/resources/identity/verification_session.rb +0 -9
  49. data/lib/stripe/resources/invoice.rb +225 -5120
  50. data/lib/stripe/resources/invoice_item.rb +65 -110
  51. data/lib/stripe/resources/invoice_line_item.rb +106 -89
  52. data/lib/stripe/resources/invoice_payment.rb +53 -4
  53. data/lib/stripe/resources/invoice_rendering_template.rb +0 -12
  54. data/lib/stripe/resources/issuing/authorization.rb +0 -9
  55. data/lib/stripe/resources/issuing/card.rb +0 -9
  56. data/lib/stripe/resources/issuing/cardholder.rb +1 -11
  57. data/lib/stripe/resources/issuing/dispute.rb +0 -9
  58. data/lib/stripe/resources/issuing/personalization_design.rb +0 -9
  59. data/lib/stripe/resources/issuing/physical_bundle.rb +0 -9
  60. data/lib/stripe/resources/issuing/token.rb +0 -9
  61. data/lib/stripe/resources/issuing/transaction.rb +0 -15
  62. data/lib/stripe/resources/line_item.rb +0 -28
  63. data/lib/stripe/resources/mandate.rb +6 -33
  64. data/lib/stripe/resources/payment_intent.rb +642 -4975
  65. data/lib/stripe/resources/payment_link.rb +84 -15
  66. data/lib/stripe/resources/payment_method.rb +74 -187
  67. data/lib/stripe/resources/payment_method_configuration.rb +87 -214
  68. data/lib/stripe/resources/payment_method_domain.rb +9 -18
  69. data/lib/stripe/resources/payout.rb +0 -9
  70. data/lib/stripe/resources/person.rb +9 -9
  71. data/lib/stripe/resources/plan.rb +0 -15
  72. data/lib/stripe/resources/price.rb +2 -47
  73. data/lib/stripe/resources/product.rb +0 -68
  74. data/lib/stripe/resources/promotion_code.rb +0 -9
  75. data/lib/stripe/resources/quote.rb +8 -2037
  76. data/lib/stripe/resources/radar/early_fraud_warning.rb +0 -9
  77. data/lib/stripe/resources/radar/value_list.rb +0 -9
  78. data/lib/stripe/resources/radar/value_list_item.rb +0 -9
  79. data/lib/stripe/resources/refund.rb +13 -18
  80. data/lib/stripe/resources/reporting/report_run.rb +0 -9
  81. data/lib/stripe/resources/reporting/report_type.rb +0 -9
  82. data/lib/stripe/resources/review.rb +2 -11
  83. data/lib/stripe/resources/setup_attempt.rb +11 -16
  84. data/lib/stripe/resources/setup_intent.rb +158 -540
  85. data/lib/stripe/resources/shipping_rate.rb +0 -9
  86. data/lib/stripe/resources/sigma/scheduled_query_run.rb +0 -9
  87. data/lib/stripe/resources/source.rb +0 -41
  88. data/lib/stripe/resources/subscription.rb +14 -385
  89. data/lib/stripe/resources/subscription_item.rb +9 -134
  90. data/lib/stripe/resources/subscription_schedule.rb +14 -1135
  91. data/lib/stripe/resources/tax/calculation.rb +0 -9
  92. data/lib/stripe/resources/tax/registration.rb +1 -10
  93. data/lib/stripe/resources/tax/settings.rb +0 -9
  94. data/lib/stripe/resources/tax/transaction.rb +0 -9
  95. data/lib/stripe/resources/tax_code.rb +0 -9
  96. data/lib/stripe/resources/tax_id.rb +0 -9
  97. data/lib/stripe/resources/tax_rate.rb +0 -9
  98. data/lib/stripe/resources/terminal/configuration.rb +214 -14
  99. data/lib/stripe/resources/terminal/location.rb +0 -9
  100. data/lib/stripe/resources/terminal/reader.rb +0 -408
  101. data/lib/stripe/resources/test_helpers/test_clock.rb +0 -9
  102. data/lib/stripe/resources/token.rb +1 -10
  103. data/lib/stripe/resources/topup.rb +0 -9
  104. data/lib/stripe/resources/transfer.rb +0 -9
  105. data/lib/stripe/resources/treasury/credit_reversal.rb +0 -9
  106. data/lib/stripe/resources/treasury/debit_reversal.rb +0 -9
  107. data/lib/stripe/resources/treasury/financial_account.rb +4 -32
  108. data/lib/stripe/resources/treasury/financial_account_features.rb +0 -2
  109. data/lib/stripe/resources/treasury/inbound_transfer.rb +0 -9
  110. data/lib/stripe/resources/treasury/outbound_payment.rb +0 -9
  111. data/lib/stripe/resources/treasury/outbound_transfer.rb +0 -46
  112. data/lib/stripe/resources/treasury/received_credit.rb +1 -47
  113. data/lib/stripe/resources/treasury/received_debit.rb +1 -49
  114. data/lib/stripe/resources/treasury/transaction.rb +0 -9
  115. data/lib/stripe/resources/treasury/transaction_entry.rb +0 -9
  116. data/lib/stripe/resources/v2/event.rb +1 -0
  117. data/lib/stripe/resources/v2/event_destination.rb +1 -0
  118. data/lib/stripe/resources/webhook_endpoint.rb +0 -9
  119. data/lib/stripe/resources.rb +0 -25
  120. data/lib/stripe/services/account_external_account_service.rb +1 -1
  121. data/lib/stripe/services/account_service.rb +68 -509
  122. data/lib/stripe/services/account_session_service.rb +1 -217
  123. data/lib/stripe/services/balance_transaction_service.rb +1 -1
  124. data/lib/stripe/services/billing/credit_balance_summary_service.rb +2 -2
  125. data/lib/stripe/services/billing/credit_grant_service.rb +2 -2
  126. data/lib/stripe/services/billing/meter_service.rb +1 -1
  127. data/lib/stripe/services/charge_service.rb +1 -1335
  128. data/lib/stripe/services/checkout/session_service.rb +60 -168
  129. data/lib/stripe/services/credit_note_preview_lines_service.rb +0 -4
  130. data/lib/stripe/services/credit_note_service.rb +0 -8
  131. data/lib/stripe/services/customer_service.rb +0 -16
  132. data/lib/stripe/services/financial_connections/account_service.rb +1 -3
  133. data/lib/stripe/services/financial_connections/session_service.rb +1 -30
  134. data/lib/stripe/services/financial_connections_service.rb +1 -2
  135. data/lib/stripe/services/invoice_item_service.rb +34 -88
  136. data/lib/stripe/services/invoice_line_item_service.rb +25 -41
  137. data/lib/stripe/services/invoice_payment_service.rb +33 -5
  138. data/lib/stripe/services/invoice_service.rb +210 -3147
  139. data/lib/stripe/services/issuing/cardholder_service.rb +1 -2
  140. data/lib/stripe/services/issuing/transaction_service.rb +0 -4
  141. data/lib/stripe/services/issuing_service.rb +1 -5
  142. data/lib/stripe/services/payment_intent_service.rb +568 -4513
  143. data/lib/stripe/services/payment_link_service.rb +59 -6
  144. data/lib/stripe/services/payment_method_configuration_service.rb +62 -146
  145. data/lib/stripe/services/payment_method_domain_service.rb +6 -6
  146. data/lib/stripe/services/payment_method_service.rb +49 -119
  147. data/lib/stripe/services/plan_service.rb +0 -4
  148. data/lib/stripe/services/price_service.rb +2 -25
  149. data/lib/stripe/services/product_service.rb +0 -38
  150. data/lib/stripe/services/quote_service.rb +9 -1716
  151. data/lib/stripe/services/setup_intent_service.rb +158 -492
  152. data/lib/stripe/services/subscription_item_service.rb +5 -111
  153. data/lib/stripe/services/subscription_schedule_service.rb +14 -1005
  154. data/lib/stripe/services/subscription_service.rb +13 -323
  155. data/lib/stripe/services/tax/registration_service.rb +1 -1
  156. data/lib/stripe/services/tax_service.rb +1 -3
  157. data/lib/stripe/services/terminal/configuration_service.rb +170 -4
  158. data/lib/stripe/services/terminal/reader_service.rb +0 -177
  159. data/lib/stripe/services/terminal_service.rb +1 -2
  160. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +49 -87
  161. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +0 -43
  162. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +1 -25
  163. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +1 -25
  164. data/lib/stripe/services/token_service.rb +1 -1
  165. data/lib/stripe/services/treasury/financial_account_features_service.rb +1 -4
  166. data/lib/stripe/services/treasury/financial_account_service.rb +3 -17
  167. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -24
  168. data/lib/stripe/services/v1_services.rb +2 -8
  169. data/lib/stripe/services/v2/core/event_destination_service.rb +1 -4
  170. data/lib/stripe/services/v2/core/event_service.rb +1 -4
  171. data/lib/stripe/services.rb +0 -27
  172. data/lib/stripe/stripe_client.rb +1 -0
  173. data/lib/stripe/stripe_configuration.rb +1 -3
  174. data/lib/stripe/util.rb +1 -7
  175. data/lib/stripe/version.rb +1 -1
  176. data/lib/stripe.rb +0 -45
  177. data/rbi/stripe/resources/account.rbi +1131 -1479
  178. data/rbi/stripe/resources/account_link.rbi +9 -9
  179. data/rbi/stripe/resources/account_session.rbi +118 -367
  180. data/rbi/stripe/resources/apple_pay_domain.rbi +8 -15
  181. data/rbi/stripe/resources/application_fee.rbi +15 -20
  182. data/rbi/stripe/resources/apps/secret.rbi +20 -20
  183. data/rbi/stripe/resources/balance.rbi +0 -7
  184. data/rbi/stripe/resources/balance_transaction.rbi +19 -24
  185. data/rbi/stripe/resources/bank_account.rbi +1 -1
  186. data/rbi/stripe/resources/billing/alert.rbi +23 -28
  187. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +0 -53
  188. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +6 -13
  189. data/rbi/stripe/resources/billing/credit_grant.rbi +30 -37
  190. data/rbi/stripe/resources/billing/meter.rbi +19 -26
  191. data/rbi/stripe/resources/billing/meter_event.rbi +4 -4
  192. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +5 -5
  193. data/rbi/stripe/resources/billing_portal/configuration.rbi +86 -81
  194. data/rbi/stripe/resources/billing_portal/session.rbi +31 -27
  195. data/rbi/stripe/resources/card.rbi +2 -5
  196. data/rbi/stripe/resources/charge.rbi +136 -1576
  197. data/rbi/stripe/resources/checkout/session.rbi +631 -748
  198. data/rbi/stripe/resources/climate/order.rbi +20 -25
  199. data/rbi/stripe/resources/climate/product.rbi +5 -12
  200. data/rbi/stripe/resources/climate/supplier.rbi +5 -12
  201. data/rbi/stripe/resources/confirmation_token.rbi +274 -268
  202. data/rbi/stripe/resources/country_spec.rbi +5 -12
  203. data/rbi/stripe/resources/coupon.rbi +34 -39
  204. data/rbi/stripe/resources/credit_note.rbi +134 -146
  205. data/rbi/stripe/resources/credit_note_line_item.rbi +20 -18
  206. data/rbi/stripe/resources/customer.rbi +172 -164
  207. data/rbi/stripe/resources/customer_balance_transaction.rbi +4 -1
  208. data/rbi/stripe/resources/customer_session.rbi +19 -15
  209. data/rbi/stripe/resources/dispute.rbi +92 -95
  210. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +5 -12
  211. data/rbi/stripe/resources/entitlements/feature.rbi +15 -22
  212. data/rbi/stripe/resources/ephemeral_key.rbi +2 -2
  213. data/rbi/stripe/resources/event.rbi +16 -60
  214. data/rbi/stripe/resources/exchange_rate.rbi +5 -12
  215. data/rbi/stripe/resources/file.rbi +20 -25
  216. data/rbi/stripe/resources/file_link.rbi +23 -28
  217. data/rbi/stripe/resources/financial_connections/account.rbi +25 -44
  218. data/rbi/stripe/resources/financial_connections/session.rbi +12 -75
  219. data/rbi/stripe/resources/financial_connections/transaction.rbi +16 -19
  220. data/rbi/stripe/resources/forwarding/request.rbi +21 -24
  221. data/rbi/stripe/resources/identity/verification_report.rbi +18 -21
  222. data/rbi/stripe/resources/identity/verification_session.rbi +60 -61
  223. data/rbi/stripe/resources/invoice.rbi +723 -5918
  224. data/rbi/stripe/resources/invoice_item.rbi +138 -177
  225. data/rbi/stripe/resources/invoice_line_item.rbi +199 -264
  226. data/rbi/stripe/resources/invoice_payment.rbi +51 -7
  227. data/rbi/stripe/resources/invoice_rendering_template.rbi +10 -20
  228. data/rbi/stripe/resources/issuing/authorization.rbi +216 -199
  229. data/rbi/stripe/resources/issuing/card.rbi +104 -101
  230. data/rbi/stripe/resources/issuing/cardholder.rbi +120 -108
  231. data/rbi/stripe/resources/issuing/dispute.rbi +164 -151
  232. data/rbi/stripe/resources/issuing/personalization_design.rbi +61 -56
  233. data/rbi/stripe/resources/issuing/physical_bundle.rbi +7 -14
  234. data/rbi/stripe/resources/issuing/token.rbi +16 -21
  235. data/rbi/stripe/resources/issuing/transaction.rbi +180 -176
  236. data/rbi/stripe/resources/line_item.rbi +0 -36
  237. data/rbi/stripe/resources/mandate.rbi +8 -40
  238. data/rbi/stripe/resources/payment_intent.rbi +2252 -6482
  239. data/rbi/stripe/resources/payment_link.rbi +346 -211
  240. data/rbi/stripe/resources/payment_method.rbi +226 -330
  241. data/rbi/stripe/resources/payment_method_configuration.rbi +602 -685
  242. data/rbi/stripe/resources/payment_method_domain.rbi +26 -31
  243. data/rbi/stripe/resources/payout.rbi +43 -42
  244. data/rbi/stripe/resources/person.rbi +9 -9
  245. data/rbi/stripe/resources/plan.rbi +51 -63
  246. data/rbi/stripe/resources/price.rbi +114 -151
  247. data/rbi/stripe/resources/product.rbi +90 -152
  248. data/rbi/stripe/resources/promotion_code.rbi +42 -47
  249. data/rbi/stripe/resources/quote.rbi +168 -2231
  250. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +17 -20
  251. data/rbi/stripe/resources/radar/value_list.rbi +24 -29
  252. data/rbi/stripe/resources/radar/value_list_item.rbi +18 -21
  253. data/rbi/stripe/resources/refund.rbi +52 -51
  254. data/rbi/stripe/resources/reporting/report_run.rbi +27 -30
  255. data/rbi/stripe/resources/reporting/report_type.rbi +2 -9
  256. data/rbi/stripe/resources/review.rbi +17 -22
  257. data/rbi/stripe/resources/setup_attempt.rbi +25 -32
  258. data/rbi/stripe/resources/setup_intent.rbi +900 -1102
  259. data/rbi/stripe/resources/shipping_rate.rbi +41 -46
  260. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +5 -12
  261. data/rbi/stripe/resources/source.rbi +132 -179
  262. data/rbi/stripe/resources/subscription.rbi +363 -707
  263. data/rbi/stripe/resources/subscription_item.rbi +69 -177
  264. data/rbi/stripe/resources/subscription_schedule.rbi +289 -1447
  265. data/rbi/stripe/resources/tax/calculation.rbi +43 -48
  266. data/rbi/stripe/resources/tax/registration.rbi +217 -170
  267. data/rbi/stripe/resources/tax/settings.rbi +14 -21
  268. data/rbi/stripe/resources/tax/transaction.rbi +20 -25
  269. data/rbi/stripe/resources/tax_code.rbi +5 -12
  270. data/rbi/stripe/resources/tax_id.rbi +15 -22
  271. data/rbi/stripe/resources/tax_rate.rbi +34 -39
  272. data/rbi/stripe/resources/terminal/configuration.rbi +457 -212
  273. data/rbi/stripe/resources/terminal/connection_token.rbi +3 -3
  274. data/rbi/stripe/resources/terminal/location.rbi +28 -35
  275. data/rbi/stripe/resources/terminal/reader.rbi +71 -441
  276. data/rbi/stripe/resources/test_helpers/test_clock.rbi +12 -17
  277. data/rbi/stripe/resources/token.rbi +288 -263
  278. data/rbi/stripe/resources/topup.rbi +35 -38
  279. data/rbi/stripe/resources/transfer.rbi +27 -32
  280. data/rbi/stripe/resources/treasury/credit_reversal.rbi +10 -17
  281. data/rbi/stripe/resources/treasury/debit_reversal.rbi +11 -18
  282. data/rbi/stripe/resources/treasury/financial_account.rbi +125 -130
  283. data/rbi/stripe/resources/treasury/financial_account_features.rbi +0 -3
  284. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +22 -29
  285. data/rbi/stripe/resources/treasury/outbound_payment.rbi +82 -79
  286. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +44 -86
  287. data/rbi/stripe/resources/treasury/received_credit.rbi +18 -64
  288. data/rbi/stripe/resources/treasury/received_debit.rbi +17 -66
  289. data/rbi/stripe/resources/treasury/transaction.rbi +27 -28
  290. data/rbi/stripe/resources/treasury/transaction_entry.rbi +25 -26
  291. data/rbi/stripe/resources/v2/amount.rbi +1 -1
  292. data/rbi/stripe/resources/v2/event.rbi +1 -0
  293. data/rbi/stripe/resources/v2/event_destination.rbi +1 -0
  294. data/rbi/stripe/resources/webhook_endpoint.rbi +18 -25
  295. data/rbi/stripe/services/account_capability_service.rbi +7 -7
  296. data/rbi/stripe/services/account_external_account_service.rbi +52 -52
  297. data/rbi/stripe/services/account_link_service.rbi +9 -9
  298. data/rbi/stripe/services/account_login_link_service.rbi +2 -2
  299. data/rbi/stripe/services/account_person_service.rbi +221 -201
  300. data/rbi/stripe/services/account_service.rbi +1221 -1345
  301. data/rbi/stripe/services/account_session_service.rbi +115 -346
  302. data/rbi/stripe/services/apple_pay_domain_service.rbi +10 -10
  303. data/rbi/stripe/services/application_fee_refund_service.rbi +16 -14
  304. data/rbi/stripe/services/application_fee_service.rbi +18 -14
  305. data/rbi/stripe/services/apps/secret_service.rbi +20 -20
  306. data/rbi/stripe/services/balance_service.rbi +2 -2
  307. data/rbi/stripe/services/balance_transaction_service.rbi +22 -18
  308. data/rbi/stripe/services/billing/alert_service.rbi +23 -23
  309. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +10 -10
  310. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +8 -8
  311. data/rbi/stripe/services/billing/credit_grant_service.rbi +32 -30
  312. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +7 -5
  313. data/rbi/stripe/services/billing/meter_event_service.rbi +4 -4
  314. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +6 -6
  315. data/rbi/stripe/services/billing/meter_service.rbi +21 -21
  316. data/rbi/stripe/services/billing_portal/configuration_service.rbi +90 -76
  317. data/rbi/stripe/services/billing_portal/session_service.rbi +29 -27
  318. data/rbi/stripe/services/charge_service.rbi +96 -1464
  319. data/rbi/stripe/services/checkout/session_line_item_service.rbi +5 -5
  320. data/rbi/stripe/services/checkout/session_service.rbi +555 -591
  321. data/rbi/stripe/services/climate/order_service.rbi +22 -20
  322. data/rbi/stripe/services/climate/product_service.rbi +7 -7
  323. data/rbi/stripe/services/climate/supplier_service.rbi +7 -7
  324. data/rbi/stripe/services/confirmation_token_service.rbi +2 -2
  325. data/rbi/stripe/services/country_spec_service.rbi +7 -7
  326. data/rbi/stripe/services/coupon_service.rbi +40 -34
  327. data/rbi/stripe/services/credit_note_line_item_service.rbi +5 -5
  328. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +35 -35
  329. data/rbi/stripe/services/credit_note_service.rbi +81 -85
  330. data/rbi/stripe/services/customer_balance_transaction_service.rbi +15 -15
  331. data/rbi/stripe/services/customer_cash_balance_service.rbi +7 -7
  332. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +7 -7
  333. data/rbi/stripe/services/customer_funding_instructions_service.rbi +5 -5
  334. data/rbi/stripe/services/customer_payment_method_service.rbi +9 -9
  335. data/rbi/stripe/services/customer_payment_source_service.rbi +48 -44
  336. data/rbi/stripe/services/customer_service.rbi +143 -139
  337. data/rbi/stripe/services/customer_session_service.rbi +21 -15
  338. data/rbi/stripe/services/customer_tax_id_service.rbi +9 -9
  339. data/rbi/stripe/services/dispute_service.rbi +92 -90
  340. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +7 -7
  341. data/rbi/stripe/services/entitlements/feature_service.rbi +17 -17
  342. data/rbi/stripe/services/ephemeral_key_service.rbi +8 -8
  343. data/rbi/stripe/services/event_service.rbi +18 -16
  344. data/rbi/stripe/services/exchange_rate_service.rbi +7 -7
  345. data/rbi/stripe/services/file_link_service.rbi +25 -23
  346. data/rbi/stripe/services/file_service.rbi +22 -20
  347. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +5 -5
  348. data/rbi/stripe/services/financial_connections/account_service.rbi +22 -21
  349. data/rbi/stripe/services/financial_connections/session_service.rbi +16 -39
  350. data/rbi/stripe/services/financial_connections/transaction_service.rbi +16 -14
  351. data/rbi/stripe/services/financial_connections_service.rbi +0 -1
  352. data/rbi/stripe/services/forwarding/request_service.rbi +21 -19
  353. data/rbi/stripe/services/identity/verification_report_service.rbi +18 -16
  354. data/rbi/stripe/services/identity/verification_session_service.rbi +62 -56
  355. data/rbi/stripe/services/invoice_item_service.rbi +99 -155
  356. data/rbi/stripe/services/invoice_line_item_service.rbi +71 -82
  357. data/rbi/stripe/services/invoice_payment_service.rbi +39 -12
  358. data/rbi/stripe/services/invoice_rendering_template_service.rbi +13 -13
  359. data/rbi/stripe/services/invoice_service.rbi +679 -3799
  360. data/rbi/stripe/services/issuing/authorization_service.rbi +32 -26
  361. data/rbi/stripe/services/issuing/card_service.rbi +102 -86
  362. data/rbi/stripe/services/issuing/cardholder_service.rbi +122 -103
  363. data/rbi/stripe/services/issuing/dispute_service.rbi +152 -146
  364. data/rbi/stripe/services/issuing/personalization_design_service.rbi +52 -42
  365. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +9 -9
  366. data/rbi/stripe/services/issuing/token_service.rbi +20 -16
  367. data/rbi/stripe/services/issuing/transaction_service.rbi +25 -23
  368. data/rbi/stripe/services/issuing_service.rbi +0 -3
  369. data/rbi/stripe/services/mandate_service.rbi +2 -2
  370. data/rbi/stripe/services/payment_intent_service.rbi +2312 -6081
  371. data/rbi/stripe/services/payment_link_line_item_service.rbi +5 -5
  372. data/rbi/stripe/services/payment_link_service.rbi +303 -201
  373. data/rbi/stripe/services/payment_method_configuration_service.rbi +616 -620
  374. data/rbi/stripe/services/payment_method_domain_service.rbi +25 -23
  375. data/rbi/stripe/services/payment_method_service.rbi +192 -249
  376. data/rbi/stripe/services/payout_service.rbi +45 -37
  377. data/rbi/stripe/services/plan_service.rbi +53 -55
  378. data/rbi/stripe/services/price_service.rbi +124 -129
  379. data/rbi/stripe/services/product_feature_service.rbi +9 -9
  380. data/rbi/stripe/services/product_service.rbi +94 -122
  381. data/rbi/stripe/services/promotion_code_service.rbi +46 -42
  382. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +5 -5
  383. data/rbi/stripe/services/quote_line_item_service.rbi +5 -5
  384. data/rbi/stripe/services/quote_service.rbi +159 -1863
  385. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +17 -15
  386. data/rbi/stripe/services/radar/value_list_item_service.rbi +20 -16
  387. data/rbi/stripe/services/radar/value_list_service.rbi +28 -24
  388. data/rbi/stripe/services/refund_service.rbi +37 -33
  389. data/rbi/stripe/services/reporting/report_run_service.rbi +29 -25
  390. data/rbi/stripe/services/reporting/report_type_service.rbi +4 -4
  391. data/rbi/stripe/services/review_service.rbi +17 -15
  392. data/rbi/stripe/services/setup_attempt_service.rbi +13 -11
  393. data/rbi/stripe/services/setup_intent_service.rbi +1028 -1062
  394. data/rbi/stripe/services/shipping_rate_service.rbi +47 -41
  395. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +7 -7
  396. data/rbi/stripe/services/source_service.rbi +149 -133
  397. data/rbi/stripe/services/source_transaction_service.rbi +5 -5
  398. data/rbi/stripe/services/subscription_item_service.rbi +61 -159
  399. data/rbi/stripe/services/subscription_schedule_service.rbi +289 -1305
  400. data/rbi/stripe/services/subscription_service.rbi +366 -640
  401. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +5 -5
  402. data/rbi/stripe/services/tax/calculation_service.rbi +40 -38
  403. data/rbi/stripe/services/tax/registration_service.rbi +337 -165
  404. data/rbi/stripe/services/tax/settings_service.rbi +16 -16
  405. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +5 -5
  406. data/rbi/stripe/services/tax/transaction_service.rbi +19 -15
  407. data/rbi/stripe/services/tax_code_service.rbi +7 -7
  408. data/rbi/stripe/services/tax_id_service.rbi +17 -17
  409. data/rbi/stripe/services/tax_rate_service.rbi +36 -34
  410. data/rbi/stripe/services/tax_service.rbi +0 -2
  411. data/rbi/stripe/services/terminal/configuration_service.rbi +464 -204
  412. data/rbi/stripe/services/terminal/connection_token_service.rbi +3 -3
  413. data/rbi/stripe/services/terminal/location_service.rbi +30 -30
  414. data/rbi/stripe/services/terminal/reader_service.rbi +57 -226
  415. data/rbi/stripe/services/terminal_service.rbi +0 -1
  416. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +157 -198
  417. data/rbi/stripe/services/test_helpers/customer_service.rbi +3 -3
  418. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +180 -168
  419. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +10 -10
  420. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +11 -9
  421. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +151 -145
  422. data/rbi/stripe/services/test_helpers/refund_service.rbi +2 -2
  423. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +10 -39
  424. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +14 -12
  425. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +9 -9
  426. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +20 -18
  427. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +20 -18
  428. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +11 -38
  429. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +11 -38
  430. data/rbi/stripe/services/token_service.rbi +292 -258
  431. data/rbi/stripe/services/topup_service.rbi +37 -33
  432. data/rbi/stripe/services/transfer_reversal_service.rbi +18 -16
  433. data/rbi/stripe/services/transfer_service.rbi +29 -27
  434. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +12 -12
  435. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +13 -13
  436. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +23 -26
  437. data/rbi/stripe/services/treasury/financial_account_service.rbi +92 -96
  438. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +15 -15
  439. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +60 -56
  440. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +24 -49
  441. data/rbi/stripe/services/treasury/received_credit_service.rbi +11 -9
  442. data/rbi/stripe/services/treasury/received_debit_service.rbi +8 -8
  443. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +25 -21
  444. data/rbi/stripe/services/treasury/transaction_service.rbi +31 -23
  445. data/rbi/stripe/services/v1_services.rbi +1 -7
  446. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +3 -3
  447. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +3 -3
  448. data/rbi/stripe/services/v2/core/event_destination_service.rbi +21 -24
  449. data/rbi/stripe/services/v2/core/event_service.rbi +3 -6
  450. data/rbi/stripe/services/webhook_endpoint_service.rbi +20 -20
  451. metadata +4 -109
  452. data/lib/stripe/request_signing_authenticator.rb +0 -79
  453. data/lib/stripe/resources/account_notice.rb +0 -132
  454. data/lib/stripe/resources/billing/meter_error_report.rb +0 -59
  455. data/lib/stripe/resources/capital/financing_offer.rb +0 -188
  456. data/lib/stripe/resources/capital/financing_summary.rb +0 -64
  457. data/lib/stripe/resources/capital/financing_transaction.rb +0 -123
  458. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  459. data/lib/stripe/resources/financial_connections/institution.rb +0 -99
  460. data/lib/stripe/resources/gift_cards/card.rb +0 -217
  461. data/lib/stripe/resources/gift_cards/transaction.rb +0 -281
  462. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -611
  463. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -84
  464. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -95
  465. data/lib/stripe/resources/issuing/settlement.rb +0 -49
  466. data/lib/stripe/resources/margin.rb +0 -124
  467. data/lib/stripe/resources/order.rb +0 -2868
  468. data/lib/stripe/resources/payment_attempt_record.rb +0 -184
  469. data/lib/stripe/resources/payment_record.rb +0 -715
  470. data/lib/stripe/resources/quote_line.rb +0 -274
  471. data/lib/stripe/resources/quote_preview_invoice.rb +0 -652
  472. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -362
  473. data/lib/stripe/resources/tax/association.rb +0 -89
  474. data/lib/stripe/resources/tax/form.rb +0 -220
  475. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -40
  476. data/lib/stripe/resources/usage_record.rb +0 -30
  477. data/lib/stripe/resources/usage_record_summary.rb +0 -33
  478. data/lib/stripe/services/account_notice_service.rb +0 -101
  479. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  480. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  481. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  482. data/lib/stripe/services/capital_service.rb +0 -15
  483. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +0 -37
  484. data/lib/stripe/services/financial_connections/institution_service.rb +0 -57
  485. data/lib/stripe/services/gift_cards/card_service.rb +0 -170
  486. data/lib/stripe/services/gift_cards/transaction_service.rb +0 -209
  487. data/lib/stripe/services/gift_cards_service.rb +0 -14
  488. data/lib/stripe/services/invoice_upcoming_lines_service.rb +0 -1881
  489. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  490. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  491. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  492. data/lib/stripe/services/margin_service.rb +0 -119
  493. data/lib/stripe/services/order_line_item_service.rb +0 -35
  494. data/lib/stripe/services/order_service.rb +0 -2268
  495. data/lib/stripe/services/payment_attempt_record_service.rb +0 -49
  496. data/lib/stripe/services/payment_record_service.rb +0 -542
  497. data/lib/stripe/services/quote_line_service.rb +0 -35
  498. data/lib/stripe/services/quote_preview_invoice_service.rb +0 -35
  499. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +0 -35
  500. data/lib/stripe/services/subscription_item_usage_record_service.rb +0 -41
  501. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +0 -37
  502. data/lib/stripe/services/tax/association_service.rb +0 -31
  503. data/lib/stripe/services/tax/form_service.rb +0 -100
  504. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  505. data/rbi/stripe/resources/account_notice.rbi +0 -139
  506. data/rbi/stripe/resources/billing/meter_error_report.rbi +0 -71
  507. data/rbi/stripe/resources/capital/financing_offer.rbi +0 -190
  508. data/rbi/stripe/resources/capital/financing_summary.rbi +0 -74
  509. data/rbi/stripe/resources/capital/financing_transaction.rbi +0 -130
  510. data/rbi/stripe/resources/financial_connections/account_inferred_balance.rbi +0 -27
  511. data/rbi/stripe/resources/financial_connections/institution.rbi +0 -99
  512. data/rbi/stripe/resources/gift_cards/card.rbi +0 -206
  513. data/rbi/stripe/resources/gift_cards/transaction.rbi +0 -257
  514. data/rbi/stripe/resources/issuing/credit_underwriting_record.rbi +0 -622
  515. data/rbi/stripe/resources/issuing/dispute_settlement_detail.rbi +0 -83
  516. data/rbi/stripe/resources/issuing/fraud_liability_debit.rbi +0 -90
  517. data/rbi/stripe/resources/issuing/settlement.rbi +0 -62
  518. data/rbi/stripe/resources/margin.rbi +0 -127
  519. data/rbi/stripe/resources/order.rbi +0 -3036
  520. data/rbi/stripe/resources/payment_attempt_record.rbi +0 -215
  521. data/rbi/stripe/resources/payment_record.rbi +0 -722
  522. data/rbi/stripe/resources/quote_line.rbi +0 -350
  523. data/rbi/stripe/resources/quote_preview_invoice.rbi +0 -850
  524. data/rbi/stripe/resources/quote_preview_subscription_schedule.rbi +0 -474
  525. data/rbi/stripe/resources/tax/association.rbi +0 -94
  526. data/rbi/stripe/resources/tax/form.rbi +0 -224
  527. data/rbi/stripe/resources/terminal/reader_collected_data.rbi +0 -41
  528. data/rbi/stripe/resources/usage_record.rbi +0 -32
  529. data/rbi/stripe/resources/usage_record_summary.rbi +0 -38
  530. data/rbi/stripe/services/account_notice_service.rbi +0 -90
  531. data/rbi/stripe/services/capital/financing_offer_service.rbi +0 -95
  532. data/rbi/stripe/services/capital/financing_summary_service.rbi +0 -22
  533. data/rbi/stripe/services/capital/financing_transaction_service.rbi +0 -68
  534. data/rbi/stripe/services/capital_service.rbi +0 -11
  535. data/rbi/stripe/services/financial_connections/account_inferred_balance_service.rbi +0 -33
  536. data/rbi/stripe/services/financial_connections/institution_service.rbi +0 -46
  537. data/rbi/stripe/services/gift_cards/card_service.rbi +0 -142
  538. data/rbi/stripe/services/gift_cards/transaction_service.rbi +0 -174
  539. data/rbi/stripe/services/gift_cards_service.rbi +0 -10
  540. data/rbi/stripe/services/invoice_upcoming_lines_service.rbi +0 -2023
  541. data/rbi/stripe/services/issuing/credit_underwriting_record_service.rbi +0 -498
  542. data/rbi/stripe/services/issuing/dispute_settlement_detail_service.rbi +0 -55
  543. data/rbi/stripe/services/issuing/fraud_liability_debit_service.rbi +0 -73
  544. data/rbi/stripe/services/margin_service.rbi +0 -104
  545. data/rbi/stripe/services/order_line_item_service.rbi +0 -31
  546. data/rbi/stripe/services/order_service.rbi +0 -2320
  547. data/rbi/stripe/services/payment_attempt_record_service.rbi +0 -36
  548. data/rbi/stripe/services/payment_record_service.rbi +0 -521
  549. data/rbi/stripe/services/quote_line_service.rbi +0 -31
  550. data/rbi/stripe/services/quote_preview_invoice_service.rbi +0 -31
  551. data/rbi/stripe/services/quote_preview_subscription_schedule_service.rbi +0 -31
  552. data/rbi/stripe/services/subscription_item_usage_record_service.rbi +0 -37
  553. data/rbi/stripe/services/subscription_item_usage_record_summary_service.rbi +0 -33
  554. data/rbi/stripe/services/tax/association_service.rbi +0 -25
  555. data/rbi/stripe/services/tax/form_service.rbi +0 -85
  556. data/rbi/stripe/services/terminal/reader_collected_data_service.rbi +0 -22
@@ -15,6 +15,22 @@ module Stripe
15
15
  #
16
16
  # Related guides: [Integrate with the Invoicing API](https://stripe.com/docs/invoicing/integration), [Subscription Invoices](https://stripe.com/docs/billing/invoices/subscription#adding-upcoming-invoice-items).
17
17
  class InvoiceItem < APIResource
18
+ class Parent < Stripe::StripeObject
19
+ class SubscriptionDetails < Stripe::StripeObject
20
+ # The subscription that generated this invoice item
21
+ sig { returns(String) }
22
+ attr_reader :subscription
23
+ # The subscription item that generated this invoice item
24
+ sig { returns(String) }
25
+ attr_reader :subscription_item
26
+ end
27
+ # Details about the subscription that generated this invoice item
28
+ sig { returns(T.nilable(SubscriptionDetails)) }
29
+ attr_reader :subscription_details
30
+ # The type of parent that generated this invoice item
31
+ sig { returns(String) }
32
+ attr_reader :type
33
+ end
18
34
  class Period < Stripe::StripeObject
19
35
  # The end of the period, which must be greater than or equal to the start. This value is inclusive.
20
36
  sig { returns(Integer) }
@@ -23,6 +39,25 @@ module Stripe
23
39
  sig { returns(Integer) }
24
40
  attr_reader :start
25
41
  end
42
+ class Pricing < Stripe::StripeObject
43
+ class PriceDetails < Stripe::StripeObject
44
+ # The ID of the price this item is associated with.
45
+ sig { returns(String) }
46
+ attr_reader :price
47
+ # The ID of the product this item is associated with.
48
+ sig { returns(String) }
49
+ attr_reader :product
50
+ end
51
+ # Attribute for field price_details
52
+ sig { returns(PriceDetails) }
53
+ attr_reader :price_details
54
+ # The type of the pricing details.
55
+ sig { returns(String) }
56
+ attr_reader :type
57
+ # The unit amount (in the `currency` specified) of the item which contains a decimal value with at most 12 decimal places.
58
+ sig { returns(T.nilable(String)) }
59
+ attr_reader :unit_amount_decimal
60
+ end
26
61
  # Amount (in the `currency` specified) of the invoice item. This should always be equal to `unit_amount * quantity`.
27
62
  sig { returns(Integer) }
28
63
  attr_reader :amount
@@ -53,104 +88,54 @@ module Stripe
53
88
  # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
54
89
  sig { returns(T::Boolean) }
55
90
  attr_reader :livemode
56
- # The margins which apply to the invoice item. When set, the `default_margins` on the invoice do not apply to this invoice item.
57
- sig { returns(T.nilable(T::Array[T.any(String, Stripe::Margin)])) }
58
- attr_reader :margins
59
91
  # 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.
60
92
  sig { returns(T.nilable(T::Hash[String, String])) }
61
93
  attr_reader :metadata
62
94
  # String representing the object's type. Objects of the same type share the same value.
63
95
  sig { returns(String) }
64
96
  attr_reader :object
97
+ # The parent that generated this invoice
98
+ sig { returns(T.nilable(Parent)) }
99
+ attr_reader :parent
65
100
  # Attribute for field period
66
101
  sig { returns(Period) }
67
102
  attr_reader :period
68
- # If the invoice item is a proration, the plan of the subscription that the proration was computed for.
69
- sig { returns(T.nilable(Stripe::Plan)) }
70
- attr_reader :plan
71
- # The price of the invoice item.
72
- sig { returns(T.nilable(Stripe::Price)) }
73
- attr_reader :price
103
+ # The pricing information of the invoice item.
104
+ sig { returns(T.nilable(Pricing)) }
105
+ attr_reader :pricing
74
106
  # Whether the invoice item was created automatically as a proration adjustment when the customer switched plans.
75
107
  sig { returns(T::Boolean) }
76
108
  attr_reader :proration
77
109
  # Quantity of units for the invoice item. If the invoice item is a proration, the quantity of the subscription that the proration was computed for.
78
110
  sig { returns(Integer) }
79
111
  attr_reader :quantity
80
- # The subscription that this invoice item has been created for, if any.
81
- sig { returns(T.nilable(T.any(String, Stripe::Subscription))) }
82
- attr_reader :subscription
83
- # The subscription item that this invoice item has been created for, if any.
84
- sig { returns(String) }
85
- attr_reader :subscription_item
86
112
  # The tax rates which apply to the invoice item. When set, the `default_tax_rates` on the invoice do not apply to this invoice item.
87
113
  sig { returns(T.nilable(T::Array[Stripe::TaxRate])) }
88
114
  attr_reader :tax_rates
89
115
  # ID of the test clock this invoice item belongs to.
90
116
  sig { returns(T.nilable(T.any(String, Stripe::TestHelpers::TestClock))) }
91
117
  attr_reader :test_clock
92
- # Unit amount (in the `currency` specified) of the invoice item.
93
- sig { returns(T.nilable(Integer)) }
94
- attr_reader :unit_amount
95
- # Same as `unit_amount`, but contains a decimal value with at most 12 decimal places.
96
- sig { returns(T.nilable(String)) }
97
- attr_reader :unit_amount_decimal
98
118
  # Always true for a deleted object
99
119
  sig { returns(T::Boolean) }
100
120
  attr_reader :deleted
101
121
  class DeleteParams < Stripe::RequestParams
102
122
 
103
- end
104
- class RetrieveParams < Stripe::RequestParams
105
- # Specifies which fields in the response should be expanded.
106
- sig { returns(T::Array[String]) }
107
- attr_accessor :expand
108
- sig { params(expand: T::Array[String]).void }
109
- def initialize(expand: nil); end
110
123
  end
111
124
  class UpdateParams < Stripe::RequestParams
112
125
  class Discount < Stripe::RequestParams
113
- class DiscountEnd < Stripe::RequestParams
114
- class Duration < Stripe::RequestParams
115
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
116
- sig { returns(String) }
117
- attr_accessor :interval
118
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
119
- sig { returns(Integer) }
120
- attr_accessor :interval_count
121
- sig { params(interval: String, interval_count: Integer).void }
122
- def initialize(interval: nil, interval_count: nil); end
123
- end
124
- # Time span for the redeemed discount.
125
- sig { returns(::Stripe::InvoiceItem::UpdateParams::Discount::DiscountEnd::Duration) }
126
- attr_accessor :duration
127
- # A precise Unix timestamp for the discount to end. Must be in the future.
128
- sig { returns(Integer) }
129
- attr_accessor :timestamp
130
- # The type of calculation made to determine when the discount ends.
131
- sig { returns(String) }
132
- attr_accessor :type
133
- sig {
134
- params(duration: ::Stripe::InvoiceItem::UpdateParams::Discount::DiscountEnd::Duration, timestamp: Integer, type: String).void
135
- }
136
- def initialize(duration: nil, timestamp: nil, type: nil); end
137
- end
138
126
  # ID of the coupon to create a new discount for.
139
- sig { returns(String) }
127
+ sig { returns(T.nilable(String)) }
140
128
  attr_accessor :coupon
141
129
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
142
- sig { returns(String) }
130
+ sig { returns(T.nilable(String)) }
143
131
  attr_accessor :discount
144
- # Details to determine how long the discount should be applied for.
145
- sig { returns(::Stripe::InvoiceItem::UpdateParams::Discount::DiscountEnd) }
146
- attr_accessor :discount_end
147
132
  # ID of the promotion code to create a new discount for.
148
- sig { returns(String) }
133
+ sig { returns(T.nilable(String)) }
149
134
  attr_accessor :promotion_code
150
135
  sig {
151
- params(coupon: String, discount: String, discount_end: ::Stripe::InvoiceItem::UpdateParams::Discount::DiscountEnd, promotion_code: String).void
136
+ params(coupon: T.nilable(String), discount: T.nilable(String), promotion_code: T.nilable(String)).void
152
137
  }
153
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil); end
138
+ def initialize(coupon: nil, discount: nil, promotion_code: nil); end
154
139
  end
155
140
  class Period < Stripe::RequestParams
156
141
  # The end of the period, which must be greater than or equal to the start. This value is inclusive.
@@ -166,20 +151,20 @@ module Stripe
166
151
  # 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).
167
152
  sig { returns(String) }
168
153
  attr_accessor :currency
169
- # The ID of the product that this price will belong to.
154
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
170
155
  sig { returns(String) }
171
156
  attr_accessor :product
172
157
  # 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.
173
- sig { returns(String) }
158
+ sig { returns(T.nilable(String)) }
174
159
  attr_accessor :tax_behavior
175
160
  # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
176
- sig { returns(Integer) }
161
+ sig { returns(T.nilable(Integer)) }
177
162
  attr_accessor :unit_amount
178
163
  # 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.
179
- sig { returns(String) }
164
+ sig { returns(T.nilable(String)) }
180
165
  attr_accessor :unit_amount_decimal
181
166
  sig {
182
- params(currency: String, product: String, tax_behavior: String, unit_amount: Integer, unit_amount_decimal: String).void
167
+ params(currency: String, product: String, tax_behavior: T.nilable(String), unit_amount: T.nilable(Integer), unit_amount_decimal: T.nilable(String)).void
183
168
  }
184
169
  def initialize(
185
170
  currency: nil,
@@ -189,56 +174,59 @@ module Stripe
189
174
  unit_amount_decimal: nil
190
175
  ); end
191
176
  end
177
+ class Pricing < Stripe::RequestParams
178
+ # The ID of the price object.
179
+ sig { returns(T.nilable(String)) }
180
+ attr_accessor :price
181
+ sig { params(price: T.nilable(String)).void }
182
+ def initialize(price: nil); end
183
+ end
192
184
  # 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.
193
- sig { returns(Integer) }
185
+ sig { returns(T.nilable(Integer)) }
194
186
  attr_accessor :amount
195
187
  # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
196
- sig { returns(String) }
188
+ sig { returns(T.nilable(String)) }
197
189
  attr_accessor :description
198
190
  # Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items. Cannot be set to true for prorations.
199
- sig { returns(T::Boolean) }
191
+ sig { returns(T.nilable(T::Boolean)) }
200
192
  attr_accessor :discountable
201
193
  # The coupons, promotion codes & existing discounts which apply to the invoice item or invoice line item. Item discounts are applied before invoice discounts. Pass an empty string to remove previously-defined discounts.
202
- sig { returns(T.nilable(T::Array[::Stripe::InvoiceItem::UpdateParams::Discount])) }
194
+ sig {
195
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::UpdateParams::Discount]))))
196
+ }
203
197
  attr_accessor :discounts
204
198
  # Specifies which fields in the response should be expanded.
205
- sig { returns(T::Array[String]) }
206
- attr_accessor :expand
207
- # The ids of the margins to apply to the invoice item. When set, the `default_margins` on the invoice do not apply to this invoice item.
208
199
  sig { returns(T.nilable(T::Array[String])) }
209
- attr_accessor :margins
200
+ attr_accessor :expand
210
201
  # 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`.
211
- sig { returns(T.nilable(T::Hash[String, String])) }
202
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Hash[String, String])))) }
212
203
  attr_accessor :metadata
213
204
  # 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.
214
- sig { returns(::Stripe::InvoiceItem::UpdateParams::Period) }
205
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::Period)) }
215
206
  attr_accessor :period
216
- # The ID of the price object. One of `price` or `price_data` is required.
217
- sig { returns(String) }
218
- attr_accessor :price
219
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
220
- sig { returns(::Stripe::InvoiceItem::UpdateParams::PriceData) }
207
+ # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
208
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::PriceData)) }
221
209
  attr_accessor :price_data
210
+ # The pricing information for the invoice item.
211
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::Pricing)) }
212
+ attr_accessor :pricing
222
213
  # Non-negative integer. The quantity of units for the invoice item.
223
- sig { returns(Integer) }
214
+ sig { returns(T.nilable(Integer)) }
224
215
  attr_accessor :quantity
225
216
  # 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.
226
- sig { returns(String) }
217
+ sig { returns(T.nilable(String)) }
227
218
  attr_accessor :tax_behavior
228
219
  # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
229
- sig { returns(T.nilable(String)) }
220
+ sig { returns(T.nilable(T.nilable(String))) }
230
221
  attr_accessor :tax_code
231
222
  # The tax rates which apply to the invoice item. When set, the `default_tax_rates` on the invoice do not apply to this invoice item. Pass an empty string to remove previously-defined tax rates.
232
- sig { returns(T.nilable(T::Array[String])) }
223
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Array[String])))) }
233
224
  attr_accessor :tax_rates
234
- # 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.
235
- sig { returns(Integer) }
236
- attr_accessor :unit_amount
237
- # 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.
238
- sig { returns(String) }
225
+ # The decimal unit amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. This `unit_amount_decimal` will be multiplied by the quantity to get the full amount. Passing in a negative `unit_amount_decimal` will reduce the `amount_due` on the invoice. Accepts at most 12 decimal places.
226
+ sig { returns(T.nilable(String)) }
239
227
  attr_accessor :unit_amount_decimal
240
228
  sig {
241
- params(amount: Integer, description: String, discountable: T::Boolean, discounts: T.nilable(T::Array[::Stripe::InvoiceItem::UpdateParams::Discount]), expand: T::Array[String], margins: T.nilable(T::Array[String]), metadata: T.nilable(T::Hash[String, String]), period: ::Stripe::InvoiceItem::UpdateParams::Period, price: String, price_data: ::Stripe::InvoiceItem::UpdateParams::PriceData, quantity: Integer, tax_behavior: String, tax_code: T.nilable(String), tax_rates: T.nilable(T::Array[String]), unit_amount: Integer, unit_amount_decimal: String).void
229
+ params(amount: T.nilable(Integer), description: T.nilable(String), discountable: T.nilable(T::Boolean), discounts: T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::UpdateParams::Discount]))), expand: T.nilable(T::Array[String]), metadata: T.nilable(T.nilable(T.any(String, T::Hash[String, String]))), period: T.nilable(::Stripe::InvoiceItem::UpdateParams::Period), price_data: T.nilable(::Stripe::InvoiceItem::UpdateParams::PriceData), pricing: T.nilable(::Stripe::InvoiceItem::UpdateParams::Pricing), quantity: T.nilable(Integer), tax_behavior: T.nilable(String), tax_code: T.nilable(T.nilable(String)), tax_rates: T.nilable(T.nilable(T.any(String, T::Array[String]))), unit_amount_decimal: T.nilable(String)).void
242
230
  }
243
231
  def initialize(
244
232
  amount: nil,
@@ -246,62 +234,62 @@ module Stripe
246
234
  discountable: nil,
247
235
  discounts: nil,
248
236
  expand: nil,
249
- margins: nil,
250
237
  metadata: nil,
251
238
  period: nil,
252
- price: nil,
253
239
  price_data: nil,
240
+ pricing: nil,
254
241
  quantity: nil,
255
242
  tax_behavior: nil,
256
243
  tax_code: nil,
257
244
  tax_rates: nil,
258
- unit_amount: nil,
259
245
  unit_amount_decimal: nil
260
246
  ); end
261
247
  end
262
248
  class ListParams < Stripe::RequestParams
263
249
  class Created < Stripe::RequestParams
264
250
  # Minimum value to filter by (exclusive)
265
- sig { returns(Integer) }
251
+ sig { returns(T.nilable(Integer)) }
266
252
  attr_accessor :gt
267
253
  # Minimum value to filter by (inclusive)
268
- sig { returns(Integer) }
254
+ sig { returns(T.nilable(Integer)) }
269
255
  attr_accessor :gte
270
256
  # Maximum value to filter by (exclusive)
271
- sig { returns(Integer) }
257
+ sig { returns(T.nilable(Integer)) }
272
258
  attr_accessor :lt
273
259
  # Maximum value to filter by (inclusive)
274
- sig { returns(Integer) }
260
+ sig { returns(T.nilable(Integer)) }
275
261
  attr_accessor :lte
276
- sig { params(gt: Integer, gte: Integer, lt: Integer, lte: Integer).void }
262
+ sig {
263
+ params(gt: T.nilable(Integer), gte: T.nilable(Integer), lt: T.nilable(Integer), lte: T.nilable(Integer)).void
264
+ }
277
265
  def initialize(gt: nil, gte: nil, lt: nil, lte: nil); end
278
266
  end
279
267
  # Only return invoice items that were created during the given date interval.
280
- sig { returns(T.any(::Stripe::InvoiceItem::ListParams::Created, Integer)) }
268
+ sig { returns(T.nilable(T.any(::Stripe::InvoiceItem::ListParams::Created, Integer))) }
281
269
  attr_accessor :created
282
270
  # The identifier of the customer whose invoice items to return. If none is provided, all invoice items will be returned.
283
- sig { returns(String) }
271
+ sig { returns(T.nilable(String)) }
284
272
  attr_accessor :customer
285
273
  # 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.
286
- sig { returns(String) }
274
+ sig { returns(T.nilable(String)) }
287
275
  attr_accessor :ending_before
288
276
  # Specifies which fields in the response should be expanded.
289
- sig { returns(T::Array[String]) }
277
+ sig { returns(T.nilable(T::Array[String])) }
290
278
  attr_accessor :expand
291
279
  # Only return invoice items belonging to this invoice. If none is provided, all invoice items will be returned. If specifying an invoice, no customer identifier is needed.
292
- sig { returns(String) }
280
+ sig { returns(T.nilable(String)) }
293
281
  attr_accessor :invoice
294
282
  # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
295
- sig { returns(Integer) }
283
+ sig { returns(T.nilable(Integer)) }
296
284
  attr_accessor :limit
297
285
  # Set to `true` to only show pending invoice items, which are not yet attached to any invoices. Set to `false` to only show invoice items already attached to invoices. If unspecified, no filter is applied.
298
- sig { returns(T::Boolean) }
286
+ sig { returns(T.nilable(T::Boolean)) }
299
287
  attr_accessor :pending
300
288
  # 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.
301
- sig { returns(String) }
289
+ sig { returns(T.nilable(String)) }
302
290
  attr_accessor :starting_after
303
291
  sig {
304
- params(created: T.any(::Stripe::InvoiceItem::ListParams::Created, Integer), customer: String, ending_before: String, expand: T::Array[String], invoice: String, limit: Integer, pending: T::Boolean, starting_after: String).void
292
+ params(created: T.nilable(T.any(::Stripe::InvoiceItem::ListParams::Created, Integer)), customer: T.nilable(String), ending_before: T.nilable(String), expand: T.nilable(T::Array[String]), invoice: T.nilable(String), limit: T.nilable(Integer), pending: T.nilable(T::Boolean), starting_after: T.nilable(String)).void
305
293
  }
306
294
  def initialize(
307
295
  created: nil,
@@ -316,47 +304,19 @@ module Stripe
316
304
  end
317
305
  class CreateParams < Stripe::RequestParams
318
306
  class Discount < Stripe::RequestParams
319
- class DiscountEnd < Stripe::RequestParams
320
- class Duration < Stripe::RequestParams
321
- # Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
322
- sig { returns(String) }
323
- attr_accessor :interval
324
- # The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
325
- sig { returns(Integer) }
326
- attr_accessor :interval_count
327
- sig { params(interval: String, interval_count: Integer).void }
328
- def initialize(interval: nil, interval_count: nil); end
329
- end
330
- # Time span for the redeemed discount.
331
- sig { returns(::Stripe::InvoiceItem::CreateParams::Discount::DiscountEnd::Duration) }
332
- attr_accessor :duration
333
- # A precise Unix timestamp for the discount to end. Must be in the future.
334
- sig { returns(Integer) }
335
- attr_accessor :timestamp
336
- # The type of calculation made to determine when the discount ends.
337
- sig { returns(String) }
338
- attr_accessor :type
339
- sig {
340
- params(duration: ::Stripe::InvoiceItem::CreateParams::Discount::DiscountEnd::Duration, timestamp: Integer, type: String).void
341
- }
342
- def initialize(duration: nil, timestamp: nil, type: nil); end
343
- end
344
307
  # ID of the coupon to create a new discount for.
345
- sig { returns(String) }
308
+ sig { returns(T.nilable(String)) }
346
309
  attr_accessor :coupon
347
310
  # ID of an existing discount on the object (or one of its ancestors) to reuse.
348
- sig { returns(String) }
311
+ sig { returns(T.nilable(String)) }
349
312
  attr_accessor :discount
350
- # Details to determine how long the discount should be applied for.
351
- sig { returns(::Stripe::InvoiceItem::CreateParams::Discount::DiscountEnd) }
352
- attr_accessor :discount_end
353
313
  # ID of the promotion code to create a new discount for.
354
- sig { returns(String) }
314
+ sig { returns(T.nilable(String)) }
355
315
  attr_accessor :promotion_code
356
316
  sig {
357
- params(coupon: String, discount: String, discount_end: ::Stripe::InvoiceItem::CreateParams::Discount::DiscountEnd, promotion_code: String).void
317
+ params(coupon: T.nilable(String), discount: T.nilable(String), promotion_code: T.nilable(String)).void
358
318
  }
359
- def initialize(coupon: nil, discount: nil, discount_end: nil, promotion_code: nil); end
319
+ def initialize(coupon: nil, discount: nil, promotion_code: nil); end
360
320
  end
361
321
  class Period < Stripe::RequestParams
362
322
  # The end of the period, which must be greater than or equal to the start. This value is inclusive.
@@ -372,20 +332,20 @@ module Stripe
372
332
  # 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).
373
333
  sig { returns(String) }
374
334
  attr_accessor :currency
375
- # The ID of the product that this price will belong to.
335
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
376
336
  sig { returns(String) }
377
337
  attr_accessor :product
378
338
  # 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.
379
- sig { returns(String) }
339
+ sig { returns(T.nilable(String)) }
380
340
  attr_accessor :tax_behavior
381
341
  # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
382
- sig { returns(Integer) }
342
+ sig { returns(T.nilable(Integer)) }
383
343
  attr_accessor :unit_amount
384
344
  # 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.
385
- sig { returns(String) }
345
+ sig { returns(T.nilable(String)) }
386
346
  attr_accessor :unit_amount_decimal
387
347
  sig {
388
- params(currency: String, product: String, tax_behavior: String, unit_amount: Integer, unit_amount_decimal: String).void
348
+ params(currency: String, product: String, tax_behavior: T.nilable(String), unit_amount: T.nilable(Integer), unit_amount_decimal: T.nilable(String)).void
389
349
  }
390
350
  def initialize(
391
351
  currency: nil,
@@ -395,68 +355,71 @@ module Stripe
395
355
  unit_amount_decimal: nil
396
356
  ); end
397
357
  end
358
+ class Pricing < Stripe::RequestParams
359
+ # The ID of the price object.
360
+ sig { returns(T.nilable(String)) }
361
+ attr_accessor :price
362
+ sig { params(price: T.nilable(String)).void }
363
+ def initialize(price: nil); end
364
+ end
398
365
  # The integer amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. Passing in a negative `amount` will reduce the `amount_due` on the invoice.
399
- sig { returns(Integer) }
366
+ sig { returns(T.nilable(Integer)) }
400
367
  attr_accessor :amount
401
368
  # 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).
402
- sig { returns(String) }
369
+ sig { returns(T.nilable(String)) }
403
370
  attr_accessor :currency
404
371
  # The ID of the customer who will be billed when this invoice item is billed.
405
372
  sig { returns(String) }
406
373
  attr_accessor :customer
407
374
  # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
408
- sig { returns(String) }
375
+ sig { returns(T.nilable(String)) }
409
376
  attr_accessor :description
410
377
  # Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items.
411
- sig { returns(T::Boolean) }
378
+ sig { returns(T.nilable(T::Boolean)) }
412
379
  attr_accessor :discountable
413
380
  # The coupons and promotion codes to redeem into discounts for the invoice item or invoice line item.
414
- sig { returns(T.nilable(T::Array[::Stripe::InvoiceItem::CreateParams::Discount])) }
381
+ sig {
382
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::CreateParams::Discount]))))
383
+ }
415
384
  attr_accessor :discounts
416
385
  # Specifies which fields in the response should be expanded.
417
- sig { returns(T::Array[String]) }
386
+ sig { returns(T.nilable(T::Array[String])) }
418
387
  attr_accessor :expand
419
388
  # The ID of an existing invoice to add this invoice item to. When left blank, the invoice item will be added to the next upcoming scheduled invoice. This is useful when adding invoice items in response to an invoice.created webhook. You can only add invoice items to draft invoices and there is a maximum of 250 items per invoice.
420
- sig { returns(String) }
389
+ sig { returns(T.nilable(String)) }
421
390
  attr_accessor :invoice
422
- # The ids of the margins to apply to the invoice item. When set, the `default_margins` on the invoice do not apply to this invoice item.
423
- sig { returns(T::Array[String]) }
424
- attr_accessor :margins
425
391
  # 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`.
426
- sig { returns(T.nilable(T::Hash[String, String])) }
392
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Hash[String, String])))) }
427
393
  attr_accessor :metadata
428
394
  # 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.
429
- sig { returns(::Stripe::InvoiceItem::CreateParams::Period) }
395
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::Period)) }
430
396
  attr_accessor :period
431
- # The ID of the price object. One of `price` or `price_data` is required.
432
- sig { returns(String) }
433
- attr_accessor :price
434
- # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline. One of `price` or `price_data` is required.
435
- sig { returns(::Stripe::InvoiceItem::CreateParams::PriceData) }
397
+ # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
398
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::PriceData)) }
436
399
  attr_accessor :price_data
400
+ # The pricing information for the invoice item.
401
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::Pricing)) }
402
+ attr_accessor :pricing
437
403
  # Non-negative integer. The quantity of units for the invoice item.
438
- sig { returns(Integer) }
404
+ sig { returns(T.nilable(Integer)) }
439
405
  attr_accessor :quantity
440
406
  # The ID of a subscription to add this invoice item to. When left blank, the invoice item is added to the next upcoming scheduled invoice. When set, scheduled invoices for subscriptions other than the specified subscription will ignore the invoice item. Use this when you want to express that an invoice item has been accrued within the context of a particular subscription.
441
- sig { returns(String) }
407
+ sig { returns(T.nilable(String)) }
442
408
  attr_accessor :subscription
443
409
  # 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.
444
- sig { returns(String) }
410
+ sig { returns(T.nilable(String)) }
445
411
  attr_accessor :tax_behavior
446
412
  # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
447
- sig { returns(T.nilable(String)) }
413
+ sig { returns(T.nilable(T.nilable(String))) }
448
414
  attr_accessor :tax_code
449
415
  # The tax rates which apply to the invoice item. When set, the `default_tax_rates` on the invoice do not apply to this invoice item.
450
- sig { returns(T::Array[String]) }
416
+ sig { returns(T.nilable(T::Array[String])) }
451
417
  attr_accessor :tax_rates
452
- # 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. Passing in a negative `unit_amount` will reduce the `amount_due` on the invoice.
453
- sig { returns(Integer) }
454
- attr_accessor :unit_amount
455
- # 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.
456
- sig { returns(String) }
418
+ # The decimal unit amount in cents (or local equivalent) of the charge to be applied to the upcoming invoice. This `unit_amount_decimal` will be multiplied by the quantity to get the full amount. Passing in a negative `unit_amount_decimal` will reduce the `amount_due` on the invoice. Accepts at most 12 decimal places.
419
+ sig { returns(T.nilable(String)) }
457
420
  attr_accessor :unit_amount_decimal
458
421
  sig {
459
- params(amount: Integer, currency: String, customer: String, description: String, discountable: T::Boolean, discounts: T.nilable(T::Array[::Stripe::InvoiceItem::CreateParams::Discount]), expand: T::Array[String], invoice: String, margins: T::Array[String], metadata: T.nilable(T::Hash[String, String]), period: ::Stripe::InvoiceItem::CreateParams::Period, price: String, price_data: ::Stripe::InvoiceItem::CreateParams::PriceData, quantity: Integer, subscription: String, tax_behavior: String, tax_code: T.nilable(String), tax_rates: T::Array[String], unit_amount: Integer, unit_amount_decimal: String).void
422
+ params(amount: T.nilable(Integer), currency: T.nilable(String), customer: String, description: T.nilable(String), discountable: T.nilable(T::Boolean), discounts: T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::CreateParams::Discount]))), expand: T.nilable(T::Array[String]), invoice: T.nilable(String), metadata: T.nilable(T.nilable(T.any(String, T::Hash[String, String]))), period: T.nilable(::Stripe::InvoiceItem::CreateParams::Period), price_data: T.nilable(::Stripe::InvoiceItem::CreateParams::PriceData), pricing: T.nilable(::Stripe::InvoiceItem::CreateParams::Pricing), quantity: T.nilable(Integer), subscription: T.nilable(String), tax_behavior: T.nilable(String), tax_code: T.nilable(T.nilable(String)), tax_rates: T.nilable(T::Array[String]), unit_amount_decimal: T.nilable(String)).void
460
423
  }
461
424
  def initialize(
462
425
  amount: nil,
@@ -467,17 +430,15 @@ module Stripe
467
430
  discounts: nil,
468
431
  expand: nil,
469
432
  invoice: nil,
470
- margins: nil,
471
433
  metadata: nil,
472
434
  period: nil,
473
- price: nil,
474
435
  price_data: nil,
436
+ pricing: nil,
475
437
  quantity: nil,
476
438
  subscription: nil,
477
439
  tax_behavior: nil,
478
440
  tax_code: nil,
479
441
  tax_rates: nil,
480
- unit_amount: nil,
481
442
  unit_amount_decimal: nil
482
443
  ); end
483
444
  end