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
@@ -10,6 +10,1349 @@ module Stripe
10
10
  @line_items = Stripe::PaymentLinkLineItemService.new(@requestor)
11
11
  end
12
12
 
13
+ class ListParams < Stripe::RequestParams
14
+ # Only return payment links that are active or inactive (e.g., pass `false` to list all inactive payment links).
15
+ attr_accessor :active
16
+
17
+ # A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
18
+ attr_accessor :ending_before
19
+
20
+ # Specifies which fields in the response should be expanded.
21
+ attr_accessor :expand
22
+
23
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
24
+ attr_accessor :limit
25
+
26
+ # A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list.
27
+ attr_accessor :starting_after
28
+
29
+ def initialize(active: nil, ending_before: nil, expand: nil, limit: nil, starting_after: nil)
30
+ @active = active
31
+ @ending_before = ending_before
32
+ @expand = expand
33
+ @limit = limit
34
+ @starting_after = starting_after
35
+ end
36
+ end
37
+
38
+ class CreateParams < Stripe::RequestParams
39
+ class AfterCompletion < Stripe::RequestParams
40
+ class HostedConfirmation < Stripe::RequestParams
41
+ # A custom message to display to the customer after the purchase is complete.
42
+ attr_accessor :custom_message
43
+
44
+ def initialize(custom_message: nil)
45
+ @custom_message = custom_message
46
+ end
47
+ end
48
+
49
+ class Redirect < Stripe::RequestParams
50
+ # The URL the customer will be redirected to after the purchase is complete. You can embed `{CHECKOUT_SESSION_ID}` into the URL to have the `id` of the completed [checkout session](https://stripe.com/docs/api/checkout/sessions/object#checkout_session_object-id) included.
51
+ attr_accessor :url
52
+
53
+ def initialize(url: nil)
54
+ @url = url
55
+ end
56
+ end
57
+ # Configuration when `type=hosted_confirmation`.
58
+ attr_accessor :hosted_confirmation
59
+
60
+ # Configuration when `type=redirect`.
61
+ attr_accessor :redirect
62
+
63
+ # The specified behavior after the purchase is complete. Either `redirect` or `hosted_confirmation`.
64
+ attr_accessor :type
65
+
66
+ def initialize(hosted_confirmation: nil, redirect: nil, type: nil)
67
+ @hosted_confirmation = hosted_confirmation
68
+ @redirect = redirect
69
+ @type = type
70
+ end
71
+ end
72
+
73
+ class AutomaticTax < Stripe::RequestParams
74
+ class Liability < Stripe::RequestParams
75
+ # The connected account being referenced when `type` is `account`.
76
+ attr_accessor :account
77
+
78
+ # Type of the account referenced in the request.
79
+ attr_accessor :type
80
+
81
+ def initialize(account: nil, type: nil)
82
+ @account = account
83
+ @type = type
84
+ end
85
+ end
86
+ # Set to `true` to [calculate tax automatically](https://docs.stripe.com/tax) using the customer's location.
87
+ #
88
+ # Enabling this parameter causes the payment link to collect any billing address information necessary for tax calculation.
89
+ attr_accessor :enabled
90
+
91
+ # 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.
92
+ attr_accessor :liability
93
+
94
+ def initialize(enabled: nil, liability: nil)
95
+ @enabled = enabled
96
+ @liability = liability
97
+ end
98
+ end
99
+
100
+ class ConsentCollection < Stripe::RequestParams
101
+ class PaymentMethodReuseAgreement < Stripe::RequestParams
102
+ # Determines the position and visibility of the payment method reuse agreement in the UI. When set to `auto`, Stripe's
103
+ # defaults will be used. When set to `hidden`, the payment method reuse agreement text will always be hidden in the UI.
104
+ attr_accessor :position
105
+
106
+ def initialize(position: nil)
107
+ @position = position
108
+ end
109
+ end
110
+ # Determines the display of payment method reuse agreement text in the UI. If set to `hidden`, it will hide legal text related to the reuse of a payment method.
111
+ attr_accessor :payment_method_reuse_agreement
112
+
113
+ # If set to `auto`, enables the collection of customer consent for promotional communications. The Checkout
114
+ # Session will determine whether to display an option to opt into promotional communication
115
+ # from the merchant depending on the customer's locale. Only available to US merchants.
116
+ attr_accessor :promotions
117
+
118
+ # If set to `required`, it requires customers to check a terms of service checkbox before being able to pay.
119
+ # There must be a valid terms of service URL set in your [Dashboard settings](https://dashboard.stripe.com/settings/public).
120
+ attr_accessor :terms_of_service
121
+
122
+ def initialize(payment_method_reuse_agreement: nil, promotions: nil, terms_of_service: nil)
123
+ @payment_method_reuse_agreement = payment_method_reuse_agreement
124
+ @promotions = promotions
125
+ @terms_of_service = terms_of_service
126
+ end
127
+ end
128
+
129
+ class CustomField < Stripe::RequestParams
130
+ class Dropdown < Stripe::RequestParams
131
+ class Option < Stripe::RequestParams
132
+ # The label for the option, displayed to the customer. Up to 100 characters.
133
+ attr_accessor :label
134
+
135
+ # The value for this option, not displayed to the customer, used by your integration to reconcile the option selected by the customer. Must be unique to this option, alphanumeric, and up to 100 characters.
136
+ attr_accessor :value
137
+
138
+ def initialize(label: nil, value: nil)
139
+ @label = label
140
+ @value = value
141
+ end
142
+ end
143
+ # The options available for the customer to select. Up to 200 options allowed.
144
+ attr_accessor :options
145
+
146
+ def initialize(options: nil)
147
+ @options = options
148
+ end
149
+ end
150
+
151
+ class Label < Stripe::RequestParams
152
+ # Custom text for the label, displayed to the customer. Up to 50 characters.
153
+ attr_accessor :custom
154
+
155
+ # The type of the label.
156
+ attr_accessor :type
157
+
158
+ def initialize(custom: nil, type: nil)
159
+ @custom = custom
160
+ @type = type
161
+ end
162
+ end
163
+
164
+ class Numeric < Stripe::RequestParams
165
+ # The maximum character length constraint for the customer's input.
166
+ attr_accessor :maximum_length
167
+
168
+ # The minimum character length requirement for the customer's input.
169
+ attr_accessor :minimum_length
170
+
171
+ def initialize(maximum_length: nil, minimum_length: nil)
172
+ @maximum_length = maximum_length
173
+ @minimum_length = minimum_length
174
+ end
175
+ end
176
+
177
+ class Text < Stripe::RequestParams
178
+ # The maximum character length constraint for the customer's input.
179
+ attr_accessor :maximum_length
180
+
181
+ # The minimum character length requirement for the customer's input.
182
+ attr_accessor :minimum_length
183
+
184
+ def initialize(maximum_length: nil, minimum_length: nil)
185
+ @maximum_length = maximum_length
186
+ @minimum_length = minimum_length
187
+ end
188
+ end
189
+ # Configuration for `type=dropdown` fields.
190
+ attr_accessor :dropdown
191
+
192
+ # String of your choice that your integration can use to reconcile this field. Must be unique to this field, alphanumeric, and up to 200 characters.
193
+ attr_accessor :key
194
+
195
+ # The label for the field, displayed to the customer.
196
+ attr_accessor :label
197
+
198
+ # Configuration for `type=numeric` fields.
199
+ attr_accessor :numeric
200
+
201
+ # Whether the customer is required to complete the field before completing the Checkout Session. Defaults to `false`.
202
+ attr_accessor :optional
203
+
204
+ # Configuration for `type=text` fields.
205
+ attr_accessor :text
206
+
207
+ # The type of the field.
208
+ attr_accessor :type
209
+
210
+ def initialize(
211
+ dropdown: nil,
212
+ key: nil,
213
+ label: nil,
214
+ numeric: nil,
215
+ optional: nil,
216
+ text: nil,
217
+ type: nil
218
+ )
219
+ @dropdown = dropdown
220
+ @key = key
221
+ @label = label
222
+ @numeric = numeric
223
+ @optional = optional
224
+ @text = text
225
+ @type = type
226
+ end
227
+ end
228
+
229
+ class CustomText < Stripe::RequestParams
230
+ class AfterSubmit < Stripe::RequestParams
231
+ # Text may be up to 1200 characters in length.
232
+ attr_accessor :message
233
+
234
+ def initialize(message: nil)
235
+ @message = message
236
+ end
237
+ end
238
+
239
+ class ShippingAddress < Stripe::RequestParams
240
+ # Text may be up to 1200 characters in length.
241
+ attr_accessor :message
242
+
243
+ def initialize(message: nil)
244
+ @message = message
245
+ end
246
+ end
247
+
248
+ class Submit < Stripe::RequestParams
249
+ # Text may be up to 1200 characters in length.
250
+ attr_accessor :message
251
+
252
+ def initialize(message: nil)
253
+ @message = message
254
+ end
255
+ end
256
+
257
+ class TermsOfServiceAcceptance < Stripe::RequestParams
258
+ # Text may be up to 1200 characters in length.
259
+ attr_accessor :message
260
+
261
+ def initialize(message: nil)
262
+ @message = message
263
+ end
264
+ end
265
+ # Custom text that should be displayed after the payment confirmation button.
266
+ attr_accessor :after_submit
267
+
268
+ # Custom text that should be displayed alongside shipping address collection.
269
+ attr_accessor :shipping_address
270
+
271
+ # Custom text that should be displayed alongside the payment confirmation button.
272
+ attr_accessor :submit
273
+
274
+ # Custom text that should be displayed in place of the default terms of service agreement text.
275
+ attr_accessor :terms_of_service_acceptance
276
+
277
+ def initialize(
278
+ after_submit: nil,
279
+ shipping_address: nil,
280
+ submit: nil,
281
+ terms_of_service_acceptance: nil
282
+ )
283
+ @after_submit = after_submit
284
+ @shipping_address = shipping_address
285
+ @submit = submit
286
+ @terms_of_service_acceptance = terms_of_service_acceptance
287
+ end
288
+ end
289
+
290
+ class InvoiceCreation < Stripe::RequestParams
291
+ class InvoiceData < Stripe::RequestParams
292
+ class CustomField < Stripe::RequestParams
293
+ # The name of the custom field. This may be up to 40 characters.
294
+ attr_accessor :name
295
+
296
+ # The value of the custom field. This may be up to 140 characters.
297
+ attr_accessor :value
298
+
299
+ def initialize(name: nil, value: nil)
300
+ @name = name
301
+ @value = value
302
+ end
303
+ end
304
+
305
+ class Issuer < Stripe::RequestParams
306
+ # The connected account being referenced when `type` is `account`.
307
+ attr_accessor :account
308
+
309
+ # Type of the account referenced in the request.
310
+ attr_accessor :type
311
+
312
+ def initialize(account: nil, type: nil)
313
+ @account = account
314
+ @type = type
315
+ end
316
+ end
317
+
318
+ class RenderingOptions < Stripe::RequestParams
319
+ # How line-item prices and amounts will be displayed with respect to tax on invoice PDFs. One of `exclude_tax` or `include_inclusive_tax`. `include_inclusive_tax` will include inclusive tax (and exclude exclusive tax) in invoice PDF amounts. `exclude_tax` will exclude all tax (inclusive and exclusive alike) from invoice PDF amounts.
320
+ attr_accessor :amount_tax_display
321
+
322
+ def initialize(amount_tax_display: nil)
323
+ @amount_tax_display = amount_tax_display
324
+ end
325
+ end
326
+ # The account tax IDs associated with the invoice.
327
+ attr_accessor :account_tax_ids
328
+
329
+ # Default custom fields to be displayed on invoices for this customer.
330
+ attr_accessor :custom_fields
331
+
332
+ # An arbitrary string attached to the object. Often useful for displaying to users.
333
+ attr_accessor :description
334
+
335
+ # Default footer to be displayed on invoices for this customer.
336
+ attr_accessor :footer
337
+
338
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
339
+ attr_accessor :issuer
340
+
341
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
342
+ attr_accessor :metadata
343
+
344
+ # Default options for invoice PDF rendering for this customer.
345
+ attr_accessor :rendering_options
346
+
347
+ def initialize(
348
+ account_tax_ids: nil,
349
+ custom_fields: nil,
350
+ description: nil,
351
+ footer: nil,
352
+ issuer: nil,
353
+ metadata: nil,
354
+ rendering_options: nil
355
+ )
356
+ @account_tax_ids = account_tax_ids
357
+ @custom_fields = custom_fields
358
+ @description = description
359
+ @footer = footer
360
+ @issuer = issuer
361
+ @metadata = metadata
362
+ @rendering_options = rendering_options
363
+ end
364
+ end
365
+ # Whether the feature is enabled
366
+ attr_accessor :enabled
367
+
368
+ # Invoice PDF configuration.
369
+ attr_accessor :invoice_data
370
+
371
+ def initialize(enabled: nil, invoice_data: nil)
372
+ @enabled = enabled
373
+ @invoice_data = invoice_data
374
+ end
375
+ end
376
+
377
+ class LineItem < Stripe::RequestParams
378
+ class AdjustableQuantity < Stripe::RequestParams
379
+ # Set to true if the quantity can be adjusted to any non-negative Integer.
380
+ attr_accessor :enabled
381
+
382
+ # The maximum quantity the customer can purchase. By default this value is 99. You can specify a value up to 999.
383
+ attr_accessor :maximum
384
+
385
+ # The minimum quantity the customer can purchase. By default this value is 0. If there is only one item in the cart then that item's quantity cannot go down to 0.
386
+ attr_accessor :minimum
387
+
388
+ def initialize(enabled: nil, maximum: nil, minimum: nil)
389
+ @enabled = enabled
390
+ @maximum = maximum
391
+ @minimum = minimum
392
+ end
393
+ end
394
+ # When set, provides configuration for this item’s quantity to be adjusted by the customer during checkout.
395
+ attr_accessor :adjustable_quantity
396
+
397
+ # The ID of the [Price](https://stripe.com/docs/api/prices) or [Plan](https://stripe.com/docs/api/plans) object.
398
+ attr_accessor :price
399
+
400
+ # The quantity of the line item being purchased.
401
+ attr_accessor :quantity
402
+
403
+ def initialize(adjustable_quantity: nil, price: nil, quantity: nil)
404
+ @adjustable_quantity = adjustable_quantity
405
+ @price = price
406
+ @quantity = quantity
407
+ end
408
+ end
409
+
410
+ class PaymentIntentData < Stripe::RequestParams
411
+ # Controls when the funds will be captured from the customer's account.
412
+ attr_accessor :capture_method
413
+
414
+ # An arbitrary string attached to the object. Often useful for displaying to users.
415
+ attr_accessor :description
416
+
417
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will declaratively set metadata on [Payment Intents](https://stripe.com/docs/api/payment_intents) generated from this payment link. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
418
+ attr_accessor :metadata
419
+
420
+ # Indicates that you intend to [make future payments](https://stripe.com/docs/payments/payment-intents#future-usage) with the payment method collected by this Checkout Session.
421
+ #
422
+ # When setting this to `on_session`, Checkout will show a notice to the customer that their payment details will be saved.
423
+ #
424
+ # When setting this to `off_session`, Checkout will show a notice to the customer that their payment details will be saved and used for future payments.
425
+ #
426
+ # If a Customer has been provided or Checkout creates a new Customer,Checkout will attach the payment method to the Customer.
427
+ #
428
+ # If Checkout does not create a Customer, the payment method is not attached to a Customer. To reuse the payment method, you can retrieve it from the Checkout Session's PaymentIntent.
429
+ #
430
+ # When processing card payments, Checkout also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as SCA.
431
+ attr_accessor :setup_future_usage
432
+
433
+ # Text that appears on the customer's statement as the statement descriptor for a non-card charge. This value overrides the account's default statement descriptor. For information about requirements, including the 22-character limit, see [the Statement Descriptor docs](https://docs.stripe.com/get-started/account/statement-descriptors).
434
+ #
435
+ # Setting this value for a card charge returns an error. For card charges, set the [statement_descriptor_suffix](https://docs.stripe.com/get-started/account/statement-descriptors#dynamic) instead.
436
+ attr_accessor :statement_descriptor
437
+
438
+ # Provides information about a card charge. Concatenated to the account's [statement descriptor prefix](https://docs.stripe.com/get-started/account/statement-descriptors#static) to form the complete statement descriptor that appears on the customer's statement.
439
+ attr_accessor :statement_descriptor_suffix
440
+
441
+ # A string that identifies the resulting payment as part of a group. See the PaymentIntents [use case for connected accounts](https://stripe.com/docs/connect/separate-charges-and-transfers) for details.
442
+ attr_accessor :transfer_group
443
+
444
+ def initialize(
445
+ capture_method: nil,
446
+ description: nil,
447
+ metadata: nil,
448
+ setup_future_usage: nil,
449
+ statement_descriptor: nil,
450
+ statement_descriptor_suffix: nil,
451
+ transfer_group: nil
452
+ )
453
+ @capture_method = capture_method
454
+ @description = description
455
+ @metadata = metadata
456
+ @setup_future_usage = setup_future_usage
457
+ @statement_descriptor = statement_descriptor
458
+ @statement_descriptor_suffix = statement_descriptor_suffix
459
+ @transfer_group = transfer_group
460
+ end
461
+ end
462
+
463
+ class PhoneNumberCollection < Stripe::RequestParams
464
+ # Set to `true` to enable phone number collection.
465
+ attr_accessor :enabled
466
+
467
+ def initialize(enabled: nil)
468
+ @enabled = enabled
469
+ end
470
+ end
471
+
472
+ class Restrictions < Stripe::RequestParams
473
+ class CompletedSessions < Stripe::RequestParams
474
+ # The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.
475
+ attr_accessor :limit
476
+
477
+ def initialize(limit: nil)
478
+ @limit = limit
479
+ end
480
+ end
481
+ # Configuration for the `completed_sessions` restriction type.
482
+ attr_accessor :completed_sessions
483
+
484
+ def initialize(completed_sessions: nil)
485
+ @completed_sessions = completed_sessions
486
+ end
487
+ end
488
+
489
+ class ShippingAddressCollection < Stripe::RequestParams
490
+ # An array of two-letter ISO country codes representing which countries Checkout should provide as options for
491
+ # shipping locations.
492
+ attr_accessor :allowed_countries
493
+
494
+ def initialize(allowed_countries: nil)
495
+ @allowed_countries = allowed_countries
496
+ end
497
+ end
498
+
499
+ class ShippingOption < Stripe::RequestParams
500
+ # The ID of the Shipping Rate to use for this shipping option.
501
+ attr_accessor :shipping_rate
502
+
503
+ def initialize(shipping_rate: nil)
504
+ @shipping_rate = shipping_rate
505
+ end
506
+ end
507
+
508
+ class SubscriptionData < Stripe::RequestParams
509
+ class InvoiceSettings < Stripe::RequestParams
510
+ class Issuer < Stripe::RequestParams
511
+ # The connected account being referenced when `type` is `account`.
512
+ attr_accessor :account
513
+
514
+ # Type of the account referenced in the request.
515
+ attr_accessor :type
516
+
517
+ def initialize(account: nil, type: nil)
518
+ @account = account
519
+ @type = type
520
+ end
521
+ end
522
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
523
+ attr_accessor :issuer
524
+
525
+ def initialize(issuer: nil)
526
+ @issuer = issuer
527
+ end
528
+ end
529
+
530
+ class TrialSettings < Stripe::RequestParams
531
+ class EndBehavior < Stripe::RequestParams
532
+ # Indicates how the subscription should change when the trial ends if the user did not provide a payment method.
533
+ attr_accessor :missing_payment_method
534
+
535
+ def initialize(missing_payment_method: nil)
536
+ @missing_payment_method = missing_payment_method
537
+ end
538
+ end
539
+ # Defines how the subscription should behave when the user's free trial ends.
540
+ attr_accessor :end_behavior
541
+
542
+ def initialize(end_behavior: nil)
543
+ @end_behavior = end_behavior
544
+ end
545
+ end
546
+ # The subscription's description, meant to be displayable to the customer. Use this field to optionally store an explanation of the subscription for rendering in Stripe surfaces and certain local payment methods UIs.
547
+ attr_accessor :description
548
+
549
+ # All invoices will be billed using the specified settings.
550
+ attr_accessor :invoice_settings
551
+
552
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will declaratively set metadata on [Subscriptions](https://stripe.com/docs/api/subscriptions) generated from this payment link. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
553
+ attr_accessor :metadata
554
+
555
+ # Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.
556
+ attr_accessor :trial_period_days
557
+
558
+ # Settings related to subscription trials.
559
+ attr_accessor :trial_settings
560
+
561
+ def initialize(
562
+ description: nil,
563
+ invoice_settings: nil,
564
+ metadata: nil,
565
+ trial_period_days: nil,
566
+ trial_settings: nil
567
+ )
568
+ @description = description
569
+ @invoice_settings = invoice_settings
570
+ @metadata = metadata
571
+ @trial_period_days = trial_period_days
572
+ @trial_settings = trial_settings
573
+ end
574
+ end
575
+
576
+ class TaxIdCollection < Stripe::RequestParams
577
+ # Enable tax ID collection during checkout. Defaults to `false`.
578
+ attr_accessor :enabled
579
+
580
+ # Describes whether a tax ID is required during checkout. Defaults to `never`.
581
+ attr_accessor :required
582
+
583
+ def initialize(enabled: nil, required: nil)
584
+ @enabled = enabled
585
+ @required = required
586
+ end
587
+ end
588
+
589
+ class TransferData < Stripe::RequestParams
590
+ # The amount that will be transferred automatically when a charge succeeds.
591
+ attr_accessor :amount
592
+
593
+ # If specified, successful charges will be attributed to the destination
594
+ # account for tax reporting, and the funds from charges will be transferred
595
+ # to the destination account. The ID of the resulting transfer will be
596
+ # returned on the successful charge's `transfer` field.
597
+ attr_accessor :destination
598
+
599
+ def initialize(amount: nil, destination: nil)
600
+ @amount = amount
601
+ @destination = destination
602
+ end
603
+ end
604
+ # Behavior after the purchase is complete.
605
+ attr_accessor :after_completion
606
+
607
+ # Enables user redeemable promotion codes.
608
+ attr_accessor :allow_promotion_codes
609
+
610
+ # The amount of the application fee (if any) that will be requested to be applied to the payment and transferred to the application owner's Stripe account. Can only be applied when there are no line items with recurring prices.
611
+ attr_accessor :application_fee_amount
612
+
613
+ # A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. There must be at least 1 line item with a recurring price to use this field.
614
+ attr_accessor :application_fee_percent
615
+
616
+ # Configuration for automatic tax collection.
617
+ attr_accessor :automatic_tax
618
+
619
+ # Configuration for collecting the customer's billing address. Defaults to `auto`.
620
+ attr_accessor :billing_address_collection
621
+
622
+ # Configure fields to gather active consent from customers.
623
+ attr_accessor :consent_collection
624
+
625
+ # 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) and supported by each line item's price.
626
+ attr_accessor :currency
627
+
628
+ # Collect additional information from your customer using custom fields. Up to 3 fields are supported.
629
+ attr_accessor :custom_fields
630
+
631
+ # Display additional text for your customers using custom text.
632
+ attr_accessor :custom_text
633
+
634
+ # Configures whether [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link create a [Customer](https://stripe.com/docs/api/customers).
635
+ attr_accessor :customer_creation
636
+
637
+ # Specifies which fields in the response should be expanded.
638
+ attr_accessor :expand
639
+
640
+ # The custom message to be displayed to a customer when a payment link is no longer active.
641
+ attr_accessor :inactive_message
642
+
643
+ # Generate a post-purchase Invoice for one-time payments.
644
+ attr_accessor :invoice_creation
645
+
646
+ # The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported.
647
+ attr_accessor :line_items
648
+
649
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. Metadata associated with this Payment Link will automatically be copied to [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link.
650
+ attr_accessor :metadata
651
+
652
+ # The account on behalf of which to charge.
653
+ attr_accessor :on_behalf_of
654
+
655
+ # A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in `payment` mode.
656
+ attr_accessor :payment_intent_data
657
+
658
+ # Specify whether Checkout should collect a payment method. When set to `if_required`, Checkout will not collect a payment method when the total due for the session is 0.This may occur if the Checkout Session includes a free trial or a discount.
659
+ #
660
+ # Can only be set in `subscription` mode. Defaults to `always`.
661
+ #
662
+ # If you'd like information on how to collect a payment method outside of Checkout, read the guide on [configuring subscriptions with a free trial](https://stripe.com/docs/payments/checkout/free-trials).
663
+ attr_accessor :payment_method_collection
664
+
665
+ # The list of payment method types that customers can use. If no value is passed, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods) (20+ payment methods [supported](https://stripe.com/docs/payments/payment-methods/integration-options#payment-method-product-support)).
666
+ attr_accessor :payment_method_types
667
+
668
+ # Controls phone number collection settings during checkout.
669
+ #
670
+ # We recommend that you review your privacy policy and check with your legal contacts.
671
+ attr_accessor :phone_number_collection
672
+
673
+ # Settings that restrict the usage of a payment link.
674
+ attr_accessor :restrictions
675
+
676
+ # Configuration for collecting the customer's shipping address.
677
+ attr_accessor :shipping_address_collection
678
+
679
+ # The shipping rate options to apply to [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link.
680
+ attr_accessor :shipping_options
681
+
682
+ # Describes the type of transaction being performed in order to customize relevant text on the page, such as the submit button. Changing this value will also affect the hostname in the [url](https://stripe.com/docs/api/payment_links/payment_links/object#url) property (example: `donate.stripe.com`).
683
+ attr_accessor :submit_type
684
+
685
+ # When creating a subscription, the specified configuration data will be used. There must be at least one line item with a recurring price to use `subscription_data`.
686
+ attr_accessor :subscription_data
687
+
688
+ # Controls tax ID collection during checkout.
689
+ attr_accessor :tax_id_collection
690
+
691
+ # The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.
692
+ attr_accessor :transfer_data
693
+
694
+ def initialize(
695
+ after_completion: nil,
696
+ allow_promotion_codes: nil,
697
+ application_fee_amount: nil,
698
+ application_fee_percent: nil,
699
+ automatic_tax: nil,
700
+ billing_address_collection: nil,
701
+ consent_collection: nil,
702
+ currency: nil,
703
+ custom_fields: nil,
704
+ custom_text: nil,
705
+ customer_creation: nil,
706
+ expand: nil,
707
+ inactive_message: nil,
708
+ invoice_creation: nil,
709
+ line_items: nil,
710
+ metadata: nil,
711
+ on_behalf_of: nil,
712
+ payment_intent_data: nil,
713
+ payment_method_collection: nil,
714
+ payment_method_types: nil,
715
+ phone_number_collection: nil,
716
+ restrictions: nil,
717
+ shipping_address_collection: nil,
718
+ shipping_options: nil,
719
+ submit_type: nil,
720
+ subscription_data: nil,
721
+ tax_id_collection: nil,
722
+ transfer_data: nil
723
+ )
724
+ @after_completion = after_completion
725
+ @allow_promotion_codes = allow_promotion_codes
726
+ @application_fee_amount = application_fee_amount
727
+ @application_fee_percent = application_fee_percent
728
+ @automatic_tax = automatic_tax
729
+ @billing_address_collection = billing_address_collection
730
+ @consent_collection = consent_collection
731
+ @currency = currency
732
+ @custom_fields = custom_fields
733
+ @custom_text = custom_text
734
+ @customer_creation = customer_creation
735
+ @expand = expand
736
+ @inactive_message = inactive_message
737
+ @invoice_creation = invoice_creation
738
+ @line_items = line_items
739
+ @metadata = metadata
740
+ @on_behalf_of = on_behalf_of
741
+ @payment_intent_data = payment_intent_data
742
+ @payment_method_collection = payment_method_collection
743
+ @payment_method_types = payment_method_types
744
+ @phone_number_collection = phone_number_collection
745
+ @restrictions = restrictions
746
+ @shipping_address_collection = shipping_address_collection
747
+ @shipping_options = shipping_options
748
+ @submit_type = submit_type
749
+ @subscription_data = subscription_data
750
+ @tax_id_collection = tax_id_collection
751
+ @transfer_data = transfer_data
752
+ end
753
+ end
754
+
755
+ class RetrieveParams < Stripe::RequestParams
756
+ # Specifies which fields in the response should be expanded.
757
+ attr_accessor :expand
758
+
759
+ def initialize(expand: nil)
760
+ @expand = expand
761
+ end
762
+ end
763
+
764
+ class UpdateParams < Stripe::RequestParams
765
+ class AfterCompletion < Stripe::RequestParams
766
+ class HostedConfirmation < Stripe::RequestParams
767
+ # A custom message to display to the customer after the purchase is complete.
768
+ attr_accessor :custom_message
769
+
770
+ def initialize(custom_message: nil)
771
+ @custom_message = custom_message
772
+ end
773
+ end
774
+
775
+ class Redirect < Stripe::RequestParams
776
+ # The URL the customer will be redirected to after the purchase is complete. You can embed `{CHECKOUT_SESSION_ID}` into the URL to have the `id` of the completed [checkout session](https://stripe.com/docs/api/checkout/sessions/object#checkout_session_object-id) included.
777
+ attr_accessor :url
778
+
779
+ def initialize(url: nil)
780
+ @url = url
781
+ end
782
+ end
783
+ # Configuration when `type=hosted_confirmation`.
784
+ attr_accessor :hosted_confirmation
785
+
786
+ # Configuration when `type=redirect`.
787
+ attr_accessor :redirect
788
+
789
+ # The specified behavior after the purchase is complete. Either `redirect` or `hosted_confirmation`.
790
+ attr_accessor :type
791
+
792
+ def initialize(hosted_confirmation: nil, redirect: nil, type: nil)
793
+ @hosted_confirmation = hosted_confirmation
794
+ @redirect = redirect
795
+ @type = type
796
+ end
797
+ end
798
+
799
+ class AutomaticTax < Stripe::RequestParams
800
+ class Liability < Stripe::RequestParams
801
+ # The connected account being referenced when `type` is `account`.
802
+ attr_accessor :account
803
+
804
+ # Type of the account referenced in the request.
805
+ attr_accessor :type
806
+
807
+ def initialize(account: nil, type: nil)
808
+ @account = account
809
+ @type = type
810
+ end
811
+ end
812
+ # Set to `true` to [calculate tax automatically](https://docs.stripe.com/tax) using the customer's location.
813
+ #
814
+ # Enabling this parameter causes the payment link to collect any billing address information necessary for tax calculation.
815
+ attr_accessor :enabled
816
+
817
+ # 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.
818
+ attr_accessor :liability
819
+
820
+ def initialize(enabled: nil, liability: nil)
821
+ @enabled = enabled
822
+ @liability = liability
823
+ end
824
+ end
825
+
826
+ class CustomField < Stripe::RequestParams
827
+ class Dropdown < Stripe::RequestParams
828
+ class Option < Stripe::RequestParams
829
+ # The label for the option, displayed to the customer. Up to 100 characters.
830
+ attr_accessor :label
831
+
832
+ # The value for this option, not displayed to the customer, used by your integration to reconcile the option selected by the customer. Must be unique to this option, alphanumeric, and up to 100 characters.
833
+ attr_accessor :value
834
+
835
+ def initialize(label: nil, value: nil)
836
+ @label = label
837
+ @value = value
838
+ end
839
+ end
840
+ # The options available for the customer to select. Up to 200 options allowed.
841
+ attr_accessor :options
842
+
843
+ def initialize(options: nil)
844
+ @options = options
845
+ end
846
+ end
847
+
848
+ class Label < Stripe::RequestParams
849
+ # Custom text for the label, displayed to the customer. Up to 50 characters.
850
+ attr_accessor :custom
851
+
852
+ # The type of the label.
853
+ attr_accessor :type
854
+
855
+ def initialize(custom: nil, type: nil)
856
+ @custom = custom
857
+ @type = type
858
+ end
859
+ end
860
+
861
+ class Numeric < Stripe::RequestParams
862
+ # The maximum character length constraint for the customer's input.
863
+ attr_accessor :maximum_length
864
+
865
+ # The minimum character length requirement for the customer's input.
866
+ attr_accessor :minimum_length
867
+
868
+ def initialize(maximum_length: nil, minimum_length: nil)
869
+ @maximum_length = maximum_length
870
+ @minimum_length = minimum_length
871
+ end
872
+ end
873
+
874
+ class Text < Stripe::RequestParams
875
+ # The maximum character length constraint for the customer's input.
876
+ attr_accessor :maximum_length
877
+
878
+ # The minimum character length requirement for the customer's input.
879
+ attr_accessor :minimum_length
880
+
881
+ def initialize(maximum_length: nil, minimum_length: nil)
882
+ @maximum_length = maximum_length
883
+ @minimum_length = minimum_length
884
+ end
885
+ end
886
+ # Configuration for `type=dropdown` fields.
887
+ attr_accessor :dropdown
888
+
889
+ # String of your choice that your integration can use to reconcile this field. Must be unique to this field, alphanumeric, and up to 200 characters.
890
+ attr_accessor :key
891
+
892
+ # The label for the field, displayed to the customer.
893
+ attr_accessor :label
894
+
895
+ # Configuration for `type=numeric` fields.
896
+ attr_accessor :numeric
897
+
898
+ # Whether the customer is required to complete the field before completing the Checkout Session. Defaults to `false`.
899
+ attr_accessor :optional
900
+
901
+ # Configuration for `type=text` fields.
902
+ attr_accessor :text
903
+
904
+ # The type of the field.
905
+ attr_accessor :type
906
+
907
+ def initialize(
908
+ dropdown: nil,
909
+ key: nil,
910
+ label: nil,
911
+ numeric: nil,
912
+ optional: nil,
913
+ text: nil,
914
+ type: nil
915
+ )
916
+ @dropdown = dropdown
917
+ @key = key
918
+ @label = label
919
+ @numeric = numeric
920
+ @optional = optional
921
+ @text = text
922
+ @type = type
923
+ end
924
+ end
925
+
926
+ class CustomText < Stripe::RequestParams
927
+ class AfterSubmit < Stripe::RequestParams
928
+ # Text may be up to 1200 characters in length.
929
+ attr_accessor :message
930
+
931
+ def initialize(message: nil)
932
+ @message = message
933
+ end
934
+ end
935
+
936
+ class ShippingAddress < Stripe::RequestParams
937
+ # Text may be up to 1200 characters in length.
938
+ attr_accessor :message
939
+
940
+ def initialize(message: nil)
941
+ @message = message
942
+ end
943
+ end
944
+
945
+ class Submit < Stripe::RequestParams
946
+ # Text may be up to 1200 characters in length.
947
+ attr_accessor :message
948
+
949
+ def initialize(message: nil)
950
+ @message = message
951
+ end
952
+ end
953
+
954
+ class TermsOfServiceAcceptance < Stripe::RequestParams
955
+ # Text may be up to 1200 characters in length.
956
+ attr_accessor :message
957
+
958
+ def initialize(message: nil)
959
+ @message = message
960
+ end
961
+ end
962
+ # Custom text that should be displayed after the payment confirmation button.
963
+ attr_accessor :after_submit
964
+
965
+ # Custom text that should be displayed alongside shipping address collection.
966
+ attr_accessor :shipping_address
967
+
968
+ # Custom text that should be displayed alongside the payment confirmation button.
969
+ attr_accessor :submit
970
+
971
+ # Custom text that should be displayed in place of the default terms of service agreement text.
972
+ attr_accessor :terms_of_service_acceptance
973
+
974
+ def initialize(
975
+ after_submit: nil,
976
+ shipping_address: nil,
977
+ submit: nil,
978
+ terms_of_service_acceptance: nil
979
+ )
980
+ @after_submit = after_submit
981
+ @shipping_address = shipping_address
982
+ @submit = submit
983
+ @terms_of_service_acceptance = terms_of_service_acceptance
984
+ end
985
+ end
986
+
987
+ class InvoiceCreation < Stripe::RequestParams
988
+ class InvoiceData < Stripe::RequestParams
989
+ class CustomField < Stripe::RequestParams
990
+ # The name of the custom field. This may be up to 40 characters.
991
+ attr_accessor :name
992
+
993
+ # The value of the custom field. This may be up to 140 characters.
994
+ attr_accessor :value
995
+
996
+ def initialize(name: nil, value: nil)
997
+ @name = name
998
+ @value = value
999
+ end
1000
+ end
1001
+
1002
+ class Issuer < Stripe::RequestParams
1003
+ # The connected account being referenced when `type` is `account`.
1004
+ attr_accessor :account
1005
+
1006
+ # Type of the account referenced in the request.
1007
+ attr_accessor :type
1008
+
1009
+ def initialize(account: nil, type: nil)
1010
+ @account = account
1011
+ @type = type
1012
+ end
1013
+ end
1014
+
1015
+ class RenderingOptions < Stripe::RequestParams
1016
+ # How line-item prices and amounts will be displayed with respect to tax on invoice PDFs. One of `exclude_tax` or `include_inclusive_tax`. `include_inclusive_tax` will include inclusive tax (and exclude exclusive tax) in invoice PDF amounts. `exclude_tax` will exclude all tax (inclusive and exclusive alike) from invoice PDF amounts.
1017
+ attr_accessor :amount_tax_display
1018
+
1019
+ def initialize(amount_tax_display: nil)
1020
+ @amount_tax_display = amount_tax_display
1021
+ end
1022
+ end
1023
+ # The account tax IDs associated with the invoice.
1024
+ attr_accessor :account_tax_ids
1025
+
1026
+ # Default custom fields to be displayed on invoices for this customer.
1027
+ attr_accessor :custom_fields
1028
+
1029
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1030
+ attr_accessor :description
1031
+
1032
+ # Default footer to be displayed on invoices for this customer.
1033
+ attr_accessor :footer
1034
+
1035
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
1036
+ attr_accessor :issuer
1037
+
1038
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
1039
+ attr_accessor :metadata
1040
+
1041
+ # Default options for invoice PDF rendering for this customer.
1042
+ attr_accessor :rendering_options
1043
+
1044
+ def initialize(
1045
+ account_tax_ids: nil,
1046
+ custom_fields: nil,
1047
+ description: nil,
1048
+ footer: nil,
1049
+ issuer: nil,
1050
+ metadata: nil,
1051
+ rendering_options: nil
1052
+ )
1053
+ @account_tax_ids = account_tax_ids
1054
+ @custom_fields = custom_fields
1055
+ @description = description
1056
+ @footer = footer
1057
+ @issuer = issuer
1058
+ @metadata = metadata
1059
+ @rendering_options = rendering_options
1060
+ end
1061
+ end
1062
+ # Whether the feature is enabled
1063
+ attr_accessor :enabled
1064
+
1065
+ # Invoice PDF configuration.
1066
+ attr_accessor :invoice_data
1067
+
1068
+ def initialize(enabled: nil, invoice_data: nil)
1069
+ @enabled = enabled
1070
+ @invoice_data = invoice_data
1071
+ end
1072
+ end
1073
+
1074
+ class LineItem < Stripe::RequestParams
1075
+ class AdjustableQuantity < Stripe::RequestParams
1076
+ # Set to true if the quantity can be adjusted to any non-negative Integer.
1077
+ attr_accessor :enabled
1078
+
1079
+ # The maximum quantity the customer can purchase. By default this value is 99. You can specify a value up to 999.
1080
+ attr_accessor :maximum
1081
+
1082
+ # The minimum quantity the customer can purchase. By default this value is 0. If there is only one item in the cart then that item's quantity cannot go down to 0.
1083
+ attr_accessor :minimum
1084
+
1085
+ def initialize(enabled: nil, maximum: nil, minimum: nil)
1086
+ @enabled = enabled
1087
+ @maximum = maximum
1088
+ @minimum = minimum
1089
+ end
1090
+ end
1091
+ # When set, provides configuration for this item’s quantity to be adjusted by the customer during checkout.
1092
+ attr_accessor :adjustable_quantity
1093
+
1094
+ # The ID of an existing line item on the payment link.
1095
+ attr_accessor :id
1096
+
1097
+ # The quantity of the line item being purchased.
1098
+ attr_accessor :quantity
1099
+
1100
+ def initialize(adjustable_quantity: nil, id: nil, quantity: nil)
1101
+ @adjustable_quantity = adjustable_quantity
1102
+ @id = id
1103
+ @quantity = quantity
1104
+ end
1105
+ end
1106
+
1107
+ class PaymentIntentData < Stripe::RequestParams
1108
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1109
+ attr_accessor :description
1110
+
1111
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will declaratively set metadata on [Payment Intents](https://stripe.com/docs/api/payment_intents) generated from this payment link. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
1112
+ attr_accessor :metadata
1113
+
1114
+ # Text that appears on the customer's statement as the statement descriptor for a non-card charge. This value overrides the account's default statement descriptor. For information about requirements, including the 22-character limit, see [the Statement Descriptor docs](https://docs.stripe.com/get-started/account/statement-descriptors).
1115
+ #
1116
+ # Setting this value for a card charge returns an error. For card charges, set the [statement_descriptor_suffix](https://docs.stripe.com/get-started/account/statement-descriptors#dynamic) instead.
1117
+ attr_accessor :statement_descriptor
1118
+
1119
+ # Provides information about a card charge. Concatenated to the account's [statement descriptor prefix](https://docs.stripe.com/get-started/account/statement-descriptors#static) to form the complete statement descriptor that appears on the customer's statement.
1120
+ attr_accessor :statement_descriptor_suffix
1121
+
1122
+ # A string that identifies the resulting payment as part of a group. See the PaymentIntents [use case for connected accounts](https://stripe.com/docs/connect/separate-charges-and-transfers) for details.
1123
+ attr_accessor :transfer_group
1124
+
1125
+ def initialize(
1126
+ description: nil,
1127
+ metadata: nil,
1128
+ statement_descriptor: nil,
1129
+ statement_descriptor_suffix: nil,
1130
+ transfer_group: nil
1131
+ )
1132
+ @description = description
1133
+ @metadata = metadata
1134
+ @statement_descriptor = statement_descriptor
1135
+ @statement_descriptor_suffix = statement_descriptor_suffix
1136
+ @transfer_group = transfer_group
1137
+ end
1138
+ end
1139
+
1140
+ class Restrictions < Stripe::RequestParams
1141
+ class CompletedSessions < Stripe::RequestParams
1142
+ # The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.
1143
+ attr_accessor :limit
1144
+
1145
+ def initialize(limit: nil)
1146
+ @limit = limit
1147
+ end
1148
+ end
1149
+ # Configuration for the `completed_sessions` restriction type.
1150
+ attr_accessor :completed_sessions
1151
+
1152
+ def initialize(completed_sessions: nil)
1153
+ @completed_sessions = completed_sessions
1154
+ end
1155
+ end
1156
+
1157
+ class ShippingAddressCollection < Stripe::RequestParams
1158
+ # An array of two-letter ISO country codes representing which countries Checkout should provide as options for
1159
+ # shipping locations.
1160
+ attr_accessor :allowed_countries
1161
+
1162
+ def initialize(allowed_countries: nil)
1163
+ @allowed_countries = allowed_countries
1164
+ end
1165
+ end
1166
+
1167
+ class SubscriptionData < Stripe::RequestParams
1168
+ class InvoiceSettings < Stripe::RequestParams
1169
+ class Issuer < Stripe::RequestParams
1170
+ # The connected account being referenced when `type` is `account`.
1171
+ attr_accessor :account
1172
+
1173
+ # Type of the account referenced in the request.
1174
+ attr_accessor :type
1175
+
1176
+ def initialize(account: nil, type: nil)
1177
+ @account = account
1178
+ @type = type
1179
+ end
1180
+ end
1181
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
1182
+ attr_accessor :issuer
1183
+
1184
+ def initialize(issuer: nil)
1185
+ @issuer = issuer
1186
+ end
1187
+ end
1188
+
1189
+ class TrialSettings < Stripe::RequestParams
1190
+ class EndBehavior < Stripe::RequestParams
1191
+ # Indicates how the subscription should change when the trial ends if the user did not provide a payment method.
1192
+ attr_accessor :missing_payment_method
1193
+
1194
+ def initialize(missing_payment_method: nil)
1195
+ @missing_payment_method = missing_payment_method
1196
+ end
1197
+ end
1198
+ # Defines how the subscription should behave when the user's free trial ends.
1199
+ attr_accessor :end_behavior
1200
+
1201
+ def initialize(end_behavior: nil)
1202
+ @end_behavior = end_behavior
1203
+ end
1204
+ end
1205
+ # All invoices will be billed using the specified settings.
1206
+ attr_accessor :invoice_settings
1207
+
1208
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that will declaratively set metadata on [Subscriptions](https://stripe.com/docs/api/subscriptions) generated from this payment link. Unlike object-level metadata, this field is declarative. Updates will clear prior values.
1209
+ attr_accessor :metadata
1210
+
1211
+ # Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.
1212
+ attr_accessor :trial_period_days
1213
+
1214
+ # Settings related to subscription trials.
1215
+ attr_accessor :trial_settings
1216
+
1217
+ def initialize(
1218
+ invoice_settings: nil,
1219
+ metadata: nil,
1220
+ trial_period_days: nil,
1221
+ trial_settings: nil
1222
+ )
1223
+ @invoice_settings = invoice_settings
1224
+ @metadata = metadata
1225
+ @trial_period_days = trial_period_days
1226
+ @trial_settings = trial_settings
1227
+ end
1228
+ end
1229
+
1230
+ class TaxIdCollection < Stripe::RequestParams
1231
+ # Enable tax ID collection during checkout. Defaults to `false`.
1232
+ attr_accessor :enabled
1233
+
1234
+ # Describes whether a tax ID is required during checkout. Defaults to `never`.
1235
+ attr_accessor :required
1236
+
1237
+ def initialize(enabled: nil, required: nil)
1238
+ @enabled = enabled
1239
+ @required = required
1240
+ end
1241
+ end
1242
+ # Whether the payment link's `url` is active. If `false`, customers visiting the URL will be shown a page saying that the link has been deactivated.
1243
+ attr_accessor :active
1244
+
1245
+ # Behavior after the purchase is complete.
1246
+ attr_accessor :after_completion
1247
+
1248
+ # Enables user redeemable promotion codes.
1249
+ attr_accessor :allow_promotion_codes
1250
+
1251
+ # Configuration for automatic tax collection.
1252
+ attr_accessor :automatic_tax
1253
+
1254
+ # Configuration for collecting the customer's billing address. Defaults to `auto`.
1255
+ attr_accessor :billing_address_collection
1256
+
1257
+ # Collect additional information from your customer using custom fields. Up to 3 fields are supported.
1258
+ attr_accessor :custom_fields
1259
+
1260
+ # Display additional text for your customers using custom text.
1261
+ attr_accessor :custom_text
1262
+
1263
+ # Configures whether [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link create a [Customer](https://stripe.com/docs/api/customers).
1264
+ attr_accessor :customer_creation
1265
+
1266
+ # Specifies which fields in the response should be expanded.
1267
+ attr_accessor :expand
1268
+
1269
+ # The custom message to be displayed to a customer when a payment link is no longer active.
1270
+ attr_accessor :inactive_message
1271
+
1272
+ # Generate a post-purchase Invoice for one-time payments.
1273
+ attr_accessor :invoice_creation
1274
+
1275
+ # The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported.
1276
+ attr_accessor :line_items
1277
+
1278
+ # Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`. Metadata associated with this Payment Link will automatically be copied to [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link.
1279
+ attr_accessor :metadata
1280
+
1281
+ # A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in `payment` mode.
1282
+ attr_accessor :payment_intent_data
1283
+
1284
+ # Specify whether Checkout should collect a payment method. When set to `if_required`, Checkout will not collect a payment method when the total due for the session is 0.This may occur if the Checkout Session includes a free trial or a discount.
1285
+ #
1286
+ # Can only be set in `subscription` mode. Defaults to `always`.
1287
+ #
1288
+ # If you'd like information on how to collect a payment method outside of Checkout, read the guide on [configuring subscriptions with a free trial](https://stripe.com/docs/payments/checkout/free-trials).
1289
+ attr_accessor :payment_method_collection
1290
+
1291
+ # The list of payment method types that customers can use. Pass an empty string to enable dynamic payment methods that use your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).
1292
+ attr_accessor :payment_method_types
1293
+
1294
+ # Settings that restrict the usage of a payment link.
1295
+ attr_accessor :restrictions
1296
+
1297
+ # Configuration for collecting the customer's shipping address.
1298
+ attr_accessor :shipping_address_collection
1299
+
1300
+ # Describes the type of transaction being performed in order to customize relevant text on the page, such as the submit button. Changing this value will also affect the hostname in the [url](https://stripe.com/docs/api/payment_links/payment_links/object#url) property (example: `donate.stripe.com`).
1301
+ attr_accessor :submit_type
1302
+
1303
+ # When creating a subscription, the specified configuration data will be used. There must be at least one line item with a recurring price to use `subscription_data`.
1304
+ attr_accessor :subscription_data
1305
+
1306
+ # Controls tax ID collection during checkout.
1307
+ attr_accessor :tax_id_collection
1308
+
1309
+ def initialize(
1310
+ active: nil,
1311
+ after_completion: nil,
1312
+ allow_promotion_codes: nil,
1313
+ automatic_tax: nil,
1314
+ billing_address_collection: nil,
1315
+ custom_fields: nil,
1316
+ custom_text: nil,
1317
+ customer_creation: nil,
1318
+ expand: nil,
1319
+ inactive_message: nil,
1320
+ invoice_creation: nil,
1321
+ line_items: nil,
1322
+ metadata: nil,
1323
+ payment_intent_data: nil,
1324
+ payment_method_collection: nil,
1325
+ payment_method_types: nil,
1326
+ restrictions: nil,
1327
+ shipping_address_collection: nil,
1328
+ submit_type: nil,
1329
+ subscription_data: nil,
1330
+ tax_id_collection: nil
1331
+ )
1332
+ @active = active
1333
+ @after_completion = after_completion
1334
+ @allow_promotion_codes = allow_promotion_codes
1335
+ @automatic_tax = automatic_tax
1336
+ @billing_address_collection = billing_address_collection
1337
+ @custom_fields = custom_fields
1338
+ @custom_text = custom_text
1339
+ @customer_creation = customer_creation
1340
+ @expand = expand
1341
+ @inactive_message = inactive_message
1342
+ @invoice_creation = invoice_creation
1343
+ @line_items = line_items
1344
+ @metadata = metadata
1345
+ @payment_intent_data = payment_intent_data
1346
+ @payment_method_collection = payment_method_collection
1347
+ @payment_method_types = payment_method_types
1348
+ @restrictions = restrictions
1349
+ @shipping_address_collection = shipping_address_collection
1350
+ @submit_type = submit_type
1351
+ @subscription_data = subscription_data
1352
+ @tax_id_collection = tax_id_collection
1353
+ end
1354
+ end
1355
+
13
1356
  # Creates a payment link.
14
1357
  def create(params = {}, opts = {})
15
1358
  request(