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