stripe 13.3.0 → 13.4.0.pre.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (743) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1410 -650
  3. data/OPENAPI_VERSION +1 -1
  4. data/VERSION +1 -1
  5. data/lib/stripe/api_operations/request.rb +1 -0
  6. data/lib/stripe/api_requestor.rb +1 -0
  7. data/lib/stripe/object_types.rb +32 -0
  8. data/lib/stripe/request_params.rb +24 -0
  9. data/lib/stripe/request_signing_authenticator.rb +79 -0
  10. data/lib/stripe/resources/account.rb +5793 -0
  11. data/lib/stripe/resources/account_link.rb +64 -0
  12. data/lib/stripe/resources/account_notice.rb +154 -0
  13. data/lib/stripe/resources/account_session.rb +1002 -0
  14. data/lib/stripe/resources/apple_pay_domain.rb +73 -0
  15. data/lib/stripe/resources/application.rb +23 -0
  16. data/lib/stripe/resources/application_fee.rb +120 -0
  17. data/lib/stripe/resources/application_fee_refund.rb +24 -0
  18. data/lib/stripe/resources/apps/secret.rb +166 -0
  19. data/lib/stripe/resources/balance.rb +162 -0
  20. data/lib/stripe/resources/balance_transaction.rb +141 -0
  21. data/lib/stripe/resources/bank_account.rb +113 -2
  22. data/lib/stripe/resources/billing/alert.rb +166 -0
  23. data/lib/stripe/resources/billing/alert_triggered.rb +31 -0
  24. data/lib/stripe/resources/billing/credit_balance_summary.rb +89 -0
  25. data/lib/stripe/resources/billing/credit_balance_transaction.rb +140 -0
  26. data/lib/stripe/resources/billing/credit_grant.rb +235 -0
  27. data/lib/stripe/resources/billing/meter.rb +203 -0
  28. data/lib/stripe/resources/billing/meter_error_report.rb +70 -0
  29. data/lib/stripe/resources/billing/meter_event.rb +45 -0
  30. data/lib/stripe/resources/billing/meter_event_adjustment.rb +51 -0
  31. data/lib/stripe/resources/billing/meter_event_summary.rb +21 -0
  32. data/lib/stripe/resources/billing_portal/configuration.rb +639 -0
  33. data/lib/stripe/resources/billing_portal/session.rb +313 -0
  34. data/lib/stripe/resources/capability.rb +111 -0
  35. data/lib/stripe/resources/capital/financing_offer.rb +221 -0
  36. data/lib/stripe/resources/capital/financing_summary.rb +77 -0
  37. data/lib/stripe/resources/capital/financing_transaction.rb +147 -0
  38. data/lib/stripe/resources/card.rb +111 -0
  39. data/lib/stripe/resources/cash_balance.rb +22 -0
  40. data/lib/stripe/resources/charge.rb +3687 -0
  41. data/lib/stripe/resources/checkout/session.rb +4162 -0
  42. data/lib/stripe/resources/climate/order.rb +216 -0
  43. data/lib/stripe/resources/climate/product.rb +69 -0
  44. data/lib/stripe/resources/climate/supplier.rb +67 -0
  45. data/lib/stripe/resources/confirmation_token.rb +1855 -0
  46. data/lib/stripe/resources/connect_collection_transfer.rb +29 -0
  47. data/lib/stripe/resources/country_spec.rb +76 -0
  48. data/lib/stripe/resources/coupon.rb +237 -0
  49. data/lib/stripe/resources/credit_note.rb +798 -0
  50. data/lib/stripe/resources/credit_note_line_item.rb +89 -0
  51. data/lib/stripe/resources/customer.rb +995 -0
  52. data/lib/stripe/resources/customer_balance_transaction.rb +39 -0
  53. data/lib/stripe/resources/customer_cash_balance_transaction.rb +136 -0
  54. data/lib/stripe/resources/customer_session.rb +183 -0
  55. data/lib/stripe/resources/discount.rb +41 -0
  56. data/lib/stripe/resources/dispute.rb +767 -0
  57. data/lib/stripe/resources/entitlements/active_entitlement.rb +54 -0
  58. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +26 -0
  59. data/lib/stripe/resources/entitlements/feature.rb +107 -0
  60. data/lib/stripe/resources/ephemeral_key.rb +26 -0
  61. data/lib/stripe/resources/event.rb +157 -0
  62. data/lib/stripe/resources/exchange_rate.rb +38 -0
  63. data/lib/stripe/resources/file.rb +134 -0
  64. data/lib/stripe/resources/file_link.rb +134 -0
  65. data/lib/stripe/resources/financial_connections/account.rb +307 -0
  66. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +30 -0
  67. data/lib/stripe/resources/financial_connections/account_owner.rb +24 -0
  68. data/lib/stripe/resources/financial_connections/account_ownership.rb +12 -0
  69. data/lib/stripe/resources/financial_connections/institution.rb +112 -0
  70. data/lib/stripe/resources/financial_connections/session.rb +187 -0
  71. data/lib/stripe/resources/financial_connections/transaction.rb +122 -0
  72. data/lib/stripe/resources/forwarding/request.rb +196 -0
  73. data/lib/stripe/resources/funding_instructions.rb +415 -0
  74. data/lib/stripe/resources/gift_cards/card.rb +245 -0
  75. data/lib/stripe/resources/gift_cards/transaction.rb +313 -0
  76. data/lib/stripe/resources/identity/verification_report.rb +335 -0
  77. data/lib/stripe/resources/identity/verification_session.rb +430 -0
  78. data/lib/stripe/resources/invoice.rb +9348 -0
  79. data/lib/stripe/resources/invoice_item.rb +536 -0
  80. data/lib/stripe/resources/invoice_line_item.rb +409 -0
  81. data/lib/stripe/resources/invoice_payment.rb +72 -0
  82. data/lib/stripe/resources/invoice_rendering_template.rb +79 -0
  83. data/lib/stripe/resources/issuing/authorization.rb +1316 -2
  84. data/lib/stripe/resources/issuing/card.rb +794 -0
  85. data/lib/stripe/resources/issuing/cardholder.rb +768 -0
  86. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +693 -0
  87. data/lib/stripe/resources/issuing/dispute.rb +941 -0
  88. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +98 -0
  89. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +109 -0
  90. data/lib/stripe/resources/issuing/personalization_design.rb +333 -0
  91. data/lib/stripe/resources/issuing/physical_bundle.rb +76 -0
  92. data/lib/stripe/resources/issuing/settlement.rb +65 -0
  93. data/lib/stripe/resources/issuing/token.rb +221 -0
  94. data/lib/stripe/resources/issuing/transaction.rb +1098 -0
  95. data/lib/stripe/resources/line_item.rb +98 -0
  96. data/lib/stripe/resources/login_link.rb +9 -0
  97. data/lib/stripe/resources/mandate.rb +214 -0
  98. data/lib/stripe/resources/margin.rb +143 -0
  99. data/lib/stripe/resources/order.rb +3238 -0
  100. data/lib/stripe/resources/payment_attempt_record.rb +226 -0
  101. data/lib/stripe/resources/payment_intent.rb +14630 -0
  102. data/lib/stripe/resources/payment_link.rb +1761 -0
  103. data/lib/stripe/resources/payment_method.rb +1981 -0
  104. data/lib/stripe/resources/payment_method_configuration.rb +3137 -0
  105. data/lib/stripe/resources/payment_method_domain.rb +176 -0
  106. data/lib/stripe/resources/payment_record.rb +824 -0
  107. data/lib/stripe/resources/payout.rb +267 -0
  108. data/lib/stripe/resources/person.rb +353 -0
  109. data/lib/stripe/resources/plan.rb +386 -0
  110. data/lib/stripe/resources/price.rb +782 -0
  111. data/lib/stripe/resources/product.rb +636 -0
  112. data/lib/stripe/resources/product_feature.rb +16 -0
  113. data/lib/stripe/resources/promotion_code.rb +261 -0
  114. data/lib/stripe/resources/quote.rb +3404 -0
  115. data/lib/stripe/resources/quote_line.rb +340 -0
  116. data/lib/stripe/resources/quote_preview_invoice.rb +833 -0
  117. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +463 -0
  118. data/lib/stripe/resources/radar/early_fraud_warning.rb +93 -0
  119. data/lib/stripe/resources/radar/value_list.rb +151 -0
  120. data/lib/stripe/resources/radar/value_list_item.rb +113 -0
  121. data/lib/stripe/resources/refund.rb +489 -0
  122. data/lib/stripe/resources/reporting/report_run.rb +182 -0
  123. data/lib/stripe/resources/reporting/report_type.rb +44 -0
  124. data/lib/stripe/resources/reserve_transaction.rb +26 -0
  125. data/lib/stripe/resources/reversal.rb +30 -0
  126. data/lib/stripe/resources/review.rb +135 -0
  127. data/lib/stripe/resources/setup_attempt.rb +474 -0
  128. data/lib/stripe/resources/setup_intent.rb +4371 -0
  129. data/lib/stripe/resources/shipping_rate.rb +303 -0
  130. data/lib/stripe/resources/sigma/scheduled_query_run.rb +67 -0
  131. data/lib/stripe/resources/source.rb +1571 -0
  132. data/lib/stripe/resources/source_mandate_notification.rb +79 -0
  133. data/lib/stripe/resources/source_transaction.rb +114 -0
  134. data/lib/stripe/resources/subscription.rb +2395 -0
  135. data/lib/stripe/resources/subscription_item.rb +502 -0
  136. data/lib/stripe/resources/subscription_schedule.rb +2790 -0
  137. data/lib/stripe/resources/tax/association.rb +100 -0
  138. data/lib/stripe/resources/tax/calculation.rb +474 -0
  139. data/lib/stripe/resources/tax/calculation_line_item.rb +76 -0
  140. data/lib/stripe/resources/tax/form.rb +253 -0
  141. data/lib/stripe/resources/tax/registration.rb +2174 -0
  142. data/lib/stripe/resources/tax/settings.rb +146 -0
  143. data/lib/stripe/resources/tax/transaction.rb +332 -0
  144. data/lib/stripe/resources/tax/transaction_line_item.rb +43 -0
  145. data/lib/stripe/resources/tax_code.rb +41 -0
  146. data/lib/stripe/resources/tax_deducted_at_source.rb +26 -0
  147. data/lib/stripe/resources/tax_id.rb +147 -0
  148. data/lib/stripe/resources/tax_rate.rb +245 -0
  149. data/lib/stripe/resources/terminal/configuration.rb +1175 -0
  150. data/lib/stripe/resources/terminal/connection_token.rb +21 -0
  151. data/lib/stripe/resources/terminal/location.rb +208 -0
  152. data/lib/stripe/resources/terminal/reader.rb +911 -0
  153. data/lib/stripe/resources/terminal/reader_collected_data.rb +45 -0
  154. data/lib/stripe/resources/test_helpers/test_clock.rb +101 -0
  155. data/lib/stripe/resources/token.rb +1337 -0
  156. data/lib/stripe/resources/topup.rb +210 -0
  157. data/lib/stripe/resources/transfer.rb +188 -0
  158. data/lib/stripe/resources/treasury/credit_reversal.rb +113 -0
  159. data/lib/stripe/resources/treasury/debit_reversal.rb +126 -0
  160. data/lib/stripe/resources/treasury/financial_account.rb +766 -0
  161. data/lib/stripe/resources/treasury/financial_account_features.rb +237 -0
  162. data/lib/stripe/resources/treasury/inbound_transfer.rb +285 -0
  163. data/lib/stripe/resources/treasury/outbound_payment.rb +587 -0
  164. data/lib/stripe/resources/treasury/outbound_transfer.rb +428 -0
  165. data/lib/stripe/resources/treasury/received_credit.rb +335 -0
  166. data/lib/stripe/resources/treasury/received_debit.rb +298 -0
  167. data/lib/stripe/resources/treasury/transaction.rb +215 -0
  168. data/lib/stripe/resources/treasury/transaction_entry.rb +193 -0
  169. data/lib/stripe/resources/usage_record.rb +18 -0
  170. data/lib/stripe/resources/usage_record_summary.rb +28 -0
  171. data/lib/stripe/resources/v2/amount.rb +9 -0
  172. data/lib/stripe/resources/v2/billing/meter_event.rb +24 -0
  173. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +28 -0
  174. data/lib/stripe/resources/v2/billing/meter_event_session.rb +19 -0
  175. data/lib/stripe/resources/v2/event.rb +35 -0
  176. data/lib/stripe/resources/v2/event_destination.rb +78 -0
  177. data/lib/stripe/resources/webhook_endpoint.rb +148 -0
  178. data/lib/stripe/resources.rb +31 -0
  179. data/lib/stripe/services/account_capability_service.rb +33 -0
  180. data/lib/stripe/services/account_external_account_service.rb +293 -0
  181. data/lib/stripe/services/account_link_service.rb +53 -0
  182. data/lib/stripe/services/account_login_link_service.rb +9 -0
  183. data/lib/stripe/services/account_notice_service.rb +110 -0
  184. data/lib/stripe/services/account_person_service.rb +1014 -0
  185. data/lib/stripe/services/account_service.rb +4862 -0
  186. data/lib/stripe/services/account_session_service.rb +740 -0
  187. data/lib/stripe/services/apple_pay_domain_service.rb +56 -0
  188. data/lib/stripe/services/application_fee_refund_service.rb +60 -0
  189. data/lib/stripe/services/application_fee_service.rb +65 -0
  190. data/lib/stripe/services/apps/secret_service.rb +132 -0
  191. data/lib/stripe/services/balance_service.rb +9 -0
  192. data/lib/stripe/services/balance_transaction_service.rb +80 -0
  193. data/lib/stripe/services/billing/alert_service.rb +125 -0
  194. data/lib/stripe/services/billing/credit_balance_summary_service.rb +41 -0
  195. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +45 -0
  196. data/lib/stripe/services/billing/credit_grant_service.rb +167 -0
  197. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +29 -0
  198. data/lib/stripe/services/billing/meter_event_service.rb +25 -0
  199. data/lib/stripe/services/billing/meter_event_summary_service.rb +46 -0
  200. data/lib/stripe/services/billing/meter_service.rb +142 -0
  201. data/lib/stripe/services/billing_portal/configuration_service.rb +492 -0
  202. data/lib/stripe/services/billing_portal/session_service.rb +192 -0
  203. data/lib/stripe/services/capital/financing_offer_service.rb +121 -0
  204. data/lib/stripe/services/capital/financing_summary_service.rb +28 -0
  205. data/lib/stripe/services/capital/financing_transaction_service.rb +86 -0
  206. data/lib/stripe/services/capital_service.rb +15 -0
  207. data/lib/stripe/services/charge_service.rb +2010 -0
  208. data/lib/stripe/services/checkout/session_line_item_service.rb +21 -0
  209. data/lib/stripe/services/checkout/session_service.rb +2736 -0
  210. data/lib/stripe/services/climate/order_service.rb +113 -0
  211. data/lib/stripe/services/climate/product_service.rb +30 -0
  212. data/lib/stripe/services/climate/supplier_service.rb +30 -0
  213. data/lib/stripe/services/confirmation_token_service.rb +9 -0
  214. data/lib/stripe/services/country_spec_service.rb +30 -0
  215. data/lib/stripe/services/coupon_service.rb +174 -0
  216. data/lib/stripe/services/credit_note_line_item_service.rb +21 -0
  217. data/lib/stripe/services/credit_note_preview_lines_service.rb +184 -0
  218. data/lib/stripe/services/credit_note_service.rb +434 -0
  219. data/lib/stripe/services/customer_balance_transaction_service.rb +72 -0
  220. data/lib/stripe/services/customer_cash_balance_service.rb +30 -0
  221. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +30 -0
  222. data/lib/stripe/services/customer_funding_instructions_service.rb +47 -0
  223. data/lib/stripe/services/customer_payment_method_service.rb +45 -0
  224. data/lib/stripe/services/customer_payment_source_service.rb +208 -0
  225. data/lib/stripe/services/customer_service.rb +684 -0
  226. data/lib/stripe/services/customer_session_service.rb +106 -0
  227. data/lib/stripe/services/customer_tax_id_service.rb +50 -0
  228. data/lib/stripe/services/dispute_service.rb +439 -0
  229. data/lib/stripe/services/entitlements/active_entitlement_service.rb +40 -0
  230. data/lib/stripe/services/entitlements/feature_service.rb +87 -0
  231. data/lib/stripe/services/ephemeral_key_service.rb +40 -0
  232. data/lib/stripe/services/event_service.rb +75 -0
  233. data/lib/stripe/services/exchange_rate_service.rb +30 -0
  234. data/lib/stripe/services/file_link_service.rb +108 -0
  235. data/lib/stripe/services/file_service.rb +102 -0
  236. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +40 -0
  237. data/lib/stripe/services/financial_connections/account_owner_service.rb +31 -0
  238. data/lib/stripe/services/financial_connections/account_service.rb +108 -1
  239. data/lib/stripe/services/financial_connections/institution_service.rb +60 -0
  240. data/lib/stripe/services/financial_connections/session_service.rb +108 -0
  241. data/lib/stripe/services/financial_connections/transaction_service.rb +79 -0
  242. data/lib/stripe/services/financial_connections_service.rb +2 -1
  243. data/lib/stripe/services/forwarding/request_service.rb +120 -0
  244. data/lib/stripe/services/gift_cards/card_service.rb +183 -0
  245. data/lib/stripe/services/gift_cards/transaction_service.rb +225 -0
  246. data/lib/stripe/services/gift_cards_service.rb +14 -0
  247. data/lib/stripe/services/identity/verification_report_service.rb +75 -0
  248. data/lib/stripe/services/identity/verification_session_service.rb +261 -0
  249. data/lib/stripe/services/invoice_item_service.rb +454 -0
  250. data/lib/stripe/services/invoice_line_item_service.rb +277 -0
  251. data/lib/stripe/services/invoice_payment_service.rb +58 -0
  252. data/lib/stripe/services/invoice_rendering_template_service.rb +56 -0
  253. data/lib/stripe/services/invoice_service.rb +6375 -1
  254. data/lib/stripe/services/invoice_upcoming_lines_service.rb +2142 -0
  255. data/lib/stripe/services/issuing/authorization_service.rb +118 -0
  256. data/lib/stripe/services/issuing/card_service.rb +525 -0
  257. data/lib/stripe/services/issuing/cardholder_service.rb +599 -0
  258. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +560 -0
  259. data/lib/stripe/services/issuing/dispute_service.rb +731 -0
  260. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +70 -0
  261. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +90 -0
  262. data/lib/stripe/services/issuing/personalization_design_service.rb +222 -0
  263. data/lib/stripe/services/issuing/physical_bundle_service.rb +45 -0
  264. data/lib/stripe/services/issuing/token_service.rb +83 -0
  265. data/lib/stripe/services/issuing/transaction_service.rb +93 -0
  266. data/lib/stripe/services/issuing_service.rb +5 -1
  267. data/lib/stripe/services/mandate_service.rb +9 -0
  268. data/lib/stripe/services/margin_service.rb +130 -0
  269. data/lib/stripe/services/order_line_item_service.rb +38 -0
  270. data/lib/stripe/services/order_service.rb +2518 -0
  271. data/lib/stripe/services/payment_attempt_record_service.rb +50 -0
  272. data/lib/stripe/services/payment_intent_service.rb +12203 -0
  273. data/lib/stripe/services/payment_link_line_item_service.rb +21 -0
  274. data/lib/stripe/services/payment_link_service.rb +1343 -0
  275. data/lib/stripe/services/payment_method_configuration_service.rb +2148 -0
  276. data/lib/stripe/services/payment_method_domain_service.rb +84 -0
  277. data/lib/stripe/services/payment_method_service.rb +977 -0
  278. data/lib/stripe/services/payment_record_service.rb +610 -0
  279. data/lib/stripe/services/payout_service.rb +182 -0
  280. data/lib/stripe/services/plan_service.rb +296 -0
  281. data/lib/stripe/services/price_service.rb +603 -0
  282. data/lib/stripe/services/product_feature_service.rb +46 -0
  283. data/lib/stripe/services/product_service.rb +533 -0
  284. data/lib/stripe/services/promotion_code_service.rb +203 -0
  285. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +21 -0
  286. data/lib/stripe/services/quote_line_item_service.rb +21 -0
  287. data/lib/stripe/services/quote_line_service.rb +38 -0
  288. data/lib/stripe/services/quote_preview_invoice_service.rb +38 -0
  289. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +38 -0
  290. data/lib/stripe/services/quote_service.rb +2628 -1
  291. data/lib/stripe/services/radar/early_fraud_warning_service.rb +70 -0
  292. data/lib/stripe/services/radar/value_list_item_service.rb +90 -0
  293. data/lib/stripe/services/radar/value_list_service.rb +119 -0
  294. data/lib/stripe/services/refund_service.rb +158 -0
  295. data/lib/stripe/services/reporting/report_run_service.rb +122 -0
  296. data/lib/stripe/services/reporting/report_type_service.rb +18 -0
  297. data/lib/stripe/services/review_service.rb +63 -0
  298. data/lib/stripe/services/setup_attempt_service.rb +59 -0
  299. data/lib/stripe/services/setup_intent_service.rb +3923 -0
  300. data/lib/stripe/services/shipping_rate_service.rb +227 -0
  301. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +30 -0
  302. data/lib/stripe/services/source_service.rb +693 -0
  303. data/lib/stripe/services/source_transaction_service.rb +21 -0
  304. data/lib/stripe/services/subscription_item_service.rb +439 -0
  305. data/lib/stripe/services/subscription_item_usage_record_service.rb +21 -0
  306. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +21 -0
  307. data/lib/stripe/services/subscription_schedule_service.rb +2343 -0
  308. data/lib/stripe/services/subscription_service.rb +1967 -0
  309. data/lib/stripe/services/tax/association_service.rb +32 -0
  310. data/lib/stripe/services/tax/calculation_line_item_service.rb +21 -0
  311. data/lib/stripe/services/tax/calculation_service.rb +235 -0
  312. data/lib/stripe/services/tax/form_service.rb +107 -0
  313. data/lib/stripe/services/tax/registration_service.rb +1398 -0
  314. data/lib/stripe/services/tax/settings_service.rb +82 -0
  315. data/lib/stripe/services/tax/transaction_line_item_service.rb +21 -0
  316. data/lib/stripe/services/tax/transaction_service.rb +128 -0
  317. data/lib/stripe/services/tax_code_service.rb +30 -0
  318. data/lib/stripe/services/tax_id_service.rb +90 -0
  319. data/lib/stripe/services/tax_rate_service.rb +182 -0
  320. data/lib/stripe/services/tax_service.rb +3 -1
  321. data/lib/stripe/services/terminal/configuration_service.rb +901 -0
  322. data/lib/stripe/services/terminal/connection_token_service.rb +13 -0
  323. data/lib/stripe/services/terminal/location_service.rb +165 -0
  324. data/lib/stripe/services/terminal/reader_collected_data_service.rb +28 -0
  325. data/lib/stripe/services/terminal/reader_service.rb +496 -0
  326. data/lib/stripe/services/terminal_service.rb +2 -1
  327. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +762 -0
  328. data/lib/stripe/services/test_helpers/customer_service.rb +21 -0
  329. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +844 -0
  330. data/lib/stripe/services/test_helpers/issuing/card_service.rb +45 -0
  331. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +43 -0
  332. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +723 -0
  333. data/lib/stripe/services/test_helpers/refund_service.rb +9 -0
  334. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +48 -0
  335. data/lib/stripe/services/test_helpers/test_clock_service.rb +63 -0
  336. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +39 -0
  337. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +93 -0
  338. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +93 -0
  339. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +95 -0
  340. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +95 -0
  341. data/lib/stripe/services/token_service.rb +1301 -0
  342. data/lib/stripe/services/topup_service.rb +163 -0
  343. data/lib/stripe/services/transfer_reversal_service.rb +74 -0
  344. data/lib/stripe/services/transfer_service.rb +138 -0
  345. data/lib/stripe/services/treasury/credit_reversal_service.rb +67 -0
  346. data/lib/stripe/services/treasury/debit_reversal_service.rb +72 -0
  347. data/lib/stripe/services/treasury/financial_account_features_service.rb +179 -0
  348. data/lib/stripe/services/treasury/financial_account_service.rb +481 -0
  349. data/lib/stripe/services/treasury/inbound_transfer_service.rb +100 -0
  350. data/lib/stripe/services/treasury/outbound_payment_service.rb +296 -0
  351. data/lib/stripe/services/treasury/outbound_transfer_service.rb +147 -0
  352. data/lib/stripe/services/treasury/received_credit_service.rb +58 -0
  353. data/lib/stripe/services/treasury/received_debit_service.rb +45 -0
  354. data/lib/stripe/services/treasury/transaction_entry_service.rb +101 -0
  355. data/lib/stripe/services/treasury/transaction_service.rb +109 -0
  356. data/lib/stripe/services/v1_services.rb +8 -1
  357. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +25 -0
  358. data/lib/stripe/services/v2/billing/meter_event_service.rb +28 -0
  359. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +3 -0
  360. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +36 -0
  361. data/lib/stripe/services/v2/core/event_destination_service.rb +164 -0
  362. data/lib/stripe/services/v2/core/event_service.rb +20 -0
  363. data/lib/stripe/services/webhook_endpoint_service.rb +110 -0
  364. data/lib/stripe/services.rb +25 -0
  365. data/lib/stripe/stripe_client.rb +2 -2
  366. data/lib/stripe/stripe_configuration.rb +3 -1
  367. data/lib/stripe/stripe_object.rb +8 -3
  368. data/lib/stripe/util.rb +8 -2
  369. data/lib/stripe/version.rb +1 -1
  370. data/lib/stripe.rb +46 -0
  371. data/rbi/stripe/resources/account.rbi +6072 -0
  372. data/rbi/stripe/resources/account_link.rbi +87 -0
  373. data/rbi/stripe/resources/account_notice.rbi +166 -0
  374. data/rbi/stripe/resources/account_session.rbi +1173 -0
  375. data/rbi/stripe/resources/apple_pay_domain.rbi +111 -0
  376. data/rbi/stripe/resources/application.rbi +23 -0
  377. data/rbi/stripe/resources/application_fee.rbi +151 -0
  378. data/rbi/stripe/resources/application_fee_refund.rbi +44 -0
  379. data/rbi/stripe/resources/apps/secret.rbi +229 -0
  380. data/rbi/stripe/resources/balance.rbi +220 -0
  381. data/rbi/stripe/resources/balance_transaction.rbi +182 -0
  382. data/rbi/stripe/resources/bank_account.rbi +156 -0
  383. data/rbi/stripe/resources/billing/alert.rbi +237 -0
  384. data/rbi/stripe/resources/billing/alert_triggered.rbi +33 -0
  385. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +118 -0
  386. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +181 -0
  387. data/rbi/stripe/resources/billing/credit_grant.rbi +312 -0
  388. data/rbi/stripe/resources/billing/meter.rbi +268 -0
  389. data/rbi/stripe/resources/billing/meter_error_report.rbi +82 -0
  390. data/rbi/stripe/resources/billing/meter_event.rbi +76 -0
  391. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +75 -0
  392. data/rbi/stripe/resources/billing/meter_event_summary.rbi +39 -0
  393. data/rbi/stripe/resources/billing_portal/configuration.rbi +746 -0
  394. data/rbi/stripe/resources/billing_portal/session.rbi +396 -0
  395. data/rbi/stripe/resources/capability.rbi +152 -0
  396. data/rbi/stripe/resources/capital/financing_offer.rbi +228 -0
  397. data/rbi/stripe/resources/capital/financing_summary.rbi +89 -0
  398. data/rbi/stripe/resources/capital/financing_transaction.rbi +157 -0
  399. data/rbi/stripe/resources/card.rbi +159 -0
  400. data/rbi/stripe/resources/cash_balance.rbi +37 -0
  401. data/rbi/stripe/resources/charge.rbi +4216 -0
  402. data/rbi/stripe/resources/checkout/session.rbi +4627 -0
  403. data/rbi/stripe/resources/climate/order.rbi +298 -0
  404. data/rbi/stripe/resources/climate/product.rbi +98 -0
  405. data/rbi/stripe/resources/climate/supplier.rbi +95 -0
  406. data/rbi/stripe/resources/confirmation_token.rbi +2137 -0
  407. data/rbi/stripe/resources/connect_collection_transfer.rbi +31 -0
  408. data/rbi/stripe/resources/country_spec.rbi +108 -0
  409. data/rbi/stripe/resources/coupon.rbi +305 -0
  410. data/rbi/stripe/resources/credit_note.rbi +918 -0
  411. data/rbi/stripe/resources/credit_note_line_item.rbi +123 -0
  412. data/rbi/stripe/resources/customer.rbi +1188 -0
  413. data/rbi/stripe/resources/customer_balance_transaction.rbi +65 -0
  414. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +178 -0
  415. data/rbi/stripe/resources/customer_session.rbi +227 -0
  416. data/rbi/stripe/resources/discount.rbi +65 -0
  417. data/rbi/stripe/resources/dispute.rbi +926 -0
  418. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +76 -0
  419. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +26 -0
  420. data/rbi/stripe/resources/entitlements/feature.rbi +146 -0
  421. data/rbi/stripe/resources/ephemeral_key.rbi +51 -0
  422. data/rbi/stripe/resources/event.rbi +221 -0
  423. data/rbi/stripe/resources/exchange_rate.rbi +81 -0
  424. data/rbi/stripe/resources/file.rbi +177 -0
  425. data/rbi/stripe/resources/file_link.rbi +174 -0
  426. data/rbi/stripe/resources/financial_connections/account.rbi +414 -0
  427. data/rbi/stripe/resources/financial_connections/account_inferred_balance.rbi +30 -0
  428. data/rbi/stripe/resources/financial_connections/account_owner.rbi +42 -0
  429. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +26 -0
  430. data/rbi/stripe/resources/financial_connections/institution.rbi +115 -0
  431. data/rbi/stripe/resources/financial_connections/session.rbi +221 -0
  432. data/rbi/stripe/resources/financial_connections/transaction.rbi +153 -0
  433. data/rbi/stripe/resources/forwarding/request.rbi +257 -0
  434. data/rbi/stripe/resources/funding_instructions.rbi +544 -0
  435. data/rbi/stripe/resources/gift_cards/card.rbi +242 -0
  436. data/rbi/stripe/resources/gift_cards/transaction.rbi +298 -0
  437. data/rbi/stripe/resources/identity/verification_report.rbi +427 -0
  438. data/rbi/stripe/resources/identity/verification_session.rbi +601 -0
  439. data/rbi/stripe/resources/invoice.rbi +10584 -0
  440. data/rbi/stripe/resources/invoice_item.rbi +621 -0
  441. data/rbi/stripe/resources/invoice_line_item.rbi +486 -0
  442. data/rbi/stripe/resources/invoice_payment.rbi +86 -0
  443. data/rbi/stripe/resources/invoice_rendering_template.rbi +131 -0
  444. data/rbi/stripe/resources/issuing/authorization.rbi +1511 -0
  445. data/rbi/stripe/resources/issuing/card.rbi +891 -0
  446. data/rbi/stripe/resources/issuing/cardholder.rbi +870 -0
  447. data/rbi/stripe/resources/issuing/credit_underwriting_record.rbi +731 -0
  448. data/rbi/stripe/resources/issuing/dispute.rbi +1077 -0
  449. data/rbi/stripe/resources/issuing/dispute_settlement_detail.rbi +100 -0
  450. data/rbi/stripe/resources/issuing/fraud_liability_debit.rbi +108 -0
  451. data/rbi/stripe/resources/issuing/personalization_design.rbi +395 -0
  452. data/rbi/stripe/resources/issuing/physical_bundle.rbi +102 -0
  453. data/rbi/stripe/resources/issuing/settlement.rbi +78 -0
  454. data/rbi/stripe/resources/issuing/token.rbi +282 -0
  455. data/rbi/stripe/resources/issuing/transaction.rbi +1262 -0
  456. data/rbi/stripe/resources/line_item.rbi +131 -0
  457. data/rbi/stripe/resources/login_link.rbi +20 -0
  458. data/rbi/stripe/resources/mandate.rbi +266 -0
  459. data/rbi/stripe/resources/margin.rbi +151 -0
  460. data/rbi/stripe/resources/order.rbi +3505 -0
  461. data/rbi/stripe/resources/payment_attempt_record.rbi +260 -0
  462. data/rbi/stripe/resources/payment_intent.rbi +16064 -0
  463. data/rbi/stripe/resources/payment_link.rbi +1943 -0
  464. data/rbi/stripe/resources/payment_method.rbi +2287 -0
  465. data/rbi/stripe/resources/payment_method_configuration.rbi +3657 -0
  466. data/rbi/stripe/resources/payment_method_domain.rbi +246 -0
  467. data/rbi/stripe/resources/payment_record.rbi +856 -0
  468. data/rbi/stripe/resources/payout.rbi +357 -0
  469. data/rbi/stripe/resources/person.rbi +461 -0
  470. data/rbi/stripe/resources/plan.rbi +463 -0
  471. data/rbi/stripe/resources/price.rbi +884 -0
  472. data/rbi/stripe/resources/product.rbi +735 -0
  473. data/rbi/stripe/resources/product_feature.rbi +30 -0
  474. data/rbi/stripe/resources/promotion_code.rbi +316 -0
  475. data/rbi/stripe/resources/quote.rbi +3779 -0
  476. data/rbi/stripe/resources/quote_line.rbi +416 -0
  477. data/rbi/stripe/resources/quote_preview_invoice.rbi +1030 -0
  478. data/rbi/stripe/resources/quote_preview_subscription_schedule.rbi +575 -0
  479. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +121 -0
  480. data/rbi/stripe/resources/radar/value_list.rbi +207 -0
  481. data/rbi/stripe/resources/radar/value_list_item.rbi +157 -0
  482. data/rbi/stripe/resources/refund.rbi +615 -0
  483. data/rbi/stripe/resources/reporting/report_run.rbi +232 -0
  484. data/rbi/stripe/resources/reporting/report_type.rbi +75 -0
  485. data/rbi/stripe/resources/reserve_transaction.rbi +27 -0
  486. data/rbi/stripe/resources/reversal.rbi +60 -0
  487. data/rbi/stripe/resources/review.rbi +191 -0
  488. data/rbi/stripe/resources/setup_attempt.rbi +587 -0
  489. data/rbi/stripe/resources/setup_intent.rbi +4726 -0
  490. data/rbi/stripe/resources/shipping_rate.rbi +367 -0
  491. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +98 -0
  492. data/rbi/stripe/resources/source.rbi +1899 -0
  493. data/rbi/stripe/resources/source_mandate_notification.rbi +90 -0
  494. data/rbi/stripe/resources/source_transaction.rbi +156 -0
  495. data/rbi/stripe/resources/subscription.rbi +2739 -0
  496. data/rbi/stripe/resources/subscription_item.rbi +566 -0
  497. data/rbi/stripe/resources/subscription_schedule.rbi +3157 -0
  498. data/rbi/stripe/resources/tax/association.rbi +107 -0
  499. data/rbi/stripe/resources/tax/calculation.rbi +577 -0
  500. data/rbi/stripe/resources/tax/calculation_line_item.rbi +108 -0
  501. data/rbi/stripe/resources/tax/form.rbi +262 -0
  502. data/rbi/stripe/resources/tax/registration.rbi +2354 -0
  503. data/rbi/stripe/resources/tax/settings.rbi +174 -0
  504. data/rbi/stripe/resources/tax/transaction.rbi +428 -0
  505. data/rbi/stripe/resources/tax/transaction_line_item.rbi +66 -0
  506. data/rbi/stripe/resources/tax_code.rbi +60 -0
  507. data/rbi/stripe/resources/tax_deducted_at_source.rbi +27 -0
  508. data/rbi/stripe/resources/tax_id.rbi +206 -0
  509. data/rbi/stripe/resources/tax_rate.rbi +295 -0
  510. data/rbi/stripe/resources/terminal/configuration.rbi +1302 -0
  511. data/rbi/stripe/resources/terminal/connection_token.rbi +42 -0
  512. data/rbi/stripe/resources/terminal/location.rbi +271 -0
  513. data/rbi/stripe/resources/terminal/reader.rbi +1110 -0
  514. data/rbi/stripe/resources/terminal/reader_collected_data.rbi +48 -0
  515. data/rbi/stripe/resources/test_helpers/test_clock.rbi +159 -0
  516. data/rbi/stripe/resources/token.rbi +1405 -0
  517. data/rbi/stripe/resources/topup.rbi +269 -0
  518. data/rbi/stripe/resources/transfer.rbi +245 -0
  519. data/rbi/stripe/resources/treasury/credit_reversal.rbi +151 -0
  520. data/rbi/stripe/resources/treasury/debit_reversal.rbi +165 -0
  521. data/rbi/stripe/resources/treasury/financial_account.rbi +924 -0
  522. data/rbi/stripe/resources/treasury/financial_account_features.rbi +309 -0
  523. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +361 -0
  524. data/rbi/stripe/resources/treasury/outbound_payment.rbi +702 -0
  525. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +529 -0
  526. data/rbi/stripe/resources/treasury/received_credit.rbi +408 -0
  527. data/rbi/stripe/resources/treasury/received_debit.rbi +367 -0
  528. data/rbi/stripe/resources/treasury/transaction.rbi +261 -0
  529. data/rbi/stripe/resources/treasury/transaction_entry.rbi +234 -0
  530. data/rbi/stripe/resources/usage_record.rbi +37 -0
  531. data/rbi/stripe/resources/usage_record_summary.rbi +45 -0
  532. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  533. data/rbi/stripe/resources/v2/billing/meter_event.rbi +43 -0
  534. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +48 -0
  535. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +36 -0
  536. data/rbi/stripe/resources/v2/event.rbi +55 -0
  537. data/rbi/stripe/resources/v2/event_destination.rbi +109 -0
  538. data/rbi/stripe/resources/webhook_endpoint.rbi +208 -0
  539. data/rbi/stripe/services/account_capability_service.rbi +55 -0
  540. data/rbi/stripe/services/account_external_account_service.rbi +358 -0
  541. data/rbi/stripe/services/account_link_service.rbi +67 -0
  542. data/rbi/stripe/services/account_login_link_service.rbi +23 -0
  543. data/rbi/stripe/services/account_notice_service.rbi +103 -0
  544. data/rbi/stripe/services/account_person_service.rbi +1077 -0
  545. data/rbi/stripe/services/account_service.rbi +4948 -0
  546. data/rbi/stripe/services/account_session_service.rbi +873 -0
  547. data/rbi/stripe/services/apple_pay_domain_service.rbi +86 -0
  548. data/rbi/stripe/services/application_fee_refund_service.rbi +101 -0
  549. data/rbi/stripe/services/application_fee_service.rbi +85 -0
  550. data/rbi/stripe/services/apps/secret_service.rbi +175 -0
  551. data/rbi/stripe/services/apps_service.rbi +9 -0
  552. data/rbi/stripe/services/balance_service.rbi +22 -0
  553. data/rbi/stripe/services/balance_transaction_service.rbi +103 -0
  554. data/rbi/stripe/services/billing/alert_service.rbi +172 -0
  555. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +61 -0
  556. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +66 -0
  557. data/rbi/stripe/services/billing/credit_grant_service.rbi +217 -0
  558. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +45 -0
  559. data/rbi/stripe/services/billing/meter_event_service.rbi +47 -0
  560. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +62 -0
  561. data/rbi/stripe/services/billing/meter_service.rbi +184 -0
  562. data/rbi/stripe/services/billing_portal/configuration_service.rbi +573 -0
  563. data/rbi/stripe/services/billing_portal/session_service.rbi +233 -0
  564. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  565. data/rbi/stripe/services/billing_service.rbi +15 -0
  566. data/rbi/stripe/services/capital/financing_offer_service.rbi +108 -0
  567. data/rbi/stripe/services/capital/financing_summary_service.rbi +23 -0
  568. data/rbi/stripe/services/capital/financing_transaction_service.rbi +77 -0
  569. data/rbi/stripe/services/capital_service.rbi +11 -0
  570. data/rbi/stripe/services/charge_service.rbi +2162 -0
  571. data/rbi/stripe/services/checkout/session_line_item_service.rbi +37 -0
  572. data/rbi/stripe/services/checkout/session_service.rbi +2975 -0
  573. data/rbi/stripe/services/checkout_service.rbi +9 -0
  574. data/rbi/stripe/services/climate/order_service.rbi +158 -0
  575. data/rbi/stripe/services/climate/product_service.rbi +51 -0
  576. data/rbi/stripe/services/climate/supplier_service.rbi +51 -0
  577. data/rbi/stripe/services/climate_service.rbi +11 -0
  578. data/rbi/stripe/services/confirmation_token_service.rbi +21 -0
  579. data/rbi/stripe/services/country_spec_service.rbi +49 -0
  580. data/rbi/stripe/services/coupon_service.rbi +220 -0
  581. data/rbi/stripe/services/credit_note_line_item_service.rbi +35 -0
  582. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +200 -0
  583. data/rbi/stripe/services/credit_note_service.rbi +496 -0
  584. data/rbi/stripe/services/customer_balance_transaction_service.rbi +105 -0
  585. data/rbi/stripe/services/customer_cash_balance_service.rbi +49 -0
  586. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +49 -0
  587. data/rbi/stripe/services/customer_funding_instructions_service.rbi +67 -0
  588. data/rbi/stripe/services/customer_payment_method_service.rbi +64 -0
  589. data/rbi/stripe/services/customer_payment_source_service.rbi +265 -0
  590. data/rbi/stripe/services/customer_service.rbi +763 -0
  591. data/rbi/stripe/services/customer_session_service.rbi +126 -0
  592. data/rbi/stripe/services/customer_tax_id_service.rbi +80 -0
  593. data/rbi/stripe/services/dispute_service.rbi +500 -0
  594. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +61 -0
  595. data/rbi/stripe/services/entitlements/feature_service.rbi +122 -0
  596. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  597. data/rbi/stripe/services/ephemeral_key_service.rbi +59 -0
  598. data/rbi/stripe/services/event_service.rbi +94 -0
  599. data/rbi/stripe/services/exchange_rate_service.rbi +49 -0
  600. data/rbi/stripe/services/file_link_service.rbi +141 -0
  601. data/rbi/stripe/services/file_service.rbi +132 -0
  602. data/rbi/stripe/services/financial_connections/account_inferred_balance_service.rbi +37 -0
  603. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +47 -0
  604. data/rbi/stripe/services/financial_connections/account_service.rbi +148 -0
  605. data/rbi/stripe/services/financial_connections/institution_service.rbi +51 -0
  606. data/rbi/stripe/services/financial_connections/session_service.rbi +128 -0
  607. data/rbi/stripe/services/financial_connections/transaction_service.rbi +103 -0
  608. data/rbi/stripe/services/financial_connections_service.rbi +12 -0
  609. data/rbi/stripe/services/forwarding/request_service.rbi +152 -0
  610. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  611. data/rbi/stripe/services/gift_cards/card_service.rbi +162 -0
  612. data/rbi/stripe/services/gift_cards/transaction_service.rbi +198 -0
  613. data/rbi/stripe/services/gift_cards_service.rbi +10 -0
  614. data/rbi/stripe/services/identity/verification_report_service.rbi +98 -0
  615. data/rbi/stripe/services/identity/verification_session_service.rbi +360 -0
  616. data/rbi/stripe/services/identity_service.rbi +10 -0
  617. data/rbi/stripe/services/invoice_item_service.rbi +505 -0
  618. data/rbi/stripe/services/invoice_line_item_service.rbi +320 -0
  619. data/rbi/stripe/services/invoice_payment_service.rbi +49 -0
  620. data/rbi/stripe/services/invoice_rendering_template_service.rbi +91 -0
  621. data/rbi/stripe/services/invoice_service.rbi +7138 -0
  622. data/rbi/stripe/services/invoice_upcoming_lines_service.rbi +2397 -0
  623. data/rbi/stripe/services/issuing/authorization_service.rbi +160 -0
  624. data/rbi/stripe/services/issuing/card_service.rbi +568 -0
  625. data/rbi/stripe/services/issuing/cardholder_service.rbi +668 -0
  626. data/rbi/stripe/services/issuing/credit_underwriting_record_service.rbi +580 -0
  627. data/rbi/stripe/services/issuing/dispute_service.rbi +824 -0
  628. data/rbi/stripe/services/issuing/dispute_settlement_detail_service.rbi +61 -0
  629. data/rbi/stripe/services/issuing/fraud_liability_debit_service.rbi +83 -0
  630. data/rbi/stripe/services/issuing/personalization_design_service.rbi +271 -0
  631. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +66 -0
  632. data/rbi/stripe/services/issuing/token_service.rbi +109 -0
  633. data/rbi/stripe/services/issuing/transaction_service.rbi +119 -0
  634. data/rbi/stripe/services/issuing_service.rbi +19 -0
  635. data/rbi/stripe/services/mandate_service.rbi +21 -0
  636. data/rbi/stripe/services/margin_service.rbi +119 -0
  637. data/rbi/stripe/services/order_line_item_service.rbi +35 -0
  638. data/rbi/stripe/services/order_service.rbi +2669 -0
  639. data/rbi/stripe/services/payment_attempt_record_service.rbi +39 -0
  640. data/rbi/stripe/services/payment_intent_service.rbi +13193 -0
  641. data/rbi/stripe/services/payment_link_line_item_service.rbi +35 -0
  642. data/rbi/stripe/services/payment_link_service.rbi +1447 -0
  643. data/rbi/stripe/services/payment_method_configuration_service.rbi +2465 -0
  644. data/rbi/stripe/services/payment_method_domain_service.rbi +123 -0
  645. data/rbi/stripe/services/payment_method_service.rbi +1032 -0
  646. data/rbi/stripe/services/payment_record_service.rbi +613 -0
  647. data/rbi/stripe/services/payout_service.rbi +228 -0
  648. data/rbi/stripe/services/plan_service.rbi +337 -0
  649. data/rbi/stripe/services/price_service.rbi +657 -0
  650. data/rbi/stripe/services/product_feature_service.rbi +76 -0
  651. data/rbi/stripe/services/product_service.rbi +596 -0
  652. data/rbi/stripe/services/promotion_code_service.rbi +244 -0
  653. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +35 -0
  654. data/rbi/stripe/services/quote_line_item_service.rbi +35 -0
  655. data/rbi/stripe/services/quote_line_service.rbi +35 -0
  656. data/rbi/stripe/services/quote_preview_invoice_service.rbi +35 -0
  657. data/rbi/stripe/services/quote_preview_subscription_schedule_service.rbi +35 -0
  658. data/rbi/stripe/services/quote_service.rbi +2830 -0
  659. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +95 -0
  660. data/rbi/stripe/services/radar/value_list_item_service.rbi +122 -0
  661. data/rbi/stripe/services/radar/value_list_service.rbi +160 -0
  662. data/rbi/stripe/services/radar_service.rbi +11 -0
  663. data/rbi/stripe/services/refund_service.rbi +208 -0
  664. data/rbi/stripe/services/reporting/report_run_service.rbi +152 -0
  665. data/rbi/stripe/services/reporting/report_type_service.rbi +37 -0
  666. data/rbi/stripe/services/reporting_service.rbi +10 -0
  667. data/rbi/stripe/services/review_service.rbi +93 -0
  668. data/rbi/stripe/services/setup_attempt_service.rbi +73 -0
  669. data/rbi/stripe/services/setup_intent_service.rbi +4204 -0
  670. data/rbi/stripe/services/shipping_rate_service.rbi +274 -0
  671. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +51 -0
  672. data/rbi/stripe/services/sigma_service.rbi +9 -0
  673. data/rbi/stripe/services/source_service.rbi +766 -0
  674. data/rbi/stripe/services/source_transaction_service.rbi +35 -0
  675. data/rbi/stripe/services/subscription_item_service.rbi +496 -0
  676. data/rbi/stripe/services/subscription_item_usage_record_service.rbi +41 -0
  677. data/rbi/stripe/services/subscription_item_usage_record_summary_service.rbi +37 -0
  678. data/rbi/stripe/services/subscription_schedule_service.rbi +2613 -0
  679. data/rbi/stripe/services/subscription_service.rbi +2207 -0
  680. data/rbi/stripe/services/tax/association_service.rbi +27 -0
  681. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +37 -0
  682. data/rbi/stripe/services/tax/calculation_service.rbi +267 -0
  683. data/rbi/stripe/services/tax/form_service.rbi +96 -0
  684. data/rbi/stripe/services/tax/registration_service.rbi +1495 -0
  685. data/rbi/stripe/services/tax/settings_service.rbi +106 -0
  686. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +37 -0
  687. data/rbi/stripe/services/tax/transaction_service.rbi +164 -0
  688. data/rbi/stripe/services/tax_code_service.rbi +49 -0
  689. data/rbi/stripe/services/tax_id_service.rbi +128 -0
  690. data/rbi/stripe/services/tax_rate_service.rbi +215 -0
  691. data/rbi/stripe/services/tax_service.rbi +14 -0
  692. data/rbi/stripe/services/terminal/configuration_service.rbi +976 -0
  693. data/rbi/stripe/services/terminal/connection_token_service.rbi +27 -0
  694. data/rbi/stripe/services/terminal/location_service.rbi +211 -0
  695. data/rbi/stripe/services/terminal/reader_collected_data_service.rbi +23 -0
  696. data/rbi/stripe/services/terminal/reader_service.rbi +591 -0
  697. data/rbi/stripe/services/terminal_service.rbi +13 -0
  698. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +892 -0
  699. data/rbi/stripe/services/test_helpers/customer_service.rbi +37 -0
  700. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +974 -0
  701. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +81 -0
  702. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +73 -0
  703. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +825 -0
  704. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  705. data/rbi/stripe/services/test_helpers/refund_service.rbi +23 -0
  706. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +69 -0
  707. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  708. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +100 -0
  709. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +69 -0
  710. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +137 -0
  711. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +137 -0
  712. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +130 -0
  713. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +130 -0
  714. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  715. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  716. data/rbi/stripe/services/token_service.rbi +1357 -0
  717. data/rbi/stripe/services/topup_service.rbi +200 -0
  718. data/rbi/stripe/services/transfer_reversal_service.rbi +111 -0
  719. data/rbi/stripe/services/transfer_service.rbi +174 -0
  720. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +95 -0
  721. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +100 -0
  722. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +226 -0
  723. data/rbi/stripe/services/treasury/financial_account_service.rbi +577 -0
  724. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +133 -0
  725. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +350 -0
  726. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +189 -0
  727. data/rbi/stripe/services/treasury/received_credit_service.rbi +79 -0
  728. data/rbi/stripe/services/treasury/received_debit_service.rbi +66 -0
  729. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +125 -0
  730. data/rbi/stripe/services/treasury/transaction_service.rbi +133 -0
  731. data/rbi/stripe/services/treasury_service.rbi +18 -0
  732. data/rbi/stripe/services/v1_services.rbi +83 -0
  733. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +43 -0
  734. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +46 -0
  735. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +20 -0
  736. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +60 -0
  737. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  738. data/rbi/stripe/services/v2/core/event_destination_service.rbi +228 -0
  739. data/rbi/stripe/services/v2/core/event_service.rbi +42 -0
  740. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  741. data/rbi/stripe/services/v2_services.rbi +10 -0
  742. data/rbi/stripe/services/webhook_endpoint_service.rbi +149 -0
  743. metadata +435 -4
@@ -0,0 +1,1447 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ class PaymentLinkService < StripeService
7
+ attr_reader :line_items
8
+ class ListParams < Stripe::RequestParams
9
+ # Only return payment links that are active or inactive (e.g., pass `false` to list all inactive payment links).
10
+ sig { returns(T::Boolean) }
11
+ attr_accessor :active
12
+
13
+ # 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.
14
+ sig { returns(String) }
15
+ attr_accessor :ending_before
16
+
17
+ # Specifies which fields in the response should be expanded.
18
+ sig { returns(T::Array[String]) }
19
+ attr_accessor :expand
20
+
21
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
22
+ sig { returns(Integer) }
23
+ attr_accessor :limit
24
+
25
+ # 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.
26
+ sig { returns(String) }
27
+ attr_accessor :starting_after
28
+
29
+ sig {
30
+ params(active: T::Boolean, ending_before: String, expand: T::Array[String], limit: Integer, starting_after: String).void
31
+ }
32
+ def initialize(
33
+ active: nil,
34
+ ending_before: nil,
35
+ expand: nil,
36
+ limit: nil,
37
+ starting_after: nil
38
+ ); end
39
+ end
40
+ class CreateParams < Stripe::RequestParams
41
+ class AfterCompletion < Stripe::RequestParams
42
+ class HostedConfirmation < Stripe::RequestParams
43
+ # A custom message to display to the customer after the purchase is complete.
44
+ sig { returns(String) }
45
+ attr_accessor :custom_message
46
+
47
+ sig { params(custom_message: String).void }
48
+ def initialize(custom_message: nil); end
49
+ end
50
+ class Redirect < Stripe::RequestParams
51
+ # 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.
52
+ sig { returns(String) }
53
+ attr_accessor :url
54
+
55
+ sig { params(url: String).void }
56
+ def initialize(url: nil); end
57
+ end
58
+ # Configuration when `type=hosted_confirmation`.
59
+ sig {
60
+ returns(::Stripe::PaymentLinkService::CreateParams::AfterCompletion::HostedConfirmation)
61
+ }
62
+ attr_accessor :hosted_confirmation
63
+
64
+ # Configuration when `type=redirect`.
65
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::AfterCompletion::Redirect) }
66
+ attr_accessor :redirect
67
+
68
+ # The specified behavior after the purchase is complete. Either `redirect` or `hosted_confirmation`.
69
+ sig { returns(String) }
70
+ attr_accessor :type
71
+
72
+ sig {
73
+ params(hosted_confirmation: ::Stripe::PaymentLinkService::CreateParams::AfterCompletion::HostedConfirmation, redirect: ::Stripe::PaymentLinkService::CreateParams::AfterCompletion::Redirect, type: String).void
74
+ }
75
+ def initialize(hosted_confirmation: nil, redirect: nil, type: nil); end
76
+ end
77
+ class AutomaticTax < Stripe::RequestParams
78
+ class Liability < Stripe::RequestParams
79
+ # The connected account being referenced when `type` is `account`.
80
+ sig { returns(String) }
81
+ attr_accessor :account
82
+
83
+ # Type of the account referenced in the request.
84
+ sig { returns(String) }
85
+ attr_accessor :type
86
+
87
+ sig { params(account: String, type: String).void }
88
+ def initialize(account: nil, type: nil); end
89
+ end
90
+ # Set to `true` to [calculate tax automatically](https://docs.stripe.com/tax) using the customer's location.
91
+ #
92
+ # Enabling this parameter causes the payment link to collect any billing address information necessary for tax calculation.
93
+ sig { returns(T::Boolean) }
94
+ attr_accessor :enabled
95
+
96
+ # 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.
97
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::AutomaticTax::Liability) }
98
+ attr_accessor :liability
99
+
100
+ sig {
101
+ params(enabled: T::Boolean, liability: ::Stripe::PaymentLinkService::CreateParams::AutomaticTax::Liability).void
102
+ }
103
+ def initialize(enabled: nil, liability: nil); end
104
+ end
105
+ class ConsentCollection < Stripe::RequestParams
106
+ class PaymentMethodReuseAgreement < Stripe::RequestParams
107
+ # Determines the position and visibility of the payment method reuse agreement in the UI. When set to `auto`, Stripe's
108
+ # defaults will be used. When set to `hidden`, the payment method reuse agreement text will always be hidden in the UI.
109
+ sig { returns(String) }
110
+ attr_accessor :position
111
+
112
+ sig { params(position: String).void }
113
+ def initialize(position: nil); end
114
+ end
115
+ # 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.
116
+ sig {
117
+ returns(::Stripe::PaymentLinkService::CreateParams::ConsentCollection::PaymentMethodReuseAgreement)
118
+ }
119
+ attr_accessor :payment_method_reuse_agreement
120
+
121
+ # If set to `auto`, enables the collection of customer consent for promotional communications. The Checkout
122
+ # Session will determine whether to display an option to opt into promotional communication
123
+ # from the merchant depending on the customer's locale. Only available to US merchants.
124
+ sig { returns(String) }
125
+ attr_accessor :promotions
126
+
127
+ # If set to `required`, it requires customers to check a terms of service checkbox before being able to pay.
128
+ # There must be a valid terms of service URL set in your [Dashboard settings](https://dashboard.stripe.com/settings/public).
129
+ sig { returns(String) }
130
+ attr_accessor :terms_of_service
131
+
132
+ sig {
133
+ params(payment_method_reuse_agreement: ::Stripe::PaymentLinkService::CreateParams::ConsentCollection::PaymentMethodReuseAgreement, promotions: String, terms_of_service: String).void
134
+ }
135
+ def initialize(
136
+ payment_method_reuse_agreement: nil,
137
+ promotions: nil,
138
+ terms_of_service: nil
139
+ ); end
140
+ end
141
+ class CustomField < Stripe::RequestParams
142
+ class Dropdown < Stripe::RequestParams
143
+ class Option < Stripe::RequestParams
144
+ # The label for the option, displayed to the customer. Up to 100 characters.
145
+ sig { returns(String) }
146
+ attr_accessor :label
147
+
148
+ # 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.
149
+ sig { returns(String) }
150
+ attr_accessor :value
151
+
152
+ sig { params(label: String, value: String).void }
153
+ def initialize(label: nil, value: nil); end
154
+ end
155
+ # The options available for the customer to select. Up to 200 options allowed.
156
+ sig {
157
+ returns(T::Array[::Stripe::PaymentLinkService::CreateParams::CustomField::Dropdown::Option])
158
+ }
159
+ attr_accessor :options
160
+
161
+ sig {
162
+ params(options: T::Array[::Stripe::PaymentLinkService::CreateParams::CustomField::Dropdown::Option]).void
163
+ }
164
+ def initialize(options: nil); end
165
+ end
166
+ class Label < Stripe::RequestParams
167
+ # Custom text for the label, displayed to the customer. Up to 50 characters.
168
+ sig { returns(String) }
169
+ attr_accessor :custom
170
+
171
+ # The type of the label.
172
+ sig { returns(String) }
173
+ attr_accessor :type
174
+
175
+ sig { params(custom: String, type: String).void }
176
+ def initialize(custom: nil, type: nil); end
177
+ end
178
+ class Numeric < Stripe::RequestParams
179
+ # The maximum character length constraint for the customer's input.
180
+ sig { returns(Integer) }
181
+ attr_accessor :maximum_length
182
+
183
+ # The minimum character length requirement for the customer's input.
184
+ sig { returns(Integer) }
185
+ attr_accessor :minimum_length
186
+
187
+ sig { params(maximum_length: Integer, minimum_length: Integer).void }
188
+ def initialize(maximum_length: nil, minimum_length: nil); end
189
+ end
190
+ class Text < Stripe::RequestParams
191
+ # The maximum character length constraint for the customer's input.
192
+ sig { returns(Integer) }
193
+ attr_accessor :maximum_length
194
+
195
+ # The minimum character length requirement for the customer's input.
196
+ sig { returns(Integer) }
197
+ attr_accessor :minimum_length
198
+
199
+ sig { params(maximum_length: Integer, minimum_length: Integer).void }
200
+ def initialize(maximum_length: nil, minimum_length: nil); end
201
+ end
202
+ # Configuration for `type=dropdown` fields.
203
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::CustomField::Dropdown) }
204
+ attr_accessor :dropdown
205
+
206
+ # 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.
207
+ sig { returns(String) }
208
+ attr_accessor :key
209
+
210
+ # The label for the field, displayed to the customer.
211
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::CustomField::Label) }
212
+ attr_accessor :label
213
+
214
+ # Configuration for `type=numeric` fields.
215
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::CustomField::Numeric) }
216
+ attr_accessor :numeric
217
+
218
+ # Whether the customer is required to complete the field before completing the Checkout Session. Defaults to `false`.
219
+ sig { returns(T::Boolean) }
220
+ attr_accessor :optional
221
+
222
+ # Configuration for `type=text` fields.
223
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::CustomField::Text) }
224
+ attr_accessor :text
225
+
226
+ # The type of the field.
227
+ sig { returns(String) }
228
+ attr_accessor :type
229
+
230
+ sig {
231
+ params(dropdown: ::Stripe::PaymentLinkService::CreateParams::CustomField::Dropdown, key: String, label: ::Stripe::PaymentLinkService::CreateParams::CustomField::Label, numeric: ::Stripe::PaymentLinkService::CreateParams::CustomField::Numeric, optional: T::Boolean, text: ::Stripe::PaymentLinkService::CreateParams::CustomField::Text, type: String).void
232
+ }
233
+ def initialize(
234
+ dropdown: nil,
235
+ key: nil,
236
+ label: nil,
237
+ numeric: nil,
238
+ optional: nil,
239
+ text: nil,
240
+ type: nil
241
+ ); end
242
+ end
243
+ class CustomText < Stripe::RequestParams
244
+ class AfterSubmit < Stripe::RequestParams
245
+ # Text may be up to 1200 characters in length.
246
+ sig { returns(String) }
247
+ attr_accessor :message
248
+
249
+ sig { params(message: String).void }
250
+ def initialize(message: nil); end
251
+ end
252
+ class ShippingAddress < Stripe::RequestParams
253
+ # Text may be up to 1200 characters in length.
254
+ sig { returns(String) }
255
+ attr_accessor :message
256
+
257
+ sig { params(message: String).void }
258
+ def initialize(message: nil); end
259
+ end
260
+ class Submit < Stripe::RequestParams
261
+ # Text may be up to 1200 characters in length.
262
+ sig { returns(String) }
263
+ attr_accessor :message
264
+
265
+ sig { params(message: String).void }
266
+ def initialize(message: nil); end
267
+ end
268
+ class TermsOfServiceAcceptance < Stripe::RequestParams
269
+ # Text may be up to 1200 characters in length.
270
+ sig { returns(String) }
271
+ attr_accessor :message
272
+
273
+ sig { params(message: String).void }
274
+ def initialize(message: nil); end
275
+ end
276
+ # Custom text that should be displayed after the payment confirmation button.
277
+ sig {
278
+ returns(T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::AfterSubmit))
279
+ }
280
+ attr_accessor :after_submit
281
+
282
+ # Custom text that should be displayed alongside shipping address collection.
283
+ sig {
284
+ returns(T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::ShippingAddress))
285
+ }
286
+ attr_accessor :shipping_address
287
+
288
+ # Custom text that should be displayed alongside the payment confirmation button.
289
+ sig { returns(T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::Submit)) }
290
+ attr_accessor :submit
291
+
292
+ # Custom text that should be displayed in place of the default terms of service agreement text.
293
+ sig {
294
+ returns(T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::TermsOfServiceAcceptance))
295
+ }
296
+ attr_accessor :terms_of_service_acceptance
297
+
298
+ sig {
299
+ params(after_submit: T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::AfterSubmit), shipping_address: T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::ShippingAddress), submit: T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::Submit), terms_of_service_acceptance: T.nilable(::Stripe::PaymentLinkService::CreateParams::CustomText::TermsOfServiceAcceptance)).void
300
+ }
301
+ def initialize(
302
+ after_submit: nil,
303
+ shipping_address: nil,
304
+ submit: nil,
305
+ terms_of_service_acceptance: nil
306
+ ); end
307
+ end
308
+ class InvoiceCreation < Stripe::RequestParams
309
+ class InvoiceData < Stripe::RequestParams
310
+ class CustomField < Stripe::RequestParams
311
+ # The name of the custom field. This may be up to 40 characters.
312
+ sig { returns(String) }
313
+ attr_accessor :name
314
+
315
+ # The value of the custom field. This may be up to 140 characters.
316
+ sig { returns(String) }
317
+ attr_accessor :value
318
+
319
+ sig { params(name: String, value: String).void }
320
+ def initialize(name: nil, value: nil); end
321
+ end
322
+ class Issuer < Stripe::RequestParams
323
+ # The connected account being referenced when `type` is `account`.
324
+ sig { returns(String) }
325
+ attr_accessor :account
326
+
327
+ # Type of the account referenced in the request.
328
+ sig { returns(String) }
329
+ attr_accessor :type
330
+
331
+ sig { params(account: String, type: String).void }
332
+ def initialize(account: nil, type: nil); end
333
+ end
334
+ class RenderingOptions < Stripe::RequestParams
335
+ # 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.
336
+ sig { returns(T.nilable(String)) }
337
+ attr_accessor :amount_tax_display
338
+
339
+ sig { params(amount_tax_display: T.nilable(String)).void }
340
+ def initialize(amount_tax_display: nil); end
341
+ end
342
+ # The account tax IDs associated with the invoice.
343
+ sig { returns(T.nilable(T::Array[String])) }
344
+ attr_accessor :account_tax_ids
345
+
346
+ # Default custom fields to be displayed on invoices for this customer.
347
+ sig {
348
+ returns(T.nilable(T::Array[::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::CustomField]))
349
+ }
350
+ attr_accessor :custom_fields
351
+
352
+ # An arbitrary string attached to the object. Often useful for displaying to users.
353
+ sig { returns(String) }
354
+ attr_accessor :description
355
+
356
+ # Default footer to be displayed on invoices for this customer.
357
+ sig { returns(String) }
358
+ attr_accessor :footer
359
+
360
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
361
+ sig {
362
+ returns(::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::Issuer)
363
+ }
364
+ attr_accessor :issuer
365
+
366
+ # 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`.
367
+ sig { returns(T.nilable(T::Hash[String, String])) }
368
+ attr_accessor :metadata
369
+
370
+ # Default options for invoice PDF rendering for this customer.
371
+ sig {
372
+ returns(T.nilable(::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::RenderingOptions))
373
+ }
374
+ attr_accessor :rendering_options
375
+
376
+ sig {
377
+ params(account_tax_ids: T.nilable(T::Array[String]), custom_fields: T.nilable(T::Array[::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::CustomField]), description: String, footer: String, issuer: ::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::Issuer, metadata: T.nilable(T::Hash[String, String]), rendering_options: T.nilable(::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData::RenderingOptions)).void
378
+ }
379
+ def initialize(
380
+ account_tax_ids: nil,
381
+ custom_fields: nil,
382
+ description: nil,
383
+ footer: nil,
384
+ issuer: nil,
385
+ metadata: nil,
386
+ rendering_options: nil
387
+ ); end
388
+ end
389
+ # Whether the feature is enabled
390
+ sig { returns(T::Boolean) }
391
+ attr_accessor :enabled
392
+
393
+ # Invoice PDF configuration.
394
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData) }
395
+ attr_accessor :invoice_data
396
+
397
+ sig {
398
+ params(enabled: T::Boolean, invoice_data: ::Stripe::PaymentLinkService::CreateParams::InvoiceCreation::InvoiceData).void
399
+ }
400
+ def initialize(enabled: nil, invoice_data: nil); end
401
+ end
402
+ class LineItem < Stripe::RequestParams
403
+ class AdjustableQuantity < Stripe::RequestParams
404
+ # Set to true if the quantity can be adjusted to any non-negative Integer.
405
+ sig { returns(T::Boolean) }
406
+ attr_accessor :enabled
407
+
408
+ # The maximum quantity the customer can purchase. By default this value is 99. You can specify a value up to 999.
409
+ sig { returns(Integer) }
410
+ attr_accessor :maximum
411
+
412
+ # 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.
413
+ sig { returns(Integer) }
414
+ attr_accessor :minimum
415
+
416
+ sig { params(enabled: T::Boolean, maximum: Integer, minimum: Integer).void }
417
+ def initialize(enabled: nil, maximum: nil, minimum: nil); end
418
+ end
419
+ # When set, provides configuration for this item’s quantity to be adjusted by the customer during checkout.
420
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::LineItem::AdjustableQuantity) }
421
+ attr_accessor :adjustable_quantity
422
+
423
+ # The ID of the [Price](https://stripe.com/docs/api/prices) or [Plan](https://stripe.com/docs/api/plans) object.
424
+ sig { returns(String) }
425
+ attr_accessor :price
426
+
427
+ # The quantity of the line item being purchased.
428
+ sig { returns(Integer) }
429
+ attr_accessor :quantity
430
+
431
+ sig {
432
+ params(adjustable_quantity: ::Stripe::PaymentLinkService::CreateParams::LineItem::AdjustableQuantity, price: String, quantity: Integer).void
433
+ }
434
+ def initialize(adjustable_quantity: nil, price: nil, quantity: nil); end
435
+ end
436
+ class PaymentIntentData < Stripe::RequestParams
437
+ # Controls when the funds will be captured from the customer's account.
438
+ sig { returns(String) }
439
+ attr_accessor :capture_method
440
+
441
+ # An arbitrary string attached to the object. Often useful for displaying to users.
442
+ sig { returns(String) }
443
+ attr_accessor :description
444
+
445
+ # 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.
446
+ sig { returns(T::Hash[String, String]) }
447
+ attr_accessor :metadata
448
+
449
+ # 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.
450
+ #
451
+ # When setting this to `on_session`, Checkout will show a notice to the customer that their payment details will be saved.
452
+ #
453
+ # 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.
454
+ #
455
+ # If a Customer has been provided or Checkout creates a new Customer,Checkout will attach the payment method to the Customer.
456
+ #
457
+ # 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.
458
+ #
459
+ # 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.
460
+ sig { returns(String) }
461
+ attr_accessor :setup_future_usage
462
+
463
+ # 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).
464
+ #
465
+ # 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.
466
+ sig { returns(String) }
467
+ attr_accessor :statement_descriptor
468
+
469
+ # 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.
470
+ sig { returns(String) }
471
+ attr_accessor :statement_descriptor_suffix
472
+
473
+ # 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.
474
+ sig { returns(String) }
475
+ attr_accessor :transfer_group
476
+
477
+ sig {
478
+ params(capture_method: String, description: String, metadata: T::Hash[String, String], setup_future_usage: String, statement_descriptor: String, statement_descriptor_suffix: String, transfer_group: String).void
479
+ }
480
+ def initialize(
481
+ capture_method: nil,
482
+ description: nil,
483
+ metadata: nil,
484
+ setup_future_usage: nil,
485
+ statement_descriptor: nil,
486
+ statement_descriptor_suffix: nil,
487
+ transfer_group: nil
488
+ ); end
489
+ end
490
+ class PhoneNumberCollection < Stripe::RequestParams
491
+ # Set to `true` to enable phone number collection.
492
+ sig { returns(T::Boolean) }
493
+ attr_accessor :enabled
494
+
495
+ sig { params(enabled: T::Boolean).void }
496
+ def initialize(enabled: nil); end
497
+ end
498
+ class Restrictions < Stripe::RequestParams
499
+ class CompletedSessions < Stripe::RequestParams
500
+ # The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.
501
+ sig { returns(Integer) }
502
+ attr_accessor :limit
503
+
504
+ sig { params(limit: Integer).void }
505
+ def initialize(limit: nil); end
506
+ end
507
+ # Configuration for the `completed_sessions` restriction type.
508
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::Restrictions::CompletedSessions) }
509
+ attr_accessor :completed_sessions
510
+
511
+ sig {
512
+ params(completed_sessions: ::Stripe::PaymentLinkService::CreateParams::Restrictions::CompletedSessions).void
513
+ }
514
+ def initialize(completed_sessions: nil); end
515
+ end
516
+ class ShippingAddressCollection < Stripe::RequestParams
517
+ # An array of two-letter ISO country codes representing which countries Checkout should provide as options for
518
+ # shipping locations.
519
+ sig { returns(T::Array[String]) }
520
+ attr_accessor :allowed_countries
521
+
522
+ sig { params(allowed_countries: T::Array[String]).void }
523
+ def initialize(allowed_countries: nil); end
524
+ end
525
+ class ShippingOption < Stripe::RequestParams
526
+ # The ID of the Shipping Rate to use for this shipping option.
527
+ sig { returns(String) }
528
+ attr_accessor :shipping_rate
529
+
530
+ sig { params(shipping_rate: String).void }
531
+ def initialize(shipping_rate: nil); end
532
+ end
533
+ class SubscriptionData < Stripe::RequestParams
534
+ class InvoiceSettings < Stripe::RequestParams
535
+ class Issuer < Stripe::RequestParams
536
+ # The connected account being referenced when `type` is `account`.
537
+ sig { returns(String) }
538
+ attr_accessor :account
539
+
540
+ # Type of the account referenced in the request.
541
+ sig { returns(String) }
542
+ attr_accessor :type
543
+
544
+ sig { params(account: String, type: String).void }
545
+ def initialize(account: nil, type: nil); end
546
+ end
547
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
548
+ sig {
549
+ returns(::Stripe::PaymentLinkService::CreateParams::SubscriptionData::InvoiceSettings::Issuer)
550
+ }
551
+ attr_accessor :issuer
552
+
553
+ sig {
554
+ params(issuer: ::Stripe::PaymentLinkService::CreateParams::SubscriptionData::InvoiceSettings::Issuer).void
555
+ }
556
+ def initialize(issuer: nil); end
557
+ end
558
+ class TrialSettings < Stripe::RequestParams
559
+ class EndBehavior < Stripe::RequestParams
560
+ # Indicates how the subscription should change when the trial ends if the user did not provide a payment method.
561
+ sig { returns(String) }
562
+ attr_accessor :missing_payment_method
563
+
564
+ sig { params(missing_payment_method: String).void }
565
+ def initialize(missing_payment_method: nil); end
566
+ end
567
+ # Defines how the subscription should behave when the user's free trial ends.
568
+ sig {
569
+ returns(::Stripe::PaymentLinkService::CreateParams::SubscriptionData::TrialSettings::EndBehavior)
570
+ }
571
+ attr_accessor :end_behavior
572
+
573
+ sig {
574
+ params(end_behavior: ::Stripe::PaymentLinkService::CreateParams::SubscriptionData::TrialSettings::EndBehavior).void
575
+ }
576
+ def initialize(end_behavior: nil); end
577
+ end
578
+ # 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.
579
+ sig { returns(String) }
580
+ attr_accessor :description
581
+
582
+ # All invoices will be billed using the specified settings.
583
+ sig {
584
+ returns(::Stripe::PaymentLinkService::CreateParams::SubscriptionData::InvoiceSettings)
585
+ }
586
+ attr_accessor :invoice_settings
587
+
588
+ # 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.
589
+ sig { returns(T::Hash[String, String]) }
590
+ attr_accessor :metadata
591
+
592
+ # Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.
593
+ sig { returns(Integer) }
594
+ attr_accessor :trial_period_days
595
+
596
+ # Settings related to subscription trials.
597
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::SubscriptionData::TrialSettings) }
598
+ attr_accessor :trial_settings
599
+
600
+ sig {
601
+ params(description: String, invoice_settings: ::Stripe::PaymentLinkService::CreateParams::SubscriptionData::InvoiceSettings, metadata: T::Hash[String, String], trial_period_days: Integer, trial_settings: ::Stripe::PaymentLinkService::CreateParams::SubscriptionData::TrialSettings).void
602
+ }
603
+ def initialize(
604
+ description: nil,
605
+ invoice_settings: nil,
606
+ metadata: nil,
607
+ trial_period_days: nil,
608
+ trial_settings: nil
609
+ ); end
610
+ end
611
+ class TaxIdCollection < Stripe::RequestParams
612
+ # Enable tax ID collection during checkout. Defaults to `false`.
613
+ sig { returns(T::Boolean) }
614
+ attr_accessor :enabled
615
+
616
+ # Describes whether a tax ID is required during checkout. Defaults to `never`.
617
+ sig { returns(String) }
618
+ attr_accessor :required
619
+
620
+ sig { params(enabled: T::Boolean, required: String).void }
621
+ def initialize(enabled: nil, required: nil); end
622
+ end
623
+ class TransferData < Stripe::RequestParams
624
+ # The amount that will be transferred automatically when a charge succeeds.
625
+ sig { returns(Integer) }
626
+ attr_accessor :amount
627
+
628
+ # If specified, successful charges will be attributed to the destination
629
+ # account for tax reporting, and the funds from charges will be transferred
630
+ # to the destination account. The ID of the resulting transfer will be
631
+ # returned on the successful charge's `transfer` field.
632
+ sig { returns(String) }
633
+ attr_accessor :destination
634
+
635
+ sig { params(amount: Integer, destination: String).void }
636
+ def initialize(amount: nil, destination: nil); end
637
+ end
638
+ # Behavior after the purchase is complete.
639
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::AfterCompletion) }
640
+ attr_accessor :after_completion
641
+
642
+ # Enables user redeemable promotion codes.
643
+ sig { returns(T::Boolean) }
644
+ attr_accessor :allow_promotion_codes
645
+
646
+ # 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.
647
+ sig { returns(Integer) }
648
+ attr_accessor :application_fee_amount
649
+
650
+ # 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.
651
+ sig { returns(Float) }
652
+ attr_accessor :application_fee_percent
653
+
654
+ # Configuration for automatic tax collection.
655
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::AutomaticTax) }
656
+ attr_accessor :automatic_tax
657
+
658
+ # Configuration for collecting the customer's billing address. Defaults to `auto`.
659
+ sig { returns(String) }
660
+ attr_accessor :billing_address_collection
661
+
662
+ # Configure fields to gather active consent from customers.
663
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::ConsentCollection) }
664
+ attr_accessor :consent_collection
665
+
666
+ # 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.
667
+ sig { returns(String) }
668
+ attr_accessor :currency
669
+
670
+ # Collect additional information from your customer using custom fields. Up to 3 fields are supported.
671
+ sig { returns(T::Array[::Stripe::PaymentLinkService::CreateParams::CustomField]) }
672
+ attr_accessor :custom_fields
673
+
674
+ # Display additional text for your customers using custom text.
675
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::CustomText) }
676
+ attr_accessor :custom_text
677
+
678
+ # 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).
679
+ sig { returns(String) }
680
+ attr_accessor :customer_creation
681
+
682
+ # Specifies which fields in the response should be expanded.
683
+ sig { returns(T::Array[String]) }
684
+ attr_accessor :expand
685
+
686
+ # The custom message to be displayed to a customer when a payment link is no longer active.
687
+ sig { returns(String) }
688
+ attr_accessor :inactive_message
689
+
690
+ # Generate a post-purchase Invoice for one-time payments.
691
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::InvoiceCreation) }
692
+ attr_accessor :invoice_creation
693
+
694
+ # The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported.
695
+ sig { returns(T::Array[::Stripe::PaymentLinkService::CreateParams::LineItem]) }
696
+ attr_accessor :line_items
697
+
698
+ # 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.
699
+ sig { returns(T::Hash[String, String]) }
700
+ attr_accessor :metadata
701
+
702
+ # The account on behalf of which to charge.
703
+ sig { returns(String) }
704
+ attr_accessor :on_behalf_of
705
+
706
+ # A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in `payment` mode.
707
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::PaymentIntentData) }
708
+ attr_accessor :payment_intent_data
709
+
710
+ # 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.
711
+ #
712
+ # Can only be set in `subscription` mode. Defaults to `always`.
713
+ #
714
+ # 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).
715
+ sig { returns(String) }
716
+ attr_accessor :payment_method_collection
717
+
718
+ # 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)).
719
+ sig { returns(T::Array[String]) }
720
+ attr_accessor :payment_method_types
721
+
722
+ # Controls phone number collection settings during checkout.
723
+ #
724
+ # We recommend that you review your privacy policy and check with your legal contacts.
725
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::PhoneNumberCollection) }
726
+ attr_accessor :phone_number_collection
727
+
728
+ # Settings that restrict the usage of a payment link.
729
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::Restrictions) }
730
+ attr_accessor :restrictions
731
+
732
+ # Configuration for collecting the customer's shipping address.
733
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::ShippingAddressCollection) }
734
+ attr_accessor :shipping_address_collection
735
+
736
+ # The shipping rate options to apply to [checkout sessions](https://stripe.com/docs/api/checkout/sessions) created by this payment link.
737
+ sig { returns(T::Array[::Stripe::PaymentLinkService::CreateParams::ShippingOption]) }
738
+ attr_accessor :shipping_options
739
+
740
+ # 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`).
741
+ sig { returns(String) }
742
+ attr_accessor :submit_type
743
+
744
+ # 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`.
745
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::SubscriptionData) }
746
+ attr_accessor :subscription_data
747
+
748
+ # Controls tax ID collection during checkout.
749
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::TaxIdCollection) }
750
+ attr_accessor :tax_id_collection
751
+
752
+ # The account (if any) the payments will be attributed to for tax reporting, and where funds from each payment will be transferred to.
753
+ sig { returns(::Stripe::PaymentLinkService::CreateParams::TransferData) }
754
+ attr_accessor :transfer_data
755
+
756
+ sig {
757
+ params(after_completion: ::Stripe::PaymentLinkService::CreateParams::AfterCompletion, allow_promotion_codes: T::Boolean, application_fee_amount: Integer, application_fee_percent: Float, automatic_tax: ::Stripe::PaymentLinkService::CreateParams::AutomaticTax, billing_address_collection: String, consent_collection: ::Stripe::PaymentLinkService::CreateParams::ConsentCollection, currency: String, custom_fields: T::Array[::Stripe::PaymentLinkService::CreateParams::CustomField], custom_text: ::Stripe::PaymentLinkService::CreateParams::CustomText, customer_creation: String, expand: T::Array[String], inactive_message: String, invoice_creation: ::Stripe::PaymentLinkService::CreateParams::InvoiceCreation, line_items: T::Array[::Stripe::PaymentLinkService::CreateParams::LineItem], metadata: T::Hash[String, String], on_behalf_of: String, payment_intent_data: ::Stripe::PaymentLinkService::CreateParams::PaymentIntentData, payment_method_collection: String, payment_method_types: T::Array[String], phone_number_collection: ::Stripe::PaymentLinkService::CreateParams::PhoneNumberCollection, restrictions: ::Stripe::PaymentLinkService::CreateParams::Restrictions, shipping_address_collection: ::Stripe::PaymentLinkService::CreateParams::ShippingAddressCollection, shipping_options: T::Array[::Stripe::PaymentLinkService::CreateParams::ShippingOption], submit_type: String, subscription_data: ::Stripe::PaymentLinkService::CreateParams::SubscriptionData, tax_id_collection: ::Stripe::PaymentLinkService::CreateParams::TaxIdCollection, transfer_data: ::Stripe::PaymentLinkService::CreateParams::TransferData).void
758
+ }
759
+ def initialize(
760
+ after_completion: nil,
761
+ allow_promotion_codes: nil,
762
+ application_fee_amount: nil,
763
+ application_fee_percent: nil,
764
+ automatic_tax: nil,
765
+ billing_address_collection: nil,
766
+ consent_collection: nil,
767
+ currency: nil,
768
+ custom_fields: nil,
769
+ custom_text: nil,
770
+ customer_creation: nil,
771
+ expand: nil,
772
+ inactive_message: nil,
773
+ invoice_creation: nil,
774
+ line_items: nil,
775
+ metadata: nil,
776
+ on_behalf_of: nil,
777
+ payment_intent_data: nil,
778
+ payment_method_collection: nil,
779
+ payment_method_types: nil,
780
+ phone_number_collection: nil,
781
+ restrictions: nil,
782
+ shipping_address_collection: nil,
783
+ shipping_options: nil,
784
+ submit_type: nil,
785
+ subscription_data: nil,
786
+ tax_id_collection: nil,
787
+ transfer_data: nil
788
+ ); end
789
+ end
790
+ class RetrieveParams < Stripe::RequestParams
791
+ # Specifies which fields in the response should be expanded.
792
+ sig { returns(T::Array[String]) }
793
+ attr_accessor :expand
794
+
795
+ sig { params(expand: T::Array[String]).void }
796
+ def initialize(expand: nil); end
797
+ end
798
+ class UpdateParams < Stripe::RequestParams
799
+ class AfterCompletion < Stripe::RequestParams
800
+ class HostedConfirmation < Stripe::RequestParams
801
+ # A custom message to display to the customer after the purchase is complete.
802
+ sig { returns(String) }
803
+ attr_accessor :custom_message
804
+
805
+ sig { params(custom_message: String).void }
806
+ def initialize(custom_message: nil); end
807
+ end
808
+ class Redirect < Stripe::RequestParams
809
+ # 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.
810
+ sig { returns(String) }
811
+ attr_accessor :url
812
+
813
+ sig { params(url: String).void }
814
+ def initialize(url: nil); end
815
+ end
816
+ # Configuration when `type=hosted_confirmation`.
817
+ sig {
818
+ returns(::Stripe::PaymentLinkService::UpdateParams::AfterCompletion::HostedConfirmation)
819
+ }
820
+ attr_accessor :hosted_confirmation
821
+
822
+ # Configuration when `type=redirect`.
823
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::AfterCompletion::Redirect) }
824
+ attr_accessor :redirect
825
+
826
+ # The specified behavior after the purchase is complete. Either `redirect` or `hosted_confirmation`.
827
+ sig { returns(String) }
828
+ attr_accessor :type
829
+
830
+ sig {
831
+ params(hosted_confirmation: ::Stripe::PaymentLinkService::UpdateParams::AfterCompletion::HostedConfirmation, redirect: ::Stripe::PaymentLinkService::UpdateParams::AfterCompletion::Redirect, type: String).void
832
+ }
833
+ def initialize(hosted_confirmation: nil, redirect: nil, type: nil); end
834
+ end
835
+ class AutomaticTax < Stripe::RequestParams
836
+ class Liability < Stripe::RequestParams
837
+ # The connected account being referenced when `type` is `account`.
838
+ sig { returns(String) }
839
+ attr_accessor :account
840
+
841
+ # Type of the account referenced in the request.
842
+ sig { returns(String) }
843
+ attr_accessor :type
844
+
845
+ sig { params(account: String, type: String).void }
846
+ def initialize(account: nil, type: nil); end
847
+ end
848
+ # Set to `true` to [calculate tax automatically](https://docs.stripe.com/tax) using the customer's location.
849
+ #
850
+ # Enabling this parameter causes the payment link to collect any billing address information necessary for tax calculation.
851
+ sig { returns(T::Boolean) }
852
+ attr_accessor :enabled
853
+
854
+ # 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.
855
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::AutomaticTax::Liability) }
856
+ attr_accessor :liability
857
+
858
+ sig {
859
+ params(enabled: T::Boolean, liability: ::Stripe::PaymentLinkService::UpdateParams::AutomaticTax::Liability).void
860
+ }
861
+ def initialize(enabled: nil, liability: nil); end
862
+ end
863
+ class CustomField < Stripe::RequestParams
864
+ class Dropdown < Stripe::RequestParams
865
+ class Option < Stripe::RequestParams
866
+ # The label for the option, displayed to the customer. Up to 100 characters.
867
+ sig { returns(String) }
868
+ attr_accessor :label
869
+
870
+ # 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.
871
+ sig { returns(String) }
872
+ attr_accessor :value
873
+
874
+ sig { params(label: String, value: String).void }
875
+ def initialize(label: nil, value: nil); end
876
+ end
877
+ # The options available for the customer to select. Up to 200 options allowed.
878
+ sig {
879
+ returns(T::Array[::Stripe::PaymentLinkService::UpdateParams::CustomField::Dropdown::Option])
880
+ }
881
+ attr_accessor :options
882
+
883
+ sig {
884
+ params(options: T::Array[::Stripe::PaymentLinkService::UpdateParams::CustomField::Dropdown::Option]).void
885
+ }
886
+ def initialize(options: nil); end
887
+ end
888
+ class Label < Stripe::RequestParams
889
+ # Custom text for the label, displayed to the customer. Up to 50 characters.
890
+ sig { returns(String) }
891
+ attr_accessor :custom
892
+
893
+ # The type of the label.
894
+ sig { returns(String) }
895
+ attr_accessor :type
896
+
897
+ sig { params(custom: String, type: String).void }
898
+ def initialize(custom: nil, type: nil); end
899
+ end
900
+ class Numeric < Stripe::RequestParams
901
+ # The maximum character length constraint for the customer's input.
902
+ sig { returns(Integer) }
903
+ attr_accessor :maximum_length
904
+
905
+ # The minimum character length requirement for the customer's input.
906
+ sig { returns(Integer) }
907
+ attr_accessor :minimum_length
908
+
909
+ sig { params(maximum_length: Integer, minimum_length: Integer).void }
910
+ def initialize(maximum_length: nil, minimum_length: nil); end
911
+ end
912
+ class Text < Stripe::RequestParams
913
+ # The maximum character length constraint for the customer's input.
914
+ sig { returns(Integer) }
915
+ attr_accessor :maximum_length
916
+
917
+ # The minimum character length requirement for the customer's input.
918
+ sig { returns(Integer) }
919
+ attr_accessor :minimum_length
920
+
921
+ sig { params(maximum_length: Integer, minimum_length: Integer).void }
922
+ def initialize(maximum_length: nil, minimum_length: nil); end
923
+ end
924
+ # Configuration for `type=dropdown` fields.
925
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::CustomField::Dropdown) }
926
+ attr_accessor :dropdown
927
+
928
+ # 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.
929
+ sig { returns(String) }
930
+ attr_accessor :key
931
+
932
+ # The label for the field, displayed to the customer.
933
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::CustomField::Label) }
934
+ attr_accessor :label
935
+
936
+ # Configuration for `type=numeric` fields.
937
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::CustomField::Numeric) }
938
+ attr_accessor :numeric
939
+
940
+ # Whether the customer is required to complete the field before completing the Checkout Session. Defaults to `false`.
941
+ sig { returns(T::Boolean) }
942
+ attr_accessor :optional
943
+
944
+ # Configuration for `type=text` fields.
945
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::CustomField::Text) }
946
+ attr_accessor :text
947
+
948
+ # The type of the field.
949
+ sig { returns(String) }
950
+ attr_accessor :type
951
+
952
+ sig {
953
+ params(dropdown: ::Stripe::PaymentLinkService::UpdateParams::CustomField::Dropdown, key: String, label: ::Stripe::PaymentLinkService::UpdateParams::CustomField::Label, numeric: ::Stripe::PaymentLinkService::UpdateParams::CustomField::Numeric, optional: T::Boolean, text: ::Stripe::PaymentLinkService::UpdateParams::CustomField::Text, type: String).void
954
+ }
955
+ def initialize(
956
+ dropdown: nil,
957
+ key: nil,
958
+ label: nil,
959
+ numeric: nil,
960
+ optional: nil,
961
+ text: nil,
962
+ type: nil
963
+ ); end
964
+ end
965
+ class CustomText < Stripe::RequestParams
966
+ class AfterSubmit < Stripe::RequestParams
967
+ # Text may be up to 1200 characters in length.
968
+ sig { returns(String) }
969
+ attr_accessor :message
970
+
971
+ sig { params(message: String).void }
972
+ def initialize(message: nil); end
973
+ end
974
+ class ShippingAddress < Stripe::RequestParams
975
+ # Text may be up to 1200 characters in length.
976
+ sig { returns(String) }
977
+ attr_accessor :message
978
+
979
+ sig { params(message: String).void }
980
+ def initialize(message: nil); end
981
+ end
982
+ class Submit < Stripe::RequestParams
983
+ # Text may be up to 1200 characters in length.
984
+ sig { returns(String) }
985
+ attr_accessor :message
986
+
987
+ sig { params(message: String).void }
988
+ def initialize(message: nil); end
989
+ end
990
+ class TermsOfServiceAcceptance < Stripe::RequestParams
991
+ # Text may be up to 1200 characters in length.
992
+ sig { returns(String) }
993
+ attr_accessor :message
994
+
995
+ sig { params(message: String).void }
996
+ def initialize(message: nil); end
997
+ end
998
+ # Custom text that should be displayed after the payment confirmation button.
999
+ sig {
1000
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::AfterSubmit))
1001
+ }
1002
+ attr_accessor :after_submit
1003
+
1004
+ # Custom text that should be displayed alongside shipping address collection.
1005
+ sig {
1006
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::ShippingAddress))
1007
+ }
1008
+ attr_accessor :shipping_address
1009
+
1010
+ # Custom text that should be displayed alongside the payment confirmation button.
1011
+ sig { returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::Submit)) }
1012
+ attr_accessor :submit
1013
+
1014
+ # Custom text that should be displayed in place of the default terms of service agreement text.
1015
+ sig {
1016
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::TermsOfServiceAcceptance))
1017
+ }
1018
+ attr_accessor :terms_of_service_acceptance
1019
+
1020
+ sig {
1021
+ params(after_submit: T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::AfterSubmit), shipping_address: T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::ShippingAddress), submit: T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::Submit), terms_of_service_acceptance: T.nilable(::Stripe::PaymentLinkService::UpdateParams::CustomText::TermsOfServiceAcceptance)).void
1022
+ }
1023
+ def initialize(
1024
+ after_submit: nil,
1025
+ shipping_address: nil,
1026
+ submit: nil,
1027
+ terms_of_service_acceptance: nil
1028
+ ); end
1029
+ end
1030
+ class InvoiceCreation < Stripe::RequestParams
1031
+ class InvoiceData < Stripe::RequestParams
1032
+ class CustomField < Stripe::RequestParams
1033
+ # The name of the custom field. This may be up to 40 characters.
1034
+ sig { returns(String) }
1035
+ attr_accessor :name
1036
+
1037
+ # The value of the custom field. This may be up to 140 characters.
1038
+ sig { returns(String) }
1039
+ attr_accessor :value
1040
+
1041
+ sig { params(name: String, value: String).void }
1042
+ def initialize(name: nil, value: nil); end
1043
+ end
1044
+ class Issuer < Stripe::RequestParams
1045
+ # The connected account being referenced when `type` is `account`.
1046
+ sig { returns(String) }
1047
+ attr_accessor :account
1048
+
1049
+ # Type of the account referenced in the request.
1050
+ sig { returns(String) }
1051
+ attr_accessor :type
1052
+
1053
+ sig { params(account: String, type: String).void }
1054
+ def initialize(account: nil, type: nil); end
1055
+ end
1056
+ class RenderingOptions < Stripe::RequestParams
1057
+ # 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.
1058
+ sig { returns(T.nilable(String)) }
1059
+ attr_accessor :amount_tax_display
1060
+
1061
+ sig { params(amount_tax_display: T.nilable(String)).void }
1062
+ def initialize(amount_tax_display: nil); end
1063
+ end
1064
+ # The account tax IDs associated with the invoice.
1065
+ sig { returns(T.nilable(T::Array[String])) }
1066
+ attr_accessor :account_tax_ids
1067
+
1068
+ # Default custom fields to be displayed on invoices for this customer.
1069
+ sig {
1070
+ returns(T.nilable(T::Array[::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::CustomField]))
1071
+ }
1072
+ attr_accessor :custom_fields
1073
+
1074
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1075
+ sig { returns(String) }
1076
+ attr_accessor :description
1077
+
1078
+ # Default footer to be displayed on invoices for this customer.
1079
+ sig { returns(String) }
1080
+ attr_accessor :footer
1081
+
1082
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
1083
+ sig {
1084
+ returns(::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::Issuer)
1085
+ }
1086
+ attr_accessor :issuer
1087
+
1088
+ # 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`.
1089
+ sig { returns(T.nilable(T::Hash[String, String])) }
1090
+ attr_accessor :metadata
1091
+
1092
+ # Default options for invoice PDF rendering for this customer.
1093
+ sig {
1094
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::RenderingOptions))
1095
+ }
1096
+ attr_accessor :rendering_options
1097
+
1098
+ sig {
1099
+ params(account_tax_ids: T.nilable(T::Array[String]), custom_fields: T.nilable(T::Array[::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::CustomField]), description: String, footer: String, issuer: ::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::Issuer, metadata: T.nilable(T::Hash[String, String]), rendering_options: T.nilable(::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData::RenderingOptions)).void
1100
+ }
1101
+ def initialize(
1102
+ account_tax_ids: nil,
1103
+ custom_fields: nil,
1104
+ description: nil,
1105
+ footer: nil,
1106
+ issuer: nil,
1107
+ metadata: nil,
1108
+ rendering_options: nil
1109
+ ); end
1110
+ end
1111
+ # Whether the feature is enabled
1112
+ sig { returns(T::Boolean) }
1113
+ attr_accessor :enabled
1114
+
1115
+ # Invoice PDF configuration.
1116
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData) }
1117
+ attr_accessor :invoice_data
1118
+
1119
+ sig {
1120
+ params(enabled: T::Boolean, invoice_data: ::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation::InvoiceData).void
1121
+ }
1122
+ def initialize(enabled: nil, invoice_data: nil); end
1123
+ end
1124
+ class LineItem < Stripe::RequestParams
1125
+ class AdjustableQuantity < Stripe::RequestParams
1126
+ # Set to true if the quantity can be adjusted to any non-negative Integer.
1127
+ sig { returns(T::Boolean) }
1128
+ attr_accessor :enabled
1129
+
1130
+ # The maximum quantity the customer can purchase. By default this value is 99. You can specify a value up to 999.
1131
+ sig { returns(Integer) }
1132
+ attr_accessor :maximum
1133
+
1134
+ # 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.
1135
+ sig { returns(Integer) }
1136
+ attr_accessor :minimum
1137
+
1138
+ sig { params(enabled: T::Boolean, maximum: Integer, minimum: Integer).void }
1139
+ def initialize(enabled: nil, maximum: nil, minimum: nil); end
1140
+ end
1141
+ # When set, provides configuration for this item’s quantity to be adjusted by the customer during checkout.
1142
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::LineItem::AdjustableQuantity) }
1143
+ attr_accessor :adjustable_quantity
1144
+
1145
+ # The ID of an existing line item on the payment link.
1146
+ sig { returns(String) }
1147
+ attr_accessor :id
1148
+
1149
+ # The quantity of the line item being purchased.
1150
+ sig { returns(Integer) }
1151
+ attr_accessor :quantity
1152
+
1153
+ sig {
1154
+ params(adjustable_quantity: ::Stripe::PaymentLinkService::UpdateParams::LineItem::AdjustableQuantity, id: String, quantity: Integer).void
1155
+ }
1156
+ def initialize(adjustable_quantity: nil, id: nil, quantity: nil); end
1157
+ end
1158
+ class PaymentIntentData < Stripe::RequestParams
1159
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1160
+ sig { returns(T.nilable(String)) }
1161
+ attr_accessor :description
1162
+
1163
+ # 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.
1164
+ sig { returns(T.nilable(T::Hash[String, String])) }
1165
+ attr_accessor :metadata
1166
+
1167
+ # 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).
1168
+ #
1169
+ # 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.
1170
+ sig { returns(T.nilable(String)) }
1171
+ attr_accessor :statement_descriptor
1172
+
1173
+ # 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.
1174
+ sig { returns(T.nilable(String)) }
1175
+ attr_accessor :statement_descriptor_suffix
1176
+
1177
+ # 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.
1178
+ sig { returns(T.nilable(String)) }
1179
+ attr_accessor :transfer_group
1180
+
1181
+ sig {
1182
+ params(description: T.nilable(String), metadata: T.nilable(T::Hash[String, String]), statement_descriptor: T.nilable(String), statement_descriptor_suffix: T.nilable(String), transfer_group: T.nilable(String)).void
1183
+ }
1184
+ def initialize(
1185
+ description: nil,
1186
+ metadata: nil,
1187
+ statement_descriptor: nil,
1188
+ statement_descriptor_suffix: nil,
1189
+ transfer_group: nil
1190
+ ); end
1191
+ end
1192
+ class Restrictions < Stripe::RequestParams
1193
+ class CompletedSessions < Stripe::RequestParams
1194
+ # The maximum number of checkout sessions that can be completed for the `completed_sessions` restriction to be met.
1195
+ sig { returns(Integer) }
1196
+ attr_accessor :limit
1197
+
1198
+ sig { params(limit: Integer).void }
1199
+ def initialize(limit: nil); end
1200
+ end
1201
+ # Configuration for the `completed_sessions` restriction type.
1202
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::Restrictions::CompletedSessions) }
1203
+ attr_accessor :completed_sessions
1204
+
1205
+ sig {
1206
+ params(completed_sessions: ::Stripe::PaymentLinkService::UpdateParams::Restrictions::CompletedSessions).void
1207
+ }
1208
+ def initialize(completed_sessions: nil); end
1209
+ end
1210
+ class ShippingAddressCollection < Stripe::RequestParams
1211
+ # An array of two-letter ISO country codes representing which countries Checkout should provide as options for
1212
+ # shipping locations.
1213
+ sig { returns(T::Array[String]) }
1214
+ attr_accessor :allowed_countries
1215
+
1216
+ sig { params(allowed_countries: T::Array[String]).void }
1217
+ def initialize(allowed_countries: nil); end
1218
+ end
1219
+ class SubscriptionData < Stripe::RequestParams
1220
+ class InvoiceSettings < Stripe::RequestParams
1221
+ class Issuer < Stripe::RequestParams
1222
+ # The connected account being referenced when `type` is `account`.
1223
+ sig { returns(String) }
1224
+ attr_accessor :account
1225
+
1226
+ # Type of the account referenced in the request.
1227
+ sig { returns(String) }
1228
+ attr_accessor :type
1229
+
1230
+ sig { params(account: String, type: String).void }
1231
+ def initialize(account: nil, type: nil); end
1232
+ end
1233
+ # The connected account that issues the invoice. The invoice is presented with the branding and support information of the specified account.
1234
+ sig {
1235
+ returns(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::InvoiceSettings::Issuer)
1236
+ }
1237
+ attr_accessor :issuer
1238
+
1239
+ sig {
1240
+ params(issuer: ::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::InvoiceSettings::Issuer).void
1241
+ }
1242
+ def initialize(issuer: nil); end
1243
+ end
1244
+ class TrialSettings < Stripe::RequestParams
1245
+ class EndBehavior < Stripe::RequestParams
1246
+ # Indicates how the subscription should change when the trial ends if the user did not provide a payment method.
1247
+ sig { returns(String) }
1248
+ attr_accessor :missing_payment_method
1249
+
1250
+ sig { params(missing_payment_method: String).void }
1251
+ def initialize(missing_payment_method: nil); end
1252
+ end
1253
+ # Defines how the subscription should behave when the user's free trial ends.
1254
+ sig {
1255
+ returns(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::TrialSettings::EndBehavior)
1256
+ }
1257
+ attr_accessor :end_behavior
1258
+
1259
+ sig {
1260
+ params(end_behavior: ::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::TrialSettings::EndBehavior).void
1261
+ }
1262
+ def initialize(end_behavior: nil); end
1263
+ end
1264
+ # All invoices will be billed using the specified settings.
1265
+ sig {
1266
+ returns(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::InvoiceSettings)
1267
+ }
1268
+ attr_accessor :invoice_settings
1269
+
1270
+ # 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.
1271
+ sig { returns(T.nilable(T::Hash[String, String])) }
1272
+ attr_accessor :metadata
1273
+
1274
+ # Integer representing the number of trial period days before the customer is charged for the first time. Has to be at least 1.
1275
+ sig { returns(T.nilable(Integer)) }
1276
+ attr_accessor :trial_period_days
1277
+
1278
+ # Settings related to subscription trials.
1279
+ sig {
1280
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::TrialSettings))
1281
+ }
1282
+ attr_accessor :trial_settings
1283
+
1284
+ sig {
1285
+ params(invoice_settings: ::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::InvoiceSettings, metadata: T.nilable(T::Hash[String, String]), trial_period_days: T.nilable(Integer), trial_settings: T.nilable(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData::TrialSettings)).void
1286
+ }
1287
+ def initialize(
1288
+ invoice_settings: nil,
1289
+ metadata: nil,
1290
+ trial_period_days: nil,
1291
+ trial_settings: nil
1292
+ ); end
1293
+ end
1294
+ class TaxIdCollection < Stripe::RequestParams
1295
+ # Enable tax ID collection during checkout. Defaults to `false`.
1296
+ sig { returns(T::Boolean) }
1297
+ attr_accessor :enabled
1298
+
1299
+ # Describes whether a tax ID is required during checkout. Defaults to `never`.
1300
+ sig { returns(String) }
1301
+ attr_accessor :required
1302
+
1303
+ sig { params(enabled: T::Boolean, required: String).void }
1304
+ def initialize(enabled: nil, required: nil); end
1305
+ end
1306
+ # 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.
1307
+ sig { returns(T::Boolean) }
1308
+ attr_accessor :active
1309
+
1310
+ # Behavior after the purchase is complete.
1311
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::AfterCompletion) }
1312
+ attr_accessor :after_completion
1313
+
1314
+ # Enables user redeemable promotion codes.
1315
+ sig { returns(T::Boolean) }
1316
+ attr_accessor :allow_promotion_codes
1317
+
1318
+ # Configuration for automatic tax collection.
1319
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::AutomaticTax) }
1320
+ attr_accessor :automatic_tax
1321
+
1322
+ # Configuration for collecting the customer's billing address. Defaults to `auto`.
1323
+ sig { returns(String) }
1324
+ attr_accessor :billing_address_collection
1325
+
1326
+ # Collect additional information from your customer using custom fields. Up to 3 fields are supported.
1327
+ sig { returns(T.nilable(T::Array[::Stripe::PaymentLinkService::UpdateParams::CustomField])) }
1328
+ attr_accessor :custom_fields
1329
+
1330
+ # Display additional text for your customers using custom text.
1331
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::CustomText) }
1332
+ attr_accessor :custom_text
1333
+
1334
+ # 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).
1335
+ sig { returns(String) }
1336
+ attr_accessor :customer_creation
1337
+
1338
+ # Specifies which fields in the response should be expanded.
1339
+ sig { returns(T::Array[String]) }
1340
+ attr_accessor :expand
1341
+
1342
+ # The custom message to be displayed to a customer when a payment link is no longer active.
1343
+ sig { returns(T.nilable(String)) }
1344
+ attr_accessor :inactive_message
1345
+
1346
+ # Generate a post-purchase Invoice for one-time payments.
1347
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation) }
1348
+ attr_accessor :invoice_creation
1349
+
1350
+ # The line items representing what is being sold. Each line item represents an item being sold. Up to 20 line items are supported.
1351
+ sig { returns(T::Array[::Stripe::PaymentLinkService::UpdateParams::LineItem]) }
1352
+ attr_accessor :line_items
1353
+
1354
+ # 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.
1355
+ sig { returns(T::Hash[String, String]) }
1356
+ attr_accessor :metadata
1357
+
1358
+ # A subset of parameters to be passed to PaymentIntent creation for Checkout Sessions in `payment` mode.
1359
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::PaymentIntentData) }
1360
+ attr_accessor :payment_intent_data
1361
+
1362
+ # 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.
1363
+ #
1364
+ # Can only be set in `subscription` mode. Defaults to `always`.
1365
+ #
1366
+ # 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).
1367
+ sig { returns(String) }
1368
+ attr_accessor :payment_method_collection
1369
+
1370
+ # 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).
1371
+ sig { returns(T.nilable(T::Array[String])) }
1372
+ attr_accessor :payment_method_types
1373
+
1374
+ # Settings that restrict the usage of a payment link.
1375
+ sig { returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::Restrictions)) }
1376
+ attr_accessor :restrictions
1377
+
1378
+ # Configuration for collecting the customer's shipping address.
1379
+ sig {
1380
+ returns(T.nilable(::Stripe::PaymentLinkService::UpdateParams::ShippingAddressCollection))
1381
+ }
1382
+ attr_accessor :shipping_address_collection
1383
+
1384
+ # 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`).
1385
+ sig { returns(String) }
1386
+ attr_accessor :submit_type
1387
+
1388
+ # 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`.
1389
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::SubscriptionData) }
1390
+ attr_accessor :subscription_data
1391
+
1392
+ # Controls tax ID collection during checkout.
1393
+ sig { returns(::Stripe::PaymentLinkService::UpdateParams::TaxIdCollection) }
1394
+ attr_accessor :tax_id_collection
1395
+
1396
+ sig {
1397
+ params(active: T::Boolean, after_completion: ::Stripe::PaymentLinkService::UpdateParams::AfterCompletion, allow_promotion_codes: T::Boolean, automatic_tax: ::Stripe::PaymentLinkService::UpdateParams::AutomaticTax, billing_address_collection: String, custom_fields: T.nilable(T::Array[::Stripe::PaymentLinkService::UpdateParams::CustomField]), custom_text: ::Stripe::PaymentLinkService::UpdateParams::CustomText, customer_creation: String, expand: T::Array[String], inactive_message: T.nilable(String), invoice_creation: ::Stripe::PaymentLinkService::UpdateParams::InvoiceCreation, line_items: T::Array[::Stripe::PaymentLinkService::UpdateParams::LineItem], metadata: T::Hash[String, String], payment_intent_data: ::Stripe::PaymentLinkService::UpdateParams::PaymentIntentData, payment_method_collection: String, payment_method_types: T.nilable(T::Array[String]), restrictions: T.nilable(::Stripe::PaymentLinkService::UpdateParams::Restrictions), shipping_address_collection: T.nilable(::Stripe::PaymentLinkService::UpdateParams::ShippingAddressCollection), submit_type: String, subscription_data: ::Stripe::PaymentLinkService::UpdateParams::SubscriptionData, tax_id_collection: ::Stripe::PaymentLinkService::UpdateParams::TaxIdCollection).void
1398
+ }
1399
+ def initialize(
1400
+ active: nil,
1401
+ after_completion: nil,
1402
+ allow_promotion_codes: nil,
1403
+ automatic_tax: nil,
1404
+ billing_address_collection: nil,
1405
+ custom_fields: nil,
1406
+ custom_text: nil,
1407
+ customer_creation: nil,
1408
+ expand: nil,
1409
+ inactive_message: nil,
1410
+ invoice_creation: nil,
1411
+ line_items: nil,
1412
+ metadata: nil,
1413
+ payment_intent_data: nil,
1414
+ payment_method_collection: nil,
1415
+ payment_method_types: nil,
1416
+ restrictions: nil,
1417
+ shipping_address_collection: nil,
1418
+ submit_type: nil,
1419
+ subscription_data: nil,
1420
+ tax_id_collection: nil
1421
+ ); end
1422
+ end
1423
+ # Creates a payment link.
1424
+ sig {
1425
+ params(params: T.any(::Stripe::PaymentLinkService::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentLink)
1426
+ }
1427
+ def create(params = {}, opts = {}); end
1428
+
1429
+ # Returns a list of your payment links.
1430
+ sig {
1431
+ params(params: T.any(::Stripe::PaymentLinkService::ListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::ListObject)
1432
+ }
1433
+ def list(params = {}, opts = {}); end
1434
+
1435
+ # Retrieve a payment link.
1436
+ sig {
1437
+ params(payment_link: String, params: T.any(::Stripe::PaymentLinkService::RetrieveParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentLink)
1438
+ }
1439
+ def retrieve(payment_link, params = {}, opts = {}); end
1440
+
1441
+ # Updates a payment link.
1442
+ sig {
1443
+ params(payment_link: String, params: T.any(::Stripe::PaymentLinkService::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentLink)
1444
+ }
1445
+ def update(payment_link, params = {}, opts = {}); end
1446
+ end
1447
+ end