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