stripe 13.3.0 → 13.4.0.pre.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (743) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1410 -650
  3. data/OPENAPI_VERSION +1 -1
  4. data/VERSION +1 -1
  5. data/lib/stripe/api_operations/request.rb +1 -0
  6. data/lib/stripe/api_requestor.rb +1 -0
  7. data/lib/stripe/object_types.rb +32 -0
  8. data/lib/stripe/request_params.rb +24 -0
  9. data/lib/stripe/request_signing_authenticator.rb +79 -0
  10. data/lib/stripe/resources/account.rb +5793 -0
  11. data/lib/stripe/resources/account_link.rb +64 -0
  12. data/lib/stripe/resources/account_notice.rb +154 -0
  13. data/lib/stripe/resources/account_session.rb +1002 -0
  14. data/lib/stripe/resources/apple_pay_domain.rb +73 -0
  15. data/lib/stripe/resources/application.rb +23 -0
  16. data/lib/stripe/resources/application_fee.rb +120 -0
  17. data/lib/stripe/resources/application_fee_refund.rb +24 -0
  18. data/lib/stripe/resources/apps/secret.rb +166 -0
  19. data/lib/stripe/resources/balance.rb +162 -0
  20. data/lib/stripe/resources/balance_transaction.rb +141 -0
  21. data/lib/stripe/resources/bank_account.rb +113 -2
  22. data/lib/stripe/resources/billing/alert.rb +166 -0
  23. data/lib/stripe/resources/billing/alert_triggered.rb +31 -0
  24. data/lib/stripe/resources/billing/credit_balance_summary.rb +89 -0
  25. data/lib/stripe/resources/billing/credit_balance_transaction.rb +140 -0
  26. data/lib/stripe/resources/billing/credit_grant.rb +235 -0
  27. data/lib/stripe/resources/billing/meter.rb +203 -0
  28. data/lib/stripe/resources/billing/meter_error_report.rb +70 -0
  29. data/lib/stripe/resources/billing/meter_event.rb +45 -0
  30. data/lib/stripe/resources/billing/meter_event_adjustment.rb +51 -0
  31. data/lib/stripe/resources/billing/meter_event_summary.rb +21 -0
  32. data/lib/stripe/resources/billing_portal/configuration.rb +639 -0
  33. data/lib/stripe/resources/billing_portal/session.rb +313 -0
  34. data/lib/stripe/resources/capability.rb +111 -0
  35. data/lib/stripe/resources/capital/financing_offer.rb +221 -0
  36. data/lib/stripe/resources/capital/financing_summary.rb +77 -0
  37. data/lib/stripe/resources/capital/financing_transaction.rb +147 -0
  38. data/lib/stripe/resources/card.rb +111 -0
  39. data/lib/stripe/resources/cash_balance.rb +22 -0
  40. data/lib/stripe/resources/charge.rb +3687 -0
  41. data/lib/stripe/resources/checkout/session.rb +4162 -0
  42. data/lib/stripe/resources/climate/order.rb +216 -0
  43. data/lib/stripe/resources/climate/product.rb +69 -0
  44. data/lib/stripe/resources/climate/supplier.rb +67 -0
  45. data/lib/stripe/resources/confirmation_token.rb +1855 -0
  46. data/lib/stripe/resources/connect_collection_transfer.rb +29 -0
  47. data/lib/stripe/resources/country_spec.rb +76 -0
  48. data/lib/stripe/resources/coupon.rb +237 -0
  49. data/lib/stripe/resources/credit_note.rb +798 -0
  50. data/lib/stripe/resources/credit_note_line_item.rb +89 -0
  51. data/lib/stripe/resources/customer.rb +995 -0
  52. data/lib/stripe/resources/customer_balance_transaction.rb +39 -0
  53. data/lib/stripe/resources/customer_cash_balance_transaction.rb +136 -0
  54. data/lib/stripe/resources/customer_session.rb +183 -0
  55. data/lib/stripe/resources/discount.rb +41 -0
  56. data/lib/stripe/resources/dispute.rb +767 -0
  57. data/lib/stripe/resources/entitlements/active_entitlement.rb +54 -0
  58. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +26 -0
  59. data/lib/stripe/resources/entitlements/feature.rb +107 -0
  60. data/lib/stripe/resources/ephemeral_key.rb +26 -0
  61. data/lib/stripe/resources/event.rb +157 -0
  62. data/lib/stripe/resources/exchange_rate.rb +38 -0
  63. data/lib/stripe/resources/file.rb +134 -0
  64. data/lib/stripe/resources/file_link.rb +134 -0
  65. data/lib/stripe/resources/financial_connections/account.rb +307 -0
  66. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +30 -0
  67. data/lib/stripe/resources/financial_connections/account_owner.rb +24 -0
  68. data/lib/stripe/resources/financial_connections/account_ownership.rb +12 -0
  69. data/lib/stripe/resources/financial_connections/institution.rb +112 -0
  70. data/lib/stripe/resources/financial_connections/session.rb +187 -0
  71. data/lib/stripe/resources/financial_connections/transaction.rb +122 -0
  72. data/lib/stripe/resources/forwarding/request.rb +196 -0
  73. data/lib/stripe/resources/funding_instructions.rb +415 -0
  74. data/lib/stripe/resources/gift_cards/card.rb +245 -0
  75. data/lib/stripe/resources/gift_cards/transaction.rb +313 -0
  76. data/lib/stripe/resources/identity/verification_report.rb +335 -0
  77. data/lib/stripe/resources/identity/verification_session.rb +430 -0
  78. data/lib/stripe/resources/invoice.rb +9348 -0
  79. data/lib/stripe/resources/invoice_item.rb +536 -0
  80. data/lib/stripe/resources/invoice_line_item.rb +409 -0
  81. data/lib/stripe/resources/invoice_payment.rb +72 -0
  82. data/lib/stripe/resources/invoice_rendering_template.rb +79 -0
  83. data/lib/stripe/resources/issuing/authorization.rb +1316 -2
  84. data/lib/stripe/resources/issuing/card.rb +794 -0
  85. data/lib/stripe/resources/issuing/cardholder.rb +768 -0
  86. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +693 -0
  87. data/lib/stripe/resources/issuing/dispute.rb +941 -0
  88. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +98 -0
  89. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +109 -0
  90. data/lib/stripe/resources/issuing/personalization_design.rb +333 -0
  91. data/lib/stripe/resources/issuing/physical_bundle.rb +76 -0
  92. data/lib/stripe/resources/issuing/settlement.rb +65 -0
  93. data/lib/stripe/resources/issuing/token.rb +221 -0
  94. data/lib/stripe/resources/issuing/transaction.rb +1098 -0
  95. data/lib/stripe/resources/line_item.rb +98 -0
  96. data/lib/stripe/resources/login_link.rb +9 -0
  97. data/lib/stripe/resources/mandate.rb +214 -0
  98. data/lib/stripe/resources/margin.rb +143 -0
  99. data/lib/stripe/resources/order.rb +3238 -0
  100. data/lib/stripe/resources/payment_attempt_record.rb +226 -0
  101. data/lib/stripe/resources/payment_intent.rb +14630 -0
  102. data/lib/stripe/resources/payment_link.rb +1761 -0
  103. data/lib/stripe/resources/payment_method.rb +1981 -0
  104. data/lib/stripe/resources/payment_method_configuration.rb +3137 -0
  105. data/lib/stripe/resources/payment_method_domain.rb +176 -0
  106. data/lib/stripe/resources/payment_record.rb +824 -0
  107. data/lib/stripe/resources/payout.rb +267 -0
  108. data/lib/stripe/resources/person.rb +353 -0
  109. data/lib/stripe/resources/plan.rb +386 -0
  110. data/lib/stripe/resources/price.rb +782 -0
  111. data/lib/stripe/resources/product.rb +636 -0
  112. data/lib/stripe/resources/product_feature.rb +16 -0
  113. data/lib/stripe/resources/promotion_code.rb +261 -0
  114. data/lib/stripe/resources/quote.rb +3404 -0
  115. data/lib/stripe/resources/quote_line.rb +340 -0
  116. data/lib/stripe/resources/quote_preview_invoice.rb +833 -0
  117. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +463 -0
  118. data/lib/stripe/resources/radar/early_fraud_warning.rb +93 -0
  119. data/lib/stripe/resources/radar/value_list.rb +151 -0
  120. data/lib/stripe/resources/radar/value_list_item.rb +113 -0
  121. data/lib/stripe/resources/refund.rb +489 -0
  122. data/lib/stripe/resources/reporting/report_run.rb +182 -0
  123. data/lib/stripe/resources/reporting/report_type.rb +44 -0
  124. data/lib/stripe/resources/reserve_transaction.rb +26 -0
  125. data/lib/stripe/resources/reversal.rb +30 -0
  126. data/lib/stripe/resources/review.rb +135 -0
  127. data/lib/stripe/resources/setup_attempt.rb +474 -0
  128. data/lib/stripe/resources/setup_intent.rb +4371 -0
  129. data/lib/stripe/resources/shipping_rate.rb +303 -0
  130. data/lib/stripe/resources/sigma/scheduled_query_run.rb +67 -0
  131. data/lib/stripe/resources/source.rb +1571 -0
  132. data/lib/stripe/resources/source_mandate_notification.rb +79 -0
  133. data/lib/stripe/resources/source_transaction.rb +114 -0
  134. data/lib/stripe/resources/subscription.rb +2395 -0
  135. data/lib/stripe/resources/subscription_item.rb +502 -0
  136. data/lib/stripe/resources/subscription_schedule.rb +2790 -0
  137. data/lib/stripe/resources/tax/association.rb +100 -0
  138. data/lib/stripe/resources/tax/calculation.rb +474 -0
  139. data/lib/stripe/resources/tax/calculation_line_item.rb +76 -0
  140. data/lib/stripe/resources/tax/form.rb +253 -0
  141. data/lib/stripe/resources/tax/registration.rb +2174 -0
  142. data/lib/stripe/resources/tax/settings.rb +146 -0
  143. data/lib/stripe/resources/tax/transaction.rb +332 -0
  144. data/lib/stripe/resources/tax/transaction_line_item.rb +43 -0
  145. data/lib/stripe/resources/tax_code.rb +41 -0
  146. data/lib/stripe/resources/tax_deducted_at_source.rb +26 -0
  147. data/lib/stripe/resources/tax_id.rb +147 -0
  148. data/lib/stripe/resources/tax_rate.rb +245 -0
  149. data/lib/stripe/resources/terminal/configuration.rb +1175 -0
  150. data/lib/stripe/resources/terminal/connection_token.rb +21 -0
  151. data/lib/stripe/resources/terminal/location.rb +208 -0
  152. data/lib/stripe/resources/terminal/reader.rb +911 -0
  153. data/lib/stripe/resources/terminal/reader_collected_data.rb +45 -0
  154. data/lib/stripe/resources/test_helpers/test_clock.rb +101 -0
  155. data/lib/stripe/resources/token.rb +1337 -0
  156. data/lib/stripe/resources/topup.rb +210 -0
  157. data/lib/stripe/resources/transfer.rb +188 -0
  158. data/lib/stripe/resources/treasury/credit_reversal.rb +113 -0
  159. data/lib/stripe/resources/treasury/debit_reversal.rb +126 -0
  160. data/lib/stripe/resources/treasury/financial_account.rb +766 -0
  161. data/lib/stripe/resources/treasury/financial_account_features.rb +237 -0
  162. data/lib/stripe/resources/treasury/inbound_transfer.rb +285 -0
  163. data/lib/stripe/resources/treasury/outbound_payment.rb +587 -0
  164. data/lib/stripe/resources/treasury/outbound_transfer.rb +428 -0
  165. data/lib/stripe/resources/treasury/received_credit.rb +335 -0
  166. data/lib/stripe/resources/treasury/received_debit.rb +298 -0
  167. data/lib/stripe/resources/treasury/transaction.rb +215 -0
  168. data/lib/stripe/resources/treasury/transaction_entry.rb +193 -0
  169. data/lib/stripe/resources/usage_record.rb +18 -0
  170. data/lib/stripe/resources/usage_record_summary.rb +28 -0
  171. data/lib/stripe/resources/v2/amount.rb +9 -0
  172. data/lib/stripe/resources/v2/billing/meter_event.rb +24 -0
  173. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +28 -0
  174. data/lib/stripe/resources/v2/billing/meter_event_session.rb +19 -0
  175. data/lib/stripe/resources/v2/event.rb +35 -0
  176. data/lib/stripe/resources/v2/event_destination.rb +78 -0
  177. data/lib/stripe/resources/webhook_endpoint.rb +148 -0
  178. data/lib/stripe/resources.rb +31 -0
  179. data/lib/stripe/services/account_capability_service.rb +33 -0
  180. data/lib/stripe/services/account_external_account_service.rb +293 -0
  181. data/lib/stripe/services/account_link_service.rb +53 -0
  182. data/lib/stripe/services/account_login_link_service.rb +9 -0
  183. data/lib/stripe/services/account_notice_service.rb +110 -0
  184. data/lib/stripe/services/account_person_service.rb +1014 -0
  185. data/lib/stripe/services/account_service.rb +4862 -0
  186. data/lib/stripe/services/account_session_service.rb +740 -0
  187. data/lib/stripe/services/apple_pay_domain_service.rb +56 -0
  188. data/lib/stripe/services/application_fee_refund_service.rb +60 -0
  189. data/lib/stripe/services/application_fee_service.rb +65 -0
  190. data/lib/stripe/services/apps/secret_service.rb +132 -0
  191. data/lib/stripe/services/balance_service.rb +9 -0
  192. data/lib/stripe/services/balance_transaction_service.rb +80 -0
  193. data/lib/stripe/services/billing/alert_service.rb +125 -0
  194. data/lib/stripe/services/billing/credit_balance_summary_service.rb +41 -0
  195. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +45 -0
  196. data/lib/stripe/services/billing/credit_grant_service.rb +167 -0
  197. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +29 -0
  198. data/lib/stripe/services/billing/meter_event_service.rb +25 -0
  199. data/lib/stripe/services/billing/meter_event_summary_service.rb +46 -0
  200. data/lib/stripe/services/billing/meter_service.rb +142 -0
  201. data/lib/stripe/services/billing_portal/configuration_service.rb +492 -0
  202. data/lib/stripe/services/billing_portal/session_service.rb +192 -0
  203. data/lib/stripe/services/capital/financing_offer_service.rb +121 -0
  204. data/lib/stripe/services/capital/financing_summary_service.rb +28 -0
  205. data/lib/stripe/services/capital/financing_transaction_service.rb +86 -0
  206. data/lib/stripe/services/capital_service.rb +15 -0
  207. data/lib/stripe/services/charge_service.rb +2010 -0
  208. data/lib/stripe/services/checkout/session_line_item_service.rb +21 -0
  209. data/lib/stripe/services/checkout/session_service.rb +2736 -0
  210. data/lib/stripe/services/climate/order_service.rb +113 -0
  211. data/lib/stripe/services/climate/product_service.rb +30 -0
  212. data/lib/stripe/services/climate/supplier_service.rb +30 -0
  213. data/lib/stripe/services/confirmation_token_service.rb +9 -0
  214. data/lib/stripe/services/country_spec_service.rb +30 -0
  215. data/lib/stripe/services/coupon_service.rb +174 -0
  216. data/lib/stripe/services/credit_note_line_item_service.rb +21 -0
  217. data/lib/stripe/services/credit_note_preview_lines_service.rb +184 -0
  218. data/lib/stripe/services/credit_note_service.rb +434 -0
  219. data/lib/stripe/services/customer_balance_transaction_service.rb +72 -0
  220. data/lib/stripe/services/customer_cash_balance_service.rb +30 -0
  221. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +30 -0
  222. data/lib/stripe/services/customer_funding_instructions_service.rb +47 -0
  223. data/lib/stripe/services/customer_payment_method_service.rb +45 -0
  224. data/lib/stripe/services/customer_payment_source_service.rb +208 -0
  225. data/lib/stripe/services/customer_service.rb +684 -0
  226. data/lib/stripe/services/customer_session_service.rb +106 -0
  227. data/lib/stripe/services/customer_tax_id_service.rb +50 -0
  228. data/lib/stripe/services/dispute_service.rb +439 -0
  229. data/lib/stripe/services/entitlements/active_entitlement_service.rb +40 -0
  230. data/lib/stripe/services/entitlements/feature_service.rb +87 -0
  231. data/lib/stripe/services/ephemeral_key_service.rb +40 -0
  232. data/lib/stripe/services/event_service.rb +75 -0
  233. data/lib/stripe/services/exchange_rate_service.rb +30 -0
  234. data/lib/stripe/services/file_link_service.rb +108 -0
  235. data/lib/stripe/services/file_service.rb +102 -0
  236. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +40 -0
  237. data/lib/stripe/services/financial_connections/account_owner_service.rb +31 -0
  238. data/lib/stripe/services/financial_connections/account_service.rb +108 -1
  239. data/lib/stripe/services/financial_connections/institution_service.rb +60 -0
  240. data/lib/stripe/services/financial_connections/session_service.rb +108 -0
  241. data/lib/stripe/services/financial_connections/transaction_service.rb +79 -0
  242. data/lib/stripe/services/financial_connections_service.rb +2 -1
  243. data/lib/stripe/services/forwarding/request_service.rb +120 -0
  244. data/lib/stripe/services/gift_cards/card_service.rb +183 -0
  245. data/lib/stripe/services/gift_cards/transaction_service.rb +225 -0
  246. data/lib/stripe/services/gift_cards_service.rb +14 -0
  247. data/lib/stripe/services/identity/verification_report_service.rb +75 -0
  248. data/lib/stripe/services/identity/verification_session_service.rb +261 -0
  249. data/lib/stripe/services/invoice_item_service.rb +454 -0
  250. data/lib/stripe/services/invoice_line_item_service.rb +277 -0
  251. data/lib/stripe/services/invoice_payment_service.rb +58 -0
  252. data/lib/stripe/services/invoice_rendering_template_service.rb +56 -0
  253. data/lib/stripe/services/invoice_service.rb +6375 -1
  254. data/lib/stripe/services/invoice_upcoming_lines_service.rb +2142 -0
  255. data/lib/stripe/services/issuing/authorization_service.rb +118 -0
  256. data/lib/stripe/services/issuing/card_service.rb +525 -0
  257. data/lib/stripe/services/issuing/cardholder_service.rb +599 -0
  258. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +560 -0
  259. data/lib/stripe/services/issuing/dispute_service.rb +731 -0
  260. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +70 -0
  261. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +90 -0
  262. data/lib/stripe/services/issuing/personalization_design_service.rb +222 -0
  263. data/lib/stripe/services/issuing/physical_bundle_service.rb +45 -0
  264. data/lib/stripe/services/issuing/token_service.rb +83 -0
  265. data/lib/stripe/services/issuing/transaction_service.rb +93 -0
  266. data/lib/stripe/services/issuing_service.rb +5 -1
  267. data/lib/stripe/services/mandate_service.rb +9 -0
  268. data/lib/stripe/services/margin_service.rb +130 -0
  269. data/lib/stripe/services/order_line_item_service.rb +38 -0
  270. data/lib/stripe/services/order_service.rb +2518 -0
  271. data/lib/stripe/services/payment_attempt_record_service.rb +50 -0
  272. data/lib/stripe/services/payment_intent_service.rb +12203 -0
  273. data/lib/stripe/services/payment_link_line_item_service.rb +21 -0
  274. data/lib/stripe/services/payment_link_service.rb +1343 -0
  275. data/lib/stripe/services/payment_method_configuration_service.rb +2148 -0
  276. data/lib/stripe/services/payment_method_domain_service.rb +84 -0
  277. data/lib/stripe/services/payment_method_service.rb +977 -0
  278. data/lib/stripe/services/payment_record_service.rb +610 -0
  279. data/lib/stripe/services/payout_service.rb +182 -0
  280. data/lib/stripe/services/plan_service.rb +296 -0
  281. data/lib/stripe/services/price_service.rb +603 -0
  282. data/lib/stripe/services/product_feature_service.rb +46 -0
  283. data/lib/stripe/services/product_service.rb +533 -0
  284. data/lib/stripe/services/promotion_code_service.rb +203 -0
  285. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +21 -0
  286. data/lib/stripe/services/quote_line_item_service.rb +21 -0
  287. data/lib/stripe/services/quote_line_service.rb +38 -0
  288. data/lib/stripe/services/quote_preview_invoice_service.rb +38 -0
  289. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +38 -0
  290. data/lib/stripe/services/quote_service.rb +2628 -1
  291. data/lib/stripe/services/radar/early_fraud_warning_service.rb +70 -0
  292. data/lib/stripe/services/radar/value_list_item_service.rb +90 -0
  293. data/lib/stripe/services/radar/value_list_service.rb +119 -0
  294. data/lib/stripe/services/refund_service.rb +158 -0
  295. data/lib/stripe/services/reporting/report_run_service.rb +122 -0
  296. data/lib/stripe/services/reporting/report_type_service.rb +18 -0
  297. data/lib/stripe/services/review_service.rb +63 -0
  298. data/lib/stripe/services/setup_attempt_service.rb +59 -0
  299. data/lib/stripe/services/setup_intent_service.rb +3923 -0
  300. data/lib/stripe/services/shipping_rate_service.rb +227 -0
  301. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +30 -0
  302. data/lib/stripe/services/source_service.rb +693 -0
  303. data/lib/stripe/services/source_transaction_service.rb +21 -0
  304. data/lib/stripe/services/subscription_item_service.rb +439 -0
  305. data/lib/stripe/services/subscription_item_usage_record_service.rb +21 -0
  306. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +21 -0
  307. data/lib/stripe/services/subscription_schedule_service.rb +2343 -0
  308. data/lib/stripe/services/subscription_service.rb +1967 -0
  309. data/lib/stripe/services/tax/association_service.rb +32 -0
  310. data/lib/stripe/services/tax/calculation_line_item_service.rb +21 -0
  311. data/lib/stripe/services/tax/calculation_service.rb +235 -0
  312. data/lib/stripe/services/tax/form_service.rb +107 -0
  313. data/lib/stripe/services/tax/registration_service.rb +1398 -0
  314. data/lib/stripe/services/tax/settings_service.rb +82 -0
  315. data/lib/stripe/services/tax/transaction_line_item_service.rb +21 -0
  316. data/lib/stripe/services/tax/transaction_service.rb +128 -0
  317. data/lib/stripe/services/tax_code_service.rb +30 -0
  318. data/lib/stripe/services/tax_id_service.rb +90 -0
  319. data/lib/stripe/services/tax_rate_service.rb +182 -0
  320. data/lib/stripe/services/tax_service.rb +3 -1
  321. data/lib/stripe/services/terminal/configuration_service.rb +901 -0
  322. data/lib/stripe/services/terminal/connection_token_service.rb +13 -0
  323. data/lib/stripe/services/terminal/location_service.rb +165 -0
  324. data/lib/stripe/services/terminal/reader_collected_data_service.rb +28 -0
  325. data/lib/stripe/services/terminal/reader_service.rb +496 -0
  326. data/lib/stripe/services/terminal_service.rb +2 -1
  327. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +762 -0
  328. data/lib/stripe/services/test_helpers/customer_service.rb +21 -0
  329. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +844 -0
  330. data/lib/stripe/services/test_helpers/issuing/card_service.rb +45 -0
  331. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +43 -0
  332. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +723 -0
  333. data/lib/stripe/services/test_helpers/refund_service.rb +9 -0
  334. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +48 -0
  335. data/lib/stripe/services/test_helpers/test_clock_service.rb +63 -0
  336. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +39 -0
  337. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +93 -0
  338. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +93 -0
  339. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +95 -0
  340. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +95 -0
  341. data/lib/stripe/services/token_service.rb +1301 -0
  342. data/lib/stripe/services/topup_service.rb +163 -0
  343. data/lib/stripe/services/transfer_reversal_service.rb +74 -0
  344. data/lib/stripe/services/transfer_service.rb +138 -0
  345. data/lib/stripe/services/treasury/credit_reversal_service.rb +67 -0
  346. data/lib/stripe/services/treasury/debit_reversal_service.rb +72 -0
  347. data/lib/stripe/services/treasury/financial_account_features_service.rb +179 -0
  348. data/lib/stripe/services/treasury/financial_account_service.rb +481 -0
  349. data/lib/stripe/services/treasury/inbound_transfer_service.rb +100 -0
  350. data/lib/stripe/services/treasury/outbound_payment_service.rb +296 -0
  351. data/lib/stripe/services/treasury/outbound_transfer_service.rb +147 -0
  352. data/lib/stripe/services/treasury/received_credit_service.rb +58 -0
  353. data/lib/stripe/services/treasury/received_debit_service.rb +45 -0
  354. data/lib/stripe/services/treasury/transaction_entry_service.rb +101 -0
  355. data/lib/stripe/services/treasury/transaction_service.rb +109 -0
  356. data/lib/stripe/services/v1_services.rb +8 -1
  357. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +25 -0
  358. data/lib/stripe/services/v2/billing/meter_event_service.rb +28 -0
  359. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +3 -0
  360. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +36 -0
  361. data/lib/stripe/services/v2/core/event_destination_service.rb +164 -0
  362. data/lib/stripe/services/v2/core/event_service.rb +20 -0
  363. data/lib/stripe/services/webhook_endpoint_service.rb +110 -0
  364. data/lib/stripe/services.rb +25 -0
  365. data/lib/stripe/stripe_client.rb +2 -2
  366. data/lib/stripe/stripe_configuration.rb +3 -1
  367. data/lib/stripe/stripe_object.rb +8 -3
  368. data/lib/stripe/util.rb +8 -2
  369. data/lib/stripe/version.rb +1 -1
  370. data/lib/stripe.rb +46 -0
  371. data/rbi/stripe/resources/account.rbi +6072 -0
  372. data/rbi/stripe/resources/account_link.rbi +87 -0
  373. data/rbi/stripe/resources/account_notice.rbi +166 -0
  374. data/rbi/stripe/resources/account_session.rbi +1173 -0
  375. data/rbi/stripe/resources/apple_pay_domain.rbi +111 -0
  376. data/rbi/stripe/resources/application.rbi +23 -0
  377. data/rbi/stripe/resources/application_fee.rbi +151 -0
  378. data/rbi/stripe/resources/application_fee_refund.rbi +44 -0
  379. data/rbi/stripe/resources/apps/secret.rbi +229 -0
  380. data/rbi/stripe/resources/balance.rbi +220 -0
  381. data/rbi/stripe/resources/balance_transaction.rbi +182 -0
  382. data/rbi/stripe/resources/bank_account.rbi +156 -0
  383. data/rbi/stripe/resources/billing/alert.rbi +237 -0
  384. data/rbi/stripe/resources/billing/alert_triggered.rbi +33 -0
  385. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +118 -0
  386. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +181 -0
  387. data/rbi/stripe/resources/billing/credit_grant.rbi +312 -0
  388. data/rbi/stripe/resources/billing/meter.rbi +268 -0
  389. data/rbi/stripe/resources/billing/meter_error_report.rbi +82 -0
  390. data/rbi/stripe/resources/billing/meter_event.rbi +76 -0
  391. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +75 -0
  392. data/rbi/stripe/resources/billing/meter_event_summary.rbi +39 -0
  393. data/rbi/stripe/resources/billing_portal/configuration.rbi +746 -0
  394. data/rbi/stripe/resources/billing_portal/session.rbi +396 -0
  395. data/rbi/stripe/resources/capability.rbi +152 -0
  396. data/rbi/stripe/resources/capital/financing_offer.rbi +228 -0
  397. data/rbi/stripe/resources/capital/financing_summary.rbi +89 -0
  398. data/rbi/stripe/resources/capital/financing_transaction.rbi +157 -0
  399. data/rbi/stripe/resources/card.rbi +159 -0
  400. data/rbi/stripe/resources/cash_balance.rbi +37 -0
  401. data/rbi/stripe/resources/charge.rbi +4216 -0
  402. data/rbi/stripe/resources/checkout/session.rbi +4627 -0
  403. data/rbi/stripe/resources/climate/order.rbi +298 -0
  404. data/rbi/stripe/resources/climate/product.rbi +98 -0
  405. data/rbi/stripe/resources/climate/supplier.rbi +95 -0
  406. data/rbi/stripe/resources/confirmation_token.rbi +2137 -0
  407. data/rbi/stripe/resources/connect_collection_transfer.rbi +31 -0
  408. data/rbi/stripe/resources/country_spec.rbi +108 -0
  409. data/rbi/stripe/resources/coupon.rbi +305 -0
  410. data/rbi/stripe/resources/credit_note.rbi +918 -0
  411. data/rbi/stripe/resources/credit_note_line_item.rbi +123 -0
  412. data/rbi/stripe/resources/customer.rbi +1188 -0
  413. data/rbi/stripe/resources/customer_balance_transaction.rbi +65 -0
  414. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +178 -0
  415. data/rbi/stripe/resources/customer_session.rbi +227 -0
  416. data/rbi/stripe/resources/discount.rbi +65 -0
  417. data/rbi/stripe/resources/dispute.rbi +926 -0
  418. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +76 -0
  419. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +26 -0
  420. data/rbi/stripe/resources/entitlements/feature.rbi +146 -0
  421. data/rbi/stripe/resources/ephemeral_key.rbi +51 -0
  422. data/rbi/stripe/resources/event.rbi +221 -0
  423. data/rbi/stripe/resources/exchange_rate.rbi +81 -0
  424. data/rbi/stripe/resources/file.rbi +177 -0
  425. data/rbi/stripe/resources/file_link.rbi +174 -0
  426. data/rbi/stripe/resources/financial_connections/account.rbi +414 -0
  427. data/rbi/stripe/resources/financial_connections/account_inferred_balance.rbi +30 -0
  428. data/rbi/stripe/resources/financial_connections/account_owner.rbi +42 -0
  429. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +26 -0
  430. data/rbi/stripe/resources/financial_connections/institution.rbi +115 -0
  431. data/rbi/stripe/resources/financial_connections/session.rbi +221 -0
  432. data/rbi/stripe/resources/financial_connections/transaction.rbi +153 -0
  433. data/rbi/stripe/resources/forwarding/request.rbi +257 -0
  434. data/rbi/stripe/resources/funding_instructions.rbi +544 -0
  435. data/rbi/stripe/resources/gift_cards/card.rbi +242 -0
  436. data/rbi/stripe/resources/gift_cards/transaction.rbi +298 -0
  437. data/rbi/stripe/resources/identity/verification_report.rbi +427 -0
  438. data/rbi/stripe/resources/identity/verification_session.rbi +601 -0
  439. data/rbi/stripe/resources/invoice.rbi +10584 -0
  440. data/rbi/stripe/resources/invoice_item.rbi +621 -0
  441. data/rbi/stripe/resources/invoice_line_item.rbi +486 -0
  442. data/rbi/stripe/resources/invoice_payment.rbi +86 -0
  443. data/rbi/stripe/resources/invoice_rendering_template.rbi +131 -0
  444. data/rbi/stripe/resources/issuing/authorization.rbi +1511 -0
  445. data/rbi/stripe/resources/issuing/card.rbi +891 -0
  446. data/rbi/stripe/resources/issuing/cardholder.rbi +870 -0
  447. data/rbi/stripe/resources/issuing/credit_underwriting_record.rbi +731 -0
  448. data/rbi/stripe/resources/issuing/dispute.rbi +1077 -0
  449. data/rbi/stripe/resources/issuing/dispute_settlement_detail.rbi +100 -0
  450. data/rbi/stripe/resources/issuing/fraud_liability_debit.rbi +108 -0
  451. data/rbi/stripe/resources/issuing/personalization_design.rbi +395 -0
  452. data/rbi/stripe/resources/issuing/physical_bundle.rbi +102 -0
  453. data/rbi/stripe/resources/issuing/settlement.rbi +78 -0
  454. data/rbi/stripe/resources/issuing/token.rbi +282 -0
  455. data/rbi/stripe/resources/issuing/transaction.rbi +1262 -0
  456. data/rbi/stripe/resources/line_item.rbi +131 -0
  457. data/rbi/stripe/resources/login_link.rbi +20 -0
  458. data/rbi/stripe/resources/mandate.rbi +266 -0
  459. data/rbi/stripe/resources/margin.rbi +151 -0
  460. data/rbi/stripe/resources/order.rbi +3505 -0
  461. data/rbi/stripe/resources/payment_attempt_record.rbi +260 -0
  462. data/rbi/stripe/resources/payment_intent.rbi +16064 -0
  463. data/rbi/stripe/resources/payment_link.rbi +1943 -0
  464. data/rbi/stripe/resources/payment_method.rbi +2287 -0
  465. data/rbi/stripe/resources/payment_method_configuration.rbi +3657 -0
  466. data/rbi/stripe/resources/payment_method_domain.rbi +246 -0
  467. data/rbi/stripe/resources/payment_record.rbi +856 -0
  468. data/rbi/stripe/resources/payout.rbi +357 -0
  469. data/rbi/stripe/resources/person.rbi +461 -0
  470. data/rbi/stripe/resources/plan.rbi +463 -0
  471. data/rbi/stripe/resources/price.rbi +884 -0
  472. data/rbi/stripe/resources/product.rbi +735 -0
  473. data/rbi/stripe/resources/product_feature.rbi +30 -0
  474. data/rbi/stripe/resources/promotion_code.rbi +316 -0
  475. data/rbi/stripe/resources/quote.rbi +3779 -0
  476. data/rbi/stripe/resources/quote_line.rbi +416 -0
  477. data/rbi/stripe/resources/quote_preview_invoice.rbi +1030 -0
  478. data/rbi/stripe/resources/quote_preview_subscription_schedule.rbi +575 -0
  479. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +121 -0
  480. data/rbi/stripe/resources/radar/value_list.rbi +207 -0
  481. data/rbi/stripe/resources/radar/value_list_item.rbi +157 -0
  482. data/rbi/stripe/resources/refund.rbi +615 -0
  483. data/rbi/stripe/resources/reporting/report_run.rbi +232 -0
  484. data/rbi/stripe/resources/reporting/report_type.rbi +75 -0
  485. data/rbi/stripe/resources/reserve_transaction.rbi +27 -0
  486. data/rbi/stripe/resources/reversal.rbi +60 -0
  487. data/rbi/stripe/resources/review.rbi +191 -0
  488. data/rbi/stripe/resources/setup_attempt.rbi +587 -0
  489. data/rbi/stripe/resources/setup_intent.rbi +4726 -0
  490. data/rbi/stripe/resources/shipping_rate.rbi +367 -0
  491. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +98 -0
  492. data/rbi/stripe/resources/source.rbi +1899 -0
  493. data/rbi/stripe/resources/source_mandate_notification.rbi +90 -0
  494. data/rbi/stripe/resources/source_transaction.rbi +156 -0
  495. data/rbi/stripe/resources/subscription.rbi +2739 -0
  496. data/rbi/stripe/resources/subscription_item.rbi +566 -0
  497. data/rbi/stripe/resources/subscription_schedule.rbi +3157 -0
  498. data/rbi/stripe/resources/tax/association.rbi +107 -0
  499. data/rbi/stripe/resources/tax/calculation.rbi +577 -0
  500. data/rbi/stripe/resources/tax/calculation_line_item.rbi +108 -0
  501. data/rbi/stripe/resources/tax/form.rbi +262 -0
  502. data/rbi/stripe/resources/tax/registration.rbi +2354 -0
  503. data/rbi/stripe/resources/tax/settings.rbi +174 -0
  504. data/rbi/stripe/resources/tax/transaction.rbi +428 -0
  505. data/rbi/stripe/resources/tax/transaction_line_item.rbi +66 -0
  506. data/rbi/stripe/resources/tax_code.rbi +60 -0
  507. data/rbi/stripe/resources/tax_deducted_at_source.rbi +27 -0
  508. data/rbi/stripe/resources/tax_id.rbi +206 -0
  509. data/rbi/stripe/resources/tax_rate.rbi +295 -0
  510. data/rbi/stripe/resources/terminal/configuration.rbi +1302 -0
  511. data/rbi/stripe/resources/terminal/connection_token.rbi +42 -0
  512. data/rbi/stripe/resources/terminal/location.rbi +271 -0
  513. data/rbi/stripe/resources/terminal/reader.rbi +1110 -0
  514. data/rbi/stripe/resources/terminal/reader_collected_data.rbi +48 -0
  515. data/rbi/stripe/resources/test_helpers/test_clock.rbi +159 -0
  516. data/rbi/stripe/resources/token.rbi +1405 -0
  517. data/rbi/stripe/resources/topup.rbi +269 -0
  518. data/rbi/stripe/resources/transfer.rbi +245 -0
  519. data/rbi/stripe/resources/treasury/credit_reversal.rbi +151 -0
  520. data/rbi/stripe/resources/treasury/debit_reversal.rbi +165 -0
  521. data/rbi/stripe/resources/treasury/financial_account.rbi +924 -0
  522. data/rbi/stripe/resources/treasury/financial_account_features.rbi +309 -0
  523. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +361 -0
  524. data/rbi/stripe/resources/treasury/outbound_payment.rbi +702 -0
  525. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +529 -0
  526. data/rbi/stripe/resources/treasury/received_credit.rbi +408 -0
  527. data/rbi/stripe/resources/treasury/received_debit.rbi +367 -0
  528. data/rbi/stripe/resources/treasury/transaction.rbi +261 -0
  529. data/rbi/stripe/resources/treasury/transaction_entry.rbi +234 -0
  530. data/rbi/stripe/resources/usage_record.rbi +37 -0
  531. data/rbi/stripe/resources/usage_record_summary.rbi +45 -0
  532. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  533. data/rbi/stripe/resources/v2/billing/meter_event.rbi +43 -0
  534. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +48 -0
  535. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +36 -0
  536. data/rbi/stripe/resources/v2/event.rbi +55 -0
  537. data/rbi/stripe/resources/v2/event_destination.rbi +109 -0
  538. data/rbi/stripe/resources/webhook_endpoint.rbi +208 -0
  539. data/rbi/stripe/services/account_capability_service.rbi +55 -0
  540. data/rbi/stripe/services/account_external_account_service.rbi +358 -0
  541. data/rbi/stripe/services/account_link_service.rbi +67 -0
  542. data/rbi/stripe/services/account_login_link_service.rbi +23 -0
  543. data/rbi/stripe/services/account_notice_service.rbi +103 -0
  544. data/rbi/stripe/services/account_person_service.rbi +1077 -0
  545. data/rbi/stripe/services/account_service.rbi +4948 -0
  546. data/rbi/stripe/services/account_session_service.rbi +873 -0
  547. data/rbi/stripe/services/apple_pay_domain_service.rbi +86 -0
  548. data/rbi/stripe/services/application_fee_refund_service.rbi +101 -0
  549. data/rbi/stripe/services/application_fee_service.rbi +85 -0
  550. data/rbi/stripe/services/apps/secret_service.rbi +175 -0
  551. data/rbi/stripe/services/apps_service.rbi +9 -0
  552. data/rbi/stripe/services/balance_service.rbi +22 -0
  553. data/rbi/stripe/services/balance_transaction_service.rbi +103 -0
  554. data/rbi/stripe/services/billing/alert_service.rbi +172 -0
  555. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +61 -0
  556. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +66 -0
  557. data/rbi/stripe/services/billing/credit_grant_service.rbi +217 -0
  558. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +45 -0
  559. data/rbi/stripe/services/billing/meter_event_service.rbi +47 -0
  560. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +62 -0
  561. data/rbi/stripe/services/billing/meter_service.rbi +184 -0
  562. data/rbi/stripe/services/billing_portal/configuration_service.rbi +573 -0
  563. data/rbi/stripe/services/billing_portal/session_service.rbi +233 -0
  564. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  565. data/rbi/stripe/services/billing_service.rbi +15 -0
  566. data/rbi/stripe/services/capital/financing_offer_service.rbi +108 -0
  567. data/rbi/stripe/services/capital/financing_summary_service.rbi +23 -0
  568. data/rbi/stripe/services/capital/financing_transaction_service.rbi +77 -0
  569. data/rbi/stripe/services/capital_service.rbi +11 -0
  570. data/rbi/stripe/services/charge_service.rbi +2162 -0
  571. data/rbi/stripe/services/checkout/session_line_item_service.rbi +37 -0
  572. data/rbi/stripe/services/checkout/session_service.rbi +2975 -0
  573. data/rbi/stripe/services/checkout_service.rbi +9 -0
  574. data/rbi/stripe/services/climate/order_service.rbi +158 -0
  575. data/rbi/stripe/services/climate/product_service.rbi +51 -0
  576. data/rbi/stripe/services/climate/supplier_service.rbi +51 -0
  577. data/rbi/stripe/services/climate_service.rbi +11 -0
  578. data/rbi/stripe/services/confirmation_token_service.rbi +21 -0
  579. data/rbi/stripe/services/country_spec_service.rbi +49 -0
  580. data/rbi/stripe/services/coupon_service.rbi +220 -0
  581. data/rbi/stripe/services/credit_note_line_item_service.rbi +35 -0
  582. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +200 -0
  583. data/rbi/stripe/services/credit_note_service.rbi +496 -0
  584. data/rbi/stripe/services/customer_balance_transaction_service.rbi +105 -0
  585. data/rbi/stripe/services/customer_cash_balance_service.rbi +49 -0
  586. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +49 -0
  587. data/rbi/stripe/services/customer_funding_instructions_service.rbi +67 -0
  588. data/rbi/stripe/services/customer_payment_method_service.rbi +64 -0
  589. data/rbi/stripe/services/customer_payment_source_service.rbi +265 -0
  590. data/rbi/stripe/services/customer_service.rbi +763 -0
  591. data/rbi/stripe/services/customer_session_service.rbi +126 -0
  592. data/rbi/stripe/services/customer_tax_id_service.rbi +80 -0
  593. data/rbi/stripe/services/dispute_service.rbi +500 -0
  594. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +61 -0
  595. data/rbi/stripe/services/entitlements/feature_service.rbi +122 -0
  596. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  597. data/rbi/stripe/services/ephemeral_key_service.rbi +59 -0
  598. data/rbi/stripe/services/event_service.rbi +94 -0
  599. data/rbi/stripe/services/exchange_rate_service.rbi +49 -0
  600. data/rbi/stripe/services/file_link_service.rbi +141 -0
  601. data/rbi/stripe/services/file_service.rbi +132 -0
  602. data/rbi/stripe/services/financial_connections/account_inferred_balance_service.rbi +37 -0
  603. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +47 -0
  604. data/rbi/stripe/services/financial_connections/account_service.rbi +148 -0
  605. data/rbi/stripe/services/financial_connections/institution_service.rbi +51 -0
  606. data/rbi/stripe/services/financial_connections/session_service.rbi +128 -0
  607. data/rbi/stripe/services/financial_connections/transaction_service.rbi +103 -0
  608. data/rbi/stripe/services/financial_connections_service.rbi +12 -0
  609. data/rbi/stripe/services/forwarding/request_service.rbi +152 -0
  610. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  611. data/rbi/stripe/services/gift_cards/card_service.rbi +162 -0
  612. data/rbi/stripe/services/gift_cards/transaction_service.rbi +198 -0
  613. data/rbi/stripe/services/gift_cards_service.rbi +10 -0
  614. data/rbi/stripe/services/identity/verification_report_service.rbi +98 -0
  615. data/rbi/stripe/services/identity/verification_session_service.rbi +360 -0
  616. data/rbi/stripe/services/identity_service.rbi +10 -0
  617. data/rbi/stripe/services/invoice_item_service.rbi +505 -0
  618. data/rbi/stripe/services/invoice_line_item_service.rbi +320 -0
  619. data/rbi/stripe/services/invoice_payment_service.rbi +49 -0
  620. data/rbi/stripe/services/invoice_rendering_template_service.rbi +91 -0
  621. data/rbi/stripe/services/invoice_service.rbi +7138 -0
  622. data/rbi/stripe/services/invoice_upcoming_lines_service.rbi +2397 -0
  623. data/rbi/stripe/services/issuing/authorization_service.rbi +160 -0
  624. data/rbi/stripe/services/issuing/card_service.rbi +568 -0
  625. data/rbi/stripe/services/issuing/cardholder_service.rbi +668 -0
  626. data/rbi/stripe/services/issuing/credit_underwriting_record_service.rbi +580 -0
  627. data/rbi/stripe/services/issuing/dispute_service.rbi +824 -0
  628. data/rbi/stripe/services/issuing/dispute_settlement_detail_service.rbi +61 -0
  629. data/rbi/stripe/services/issuing/fraud_liability_debit_service.rbi +83 -0
  630. data/rbi/stripe/services/issuing/personalization_design_service.rbi +271 -0
  631. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +66 -0
  632. data/rbi/stripe/services/issuing/token_service.rbi +109 -0
  633. data/rbi/stripe/services/issuing/transaction_service.rbi +119 -0
  634. data/rbi/stripe/services/issuing_service.rbi +19 -0
  635. data/rbi/stripe/services/mandate_service.rbi +21 -0
  636. data/rbi/stripe/services/margin_service.rbi +119 -0
  637. data/rbi/stripe/services/order_line_item_service.rbi +35 -0
  638. data/rbi/stripe/services/order_service.rbi +2669 -0
  639. data/rbi/stripe/services/payment_attempt_record_service.rbi +39 -0
  640. data/rbi/stripe/services/payment_intent_service.rbi +13193 -0
  641. data/rbi/stripe/services/payment_link_line_item_service.rbi +35 -0
  642. data/rbi/stripe/services/payment_link_service.rbi +1447 -0
  643. data/rbi/stripe/services/payment_method_configuration_service.rbi +2465 -0
  644. data/rbi/stripe/services/payment_method_domain_service.rbi +123 -0
  645. data/rbi/stripe/services/payment_method_service.rbi +1032 -0
  646. data/rbi/stripe/services/payment_record_service.rbi +613 -0
  647. data/rbi/stripe/services/payout_service.rbi +228 -0
  648. data/rbi/stripe/services/plan_service.rbi +337 -0
  649. data/rbi/stripe/services/price_service.rbi +657 -0
  650. data/rbi/stripe/services/product_feature_service.rbi +76 -0
  651. data/rbi/stripe/services/product_service.rbi +596 -0
  652. data/rbi/stripe/services/promotion_code_service.rbi +244 -0
  653. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +35 -0
  654. data/rbi/stripe/services/quote_line_item_service.rbi +35 -0
  655. data/rbi/stripe/services/quote_line_service.rbi +35 -0
  656. data/rbi/stripe/services/quote_preview_invoice_service.rbi +35 -0
  657. data/rbi/stripe/services/quote_preview_subscription_schedule_service.rbi +35 -0
  658. data/rbi/stripe/services/quote_service.rbi +2830 -0
  659. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +95 -0
  660. data/rbi/stripe/services/radar/value_list_item_service.rbi +122 -0
  661. data/rbi/stripe/services/radar/value_list_service.rbi +160 -0
  662. data/rbi/stripe/services/radar_service.rbi +11 -0
  663. data/rbi/stripe/services/refund_service.rbi +208 -0
  664. data/rbi/stripe/services/reporting/report_run_service.rbi +152 -0
  665. data/rbi/stripe/services/reporting/report_type_service.rbi +37 -0
  666. data/rbi/stripe/services/reporting_service.rbi +10 -0
  667. data/rbi/stripe/services/review_service.rbi +93 -0
  668. data/rbi/stripe/services/setup_attempt_service.rbi +73 -0
  669. data/rbi/stripe/services/setup_intent_service.rbi +4204 -0
  670. data/rbi/stripe/services/shipping_rate_service.rbi +274 -0
  671. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +51 -0
  672. data/rbi/stripe/services/sigma_service.rbi +9 -0
  673. data/rbi/stripe/services/source_service.rbi +766 -0
  674. data/rbi/stripe/services/source_transaction_service.rbi +35 -0
  675. data/rbi/stripe/services/subscription_item_service.rbi +496 -0
  676. data/rbi/stripe/services/subscription_item_usage_record_service.rbi +41 -0
  677. data/rbi/stripe/services/subscription_item_usage_record_summary_service.rbi +37 -0
  678. data/rbi/stripe/services/subscription_schedule_service.rbi +2613 -0
  679. data/rbi/stripe/services/subscription_service.rbi +2207 -0
  680. data/rbi/stripe/services/tax/association_service.rbi +27 -0
  681. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +37 -0
  682. data/rbi/stripe/services/tax/calculation_service.rbi +267 -0
  683. data/rbi/stripe/services/tax/form_service.rbi +96 -0
  684. data/rbi/stripe/services/tax/registration_service.rbi +1495 -0
  685. data/rbi/stripe/services/tax/settings_service.rbi +106 -0
  686. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +37 -0
  687. data/rbi/stripe/services/tax/transaction_service.rbi +164 -0
  688. data/rbi/stripe/services/tax_code_service.rbi +49 -0
  689. data/rbi/stripe/services/tax_id_service.rbi +128 -0
  690. data/rbi/stripe/services/tax_rate_service.rbi +215 -0
  691. data/rbi/stripe/services/tax_service.rbi +14 -0
  692. data/rbi/stripe/services/terminal/configuration_service.rbi +976 -0
  693. data/rbi/stripe/services/terminal/connection_token_service.rbi +27 -0
  694. data/rbi/stripe/services/terminal/location_service.rbi +211 -0
  695. data/rbi/stripe/services/terminal/reader_collected_data_service.rbi +23 -0
  696. data/rbi/stripe/services/terminal/reader_service.rbi +591 -0
  697. data/rbi/stripe/services/terminal_service.rbi +13 -0
  698. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +892 -0
  699. data/rbi/stripe/services/test_helpers/customer_service.rbi +37 -0
  700. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +974 -0
  701. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +81 -0
  702. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +73 -0
  703. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +825 -0
  704. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  705. data/rbi/stripe/services/test_helpers/refund_service.rbi +23 -0
  706. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +69 -0
  707. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  708. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +100 -0
  709. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +69 -0
  710. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +137 -0
  711. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +137 -0
  712. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +130 -0
  713. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +130 -0
  714. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  715. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  716. data/rbi/stripe/services/token_service.rbi +1357 -0
  717. data/rbi/stripe/services/topup_service.rbi +200 -0
  718. data/rbi/stripe/services/transfer_reversal_service.rbi +111 -0
  719. data/rbi/stripe/services/transfer_service.rbi +174 -0
  720. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +95 -0
  721. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +100 -0
  722. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +226 -0
  723. data/rbi/stripe/services/treasury/financial_account_service.rbi +577 -0
  724. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +133 -0
  725. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +350 -0
  726. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +189 -0
  727. data/rbi/stripe/services/treasury/received_credit_service.rbi +79 -0
  728. data/rbi/stripe/services/treasury/received_debit_service.rbi +66 -0
  729. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +125 -0
  730. data/rbi/stripe/services/treasury/transaction_service.rbi +133 -0
  731. data/rbi/stripe/services/treasury_service.rbi +18 -0
  732. data/rbi/stripe/services/v1_services.rbi +83 -0
  733. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +43 -0
  734. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +46 -0
  735. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +20 -0
  736. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +60 -0
  737. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  738. data/rbi/stripe/services/v2/core/event_destination_service.rbi +228 -0
  739. data/rbi/stripe/services/v2/core/event_service.rbi +42 -0
  740. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  741. data/rbi/stripe/services/v2_services.rbi +10 -0
  742. data/rbi/stripe/services/webhook_endpoint_service.rbi +149 -0
  743. metadata +435 -4
@@ -0,0 +1,1030 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ # Invoices are statements of amounts owed by a customer, and are either
7
+ # generated one-off, or generated periodically from a subscription.
8
+ #
9
+ # They contain [invoice items](https://stripe.com/docs/api#invoiceitems), and proration adjustments
10
+ # that may be caused by subscription upgrades/downgrades (if necessary).
11
+ #
12
+ # If your invoice is configured to be billed through automatic charges,
13
+ # Stripe automatically finalizes your invoice and attempts payment. Note
14
+ # that finalizing the invoice,
15
+ # [when automatic](https://stripe.com/docs/invoicing/integration/automatic-advancement-collection), does
16
+ # not happen immediately as the invoice is created. Stripe waits
17
+ # until one hour after the last webhook was successfully sent (or the last
18
+ # webhook timed out after failing). If you (and the platforms you may have
19
+ # connected to) have no webhooks configured, Stripe waits one hour after
20
+ # creation to finalize the invoice.
21
+ #
22
+ # If your invoice is configured to be billed by sending an email, then based on your
23
+ # [email settings](https://dashboard.stripe.com/account/billing/automatic),
24
+ # Stripe will email the invoice to your customer and await payment. These
25
+ # emails can contain a link to a hosted page to pay the invoice.
26
+ #
27
+ # Stripe applies any customer credit on the account before determining the
28
+ # amount due for the invoice (i.e., the amount that will be actually
29
+ # charged). If the amount due for the invoice is less than Stripe's [minimum allowed charge
30
+ # per currency](https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts), the
31
+ # invoice is automatically marked paid, and we add the amount due to the
32
+ # customer's credit balance which is applied to the next invoice.
33
+ #
34
+ # More details on the customer's credit balance are
35
+ # [here](https://stripe.com/docs/billing/customer/balance).
36
+ #
37
+ # Related guide: [Send invoices to customers](https://stripe.com/docs/billing/invoices/sending)
38
+ class QuotePreviewInvoice < APIResource
39
+ class AmountsDue < Stripe::StripeObject
40
+ # Incremental amount due for this payment in cents (or local equivalent).
41
+ sig { returns(Integer) }
42
+ attr_reader :amount
43
+
44
+ # The amount in cents (or local equivalent) that was paid for this payment.
45
+ sig { returns(Integer) }
46
+ attr_reader :amount_paid
47
+
48
+ # The difference between the payment’s amount and amount_paid, in cents (or local equivalent).
49
+ sig { returns(Integer) }
50
+ attr_reader :amount_remaining
51
+
52
+ # Number of days from when invoice is finalized until the payment is due.
53
+ sig { returns(T.nilable(Integer)) }
54
+ attr_reader :days_until_due
55
+
56
+ # An arbitrary string attached to the object. Often useful for displaying to users.
57
+ sig { returns(T.nilable(String)) }
58
+ attr_reader :description
59
+
60
+ # Date on which a payment plan’s payment is due.
61
+ sig { returns(T.nilable(Integer)) }
62
+ attr_reader :due_date
63
+
64
+ # Timestamp when the payment was paid.
65
+ sig { returns(T.nilable(Integer)) }
66
+ attr_reader :paid_at
67
+
68
+ # The status of the payment, one of `open`, `paid`, or `past_due`
69
+ sig { returns(String) }
70
+ attr_reader :status
71
+ end
72
+ class AppliesTo < Stripe::StripeObject
73
+ # A custom string that identifies a new subscription schedule being created upon quote acceptance. All quote lines with the same `new_reference` field will be applied to the creation of a new subscription schedule.
74
+ sig { returns(T.nilable(String)) }
75
+ attr_reader :new_reference
76
+
77
+ # The ID of the schedule the line applies to.
78
+ sig { returns(T.nilable(String)) }
79
+ attr_reader :subscription_schedule
80
+
81
+ # Describes whether the quote line is affecting a new schedule or an existing schedule.
82
+ sig { returns(String) }
83
+ attr_reader :type
84
+ end
85
+ class AutomaticTax < Stripe::StripeObject
86
+ class Liability < Stripe::StripeObject
87
+ # The connected account being referenced when `type` is `account`.
88
+ sig { returns(T.any(String, Stripe::Account)) }
89
+ attr_reader :account
90
+
91
+ # Type of the account referenced.
92
+ sig { returns(String) }
93
+ attr_reader :type
94
+ end
95
+ # If Stripe disabled automatic tax, this enum describes why.
96
+ sig { returns(T.nilable(String)) }
97
+ attr_reader :disabled_reason
98
+
99
+ # Whether Stripe automatically computes tax on this invoice. Note that incompatible invoice items (invoice items with manually specified [tax rates](https://stripe.com/docs/api/tax_rates), negative amounts, or `tax_behavior=unspecified`) cannot be added to automatic tax invoices.
100
+ sig { returns(T::Boolean) }
101
+ attr_reader :enabled
102
+
103
+ # The account that's liable for tax. If set, the business address and tax registrations required to perform the tax calculation are loaded from this account. The tax transaction is returned in the report of the connected account.
104
+ sig { returns(T.nilable(Liability)) }
105
+ attr_reader :liability
106
+
107
+ # The status of the most recent automated tax calculation for this invoice.
108
+ sig { returns(T.nilable(String)) }
109
+ attr_reader :status
110
+ end
111
+ class CustomField < Stripe::StripeObject
112
+ # The name of the custom field.
113
+ sig { returns(String) }
114
+ attr_reader :name
115
+
116
+ # The value of the custom field.
117
+ sig { returns(String) }
118
+ attr_reader :value
119
+ end
120
+ class CustomerAddress < Stripe::StripeObject
121
+ # City, district, suburb, town, or village.
122
+ sig { returns(T.nilable(String)) }
123
+ attr_reader :city
124
+
125
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
126
+ sig { returns(T.nilable(String)) }
127
+ attr_reader :country
128
+
129
+ # Address line 1 (e.g., street, PO Box, or company name).
130
+ sig { returns(T.nilable(String)) }
131
+ attr_reader :line1
132
+
133
+ # Address line 2 (e.g., apartment, suite, unit, or building).
134
+ sig { returns(T.nilable(String)) }
135
+ attr_reader :line2
136
+
137
+ # ZIP or postal code.
138
+ sig { returns(T.nilable(String)) }
139
+ attr_reader :postal_code
140
+
141
+ # State, county, province, or region.
142
+ sig { returns(T.nilable(String)) }
143
+ attr_reader :state
144
+ end
145
+ class CustomerShipping < Stripe::StripeObject
146
+ class Address < Stripe::StripeObject
147
+ # City, district, suburb, town, or village.
148
+ sig { returns(T.nilable(String)) }
149
+ attr_reader :city
150
+
151
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
152
+ sig { returns(T.nilable(String)) }
153
+ attr_reader :country
154
+
155
+ # Address line 1 (e.g., street, PO Box, or company name).
156
+ sig { returns(T.nilable(String)) }
157
+ attr_reader :line1
158
+
159
+ # Address line 2 (e.g., apartment, suite, unit, or building).
160
+ sig { returns(T.nilable(String)) }
161
+ attr_reader :line2
162
+
163
+ # ZIP or postal code.
164
+ sig { returns(T.nilable(String)) }
165
+ attr_reader :postal_code
166
+
167
+ # State, county, province, or region.
168
+ sig { returns(T.nilable(String)) }
169
+ attr_reader :state
170
+ end
171
+ # Attribute for field address
172
+ sig { returns(Address) }
173
+ attr_reader :address
174
+
175
+ # The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.
176
+ sig { returns(T.nilable(String)) }
177
+ attr_reader :carrier
178
+
179
+ # Recipient name.
180
+ sig { returns(String) }
181
+ attr_reader :name
182
+
183
+ # Recipient phone (including extension).
184
+ sig { returns(T.nilable(String)) }
185
+ attr_reader :phone
186
+
187
+ # The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.
188
+ sig { returns(T.nilable(String)) }
189
+ attr_reader :tracking_number
190
+ end
191
+ class CustomerTaxId < Stripe::StripeObject
192
+ # The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, `ao_tin`, `bs_tin`, `bb_tin`, `cd_nif`, `mr_nif`, `me_pib`, `zw_tin`, `ba_tin`, `gn_nif`, `mk_vat`, `sr_fin`, `sn_ninea`, `am_tin`, `np_pan`, `tj_tin`, `ug_tin`, `zm_tin`, `kh_tin`, or `unknown`
193
+ sig { returns(String) }
194
+ attr_reader :type
195
+
196
+ # The value of the tax ID.
197
+ sig { returns(T.nilable(String)) }
198
+ attr_reader :value
199
+ end
200
+ class FromInvoice < Stripe::StripeObject
201
+ # The relation between this invoice and the cloned invoice
202
+ sig { returns(String) }
203
+ attr_reader :action
204
+
205
+ # The invoice that was cloned.
206
+ sig { returns(T.any(String, Stripe::Invoice)) }
207
+ attr_reader :invoice
208
+ end
209
+ class Issuer < Stripe::StripeObject
210
+ # The connected account being referenced when `type` is `account`.
211
+ sig { returns(T.any(String, Stripe::Account)) }
212
+ attr_reader :account
213
+
214
+ # Type of the account referenced.
215
+ sig { returns(String) }
216
+ attr_reader :type
217
+ end
218
+ class LastFinalizationError < Stripe::StripeObject
219
+ # For card errors, the ID of the failed charge.
220
+ sig { returns(String) }
221
+ attr_reader :charge
222
+
223
+ # For some errors that could be handled programmatically, a short string indicating the [error code](https://stripe.com/docs/error-codes) reported.
224
+ sig { returns(String) }
225
+ attr_reader :code
226
+
227
+ # For card errors resulting from a card issuer decline, a short string indicating the [card issuer's reason for the decline](https://stripe.com/docs/declines#issuer-declines) if they provide one.
228
+ sig { returns(String) }
229
+ attr_reader :decline_code
230
+
231
+ # A URL to more information about the [error code](https://stripe.com/docs/error-codes) reported.
232
+ sig { returns(String) }
233
+ attr_reader :doc_url
234
+
235
+ # A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
236
+ sig { returns(String) }
237
+ attr_reader :message
238
+
239
+ # For card errors resulting from a card issuer decline, a 2 digit code which indicates the advice given to merchant by the card network on how to proceed with an error.
240
+ sig { returns(String) }
241
+ attr_reader :network_advice_code
242
+
243
+ # For card errors resulting from a card issuer decline, a brand specific 2, 3, or 4 digit code which indicates the reason the authorization failed.
244
+ sig { returns(String) }
245
+ attr_reader :network_decline_code
246
+
247
+ # If the error is parameter-specific, the parameter related to the error. For example, you can use this to display a message near the correct form field.
248
+ sig { returns(String) }
249
+ attr_reader :param
250
+
251
+ # A PaymentIntent guides you through the process of collecting a payment from your customer.
252
+ # We recommend that you create exactly one PaymentIntent for each order or
253
+ # customer session in your system. You can reference the PaymentIntent later to
254
+ # see the history of payment attempts for a particular session.
255
+ #
256
+ # A PaymentIntent transitions through
257
+ # [multiple statuses](https://stripe.com/docs/payments/intents#intent-statuses)
258
+ # throughout its lifetime as it interfaces with Stripe.js to perform
259
+ # authentication flows and ultimately creates at most one successful charge.
260
+ #
261
+ # Related guide: [Payment Intents API](https://stripe.com/docs/payments/payment-intents)
262
+ sig { returns(Stripe::PaymentIntent) }
263
+ attr_reader :payment_intent
264
+
265
+ # PaymentMethod objects represent your customer's payment instruments.
266
+ # You can use them with [PaymentIntents](https://stripe.com/docs/payments/payment-intents) to collect payments or save them to
267
+ # Customer objects to store instrument details for future payments.
268
+ #
269
+ # Related guides: [Payment Methods](https://stripe.com/docs/payments/payment-methods) and [More Payment Scenarios](https://stripe.com/docs/payments/more-payment-scenarios).
270
+ sig { returns(Stripe::PaymentMethod) }
271
+ attr_reader :payment_method
272
+
273
+ # If the error is specific to the type of payment method, the payment method type that had a problem. This field is only populated for invoice-related errors.
274
+ sig { returns(String) }
275
+ attr_reader :payment_method_type
276
+
277
+ # A URL to the request log entry in your dashboard.
278
+ sig { returns(String) }
279
+ attr_reader :request_log_url
280
+
281
+ # A SetupIntent guides you through the process of setting up and saving a customer's payment credentials for future payments.
282
+ # For example, you can use a SetupIntent to set up and save your customer's card without immediately collecting a payment.
283
+ # Later, you can use [PaymentIntents](https://stripe.com/docs/api#payment_intents) to drive the payment flow.
284
+ #
285
+ # Create a SetupIntent when you're ready to collect your customer's payment credentials.
286
+ # Don't maintain long-lived, unconfirmed SetupIntents because they might not be valid.
287
+ # The SetupIntent transitions through multiple [statuses](https://docs.stripe.com/payments/intents#intent-statuses) as it guides
288
+ # you through the setup process.
289
+ #
290
+ # Successful SetupIntents result in payment credentials that are optimized for future payments.
291
+ # For example, cardholders in [certain regions](https://stripe.com/guides/strong-customer-authentication) might need to be run through
292
+ # [Strong Customer Authentication](https://docs.stripe.com/strong-customer-authentication) during payment method collection
293
+ # to streamline later [off-session payments](https://docs.stripe.com/payments/setup-intents).
294
+ # If you use the SetupIntent with a [Customer](https://stripe.com/docs/api#setup_intent_object-customer),
295
+ # it automatically attaches the resulting payment method to that Customer after successful setup.
296
+ # We recommend using SetupIntents or [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage) on
297
+ # PaymentIntents to save payment methods to prevent saving invalid or unoptimized payment methods.
298
+ #
299
+ # By using SetupIntents, you can reduce friction for your customers, even as regulations change over time.
300
+ #
301
+ # Related guide: [Setup Intents API](https://docs.stripe.com/payments/setup-intents)
302
+ sig { returns(Stripe::SetupIntent) }
303
+ attr_reader :setup_intent
304
+
305
+ # Attribute for field source
306
+ sig { returns(T.any(Stripe::Account, Stripe::BankAccount, Stripe::Card, Stripe::Source)) }
307
+ attr_reader :source
308
+
309
+ # The type of error returned. One of `api_error`, `card_error`, `idempotency_error`, or `invalid_request_error`
310
+ sig { returns(String) }
311
+ attr_reader :type
312
+ end
313
+ class PaymentSettings < Stripe::StripeObject
314
+ class PaymentMethodOptions < Stripe::StripeObject
315
+ class AcssDebit < Stripe::StripeObject
316
+ class MandateOptions < Stripe::StripeObject
317
+ # Transaction type of the mandate.
318
+ sig { returns(T.nilable(String)) }
319
+ attr_reader :transaction_type
320
+ end
321
+ # Attribute for field mandate_options
322
+ sig { returns(MandateOptions) }
323
+ attr_reader :mandate_options
324
+
325
+ # Bank account verification method.
326
+ sig { returns(String) }
327
+ attr_reader :verification_method
328
+ end
329
+ class Bancontact < Stripe::StripeObject
330
+ # Preferred language of the Bancontact authorization page that the customer is redirected to.
331
+ sig { returns(String) }
332
+ attr_reader :preferred_language
333
+ end
334
+ class Card < Stripe::StripeObject
335
+ class Installments < Stripe::StripeObject
336
+ # Whether Installments are enabled for this Invoice.
337
+ sig { returns(T.nilable(T::Boolean)) }
338
+ attr_reader :enabled
339
+ end
340
+ # Attribute for field installments
341
+ sig { returns(Installments) }
342
+ attr_reader :installments
343
+
344
+ # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
345
+ sig { returns(T.nilable(String)) }
346
+ attr_reader :request_three_d_secure
347
+ end
348
+ class CustomerBalance < Stripe::StripeObject
349
+ class BankTransfer < Stripe::StripeObject
350
+ class EuBankTransfer < Stripe::StripeObject
351
+ # The desired country code of the bank account information. Permitted values include: `BE`, `DE`, `ES`, `FR`, `IE`, or `NL`.
352
+ sig { returns(String) }
353
+ attr_reader :country
354
+ end
355
+ # Attribute for field eu_bank_transfer
356
+ sig { returns(EuBankTransfer) }
357
+ attr_reader :eu_bank_transfer
358
+
359
+ # The bank transfer type that can be used for funding. Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, `mx_bank_transfer`, or `us_bank_transfer`.
360
+ sig { returns(T.nilable(String)) }
361
+ attr_reader :type
362
+ end
363
+ # Attribute for field bank_transfer
364
+ sig { returns(BankTransfer) }
365
+ attr_reader :bank_transfer
366
+
367
+ # The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
368
+ sig { returns(T.nilable(String)) }
369
+ attr_reader :funding_type
370
+ end
371
+ class IdBankTransfer < Stripe::StripeObject; end
372
+ class Konbini < Stripe::StripeObject; end
373
+ class SepaDebit < Stripe::StripeObject; end
374
+ class UsBankAccount < Stripe::StripeObject
375
+ class FinancialConnections < Stripe::StripeObject
376
+ class Filters < Stripe::StripeObject
377
+ # The account subcategories to use to filter for possible accounts to link. Valid subcategories are `checking` and `savings`.
378
+ sig { returns(T::Array[String]) }
379
+ attr_reader :account_subcategories
380
+
381
+ # The institution to use to filter for possible accounts to link.
382
+ sig { returns(String) }
383
+ attr_reader :institution
384
+ end
385
+ # Attribute for field filters
386
+ sig { returns(Filters) }
387
+ attr_reader :filters
388
+
389
+ # The list of permissions to request. The `payment_method` permission must be included.
390
+ sig { returns(T::Array[String]) }
391
+ attr_reader :permissions
392
+
393
+ # Data features requested to be retrieved upon account creation.
394
+ sig { returns(T.nilable(T::Array[String])) }
395
+ attr_reader :prefetch
396
+ end
397
+ # Attribute for field financial_connections
398
+ sig { returns(FinancialConnections) }
399
+ attr_reader :financial_connections
400
+
401
+ # Bank account verification method.
402
+ sig { returns(String) }
403
+ attr_reader :verification_method
404
+ end
405
+ # If paying by `acss_debit`, this sub-hash contains details about the Canadian pre-authorized debit payment method options to pass to the invoice’s PaymentIntent.
406
+ sig { returns(T.nilable(AcssDebit)) }
407
+ attr_reader :acss_debit
408
+
409
+ # If paying by `bancontact`, this sub-hash contains details about the Bancontact payment method options to pass to the invoice’s PaymentIntent.
410
+ sig { returns(T.nilable(Bancontact)) }
411
+ attr_reader :bancontact
412
+
413
+ # If paying by `card`, this sub-hash contains details about the Card payment method options to pass to the invoice’s PaymentIntent.
414
+ sig { returns(T.nilable(Card)) }
415
+ attr_reader :card
416
+
417
+ # If paying by `customer_balance`, this sub-hash contains details about the Bank transfer payment method options to pass to the invoice’s PaymentIntent.
418
+ sig { returns(T.nilable(CustomerBalance)) }
419
+ attr_reader :customer_balance
420
+
421
+ # If paying by `id_bank_transfer`, this sub-hash contains details about the Indonesia bank transfer payment method options to pass to the invoice’s PaymentIntent.
422
+ sig { returns(T.nilable(IdBankTransfer)) }
423
+ attr_reader :id_bank_transfer
424
+
425
+ # If paying by `konbini`, this sub-hash contains details about the Konbini payment method options to pass to the invoice’s PaymentIntent.
426
+ sig { returns(T.nilable(Konbini)) }
427
+ attr_reader :konbini
428
+
429
+ # If paying by `sepa_debit`, this sub-hash contains details about the SEPA Direct Debit payment method options to pass to the invoice’s PaymentIntent.
430
+ sig { returns(T.nilable(SepaDebit)) }
431
+ attr_reader :sepa_debit
432
+
433
+ # If paying by `us_bank_account`, this sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent.
434
+ sig { returns(T.nilable(UsBankAccount)) }
435
+ attr_reader :us_bank_account
436
+ end
437
+ # ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the invoice's default_payment_method or default_source, if set.
438
+ sig { returns(T.nilable(String)) }
439
+ attr_reader :default_mandate
440
+
441
+ # Payment-method-specific configuration to provide to the invoice’s PaymentIntent.
442
+ sig { returns(T.nilable(PaymentMethodOptions)) }
443
+ attr_reader :payment_method_options
444
+
445
+ # The list of payment method types (e.g. card) to provide to the invoice’s PaymentIntent. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice).
446
+ sig { returns(T.nilable(T::Array[String])) }
447
+ attr_reader :payment_method_types
448
+ end
449
+ class Rendering < Stripe::StripeObject
450
+ class Pdf < Stripe::StripeObject
451
+ # Page size of invoice pdf. Options include a4, letter, and auto. If set to auto, page size will be switched to a4 or letter based on customer locale.
452
+ sig { returns(T.nilable(String)) }
453
+ attr_reader :page_size
454
+ end
455
+ # How line-item prices and amounts will be displayed with respect to tax on invoice PDFs.
456
+ sig { returns(T.nilable(String)) }
457
+ attr_reader :amount_tax_display
458
+
459
+ # Invoice pdf rendering options
460
+ sig { returns(T.nilable(Pdf)) }
461
+ attr_reader :pdf
462
+
463
+ # ID of the rendering template that the invoice is formatted by.
464
+ sig { returns(T.nilable(String)) }
465
+ attr_reader :template
466
+
467
+ # Version of the rendering template that the invoice is using.
468
+ sig { returns(T.nilable(Integer)) }
469
+ attr_reader :template_version
470
+ end
471
+ class ShippingCost < Stripe::StripeObject
472
+ class Tax < Stripe::StripeObject
473
+ # Amount of tax applied for this rate.
474
+ sig { returns(Integer) }
475
+ attr_reader :amount
476
+
477
+ # Tax rates can be applied to [invoices](https://stripe.com/docs/billing/invoices/tax-rates), [subscriptions](https://stripe.com/docs/billing/subscriptions/taxes) and [Checkout Sessions](https://stripe.com/docs/payments/checkout/set-up-a-subscription#tax-rates) to collect tax.
478
+ #
479
+ # Related guide: [Tax rates](https://stripe.com/docs/billing/taxes/tax-rates)
480
+ sig { returns(Stripe::TaxRate) }
481
+ attr_reader :rate
482
+
483
+ # The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported.
484
+ sig { returns(T.nilable(String)) }
485
+ attr_reader :taxability_reason
486
+
487
+ # The amount on which tax is calculated, in cents (or local equivalent).
488
+ sig { returns(T.nilable(Integer)) }
489
+ attr_reader :taxable_amount
490
+ end
491
+ # Total shipping cost before any taxes are applied.
492
+ sig { returns(Integer) }
493
+ attr_reader :amount_subtotal
494
+
495
+ # Total tax amount applied due to shipping costs. If no tax was applied, defaults to 0.
496
+ sig { returns(Integer) }
497
+ attr_reader :amount_tax
498
+
499
+ # Total shipping cost after taxes are applied.
500
+ sig { returns(Integer) }
501
+ attr_reader :amount_total
502
+
503
+ # The ID of the ShippingRate for this invoice.
504
+ sig { returns(T.nilable(T.any(String, Stripe::ShippingRate))) }
505
+ attr_reader :shipping_rate
506
+
507
+ # The taxes applied to the shipping rate.
508
+ sig { returns(T::Array[Tax]) }
509
+ attr_reader :taxes
510
+ end
511
+ class ShippingDetails < Stripe::StripeObject
512
+ class Address < Stripe::StripeObject
513
+ # City, district, suburb, town, or village.
514
+ sig { returns(T.nilable(String)) }
515
+ attr_reader :city
516
+
517
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
518
+ sig { returns(T.nilable(String)) }
519
+ attr_reader :country
520
+
521
+ # Address line 1 (e.g., street, PO Box, or company name).
522
+ sig { returns(T.nilable(String)) }
523
+ attr_reader :line1
524
+
525
+ # Address line 2 (e.g., apartment, suite, unit, or building).
526
+ sig { returns(T.nilable(String)) }
527
+ attr_reader :line2
528
+
529
+ # ZIP or postal code.
530
+ sig { returns(T.nilable(String)) }
531
+ attr_reader :postal_code
532
+
533
+ # State, county, province, or region.
534
+ sig { returns(T.nilable(String)) }
535
+ attr_reader :state
536
+ end
537
+ # Attribute for field address
538
+ sig { returns(Address) }
539
+ attr_reader :address
540
+
541
+ # The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.
542
+ sig { returns(T.nilable(String)) }
543
+ attr_reader :carrier
544
+
545
+ # Recipient name.
546
+ sig { returns(String) }
547
+ attr_reader :name
548
+
549
+ # Recipient phone (including extension).
550
+ sig { returns(T.nilable(String)) }
551
+ attr_reader :phone
552
+
553
+ # The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas.
554
+ sig { returns(T.nilable(String)) }
555
+ attr_reader :tracking_number
556
+ end
557
+ class StatusTransitions < Stripe::StripeObject
558
+ # The time that the invoice draft was finalized.
559
+ sig { returns(T.nilable(Integer)) }
560
+ attr_reader :finalized_at
561
+
562
+ # The time that the invoice was marked uncollectible.
563
+ sig { returns(T.nilable(Integer)) }
564
+ attr_reader :marked_uncollectible_at
565
+
566
+ # The time that the invoice was paid.
567
+ sig { returns(T.nilable(Integer)) }
568
+ attr_reader :paid_at
569
+
570
+ # The time that the invoice was voided.
571
+ sig { returns(T.nilable(Integer)) }
572
+ attr_reader :voided_at
573
+ end
574
+ class SubscriptionDetails < Stripe::StripeObject
575
+ class PauseCollection < Stripe::StripeObject
576
+ # The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
577
+ sig { returns(String) }
578
+ attr_reader :behavior
579
+
580
+ # The time after which the subscription will resume collecting payments.
581
+ sig { returns(T.nilable(Integer)) }
582
+ attr_reader :resumes_at
583
+ end
584
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) defined as subscription metadata when an invoice is created. Becomes an immutable snapshot of the subscription metadata at the time of invoice finalization.
585
+ # *Note: This attribute is populated only for invoices created on or after June 29, 2023.*
586
+ sig { returns(T.nilable(T::Hash[String, String])) }
587
+ attr_reader :metadata
588
+
589
+ # If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/docs/billing/subscriptions/pause-payment).
590
+ sig { returns(T.nilable(PauseCollection)) }
591
+ attr_reader :pause_collection
592
+ end
593
+ class ThresholdReason < Stripe::StripeObject
594
+ class ItemReason < Stripe::StripeObject
595
+ # The IDs of the line items that triggered the threshold invoice.
596
+ sig { returns(T::Array[String]) }
597
+ attr_reader :line_item_ids
598
+
599
+ # The quantity threshold boundary that applied to the given line item.
600
+ sig { returns(Integer) }
601
+ attr_reader :usage_gte
602
+ end
603
+ # The total invoice amount threshold boundary if it triggered the threshold invoice.
604
+ sig { returns(T.nilable(Integer)) }
605
+ attr_reader :amount_gte
606
+
607
+ # Indicates which line items triggered a threshold invoice.
608
+ sig { returns(T::Array[ItemReason]) }
609
+ attr_reader :item_reasons
610
+ end
611
+ class TotalDiscountAmount < Stripe::StripeObject
612
+ # The amount, in cents (or local equivalent), of the discount.
613
+ sig { returns(Integer) }
614
+ attr_reader :amount
615
+
616
+ # The discount that was applied to get this discount amount.
617
+ sig { returns(T.any(String, Stripe::Discount)) }
618
+ attr_reader :discount
619
+ end
620
+ class TotalMarginAmount < Stripe::StripeObject
621
+ # The amount, in cents (or local equivalent), of the reduction in line item amount.
622
+ sig { returns(Integer) }
623
+ attr_reader :amount
624
+
625
+ # The margin that was applied to get this margin amount.
626
+ sig { returns(T.any(String, Stripe::Margin)) }
627
+ attr_reader :margin
628
+ end
629
+ class TotalPretaxCreditAmount < Stripe::StripeObject
630
+ # The amount, in cents (or local equivalent), of the pretax credit amount.
631
+ sig { returns(Integer) }
632
+ attr_reader :amount
633
+
634
+ # The credit balance transaction that was applied to get this pretax credit amount.
635
+ sig { returns(T.nilable(T.any(String, Stripe::Billing::CreditBalanceTransaction))) }
636
+ attr_reader :credit_balance_transaction
637
+
638
+ # The discount that was applied to get this pretax credit amount.
639
+ sig { returns(T.any(String, Stripe::Discount)) }
640
+ attr_reader :discount
641
+
642
+ # The margin that was applied to get this pretax credit amount.
643
+ sig { returns(T.any(String, Stripe::Margin)) }
644
+ attr_reader :margin
645
+
646
+ # Type of the pretax credit amount referenced.
647
+ sig { returns(String) }
648
+ attr_reader :type
649
+ end
650
+ class TotalTaxAmount < Stripe::StripeObject
651
+ # The amount, in cents (or local equivalent), of the tax.
652
+ sig { returns(Integer) }
653
+ attr_reader :amount
654
+
655
+ # Whether this tax amount is inclusive or exclusive.
656
+ sig { returns(T::Boolean) }
657
+ attr_reader :inclusive
658
+
659
+ # The tax rate that was applied to get this tax amount.
660
+ sig { returns(T.any(String, Stripe::TaxRate)) }
661
+ attr_reader :tax_rate
662
+
663
+ # The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported.
664
+ sig { returns(T.nilable(String)) }
665
+ attr_reader :taxability_reason
666
+
667
+ # The amount on which tax is calculated, in cents (or local equivalent).
668
+ sig { returns(T.nilable(Integer)) }
669
+ attr_reader :taxable_amount
670
+ end
671
+ class TransferData < Stripe::StripeObject
672
+ # The amount in cents (or local equivalent) that will be transferred to the destination account when the invoice is paid. By default, the entire amount is transferred to the destination.
673
+ sig { returns(T.nilable(Integer)) }
674
+ attr_reader :amount
675
+
676
+ # The account where funds from the payment will be transferred to upon payment success.
677
+ sig { returns(T.any(String, Stripe::Account)) }
678
+ attr_reader :destination
679
+ end
680
+ # The country of the business associated with this invoice, most often the business creating the invoice.
681
+ sig { returns(T.nilable(String)) }
682
+ attr_reader :account_country
683
+
684
+ # The public name of the business associated with this invoice, most often the business creating the invoice.
685
+ sig { returns(T.nilable(String)) }
686
+ attr_reader :account_name
687
+
688
+ # The account tax IDs associated with the invoice. Only editable when the invoice is a draft.
689
+ sig { returns(T.nilable(T::Array[T.any(String, Stripe::TaxId)])) }
690
+ attr_reader :account_tax_ids
691
+
692
+ # Final amount due at this time for this invoice. If the invoice's total is smaller than the minimum charge amount, for example, or if there is account credit that can be applied to the invoice, the `amount_due` may be 0. If there is a positive `starting_balance` for the invoice (the customer owes money), the `amount_due` will also take that into account. The charge that gets generated for the invoice will be for the amount specified in `amount_due`.
693
+ sig { returns(Integer) }
694
+ attr_reader :amount_due
695
+
696
+ # Amount that was overpaid on the invoice. Overpayments are debited to the customer's credit balance.
697
+ sig { returns(Integer) }
698
+ attr_reader :amount_overpaid
699
+
700
+ # The amount, in cents (or local equivalent), that was paid.
701
+ sig { returns(Integer) }
702
+ attr_reader :amount_paid
703
+
704
+ # The difference between amount_due and amount_paid, in cents (or local equivalent).
705
+ sig { returns(Integer) }
706
+ attr_reader :amount_remaining
707
+
708
+ # This is the sum of all the shipping amounts.
709
+ sig { returns(Integer) }
710
+ attr_reader :amount_shipping
711
+
712
+ # List of expected payments and corresponding due dates. This value will be null for invoices where collection_method=charge_automatically.
713
+ sig { returns(T.nilable(T::Array[AmountsDue])) }
714
+ attr_reader :amounts_due
715
+
716
+ # ID of the Connect Application that created the invoice.
717
+ sig { returns(T.nilable(T.any(String, Stripe::Application))) }
718
+ attr_reader :application
719
+
720
+ # The fee in cents (or local equivalent) that will be applied to the invoice and transferred to the application owner's Stripe account when the invoice is paid.
721
+ sig { returns(T.nilable(Integer)) }
722
+ attr_reader :application_fee_amount
723
+
724
+ # Attribute for field applies_to
725
+ sig { returns(AppliesTo) }
726
+ attr_reader :applies_to
727
+
728
+ # Number of payment attempts made for this invoice, from the perspective of the payment retry schedule. Any payment attempt counts as the first attempt, and subsequently only automatic retries increment the attempt count. In other words, manual payment attempts after the first attempt do not affect the retry schedule. If a failure is returned with a non-retryable return code, the invoice can no longer be retried unless a new payment method is obtained. Retries will continue to be scheduled, and attempt_count will continue to increment, but retries will only be executed if a new payment method is obtained.
729
+ sig { returns(Integer) }
730
+ attr_reader :attempt_count
731
+
732
+ # Whether an attempt has been made to pay the invoice. An invoice is not attempted until 1 hour after the `invoice.created` webhook, for example, so you might not want to display that invoice as unpaid to your users.
733
+ sig { returns(T::Boolean) }
734
+ attr_reader :attempted
735
+
736
+ # Attribute for field automatic_tax
737
+ sig { returns(AutomaticTax) }
738
+ attr_reader :automatic_tax
739
+
740
+ # The time when this invoice is currently scheduled to be automatically finalized. The field will be `null` if the invoice is not scheduled to finalize in the future. If the invoice is not in the draft state, this field will always be `null` - see `finalized_at` for the time when an already-finalized invoice was finalized.
741
+ sig { returns(T.nilable(Integer)) }
742
+ attr_reader :automatically_finalizes_at
743
+
744
+ # Indicates the reason why the invoice was created.
745
+ #
746
+ # * `manual`: Unrelated to a subscription, for example, created via the invoice editor.
747
+ # * `subscription`: No longer in use. Applies to subscriptions from before May 2018 where no distinction was made between updates, cycles, and thresholds.
748
+ # * `subscription_create`: A new subscription was created.
749
+ # * `subscription_cycle`: A subscription advanced into a new period.
750
+ # * `subscription_threshold`: A subscription reached a billing threshold.
751
+ # * `subscription_update`: A subscription was updated.
752
+ # * `upcoming`: Reserved for simulated invoices, per the upcoming invoice endpoint.
753
+ sig { returns(T.nilable(String)) }
754
+ attr_reader :billing_reason
755
+
756
+ # Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions.
757
+ sig { returns(String) }
758
+ attr_reader :collection_method
759
+
760
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
761
+ sig { returns(Integer) }
762
+ attr_reader :created
763
+
764
+ # 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).
765
+ sig { returns(String) }
766
+ attr_reader :currency
767
+
768
+ # Custom fields displayed on the invoice.
769
+ sig { returns(T.nilable(T::Array[CustomField])) }
770
+ attr_reader :custom_fields
771
+
772
+ # The customer's address. Until the invoice is finalized, this field will equal `customer.address`. Once the invoice is finalized, this field will no longer be updated.
773
+ sig { returns(T.nilable(CustomerAddress)) }
774
+ attr_reader :customer_address
775
+
776
+ # The customer's email. Until the invoice is finalized, this field will equal `customer.email`. Once the invoice is finalized, this field will no longer be updated.
777
+ sig { returns(T.nilable(String)) }
778
+ attr_reader :customer_email
779
+
780
+ # The customer's name. Until the invoice is finalized, this field will equal `customer.name`. Once the invoice is finalized, this field will no longer be updated.
781
+ sig { returns(T.nilable(String)) }
782
+ attr_reader :customer_name
783
+
784
+ # The customer's phone number. Until the invoice is finalized, this field will equal `customer.phone`. Once the invoice is finalized, this field will no longer be updated.
785
+ sig { returns(T.nilable(String)) }
786
+ attr_reader :customer_phone
787
+
788
+ # The customer's shipping information. Until the invoice is finalized, this field will equal `customer.shipping`. Once the invoice is finalized, this field will no longer be updated.
789
+ sig { returns(T.nilable(CustomerShipping)) }
790
+ attr_reader :customer_shipping
791
+
792
+ # The customer's tax exempt status. Until the invoice is finalized, this field will equal `customer.tax_exempt`. Once the invoice is finalized, this field will no longer be updated.
793
+ sig { returns(T.nilable(String)) }
794
+ attr_reader :customer_tax_exempt
795
+
796
+ # The customer's tax IDs. Until the invoice is finalized, this field will contain the same tax IDs as `customer.tax_ids`. Once the invoice is finalized, this field will no longer be updated.
797
+ sig { returns(T.nilable(T::Array[CustomerTaxId])) }
798
+ attr_reader :customer_tax_ids
799
+
800
+ # The margins applied to the invoice. Can be overridden by line item `margins`. Use `expand[]=default_margins` to expand each margin.
801
+ sig { returns(T.nilable(T::Array[T.any(String, Stripe::Margin)])) }
802
+ attr_reader :default_margins
803
+
804
+ # ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription's default payment method, if any, or to the default payment method in the customer's invoice settings.
805
+ sig { returns(T.nilable(T.any(String, Stripe::PaymentMethod))) }
806
+ attr_reader :default_payment_method
807
+
808
+ # ID of the default payment source for the invoice. It must belong to the customer associated with the invoice and be in a chargeable state. If not set, defaults to the subscription's default source, if any, or to the customer's default source.
809
+ sig {
810
+ returns(T.nilable(T.any(String, T.any(Stripe::Account, Stripe::BankAccount, Stripe::Card, Stripe::Source))))
811
+ }
812
+ attr_reader :default_source
813
+
814
+ # The tax rates applied to this invoice, if any.
815
+ sig { returns(T::Array[Stripe::TaxRate]) }
816
+ attr_reader :default_tax_rates
817
+
818
+ # An arbitrary string attached to the object. Often useful for displaying to users. Referenced as 'memo' in the Dashboard.
819
+ sig { returns(T.nilable(String)) }
820
+ attr_reader :description
821
+
822
+ # Describes the current discount applied to this invoice, if there is one. Not populated if there are multiple discounts.
823
+ sig { returns(T.nilable(Stripe::Discount)) }
824
+ attr_reader :discount
825
+
826
+ # The discounts applied to the invoice. Line item discounts are applied before invoice discounts. Use `expand[]=discounts` to expand each discount.
827
+ sig { returns(T::Array[T.any(String, Stripe::Discount)]) }
828
+ attr_reader :discounts
829
+
830
+ # The date on which payment for this invoice is due. This value will be `null` for invoices where `collection_method=charge_automatically`.
831
+ sig { returns(T.nilable(Integer)) }
832
+ attr_reader :due_date
833
+
834
+ # The date when this invoice is in effect. Same as `finalized_at` unless overwritten. When defined, this value replaces the system-generated 'Date of issue' printed on the invoice PDF and receipt.
835
+ sig { returns(T.nilable(Integer)) }
836
+ attr_reader :effective_at
837
+
838
+ # Ending customer balance after the invoice is finalized. Invoices are finalized approximately an hour after successful webhook delivery or when payment collection is attempted for the invoice. If the invoice has not been finalized yet, this will be null.
839
+ sig { returns(T.nilable(Integer)) }
840
+ attr_reader :ending_balance
841
+
842
+ # Footer displayed on the invoice.
843
+ sig { returns(T.nilable(String)) }
844
+ attr_reader :footer
845
+
846
+ # Details of the invoice that was cloned. See the [revision documentation](https://stripe.com/docs/invoicing/invoice-revisions) for more details.
847
+ sig { returns(T.nilable(FromInvoice)) }
848
+ attr_reader :from_invoice
849
+
850
+ # Unique identifier for the object. This property is always present unless the invoice is an upcoming invoice. See [Retrieve an upcoming invoice](https://stripe.com/docs/api/invoices/upcoming) for more details.
851
+ sig { returns(String) }
852
+ attr_reader :id
853
+
854
+ # Attribute for field issuer
855
+ sig { returns(Issuer) }
856
+ attr_reader :issuer
857
+
858
+ # The error encountered during the previous attempt to finalize the invoice. This field is cleared when the invoice is successfully finalized.
859
+ sig { returns(T.nilable(LastFinalizationError)) }
860
+ attr_reader :last_finalization_error
861
+
862
+ # The ID of the most recent non-draft revision of this invoice
863
+ sig { returns(T.nilable(T.any(String, Stripe::Invoice))) }
864
+ attr_reader :latest_revision
865
+
866
+ # The individual line items that make up the invoice. `lines` is sorted as follows: (1) pending invoice items (including prorations) in reverse chronological order, (2) subscription items in reverse chronological order, and (3) invoice items added after invoice creation in chronological order.
867
+ sig { returns(Stripe::ListObject) }
868
+ attr_reader :lines
869
+
870
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
871
+ sig { returns(T::Boolean) }
872
+ attr_reader :livemode
873
+
874
+ # 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.
875
+ sig { returns(T.nilable(T::Hash[String, String])) }
876
+ attr_reader :metadata
877
+
878
+ # The time at which payment will next be attempted. This value will be `null` for invoices where `collection_method=send_invoice`.
879
+ sig { returns(T.nilable(Integer)) }
880
+ attr_reader :next_payment_attempt
881
+
882
+ # A unique, identifying string that appears on emails sent to the customer for this invoice. This starts with the customer's unique invoice_prefix if it is specified.
883
+ sig { returns(T.nilable(String)) }
884
+ attr_reader :number
885
+
886
+ # String representing the object's type. Objects of the same type share the same value.
887
+ sig { returns(String) }
888
+ attr_reader :object
889
+
890
+ # The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details.
891
+ sig { returns(T.nilable(T.any(String, Stripe::Account))) }
892
+ attr_reader :on_behalf_of
893
+
894
+ # Whether payment was successfully collected for this invoice. An invoice can be paid (most commonly) with a charge or with credit from the customer's account balance.
895
+ sig { returns(T::Boolean) }
896
+ attr_reader :paid
897
+
898
+ # Returns true if the invoice was manually marked paid, returns false if the invoice hasn't been paid yet or was paid on Stripe.
899
+ sig { returns(T::Boolean) }
900
+ attr_reader :paid_out_of_band
901
+
902
+ # The PaymentIntent associated with this invoice. The PaymentIntent is generated when the invoice is finalized, and can then be used to pay the invoice. Note that voiding an invoice will cancel the PaymentIntent.
903
+ sig { returns(T.nilable(T.any(String, Stripe::PaymentIntent))) }
904
+ attr_reader :payment_intent
905
+
906
+ # Attribute for field payment_settings
907
+ sig { returns(PaymentSettings) }
908
+ attr_reader :payment_settings
909
+
910
+ # Payments for this invoice
911
+ sig { returns(Stripe::ListObject) }
912
+ attr_reader :payments
913
+
914
+ # End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price.
915
+ sig { returns(Integer) }
916
+ attr_reader :period_end
917
+
918
+ # Start of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price.
919
+ sig { returns(Integer) }
920
+ attr_reader :period_start
921
+
922
+ # Total amount of all post-payment credit notes issued for this invoice.
923
+ sig { returns(Integer) }
924
+ attr_reader :post_payment_credit_notes_amount
925
+
926
+ # Total amount of all pre-payment credit notes issued for this invoice.
927
+ sig { returns(Integer) }
928
+ attr_reader :pre_payment_credit_notes_amount
929
+
930
+ # The quote this invoice was generated from.
931
+ sig { returns(T.nilable(T.any(String, Stripe::Quote))) }
932
+ attr_reader :quote
933
+
934
+ # This is the transaction number that appears on email receipts sent for this invoice.
935
+ sig { returns(T.nilable(String)) }
936
+ attr_reader :receipt_number
937
+
938
+ # The rendering-related settings that control how the invoice is displayed on customer-facing surfaces such as PDF and Hosted Invoice Page.
939
+ sig { returns(T.nilable(Rendering)) }
940
+ attr_reader :rendering
941
+
942
+ # The details of the cost of shipping, including the ShippingRate applied on the invoice.
943
+ sig { returns(T.nilable(ShippingCost)) }
944
+ attr_reader :shipping_cost
945
+
946
+ # Shipping details for the invoice. The Invoice PDF will use the `shipping_details` value if it is set, otherwise the PDF will render the shipping address from the customer.
947
+ sig { returns(T.nilable(ShippingDetails)) }
948
+ attr_reader :shipping_details
949
+
950
+ # Starting customer balance before the invoice is finalized. If the invoice has not been finalized yet, this will be the current customer balance. For revision invoices, this also includes any customer balance that was applied to the original invoice.
951
+ sig { returns(Integer) }
952
+ attr_reader :starting_balance
953
+
954
+ # Extra information about an invoice for the customer's credit card statement.
955
+ sig { returns(T.nilable(String)) }
956
+ attr_reader :statement_descriptor
957
+
958
+ # The status of the invoice, one of `draft`, `open`, `paid`, `uncollectible`, or `void`. [Learn more](https://stripe.com/docs/billing/invoices/workflow#workflow-overview)
959
+ sig { returns(T.nilable(String)) }
960
+ attr_reader :status
961
+
962
+ # Attribute for field status_transitions
963
+ sig { returns(StatusTransitions) }
964
+ attr_reader :status_transitions
965
+
966
+ # Attribute for field subscription
967
+ sig { returns(T.nilable(T.any(String, Stripe::Subscription))) }
968
+ attr_reader :subscription
969
+
970
+ # Details about the subscription that created this invoice.
971
+ sig { returns(T.nilable(SubscriptionDetails)) }
972
+ attr_reader :subscription_details
973
+
974
+ # Only set for upcoming invoices that preview prorations. The time used to calculate prorations.
975
+ sig { returns(Integer) }
976
+ attr_reader :subscription_proration_date
977
+
978
+ # Total of all subscriptions, invoice items, and prorations on the invoice before any invoice level discount or exclusive tax is applied. Item discounts are already incorporated
979
+ sig { returns(Integer) }
980
+ attr_reader :subtotal
981
+
982
+ # The integer amount in cents (or local equivalent) representing the subtotal of the invoice before any invoice level discount or tax is applied. Item discounts are already incorporated
983
+ sig { returns(T.nilable(Integer)) }
984
+ attr_reader :subtotal_excluding_tax
985
+
986
+ # The amount of tax on this invoice. This is the sum of all the tax amounts on this invoice.
987
+ sig { returns(T.nilable(Integer)) }
988
+ attr_reader :tax
989
+
990
+ # ID of the test clock this invoice belongs to.
991
+ sig { returns(T.nilable(T.any(String, Stripe::TestHelpers::TestClock))) }
992
+ attr_reader :test_clock
993
+
994
+ # Attribute for field threshold_reason
995
+ sig { returns(ThresholdReason) }
996
+ attr_reader :threshold_reason
997
+
998
+ # Total after discounts and taxes.
999
+ sig { returns(Integer) }
1000
+ attr_reader :total
1001
+
1002
+ # The aggregate amounts calculated per discount across all line items.
1003
+ sig { returns(T.nilable(T::Array[TotalDiscountAmount])) }
1004
+ attr_reader :total_discount_amounts
1005
+
1006
+ # The integer amount in cents (or local equivalent) representing the total amount of the invoice including all discounts but excluding all tax.
1007
+ sig { returns(T.nilable(Integer)) }
1008
+ attr_reader :total_excluding_tax
1009
+
1010
+ # The aggregate amounts calculated per margin across all line items.
1011
+ sig { returns(T.nilable(T::Array[TotalMarginAmount])) }
1012
+ attr_reader :total_margin_amounts
1013
+
1014
+ # Contains pretax credit amounts (ex: discount, credit grants, etc) that apply to this invoice. This is a combined list of total_pretax_credit_amounts across all invoice line items.
1015
+ sig { returns(T.nilable(T::Array[TotalPretaxCreditAmount])) }
1016
+ attr_reader :total_pretax_credit_amounts
1017
+
1018
+ # The aggregate amounts calculated per tax rate for all line items.
1019
+ sig { returns(T::Array[TotalTaxAmount]) }
1020
+ attr_reader :total_tax_amounts
1021
+
1022
+ # The account (if any) the payment will be attributed to for tax reporting, and where funds from the payment will be transferred to for the invoice.
1023
+ sig { returns(T.nilable(TransferData)) }
1024
+ attr_reader :transfer_data
1025
+
1026
+ # Invoices are automatically paid or sent 1 hour after webhooks are delivered, or until all webhook delivery attempts have [been exhausted](https://stripe.com/docs/billing/webhooks#understand). This field tracks the time when webhooks for this invoice were successfully delivered. If the invoice had no webhooks to deliver, this will be set while the invoice is being created.
1027
+ sig { returns(T.nilable(Integer)) }
1028
+ attr_reader :webhooks_delivered_at
1029
+ end
1030
+ end