stripe 13.3.0 → 13.4.0.pre.beta.2

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