stripe 15.4.0.pre.beta.2 → 15.4.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 (605) hide show
  1. checksums.yaml +4 -4
  2. data/API_VERSION +1 -1
  3. data/CHANGELOG.md +686 -1602
  4. data/OPENAPI_VERSION +1 -1
  5. data/README.md +1 -1
  6. data/VERSION +1 -1
  7. data/lib/stripe/api_requestor.rb +0 -32
  8. data/lib/stripe/api_version.rb +2 -1
  9. data/lib/stripe/errors.rb +0 -60
  10. data/lib/stripe/event_types.rb +0 -102
  11. data/lib/stripe/object_types.rb +0 -50
  12. data/lib/stripe/resources/account.rb +6 -658
  13. data/lib/stripe/resources/account_link.rb +3 -1
  14. data/lib/stripe/resources/account_session.rb +52 -256
  15. data/lib/stripe/resources/billing/credit_balance_summary.rb +0 -2
  16. data/lib/stripe/resources/billing/credit_balance_transaction.rb +0 -4
  17. data/lib/stripe/resources/billing/credit_grant.rb +1 -11
  18. data/lib/stripe/resources/billing_portal/configuration.rb +46 -2
  19. data/lib/stripe/resources/billing_portal/session.rb +0 -6
  20. data/lib/stripe/resources/card.rb +0 -2
  21. data/lib/stripe/resources/cash_balance.rb +0 -2
  22. data/lib/stripe/resources/charge.rb +7 -1543
  23. data/lib/stripe/resources/checkout/session.rb +24 -320
  24. data/lib/stripe/resources/confirmation_token.rb +3 -173
  25. data/lib/stripe/resources/coupon.rb +1 -30
  26. data/lib/stripe/resources/credit_note.rb +0 -6
  27. data/lib/stripe/resources/credit_note_line_item.rb +0 -9
  28. data/lib/stripe/resources/customer.rb +1 -3
  29. data/lib/stripe/resources/customer_balance_transaction.rb +0 -2
  30. data/lib/stripe/resources/customer_cash_balance_transaction.rb +0 -2
  31. data/lib/stripe/resources/customer_session.rb +1 -6
  32. data/lib/stripe/resources/discount.rb +0 -2
  33. data/lib/stripe/resources/dispute.rb +1 -3
  34. data/lib/stripe/resources/event.rb +14 -57
  35. data/lib/stripe/resources/financial_connections/account.rb +1 -22
  36. data/lib/stripe/resources/financial_connections/session.rb +2 -62
  37. data/lib/stripe/resources/identity/verification_session.rb +0 -10
  38. data/lib/stripe/resources/invoice.rb +40 -1071
  39. data/lib/stripe/resources/invoice_item.rb +3 -79
  40. data/lib/stripe/resources/invoice_line_item.rb +1 -55
  41. data/lib/stripe/resources/invoice_payment.rb +53 -2
  42. data/lib/stripe/resources/issuing/cardholder.rb +1 -2
  43. data/lib/stripe/resources/issuing/transaction.rb +0 -6
  44. data/lib/stripe/resources/line_item.rb +0 -37
  45. data/lib/stripe/resources/mandate.rb +0 -24
  46. data/lib/stripe/resources/payment_intent.rb +297 -5243
  47. data/lib/stripe/resources/payment_link.rb +83 -5
  48. data/lib/stripe/resources/payment_method.rb +5 -196
  49. data/lib/stripe/resources/payment_method_configuration.rb +0 -295
  50. data/lib/stripe/resources/payout.rb +0 -6
  51. data/lib/stripe/resources/price.rb +0 -30
  52. data/lib/stripe/resources/promotion_code.rb +0 -10
  53. data/lib/stripe/resources/quote.rb +8 -2039
  54. data/lib/stripe/resources/radar/value_list.rb +2 -2
  55. data/lib/stripe/resources/refund.rb +1 -10
  56. data/lib/stripe/resources/review.rb +2 -2
  57. data/lib/stripe/resources/setup_attempt.rb +1 -22
  58. data/lib/stripe/resources/setup_intent.rb +9 -578
  59. data/lib/stripe/resources/source.rb +0 -29
  60. data/lib/stripe/resources/subscription.rb +11 -290
  61. data/lib/stripe/resources/subscription_item.rb +5 -86
  62. data/lib/stripe/resources/subscription_schedule.rb +45 -1010
  63. data/lib/stripe/resources/tax/registration.rb +408 -30
  64. data/lib/stripe/resources/tax_id.rb +2 -12
  65. data/lib/stripe/resources/terminal/configuration.rb +196 -0
  66. data/lib/stripe/resources/terminal/reader.rb +0 -8
  67. data/lib/stripe/resources/transfer.rb +0 -6
  68. data/lib/stripe/resources/treasury/financial_account.rb +3 -22
  69. data/lib/stripe/resources/treasury/financial_account_features.rb +0 -2
  70. data/lib/stripe/resources/treasury/outbound_transfer.rb +0 -37
  71. data/lib/stripe/resources/treasury/received_credit.rb +1 -38
  72. data/lib/stripe/resources/treasury/received_debit.rb +1 -40
  73. data/lib/stripe/resources.rb +0 -106
  74. data/lib/stripe/services/account_link_service.rb +3 -1
  75. data/lib/stripe/services/account_service.rb +4 -565
  76. data/lib/stripe/services/account_session_service.rb +35 -226
  77. data/lib/stripe/services/billing/credit_balance_summary_service.rb +1 -4
  78. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +0 -4
  79. data/lib/stripe/services/billing/credit_grant_service.rb +1 -9
  80. data/lib/stripe/services/billing_portal/configuration_service.rb +36 -2
  81. data/lib/stripe/services/billing_portal/session_service.rb +0 -4
  82. data/lib/stripe/services/charge_service.rb +0 -1418
  83. data/lib/stripe/services/checkout/session_service.rb +16 -241
  84. data/lib/stripe/services/coupon_service.rb +1 -17
  85. data/lib/stripe/services/credit_note_service.rb +0 -4
  86. data/lib/stripe/services/customer_session_service.rb +1 -4
  87. data/lib/stripe/services/financial_connections/account_service.rb +2 -7
  88. data/lib/stripe/services/financial_connections/session_service.rb +2 -34
  89. data/lib/stripe/services/financial_connections_service.rb +1 -2
  90. data/lib/stripe/services/identity/verification_session_service.rb +0 -8
  91. data/lib/stripe/services/invoice_item_service.rb +3 -75
  92. data/lib/stripe/services/invoice_line_item_service.rb +1 -33
  93. data/lib/stripe/services/invoice_payment_service.rb +83 -0
  94. data/lib/stripe/services/invoice_service.rb +40 -1022
  95. data/lib/stripe/services/issuing/cardholder_service.rb +1 -2
  96. data/lib/stripe/services/issuing/transaction_service.rb +0 -4
  97. data/lib/stripe/services/issuing_service.rb +1 -5
  98. data/lib/stripe/services/payment_intent_service.rb +399 -4882
  99. data/lib/stripe/services/payment_link_service.rb +81 -5
  100. data/lib/stripe/services/payment_method_configuration_service.rb +0 -210
  101. data/lib/stripe/services/payment_method_service.rb +2 -121
  102. data/lib/stripe/services/payout_service.rb +0 -4
  103. data/lib/stripe/services/price_service.rb +0 -19
  104. data/lib/stripe/services/promotion_code_service.rb +0 -8
  105. data/lib/stripe/services/quote_service.rb +9 -1724
  106. data/lib/stripe/services/radar/value_list_service.rb +1 -1
  107. data/lib/stripe/services/setup_intent_service.rb +9 -538
  108. data/lib/stripe/services/subscription_item_service.rb +5 -77
  109. data/lib/stripe/services/subscription_schedule_service.rb +45 -914
  110. data/lib/stripe/services/subscription_service.rb +11 -251
  111. data/lib/stripe/services/tax/registration_service.rb +360 -30
  112. data/lib/stripe/services/tax_id_service.rb +2 -8
  113. data/lib/stripe/services/tax_service.rb +1 -3
  114. data/lib/stripe/services/terminal/configuration_service.rb +152 -0
  115. data/lib/stripe/services/terminal_service.rb +1 -2
  116. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +0 -97
  117. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +1 -25
  118. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +1 -25
  119. data/lib/stripe/services/transfer_service.rb +0 -4
  120. data/lib/stripe/services/treasury/financial_account_features_service.rb +1 -4
  121. data/lib/stripe/services/treasury/financial_account_service.rb +2 -16
  122. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -24
  123. data/lib/stripe/services/v1_services.rb +2 -11
  124. data/lib/stripe/services/v2/core_service.rb +1 -4
  125. data/lib/stripe/services/v2_services.rb +1 -4
  126. data/lib/stripe/services.rb +1 -53
  127. data/lib/stripe/stripe_configuration.rb +1 -3
  128. data/lib/stripe/stripe_object.rb +1 -1
  129. data/lib/stripe/util.rb +1 -7
  130. data/lib/stripe/version.rb +1 -1
  131. data/lib/stripe.rb +0 -53
  132. data/rbi/stripe/resources/account.rbi +4995 -0
  133. data/rbi/stripe/resources/account_link.rbi +76 -0
  134. data/rbi/stripe/resources/account_session.rbi +1074 -0
  135. data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
  136. data/rbi/stripe/resources/application.rbi +20 -0
  137. data/rbi/stripe/resources/application_fee.rbi +118 -0
  138. data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
  139. data/rbi/stripe/resources/apps/secret.rbi +195 -0
  140. data/rbi/stripe/resources/balance.rbi +235 -0
  141. data/rbi/stripe/resources/balance_transaction.rbi +147 -0
  142. data/rbi/stripe/resources/bank_account.rbi +127 -0
  143. data/rbi/stripe/resources/billing/alert.rbi +201 -0
  144. data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
  145. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
  146. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
  147. data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
  148. data/rbi/stripe/resources/billing/meter.rbi +226 -0
  149. data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
  150. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
  151. data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
  152. data/rbi/stripe/resources/billing_portal/configuration.rbi +703 -0
  153. data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
  154. data/rbi/stripe/resources/capability.rbi +125 -0
  155. data/rbi/stripe/resources/card.rbi +125 -0
  156. data/rbi/stripe/resources/cash_balance.rbi +32 -0
  157. data/rbi/stripe/resources/charge.rbi +2089 -0
  158. data/rbi/stripe/resources/checkout/session.rbi +4095 -0
  159. data/rbi/stripe/resources/climate/order.rbi +245 -0
  160. data/rbi/stripe/resources/climate/product.rbi +75 -0
  161. data/rbi/stripe/resources/climate/supplier.rbi +72 -0
  162. data/rbi/stripe/resources/confirmation_token.rbi +1818 -0
  163. data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
  164. data/rbi/stripe/resources/country_spec.rbi +85 -0
  165. data/rbi/stripe/resources/coupon.rbi +250 -0
  166. data/rbi/stripe/resources/credit_note.rbi +752 -0
  167. data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
  168. data/rbi/stripe/resources/customer.rbi +1005 -0
  169. data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
  170. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
  171. data/rbi/stripe/resources/customer_session.rbi +200 -0
  172. data/rbi/stripe/resources/discount.rbi +53 -0
  173. data/rbi/stripe/resources/dispute.rbi +761 -0
  174. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
  175. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
  176. data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
  177. data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
  178. data/rbi/stripe/resources/event.rbi +137 -0
  179. data/rbi/stripe/resources/exchange_rate.rbi +66 -0
  180. data/rbi/stripe/resources/file.rbi +143 -0
  181. data/rbi/stripe/resources/file_link.rbi +141 -0
  182. data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
  183. data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
  184. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
  185. data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
  186. data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
  187. data/rbi/stripe/resources/forwarding/request.rbi +216 -0
  188. data/rbi/stripe/resources/funding_instructions.rbi +437 -0
  189. data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
  190. data/rbi/stripe/resources/identity/verification_session.rbi +564 -0
  191. data/rbi/stripe/resources/invoice.rbi +3858 -0
  192. data/rbi/stripe/resources/invoice_item.rbi +470 -0
  193. data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
  194. data/rbi/stripe/resources/invoice_payment.rbi +121 -0
  195. data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
  196. data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
  197. data/rbi/stripe/resources/issuing/card.rbi +741 -0
  198. data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
  199. data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
  200. data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
  201. data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
  202. data/rbi/stripe/resources/issuing/token.rbi +226 -0
  203. data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
  204. data/rbi/stripe/resources/line_item.rbi +72 -0
  205. data/rbi/stripe/resources/login_link.rbi +19 -0
  206. data/rbi/stripe/resources/mandate.rbi +191 -0
  207. data/rbi/stripe/resources/payment_intent.rbi +9997 -0
  208. data/rbi/stripe/resources/payment_link.rbi +1893 -0
  209. data/rbi/stripe/resources/payment_method.rbi +1770 -0
  210. data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
  211. data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
  212. data/rbi/stripe/resources/payout.rbi +300 -0
  213. data/rbi/stripe/resources/person.rbi +401 -0
  214. data/rbi/stripe/resources/plan.rbi +371 -0
  215. data/rbi/stripe/resources/price.rbi +694 -0
  216. data/rbi/stripe/resources/product.rbi +555 -0
  217. data/rbi/stripe/resources/product_feature.rbi +26 -0
  218. data/rbi/stripe/resources/promotion_code.rbi +261 -0
  219. data/rbi/stripe/resources/quote.rbi +1145 -0
  220. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
  221. data/rbi/stripe/resources/radar/value_list.rbi +168 -0
  222. data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
  223. data/rbi/stripe/resources/refund.rbi +523 -0
  224. data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
  225. data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
  226. data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
  227. data/rbi/stripe/resources/reversal.rbi +51 -0
  228. data/rbi/stripe/resources/review.rbi +154 -0
  229. data/rbi/stripe/resources/setup_attempt.rbi +477 -0
  230. data/rbi/stripe/resources/setup_intent.rbi +3978 -0
  231. data/rbi/stripe/resources/shipping_rate.rbi +305 -0
  232. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
  233. data/rbi/stripe/resources/source.rbi +1496 -0
  234. data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
  235. data/rbi/stripe/resources/source_transaction.rbi +127 -0
  236. data/rbi/stripe/resources/subscription.rbi +2080 -0
  237. data/rbi/stripe/resources/subscription_item.rbi +404 -0
  238. data/rbi/stripe/resources/subscription_schedule.rbi +1673 -0
  239. data/rbi/stripe/resources/tax/calculation.rbi +478 -0
  240. data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
  241. data/rbi/stripe/resources/tax/registration.rbi +3216 -0
  242. data/rbi/stripe/resources/tax/settings.rbi +141 -0
  243. data/rbi/stripe/resources/tax/transaction.rbi +351 -0
  244. data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
  245. data/rbi/stripe/resources/tax_code.rbi +44 -0
  246. data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
  247. data/rbi/stripe/resources/tax_id.rbi +165 -0
  248. data/rbi/stripe/resources/tax_rate.rbi +239 -0
  249. data/rbi/stripe/resources/terminal/configuration.rbi +1595 -0
  250. data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
  251. data/rbi/stripe/resources/terminal/location.rbi +222 -0
  252. data/rbi/stripe/resources/terminal/reader.rbi +994 -0
  253. data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
  254. data/rbi/stripe/resources/token.rbi +1283 -0
  255. data/rbi/stripe/resources/topup.rbi +222 -0
  256. data/rbi/stripe/resources/transfer.rbi +199 -0
  257. data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
  258. data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
  259. data/rbi/stripe/resources/treasury/financial_account.rbi +869 -0
  260. data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
  261. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
  262. data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
  263. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
  264. data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
  265. data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
  266. data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
  267. data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
  268. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  269. data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
  270. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
  271. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
  272. data/rbi/stripe/resources/v2/event.rbi +48 -0
  273. data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
  274. data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
  275. data/rbi/stripe/services/account_capability_service.rbi +51 -0
  276. data/{lib/stripe/services/external_account_service.rb → rbi/stripe/services/account_external_account_service.rbi} +122 -135
  277. data/rbi/stripe/services/account_link_service.rbi +60 -0
  278. data/rbi/stripe/services/account_login_link_service.rbi +22 -0
  279. data/rbi/stripe/services/account_person_service.rbi +1011 -0
  280. data/rbi/stripe/services/account_service.rbi +4281 -0
  281. data/rbi/stripe/services/account_session_service.rbi +685 -0
  282. data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
  283. data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
  284. data/rbi/stripe/services/application_fee_service.rbi +78 -0
  285. data/rbi/stripe/services/apps/secret_service.rbi +151 -0
  286. data/rbi/stripe/services/apps_service.rbi +9 -0
  287. data/rbi/stripe/services/balance_service.rbi +21 -0
  288. data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
  289. data/rbi/stripe/services/billing/alert_service.rbi +152 -0
  290. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
  291. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  292. data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
  293. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
  294. data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
  295. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
  296. data/rbi/stripe/services/billing/meter_service.rbi +163 -0
  297. data/rbi/stripe/services/billing_portal/configuration_service.rbi +555 -0
  298. data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
  299. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  300. data/rbi/stripe/services/billing_service.rbi +15 -0
  301. data/rbi/stripe/services/charge_service.rbi +448 -0
  302. data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
  303. data/rbi/stripe/services/checkout/session_service.rbi +2690 -0
  304. data/rbi/stripe/services/checkout_service.rbi +9 -0
  305. data/rbi/stripe/services/climate/order_service.rbi +142 -0
  306. data/rbi/stripe/services/climate/product_service.rbi +46 -0
  307. data/{lib/stripe/services/financial_connections/institution_service.rb → rbi/stripe/services/climate/supplier_service.rbi} +25 -36
  308. data/rbi/stripe/services/climate_service.rbi +11 -0
  309. data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
  310. data/rbi/stripe/services/country_spec_service.rbi +44 -0
  311. data/rbi/stripe/services/coupon_service.rbi +194 -0
  312. data/{lib/stripe/services/quote_preview_invoice_service.rb → rbi/stripe/services/credit_note_line_item_service.rbi} +16 -20
  313. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
  314. data/rbi/stripe/services/credit_note_service.rbi +415 -0
  315. data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
  316. data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
  317. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
  318. data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
  319. data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
  320. data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
  321. data/rbi/stripe/services/customer_service.rbi +647 -0
  322. data/rbi/stripe/services/customer_session_service.rbi +116 -0
  323. data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
  324. data/rbi/stripe/services/dispute_service.rbi +424 -0
  325. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
  326. data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
  327. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  328. data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
  329. data/rbi/stripe/services/event_service.rbi +83 -0
  330. data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
  331. data/rbi/stripe/services/file_link_service.rbi +124 -0
  332. data/rbi/stripe/services/file_service.rbi +116 -0
  333. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
  334. data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
  335. data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
  336. data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
  337. data/rbi/stripe/services/financial_connections_service.rbi +11 -0
  338. data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
  339. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  340. data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
  341. data/rbi/stripe/services/identity/verification_session_service.rbi +339 -0
  342. data/rbi/stripe/services/identity_service.rbi +10 -0
  343. data/rbi/stripe/services/invoice_item_service.rbi +366 -0
  344. data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
  345. data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
  346. data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
  347. data/rbi/stripe/services/invoice_service.rbi +3027 -0
  348. data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
  349. data/rbi/stripe/services/issuing/card_service.rbi +495 -0
  350. data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
  351. data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
  352. data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
  353. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
  354. data/rbi/stripe/services/issuing/token_service.rbi +99 -0
  355. data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
  356. data/rbi/stripe/services/issuing_service.rbi +16 -0
  357. data/rbi/stripe/services/mandate_service.rbi +20 -0
  358. data/rbi/stripe/services/payment_intent_service.rbi +7994 -0
  359. data/{lib/stripe/services/payment_intent_amount_details_line_item_service.rb → rbi/stripe/services/payment_link_line_item_service.rbi} +16 -20
  360. data/rbi/stripe/services/payment_link_service.rbi +1441 -0
  361. data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
  362. data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
  363. data/rbi/stripe/services/payment_method_service.rbi +781 -0
  364. data/rbi/stripe/services/payout_service.rbi +205 -0
  365. data/rbi/stripe/services/plan_service.rbi +282 -0
  366. data/rbi/stripe/services/price_service.rbi +546 -0
  367. data/rbi/stripe/services/product_feature_service.rbi +67 -0
  368. data/rbi/stripe/services/product_service.rbi +477 -0
  369. data/rbi/stripe/services/promotion_code_service.rbi +214 -0
  370. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
  371. data/{lib/stripe/services/order_line_item_service.rb → rbi/stripe/services/quote_line_item_service.rbi} +16 -20
  372. data/rbi/stripe/services/quote_service.rbi +699 -0
  373. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
  374. data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
  375. data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
  376. data/rbi/stripe/services/radar_service.rbi +11 -0
  377. data/rbi/stripe/services/refund_service.rbi +185 -0
  378. data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
  379. data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
  380. data/rbi/stripe/services/reporting_service.rbi +10 -0
  381. data/rbi/stripe/services/review_service.rbi +84 -0
  382. data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
  383. data/rbi/stripe/services/setup_intent_service.rbi +3709 -0
  384. data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
  385. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
  386. data/rbi/stripe/services/sigma_service.rbi +9 -0
  387. data/rbi/stripe/services/source_service.rbi +663 -0
  388. data/{lib/stripe/services/quote_line_service.rb → rbi/stripe/services/source_transaction_service.rbi} +16 -20
  389. data/rbi/stripe/services/subscription_item_service.rbi +350 -0
  390. data/rbi/stripe/services/subscription_schedule_service.rbi +1333 -0
  391. data/rbi/stripe/services/subscription_service.rbi +1684 -0
  392. data/{lib/stripe/services/financial_connections/account_inferred_balance_service.rb → rbi/stripe/services/tax/calculation_line_item_service.rbi} +17 -21
  393. data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
  394. data/rbi/stripe/services/tax/registration_service.rbi +2278 -0
  395. data/rbi/stripe/services/tax/settings_service.rbi +93 -0
  396. data/{lib/stripe/services/privacy/redaction_job_validation_error_service.rb → rbi/stripe/services/tax/transaction_line_item_service.rbi} +17 -21
  397. data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
  398. data/rbi/stripe/services/tax_code_service.rbi +44 -0
  399. data/rbi/stripe/services/tax_id_service.rbi +110 -0
  400. data/rbi/stripe/services/tax_rate_service.rbi +185 -0
  401. data/rbi/stripe/services/tax_service.rbi +12 -0
  402. data/rbi/stripe/services/terminal/configuration_service.rbi +1286 -0
  403. data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
  404. data/rbi/stripe/services/terminal/location_service.rbi +182 -0
  405. data/rbi/stripe/services/terminal/reader_service.rbi +540 -0
  406. data/rbi/stripe/services/terminal_service.rbi +12 -0
  407. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +746 -0
  408. data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
  409. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
  410. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
  411. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
  412. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
  413. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  414. data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
  415. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
  416. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  417. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
  418. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
  419. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
  420. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
  421. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
  422. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
  423. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  424. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  425. data/rbi/stripe/services/token_service.rbi +1257 -0
  426. data/rbi/stripe/services/topup_service.rbi +176 -0
  427. data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
  428. data/rbi/stripe/services/transfer_service.rbi +152 -0
  429. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
  430. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
  431. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
  432. data/rbi/stripe/services/treasury/financial_account_service.rbi +566 -0
  433. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
  434. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
  435. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
  436. data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
  437. data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
  438. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
  439. data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
  440. data/rbi/stripe/services/treasury_service.rbi +18 -0
  441. data/rbi/stripe/services/v1_services.rbi +77 -0
  442. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
  443. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
  444. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
  445. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
  446. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  447. data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
  448. data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
  449. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  450. data/rbi/stripe/services/v2_services.rbi +10 -0
  451. data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
  452. data/stripe.gemspec +1 -4
  453. metadata +325 -164
  454. data/lib/stripe/events/v2_core_account_closed_event.rb +0 -21
  455. data/lib/stripe/events/v2_core_account_created_event.rb +0 -21
  456. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +0 -23
  457. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +0 -21
  458. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +0 -23
  459. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +0 -21
  460. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +0 -23
  461. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +0 -21
  462. data/lib/stripe/events/v2_core_account_including_configuration_storer_capability_status_updated_event.rb +0 -23
  463. data/lib/stripe/events/v2_core_account_including_configuration_storer_updated_event.rb +0 -21
  464. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +0 -21
  465. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +0 -21
  466. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +0 -21
  467. data/lib/stripe/events/v2_core_account_link_completed_event.rb +0 -13
  468. data/lib/stripe/events/v2_core_account_person_created_event.rb +0 -23
  469. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +0 -23
  470. data/lib/stripe/events/v2_core_account_person_updated_event.rb +0 -23
  471. data/lib/stripe/events/v2_core_account_updated_event.rb +0 -21
  472. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +0 -21
  473. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +0 -21
  474. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +0 -21
  475. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +0 -21
  476. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +0 -21
  477. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +0 -23
  478. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +0 -21
  479. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +0 -21
  480. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +0 -21
  481. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +0 -21
  482. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +0 -21
  483. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +0 -21
  484. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +0 -21
  485. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +0 -21
  486. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +0 -21
  487. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +0 -21
  488. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +0 -21
  489. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +0 -21
  490. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +0 -21
  491. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +0 -21
  492. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +0 -21
  493. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +0 -21
  494. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +0 -21
  495. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +0 -23
  496. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +0 -21
  497. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +0 -21
  498. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +0 -21
  499. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +0 -21
  500. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +0 -21
  501. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +0 -21
  502. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +0 -21
  503. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +0 -21
  504. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +0 -21
  505. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +0 -21
  506. data/lib/stripe/events/v2_off_session_payment_requires_capture_event.rb +0 -21
  507. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +0 -21
  508. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +0 -21
  509. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +0 -21
  510. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +0 -21
  511. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +0 -21
  512. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +0 -21
  513. data/lib/stripe/resources/account_notice.rb +0 -123
  514. data/lib/stripe/resources/balance_settings.rb +0 -105
  515. data/lib/stripe/resources/capital/financing_offer.rb +0 -179
  516. data/lib/stripe/resources/capital/financing_summary.rb +0 -55
  517. data/lib/stripe/resources/capital/financing_transaction.rb +0 -114
  518. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  519. data/lib/stripe/resources/financial_connections/institution.rb +0 -92
  520. data/lib/stripe/resources/fx_quote.rb +0 -184
  521. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -602
  522. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -82
  523. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -86
  524. data/lib/stripe/resources/issuing/settlement.rb +0 -53
  525. data/lib/stripe/resources/margin.rb +0 -115
  526. data/lib/stripe/resources/order.rb +0 -2958
  527. data/lib/stripe/resources/payment_attempt_record.rb +0 -1099
  528. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +0 -72
  529. data/lib/stripe/resources/payment_record.rb +0 -1628
  530. data/lib/stripe/resources/privacy/redaction_job.rb +0 -298
  531. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +0 -33
  532. data/lib/stripe/resources/quote_line.rb +0 -274
  533. data/lib/stripe/resources/quote_preview_invoice.rb +0 -663
  534. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -371
  535. data/lib/stripe/resources/tax/association.rb +0 -66
  536. data/lib/stripe/resources/tax/form.rb +0 -211
  537. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -31
  538. data/lib/stripe/resources/v2/core/account.rb +0 -1919
  539. data/lib/stripe/resources/v2/core/account_link.rb +0 -56
  540. data/lib/stripe/resources/v2/core/person.rb +0 -276
  541. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +0 -74
  542. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +0 -39
  543. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +0 -20
  544. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +0 -22
  545. data/lib/stripe/resources/v2/money_management/adjustment.rb +0 -51
  546. data/lib/stripe/resources/v2/money_management/financial_account.rb +0 -77
  547. data/lib/stripe/resources/v2/money_management/financial_address.rb +0 -68
  548. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +0 -94
  549. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +0 -129
  550. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +0 -82
  551. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +0 -45
  552. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +0 -117
  553. data/lib/stripe/resources/v2/money_management/payout_method.rb +0 -75
  554. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +0 -49
  555. data/lib/stripe/resources/v2/money_management/received_credit.rb +0 -122
  556. data/lib/stripe/resources/v2/money_management/received_debit.rb +0 -84
  557. data/lib/stripe/resources/v2/money_management/transaction.rb +0 -78
  558. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +0 -68
  559. data/lib/stripe/resources/v2/payments/off_session_payment.rb +0 -72
  560. data/lib/stripe/services/account_notice_service.rb +0 -101
  561. data/lib/stripe/services/balance_settings_service.rb +0 -96
  562. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  563. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  564. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  565. data/lib/stripe/services/capital_service.rb +0 -15
  566. data/lib/stripe/services/fx_quote_service.rb +0 -123
  567. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  568. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  569. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  570. data/lib/stripe/services/margin_service.rb +0 -119
  571. data/lib/stripe/services/order_service.rb +0 -2388
  572. data/lib/stripe/services/payment_attempt_record_service.rb +0 -49
  573. data/lib/stripe/services/payment_record_service.rb +0 -542
  574. data/lib/stripe/services/privacy/redaction_job_service.rb +0 -240
  575. data/lib/stripe/services/privacy_service.rb +0 -13
  576. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +0 -35
  577. data/lib/stripe/services/tax/association_service.rb +0 -31
  578. data/lib/stripe/services/tax/form_service.rb +0 -100
  579. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  580. data/lib/stripe/services/v2/core/account_link_service.rb +0 -76
  581. data/lib/stripe/services/v2/core/account_service.rb +0 -4486
  582. data/lib/stripe/services/v2/core/accounts/person_service.rb +0 -1045
  583. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +0 -130
  584. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +0 -107
  585. data/lib/stripe/services/v2/core/vault_service.rb +0 -18
  586. data/lib/stripe/services/v2/money_management/adjustment_service.rb +0 -74
  587. data/lib/stripe/services/v2/money_management/financial_account_service.rb +0 -116
  588. data/lib/stripe/services/v2/money_management/financial_address_service.rb +0 -82
  589. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +0 -125
  590. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +0 -95
  591. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +0 -199
  592. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +0 -235
  593. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +0 -172
  594. data/lib/stripe/services/v2/money_management/payout_method_service.rb +0 -90
  595. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +0 -32
  596. data/lib/stripe/services/v2/money_management/received_credit_service.rb +0 -70
  597. data/lib/stripe/services/v2/money_management/received_debit_service.rb +0 -43
  598. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +0 -69
  599. data/lib/stripe/services/v2/money_management/transaction_service.rb +0 -73
  600. data/lib/stripe/services/v2/money_management_service.rb +0 -31
  601. data/lib/stripe/services/v2/payment_service.rb +0 -15
  602. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +0 -137
  603. data/lib/stripe/services/v2/test_helper_service.rb +0 -15
  604. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +0 -49
  605. data/rbi/stripe.rbi +0 -194513
@@ -0,0 +1,470 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ # Invoice Items represent the component lines of an [invoice](https://stripe.com/docs/api/invoices). When you create an invoice item with an `invoice` field, it is attached to the specified invoice and included as [an invoice line item](https://stripe.com/docs/api/invoices/line_item) within [invoice.lines](https://stripe.com/docs/api/invoices/object#invoice_object-lines).
7
+ #
8
+ # Invoice Items can be created before you are ready to actually send the invoice. This can be particularly useful when combined
9
+ # with a [subscription](https://stripe.com/docs/api/subscriptions). Sometimes you want to add a charge or credit to a customer, but actually charge
10
+ # or credit the customer's card only at the end of a regular billing cycle. This is useful for combining several charges
11
+ # (to minimize per-transaction fees), or for having Stripe tabulate your usage-based billing totals.
12
+ #
13
+ # 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).
14
+ class InvoiceItem < APIResource
15
+ class Parent < Stripe::StripeObject
16
+ class SubscriptionDetails < Stripe::StripeObject
17
+ # The subscription that generated this invoice item
18
+ sig { returns(String) }
19
+ attr_reader :subscription
20
+ # The subscription item that generated this invoice item
21
+ sig { returns(String) }
22
+ attr_reader :subscription_item
23
+ end
24
+ # Details about the subscription that generated this invoice item
25
+ sig { returns(T.nilable(SubscriptionDetails)) }
26
+ attr_reader :subscription_details
27
+ # The type of parent that generated this invoice item
28
+ sig { returns(String) }
29
+ attr_reader :type
30
+ end
31
+ class Period < Stripe::StripeObject
32
+ # The end of the period, which must be greater than or equal to the start. This value is inclusive.
33
+ sig { returns(Integer) }
34
+ attr_reader :end
35
+ # The start of the period. This value is inclusive.
36
+ sig { returns(Integer) }
37
+ attr_reader :start
38
+ end
39
+ class Pricing < Stripe::StripeObject
40
+ class PriceDetails < Stripe::StripeObject
41
+ # The ID of the price this item is associated with.
42
+ sig { returns(String) }
43
+ attr_reader :price
44
+ # The ID of the product this item is associated with.
45
+ sig { returns(String) }
46
+ attr_reader :product
47
+ end
48
+ # Attribute for field price_details
49
+ sig { returns(PriceDetails) }
50
+ attr_reader :price_details
51
+ # The type of the pricing details.
52
+ sig { returns(String) }
53
+ attr_reader :type
54
+ # The unit amount (in the `currency` specified) of the item which contains a decimal value with at most 12 decimal places.
55
+ sig { returns(T.nilable(String)) }
56
+ attr_reader :unit_amount_decimal
57
+ end
58
+ # Amount (in the `currency` specified) of the invoice item. This should always be equal to `unit_amount * quantity`.
59
+ sig { returns(Integer) }
60
+ attr_reader :amount
61
+ # 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).
62
+ sig { returns(String) }
63
+ attr_reader :currency
64
+ # The ID of the customer who will be billed when this invoice item is billed.
65
+ sig { returns(T.any(String, Stripe::Customer)) }
66
+ attr_reader :customer
67
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
68
+ sig { returns(Integer) }
69
+ attr_reader :date
70
+ # An arbitrary string attached to the object. Often useful for displaying to users.
71
+ sig { returns(T.nilable(String)) }
72
+ attr_reader :description
73
+ # If true, discounts will apply to this invoice item. Always false for prorations.
74
+ sig { returns(T::Boolean) }
75
+ attr_reader :discountable
76
+ # The discounts which apply to the invoice item. Item discounts are applied before invoice discounts. Use `expand[]=discounts` to expand each discount.
77
+ sig { returns(T.nilable(T::Array[T.any(String, Stripe::Discount)])) }
78
+ attr_reader :discounts
79
+ # Unique identifier for the object.
80
+ sig { returns(String) }
81
+ attr_reader :id
82
+ # The ID of the invoice this invoice item belongs to.
83
+ sig { returns(T.nilable(T.any(String, Stripe::Invoice))) }
84
+ attr_reader :invoice
85
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
86
+ sig { returns(T::Boolean) }
87
+ attr_reader :livemode
88
+ # 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.
89
+ sig { returns(T.nilable(T::Hash[String, String])) }
90
+ attr_reader :metadata
91
+ # String representing the object's type. Objects of the same type share the same value.
92
+ sig { returns(String) }
93
+ attr_reader :object
94
+ # The parent that generated this invoice item.
95
+ sig { returns(T.nilable(Parent)) }
96
+ attr_reader :parent
97
+ # Attribute for field period
98
+ sig { returns(Period) }
99
+ attr_reader :period
100
+ # The pricing information of the invoice item.
101
+ sig { returns(T.nilable(Pricing)) }
102
+ attr_reader :pricing
103
+ # Whether the invoice item was created automatically as a proration adjustment when the customer switched plans.
104
+ sig { returns(T::Boolean) }
105
+ attr_reader :proration
106
+ # 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.
107
+ sig { returns(Integer) }
108
+ attr_reader :quantity
109
+ # 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.
110
+ sig { returns(T.nilable(T::Array[Stripe::TaxRate])) }
111
+ attr_reader :tax_rates
112
+ # ID of the test clock this invoice item belongs to.
113
+ sig { returns(T.nilable(T.any(String, Stripe::TestHelpers::TestClock))) }
114
+ attr_reader :test_clock
115
+ # Always true for a deleted object
116
+ sig { returns(T::Boolean) }
117
+ attr_reader :deleted
118
+ class DeleteParams < Stripe::RequestParams; end
119
+ class UpdateParams < Stripe::RequestParams
120
+ class Discount < Stripe::RequestParams
121
+ # ID of the coupon to create a new discount for.
122
+ sig { returns(T.nilable(String)) }
123
+ attr_accessor :coupon
124
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
125
+ sig { returns(T.nilable(String)) }
126
+ attr_accessor :discount
127
+ # ID of the promotion code to create a new discount for.
128
+ sig { returns(T.nilable(String)) }
129
+ attr_accessor :promotion_code
130
+ sig {
131
+ params(coupon: T.nilable(String), discount: T.nilable(String), promotion_code: T.nilable(String)).void
132
+ }
133
+ def initialize(coupon: nil, discount: nil, promotion_code: nil); end
134
+ end
135
+ class Period < Stripe::RequestParams
136
+ # The end of the period, which must be greater than or equal to the start. This value is inclusive.
137
+ sig { returns(Integer) }
138
+ attr_accessor :end
139
+ # The start of the period. This value is inclusive.
140
+ sig { returns(Integer) }
141
+ attr_accessor :start
142
+ sig { params(end_: Integer, start: Integer).void }
143
+ def initialize(end_: nil, start: nil); end
144
+ end
145
+ class PriceData < Stripe::RequestParams
146
+ # 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).
147
+ sig { returns(String) }
148
+ attr_accessor :currency
149
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
150
+ sig { returns(String) }
151
+ attr_accessor :product
152
+ # 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.
153
+ sig { returns(T.nilable(String)) }
154
+ attr_accessor :tax_behavior
155
+ # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
156
+ sig { returns(T.nilable(Integer)) }
157
+ attr_accessor :unit_amount
158
+ # 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.
159
+ sig { returns(T.nilable(String)) }
160
+ attr_accessor :unit_amount_decimal
161
+ sig {
162
+ params(currency: String, product: String, tax_behavior: T.nilable(String), unit_amount: T.nilable(Integer), unit_amount_decimal: T.nilable(String)).void
163
+ }
164
+ def initialize(
165
+ currency: nil,
166
+ product: nil,
167
+ tax_behavior: nil,
168
+ unit_amount: nil,
169
+ unit_amount_decimal: nil
170
+ ); end
171
+ end
172
+ class Pricing < Stripe::RequestParams
173
+ # The ID of the price object.
174
+ sig { returns(T.nilable(String)) }
175
+ attr_accessor :price
176
+ sig { params(price: T.nilable(String)).void }
177
+ def initialize(price: nil); end
178
+ end
179
+ # 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.
180
+ sig { returns(T.nilable(Integer)) }
181
+ attr_accessor :amount
182
+ # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
183
+ sig { returns(T.nilable(String)) }
184
+ attr_accessor :description
185
+ # 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.
186
+ sig { returns(T.nilable(T::Boolean)) }
187
+ attr_accessor :discountable
188
+ # 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.
189
+ sig {
190
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::UpdateParams::Discount]))))
191
+ }
192
+ attr_accessor :discounts
193
+ # Specifies which fields in the response should be expanded.
194
+ sig { returns(T.nilable(T::Array[String])) }
195
+ attr_accessor :expand
196
+ # 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`.
197
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Hash[String, String])))) }
198
+ attr_accessor :metadata
199
+ # 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.
200
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::Period)) }
201
+ attr_accessor :period
202
+ # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
203
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::PriceData)) }
204
+ attr_accessor :price_data
205
+ # The pricing information for the invoice item.
206
+ sig { returns(T.nilable(::Stripe::InvoiceItem::UpdateParams::Pricing)) }
207
+ attr_accessor :pricing
208
+ # Non-negative integer. The quantity of units for the invoice item.
209
+ sig { returns(T.nilable(Integer)) }
210
+ attr_accessor :quantity
211
+ # 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.
212
+ sig { returns(T.nilable(String)) }
213
+ attr_accessor :tax_behavior
214
+ # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
215
+ sig { returns(T.nilable(T.nilable(String))) }
216
+ attr_accessor :tax_code
217
+ # 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.
218
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Array[String])))) }
219
+ attr_accessor :tax_rates
220
+ # 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.
221
+ sig { returns(T.nilable(String)) }
222
+ attr_accessor :unit_amount_decimal
223
+ sig {
224
+ 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
225
+ }
226
+ def initialize(
227
+ amount: nil,
228
+ description: nil,
229
+ discountable: nil,
230
+ discounts: nil,
231
+ expand: nil,
232
+ metadata: nil,
233
+ period: nil,
234
+ price_data: nil,
235
+ pricing: nil,
236
+ quantity: nil,
237
+ tax_behavior: nil,
238
+ tax_code: nil,
239
+ tax_rates: nil,
240
+ unit_amount_decimal: nil
241
+ ); end
242
+ end
243
+ class ListParams < Stripe::RequestParams
244
+ class Created < Stripe::RequestParams
245
+ # Minimum value to filter by (exclusive)
246
+ sig { returns(T.nilable(Integer)) }
247
+ attr_accessor :gt
248
+ # Minimum value to filter by (inclusive)
249
+ sig { returns(T.nilable(Integer)) }
250
+ attr_accessor :gte
251
+ # Maximum value to filter by (exclusive)
252
+ sig { returns(T.nilable(Integer)) }
253
+ attr_accessor :lt
254
+ # Maximum value to filter by (inclusive)
255
+ sig { returns(T.nilable(Integer)) }
256
+ attr_accessor :lte
257
+ sig {
258
+ params(gt: T.nilable(Integer), gte: T.nilable(Integer), lt: T.nilable(Integer), lte: T.nilable(Integer)).void
259
+ }
260
+ def initialize(gt: nil, gte: nil, lt: nil, lte: nil); end
261
+ end
262
+ # Only return invoice items that were created during the given date interval.
263
+ sig { returns(T.nilable(T.any(::Stripe::InvoiceItem::ListParams::Created, Integer))) }
264
+ attr_accessor :created
265
+ # The identifier of the customer whose invoice items to return. If none is provided, all invoice items will be returned.
266
+ sig { returns(T.nilable(String)) }
267
+ attr_accessor :customer
268
+ # 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.
269
+ sig { returns(T.nilable(String)) }
270
+ attr_accessor :ending_before
271
+ # Specifies which fields in the response should be expanded.
272
+ sig { returns(T.nilable(T::Array[String])) }
273
+ attr_accessor :expand
274
+ # 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.
275
+ sig { returns(T.nilable(String)) }
276
+ attr_accessor :invoice
277
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
278
+ sig { returns(T.nilable(Integer)) }
279
+ attr_accessor :limit
280
+ # 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.
281
+ sig { returns(T.nilable(T::Boolean)) }
282
+ attr_accessor :pending
283
+ # 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.
284
+ sig { returns(T.nilable(String)) }
285
+ attr_accessor :starting_after
286
+ sig {
287
+ 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
288
+ }
289
+ def initialize(
290
+ created: nil,
291
+ customer: nil,
292
+ ending_before: nil,
293
+ expand: nil,
294
+ invoice: nil,
295
+ limit: nil,
296
+ pending: nil,
297
+ starting_after: nil
298
+ ); end
299
+ end
300
+ class CreateParams < Stripe::RequestParams
301
+ class Discount < Stripe::RequestParams
302
+ # ID of the coupon to create a new discount for.
303
+ sig { returns(T.nilable(String)) }
304
+ attr_accessor :coupon
305
+ # ID of an existing discount on the object (or one of its ancestors) to reuse.
306
+ sig { returns(T.nilable(String)) }
307
+ attr_accessor :discount
308
+ # ID of the promotion code to create a new discount for.
309
+ sig { returns(T.nilable(String)) }
310
+ attr_accessor :promotion_code
311
+ sig {
312
+ params(coupon: T.nilable(String), discount: T.nilable(String), promotion_code: T.nilable(String)).void
313
+ }
314
+ def initialize(coupon: nil, discount: nil, promotion_code: nil); end
315
+ end
316
+ class Period < Stripe::RequestParams
317
+ # The end of the period, which must be greater than or equal to the start. This value is inclusive.
318
+ sig { returns(Integer) }
319
+ attr_accessor :end
320
+ # The start of the period. This value is inclusive.
321
+ sig { returns(Integer) }
322
+ attr_accessor :start
323
+ sig { params(end_: Integer, start: Integer).void }
324
+ def initialize(end_: nil, start: nil); end
325
+ end
326
+ class PriceData < Stripe::RequestParams
327
+ # 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).
328
+ sig { returns(String) }
329
+ attr_accessor :currency
330
+ # The ID of the [Product](https://docs.stripe.com/api/products) that this [Price](https://docs.stripe.com/api/prices) will belong to.
331
+ sig { returns(String) }
332
+ attr_accessor :product
333
+ # 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.
334
+ sig { returns(T.nilable(String)) }
335
+ attr_accessor :tax_behavior
336
+ # A positive integer in cents (or local equivalent) (or 0 for a free price) representing how much to charge.
337
+ sig { returns(T.nilable(Integer)) }
338
+ attr_accessor :unit_amount
339
+ # 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.
340
+ sig { returns(T.nilable(String)) }
341
+ attr_accessor :unit_amount_decimal
342
+ sig {
343
+ params(currency: String, product: String, tax_behavior: T.nilable(String), unit_amount: T.nilable(Integer), unit_amount_decimal: T.nilable(String)).void
344
+ }
345
+ def initialize(
346
+ currency: nil,
347
+ product: nil,
348
+ tax_behavior: nil,
349
+ unit_amount: nil,
350
+ unit_amount_decimal: nil
351
+ ); end
352
+ end
353
+ class Pricing < Stripe::RequestParams
354
+ # The ID of the price object.
355
+ sig { returns(T.nilable(String)) }
356
+ attr_accessor :price
357
+ sig { params(price: T.nilable(String)).void }
358
+ def initialize(price: nil); end
359
+ end
360
+ # 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.
361
+ sig { returns(T.nilable(Integer)) }
362
+ attr_accessor :amount
363
+ # 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).
364
+ sig { returns(T.nilable(String)) }
365
+ attr_accessor :currency
366
+ # The ID of the customer who will be billed when this invoice item is billed.
367
+ sig { returns(String) }
368
+ attr_accessor :customer
369
+ # An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking.
370
+ sig { returns(T.nilable(String)) }
371
+ attr_accessor :description
372
+ # Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items.
373
+ sig { returns(T.nilable(T::Boolean)) }
374
+ attr_accessor :discountable
375
+ # The coupons and promotion codes to redeem into discounts for the invoice item or invoice line item.
376
+ sig {
377
+ returns(T.nilable(T.nilable(T.any(String, T::Array[::Stripe::InvoiceItem::CreateParams::Discount]))))
378
+ }
379
+ attr_accessor :discounts
380
+ # Specifies which fields in the response should be expanded.
381
+ sig { returns(T.nilable(T::Array[String])) }
382
+ attr_accessor :expand
383
+ # The ID of an existing invoice to add this invoice item to. For subscription invoices, when left blank, the invoice item will be added to the next upcoming scheduled invoice. For standalone invoices, the invoice item won't be automatically added unless you pass `pending_invoice_item_behavior: 'include'` when creating the 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.
384
+ sig { returns(T.nilable(String)) }
385
+ attr_accessor :invoice
386
+ # 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`.
387
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Hash[String, String])))) }
388
+ attr_accessor :metadata
389
+ # 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.
390
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::Period)) }
391
+ attr_accessor :period
392
+ # Data used to generate a new [Price](https://stripe.com/docs/api/prices) object inline.
393
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::PriceData)) }
394
+ attr_accessor :price_data
395
+ # The pricing information for the invoice item.
396
+ sig { returns(T.nilable(::Stripe::InvoiceItem::CreateParams::Pricing)) }
397
+ attr_accessor :pricing
398
+ # Non-negative integer. The quantity of units for the invoice item.
399
+ sig { returns(T.nilable(Integer)) }
400
+ attr_accessor :quantity
401
+ # 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.
402
+ sig { returns(T.nilable(String)) }
403
+ attr_accessor :subscription
404
+ # 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.
405
+ sig { returns(T.nilable(String)) }
406
+ attr_accessor :tax_behavior
407
+ # A [tax code](https://stripe.com/docs/tax/tax-categories) ID.
408
+ sig { returns(T.nilable(T.nilable(String))) }
409
+ attr_accessor :tax_code
410
+ # 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.
411
+ sig { returns(T.nilable(T::Array[String])) }
412
+ attr_accessor :tax_rates
413
+ # 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.
414
+ sig { returns(T.nilable(String)) }
415
+ attr_accessor :unit_amount_decimal
416
+ sig {
417
+ 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
418
+ }
419
+ def initialize(
420
+ amount: nil,
421
+ currency: nil,
422
+ customer: nil,
423
+ description: nil,
424
+ discountable: nil,
425
+ discounts: nil,
426
+ expand: nil,
427
+ invoice: nil,
428
+ metadata: nil,
429
+ period: nil,
430
+ price_data: nil,
431
+ pricing: nil,
432
+ quantity: nil,
433
+ subscription: nil,
434
+ tax_behavior: nil,
435
+ tax_code: nil,
436
+ tax_rates: nil,
437
+ unit_amount_decimal: nil
438
+ ); end
439
+ end
440
+ # Creates an item to be added to a draft invoice (up to 250 items per invoice). If no invoice is specified, the item will be on the next invoice created for the customer specified.
441
+ sig {
442
+ params(params: T.any(::Stripe::InvoiceItem::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::InvoiceItem)
443
+ }
444
+ def self.create(params = {}, opts = {}); end
445
+
446
+ # Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they're not attached to invoices, or if it's attached to a draft invoice.
447
+ sig {
448
+ params(invoiceitem: String, params: T.any(::Stripe::InvoiceItem::DeleteParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::InvoiceItem)
449
+ }
450
+ def self.delete(invoiceitem, params = {}, opts = {}); end
451
+
452
+ # Deletes an invoice item, removing it from an invoice. Deleting invoice items is only possible when they're not attached to invoices, or if it's attached to a draft invoice.
453
+ sig {
454
+ params(params: T.any(::Stripe::InvoiceItem::DeleteParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::InvoiceItem)
455
+ }
456
+ def delete(params = {}, opts = {}); end
457
+
458
+ # Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.
459
+ sig {
460
+ params(params: T.any(::Stripe::InvoiceItem::ListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::ListObject)
461
+ }
462
+ def self.list(params = {}, opts = {}); end
463
+
464
+ # Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it's attached to is closed.
465
+ sig {
466
+ params(invoiceitem: String, params: T.any(::Stripe::InvoiceItem::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::InvoiceItem)
467
+ }
468
+ def self.update(invoiceitem, params = {}, opts = {}); end
469
+ end
470
+ end