stripe 13.3.0 → 13.4.0.pre.beta.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (743) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1416 -645
  3. data/OPENAPI_VERSION +1 -1
  4. data/VERSION +1 -1
  5. data/lib/stripe/api_operations/request.rb +1 -0
  6. data/lib/stripe/api_requestor.rb +1 -0
  7. data/lib/stripe/object_types.rb +32 -0
  8. data/lib/stripe/request_params.rb +24 -0
  9. data/lib/stripe/request_signing_authenticator.rb +79 -0
  10. data/lib/stripe/resources/account.rb +5071 -0
  11. data/lib/stripe/resources/account_link.rb +54 -0
  12. data/lib/stripe/resources/account_notice.rb +132 -0
  13. data/lib/stripe/resources/account_session.rb +877 -0
  14. data/lib/stripe/resources/apple_pay_domain.rb +63 -0
  15. data/lib/stripe/resources/application.rb +20 -0
  16. data/lib/stripe/resources/application_fee.rb +96 -0
  17. data/lib/stripe/resources/application_fee_refund.rb +17 -0
  18. data/lib/stripe/resources/apps/secret.rb +141 -0
  19. data/lib/stripe/resources/balance.rb +131 -0
  20. data/lib/stripe/resources/balance_transaction.rb +112 -0
  21. data/lib/stripe/resources/bank_account.rb +84 -2
  22. data/lib/stripe/resources/billing/alert.rb +144 -0
  23. data/lib/stripe/resources/billing/alert_triggered.rb +26 -0
  24. data/lib/stripe/resources/billing/credit_balance_summary.rb +77 -0
  25. data/lib/stripe/resources/billing/credit_balance_transaction.rb +116 -0
  26. data/lib/stripe/resources/billing/credit_grant.rb +203 -0
  27. data/lib/stripe/resources/billing/meter.rb +178 -0
  28. data/lib/stripe/resources/billing/meter_error_report.rb +59 -0
  29. data/lib/stripe/resources/billing/meter_event.rb +35 -0
  30. data/lib/stripe/resources/billing/meter_event_adjustment.rb +43 -0
  31. data/lib/stripe/resources/billing/meter_event_summary.rb +15 -0
  32. data/lib/stripe/resources/billing_portal/configuration.rb +562 -0
  33. data/lib/stripe/resources/billing_portal/session.rb +271 -0
  34. data/lib/stripe/resources/capability.rb +84 -0
  35. data/lib/stripe/resources/capital/financing_offer.rb +188 -0
  36. data/lib/stripe/resources/capital/financing_summary.rb +64 -0
  37. data/lib/stripe/resources/capital/financing_transaction.rb +123 -0
  38. data/lib/stripe/resources/card.rb +79 -0
  39. data/lib/stripe/resources/cash_balance.rb +17 -0
  40. data/lib/stripe/resources/charge.rb +3026 -0
  41. data/lib/stripe/resources/checkout/session.rb +3654 -0
  42. data/lib/stripe/resources/climate/order.rb +176 -0
  43. data/lib/stripe/resources/climate/product.rb +56 -0
  44. data/lib/stripe/resources/climate/supplier.rb +54 -0
  45. data/lib/stripe/resources/confirmation_token.rb +1520 -0
  46. data/lib/stripe/resources/connect_collection_transfer.rb +24 -0
  47. data/lib/stripe/resources/country_spec.rb +63 -0
  48. data/lib/stripe/resources/coupon.rb +198 -0
  49. data/lib/stripe/resources/credit_note.rb +660 -0
  50. data/lib/stripe/resources/credit_note_line_item.rb +65 -0
  51. data/lib/stripe/resources/customer.rb +840 -0
  52. data/lib/stripe/resources/customer_balance_transaction.rb +27 -0
  53. data/lib/stripe/resources/customer_cash_balance_transaction.rb +109 -0
  54. data/lib/stripe/resources/customer_session.rb +159 -0
  55. data/lib/stripe/resources/discount.rb +29 -0
  56. data/lib/stripe/resources/dispute.rb +619 -0
  57. data/lib/stripe/resources/entitlements/active_entitlement.rb +46 -0
  58. data/lib/stripe/resources/entitlements/active_entitlement_summary.rb +23 -0
  59. data/lib/stripe/resources/entitlements/feature.rb +90 -0
  60. data/lib/stripe/resources/ephemeral_key.rb +21 -0
  61. data/lib/stripe/resources/event.rb +130 -0
  62. data/lib/stripe/resources/exchange_rate.rb +33 -0
  63. data/lib/stripe/resources/file.rb +111 -0
  64. data/lib/stripe/resources/file_link.rb +112 -0
  65. data/lib/stripe/resources/financial_connections/account.rb +260 -0
  66. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +27 -0
  67. data/lib/stripe/resources/financial_connections/account_owner.rb +17 -0
  68. data/lib/stripe/resources/financial_connections/account_ownership.rb +9 -0
  69. data/lib/stripe/resources/financial_connections/institution.rb +99 -0
  70. data/lib/stripe/resources/financial_connections/session.rb +159 -0
  71. data/lib/stripe/resources/financial_connections/transaction.rb +101 -0
  72. data/lib/stripe/resources/forwarding/request.rb +165 -0
  73. data/lib/stripe/resources/funding_instructions.rb +308 -0
  74. data/lib/stripe/resources/gift_cards/card.rb +217 -0
  75. data/lib/stripe/resources/gift_cards/transaction.rb +281 -0
  76. data/lib/stripe/resources/identity/verification_report.rb +266 -0
  77. data/lib/stripe/resources/identity/verification_session.rb +361 -0
  78. data/lib/stripe/resources/invoice.rb +8078 -0
  79. data/lib/stripe/resources/invoice_item.rb +445 -0
  80. data/lib/stripe/resources/invoice_line_item.rb +333 -0
  81. data/lib/stripe/resources/invoice_payment.rb +56 -0
  82. data/lib/stripe/resources/invoice_rendering_template.rb +67 -0
  83. data/lib/stripe/resources/issuing/authorization.rb +1117 -2
  84. data/lib/stripe/resources/issuing/card.rb +666 -0
  85. data/lib/stripe/resources/issuing/cardholder.rb +658 -0
  86. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +611 -0
  87. data/lib/stripe/resources/issuing/dispute.rb +790 -0
  88. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +84 -0
  89. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +95 -0
  90. data/lib/stripe/resources/issuing/personalization_design.rb +285 -0
  91. data/lib/stripe/resources/issuing/physical_bundle.rb +63 -0
  92. data/lib/stripe/resources/issuing/settlement.rb +49 -0
  93. data/lib/stripe/resources/issuing/token.rb +175 -0
  94. data/lib/stripe/resources/issuing/transaction.rb +927 -0
  95. data/lib/stripe/resources/line_item.rb +75 -0
  96. data/lib/stripe/resources/login_link.rb +7 -0
  97. data/lib/stripe/resources/mandate.rb +169 -0
  98. data/lib/stripe/resources/margin.rb +124 -0
  99. data/lib/stripe/resources/order.rb +2850 -0
  100. data/lib/stripe/resources/payment_attempt_record.rb +184 -0
  101. data/lib/stripe/resources/payment_intent.rb +12864 -0
  102. data/lib/stripe/resources/payment_link.rb +1563 -0
  103. data/lib/stripe/resources/payment_method.rb +1638 -0
  104. data/lib/stripe/resources/payment_method_configuration.rb +2844 -0
  105. data/lib/stripe/resources/payment_method_domain.rb +153 -0
  106. data/lib/stripe/resources/payment_record.rb +715 -0
  107. data/lib/stripe/resources/payout.rb +218 -0
  108. data/lib/stripe/resources/person.rb +263 -0
  109. data/lib/stripe/resources/plan.rb +317 -0
  110. data/lib/stripe/resources/price.rb +649 -0
  111. data/lib/stripe/resources/product.rb +536 -0
  112. data/lib/stripe/resources/product_feature.rb +12 -0
  113. data/lib/stripe/resources/promotion_code.rb +221 -0
  114. data/lib/stripe/resources/quote.rb +2946 -0
  115. data/lib/stripe/resources/quote_line.rb +274 -0
  116. data/lib/stripe/resources/quote_preview_invoice.rb +652 -0
  117. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +362 -0
  118. data/lib/stripe/resources/radar/early_fraud_warning.rb +77 -0
  119. data/lib/stripe/resources/radar/value_list.rb +125 -0
  120. data/lib/stripe/resources/radar/value_list_item.rb +95 -0
  121. data/lib/stripe/resources/refund.rb +397 -0
  122. data/lib/stripe/resources/reporting/report_run.rb +150 -0
  123. data/lib/stripe/resources/reporting/report_type.rb +36 -0
  124. data/lib/stripe/resources/reserve_transaction.rb +22 -0
  125. data/lib/stripe/resources/reversal.rb +21 -0
  126. data/lib/stripe/resources/review.rb +108 -0
  127. data/lib/stripe/resources/setup_attempt.rb +373 -0
  128. data/lib/stripe/resources/setup_intent.rb +3834 -0
  129. data/lib/stripe/resources/shipping_rate.rb +259 -0
  130. data/lib/stripe/resources/sigma/scheduled_query_run.rb +54 -0
  131. data/lib/stripe/resources/source.rb +1239 -0
  132. data/lib/stripe/resources/source_mandate_notification.rb +66 -0
  133. data/lib/stripe/resources/source_transaction.rb +85 -0
  134. data/lib/stripe/resources/subscription.rb +2057 -0
  135. data/lib/stripe/resources/subscription_item.rb +433 -0
  136. data/lib/stripe/resources/subscription_schedule.rb +2402 -0
  137. data/lib/stripe/resources/tax/association.rb +89 -0
  138. data/lib/stripe/resources/tax/calculation.rb +387 -0
  139. data/lib/stripe/resources/tax/calculation_line_item.rb +56 -0
  140. data/lib/stripe/resources/tax/form.rb +220 -0
  141. data/lib/stripe/resources/tax/registration.rb +2382 -0
  142. data/lib/stripe/resources/tax/settings.rb +126 -0
  143. data/lib/stripe/resources/tax/transaction.rb +267 -0
  144. data/lib/stripe/resources/tax/transaction_line_item.rb +31 -0
  145. data/lib/stripe/resources/tax_code.rb +35 -0
  146. data/lib/stripe/resources/tax_deducted_at_source.rb +22 -0
  147. data/lib/stripe/resources/tax_id.rb +121 -0
  148. data/lib/stripe/resources/tax_rate.rb +200 -0
  149. data/lib/stripe/resources/terminal/configuration.rb +1011 -0
  150. data/lib/stripe/resources/terminal/connection_token.rb +18 -0
  151. data/lib/stripe/resources/terminal/location.rb +175 -0
  152. data/lib/stripe/resources/terminal/reader.rb +782 -0
  153. data/lib/stripe/resources/terminal/reader_collected_data.rb +40 -0
  154. data/lib/stripe/resources/test_helpers/test_clock.rb +86 -0
  155. data/lib/stripe/resources/token.rb +1149 -0
  156. data/lib/stripe/resources/topup.rb +174 -0
  157. data/lib/stripe/resources/transfer.rb +153 -0
  158. data/lib/stripe/resources/treasury/credit_reversal.rb +92 -0
  159. data/lib/stripe/resources/treasury/debit_reversal.rb +103 -0
  160. data/lib/stripe/resources/treasury/financial_account.rb +772 -0
  161. data/lib/stripe/resources/treasury/financial_account_features.rb +191 -0
  162. data/lib/stripe/resources/treasury/inbound_transfer.rb +235 -0
  163. data/lib/stripe/resources/treasury/outbound_payment.rb +495 -0
  164. data/lib/stripe/resources/treasury/outbound_transfer.rb +387 -0
  165. data/lib/stripe/resources/treasury/received_credit.rb +283 -0
  166. data/lib/stripe/resources/treasury/received_debit.rb +244 -0
  167. data/lib/stripe/resources/treasury/transaction.rb +176 -0
  168. data/lib/stripe/resources/treasury/transaction_entry.rb +157 -0
  169. data/lib/stripe/resources/usage_record.rb +13 -0
  170. data/lib/stripe/resources/usage_record_summary.rb +21 -0
  171. data/lib/stripe/resources/v2/amount.rb +9 -0
  172. data/lib/stripe/resources/v2/billing/meter_event.rb +18 -0
  173. data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +21 -0
  174. data/lib/stripe/resources/v2/billing/meter_event_session.rb +14 -0
  175. data/lib/stripe/resources/v2/event.rb +27 -0
  176. data/lib/stripe/resources/v2/event_destination.rb +59 -0
  177. data/lib/stripe/resources/webhook_endpoint.rb +122 -0
  178. data/lib/stripe/resources.rb +31 -0
  179. data/lib/stripe/services/account_capability_service.rb +32 -0
  180. data/lib/stripe/services/account_external_account_service.rb +250 -0
  181. data/lib/stripe/services/account_link_service.rb +46 -0
  182. data/lib/stripe/services/account_login_link_service.rb +9 -0
  183. data/lib/stripe/services/account_notice_service.rb +101 -0
  184. data/lib/stripe/services/account_person_service.rb +875 -0
  185. data/lib/stripe/services/account_service.rb +4351 -0
  186. data/lib/stripe/services/account_session_service.rb +664 -0
  187. data/lib/stripe/services/apple_pay_domain_service.rb +51 -0
  188. data/lib/stripe/services/application_fee_refund_service.rb +54 -0
  189. data/lib/stripe/services/application_fee_service.rb +57 -0
  190. data/lib/stripe/services/apps/secret_service.rb +116 -0
  191. data/lib/stripe/services/balance_service.rb +9 -0
  192. data/lib/stripe/services/balance_transaction_service.rb +69 -0
  193. data/lib/stripe/services/billing/alert_service.rb +113 -0
  194. data/lib/stripe/services/billing/credit_balance_summary_service.rb +37 -0
  195. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +40 -0
  196. data/lib/stripe/services/billing/credit_grant_service.rb +151 -0
  197. data/lib/stripe/services/billing/meter_event_adjustment_service.rb +26 -0
  198. data/lib/stripe/services/billing/meter_event_service.rb +21 -0
  199. data/lib/stripe/services/billing/meter_event_summary_service.rb +39 -0
  200. data/lib/stripe/services/billing/meter_service.rb +130 -0
  201. data/lib/stripe/services/billing_portal/configuration_service.rb +444 -0
  202. data/lib/stripe/services/billing_portal/session_service.rb +173 -0
  203. data/lib/stripe/services/capital/financing_offer_service.rb +112 -0
  204. data/lib/stripe/services/capital/financing_summary_service.rb +28 -0
  205. data/lib/stripe/services/capital/financing_transaction_service.rb +79 -0
  206. data/lib/stripe/services/capital_service.rb +15 -0
  207. data/lib/stripe/services/charge_service.rb +1736 -0
  208. data/lib/stripe/services/checkout/session_line_item_service.rb +18 -0
  209. data/lib/stripe/services/checkout/session_service.rb +2465 -0
  210. data/lib/stripe/services/climate/order_service.rb +102 -0
  211. data/lib/stripe/services/climate/product_service.rb +27 -0
  212. data/lib/stripe/services/climate/supplier_service.rb +27 -0
  213. data/lib/stripe/services/confirmation_token_service.rb +9 -0
  214. data/lib/stripe/services/country_spec_service.rb +27 -0
  215. data/lib/stripe/services/coupon_service.rb +152 -0
  216. data/lib/stripe/services/credit_note_line_item_service.rb +18 -0
  217. data/lib/stripe/services/credit_note_preview_lines_service.rb +156 -0
  218. data/lib/stripe/services/credit_note_service.rb +373 -0
  219. data/lib/stripe/services/customer_balance_transaction_service.rb +63 -0
  220. data/lib/stripe/services/customer_cash_balance_service.rb +29 -0
  221. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +27 -0
  222. data/lib/stripe/services/customer_funding_instructions_service.rb +42 -0
  223. data/lib/stripe/services/customer_payment_method_service.rb +40 -0
  224. data/lib/stripe/services/customer_payment_source_service.rb +179 -0
  225. data/lib/stripe/services/customer_service.rb +593 -0
  226. data/lib/stripe/services/customer_session_service.rb +96 -0
  227. data/lib/stripe/services/customer_tax_id_service.rb +45 -0
  228. data/lib/stripe/services/dispute_service.rb +374 -0
  229. data/lib/stripe/services/entitlements/active_entitlement_service.rb +36 -0
  230. data/lib/stripe/services/entitlements/feature_service.rb +76 -0
  231. data/lib/stripe/services/ephemeral_key_service.rb +36 -0
  232. data/lib/stripe/services/event_service.rb +65 -0
  233. data/lib/stripe/services/exchange_rate_service.rb +27 -0
  234. data/lib/stripe/services/file_link_service.rb +94 -0
  235. data/lib/stripe/services/file_service.rb +89 -0
  236. data/lib/stripe/services/financial_connections/account_inferred_balance_service.rb +37 -0
  237. data/lib/stripe/services/financial_connections/account_owner_service.rb +27 -0
  238. data/lib/stripe/services/financial_connections/account_service.rb +99 -1
  239. data/lib/stripe/services/financial_connections/institution_service.rb +57 -0
  240. data/lib/stripe/services/financial_connections/session_service.rb +97 -0
  241. data/lib/stripe/services/financial_connections/transaction_service.rb +70 -0
  242. data/lib/stripe/services/financial_connections_service.rb +2 -1
  243. data/lib/stripe/services/forwarding/request_service.rb +106 -0
  244. data/lib/stripe/services/gift_cards/card_service.rb +170 -0
  245. data/lib/stripe/services/gift_cards/transaction_service.rb +209 -0
  246. data/lib/stripe/services/gift_cards_service.rb +14 -0
  247. data/lib/stripe/services/identity/verification_report_service.rb +65 -0
  248. data/lib/stripe/services/identity/verification_session_service.rb +231 -0
  249. data/lib/stripe/services/invoice_item_service.rb +388 -0
  250. data/lib/stripe/services/invoice_line_item_service.rb +237 -0
  251. data/lib/stripe/services/invoice_payment_service.rb +55 -0
  252. data/lib/stripe/services/invoice_rendering_template_service.rb +51 -0
  253. data/lib/stripe/services/invoice_service.rb +5567 -1
  254. data/lib/stripe/services/invoice_upcoming_lines_service.rb +1864 -0
  255. data/lib/stripe/services/issuing/authorization_service.rb +104 -0
  256. data/lib/stripe/services/issuing/card_service.rb +455 -0
  257. data/lib/stripe/services/issuing/cardholder_service.rb +526 -0
  258. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +504 -0
  259. data/lib/stripe/services/issuing/dispute_service.rb +633 -0
  260. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +66 -0
  261. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +83 -0
  262. data/lib/stripe/services/issuing/personalization_design_service.rb +193 -0
  263. data/lib/stripe/services/issuing/physical_bundle_service.rb +40 -0
  264. data/lib/stripe/services/issuing/token_service.rb +73 -0
  265. data/lib/stripe/services/issuing/transaction_service.rb +81 -0
  266. data/lib/stripe/services/issuing_service.rb +5 -1
  267. data/lib/stripe/services/mandate_service.rb +9 -0
  268. data/lib/stripe/services/margin_service.rb +119 -0
  269. data/lib/stripe/services/order_line_item_service.rb +35 -0
  270. data/lib/stripe/services/order_service.rb +2254 -0
  271. data/lib/stripe/services/payment_attempt_record_service.rb +49 -0
  272. data/lib/stripe/services/payment_intent_service.rb +10894 -0
  273. data/lib/stripe/services/payment_link_line_item_service.rb +18 -0
  274. data/lib/stripe/services/payment_link_service.rb +1223 -0
  275. data/lib/stripe/services/payment_method_configuration_service.rb +2046 -0
  276. data/lib/stripe/services/payment_method_domain_service.rb +76 -0
  277. data/lib/stripe/services/payment_method_service.rb +864 -0
  278. data/lib/stripe/services/payment_record_service.rb +542 -0
  279. data/lib/stripe/services/payout_service.rb +159 -0
  280. data/lib/stripe/services/plan_service.rb +253 -0
  281. data/lib/stripe/services/price_service.rb +516 -0
  282. data/lib/stripe/services/product_feature_service.rb +42 -0
  283. data/lib/stripe/services/product_service.rb +459 -0
  284. data/lib/stripe/services/promotion_code_service.rb +178 -0
  285. data/lib/stripe/services/quote_computed_upfront_line_items_service.rb +18 -0
  286. data/lib/stripe/services/quote_line_item_service.rb +18 -0
  287. data/lib/stripe/services/quote_line_service.rb +35 -0
  288. data/lib/stripe/services/quote_preview_invoice_service.rb +35 -0
  289. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +35 -0
  290. data/lib/stripe/services/quote_service.rb +2319 -1
  291. data/lib/stripe/services/radar/early_fraud_warning_service.rb +61 -0
  292. data/lib/stripe/services/radar/value_list_item_service.rb +79 -0
  293. data/lib/stripe/services/radar/value_list_service.rb +103 -0
  294. data/lib/stripe/services/refund_service.rb +137 -0
  295. data/lib/stripe/services/reporting/report_run_service.rb +106 -0
  296. data/lib/stripe/services/reporting/report_type_service.rb +18 -0
  297. data/lib/stripe/services/review_service.rb +56 -0
  298. data/lib/stripe/services/setup_attempt_service.rb +51 -0
  299. data/lib/stripe/services/setup_intent_service.rb +3476 -0
  300. data/lib/stripe/services/shipping_rate_service.rb +200 -0
  301. data/lib/stripe/services/sigma/scheduled_query_run_service.rb +27 -0
  302. data/lib/stripe/services/source_service.rb +601 -0
  303. data/lib/stripe/services/source_transaction_service.rb +18 -0
  304. data/lib/stripe/services/subscription_item_service.rb +383 -0
  305. data/lib/stripe/services/subscription_item_usage_record_service.rb +18 -0
  306. data/lib/stripe/services/subscription_item_usage_record_summary_service.rb +18 -0
  307. data/lib/stripe/services/subscription_schedule_service.rb +2053 -0
  308. data/lib/stripe/services/subscription_service.rb +1722 -0
  309. data/lib/stripe/services/tax/association_service.rb +31 -0
  310. data/lib/stripe/services/tax/calculation_line_item_service.rb +18 -0
  311. data/lib/stripe/services/tax/calculation_service.rb +205 -0
  312. data/lib/stripe/services/tax/form_service.rb +100 -0
  313. data/lib/stripe/services/tax/registration_service.rb +1564 -0
  314. data/lib/stripe/services/tax/settings_service.rb +74 -0
  315. data/lib/stripe/services/tax/transaction_line_item_service.rb +18 -0
  316. data/lib/stripe/services/tax/transaction_service.rb +111 -0
  317. data/lib/stripe/services/tax_code_service.rb +27 -0
  318. data/lib/stripe/services/tax_id_service.rb +79 -0
  319. data/lib/stripe/services/tax_rate_service.rb +155 -0
  320. data/lib/stripe/services/tax_service.rb +3 -1
  321. data/lib/stripe/services/terminal/configuration_service.rb +793 -0
  322. data/lib/stripe/services/terminal/connection_token_service.rb +12 -0
  323. data/lib/stripe/services/terminal/location_service.rb +144 -0
  324. data/lib/stripe/services/terminal/reader_collected_data_service.rb +28 -0
  325. data/lib/stripe/services/terminal/reader_service.rb +443 -0
  326. data/lib/stripe/services/terminal_service.rb +2 -1
  327. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +673 -0
  328. data/lib/stripe/services/test_helpers/customer_service.rb +18 -0
  329. data/lib/stripe/services/test_helpers/issuing/authorization_service.rb +745 -0
  330. data/lib/stripe/services/test_helpers/issuing/card_service.rb +45 -0
  331. data/lib/stripe/services/test_helpers/issuing/personalization_design_service.rb +41 -0
  332. data/lib/stripe/services/test_helpers/issuing/transaction_service.rb +632 -0
  333. data/lib/stripe/services/test_helpers/refund_service.rb +9 -0
  334. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +44 -0
  335. data/lib/stripe/services/test_helpers/test_clock_service.rb +57 -0
  336. data/lib/stripe/services/test_helpers/treasury/inbound_transfer_service.rb +38 -0
  337. data/lib/stripe/services/test_helpers/treasury/outbound_payment_service.rb +87 -0
  338. data/lib/stripe/services/test_helpers/treasury/outbound_transfer_service.rb +87 -0
  339. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +84 -0
  340. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +84 -0
  341. data/lib/stripe/services/token_service.rb +1121 -0
  342. data/lib/stripe/services/topup_service.rb +142 -0
  343. data/lib/stripe/services/transfer_reversal_service.rb +66 -0
  344. data/lib/stripe/services/transfer_service.rb +119 -0
  345. data/lib/stripe/services/treasury/credit_reversal_service.rb +59 -0
  346. data/lib/stripe/services/treasury/debit_reversal_service.rb +63 -0
  347. data/lib/stripe/services/treasury/financial_account_features_service.rb +169 -0
  348. data/lib/stripe/services/treasury/financial_account_service.rb +509 -0
  349. data/lib/stripe/services/treasury/inbound_transfer_service.rb +88 -0
  350. data/lib/stripe/services/treasury/outbound_payment_service.rb +258 -0
  351. data/lib/stripe/services/treasury/outbound_transfer_service.rb +148 -0
  352. data/lib/stripe/services/treasury/received_credit_service.rb +52 -0
  353. data/lib/stripe/services/treasury/received_debit_service.rb +40 -0
  354. data/lib/stripe/services/treasury/transaction_entry_service.rb +87 -0
  355. data/lib/stripe/services/treasury/transaction_service.rb +95 -0
  356. data/lib/stripe/services/v1_services.rb +8 -1
  357. data/lib/stripe/services/v2/billing/meter_event_adjustment_service.rb +23 -0
  358. data/lib/stripe/services/v2/billing/meter_event_service.rb +25 -0
  359. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +3 -0
  360. data/lib/stripe/services/v2/billing/meter_event_stream_service.rb +33 -0
  361. data/lib/stripe/services/v2/core/event_destination_service.rb +146 -0
  362. data/lib/stripe/services/v2/core/event_service.rb +18 -0
  363. data/lib/stripe/services/webhook_endpoint_service.rb +96 -0
  364. data/lib/stripe/services.rb +25 -0
  365. data/lib/stripe/stripe_client.rb +1 -1
  366. data/lib/stripe/stripe_configuration.rb +3 -1
  367. data/lib/stripe/stripe_object.rb +5 -0
  368. data/lib/stripe/util.rb +7 -1
  369. data/lib/stripe/version.rb +1 -1
  370. data/lib/stripe.rb +46 -0
  371. data/rbi/stripe/resources/account.rbi +5100 -0
  372. data/rbi/stripe/resources/account_link.rbi +74 -0
  373. data/rbi/stripe/resources/account_notice.rbi +139 -0
  374. data/rbi/stripe/resources/account_session.rbi +1007 -0
  375. data/rbi/stripe/resources/apple_pay_domain.rbi +97 -0
  376. data/rbi/stripe/resources/application.rbi +20 -0
  377. data/rbi/stripe/resources/application_fee.rbi +123 -0
  378. data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
  379. data/rbi/stripe/resources/apps/secret.rbi +195 -0
  380. data/rbi/stripe/resources/balance.rbi +187 -0
  381. data/rbi/stripe/resources/balance_transaction.rbi +149 -0
  382. data/rbi/stripe/resources/bank_account.rbi +127 -0
  383. data/rbi/stripe/resources/billing/alert.rbi +206 -0
  384. data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
  385. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +102 -0
  386. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +154 -0
  387. data/rbi/stripe/resources/billing/credit_grant.rbi +269 -0
  388. data/rbi/stripe/resources/billing/meter.rbi +233 -0
  389. data/rbi/stripe/resources/billing/meter_error_report.rbi +71 -0
  390. data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
  391. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
  392. data/rbi/stripe/resources/billing/meter_event_summary.rbi +33 -0
  393. data/rbi/stripe/resources/billing_portal/configuration.rbi +640 -0
  394. data/rbi/stripe/resources/billing_portal/session.rbi +341 -0
  395. data/rbi/stripe/resources/capability.rbi +125 -0
  396. data/rbi/stripe/resources/capital/financing_offer.rbi +190 -0
  397. data/rbi/stripe/resources/capital/financing_summary.rbi +74 -0
  398. data/rbi/stripe/resources/capital/financing_transaction.rbi +130 -0
  399. data/rbi/stripe/resources/card.rbi +128 -0
  400. data/rbi/stripe/resources/cash_balance.rbi +32 -0
  401. data/rbi/stripe/resources/charge.rbi +3484 -0
  402. data/rbi/stripe/resources/checkout/session.rbi +3995 -0
  403. data/rbi/stripe/resources/climate/order.rbi +250 -0
  404. data/rbi/stripe/resources/climate/product.rbi +82 -0
  405. data/rbi/stripe/resources/climate/supplier.rbi +79 -0
  406. data/rbi/stripe/resources/confirmation_token.rbi +1776 -0
  407. data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
  408. data/rbi/stripe/resources/country_spec.rbi +92 -0
  409. data/rbi/stripe/resources/coupon.rbi +257 -0
  410. data/rbi/stripe/resources/credit_note.rbi +759 -0
  411. data/rbi/stripe/resources/credit_note_line_item.rbi +99 -0
  412. data/rbi/stripe/resources/customer.rbi +1001 -0
  413. data/rbi/stripe/resources/customer_balance_transaction.rbi +53 -0
  414. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
  415. data/rbi/stripe/resources/customer_session.rbi +196 -0
  416. data/rbi/stripe/resources/discount.rbi +53 -0
  417. data/rbi/stripe/resources/dispute.rbi +764 -0
  418. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +65 -0
  419. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
  420. data/rbi/stripe/resources/entitlements/feature.rbi +124 -0
  421. data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
  422. data/rbi/stripe/resources/event.rbi +190 -0
  423. data/rbi/stripe/resources/exchange_rate.rbi +73 -0
  424. data/rbi/stripe/resources/file.rbi +148 -0
  425. data/rbi/stripe/resources/file_link.rbi +146 -0
  426. data/rbi/stripe/resources/financial_connections/account.rbi +358 -0
  427. data/rbi/stripe/resources/financial_connections/account_inferred_balance.rbi +27 -0
  428. data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
  429. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
  430. data/rbi/stripe/resources/financial_connections/institution.rbi +99 -0
  431. data/rbi/stripe/resources/financial_connections/session.rbi +186 -0
  432. data/rbi/stripe/resources/financial_connections/transaction.rbi +127 -0
  433. data/rbi/stripe/resources/forwarding/request.rbi +219 -0
  434. data/rbi/stripe/resources/funding_instructions.rbi +437 -0
  435. data/rbi/stripe/resources/gift_cards/card.rbi +206 -0
  436. data/rbi/stripe/resources/gift_cards/transaction.rbi +257 -0
  437. data/rbi/stripe/resources/identity/verification_report.rbi +354 -0
  438. data/rbi/stripe/resources/identity/verification_session.rbi +518 -0
  439. data/rbi/stripe/resources/invoice.rbi +8928 -0
  440. data/rbi/stripe/resources/invoice_item.rbi +514 -0
  441. data/rbi/stripe/resources/invoice_line_item.rbi +400 -0
  442. data/rbi/stripe/resources/invoice_payment.rbi +70 -0
  443. data/rbi/stripe/resources/invoice_rendering_template.rbi +114 -0
  444. data/rbi/stripe/resources/issuing/authorization.rbi +1266 -0
  445. data/rbi/stripe/resources/issuing/card.rbi +738 -0
  446. data/rbi/stripe/resources/issuing/cardholder.rbi +732 -0
  447. data/rbi/stripe/resources/issuing/credit_underwriting_record.rbi +622 -0
  448. data/rbi/stripe/resources/issuing/dispute.rbi +900 -0
  449. data/rbi/stripe/resources/issuing/dispute_settlement_detail.rbi +83 -0
  450. data/rbi/stripe/resources/issuing/fraud_liability_debit.rbi +90 -0
  451. data/rbi/stripe/resources/issuing/personalization_design.rbi +333 -0
  452. data/rbi/stripe/resources/issuing/physical_bundle.rbi +86 -0
  453. data/rbi/stripe/resources/issuing/settlement.rbi +62 -0
  454. data/rbi/stripe/resources/issuing/token.rbi +231 -0
  455. data/rbi/stripe/resources/issuing/transaction.rbi +1057 -0
  456. data/rbi/stripe/resources/line_item.rbi +108 -0
  457. data/rbi/stripe/resources/login_link.rbi +18 -0
  458. data/rbi/stripe/resources/mandate.rbi +219 -0
  459. data/rbi/stripe/resources/margin.rbi +127 -0
  460. data/rbi/stripe/resources/order.rbi +3016 -0
  461. data/rbi/stripe/resources/payment_attempt_record.rbi +215 -0
  462. data/rbi/stripe/resources/payment_intent.rbi +13843 -0
  463. data/rbi/stripe/resources/payment_link.rbi +1666 -0
  464. data/rbi/stripe/resources/payment_method.rbi +1908 -0
  465. data/rbi/stripe/resources/payment_method_configuration.rbi +3171 -0
  466. data/rbi/stripe/resources/payment_method_domain.rbi +217 -0
  467. data/rbi/stripe/resources/payment_record.rbi +722 -0
  468. data/rbi/stripe/resources/payout.rbi +299 -0
  469. data/rbi/stripe/resources/person.rbi +371 -0
  470. data/rbi/stripe/resources/plan.rbi +385 -0
  471. data/rbi/stripe/resources/price.rbi +731 -0
  472. data/rbi/stripe/resources/product.rbi +615 -0
  473. data/rbi/stripe/resources/product_feature.rbi +26 -0
  474. data/rbi/stripe/resources/promotion_code.rbi +266 -0
  475. data/rbi/stripe/resources/quote.rbi +3186 -0
  476. data/rbi/stripe/resources/quote_line.rbi +350 -0
  477. data/rbi/stripe/resources/quote_preview_invoice.rbi +850 -0
  478. data/rbi/stripe/resources/quote_preview_subscription_schedule.rbi +474 -0
  479. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +101 -0
  480. data/rbi/stripe/resources/radar/value_list.rbi +175 -0
  481. data/rbi/stripe/resources/radar/value_list_item.rbi +134 -0
  482. data/rbi/stripe/resources/refund.rbi +515 -0
  483. data/rbi/stripe/resources/reporting/report_run.rbi +194 -0
  484. data/rbi/stripe/resources/reporting/report_type.rbi +64 -0
  485. data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
  486. data/rbi/stripe/resources/reversal.rbi +51 -0
  487. data/rbi/stripe/resources/review.rbi +159 -0
  488. data/rbi/stripe/resources/setup_attempt.rbi +484 -0
  489. data/rbi/stripe/resources/setup_intent.rbi +4041 -0
  490. data/rbi/stripe/resources/shipping_rate.rbi +310 -0
  491. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +82 -0
  492. data/rbi/stripe/resources/source.rbi +1543 -0
  493. data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
  494. data/rbi/stripe/resources/source_transaction.rbi +127 -0
  495. data/rbi/stripe/resources/subscription.rbi +2308 -0
  496. data/rbi/stripe/resources/subscription_item.rbi +478 -0
  497. data/rbi/stripe/resources/subscription_schedule.rbi +2653 -0
  498. data/rbi/stripe/resources/tax/association.rbi +94 -0
  499. data/rbi/stripe/resources/tax/calculation.rbi +479 -0
  500. data/rbi/stripe/resources/tax/calculation_line_item.rbi +88 -0
  501. data/rbi/stripe/resources/tax/form.rbi +224 -0
  502. data/rbi/stripe/resources/tax/registration.rbi +2438 -0
  503. data/rbi/stripe/resources/tax/settings.rbi +148 -0
  504. data/rbi/stripe/resources/tax/transaction.rbi +356 -0
  505. data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
  506. data/rbi/stripe/resources/tax_code.rbi +51 -0
  507. data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
  508. data/rbi/stripe/resources/tax_id.rbi +174 -0
  509. data/rbi/stripe/resources/tax_rate.rbi +244 -0
  510. data/rbi/stripe/resources/terminal/configuration.rbi +1091 -0
  511. data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
  512. data/rbi/stripe/resources/terminal/location.rbi +231 -0
  513. data/rbi/stripe/resources/terminal/reader.rbi +952 -0
  514. data/rbi/stripe/resources/terminal/reader_collected_data.rbi +41 -0
  515. data/rbi/stripe/resources/test_helpers/test_clock.rbi +139 -0
  516. data/rbi/stripe/resources/token.rbi +1175 -0
  517. data/rbi/stripe/resources/topup.rbi +225 -0
  518. data/rbi/stripe/resources/transfer.rbi +204 -0
  519. data/rbi/stripe/resources/treasury/credit_reversal.rbi +126 -0
  520. data/rbi/stripe/resources/treasury/debit_reversal.rbi +138 -0
  521. data/rbi/stripe/resources/treasury/financial_account.rbi +870 -0
  522. data/rbi/stripe/resources/treasury/financial_account_features.rbi +263 -0
  523. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +302 -0
  524. data/rbi/stripe/resources/treasury/outbound_payment.rbi +589 -0
  525. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +473 -0
  526. data/rbi/stripe/resources/treasury/received_credit.rbi +348 -0
  527. data/rbi/stripe/resources/treasury/received_debit.rbi +305 -0
  528. data/rbi/stripe/resources/treasury/transaction.rbi +216 -0
  529. data/rbi/stripe/resources/treasury/transaction_entry.rbi +193 -0
  530. data/rbi/stripe/resources/usage_record.rbi +32 -0
  531. data/rbi/stripe/resources/usage_record_summary.rbi +38 -0
  532. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  533. data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
  534. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
  535. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
  536. data/rbi/stripe/resources/v2/event.rbi +47 -0
  537. data/rbi/stripe/resources/v2/event_destination.rbi +90 -0
  538. data/rbi/stripe/resources/webhook_endpoint.rbi +177 -0
  539. data/rbi/stripe/services/account_capability_service.rbi +51 -0
  540. data/rbi/stripe/services/account_external_account_service.rbi +306 -0
  541. data/rbi/stripe/services/account_link_service.rbi +58 -0
  542. data/rbi/stripe/services/account_login_link_service.rbi +22 -0
  543. data/rbi/stripe/services/account_notice_service.rbi +90 -0
  544. data/rbi/stripe/services/account_person_service.rbi +903 -0
  545. data/rbi/stripe/services/account_service.rbi +4185 -0
  546. data/rbi/stripe/services/account_session_service.rbi +757 -0
  547. data/rbi/stripe/services/apple_pay_domain_service.rbi +78 -0
  548. data/rbi/stripe/services/application_fee_refund_service.rbi +91 -0
  549. data/rbi/stripe/services/application_fee_service.rbi +74 -0
  550. data/rbi/stripe/services/apps/secret_service.rbi +151 -0
  551. data/rbi/stripe/services/apps_service.rbi +9 -0
  552. data/rbi/stripe/services/balance_service.rbi +21 -0
  553. data/rbi/stripe/services/balance_transaction_service.rbi +89 -0
  554. data/rbi/stripe/services/billing/alert_service.rbi +152 -0
  555. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +54 -0
  556. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  557. data/rbi/stripe/services/billing/credit_grant_service.rbi +191 -0
  558. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +40 -0
  559. data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
  560. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
  561. data/rbi/stripe/services/billing/meter_service.rbi +163 -0
  562. data/rbi/stripe/services/billing_portal/configuration_service.rbi +497 -0
  563. data/rbi/stripe/services/billing_portal/session_service.rbi +202 -0
  564. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  565. data/rbi/stripe/services/billing_service.rbi +15 -0
  566. data/rbi/stripe/services/capital/financing_offer_service.rbi +95 -0
  567. data/rbi/stripe/services/capital/financing_summary_service.rbi +22 -0
  568. data/rbi/stripe/services/capital/financing_transaction_service.rbi +68 -0
  569. data/rbi/stripe/services/capital_service.rbi +11 -0
  570. data/rbi/stripe/services/charge_service.rbi +1816 -0
  571. data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
  572. data/rbi/stripe/services/checkout/session_service.rbi +2582 -0
  573. data/rbi/stripe/services/checkout_service.rbi +9 -0
  574. data/rbi/stripe/services/climate/order_service.rbi +140 -0
  575. data/rbi/stripe/services/climate/product_service.rbi +46 -0
  576. data/rbi/stripe/services/climate/supplier_service.rbi +46 -0
  577. data/rbi/stripe/services/climate_service.rbi +11 -0
  578. data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
  579. data/rbi/stripe/services/country_spec_service.rbi +44 -0
  580. data/rbi/stripe/services/coupon_service.rbi +190 -0
  581. data/rbi/stripe/services/credit_note_line_item_service.rbi +31 -0
  582. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
  583. data/rbi/stripe/services/credit_note_service.rbi +420 -0
  584. data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
  585. data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
  586. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
  587. data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
  588. data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
  589. data/rbi/stripe/services/customer_payment_source_service.rbi +228 -0
  590. data/rbi/stripe/services/customer_service.rbi +647 -0
  591. data/rbi/stripe/services/customer_session_service.rbi +110 -0
  592. data/rbi/stripe/services/customer_tax_id_service.rbi +72 -0
  593. data/rbi/stripe/services/dispute_service.rbi +422 -0
  594. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
  595. data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
  596. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  597. data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
  598. data/rbi/stripe/services/event_service.rbi +81 -0
  599. data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
  600. data/rbi/stripe/services/file_link_service.rbi +122 -0
  601. data/rbi/stripe/services/file_service.rbi +114 -0
  602. data/rbi/stripe/services/financial_connections/account_inferred_balance_service.rbi +33 -0
  603. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
  604. data/rbi/stripe/services/financial_connections/account_service.rbi +132 -0
  605. data/rbi/stripe/services/financial_connections/institution_service.rbi +46 -0
  606. data/rbi/stripe/services/financial_connections/session_service.rbi +111 -0
  607. data/rbi/stripe/services/financial_connections/transaction_service.rbi +90 -0
  608. data/rbi/stripe/services/financial_connections_service.rbi +12 -0
  609. data/rbi/stripe/services/forwarding/request_service.rbi +132 -0
  610. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  611. data/rbi/stripe/services/gift_cards/card_service.rbi +142 -0
  612. data/rbi/stripe/services/gift_cards/transaction_service.rbi +174 -0
  613. data/rbi/stripe/services/gift_cards_service.rbi +10 -0
  614. data/rbi/stripe/services/identity/verification_report_service.rbi +85 -0
  615. data/rbi/stripe/services/identity/verification_session_service.rbi +317 -0
  616. data/rbi/stripe/services/identity_service.rbi +10 -0
  617. data/rbi/stripe/services/invoice_item_service.rbi +424 -0
  618. data/rbi/stripe/services/invoice_line_item_service.rbi +270 -0
  619. data/rbi/stripe/services/invoice_payment_service.rbi +44 -0
  620. data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
  621. data/rbi/stripe/services/invoice_service.rbi +6040 -0
  622. data/rbi/stripe/services/invoice_upcoming_lines_service.rbi +2023 -0
  623. data/rbi/stripe/services/issuing/authorization_service.rbi +140 -0
  624. data/rbi/stripe/services/issuing/card_service.rbi +479 -0
  625. data/rbi/stripe/services/issuing/cardholder_service.rbi +568 -0
  626. data/rbi/stripe/services/issuing/credit_underwriting_record_service.rbi +498 -0
  627. data/rbi/stripe/services/issuing/dispute_service.rbi +701 -0
  628. data/rbi/stripe/services/issuing/dispute_settlement_detail_service.rbi +55 -0
  629. data/rbi/stripe/services/issuing/fraud_liability_debit_service.rbi +73 -0
  630. data/rbi/stripe/services/issuing/personalization_design_service.rbi +233 -0
  631. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
  632. data/rbi/stripe/services/issuing/token_service.rbi +95 -0
  633. data/rbi/stripe/services/issuing/transaction_service.rbi +103 -0
  634. data/rbi/stripe/services/issuing_service.rbi +19 -0
  635. data/rbi/stripe/services/mandate_service.rbi +20 -0
  636. data/rbi/stripe/services/margin_service.rbi +104 -0
  637. data/rbi/stripe/services/order_line_item_service.rbi +31 -0
  638. data/rbi/stripe/services/order_service.rbi +2306 -0
  639. data/rbi/stripe/services/payment_attempt_record_service.rbi +36 -0
  640. data/rbi/stripe/services/payment_intent_service.rbi +11429 -0
  641. data/rbi/stripe/services/payment_link_line_item_service.rbi +31 -0
  642. data/rbi/stripe/services/payment_link_service.rbi +1250 -0
  643. data/rbi/stripe/services/payment_method_configuration_service.rbi +2171 -0
  644. data/rbi/stripe/services/payment_method_domain_service.rbi +110 -0
  645. data/rbi/stripe/services/payment_method_service.rbi +883 -0
  646. data/rbi/stripe/services/payment_record_service.rbi +521 -0
  647. data/rbi/stripe/services/payout_service.rbi +197 -0
  648. data/rbi/stripe/services/plan_service.rbi +286 -0
  649. data/rbi/stripe/services/price_service.rbi +551 -0
  650. data/rbi/stripe/services/product_feature_service.rbi +69 -0
  651. data/rbi/stripe/services/product_service.rbi +503 -0
  652. data/rbi/stripe/services/promotion_code_service.rbi +210 -0
  653. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
  654. data/rbi/stripe/services/quote_line_item_service.rbi +31 -0
  655. data/rbi/stripe/services/quote_line_service.rbi +31 -0
  656. data/rbi/stripe/services/quote_preview_invoice_service.rbi +31 -0
  657. data/rbi/stripe/services/quote_preview_subscription_schedule_service.rbi +31 -0
  658. data/rbi/stripe/services/quote_service.rbi +2390 -0
  659. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +83 -0
  660. data/rbi/stripe/services/radar/value_list_item_service.rbi +107 -0
  661. data/rbi/stripe/services/radar/value_list_service.rbi +139 -0
  662. data/rbi/stripe/services/radar_service.rbi +11 -0
  663. data/rbi/stripe/services/refund_service.rbi +181 -0
  664. data/rbi/stripe/services/reporting/report_run_service.rbi +131 -0
  665. data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
  666. data/rbi/stripe/services/reporting_service.rbi +10 -0
  667. data/rbi/stripe/services/review_service.rbi +82 -0
  668. data/rbi/stripe/services/setup_attempt_service.rbi +63 -0
  669. data/rbi/stripe/services/setup_intent_service.rbi +3609 -0
  670. data/rbi/stripe/services/shipping_rate_service.rbi +235 -0
  671. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
  672. data/rbi/stripe/services/sigma_service.rbi +9 -0
  673. data/rbi/stripe/services/source_service.rbi +647 -0
  674. data/rbi/stripe/services/source_transaction_service.rbi +31 -0
  675. data/rbi/stripe/services/subscription_item_service.rbi +422 -0
  676. data/rbi/stripe/services/subscription_item_usage_record_service.rbi +37 -0
  677. data/rbi/stripe/services/subscription_item_usage_record_summary_service.rbi +33 -0
  678. data/rbi/stripe/services/subscription_schedule_service.rbi +2208 -0
  679. data/rbi/stripe/services/subscription_service.rbi +1870 -0
  680. data/rbi/stripe/services/tax/association_service.rbi +25 -0
  681. data/rbi/stripe/services/tax/calculation_line_item_service.rbi +33 -0
  682. data/rbi/stripe/services/tax/calculation_service.rbi +228 -0
  683. data/rbi/stripe/services/tax/form_service.rbi +85 -0
  684. data/rbi/stripe/services/tax/registration_service.rbi +1517 -0
  685. data/rbi/stripe/services/tax/settings_service.rbi +93 -0
  686. data/rbi/stripe/services/tax/transaction_line_item_service.rbi +33 -0
  687. data/rbi/stripe/services/tax/transaction_service.rbi +142 -0
  688. data/rbi/stripe/services/tax_code_service.rbi +44 -0
  689. data/rbi/stripe/services/tax_id_service.rbi +112 -0
  690. data/rbi/stripe/services/tax_rate_service.rbi +183 -0
  691. data/rbi/stripe/services/tax_service.rbi +14 -0
  692. data/rbi/stripe/services/terminal/configuration_service.rbi +822 -0
  693. data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
  694. data/rbi/stripe/services/terminal/location_service.rbi +184 -0
  695. data/rbi/stripe/services/terminal/reader_collected_data_service.rbi +22 -0
  696. data/rbi/stripe/services/terminal/reader_service.rbi +513 -0
  697. data/rbi/stripe/services/terminal_service.rbi +13 -0
  698. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +778 -0
  699. data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
  700. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +836 -0
  701. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
  702. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +67 -0
  703. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +705 -0
  704. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  705. data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
  706. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +62 -0
  707. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  708. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
  709. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
  710. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +123 -0
  711. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +123 -0
  712. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +114 -0
  713. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +114 -0
  714. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  715. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  716. data/rbi/stripe/services/token_service.rbi +1136 -0
  717. data/rbi/stripe/services/topup_service.rbi +172 -0
  718. data/rbi/stripe/services/transfer_reversal_service.rbi +99 -0
  719. data/rbi/stripe/services/transfer_service.rbi +150 -0
  720. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
  721. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
  722. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +201 -0
  723. data/rbi/stripe/services/treasury/financial_account_service.rbi +566 -0
  724. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
  725. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +300 -0
  726. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +182 -0
  727. data/rbi/stripe/services/treasury/received_credit_service.rbi +70 -0
  728. data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
  729. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +107 -0
  730. data/rbi/stripe/services/treasury/transaction_service.rbi +114 -0
  731. data/rbi/stripe/services/treasury_service.rbi +18 -0
  732. data/rbi/stripe/services/v1_services.rbi +83 -0
  733. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
  734. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
  735. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +20 -0
  736. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
  737. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  738. data/rbi/stripe/services/v2/core/event_destination_service.rbi +203 -0
  739. data/rbi/stripe/services/v2/core/event_service.rbi +39 -0
  740. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  741. data/rbi/stripe/services/v2_services.rbi +10 -0
  742. data/rbi/stripe/services/webhook_endpoint_service.rbi +131 -0
  743. metadata +435 -4
@@ -0,0 +1,4041 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ # A SetupIntent guides you through the process of setting up and saving a customer's payment credentials for future payments.
7
+ # For example, you can use a SetupIntent to set up and save your customer's card without immediately collecting a payment.
8
+ # Later, you can use [PaymentIntents](https://stripe.com/docs/api#payment_intents) to drive the payment flow.
9
+ #
10
+ # Create a SetupIntent when you're ready to collect your customer's payment credentials.
11
+ # Don't maintain long-lived, unconfirmed SetupIntents because they might not be valid.
12
+ # The SetupIntent transitions through multiple [statuses](https://docs.stripe.com/payments/intents#intent-statuses) as it guides
13
+ # you through the setup process.
14
+ #
15
+ # Successful SetupIntents result in payment credentials that are optimized for future payments.
16
+ # For example, cardholders in [certain regions](https://stripe.com/guides/strong-customer-authentication) might need to be run through
17
+ # [Strong Customer Authentication](https://docs.stripe.com/strong-customer-authentication) during payment method collection
18
+ # to streamline later [off-session payments](https://docs.stripe.com/payments/setup-intents).
19
+ # If you use the SetupIntent with a [Customer](https://stripe.com/docs/api#setup_intent_object-customer),
20
+ # it automatically attaches the resulting payment method to that Customer after successful setup.
21
+ # We recommend using SetupIntents or [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage) on
22
+ # PaymentIntents to save payment methods to prevent saving invalid or unoptimized payment methods.
23
+ #
24
+ # By using SetupIntents, you can reduce friction for your customers, even as regulations change over time.
25
+ #
26
+ # Related guide: [Setup Intents API](https://docs.stripe.com/payments/setup-intents)
27
+ class SetupIntent < APIResource
28
+ class AutomaticPaymentMethods < Stripe::StripeObject
29
+ # Controls whether this SetupIntent will accept redirect-based payment methods.
30
+ #
31
+ # Redirect-based payment methods may require your customer to be redirected to a payment method's app or site for authentication or additional steps. To [confirm](https://stripe.com/docs/api/setup_intents/confirm) this SetupIntent, you may be required to provide a `return_url` to redirect customers back to your site after they authenticate or complete the setup.
32
+ sig { returns(String) }
33
+ attr_reader :allow_redirects
34
+ # Automatically calculates compatible payment methods
35
+ sig { returns(T.nilable(T::Boolean)) }
36
+ attr_reader :enabled
37
+ end
38
+ class LastSetupError < Stripe::StripeObject
39
+ # For card errors resulting from a card issuer decline, a short string indicating [how to proceed with an error](https://stripe.com/docs/declines#retrying-issuer-declines) if they provide one.
40
+ sig { returns(String) }
41
+ attr_reader :advice_code
42
+ # For card errors, the ID of the failed charge.
43
+ sig { returns(String) }
44
+ attr_reader :charge
45
+ # For some errors that could be handled programmatically, a short string indicating the [error code](https://stripe.com/docs/error-codes) reported.
46
+ sig { returns(String) }
47
+ attr_reader :code
48
+ # For card errors resulting from a card issuer decline, a short string indicating the [card issuer's reason for the decline](https://stripe.com/docs/declines#issuer-declines) if they provide one.
49
+ sig { returns(String) }
50
+ attr_reader :decline_code
51
+ # A URL to more information about the [error code](https://stripe.com/docs/error-codes) reported.
52
+ sig { returns(String) }
53
+ attr_reader :doc_url
54
+ # A human-readable message providing more details about the error. For card errors, these messages can be shown to your users.
55
+ sig { returns(String) }
56
+ attr_reader :message
57
+ # For card errors resulting from a card issuer decline, a 2 digit code which indicates the advice given to merchant by the card network on how to proceed with an error.
58
+ sig { returns(String) }
59
+ attr_reader :network_advice_code
60
+ # For card errors resulting from a card issuer decline, a brand specific 2, 3, or 4 digit code which indicates the reason the authorization failed.
61
+ sig { returns(String) }
62
+ attr_reader :network_decline_code
63
+ # If the error is parameter-specific, the parameter related to the error. For example, you can use this to display a message near the correct form field.
64
+ sig { returns(String) }
65
+ attr_reader :param
66
+ # A PaymentIntent guides you through the process of collecting a payment from your customer.
67
+ # We recommend that you create exactly one PaymentIntent for each order or
68
+ # customer session in your system. You can reference the PaymentIntent later to
69
+ # see the history of payment attempts for a particular session.
70
+ #
71
+ # A PaymentIntent transitions through
72
+ # [multiple statuses](https://stripe.com/docs/payments/intents#intent-statuses)
73
+ # throughout its lifetime as it interfaces with Stripe.js to perform
74
+ # authentication flows and ultimately creates at most one successful charge.
75
+ #
76
+ # Related guide: [Payment Intents API](https://stripe.com/docs/payments/payment-intents)
77
+ sig { returns(Stripe::PaymentIntent) }
78
+ attr_reader :payment_intent
79
+ # PaymentMethod objects represent your customer's payment instruments.
80
+ # You can use them with [PaymentIntents](https://stripe.com/docs/payments/payment-intents) to collect payments or save them to
81
+ # Customer objects to store instrument details for future payments.
82
+ #
83
+ # Related guides: [Payment Methods](https://stripe.com/docs/payments/payment-methods) and [More Payment Scenarios](https://stripe.com/docs/payments/more-payment-scenarios).
84
+ sig { returns(Stripe::PaymentMethod) }
85
+ attr_reader :payment_method
86
+ # If the error is specific to the type of payment method, the payment method type that had a problem. This field is only populated for invoice-related errors.
87
+ sig { returns(String) }
88
+ attr_reader :payment_method_type
89
+ # A URL to the request log entry in your dashboard.
90
+ sig { returns(String) }
91
+ attr_reader :request_log_url
92
+ # A SetupIntent guides you through the process of setting up and saving a customer's payment credentials for future payments.
93
+ # For example, you can use a SetupIntent to set up and save your customer's card without immediately collecting a payment.
94
+ # Later, you can use [PaymentIntents](https://stripe.com/docs/api#payment_intents) to drive the payment flow.
95
+ #
96
+ # Create a SetupIntent when you're ready to collect your customer's payment credentials.
97
+ # Don't maintain long-lived, unconfirmed SetupIntents because they might not be valid.
98
+ # The SetupIntent transitions through multiple [statuses](https://docs.stripe.com/payments/intents#intent-statuses) as it guides
99
+ # you through the setup process.
100
+ #
101
+ # Successful SetupIntents result in payment credentials that are optimized for future payments.
102
+ # For example, cardholders in [certain regions](https://stripe.com/guides/strong-customer-authentication) might need to be run through
103
+ # [Strong Customer Authentication](https://docs.stripe.com/strong-customer-authentication) during payment method collection
104
+ # to streamline later [off-session payments](https://docs.stripe.com/payments/setup-intents).
105
+ # If you use the SetupIntent with a [Customer](https://stripe.com/docs/api#setup_intent_object-customer),
106
+ # it automatically attaches the resulting payment method to that Customer after successful setup.
107
+ # We recommend using SetupIntents or [setup_future_usage](https://stripe.com/docs/api#payment_intent_object-setup_future_usage) on
108
+ # PaymentIntents to save payment methods to prevent saving invalid or unoptimized payment methods.
109
+ #
110
+ # By using SetupIntents, you can reduce friction for your customers, even as regulations change over time.
111
+ #
112
+ # Related guide: [Setup Intents API](https://docs.stripe.com/payments/setup-intents)
113
+ sig { returns(Stripe::SetupIntent) }
114
+ attr_reader :setup_intent
115
+ # Attribute for field source
116
+ sig { returns(T.any(Stripe::Account, Stripe::BankAccount, Stripe::Card, Stripe::Source)) }
117
+ attr_reader :source
118
+ # The type of error returned. One of `api_error`, `card_error`, `idempotency_error`, or `invalid_request_error`
119
+ sig { returns(String) }
120
+ attr_reader :type
121
+ end
122
+ class NextAction < Stripe::StripeObject
123
+ class CashappHandleRedirectOrDisplayQrCode < Stripe::StripeObject
124
+ class QrCode < Stripe::StripeObject
125
+ # The date (unix timestamp) when the QR code expires.
126
+ sig { returns(Integer) }
127
+ attr_reader :expires_at
128
+ # The image_url_png string used to render QR code
129
+ sig { returns(String) }
130
+ attr_reader :image_url_png
131
+ # The image_url_svg string used to render QR code
132
+ sig { returns(String) }
133
+ attr_reader :image_url_svg
134
+ end
135
+ # The URL to the hosted Cash App Pay instructions page, which allows customers to view the QR code, and supports QR code refreshing on expiration.
136
+ sig { returns(String) }
137
+ attr_reader :hosted_instructions_url
138
+ # The url for mobile redirect based auth
139
+ sig { returns(String) }
140
+ attr_reader :mobile_auth_url
141
+ # Attribute for field qr_code
142
+ sig { returns(QrCode) }
143
+ attr_reader :qr_code
144
+ end
145
+ class RedirectToUrl < Stripe::StripeObject
146
+ # If the customer does not exit their browser while authenticating, they will be redirected to this specified URL after completion.
147
+ sig { returns(T.nilable(String)) }
148
+ attr_reader :return_url
149
+ # The URL you must redirect your customer to in order to authenticate.
150
+ sig { returns(T.nilable(String)) }
151
+ attr_reader :url
152
+ end
153
+ class VerifyWithMicrodeposits < Stripe::StripeObject
154
+ # The timestamp when the microdeposits are expected to land.
155
+ sig { returns(Integer) }
156
+ attr_reader :arrival_date
157
+ # The URL for the hosted verification page, which allows customers to verify their bank account.
158
+ sig { returns(String) }
159
+ attr_reader :hosted_verification_url
160
+ # The type of the microdeposit sent to the customer. Used to distinguish between different verification methods.
161
+ sig { returns(T.nilable(String)) }
162
+ attr_reader :microdeposit_type
163
+ end
164
+ # Attribute for field cashapp_handle_redirect_or_display_qr_code
165
+ sig { returns(CashappHandleRedirectOrDisplayQrCode) }
166
+ attr_reader :cashapp_handle_redirect_or_display_qr_code
167
+ # Attribute for field redirect_to_url
168
+ sig { returns(RedirectToUrl) }
169
+ attr_reader :redirect_to_url
170
+ # Type of the next action to perform, one of `redirect_to_url`, `use_stripe_sdk`, `alipay_handle_redirect`, `oxxo_display_details`, or `verify_with_microdeposits`.
171
+ sig { returns(String) }
172
+ attr_reader :type
173
+ # When confirming a SetupIntent with Stripe.js, Stripe.js depends on the contents of this dictionary to invoke authentication flows. The shape of the contents is subject to change and is only intended to be used by Stripe.js.
174
+ sig { returns(T::Hash[String, T.untyped]) }
175
+ attr_reader :use_stripe_sdk
176
+ # Attribute for field verify_with_microdeposits
177
+ sig { returns(VerifyWithMicrodeposits) }
178
+ attr_reader :verify_with_microdeposits
179
+ end
180
+ class PaymentMethodConfigurationDetails < Stripe::StripeObject
181
+ # ID of the payment method configuration used.
182
+ sig { returns(String) }
183
+ attr_reader :id
184
+ # ID of the parent payment method configuration used.
185
+ sig { returns(T.nilable(String)) }
186
+ attr_reader :parent
187
+ end
188
+ class PaymentMethodOptions < Stripe::StripeObject
189
+ class AcssDebit < Stripe::StripeObject
190
+ class MandateOptions < Stripe::StripeObject
191
+ # A URL for custom mandate text
192
+ sig { returns(String) }
193
+ attr_reader :custom_mandate_url
194
+ # List of Stripe products where this mandate can be selected automatically.
195
+ sig { returns(T::Array[String]) }
196
+ attr_reader :default_for
197
+ # Description of the interval. Only required if the 'payment_schedule' parameter is 'interval' or 'combined'.
198
+ sig { returns(T.nilable(String)) }
199
+ attr_reader :interval_description
200
+ # Payment schedule for the mandate.
201
+ sig { returns(T.nilable(String)) }
202
+ attr_reader :payment_schedule
203
+ # Transaction type of the mandate.
204
+ sig { returns(T.nilable(String)) }
205
+ attr_reader :transaction_type
206
+ end
207
+ # Currency supported by the bank account
208
+ sig { returns(T.nilable(String)) }
209
+ attr_reader :currency
210
+ # Attribute for field mandate_options
211
+ sig { returns(MandateOptions) }
212
+ attr_reader :mandate_options
213
+ # Bank account verification method.
214
+ sig { returns(String) }
215
+ attr_reader :verification_method
216
+ end
217
+ class AmazonPay < Stripe::StripeObject; end
218
+ class BacsDebit < Stripe::StripeObject
219
+ class MandateOptions < Stripe::StripeObject
220
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'DDIC' or 'STRIPE'.
221
+ sig { returns(String) }
222
+ attr_reader :reference_prefix
223
+ end
224
+ # Attribute for field mandate_options
225
+ sig { returns(MandateOptions) }
226
+ attr_reader :mandate_options
227
+ end
228
+ class Card < Stripe::StripeObject
229
+ class MandateOptions < Stripe::StripeObject
230
+ # Amount to be charged for future payments.
231
+ sig { returns(Integer) }
232
+ attr_reader :amount
233
+ # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
234
+ sig { returns(String) }
235
+ attr_reader :amount_type
236
+ # 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).
237
+ sig { returns(String) }
238
+ attr_reader :currency
239
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
240
+ sig { returns(T.nilable(String)) }
241
+ attr_reader :description
242
+ # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
243
+ sig { returns(T.nilable(Integer)) }
244
+ attr_reader :end_date
245
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
246
+ sig { returns(String) }
247
+ attr_reader :interval
248
+ # The number of intervals between payments. For example, `interval=month` and `interval_count=3` indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when `interval=sporadic`.
249
+ sig { returns(T.nilable(Integer)) }
250
+ attr_reader :interval_count
251
+ # Unique identifier for the mandate or subscription.
252
+ sig { returns(String) }
253
+ attr_reader :reference
254
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
255
+ sig { returns(Integer) }
256
+ attr_reader :start_date
257
+ # Specifies the type of mandates supported. Possible values are `india`.
258
+ sig { returns(T.nilable(T::Array[String])) }
259
+ attr_reader :supported_types
260
+ end
261
+ # Configuration options for setting up an eMandate for cards issued in India.
262
+ sig { returns(T.nilable(MandateOptions)) }
263
+ attr_reader :mandate_options
264
+ # Selected network to process this SetupIntent on. Depends on the available networks of the card attached to the setup intent. Can be only set confirm-time.
265
+ sig { returns(T.nilable(String)) }
266
+ attr_reader :network
267
+ # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
268
+ sig { returns(T.nilable(String)) }
269
+ attr_reader :request_three_d_secure
270
+ end
271
+ class CardPresent < Stripe::StripeObject; end
272
+ class Link < Stripe::StripeObject
273
+ # [Deprecated] This is a legacy parameter that no longer has any function.
274
+ sig { returns(T.nilable(String)) }
275
+ attr_reader :persistent_token
276
+ end
277
+ class Paypal < Stripe::StripeObject
278
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
279
+ sig { returns(T.nilable(String)) }
280
+ attr_reader :billing_agreement_id
281
+ # 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).
282
+ sig { returns(T.nilable(String)) }
283
+ attr_reader :currency
284
+ # The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
285
+ sig { returns(T::Array[String]) }
286
+ attr_reader :subsellers
287
+ end
288
+ class Payto < Stripe::StripeObject
289
+ class MandateOptions < Stripe::StripeObject
290
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
291
+ sig { returns(T.nilable(Integer)) }
292
+ attr_reader :amount
293
+ # The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively.
294
+ sig { returns(T.nilable(String)) }
295
+ attr_reader :amount_type
296
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
297
+ sig { returns(T.nilable(String)) }
298
+ attr_reader :end_date
299
+ # The periodicity at which payments will be collected.
300
+ sig { returns(T.nilable(String)) }
301
+ attr_reader :payment_schedule
302
+ # The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
303
+ sig { returns(T.nilable(Integer)) }
304
+ attr_reader :payments_per_period
305
+ # The purpose for which payments are made. Defaults to retail.
306
+ sig { returns(T.nilable(String)) }
307
+ attr_reader :purpose
308
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
309
+ sig { returns(T.nilable(String)) }
310
+ attr_reader :start_date
311
+ end
312
+ # Attribute for field mandate_options
313
+ sig { returns(MandateOptions) }
314
+ attr_reader :mandate_options
315
+ end
316
+ class SepaDebit < Stripe::StripeObject
317
+ class MandateOptions < Stripe::StripeObject
318
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
319
+ sig { returns(String) }
320
+ attr_reader :reference_prefix
321
+ end
322
+ # Attribute for field mandate_options
323
+ sig { returns(MandateOptions) }
324
+ attr_reader :mandate_options
325
+ end
326
+ class UsBankAccount < Stripe::StripeObject
327
+ class FinancialConnections < Stripe::StripeObject
328
+ class Filters < Stripe::StripeObject
329
+ # The account subcategories to use to filter for possible accounts to link. Valid subcategories are `checking` and `savings`.
330
+ sig { returns(T::Array[String]) }
331
+ attr_reader :account_subcategories
332
+ # The institution to use to filter for possible accounts to link.
333
+ sig { returns(String) }
334
+ attr_reader :institution
335
+ end
336
+ class ManualEntry < Stripe::StripeObject
337
+ # Settings for configuring manual entry of account details.
338
+ sig { returns(String) }
339
+ attr_reader :mode
340
+ end
341
+ # Attribute for field filters
342
+ sig { returns(Filters) }
343
+ attr_reader :filters
344
+ # Attribute for field manual_entry
345
+ sig { returns(ManualEntry) }
346
+ attr_reader :manual_entry
347
+ # The list of permissions to request. The `payment_method` permission must be included.
348
+ sig { returns(T::Array[String]) }
349
+ attr_reader :permissions
350
+ # Data features requested to be retrieved upon account creation.
351
+ sig { returns(T.nilable(T::Array[String])) }
352
+ attr_reader :prefetch
353
+ # For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app.
354
+ sig { returns(String) }
355
+ attr_reader :return_url
356
+ end
357
+ class MandateOptions < Stripe::StripeObject
358
+ # Mandate collection method
359
+ sig { returns(String) }
360
+ attr_reader :collection_method
361
+ end
362
+ # Attribute for field financial_connections
363
+ sig { returns(FinancialConnections) }
364
+ attr_reader :financial_connections
365
+ # Attribute for field mandate_options
366
+ sig { returns(MandateOptions) }
367
+ attr_reader :mandate_options
368
+ # Bank account verification method.
369
+ sig { returns(String) }
370
+ attr_reader :verification_method
371
+ end
372
+ # Attribute for field acss_debit
373
+ sig { returns(AcssDebit) }
374
+ attr_reader :acss_debit
375
+ # Attribute for field amazon_pay
376
+ sig { returns(AmazonPay) }
377
+ attr_reader :amazon_pay
378
+ # Attribute for field bacs_debit
379
+ sig { returns(BacsDebit) }
380
+ attr_reader :bacs_debit
381
+ # Attribute for field card
382
+ sig { returns(Card) }
383
+ attr_reader :card
384
+ # Attribute for field card_present
385
+ sig { returns(CardPresent) }
386
+ attr_reader :card_present
387
+ # Attribute for field link
388
+ sig { returns(Link) }
389
+ attr_reader :link
390
+ # Attribute for field paypal
391
+ sig { returns(Paypal) }
392
+ attr_reader :paypal
393
+ # Attribute for field payto
394
+ sig { returns(Payto) }
395
+ attr_reader :payto
396
+ # Attribute for field sepa_debit
397
+ sig { returns(SepaDebit) }
398
+ attr_reader :sepa_debit
399
+ # Attribute for field us_bank_account
400
+ sig { returns(UsBankAccount) }
401
+ attr_reader :us_bank_account
402
+ end
403
+ # ID of the Connect application that created the SetupIntent.
404
+ sig { returns(T.nilable(T.any(String, Stripe::Application))) }
405
+ attr_reader :application
406
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
407
+ #
408
+ # It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer.
409
+ sig { returns(T::Boolean) }
410
+ attr_reader :attach_to_self
411
+ # Settings for dynamic payment methods compatible with this Setup Intent
412
+ sig { returns(T.nilable(AutomaticPaymentMethods)) }
413
+ attr_reader :automatic_payment_methods
414
+ # Reason for cancellation of this SetupIntent, one of `abandoned`, `requested_by_customer`, or `duplicate`.
415
+ sig { returns(T.nilable(String)) }
416
+ attr_reader :cancellation_reason
417
+ # The client secret of this SetupIntent. Used for client-side retrieval using a publishable key.
418
+ #
419
+ # The client secret can be used to complete payment setup from your frontend. It should not be stored, logged, or exposed to anyone other than the customer. Make sure that you have TLS enabled on any page that includes the client secret.
420
+ sig { returns(T.nilable(String)) }
421
+ attr_reader :client_secret
422
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
423
+ sig { returns(Integer) }
424
+ attr_reader :created
425
+ # ID of the Customer this SetupIntent belongs to, if one exists.
426
+ #
427
+ # If present, the SetupIntent's payment method will be attached to the Customer on successful setup. Payment methods attached to other Customers cannot be used with this SetupIntent.
428
+ sig { returns(T.nilable(T.any(String, Stripe::Customer))) }
429
+ attr_reader :customer
430
+ # An arbitrary string attached to the object. Often useful for displaying to users.
431
+ sig { returns(T.nilable(String)) }
432
+ attr_reader :description
433
+ # Indicates the directions of money movement for which this payment method is intended to be used.
434
+ #
435
+ # Include `inbound` if you intend to use the payment method as the origin to pull funds from. Include `outbound` if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes.
436
+ sig { returns(T.nilable(T::Array[String])) }
437
+ attr_reader :flow_directions
438
+ # Unique identifier for the object.
439
+ sig { returns(String) }
440
+ attr_reader :id
441
+ # The error encountered in the previous SetupIntent confirmation.
442
+ sig { returns(T.nilable(LastSetupError)) }
443
+ attr_reader :last_setup_error
444
+ # The most recent SetupAttempt for this SetupIntent.
445
+ sig { returns(T.nilable(T.any(String, Stripe::SetupAttempt))) }
446
+ attr_reader :latest_attempt
447
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
448
+ sig { returns(T::Boolean) }
449
+ attr_reader :livemode
450
+ # ID of the multi use Mandate generated by the SetupIntent.
451
+ sig { returns(T.nilable(T.any(String, Stripe::Mandate))) }
452
+ attr_reader :mandate
453
+ # 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.
454
+ sig { returns(T.nilable(T::Hash[String, String])) }
455
+ attr_reader :metadata
456
+ # If present, this property tells you what actions you need to take in order for your customer to continue payment setup.
457
+ sig { returns(T.nilable(NextAction)) }
458
+ attr_reader :next_action
459
+ # String representing the object's type. Objects of the same type share the same value.
460
+ sig { returns(String) }
461
+ attr_reader :object
462
+ # The account (if any) for which the setup is intended.
463
+ sig { returns(T.nilable(T.any(String, Stripe::Account))) }
464
+ attr_reader :on_behalf_of
465
+ # ID of the payment method used with this SetupIntent. If the payment method is `card_present` and isn't a digital wallet, then the [generated_card](https://docs.stripe.com/api/setup_attempts/object#setup_attempt_object-payment_method_details-card_present-generated_card) associated with the `latest_attempt` is attached to the Customer instead.
466
+ sig { returns(T.nilable(T.any(String, Stripe::PaymentMethod))) }
467
+ attr_reader :payment_method
468
+ # Information about the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) used for this Setup Intent.
469
+ sig { returns(T.nilable(PaymentMethodConfigurationDetails)) }
470
+ attr_reader :payment_method_configuration_details
471
+ # Payment method-specific configuration for this SetupIntent.
472
+ sig { returns(T.nilable(PaymentMethodOptions)) }
473
+ attr_reader :payment_method_options
474
+ # The list of payment method types (e.g. card) that this SetupIntent is allowed to set up.
475
+ sig { returns(T::Array[String]) }
476
+ attr_reader :payment_method_types
477
+ # ID of the single_use Mandate generated by the SetupIntent.
478
+ sig { returns(T.nilable(T.any(String, Stripe::Mandate))) }
479
+ attr_reader :single_use_mandate
480
+ # [Status](https://stripe.com/docs/payments/intents#intent-statuses) of this SetupIntent, one of `requires_payment_method`, `requires_confirmation`, `requires_action`, `processing`, `canceled`, or `succeeded`.
481
+ sig { returns(String) }
482
+ attr_reader :status
483
+ # Indicates how the payment method is intended to be used in the future.
484
+ #
485
+ # Use `on_session` if you intend to only reuse the payment method when the customer is in your checkout flow. Use `off_session` if your customer may or may not be in your checkout flow. If not provided, this value defaults to `off_session`.
486
+ sig { returns(String) }
487
+ attr_reader :usage
488
+ class ListParams < Stripe::RequestParams
489
+ class Created < Stripe::RequestParams
490
+ # Minimum value to filter by (exclusive)
491
+ sig { returns(Integer) }
492
+ attr_accessor :gt
493
+ # Minimum value to filter by (inclusive)
494
+ sig { returns(Integer) }
495
+ attr_accessor :gte
496
+ # Maximum value to filter by (exclusive)
497
+ sig { returns(Integer) }
498
+ attr_accessor :lt
499
+ # Maximum value to filter by (inclusive)
500
+ sig { returns(Integer) }
501
+ attr_accessor :lte
502
+ sig { params(gt: Integer, gte: Integer, lt: Integer, lte: Integer).void }
503
+ def initialize(gt: nil, gte: nil, lt: nil, lte: nil); end
504
+ end
505
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
506
+ #
507
+ # It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer.
508
+ sig { returns(T::Boolean) }
509
+ attr_accessor :attach_to_self
510
+ # A filter on the list, based on the object `created` field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options.
511
+ sig { returns(T.any(::Stripe::SetupIntent::ListParams::Created, Integer)) }
512
+ attr_accessor :created
513
+ # Only return SetupIntents for the customer specified by this customer ID.
514
+ sig { returns(String) }
515
+ attr_accessor :customer
516
+ # 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.
517
+ sig { returns(String) }
518
+ attr_accessor :ending_before
519
+ # Specifies which fields in the response should be expanded.
520
+ sig { returns(T::Array[String]) }
521
+ attr_accessor :expand
522
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
523
+ sig { returns(Integer) }
524
+ attr_accessor :limit
525
+ # Only return SetupIntents that associate with the specified payment method.
526
+ sig { returns(String) }
527
+ attr_accessor :payment_method
528
+ # 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.
529
+ sig { returns(String) }
530
+ attr_accessor :starting_after
531
+ sig {
532
+ params(attach_to_self: T::Boolean, created: T.any(::Stripe::SetupIntent::ListParams::Created, Integer), customer: String, ending_before: String, expand: T::Array[String], limit: Integer, payment_method: String, starting_after: String).void
533
+ }
534
+ def initialize(
535
+ attach_to_self: nil,
536
+ created: nil,
537
+ customer: nil,
538
+ ending_before: nil,
539
+ expand: nil,
540
+ limit: nil,
541
+ payment_method: nil,
542
+ starting_after: nil
543
+ ); end
544
+ end
545
+ class CreateParams < Stripe::RequestParams
546
+ class AutomaticPaymentMethods < Stripe::RequestParams
547
+ # Controls whether this SetupIntent will accept redirect-based payment methods.
548
+ #
549
+ # Redirect-based payment methods may require your customer to be redirected to a payment method's app or site for authentication or additional steps. To [confirm](https://stripe.com/docs/api/setup_intents/confirm) this SetupIntent, you may be required to provide a `return_url` to redirect customers back to your site after they authenticate or complete the setup.
550
+ sig { returns(String) }
551
+ attr_accessor :allow_redirects
552
+ # Whether this feature is enabled.
553
+ sig { returns(T::Boolean) }
554
+ attr_accessor :enabled
555
+ sig { params(allow_redirects: String, enabled: T::Boolean).void }
556
+ def initialize(allow_redirects: nil, enabled: nil); end
557
+ end
558
+ class MandateData < Stripe::RequestParams
559
+ class CustomerAcceptance < Stripe::RequestParams
560
+ class Offline < Stripe::RequestParams
561
+
562
+ end
563
+ class Online < Stripe::RequestParams
564
+ # The IP address from which the Mandate was accepted by the customer.
565
+ sig { returns(String) }
566
+ attr_accessor :ip_address
567
+ # The user agent of the browser from which the Mandate was accepted by the customer.
568
+ sig { returns(String) }
569
+ attr_accessor :user_agent
570
+ sig { params(ip_address: String, user_agent: String).void }
571
+ def initialize(ip_address: nil, user_agent: nil); end
572
+ end
573
+ # The time at which the customer accepted the Mandate.
574
+ sig { returns(Integer) }
575
+ attr_accessor :accepted_at
576
+ # If this is a Mandate accepted offline, this hash contains details about the offline acceptance.
577
+ sig {
578
+ returns(::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance::Offline)
579
+ }
580
+ attr_accessor :offline
581
+ # If this is a Mandate accepted online, this hash contains details about the online acceptance.
582
+ sig {
583
+ returns(::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance::Online)
584
+ }
585
+ attr_accessor :online
586
+ # The type of customer acceptance information included with the Mandate. One of `online` or `offline`.
587
+ sig { returns(String) }
588
+ attr_accessor :type
589
+ sig {
590
+ params(accepted_at: Integer, offline: ::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance::Offline, online: ::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance::Online, type: String).void
591
+ }
592
+ def initialize(accepted_at: nil, offline: nil, online: nil, type: nil); end
593
+ end
594
+ # This hash contains details about the customer acceptance of the Mandate.
595
+ sig { returns(::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance) }
596
+ attr_accessor :customer_acceptance
597
+ sig {
598
+ params(customer_acceptance: ::Stripe::SetupIntent::CreateParams::MandateData::CustomerAcceptance).void
599
+ }
600
+ def initialize(customer_acceptance: nil); end
601
+ end
602
+ class PaymentMethodData < Stripe::RequestParams
603
+ class AcssDebit < Stripe::RequestParams
604
+ # Customer's bank account number.
605
+ sig { returns(String) }
606
+ attr_accessor :account_number
607
+ # Institution number of the customer's bank.
608
+ sig { returns(String) }
609
+ attr_accessor :institution_number
610
+ # Transit number of the customer's bank.
611
+ sig { returns(String) }
612
+ attr_accessor :transit_number
613
+ sig {
614
+ params(account_number: String, institution_number: String, transit_number: String).void
615
+ }
616
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
617
+ end
618
+ class Affirm < Stripe::RequestParams
619
+
620
+ end
621
+ class AfterpayClearpay < Stripe::RequestParams
622
+
623
+ end
624
+ class Alipay < Stripe::RequestParams
625
+
626
+ end
627
+ class Alma < Stripe::RequestParams
628
+
629
+ end
630
+ class AmazonPay < Stripe::RequestParams
631
+
632
+ end
633
+ class AuBecsDebit < Stripe::RequestParams
634
+ # The account number for the bank account.
635
+ sig { returns(String) }
636
+ attr_accessor :account_number
637
+ # Bank-State-Branch number of the bank account.
638
+ sig { returns(String) }
639
+ attr_accessor :bsb_number
640
+ sig { params(account_number: String, bsb_number: String).void }
641
+ def initialize(account_number: nil, bsb_number: nil); end
642
+ end
643
+ class BacsDebit < Stripe::RequestParams
644
+ # Account number of the bank account that the funds will be debited from.
645
+ sig { returns(String) }
646
+ attr_accessor :account_number
647
+ # Sort code of the bank account. (e.g., `10-20-30`)
648
+ sig { returns(String) }
649
+ attr_accessor :sort_code
650
+ sig { params(account_number: String, sort_code: String).void }
651
+ def initialize(account_number: nil, sort_code: nil); end
652
+ end
653
+ class Bancontact < Stripe::RequestParams
654
+
655
+ end
656
+ class BillingDetails < Stripe::RequestParams
657
+ class Address < Stripe::RequestParams
658
+ # City, district, suburb, town, or village.
659
+ sig { returns(String) }
660
+ attr_accessor :city
661
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
662
+ sig { returns(String) }
663
+ attr_accessor :country
664
+ # Address line 1 (e.g., street, PO Box, or company name).
665
+ sig { returns(String) }
666
+ attr_accessor :line1
667
+ # Address line 2 (e.g., apartment, suite, unit, or building).
668
+ sig { returns(String) }
669
+ attr_accessor :line2
670
+ # ZIP or postal code.
671
+ sig { returns(String) }
672
+ attr_accessor :postal_code
673
+ # State, county, province, or region.
674
+ sig { returns(String) }
675
+ attr_accessor :state
676
+ sig {
677
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
678
+ }
679
+ def initialize(
680
+ city: nil,
681
+ country: nil,
682
+ line1: nil,
683
+ line2: nil,
684
+ postal_code: nil,
685
+ state: nil
686
+ ); end
687
+ end
688
+ # Billing address.
689
+ sig {
690
+ returns(T.nilable(::Stripe::SetupIntent::CreateParams::PaymentMethodData::BillingDetails::Address))
691
+ }
692
+ attr_accessor :address
693
+ # Email address.
694
+ sig { returns(T.nilable(String)) }
695
+ attr_accessor :email
696
+ # Full name.
697
+ sig { returns(T.nilable(String)) }
698
+ attr_accessor :name
699
+ # Billing phone number (including extension).
700
+ sig { returns(T.nilable(String)) }
701
+ attr_accessor :phone
702
+ sig {
703
+ params(address: T.nilable(::Stripe::SetupIntent::CreateParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
704
+ }
705
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
706
+ end
707
+ class Blik < Stripe::RequestParams
708
+
709
+ end
710
+ class Boleto < Stripe::RequestParams
711
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
712
+ sig { returns(String) }
713
+ attr_accessor :tax_id
714
+ sig { params(tax_id: String).void }
715
+ def initialize(tax_id: nil); end
716
+ end
717
+ class Cashapp < Stripe::RequestParams
718
+
719
+ end
720
+ class CustomerBalance < Stripe::RequestParams
721
+
722
+ end
723
+ class Eps < Stripe::RequestParams
724
+ # The customer's bank.
725
+ sig { returns(String) }
726
+ attr_accessor :bank
727
+ sig { params(bank: String).void }
728
+ def initialize(bank: nil); end
729
+ end
730
+ class Fpx < Stripe::RequestParams
731
+ # Account holder type for FPX transaction
732
+ sig { returns(String) }
733
+ attr_accessor :account_holder_type
734
+ # The customer's bank.
735
+ sig { returns(String) }
736
+ attr_accessor :bank
737
+ sig { params(account_holder_type: String, bank: String).void }
738
+ def initialize(account_holder_type: nil, bank: nil); end
739
+ end
740
+ class Giropay < Stripe::RequestParams
741
+
742
+ end
743
+ class Gopay < Stripe::RequestParams
744
+
745
+ end
746
+ class Grabpay < Stripe::RequestParams
747
+
748
+ end
749
+ class IdBankTransfer < Stripe::RequestParams
750
+ # Bank where the account is held.
751
+ sig { returns(String) }
752
+ attr_accessor :bank
753
+ sig { params(bank: String).void }
754
+ def initialize(bank: nil); end
755
+ end
756
+ class Ideal < Stripe::RequestParams
757
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
758
+ sig { returns(String) }
759
+ attr_accessor :bank
760
+ sig { params(bank: String).void }
761
+ def initialize(bank: nil); end
762
+ end
763
+ class InteracPresent < Stripe::RequestParams
764
+
765
+ end
766
+ class KakaoPay < Stripe::RequestParams
767
+
768
+ end
769
+ class Klarna < Stripe::RequestParams
770
+ class Dob < Stripe::RequestParams
771
+ # The day of birth, between 1 and 31.
772
+ sig { returns(Integer) }
773
+ attr_accessor :day
774
+ # The month of birth, between 1 and 12.
775
+ sig { returns(Integer) }
776
+ attr_accessor :month
777
+ # The four-digit year of birth.
778
+ sig { returns(Integer) }
779
+ attr_accessor :year
780
+ sig { params(day: Integer, month: Integer, year: Integer).void }
781
+ def initialize(day: nil, month: nil, year: nil); end
782
+ end
783
+ # Customer's date of birth
784
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Klarna::Dob) }
785
+ attr_accessor :dob
786
+ sig {
787
+ params(dob: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Klarna::Dob).void
788
+ }
789
+ def initialize(dob: nil); end
790
+ end
791
+ class Konbini < Stripe::RequestParams
792
+
793
+ end
794
+ class KrCard < Stripe::RequestParams
795
+
796
+ end
797
+ class Link < Stripe::RequestParams
798
+
799
+ end
800
+ class MbWay < Stripe::RequestParams
801
+
802
+ end
803
+ class Mobilepay < Stripe::RequestParams
804
+
805
+ end
806
+ class Multibanco < Stripe::RequestParams
807
+
808
+ end
809
+ class NaverPay < Stripe::RequestParams
810
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
811
+ sig { returns(String) }
812
+ attr_accessor :funding
813
+ sig { params(funding: String).void }
814
+ def initialize(funding: nil); end
815
+ end
816
+ class Oxxo < Stripe::RequestParams
817
+
818
+ end
819
+ class P24 < Stripe::RequestParams
820
+ # The customer's bank.
821
+ sig { returns(String) }
822
+ attr_accessor :bank
823
+ sig { params(bank: String).void }
824
+ def initialize(bank: nil); end
825
+ end
826
+ class Payco < Stripe::RequestParams
827
+
828
+ end
829
+ class Paynow < Stripe::RequestParams
830
+
831
+ end
832
+ class Paypal < Stripe::RequestParams
833
+
834
+ end
835
+ class Payto < Stripe::RequestParams
836
+ # The account number for the bank account.
837
+ sig { returns(String) }
838
+ attr_accessor :account_number
839
+ # Bank-State-Branch number of the bank account.
840
+ sig { returns(String) }
841
+ attr_accessor :bsb_number
842
+ # The PayID alias for the bank account.
843
+ sig { returns(String) }
844
+ attr_accessor :pay_id
845
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
846
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
847
+ end
848
+ class Pix < Stripe::RequestParams
849
+
850
+ end
851
+ class Promptpay < Stripe::RequestParams
852
+
853
+ end
854
+ class Qris < Stripe::RequestParams
855
+
856
+ end
857
+ class RadarOptions < Stripe::RequestParams
858
+ # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
859
+ sig { returns(String) }
860
+ attr_accessor :session
861
+ sig { params(session: String).void }
862
+ def initialize(session: nil); end
863
+ end
864
+ class Rechnung < Stripe::RequestParams
865
+ class Dob < Stripe::RequestParams
866
+ # The day of birth, between 1 and 31.
867
+ sig { returns(Integer) }
868
+ attr_accessor :day
869
+ # The month of birth, between 1 and 12.
870
+ sig { returns(Integer) }
871
+ attr_accessor :month
872
+ # The four-digit year of birth.
873
+ sig { returns(Integer) }
874
+ attr_accessor :year
875
+ sig { params(day: Integer, month: Integer, year: Integer).void }
876
+ def initialize(day: nil, month: nil, year: nil); end
877
+ end
878
+ # Customer's date of birth
879
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Rechnung::Dob) }
880
+ attr_accessor :dob
881
+ sig {
882
+ params(dob: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Rechnung::Dob).void
883
+ }
884
+ def initialize(dob: nil); end
885
+ end
886
+ class RevolutPay < Stripe::RequestParams
887
+
888
+ end
889
+ class SamsungPay < Stripe::RequestParams
890
+
891
+ end
892
+ class SepaDebit < Stripe::RequestParams
893
+ # IBAN of the bank account.
894
+ sig { returns(String) }
895
+ attr_accessor :iban
896
+ sig { params(iban: String).void }
897
+ def initialize(iban: nil); end
898
+ end
899
+ class Shopeepay < Stripe::RequestParams
900
+
901
+ end
902
+ class Sofort < Stripe::RequestParams
903
+ # Two-letter ISO code representing the country the bank account is located in.
904
+ sig { returns(String) }
905
+ attr_accessor :country
906
+ sig { params(country: String).void }
907
+ def initialize(country: nil); end
908
+ end
909
+ class Swish < Stripe::RequestParams
910
+
911
+ end
912
+ class Twint < Stripe::RequestParams
913
+
914
+ end
915
+ class UsBankAccount < Stripe::RequestParams
916
+ # Account holder type: individual or company.
917
+ sig { returns(String) }
918
+ attr_accessor :account_holder_type
919
+ # Account number of the bank account.
920
+ sig { returns(String) }
921
+ attr_accessor :account_number
922
+ # Account type: checkings or savings. Defaults to checking if omitted.
923
+ sig { returns(String) }
924
+ attr_accessor :account_type
925
+ # The ID of a Financial Connections Account to use as a payment method.
926
+ sig { returns(String) }
927
+ attr_accessor :financial_connections_account
928
+ # Routing number of the bank account.
929
+ sig { returns(String) }
930
+ attr_accessor :routing_number
931
+ sig {
932
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
933
+ }
934
+ def initialize(
935
+ account_holder_type: nil,
936
+ account_number: nil,
937
+ account_type: nil,
938
+ financial_connections_account: nil,
939
+ routing_number: nil
940
+ ); end
941
+ end
942
+ class WechatPay < Stripe::RequestParams
943
+
944
+ end
945
+ class Zip < Stripe::RequestParams
946
+
947
+ end
948
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
949
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::AcssDebit) }
950
+ attr_accessor :acss_debit
951
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
952
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Affirm) }
953
+ attr_accessor :affirm
954
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
955
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::AfterpayClearpay) }
956
+ attr_accessor :afterpay_clearpay
957
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
958
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Alipay) }
959
+ attr_accessor :alipay
960
+ # This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to `unspecified`.
961
+ sig { returns(String) }
962
+ attr_accessor :allow_redisplay
963
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
964
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Alma) }
965
+ attr_accessor :alma
966
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
967
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::AmazonPay) }
968
+ attr_accessor :amazon_pay
969
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
970
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::AuBecsDebit) }
971
+ attr_accessor :au_becs_debit
972
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
973
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::BacsDebit) }
974
+ attr_accessor :bacs_debit
975
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
976
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Bancontact) }
977
+ attr_accessor :bancontact
978
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
979
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::BillingDetails) }
980
+ attr_accessor :billing_details
981
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
982
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Blik) }
983
+ attr_accessor :blik
984
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
985
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Boleto) }
986
+ attr_accessor :boleto
987
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
988
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Cashapp) }
989
+ attr_accessor :cashapp
990
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
991
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::CustomerBalance) }
992
+ attr_accessor :customer_balance
993
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
994
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Eps) }
995
+ attr_accessor :eps
996
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
997
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Fpx) }
998
+ attr_accessor :fpx
999
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
1000
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Giropay) }
1001
+ attr_accessor :giropay
1002
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
1003
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Gopay) }
1004
+ attr_accessor :gopay
1005
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
1006
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Grabpay) }
1007
+ attr_accessor :grabpay
1008
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
1009
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::IdBankTransfer) }
1010
+ attr_accessor :id_bank_transfer
1011
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
1012
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Ideal) }
1013
+ attr_accessor :ideal
1014
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
1015
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::InteracPresent) }
1016
+ attr_accessor :interac_present
1017
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
1018
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::KakaoPay) }
1019
+ attr_accessor :kakao_pay
1020
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
1021
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Klarna) }
1022
+ attr_accessor :klarna
1023
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
1024
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Konbini) }
1025
+ attr_accessor :konbini
1026
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
1027
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::KrCard) }
1028
+ attr_accessor :kr_card
1029
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1030
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Link) }
1031
+ attr_accessor :link
1032
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
1033
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::MbWay) }
1034
+ attr_accessor :mb_way
1035
+ # 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`.
1036
+ sig { returns(T::Hash[String, String]) }
1037
+ attr_accessor :metadata
1038
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
1039
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Mobilepay) }
1040
+ attr_accessor :mobilepay
1041
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
1042
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Multibanco) }
1043
+ attr_accessor :multibanco
1044
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
1045
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::NaverPay) }
1046
+ attr_accessor :naver_pay
1047
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
1048
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Oxxo) }
1049
+ attr_accessor :oxxo
1050
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
1051
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::P24) }
1052
+ attr_accessor :p24
1053
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
1054
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Payco) }
1055
+ attr_accessor :payco
1056
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
1057
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Paynow) }
1058
+ attr_accessor :paynow
1059
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
1060
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Paypal) }
1061
+ attr_accessor :paypal
1062
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
1063
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Payto) }
1064
+ attr_accessor :payto
1065
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
1066
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Pix) }
1067
+ attr_accessor :pix
1068
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
1069
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Promptpay) }
1070
+ attr_accessor :promptpay
1071
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
1072
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Qris) }
1073
+ attr_accessor :qris
1074
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
1075
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::RadarOptions) }
1076
+ attr_accessor :radar_options
1077
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
1078
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Rechnung) }
1079
+ attr_accessor :rechnung
1080
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1081
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::RevolutPay) }
1082
+ attr_accessor :revolut_pay
1083
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
1084
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::SamsungPay) }
1085
+ attr_accessor :samsung_pay
1086
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
1087
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::SepaDebit) }
1088
+ attr_accessor :sepa_debit
1089
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
1090
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Shopeepay) }
1091
+ attr_accessor :shopeepay
1092
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
1093
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Sofort) }
1094
+ attr_accessor :sofort
1095
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
1096
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Swish) }
1097
+ attr_accessor :swish
1098
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
1099
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Twint) }
1100
+ attr_accessor :twint
1101
+ # The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
1102
+ sig { returns(String) }
1103
+ attr_accessor :type
1104
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
1105
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::UsBankAccount) }
1106
+ attr_accessor :us_bank_account
1107
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
1108
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::WechatPay) }
1109
+ attr_accessor :wechat_pay
1110
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
1111
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData::Zip) }
1112
+ attr_accessor :zip
1113
+ sig {
1114
+ params(acss_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::P24, payco: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntent::CreateParams::PaymentMethodData::Zip).void
1115
+ }
1116
+ def initialize(
1117
+ acss_debit: nil,
1118
+ affirm: nil,
1119
+ afterpay_clearpay: nil,
1120
+ alipay: nil,
1121
+ allow_redisplay: nil,
1122
+ alma: nil,
1123
+ amazon_pay: nil,
1124
+ au_becs_debit: nil,
1125
+ bacs_debit: nil,
1126
+ bancontact: nil,
1127
+ billing_details: nil,
1128
+ blik: nil,
1129
+ boleto: nil,
1130
+ cashapp: nil,
1131
+ customer_balance: nil,
1132
+ eps: nil,
1133
+ fpx: nil,
1134
+ giropay: nil,
1135
+ gopay: nil,
1136
+ grabpay: nil,
1137
+ id_bank_transfer: nil,
1138
+ ideal: nil,
1139
+ interac_present: nil,
1140
+ kakao_pay: nil,
1141
+ klarna: nil,
1142
+ konbini: nil,
1143
+ kr_card: nil,
1144
+ link: nil,
1145
+ mb_way: nil,
1146
+ metadata: nil,
1147
+ mobilepay: nil,
1148
+ multibanco: nil,
1149
+ naver_pay: nil,
1150
+ oxxo: nil,
1151
+ p24: nil,
1152
+ payco: nil,
1153
+ paynow: nil,
1154
+ paypal: nil,
1155
+ payto: nil,
1156
+ pix: nil,
1157
+ promptpay: nil,
1158
+ qris: nil,
1159
+ radar_options: nil,
1160
+ rechnung: nil,
1161
+ revolut_pay: nil,
1162
+ samsung_pay: nil,
1163
+ sepa_debit: nil,
1164
+ shopeepay: nil,
1165
+ sofort: nil,
1166
+ swish: nil,
1167
+ twint: nil,
1168
+ type: nil,
1169
+ us_bank_account: nil,
1170
+ wechat_pay: nil,
1171
+ zip: nil
1172
+ ); end
1173
+ end
1174
+ class PaymentMethodOptions < Stripe::RequestParams
1175
+ class AcssDebit < Stripe::RequestParams
1176
+ class MandateOptions < Stripe::RequestParams
1177
+ # A URL for custom mandate text to render during confirmation step.
1178
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
1179
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
1180
+ sig { returns(T.nilable(String)) }
1181
+ attr_accessor :custom_mandate_url
1182
+ # List of Stripe products where this mandate can be selected automatically.
1183
+ sig { returns(T::Array[String]) }
1184
+ attr_accessor :default_for
1185
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
1186
+ sig { returns(String) }
1187
+ attr_accessor :interval_description
1188
+ # Payment schedule for the mandate.
1189
+ sig { returns(String) }
1190
+ attr_accessor :payment_schedule
1191
+ # Transaction type of the mandate.
1192
+ sig { returns(String) }
1193
+ attr_accessor :transaction_type
1194
+ sig {
1195
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
1196
+ }
1197
+ def initialize(
1198
+ custom_mandate_url: nil,
1199
+ default_for: nil,
1200
+ interval_description: nil,
1201
+ payment_schedule: nil,
1202
+ transaction_type: nil
1203
+ ); end
1204
+ end
1205
+ # 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).
1206
+ sig { returns(String) }
1207
+ attr_accessor :currency
1208
+ # Additional fields for Mandate creation
1209
+ sig {
1210
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AcssDebit::MandateOptions)
1211
+ }
1212
+ attr_accessor :mandate_options
1213
+ # Bank account verification method.
1214
+ sig { returns(String) }
1215
+ attr_accessor :verification_method
1216
+ sig {
1217
+ params(currency: String, mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
1218
+ }
1219
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
1220
+ end
1221
+ class AmazonPay < Stripe::RequestParams
1222
+
1223
+ end
1224
+ class BacsDebit < Stripe::RequestParams
1225
+ class MandateOptions < Stripe::RequestParams
1226
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'DDIC' or 'STRIPE'.
1227
+ sig { returns(T.nilable(String)) }
1228
+ attr_accessor :reference_prefix
1229
+ sig { params(reference_prefix: T.nilable(String)).void }
1230
+ def initialize(reference_prefix: nil); end
1231
+ end
1232
+ # Additional fields for Mandate creation
1233
+ sig {
1234
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::BacsDebit::MandateOptions)
1235
+ }
1236
+ attr_accessor :mandate_options
1237
+ sig {
1238
+ params(mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
1239
+ }
1240
+ def initialize(mandate_options: nil); end
1241
+ end
1242
+ class Card < Stripe::RequestParams
1243
+ class MandateOptions < Stripe::RequestParams
1244
+ # Amount to be charged for future payments.
1245
+ sig { returns(Integer) }
1246
+ attr_accessor :amount
1247
+ # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
1248
+ sig { returns(String) }
1249
+ attr_accessor :amount_type
1250
+ # Currency in which future payments will be charged. 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).
1251
+ sig { returns(String) }
1252
+ attr_accessor :currency
1253
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
1254
+ sig { returns(String) }
1255
+ attr_accessor :description
1256
+ # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
1257
+ sig { returns(Integer) }
1258
+ attr_accessor :end_date
1259
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
1260
+ sig { returns(String) }
1261
+ attr_accessor :interval
1262
+ # The number of intervals between payments. For example, `interval=month` and `interval_count=3` indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when `interval=sporadic`.
1263
+ sig { returns(Integer) }
1264
+ attr_accessor :interval_count
1265
+ # Unique identifier for the mandate or subscription.
1266
+ sig { returns(String) }
1267
+ attr_accessor :reference
1268
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
1269
+ sig { returns(Integer) }
1270
+ attr_accessor :start_date
1271
+ # Specifies the type of mandates supported. Possible values are `india`.
1272
+ sig { returns(T::Array[String]) }
1273
+ attr_accessor :supported_types
1274
+ sig {
1275
+ params(amount: Integer, amount_type: String, currency: String, description: String, end_date: Integer, interval: String, interval_count: Integer, reference: String, start_date: Integer, supported_types: T::Array[String]).void
1276
+ }
1277
+ def initialize(
1278
+ amount: nil,
1279
+ amount_type: nil,
1280
+ currency: nil,
1281
+ description: nil,
1282
+ end_date: nil,
1283
+ interval: nil,
1284
+ interval_count: nil,
1285
+ reference: nil,
1286
+ start_date: nil,
1287
+ supported_types: nil
1288
+ ); end
1289
+ end
1290
+ class ThreeDSecure < Stripe::RequestParams
1291
+ class NetworkOptions < Stripe::RequestParams
1292
+ class CartesBancaires < Stripe::RequestParams
1293
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
1294
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
1295
+ # messageExtension: CB-AVALGO
1296
+ sig { returns(String) }
1297
+ attr_accessor :cb_avalgo
1298
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
1299
+ # message extension: CB-EXEMPTION; string (4 characters)
1300
+ # This is a 3 byte bitmap (low significant byte first and most significant
1301
+ # bit first) that has been Base64 encoded
1302
+ sig { returns(String) }
1303
+ attr_accessor :cb_exemption
1304
+ # The risk score returned from Cartes Bancaires in the ARes.
1305
+ # message extension: CB-SCORE; numeric value 0-99
1306
+ sig { returns(Integer) }
1307
+ attr_accessor :cb_score
1308
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
1309
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
1310
+ end
1311
+ # Cartes Bancaires-specific 3DS fields.
1312
+ sig {
1313
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
1314
+ }
1315
+ attr_accessor :cartes_bancaires
1316
+ sig {
1317
+ params(cartes_bancaires: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
1318
+ }
1319
+ def initialize(cartes_bancaires: nil); end
1320
+ end
1321
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
1322
+ sig { returns(String) }
1323
+ attr_accessor :ares_trans_status
1324
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
1325
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
1326
+ # (Most 3D Secure providers will return the base64-encoded version, which
1327
+ # is what you should specify here.)
1328
+ sig { returns(String) }
1329
+ attr_accessor :cryptogram
1330
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
1331
+ # provider and indicates what degree of authentication was performed.
1332
+ sig { returns(String) }
1333
+ attr_accessor :electronic_commerce_indicator
1334
+ # Network specific 3DS fields. Network specific arguments require an
1335
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
1336
+ # must be populated accordingly
1337
+ sig {
1338
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
1339
+ }
1340
+ attr_accessor :network_options
1341
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
1342
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
1343
+ sig { returns(String) }
1344
+ attr_accessor :requestor_challenge_indicator
1345
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
1346
+ # Transaction ID (dsTransID).
1347
+ sig { returns(String) }
1348
+ attr_accessor :transaction_id
1349
+ # The version of 3D Secure that was performed.
1350
+ sig { returns(String) }
1351
+ attr_accessor :version
1352
+ sig {
1353
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
1354
+ }
1355
+ def initialize(
1356
+ ares_trans_status: nil,
1357
+ cryptogram: nil,
1358
+ electronic_commerce_indicator: nil,
1359
+ network_options: nil,
1360
+ requestor_challenge_indicator: nil,
1361
+ transaction_id: nil,
1362
+ version: nil
1363
+ ); end
1364
+ end
1365
+ # Configuration options for setting up an eMandate for cards issued in India.
1366
+ sig {
1367
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::MandateOptions)
1368
+ }
1369
+ attr_accessor :mandate_options
1370
+ # When specified, this parameter signals that a card has been collected
1371
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
1372
+ # parameter can only be provided during confirmation.
1373
+ sig { returns(T::Boolean) }
1374
+ attr_accessor :moto
1375
+ # Selected network to process this SetupIntent on. Depends on the available networks of the card attached to the SetupIntent. Can be only set confirm-time.
1376
+ sig { returns(String) }
1377
+ attr_accessor :network
1378
+ # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
1379
+ sig { returns(String) }
1380
+ attr_accessor :request_three_d_secure
1381
+ # If 3D Secure authentication was performed with a third-party provider,
1382
+ # the authentication details to use for this setup.
1383
+ sig {
1384
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure)
1385
+ }
1386
+ attr_accessor :three_d_secure
1387
+ sig {
1388
+ params(mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card::ThreeDSecure).void
1389
+ }
1390
+ def initialize(
1391
+ mandate_options: nil,
1392
+ moto: nil,
1393
+ network: nil,
1394
+ request_three_d_secure: nil,
1395
+ three_d_secure: nil
1396
+ ); end
1397
+ end
1398
+ class CardPresent < Stripe::RequestParams
1399
+
1400
+ end
1401
+ class Link < Stripe::RequestParams
1402
+ # [Deprecated] This is a legacy parameter that no longer has any function.
1403
+ sig { returns(String) }
1404
+ attr_accessor :persistent_token
1405
+ sig { params(persistent_token: String).void }
1406
+ def initialize(persistent_token: nil); end
1407
+ end
1408
+ class Paypal < Stripe::RequestParams
1409
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
1410
+ sig { returns(String) }
1411
+ attr_accessor :billing_agreement_id
1412
+ # Attribute for param field currency
1413
+ sig { returns(String) }
1414
+ attr_accessor :currency
1415
+ # The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
1416
+ sig { returns(T::Array[String]) }
1417
+ attr_accessor :subsellers
1418
+ sig {
1419
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
1420
+ }
1421
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
1422
+ end
1423
+ class Payto < Stripe::RequestParams
1424
+ class MandateOptions < Stripe::RequestParams
1425
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
1426
+ sig { returns(Integer) }
1427
+ attr_accessor :amount
1428
+ # The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively.
1429
+ sig { returns(String) }
1430
+ attr_accessor :amount_type
1431
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
1432
+ sig { returns(String) }
1433
+ attr_accessor :end_date
1434
+ # The periodicity at which payments will be collected.
1435
+ sig { returns(String) }
1436
+ attr_accessor :payment_schedule
1437
+ # The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
1438
+ sig { returns(Integer) }
1439
+ attr_accessor :payments_per_period
1440
+ # The purpose for which payments are made. Defaults to retail.
1441
+ sig { returns(String) }
1442
+ attr_accessor :purpose
1443
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
1444
+ sig { returns(String) }
1445
+ attr_accessor :start_date
1446
+ sig {
1447
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
1448
+ }
1449
+ def initialize(
1450
+ amount: nil,
1451
+ amount_type: nil,
1452
+ end_date: nil,
1453
+ payment_schedule: nil,
1454
+ payments_per_period: nil,
1455
+ purpose: nil,
1456
+ start_date: nil
1457
+ ); end
1458
+ end
1459
+ # Additional fields for Mandate creation.
1460
+ sig {
1461
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Payto::MandateOptions)
1462
+ }
1463
+ attr_accessor :mandate_options
1464
+ sig {
1465
+ params(mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Payto::MandateOptions).void
1466
+ }
1467
+ def initialize(mandate_options: nil); end
1468
+ end
1469
+ class SepaDebit < Stripe::RequestParams
1470
+ class MandateOptions < Stripe::RequestParams
1471
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
1472
+ sig { returns(T.nilable(String)) }
1473
+ attr_accessor :reference_prefix
1474
+ sig { params(reference_prefix: T.nilable(String)).void }
1475
+ def initialize(reference_prefix: nil); end
1476
+ end
1477
+ # Additional fields for Mandate creation
1478
+ sig {
1479
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::SepaDebit::MandateOptions)
1480
+ }
1481
+ attr_accessor :mandate_options
1482
+ sig {
1483
+ params(mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
1484
+ }
1485
+ def initialize(mandate_options: nil); end
1486
+ end
1487
+ class UsBankAccount < Stripe::RequestParams
1488
+ class FinancialConnections < Stripe::RequestParams
1489
+ class Filters < Stripe::RequestParams
1490
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
1491
+ sig { returns(T::Array[String]) }
1492
+ attr_accessor :account_subcategories
1493
+ # ID of the institution to use to filter for selectable accounts.
1494
+ sig { returns(String) }
1495
+ attr_accessor :institution
1496
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
1497
+ def initialize(account_subcategories: nil, institution: nil); end
1498
+ end
1499
+ class ManualEntry < Stripe::RequestParams
1500
+ # Settings for configuring manual entry of account details.
1501
+ sig { returns(String) }
1502
+ attr_accessor :mode
1503
+ sig { params(mode: String).void }
1504
+ def initialize(mode: nil); end
1505
+ end
1506
+ # Provide filters for the linked accounts that the customer can select for the payment method
1507
+ sig {
1508
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
1509
+ }
1510
+ attr_accessor :filters
1511
+ # Customize manual entry behavior
1512
+ sig {
1513
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
1514
+ }
1515
+ attr_accessor :manual_entry
1516
+ # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
1517
+ sig { returns(T::Array[String]) }
1518
+ attr_accessor :permissions
1519
+ # List of data features that you would like to retrieve upon account creation.
1520
+ sig { returns(T::Array[String]) }
1521
+ attr_accessor :prefetch
1522
+ # For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app.
1523
+ sig { returns(String) }
1524
+ attr_accessor :return_url
1525
+ sig {
1526
+ params(filters: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
1527
+ }
1528
+ def initialize(
1529
+ filters: nil,
1530
+ manual_entry: nil,
1531
+ permissions: nil,
1532
+ prefetch: nil,
1533
+ return_url: nil
1534
+ ); end
1535
+ end
1536
+ class MandateOptions < Stripe::RequestParams
1537
+ # The method used to collect offline mandate customer acceptance.
1538
+ sig { returns(T.nilable(String)) }
1539
+ attr_accessor :collection_method
1540
+ sig { params(collection_method: T.nilable(String)).void }
1541
+ def initialize(collection_method: nil); end
1542
+ end
1543
+ class Networks < Stripe::RequestParams
1544
+ # Triggers validations to run across the selected networks
1545
+ sig { returns(T::Array[String]) }
1546
+ attr_accessor :requested
1547
+ sig { params(requested: T::Array[String]).void }
1548
+ def initialize(requested: nil); end
1549
+ end
1550
+ # Additional fields for Financial Connections Session creation
1551
+ sig {
1552
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
1553
+ }
1554
+ attr_accessor :financial_connections
1555
+ # Additional fields for Mandate creation
1556
+ sig {
1557
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
1558
+ }
1559
+ attr_accessor :mandate_options
1560
+ # Additional fields for network related functions
1561
+ sig {
1562
+ returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::Networks)
1563
+ }
1564
+ attr_accessor :networks
1565
+ # Bank account verification method.
1566
+ sig { returns(String) }
1567
+ attr_accessor :verification_method
1568
+ sig {
1569
+ params(financial_connections: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
1570
+ }
1571
+ def initialize(
1572
+ financial_connections: nil,
1573
+ mandate_options: nil,
1574
+ networks: nil,
1575
+ verification_method: nil
1576
+ ); end
1577
+ end
1578
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
1579
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AcssDebit) }
1580
+ attr_accessor :acss_debit
1581
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
1582
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AmazonPay) }
1583
+ attr_accessor :amazon_pay
1584
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
1585
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::BacsDebit) }
1586
+ attr_accessor :bacs_debit
1587
+ # Configuration for any card setup attempted on this SetupIntent.
1588
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card) }
1589
+ attr_accessor :card
1590
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
1591
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::CardPresent) }
1592
+ attr_accessor :card_present
1593
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
1594
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Link) }
1595
+ attr_accessor :link
1596
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
1597
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Paypal) }
1598
+ attr_accessor :paypal
1599
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
1600
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Payto) }
1601
+ attr_accessor :payto
1602
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
1603
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::SepaDebit) }
1604
+ attr_accessor :sepa_debit
1605
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
1606
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount) }
1607
+ attr_accessor :us_bank_account
1608
+ sig {
1609
+ params(acss_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions::UsBankAccount).void
1610
+ }
1611
+ def initialize(
1612
+ acss_debit: nil,
1613
+ amazon_pay: nil,
1614
+ bacs_debit: nil,
1615
+ card: nil,
1616
+ card_present: nil,
1617
+ link: nil,
1618
+ paypal: nil,
1619
+ payto: nil,
1620
+ sepa_debit: nil,
1621
+ us_bank_account: nil
1622
+ ); end
1623
+ end
1624
+ class SingleUse < Stripe::RequestParams
1625
+ # Amount the customer is granting permission to collect later. A positive integer representing how much to charge in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a zero-decimal currency). The minimum amount is $0.50 US or [equivalent in charge currency](https://stripe.com/docs/currencies#minimum-and-maximum-charge-amounts). The amount value supports up to eight digits (e.g., a value of 99999999 for a USD charge of $999,999.99).
1626
+ sig { returns(Integer) }
1627
+ attr_accessor :amount
1628
+ # 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).
1629
+ sig { returns(String) }
1630
+ attr_accessor :currency
1631
+ sig { params(amount: Integer, currency: String).void }
1632
+ def initialize(amount: nil, currency: nil); end
1633
+ end
1634
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
1635
+ #
1636
+ # It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer.
1637
+ sig { returns(T::Boolean) }
1638
+ attr_accessor :attach_to_self
1639
+ # When you enable this parameter, this SetupIntent accepts payment methods that you enable in the Dashboard and that are compatible with its other parameters.
1640
+ sig { returns(::Stripe::SetupIntent::CreateParams::AutomaticPaymentMethods) }
1641
+ attr_accessor :automatic_payment_methods
1642
+ # Set to `true` to attempt to confirm this SetupIntent immediately. This parameter defaults to `false`. If a card is the attached payment method, you can provide a `return_url` in case further authentication is necessary.
1643
+ sig { returns(T::Boolean) }
1644
+ attr_accessor :confirm
1645
+ # ID of the ConfirmationToken used to confirm this SetupIntent.
1646
+ #
1647
+ # If the provided ConfirmationToken contains properties that are also being provided in this request, such as `payment_method`, then the values in this request will take precedence.
1648
+ sig { returns(String) }
1649
+ attr_accessor :confirmation_token
1650
+ # ID of the Customer this SetupIntent belongs to, if one exists.
1651
+ #
1652
+ # If present, the SetupIntent's payment method will be attached to the Customer on successful setup. Payment methods attached to other Customers cannot be used with this SetupIntent.
1653
+ sig { returns(String) }
1654
+ attr_accessor :customer
1655
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1656
+ sig { returns(String) }
1657
+ attr_accessor :description
1658
+ # Specifies which fields in the response should be expanded.
1659
+ sig { returns(T::Array[String]) }
1660
+ attr_accessor :expand
1661
+ # Indicates the directions of money movement for which this payment method is intended to be used.
1662
+ #
1663
+ # Include `inbound` if you intend to use the payment method as the origin to pull funds from. Include `outbound` if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes.
1664
+ sig { returns(T::Array[String]) }
1665
+ attr_accessor :flow_directions
1666
+ # This hash contains details about the mandate to create. This parameter can only be used with [`confirm=true`](https://stripe.com/docs/api/setup_intents/create#create_setup_intent-confirm).
1667
+ sig { returns(T.nilable(::Stripe::SetupIntent::CreateParams::MandateData)) }
1668
+ attr_accessor :mandate_data
1669
+ # 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`.
1670
+ sig { returns(T::Hash[String, String]) }
1671
+ attr_accessor :metadata
1672
+ # The Stripe account ID created for this SetupIntent.
1673
+ sig { returns(String) }
1674
+ attr_accessor :on_behalf_of
1675
+ # ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent.
1676
+ sig { returns(String) }
1677
+ attr_accessor :payment_method
1678
+ # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this SetupIntent.
1679
+ sig { returns(String) }
1680
+ attr_accessor :payment_method_configuration
1681
+ # When included, this hash creates a PaymentMethod that is set as the [`payment_method`](https://stripe.com/docs/api/setup_intents/object#setup_intent_object-payment_method)
1682
+ # value in the SetupIntent.
1683
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodData) }
1684
+ attr_accessor :payment_method_data
1685
+ # Payment method-specific configuration for this SetupIntent.
1686
+ sig { returns(::Stripe::SetupIntent::CreateParams::PaymentMethodOptions) }
1687
+ attr_accessor :payment_method_options
1688
+ # The list of payment method types (for example, card) that this SetupIntent can use. If you don't provide this, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).
1689
+ sig { returns(T::Array[String]) }
1690
+ attr_accessor :payment_method_types
1691
+ # The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. To redirect to a mobile application, you can alternatively supply an application URI scheme. This parameter can only be used with [`confirm=true`](https://stripe.com/docs/api/setup_intents/create#create_setup_intent-confirm).
1692
+ sig { returns(String) }
1693
+ attr_accessor :return_url
1694
+ # If you populate this hash, this SetupIntent generates a `single_use` mandate after successful completion.
1695
+ sig { returns(::Stripe::SetupIntent::CreateParams::SingleUse) }
1696
+ attr_accessor :single_use
1697
+ # Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to `off_session`.
1698
+ sig { returns(String) }
1699
+ attr_accessor :usage
1700
+ # Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
1701
+ sig { returns(T::Boolean) }
1702
+ attr_accessor :use_stripe_sdk
1703
+ sig {
1704
+ params(attach_to_self: T::Boolean, automatic_payment_methods: ::Stripe::SetupIntent::CreateParams::AutomaticPaymentMethods, confirm: T::Boolean, confirmation_token: String, customer: String, description: String, expand: T::Array[String], flow_directions: T::Array[String], mandate_data: T.nilable(::Stripe::SetupIntent::CreateParams::MandateData), metadata: T::Hash[String, String], on_behalf_of: String, payment_method: String, payment_method_configuration: String, payment_method_data: ::Stripe::SetupIntent::CreateParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntent::CreateParams::PaymentMethodOptions, payment_method_types: T::Array[String], return_url: String, single_use: ::Stripe::SetupIntent::CreateParams::SingleUse, usage: String, use_stripe_sdk: T::Boolean).void
1705
+ }
1706
+ def initialize(
1707
+ attach_to_self: nil,
1708
+ automatic_payment_methods: nil,
1709
+ confirm: nil,
1710
+ confirmation_token: nil,
1711
+ customer: nil,
1712
+ description: nil,
1713
+ expand: nil,
1714
+ flow_directions: nil,
1715
+ mandate_data: nil,
1716
+ metadata: nil,
1717
+ on_behalf_of: nil,
1718
+ payment_method: nil,
1719
+ payment_method_configuration: nil,
1720
+ payment_method_data: nil,
1721
+ payment_method_options: nil,
1722
+ payment_method_types: nil,
1723
+ return_url: nil,
1724
+ single_use: nil,
1725
+ usage: nil,
1726
+ use_stripe_sdk: nil
1727
+ ); end
1728
+ end
1729
+ class RetrieveParams < Stripe::RequestParams
1730
+ # The client secret of the SetupIntent. We require this string if you use a publishable key to retrieve the SetupIntent.
1731
+ sig { returns(String) }
1732
+ attr_accessor :client_secret
1733
+ # Specifies which fields in the response should be expanded.
1734
+ sig { returns(T::Array[String]) }
1735
+ attr_accessor :expand
1736
+ sig { params(client_secret: String, expand: T::Array[String]).void }
1737
+ def initialize(client_secret: nil, expand: nil); end
1738
+ end
1739
+ class UpdateParams < Stripe::RequestParams
1740
+ class PaymentMethodData < Stripe::RequestParams
1741
+ class AcssDebit < Stripe::RequestParams
1742
+ # Customer's bank account number.
1743
+ sig { returns(String) }
1744
+ attr_accessor :account_number
1745
+ # Institution number of the customer's bank.
1746
+ sig { returns(String) }
1747
+ attr_accessor :institution_number
1748
+ # Transit number of the customer's bank.
1749
+ sig { returns(String) }
1750
+ attr_accessor :transit_number
1751
+ sig {
1752
+ params(account_number: String, institution_number: String, transit_number: String).void
1753
+ }
1754
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
1755
+ end
1756
+ class Affirm < Stripe::RequestParams
1757
+
1758
+ end
1759
+ class AfterpayClearpay < Stripe::RequestParams
1760
+
1761
+ end
1762
+ class Alipay < Stripe::RequestParams
1763
+
1764
+ end
1765
+ class Alma < Stripe::RequestParams
1766
+
1767
+ end
1768
+ class AmazonPay < Stripe::RequestParams
1769
+
1770
+ end
1771
+ class AuBecsDebit < Stripe::RequestParams
1772
+ # The account number for the bank account.
1773
+ sig { returns(String) }
1774
+ attr_accessor :account_number
1775
+ # Bank-State-Branch number of the bank account.
1776
+ sig { returns(String) }
1777
+ attr_accessor :bsb_number
1778
+ sig { params(account_number: String, bsb_number: String).void }
1779
+ def initialize(account_number: nil, bsb_number: nil); end
1780
+ end
1781
+ class BacsDebit < Stripe::RequestParams
1782
+ # Account number of the bank account that the funds will be debited from.
1783
+ sig { returns(String) }
1784
+ attr_accessor :account_number
1785
+ # Sort code of the bank account. (e.g., `10-20-30`)
1786
+ sig { returns(String) }
1787
+ attr_accessor :sort_code
1788
+ sig { params(account_number: String, sort_code: String).void }
1789
+ def initialize(account_number: nil, sort_code: nil); end
1790
+ end
1791
+ class Bancontact < Stripe::RequestParams
1792
+
1793
+ end
1794
+ class BillingDetails < Stripe::RequestParams
1795
+ class Address < Stripe::RequestParams
1796
+ # City, district, suburb, town, or village.
1797
+ sig { returns(String) }
1798
+ attr_accessor :city
1799
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1800
+ sig { returns(String) }
1801
+ attr_accessor :country
1802
+ # Address line 1 (e.g., street, PO Box, or company name).
1803
+ sig { returns(String) }
1804
+ attr_accessor :line1
1805
+ # Address line 2 (e.g., apartment, suite, unit, or building).
1806
+ sig { returns(String) }
1807
+ attr_accessor :line2
1808
+ # ZIP or postal code.
1809
+ sig { returns(String) }
1810
+ attr_accessor :postal_code
1811
+ # State, county, province, or region.
1812
+ sig { returns(String) }
1813
+ attr_accessor :state
1814
+ sig {
1815
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
1816
+ }
1817
+ def initialize(
1818
+ city: nil,
1819
+ country: nil,
1820
+ line1: nil,
1821
+ line2: nil,
1822
+ postal_code: nil,
1823
+ state: nil
1824
+ ); end
1825
+ end
1826
+ # Billing address.
1827
+ sig {
1828
+ returns(T.nilable(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BillingDetails::Address))
1829
+ }
1830
+ attr_accessor :address
1831
+ # Email address.
1832
+ sig { returns(T.nilable(String)) }
1833
+ attr_accessor :email
1834
+ # Full name.
1835
+ sig { returns(T.nilable(String)) }
1836
+ attr_accessor :name
1837
+ # Billing phone number (including extension).
1838
+ sig { returns(T.nilable(String)) }
1839
+ attr_accessor :phone
1840
+ sig {
1841
+ params(address: T.nilable(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
1842
+ }
1843
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
1844
+ end
1845
+ class Blik < Stripe::RequestParams
1846
+
1847
+ end
1848
+ class Boleto < Stripe::RequestParams
1849
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
1850
+ sig { returns(String) }
1851
+ attr_accessor :tax_id
1852
+ sig { params(tax_id: String).void }
1853
+ def initialize(tax_id: nil); end
1854
+ end
1855
+ class Cashapp < Stripe::RequestParams
1856
+
1857
+ end
1858
+ class CustomerBalance < Stripe::RequestParams
1859
+
1860
+ end
1861
+ class Eps < Stripe::RequestParams
1862
+ # The customer's bank.
1863
+ sig { returns(String) }
1864
+ attr_accessor :bank
1865
+ sig { params(bank: String).void }
1866
+ def initialize(bank: nil); end
1867
+ end
1868
+ class Fpx < Stripe::RequestParams
1869
+ # Account holder type for FPX transaction
1870
+ sig { returns(String) }
1871
+ attr_accessor :account_holder_type
1872
+ # The customer's bank.
1873
+ sig { returns(String) }
1874
+ attr_accessor :bank
1875
+ sig { params(account_holder_type: String, bank: String).void }
1876
+ def initialize(account_holder_type: nil, bank: nil); end
1877
+ end
1878
+ class Giropay < Stripe::RequestParams
1879
+
1880
+ end
1881
+ class Gopay < Stripe::RequestParams
1882
+
1883
+ end
1884
+ class Grabpay < Stripe::RequestParams
1885
+
1886
+ end
1887
+ class IdBankTransfer < Stripe::RequestParams
1888
+ # Bank where the account is held.
1889
+ sig { returns(String) }
1890
+ attr_accessor :bank
1891
+ sig { params(bank: String).void }
1892
+ def initialize(bank: nil); end
1893
+ end
1894
+ class Ideal < Stripe::RequestParams
1895
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
1896
+ sig { returns(String) }
1897
+ attr_accessor :bank
1898
+ sig { params(bank: String).void }
1899
+ def initialize(bank: nil); end
1900
+ end
1901
+ class InteracPresent < Stripe::RequestParams
1902
+
1903
+ end
1904
+ class KakaoPay < Stripe::RequestParams
1905
+
1906
+ end
1907
+ class Klarna < Stripe::RequestParams
1908
+ class Dob < Stripe::RequestParams
1909
+ # The day of birth, between 1 and 31.
1910
+ sig { returns(Integer) }
1911
+ attr_accessor :day
1912
+ # The month of birth, between 1 and 12.
1913
+ sig { returns(Integer) }
1914
+ attr_accessor :month
1915
+ # The four-digit year of birth.
1916
+ sig { returns(Integer) }
1917
+ attr_accessor :year
1918
+ sig { params(day: Integer, month: Integer, year: Integer).void }
1919
+ def initialize(day: nil, month: nil, year: nil); end
1920
+ end
1921
+ # Customer's date of birth
1922
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Klarna::Dob) }
1923
+ attr_accessor :dob
1924
+ sig {
1925
+ params(dob: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Klarna::Dob).void
1926
+ }
1927
+ def initialize(dob: nil); end
1928
+ end
1929
+ class Konbini < Stripe::RequestParams
1930
+
1931
+ end
1932
+ class KrCard < Stripe::RequestParams
1933
+
1934
+ end
1935
+ class Link < Stripe::RequestParams
1936
+
1937
+ end
1938
+ class MbWay < Stripe::RequestParams
1939
+
1940
+ end
1941
+ class Mobilepay < Stripe::RequestParams
1942
+
1943
+ end
1944
+ class Multibanco < Stripe::RequestParams
1945
+
1946
+ end
1947
+ class NaverPay < Stripe::RequestParams
1948
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
1949
+ sig { returns(String) }
1950
+ attr_accessor :funding
1951
+ sig { params(funding: String).void }
1952
+ def initialize(funding: nil); end
1953
+ end
1954
+ class Oxxo < Stripe::RequestParams
1955
+
1956
+ end
1957
+ class P24 < Stripe::RequestParams
1958
+ # The customer's bank.
1959
+ sig { returns(String) }
1960
+ attr_accessor :bank
1961
+ sig { params(bank: String).void }
1962
+ def initialize(bank: nil); end
1963
+ end
1964
+ class Payco < Stripe::RequestParams
1965
+
1966
+ end
1967
+ class Paynow < Stripe::RequestParams
1968
+
1969
+ end
1970
+ class Paypal < Stripe::RequestParams
1971
+
1972
+ end
1973
+ class Payto < Stripe::RequestParams
1974
+ # The account number for the bank account.
1975
+ sig { returns(String) }
1976
+ attr_accessor :account_number
1977
+ # Bank-State-Branch number of the bank account.
1978
+ sig { returns(String) }
1979
+ attr_accessor :bsb_number
1980
+ # The PayID alias for the bank account.
1981
+ sig { returns(String) }
1982
+ attr_accessor :pay_id
1983
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
1984
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
1985
+ end
1986
+ class Pix < Stripe::RequestParams
1987
+
1988
+ end
1989
+ class Promptpay < Stripe::RequestParams
1990
+
1991
+ end
1992
+ class Qris < Stripe::RequestParams
1993
+
1994
+ end
1995
+ class RadarOptions < Stripe::RequestParams
1996
+ # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
1997
+ sig { returns(String) }
1998
+ attr_accessor :session
1999
+ sig { params(session: String).void }
2000
+ def initialize(session: nil); end
2001
+ end
2002
+ class Rechnung < Stripe::RequestParams
2003
+ class Dob < Stripe::RequestParams
2004
+ # The day of birth, between 1 and 31.
2005
+ sig { returns(Integer) }
2006
+ attr_accessor :day
2007
+ # The month of birth, between 1 and 12.
2008
+ sig { returns(Integer) }
2009
+ attr_accessor :month
2010
+ # The four-digit year of birth.
2011
+ sig { returns(Integer) }
2012
+ attr_accessor :year
2013
+ sig { params(day: Integer, month: Integer, year: Integer).void }
2014
+ def initialize(day: nil, month: nil, year: nil); end
2015
+ end
2016
+ # Customer's date of birth
2017
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Rechnung::Dob) }
2018
+ attr_accessor :dob
2019
+ sig {
2020
+ params(dob: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Rechnung::Dob).void
2021
+ }
2022
+ def initialize(dob: nil); end
2023
+ end
2024
+ class RevolutPay < Stripe::RequestParams
2025
+
2026
+ end
2027
+ class SamsungPay < Stripe::RequestParams
2028
+
2029
+ end
2030
+ class SepaDebit < Stripe::RequestParams
2031
+ # IBAN of the bank account.
2032
+ sig { returns(String) }
2033
+ attr_accessor :iban
2034
+ sig { params(iban: String).void }
2035
+ def initialize(iban: nil); end
2036
+ end
2037
+ class Shopeepay < Stripe::RequestParams
2038
+
2039
+ end
2040
+ class Sofort < Stripe::RequestParams
2041
+ # Two-letter ISO code representing the country the bank account is located in.
2042
+ sig { returns(String) }
2043
+ attr_accessor :country
2044
+ sig { params(country: String).void }
2045
+ def initialize(country: nil); end
2046
+ end
2047
+ class Swish < Stripe::RequestParams
2048
+
2049
+ end
2050
+ class Twint < Stripe::RequestParams
2051
+
2052
+ end
2053
+ class UsBankAccount < Stripe::RequestParams
2054
+ # Account holder type: individual or company.
2055
+ sig { returns(String) }
2056
+ attr_accessor :account_holder_type
2057
+ # Account number of the bank account.
2058
+ sig { returns(String) }
2059
+ attr_accessor :account_number
2060
+ # Account type: checkings or savings. Defaults to checking if omitted.
2061
+ sig { returns(String) }
2062
+ attr_accessor :account_type
2063
+ # The ID of a Financial Connections Account to use as a payment method.
2064
+ sig { returns(String) }
2065
+ attr_accessor :financial_connections_account
2066
+ # Routing number of the bank account.
2067
+ sig { returns(String) }
2068
+ attr_accessor :routing_number
2069
+ sig {
2070
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
2071
+ }
2072
+ def initialize(
2073
+ account_holder_type: nil,
2074
+ account_number: nil,
2075
+ account_type: nil,
2076
+ financial_connections_account: nil,
2077
+ routing_number: nil
2078
+ ); end
2079
+ end
2080
+ class WechatPay < Stripe::RequestParams
2081
+
2082
+ end
2083
+ class Zip < Stripe::RequestParams
2084
+
2085
+ end
2086
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
2087
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AcssDebit) }
2088
+ attr_accessor :acss_debit
2089
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
2090
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Affirm) }
2091
+ attr_accessor :affirm
2092
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
2093
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AfterpayClearpay) }
2094
+ attr_accessor :afterpay_clearpay
2095
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
2096
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Alipay) }
2097
+ attr_accessor :alipay
2098
+ # This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to `unspecified`.
2099
+ sig { returns(String) }
2100
+ attr_accessor :allow_redisplay
2101
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
2102
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Alma) }
2103
+ attr_accessor :alma
2104
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
2105
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AmazonPay) }
2106
+ attr_accessor :amazon_pay
2107
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
2108
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AuBecsDebit) }
2109
+ attr_accessor :au_becs_debit
2110
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
2111
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BacsDebit) }
2112
+ attr_accessor :bacs_debit
2113
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
2114
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Bancontact) }
2115
+ attr_accessor :bancontact
2116
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
2117
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BillingDetails) }
2118
+ attr_accessor :billing_details
2119
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
2120
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Blik) }
2121
+ attr_accessor :blik
2122
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
2123
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Boleto) }
2124
+ attr_accessor :boleto
2125
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
2126
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Cashapp) }
2127
+ attr_accessor :cashapp
2128
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
2129
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::CustomerBalance) }
2130
+ attr_accessor :customer_balance
2131
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
2132
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Eps) }
2133
+ attr_accessor :eps
2134
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
2135
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Fpx) }
2136
+ attr_accessor :fpx
2137
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
2138
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Giropay) }
2139
+ attr_accessor :giropay
2140
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
2141
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Gopay) }
2142
+ attr_accessor :gopay
2143
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
2144
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Grabpay) }
2145
+ attr_accessor :grabpay
2146
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
2147
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::IdBankTransfer) }
2148
+ attr_accessor :id_bank_transfer
2149
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
2150
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Ideal) }
2151
+ attr_accessor :ideal
2152
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
2153
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::InteracPresent) }
2154
+ attr_accessor :interac_present
2155
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
2156
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::KakaoPay) }
2157
+ attr_accessor :kakao_pay
2158
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
2159
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Klarna) }
2160
+ attr_accessor :klarna
2161
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
2162
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Konbini) }
2163
+ attr_accessor :konbini
2164
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
2165
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::KrCard) }
2166
+ attr_accessor :kr_card
2167
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
2168
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Link) }
2169
+ attr_accessor :link
2170
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
2171
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::MbWay) }
2172
+ attr_accessor :mb_way
2173
+ # 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`.
2174
+ sig { returns(T::Hash[String, String]) }
2175
+ attr_accessor :metadata
2176
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
2177
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Mobilepay) }
2178
+ attr_accessor :mobilepay
2179
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
2180
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Multibanco) }
2181
+ attr_accessor :multibanco
2182
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
2183
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::NaverPay) }
2184
+ attr_accessor :naver_pay
2185
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
2186
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Oxxo) }
2187
+ attr_accessor :oxxo
2188
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
2189
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::P24) }
2190
+ attr_accessor :p24
2191
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
2192
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Payco) }
2193
+ attr_accessor :payco
2194
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
2195
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Paynow) }
2196
+ attr_accessor :paynow
2197
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
2198
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Paypal) }
2199
+ attr_accessor :paypal
2200
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
2201
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Payto) }
2202
+ attr_accessor :payto
2203
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
2204
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Pix) }
2205
+ attr_accessor :pix
2206
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
2207
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Promptpay) }
2208
+ attr_accessor :promptpay
2209
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
2210
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Qris) }
2211
+ attr_accessor :qris
2212
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
2213
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::RadarOptions) }
2214
+ attr_accessor :radar_options
2215
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
2216
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Rechnung) }
2217
+ attr_accessor :rechnung
2218
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2219
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::RevolutPay) }
2220
+ attr_accessor :revolut_pay
2221
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
2222
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::SamsungPay) }
2223
+ attr_accessor :samsung_pay
2224
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
2225
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::SepaDebit) }
2226
+ attr_accessor :sepa_debit
2227
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
2228
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Shopeepay) }
2229
+ attr_accessor :shopeepay
2230
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
2231
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Sofort) }
2232
+ attr_accessor :sofort
2233
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
2234
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Swish) }
2235
+ attr_accessor :swish
2236
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
2237
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Twint) }
2238
+ attr_accessor :twint
2239
+ # The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
2240
+ sig { returns(String) }
2241
+ attr_accessor :type
2242
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
2243
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::UsBankAccount) }
2244
+ attr_accessor :us_bank_account
2245
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
2246
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::WechatPay) }
2247
+ attr_accessor :wechat_pay
2248
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
2249
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Zip) }
2250
+ attr_accessor :zip
2251
+ sig {
2252
+ params(acss_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::P24, payco: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData::Zip).void
2253
+ }
2254
+ def initialize(
2255
+ acss_debit: nil,
2256
+ affirm: nil,
2257
+ afterpay_clearpay: nil,
2258
+ alipay: nil,
2259
+ allow_redisplay: nil,
2260
+ alma: nil,
2261
+ amazon_pay: nil,
2262
+ au_becs_debit: nil,
2263
+ bacs_debit: nil,
2264
+ bancontact: nil,
2265
+ billing_details: nil,
2266
+ blik: nil,
2267
+ boleto: nil,
2268
+ cashapp: nil,
2269
+ customer_balance: nil,
2270
+ eps: nil,
2271
+ fpx: nil,
2272
+ giropay: nil,
2273
+ gopay: nil,
2274
+ grabpay: nil,
2275
+ id_bank_transfer: nil,
2276
+ ideal: nil,
2277
+ interac_present: nil,
2278
+ kakao_pay: nil,
2279
+ klarna: nil,
2280
+ konbini: nil,
2281
+ kr_card: nil,
2282
+ link: nil,
2283
+ mb_way: nil,
2284
+ metadata: nil,
2285
+ mobilepay: nil,
2286
+ multibanco: nil,
2287
+ naver_pay: nil,
2288
+ oxxo: nil,
2289
+ p24: nil,
2290
+ payco: nil,
2291
+ paynow: nil,
2292
+ paypal: nil,
2293
+ payto: nil,
2294
+ pix: nil,
2295
+ promptpay: nil,
2296
+ qris: nil,
2297
+ radar_options: nil,
2298
+ rechnung: nil,
2299
+ revolut_pay: nil,
2300
+ samsung_pay: nil,
2301
+ sepa_debit: nil,
2302
+ shopeepay: nil,
2303
+ sofort: nil,
2304
+ swish: nil,
2305
+ twint: nil,
2306
+ type: nil,
2307
+ us_bank_account: nil,
2308
+ wechat_pay: nil,
2309
+ zip: nil
2310
+ ); end
2311
+ end
2312
+ class PaymentMethodOptions < Stripe::RequestParams
2313
+ class AcssDebit < Stripe::RequestParams
2314
+ class MandateOptions < Stripe::RequestParams
2315
+ # A URL for custom mandate text to render during confirmation step.
2316
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
2317
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
2318
+ sig { returns(T.nilable(String)) }
2319
+ attr_accessor :custom_mandate_url
2320
+ # List of Stripe products where this mandate can be selected automatically.
2321
+ sig { returns(T::Array[String]) }
2322
+ attr_accessor :default_for
2323
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
2324
+ sig { returns(String) }
2325
+ attr_accessor :interval_description
2326
+ # Payment schedule for the mandate.
2327
+ sig { returns(String) }
2328
+ attr_accessor :payment_schedule
2329
+ # Transaction type of the mandate.
2330
+ sig { returns(String) }
2331
+ attr_accessor :transaction_type
2332
+ sig {
2333
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
2334
+ }
2335
+ def initialize(
2336
+ custom_mandate_url: nil,
2337
+ default_for: nil,
2338
+ interval_description: nil,
2339
+ payment_schedule: nil,
2340
+ transaction_type: nil
2341
+ ); end
2342
+ end
2343
+ # 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).
2344
+ sig { returns(String) }
2345
+ attr_accessor :currency
2346
+ # Additional fields for Mandate creation
2347
+ sig {
2348
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AcssDebit::MandateOptions)
2349
+ }
2350
+ attr_accessor :mandate_options
2351
+ # Bank account verification method.
2352
+ sig { returns(String) }
2353
+ attr_accessor :verification_method
2354
+ sig {
2355
+ params(currency: String, mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
2356
+ }
2357
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
2358
+ end
2359
+ class AmazonPay < Stripe::RequestParams
2360
+
2361
+ end
2362
+ class BacsDebit < Stripe::RequestParams
2363
+ class MandateOptions < Stripe::RequestParams
2364
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'DDIC' or 'STRIPE'.
2365
+ sig { returns(T.nilable(String)) }
2366
+ attr_accessor :reference_prefix
2367
+ sig { params(reference_prefix: T.nilable(String)).void }
2368
+ def initialize(reference_prefix: nil); end
2369
+ end
2370
+ # Additional fields for Mandate creation
2371
+ sig {
2372
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::BacsDebit::MandateOptions)
2373
+ }
2374
+ attr_accessor :mandate_options
2375
+ sig {
2376
+ params(mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
2377
+ }
2378
+ def initialize(mandate_options: nil); end
2379
+ end
2380
+ class Card < Stripe::RequestParams
2381
+ class MandateOptions < Stripe::RequestParams
2382
+ # Amount to be charged for future payments.
2383
+ sig { returns(Integer) }
2384
+ attr_accessor :amount
2385
+ # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
2386
+ sig { returns(String) }
2387
+ attr_accessor :amount_type
2388
+ # Currency in which future payments will be charged. 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).
2389
+ sig { returns(String) }
2390
+ attr_accessor :currency
2391
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
2392
+ sig { returns(String) }
2393
+ attr_accessor :description
2394
+ # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
2395
+ sig { returns(Integer) }
2396
+ attr_accessor :end_date
2397
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
2398
+ sig { returns(String) }
2399
+ attr_accessor :interval
2400
+ # The number of intervals between payments. For example, `interval=month` and `interval_count=3` indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when `interval=sporadic`.
2401
+ sig { returns(Integer) }
2402
+ attr_accessor :interval_count
2403
+ # Unique identifier for the mandate or subscription.
2404
+ sig { returns(String) }
2405
+ attr_accessor :reference
2406
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
2407
+ sig { returns(Integer) }
2408
+ attr_accessor :start_date
2409
+ # Specifies the type of mandates supported. Possible values are `india`.
2410
+ sig { returns(T::Array[String]) }
2411
+ attr_accessor :supported_types
2412
+ sig {
2413
+ params(amount: Integer, amount_type: String, currency: String, description: String, end_date: Integer, interval: String, interval_count: Integer, reference: String, start_date: Integer, supported_types: T::Array[String]).void
2414
+ }
2415
+ def initialize(
2416
+ amount: nil,
2417
+ amount_type: nil,
2418
+ currency: nil,
2419
+ description: nil,
2420
+ end_date: nil,
2421
+ interval: nil,
2422
+ interval_count: nil,
2423
+ reference: nil,
2424
+ start_date: nil,
2425
+ supported_types: nil
2426
+ ); end
2427
+ end
2428
+ class ThreeDSecure < Stripe::RequestParams
2429
+ class NetworkOptions < Stripe::RequestParams
2430
+ class CartesBancaires < Stripe::RequestParams
2431
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
2432
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
2433
+ # messageExtension: CB-AVALGO
2434
+ sig { returns(String) }
2435
+ attr_accessor :cb_avalgo
2436
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
2437
+ # message extension: CB-EXEMPTION; string (4 characters)
2438
+ # This is a 3 byte bitmap (low significant byte first and most significant
2439
+ # bit first) that has been Base64 encoded
2440
+ sig { returns(String) }
2441
+ attr_accessor :cb_exemption
2442
+ # The risk score returned from Cartes Bancaires in the ARes.
2443
+ # message extension: CB-SCORE; numeric value 0-99
2444
+ sig { returns(Integer) }
2445
+ attr_accessor :cb_score
2446
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
2447
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
2448
+ end
2449
+ # Cartes Bancaires-specific 3DS fields.
2450
+ sig {
2451
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
2452
+ }
2453
+ attr_accessor :cartes_bancaires
2454
+ sig {
2455
+ params(cartes_bancaires: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
2456
+ }
2457
+ def initialize(cartes_bancaires: nil); end
2458
+ end
2459
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
2460
+ sig { returns(String) }
2461
+ attr_accessor :ares_trans_status
2462
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
2463
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
2464
+ # (Most 3D Secure providers will return the base64-encoded version, which
2465
+ # is what you should specify here.)
2466
+ sig { returns(String) }
2467
+ attr_accessor :cryptogram
2468
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
2469
+ # provider and indicates what degree of authentication was performed.
2470
+ sig { returns(String) }
2471
+ attr_accessor :electronic_commerce_indicator
2472
+ # Network specific 3DS fields. Network specific arguments require an
2473
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
2474
+ # must be populated accordingly
2475
+ sig {
2476
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
2477
+ }
2478
+ attr_accessor :network_options
2479
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
2480
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
2481
+ sig { returns(String) }
2482
+ attr_accessor :requestor_challenge_indicator
2483
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
2484
+ # Transaction ID (dsTransID).
2485
+ sig { returns(String) }
2486
+ attr_accessor :transaction_id
2487
+ # The version of 3D Secure that was performed.
2488
+ sig { returns(String) }
2489
+ attr_accessor :version
2490
+ sig {
2491
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
2492
+ }
2493
+ def initialize(
2494
+ ares_trans_status: nil,
2495
+ cryptogram: nil,
2496
+ electronic_commerce_indicator: nil,
2497
+ network_options: nil,
2498
+ requestor_challenge_indicator: nil,
2499
+ transaction_id: nil,
2500
+ version: nil
2501
+ ); end
2502
+ end
2503
+ # Configuration options for setting up an eMandate for cards issued in India.
2504
+ sig {
2505
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::MandateOptions)
2506
+ }
2507
+ attr_accessor :mandate_options
2508
+ # When specified, this parameter signals that a card has been collected
2509
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
2510
+ # parameter can only be provided during confirmation.
2511
+ sig { returns(T::Boolean) }
2512
+ attr_accessor :moto
2513
+ # Selected network to process this SetupIntent on. Depends on the available networks of the card attached to the SetupIntent. Can be only set confirm-time.
2514
+ sig { returns(String) }
2515
+ attr_accessor :network
2516
+ # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
2517
+ sig { returns(String) }
2518
+ attr_accessor :request_three_d_secure
2519
+ # If 3D Secure authentication was performed with a third-party provider,
2520
+ # the authentication details to use for this setup.
2521
+ sig {
2522
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure)
2523
+ }
2524
+ attr_accessor :three_d_secure
2525
+ sig {
2526
+ params(mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure).void
2527
+ }
2528
+ def initialize(
2529
+ mandate_options: nil,
2530
+ moto: nil,
2531
+ network: nil,
2532
+ request_three_d_secure: nil,
2533
+ three_d_secure: nil
2534
+ ); end
2535
+ end
2536
+ class CardPresent < Stripe::RequestParams
2537
+
2538
+ end
2539
+ class Link < Stripe::RequestParams
2540
+ # [Deprecated] This is a legacy parameter that no longer has any function.
2541
+ sig { returns(String) }
2542
+ attr_accessor :persistent_token
2543
+ sig { params(persistent_token: String).void }
2544
+ def initialize(persistent_token: nil); end
2545
+ end
2546
+ class Paypal < Stripe::RequestParams
2547
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
2548
+ sig { returns(String) }
2549
+ attr_accessor :billing_agreement_id
2550
+ # Attribute for param field currency
2551
+ sig { returns(String) }
2552
+ attr_accessor :currency
2553
+ # The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
2554
+ sig { returns(T::Array[String]) }
2555
+ attr_accessor :subsellers
2556
+ sig {
2557
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
2558
+ }
2559
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
2560
+ end
2561
+ class Payto < Stripe::RequestParams
2562
+ class MandateOptions < Stripe::RequestParams
2563
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
2564
+ sig { returns(Integer) }
2565
+ attr_accessor :amount
2566
+ # The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively.
2567
+ sig { returns(String) }
2568
+ attr_accessor :amount_type
2569
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
2570
+ sig { returns(String) }
2571
+ attr_accessor :end_date
2572
+ # The periodicity at which payments will be collected.
2573
+ sig { returns(String) }
2574
+ attr_accessor :payment_schedule
2575
+ # The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
2576
+ sig { returns(Integer) }
2577
+ attr_accessor :payments_per_period
2578
+ # The purpose for which payments are made. Defaults to retail.
2579
+ sig { returns(String) }
2580
+ attr_accessor :purpose
2581
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
2582
+ sig { returns(String) }
2583
+ attr_accessor :start_date
2584
+ sig {
2585
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
2586
+ }
2587
+ def initialize(
2588
+ amount: nil,
2589
+ amount_type: nil,
2590
+ end_date: nil,
2591
+ payment_schedule: nil,
2592
+ payments_per_period: nil,
2593
+ purpose: nil,
2594
+ start_date: nil
2595
+ ); end
2596
+ end
2597
+ # Additional fields for Mandate creation.
2598
+ sig {
2599
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Payto::MandateOptions)
2600
+ }
2601
+ attr_accessor :mandate_options
2602
+ sig {
2603
+ params(mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Payto::MandateOptions).void
2604
+ }
2605
+ def initialize(mandate_options: nil); end
2606
+ end
2607
+ class SepaDebit < Stripe::RequestParams
2608
+ class MandateOptions < Stripe::RequestParams
2609
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
2610
+ sig { returns(T.nilable(String)) }
2611
+ attr_accessor :reference_prefix
2612
+ sig { params(reference_prefix: T.nilable(String)).void }
2613
+ def initialize(reference_prefix: nil); end
2614
+ end
2615
+ # Additional fields for Mandate creation
2616
+ sig {
2617
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::SepaDebit::MandateOptions)
2618
+ }
2619
+ attr_accessor :mandate_options
2620
+ sig {
2621
+ params(mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
2622
+ }
2623
+ def initialize(mandate_options: nil); end
2624
+ end
2625
+ class UsBankAccount < Stripe::RequestParams
2626
+ class FinancialConnections < Stripe::RequestParams
2627
+ class Filters < Stripe::RequestParams
2628
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
2629
+ sig { returns(T::Array[String]) }
2630
+ attr_accessor :account_subcategories
2631
+ # ID of the institution to use to filter for selectable accounts.
2632
+ sig { returns(String) }
2633
+ attr_accessor :institution
2634
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
2635
+ def initialize(account_subcategories: nil, institution: nil); end
2636
+ end
2637
+ class ManualEntry < Stripe::RequestParams
2638
+ # Settings for configuring manual entry of account details.
2639
+ sig { returns(String) }
2640
+ attr_accessor :mode
2641
+ sig { params(mode: String).void }
2642
+ def initialize(mode: nil); end
2643
+ end
2644
+ # Provide filters for the linked accounts that the customer can select for the payment method
2645
+ sig {
2646
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
2647
+ }
2648
+ attr_accessor :filters
2649
+ # Customize manual entry behavior
2650
+ sig {
2651
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
2652
+ }
2653
+ attr_accessor :manual_entry
2654
+ # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
2655
+ sig { returns(T::Array[String]) }
2656
+ attr_accessor :permissions
2657
+ # List of data features that you would like to retrieve upon account creation.
2658
+ sig { returns(T::Array[String]) }
2659
+ attr_accessor :prefetch
2660
+ # For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app.
2661
+ sig { returns(String) }
2662
+ attr_accessor :return_url
2663
+ sig {
2664
+ params(filters: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
2665
+ }
2666
+ def initialize(
2667
+ filters: nil,
2668
+ manual_entry: nil,
2669
+ permissions: nil,
2670
+ prefetch: nil,
2671
+ return_url: nil
2672
+ ); end
2673
+ end
2674
+ class MandateOptions < Stripe::RequestParams
2675
+ # The method used to collect offline mandate customer acceptance.
2676
+ sig { returns(T.nilable(String)) }
2677
+ attr_accessor :collection_method
2678
+ sig { params(collection_method: T.nilable(String)).void }
2679
+ def initialize(collection_method: nil); end
2680
+ end
2681
+ class Networks < Stripe::RequestParams
2682
+ # Triggers validations to run across the selected networks
2683
+ sig { returns(T::Array[String]) }
2684
+ attr_accessor :requested
2685
+ sig { params(requested: T::Array[String]).void }
2686
+ def initialize(requested: nil); end
2687
+ end
2688
+ # Additional fields for Financial Connections Session creation
2689
+ sig {
2690
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
2691
+ }
2692
+ attr_accessor :financial_connections
2693
+ # Additional fields for Mandate creation
2694
+ sig {
2695
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
2696
+ }
2697
+ attr_accessor :mandate_options
2698
+ # Additional fields for network related functions
2699
+ sig {
2700
+ returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::Networks)
2701
+ }
2702
+ attr_accessor :networks
2703
+ # Bank account verification method.
2704
+ sig { returns(String) }
2705
+ attr_accessor :verification_method
2706
+ sig {
2707
+ params(financial_connections: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
2708
+ }
2709
+ def initialize(
2710
+ financial_connections: nil,
2711
+ mandate_options: nil,
2712
+ networks: nil,
2713
+ verification_method: nil
2714
+ ); end
2715
+ end
2716
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
2717
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AcssDebit) }
2718
+ attr_accessor :acss_debit
2719
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
2720
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AmazonPay) }
2721
+ attr_accessor :amazon_pay
2722
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
2723
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::BacsDebit) }
2724
+ attr_accessor :bacs_debit
2725
+ # Configuration for any card setup attempted on this SetupIntent.
2726
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card) }
2727
+ attr_accessor :card
2728
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
2729
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::CardPresent) }
2730
+ attr_accessor :card_present
2731
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
2732
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Link) }
2733
+ attr_accessor :link
2734
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
2735
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Paypal) }
2736
+ attr_accessor :paypal
2737
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
2738
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Payto) }
2739
+ attr_accessor :payto
2740
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
2741
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::SepaDebit) }
2742
+ attr_accessor :sepa_debit
2743
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
2744
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount) }
2745
+ attr_accessor :us_bank_account
2746
+ sig {
2747
+ params(acss_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions::UsBankAccount).void
2748
+ }
2749
+ def initialize(
2750
+ acss_debit: nil,
2751
+ amazon_pay: nil,
2752
+ bacs_debit: nil,
2753
+ card: nil,
2754
+ card_present: nil,
2755
+ link: nil,
2756
+ paypal: nil,
2757
+ payto: nil,
2758
+ sepa_debit: nil,
2759
+ us_bank_account: nil
2760
+ ); end
2761
+ end
2762
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
2763
+ #
2764
+ # It can only be used for this Stripe Account’s own money movement flows like InboundTransfer and OutboundTransfers. It cannot be set to true when setting up a PaymentMethod for a Customer, and defaults to false when attaching a PaymentMethod to a Customer.
2765
+ sig { returns(T::Boolean) }
2766
+ attr_accessor :attach_to_self
2767
+ # ID of the Customer this SetupIntent belongs to, if one exists.
2768
+ #
2769
+ # If present, the SetupIntent's payment method will be attached to the Customer on successful setup. Payment methods attached to other Customers cannot be used with this SetupIntent.
2770
+ sig { returns(String) }
2771
+ attr_accessor :customer
2772
+ # An arbitrary string attached to the object. Often useful for displaying to users.
2773
+ sig { returns(String) }
2774
+ attr_accessor :description
2775
+ # Specifies which fields in the response should be expanded.
2776
+ sig { returns(T::Array[String]) }
2777
+ attr_accessor :expand
2778
+ # Indicates the directions of money movement for which this payment method is intended to be used.
2779
+ #
2780
+ # Include `inbound` if you intend to use the payment method as the origin to pull funds from. Include `outbound` if you intend to use the payment method as the destination to send funds to. You can include both if you intend to use the payment method for both purposes.
2781
+ sig { returns(T::Array[String]) }
2782
+ attr_accessor :flow_directions
2783
+ # 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`.
2784
+ sig { returns(T.nilable(T::Hash[String, String])) }
2785
+ attr_accessor :metadata
2786
+ # ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent. To unset this field to null, pass in an empty string.
2787
+ sig { returns(String) }
2788
+ attr_accessor :payment_method
2789
+ # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this SetupIntent.
2790
+ sig { returns(String) }
2791
+ attr_accessor :payment_method_configuration
2792
+ # When included, this hash creates a PaymentMethod that is set as the [`payment_method`](https://stripe.com/docs/api/setup_intents/object#setup_intent_object-payment_method)
2793
+ # value in the SetupIntent.
2794
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodData) }
2795
+ attr_accessor :payment_method_data
2796
+ # Payment method-specific configuration for this SetupIntent.
2797
+ sig { returns(::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions) }
2798
+ attr_accessor :payment_method_options
2799
+ # The list of payment method types (for example, card) that this SetupIntent can set up. If you don't provide this, Stripe will dynamically show relevant payment methods from your [payment method settings](https://dashboard.stripe.com/settings/payment_methods).
2800
+ sig { returns(T::Array[String]) }
2801
+ attr_accessor :payment_method_types
2802
+ sig {
2803
+ params(attach_to_self: T::Boolean, customer: String, description: String, expand: T::Array[String], flow_directions: T::Array[String], metadata: T.nilable(T::Hash[String, String]), payment_method: String, payment_method_configuration: String, payment_method_data: ::Stripe::SetupIntent::UpdateParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntent::UpdateParams::PaymentMethodOptions, payment_method_types: T::Array[String]).void
2804
+ }
2805
+ def initialize(
2806
+ attach_to_self: nil,
2807
+ customer: nil,
2808
+ description: nil,
2809
+ expand: nil,
2810
+ flow_directions: nil,
2811
+ metadata: nil,
2812
+ payment_method: nil,
2813
+ payment_method_configuration: nil,
2814
+ payment_method_data: nil,
2815
+ payment_method_options: nil,
2816
+ payment_method_types: nil
2817
+ ); end
2818
+ end
2819
+ class CancelParams < Stripe::RequestParams
2820
+ # Reason for canceling this SetupIntent. Possible values are: `abandoned`, `requested_by_customer`, or `duplicate`
2821
+ sig { returns(String) }
2822
+ attr_accessor :cancellation_reason
2823
+ # Specifies which fields in the response should be expanded.
2824
+ sig { returns(T::Array[String]) }
2825
+ attr_accessor :expand
2826
+ sig { params(cancellation_reason: String, expand: T::Array[String]).void }
2827
+ def initialize(cancellation_reason: nil, expand: nil); end
2828
+ end
2829
+ class ConfirmParams < Stripe::RequestParams
2830
+ class MandateData < Stripe::RequestParams
2831
+ class CustomerAcceptance < Stripe::RequestParams
2832
+ class Offline < Stripe::RequestParams
2833
+
2834
+ end
2835
+ class Online < Stripe::RequestParams
2836
+ # The IP address from which the Mandate was accepted by the customer.
2837
+ sig { returns(String) }
2838
+ attr_accessor :ip_address
2839
+ # The user agent of the browser from which the Mandate was accepted by the customer.
2840
+ sig { returns(String) }
2841
+ attr_accessor :user_agent
2842
+ sig { params(ip_address: String, user_agent: String).void }
2843
+ def initialize(ip_address: nil, user_agent: nil); end
2844
+ end
2845
+ # The time at which the customer accepted the Mandate.
2846
+ sig { returns(Integer) }
2847
+ attr_accessor :accepted_at
2848
+ # If this is a Mandate accepted offline, this hash contains details about the offline acceptance.
2849
+ sig {
2850
+ returns(::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance::Offline)
2851
+ }
2852
+ attr_accessor :offline
2853
+ # If this is a Mandate accepted online, this hash contains details about the online acceptance.
2854
+ sig {
2855
+ returns(::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance::Online)
2856
+ }
2857
+ attr_accessor :online
2858
+ # The type of customer acceptance information included with the Mandate. One of `online` or `offline`.
2859
+ sig { returns(String) }
2860
+ attr_accessor :type
2861
+ sig {
2862
+ params(accepted_at: Integer, offline: ::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance::Offline, online: ::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance::Online, type: String).void
2863
+ }
2864
+ def initialize(accepted_at: nil, offline: nil, online: nil, type: nil); end
2865
+ end
2866
+ # This hash contains details about the customer acceptance of the Mandate.
2867
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance) }
2868
+ attr_accessor :customer_acceptance
2869
+ sig {
2870
+ params(customer_acceptance: ::Stripe::SetupIntent::ConfirmParams::MandateData::CustomerAcceptance).void
2871
+ }
2872
+ def initialize(customer_acceptance: nil); end
2873
+ end
2874
+ class PaymentMethodData < Stripe::RequestParams
2875
+ class AcssDebit < Stripe::RequestParams
2876
+ # Customer's bank account number.
2877
+ sig { returns(String) }
2878
+ attr_accessor :account_number
2879
+ # Institution number of the customer's bank.
2880
+ sig { returns(String) }
2881
+ attr_accessor :institution_number
2882
+ # Transit number of the customer's bank.
2883
+ sig { returns(String) }
2884
+ attr_accessor :transit_number
2885
+ sig {
2886
+ params(account_number: String, institution_number: String, transit_number: String).void
2887
+ }
2888
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
2889
+ end
2890
+ class Affirm < Stripe::RequestParams
2891
+
2892
+ end
2893
+ class AfterpayClearpay < Stripe::RequestParams
2894
+
2895
+ end
2896
+ class Alipay < Stripe::RequestParams
2897
+
2898
+ end
2899
+ class Alma < Stripe::RequestParams
2900
+
2901
+ end
2902
+ class AmazonPay < Stripe::RequestParams
2903
+
2904
+ end
2905
+ class AuBecsDebit < Stripe::RequestParams
2906
+ # The account number for the bank account.
2907
+ sig { returns(String) }
2908
+ attr_accessor :account_number
2909
+ # Bank-State-Branch number of the bank account.
2910
+ sig { returns(String) }
2911
+ attr_accessor :bsb_number
2912
+ sig { params(account_number: String, bsb_number: String).void }
2913
+ def initialize(account_number: nil, bsb_number: nil); end
2914
+ end
2915
+ class BacsDebit < Stripe::RequestParams
2916
+ # Account number of the bank account that the funds will be debited from.
2917
+ sig { returns(String) }
2918
+ attr_accessor :account_number
2919
+ # Sort code of the bank account. (e.g., `10-20-30`)
2920
+ sig { returns(String) }
2921
+ attr_accessor :sort_code
2922
+ sig { params(account_number: String, sort_code: String).void }
2923
+ def initialize(account_number: nil, sort_code: nil); end
2924
+ end
2925
+ class Bancontact < Stripe::RequestParams
2926
+
2927
+ end
2928
+ class BillingDetails < Stripe::RequestParams
2929
+ class Address < Stripe::RequestParams
2930
+ # City, district, suburb, town, or village.
2931
+ sig { returns(String) }
2932
+ attr_accessor :city
2933
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2934
+ sig { returns(String) }
2935
+ attr_accessor :country
2936
+ # Address line 1 (e.g., street, PO Box, or company name).
2937
+ sig { returns(String) }
2938
+ attr_accessor :line1
2939
+ # Address line 2 (e.g., apartment, suite, unit, or building).
2940
+ sig { returns(String) }
2941
+ attr_accessor :line2
2942
+ # ZIP or postal code.
2943
+ sig { returns(String) }
2944
+ attr_accessor :postal_code
2945
+ # State, county, province, or region.
2946
+ sig { returns(String) }
2947
+ attr_accessor :state
2948
+ sig {
2949
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
2950
+ }
2951
+ def initialize(
2952
+ city: nil,
2953
+ country: nil,
2954
+ line1: nil,
2955
+ line2: nil,
2956
+ postal_code: nil,
2957
+ state: nil
2958
+ ); end
2959
+ end
2960
+ # Billing address.
2961
+ sig {
2962
+ returns(T.nilable(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BillingDetails::Address))
2963
+ }
2964
+ attr_accessor :address
2965
+ # Email address.
2966
+ sig { returns(T.nilable(String)) }
2967
+ attr_accessor :email
2968
+ # Full name.
2969
+ sig { returns(T.nilable(String)) }
2970
+ attr_accessor :name
2971
+ # Billing phone number (including extension).
2972
+ sig { returns(T.nilable(String)) }
2973
+ attr_accessor :phone
2974
+ sig {
2975
+ params(address: T.nilable(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
2976
+ }
2977
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
2978
+ end
2979
+ class Blik < Stripe::RequestParams
2980
+
2981
+ end
2982
+ class Boleto < Stripe::RequestParams
2983
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
2984
+ sig { returns(String) }
2985
+ attr_accessor :tax_id
2986
+ sig { params(tax_id: String).void }
2987
+ def initialize(tax_id: nil); end
2988
+ end
2989
+ class Cashapp < Stripe::RequestParams
2990
+
2991
+ end
2992
+ class CustomerBalance < Stripe::RequestParams
2993
+
2994
+ end
2995
+ class Eps < Stripe::RequestParams
2996
+ # The customer's bank.
2997
+ sig { returns(String) }
2998
+ attr_accessor :bank
2999
+ sig { params(bank: String).void }
3000
+ def initialize(bank: nil); end
3001
+ end
3002
+ class Fpx < Stripe::RequestParams
3003
+ # Account holder type for FPX transaction
3004
+ sig { returns(String) }
3005
+ attr_accessor :account_holder_type
3006
+ # The customer's bank.
3007
+ sig { returns(String) }
3008
+ attr_accessor :bank
3009
+ sig { params(account_holder_type: String, bank: String).void }
3010
+ def initialize(account_holder_type: nil, bank: nil); end
3011
+ end
3012
+ class Giropay < Stripe::RequestParams
3013
+
3014
+ end
3015
+ class Gopay < Stripe::RequestParams
3016
+
3017
+ end
3018
+ class Grabpay < Stripe::RequestParams
3019
+
3020
+ end
3021
+ class IdBankTransfer < Stripe::RequestParams
3022
+ # Bank where the account is held.
3023
+ sig { returns(String) }
3024
+ attr_accessor :bank
3025
+ sig { params(bank: String).void }
3026
+ def initialize(bank: nil); end
3027
+ end
3028
+ class Ideal < Stripe::RequestParams
3029
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
3030
+ sig { returns(String) }
3031
+ attr_accessor :bank
3032
+ sig { params(bank: String).void }
3033
+ def initialize(bank: nil); end
3034
+ end
3035
+ class InteracPresent < Stripe::RequestParams
3036
+
3037
+ end
3038
+ class KakaoPay < Stripe::RequestParams
3039
+
3040
+ end
3041
+ class Klarna < Stripe::RequestParams
3042
+ class Dob < Stripe::RequestParams
3043
+ # The day of birth, between 1 and 31.
3044
+ sig { returns(Integer) }
3045
+ attr_accessor :day
3046
+ # The month of birth, between 1 and 12.
3047
+ sig { returns(Integer) }
3048
+ attr_accessor :month
3049
+ # The four-digit year of birth.
3050
+ sig { returns(Integer) }
3051
+ attr_accessor :year
3052
+ sig { params(day: Integer, month: Integer, year: Integer).void }
3053
+ def initialize(day: nil, month: nil, year: nil); end
3054
+ end
3055
+ # Customer's date of birth
3056
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Klarna::Dob) }
3057
+ attr_accessor :dob
3058
+ sig {
3059
+ params(dob: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Klarna::Dob).void
3060
+ }
3061
+ def initialize(dob: nil); end
3062
+ end
3063
+ class Konbini < Stripe::RequestParams
3064
+
3065
+ end
3066
+ class KrCard < Stripe::RequestParams
3067
+
3068
+ end
3069
+ class Link < Stripe::RequestParams
3070
+
3071
+ end
3072
+ class MbWay < Stripe::RequestParams
3073
+
3074
+ end
3075
+ class Mobilepay < Stripe::RequestParams
3076
+
3077
+ end
3078
+ class Multibanco < Stripe::RequestParams
3079
+
3080
+ end
3081
+ class NaverPay < Stripe::RequestParams
3082
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
3083
+ sig { returns(String) }
3084
+ attr_accessor :funding
3085
+ sig { params(funding: String).void }
3086
+ def initialize(funding: nil); end
3087
+ end
3088
+ class Oxxo < Stripe::RequestParams
3089
+
3090
+ end
3091
+ class P24 < Stripe::RequestParams
3092
+ # The customer's bank.
3093
+ sig { returns(String) }
3094
+ attr_accessor :bank
3095
+ sig { params(bank: String).void }
3096
+ def initialize(bank: nil); end
3097
+ end
3098
+ class Payco < Stripe::RequestParams
3099
+
3100
+ end
3101
+ class Paynow < Stripe::RequestParams
3102
+
3103
+ end
3104
+ class Paypal < Stripe::RequestParams
3105
+
3106
+ end
3107
+ class Payto < Stripe::RequestParams
3108
+ # The account number for the bank account.
3109
+ sig { returns(String) }
3110
+ attr_accessor :account_number
3111
+ # Bank-State-Branch number of the bank account.
3112
+ sig { returns(String) }
3113
+ attr_accessor :bsb_number
3114
+ # The PayID alias for the bank account.
3115
+ sig { returns(String) }
3116
+ attr_accessor :pay_id
3117
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
3118
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
3119
+ end
3120
+ class Pix < Stripe::RequestParams
3121
+
3122
+ end
3123
+ class Promptpay < Stripe::RequestParams
3124
+
3125
+ end
3126
+ class Qris < Stripe::RequestParams
3127
+
3128
+ end
3129
+ class RadarOptions < Stripe::RequestParams
3130
+ # A [Radar Session](https://stripe.com/docs/radar/radar-session) is a snapshot of the browser metadata and device details that help Radar make more accurate predictions on your payments.
3131
+ sig { returns(String) }
3132
+ attr_accessor :session
3133
+ sig { params(session: String).void }
3134
+ def initialize(session: nil); end
3135
+ end
3136
+ class Rechnung < Stripe::RequestParams
3137
+ class Dob < Stripe::RequestParams
3138
+ # The day of birth, between 1 and 31.
3139
+ sig { returns(Integer) }
3140
+ attr_accessor :day
3141
+ # The month of birth, between 1 and 12.
3142
+ sig { returns(Integer) }
3143
+ attr_accessor :month
3144
+ # The four-digit year of birth.
3145
+ sig { returns(Integer) }
3146
+ attr_accessor :year
3147
+ sig { params(day: Integer, month: Integer, year: Integer).void }
3148
+ def initialize(day: nil, month: nil, year: nil); end
3149
+ end
3150
+ # Customer's date of birth
3151
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Rechnung::Dob) }
3152
+ attr_accessor :dob
3153
+ sig {
3154
+ params(dob: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Rechnung::Dob).void
3155
+ }
3156
+ def initialize(dob: nil); end
3157
+ end
3158
+ class RevolutPay < Stripe::RequestParams
3159
+
3160
+ end
3161
+ class SamsungPay < Stripe::RequestParams
3162
+
3163
+ end
3164
+ class SepaDebit < Stripe::RequestParams
3165
+ # IBAN of the bank account.
3166
+ sig { returns(String) }
3167
+ attr_accessor :iban
3168
+ sig { params(iban: String).void }
3169
+ def initialize(iban: nil); end
3170
+ end
3171
+ class Shopeepay < Stripe::RequestParams
3172
+
3173
+ end
3174
+ class Sofort < Stripe::RequestParams
3175
+ # Two-letter ISO code representing the country the bank account is located in.
3176
+ sig { returns(String) }
3177
+ attr_accessor :country
3178
+ sig { params(country: String).void }
3179
+ def initialize(country: nil); end
3180
+ end
3181
+ class Swish < Stripe::RequestParams
3182
+
3183
+ end
3184
+ class Twint < Stripe::RequestParams
3185
+
3186
+ end
3187
+ class UsBankAccount < Stripe::RequestParams
3188
+ # Account holder type: individual or company.
3189
+ sig { returns(String) }
3190
+ attr_accessor :account_holder_type
3191
+ # Account number of the bank account.
3192
+ sig { returns(String) }
3193
+ attr_accessor :account_number
3194
+ # Account type: checkings or savings. Defaults to checking if omitted.
3195
+ sig { returns(String) }
3196
+ attr_accessor :account_type
3197
+ # The ID of a Financial Connections Account to use as a payment method.
3198
+ sig { returns(String) }
3199
+ attr_accessor :financial_connections_account
3200
+ # Routing number of the bank account.
3201
+ sig { returns(String) }
3202
+ attr_accessor :routing_number
3203
+ sig {
3204
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
3205
+ }
3206
+ def initialize(
3207
+ account_holder_type: nil,
3208
+ account_number: nil,
3209
+ account_type: nil,
3210
+ financial_connections_account: nil,
3211
+ routing_number: nil
3212
+ ); end
3213
+ end
3214
+ class WechatPay < Stripe::RequestParams
3215
+
3216
+ end
3217
+ class Zip < Stripe::RequestParams
3218
+
3219
+ end
3220
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
3221
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AcssDebit) }
3222
+ attr_accessor :acss_debit
3223
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
3224
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Affirm) }
3225
+ attr_accessor :affirm
3226
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
3227
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AfterpayClearpay) }
3228
+ attr_accessor :afterpay_clearpay
3229
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
3230
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Alipay) }
3231
+ attr_accessor :alipay
3232
+ # This field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to `unspecified`.
3233
+ sig { returns(String) }
3234
+ attr_accessor :allow_redisplay
3235
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
3236
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Alma) }
3237
+ attr_accessor :alma
3238
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
3239
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AmazonPay) }
3240
+ attr_accessor :amazon_pay
3241
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
3242
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AuBecsDebit) }
3243
+ attr_accessor :au_becs_debit
3244
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
3245
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BacsDebit) }
3246
+ attr_accessor :bacs_debit
3247
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
3248
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Bancontact) }
3249
+ attr_accessor :bancontact
3250
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
3251
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BillingDetails) }
3252
+ attr_accessor :billing_details
3253
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
3254
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Blik) }
3255
+ attr_accessor :blik
3256
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
3257
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Boleto) }
3258
+ attr_accessor :boleto
3259
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
3260
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Cashapp) }
3261
+ attr_accessor :cashapp
3262
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
3263
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::CustomerBalance) }
3264
+ attr_accessor :customer_balance
3265
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
3266
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Eps) }
3267
+ attr_accessor :eps
3268
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
3269
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Fpx) }
3270
+ attr_accessor :fpx
3271
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
3272
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Giropay) }
3273
+ attr_accessor :giropay
3274
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
3275
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Gopay) }
3276
+ attr_accessor :gopay
3277
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
3278
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Grabpay) }
3279
+ attr_accessor :grabpay
3280
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
3281
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::IdBankTransfer) }
3282
+ attr_accessor :id_bank_transfer
3283
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
3284
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Ideal) }
3285
+ attr_accessor :ideal
3286
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
3287
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::InteracPresent) }
3288
+ attr_accessor :interac_present
3289
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
3290
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::KakaoPay) }
3291
+ attr_accessor :kakao_pay
3292
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
3293
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Klarna) }
3294
+ attr_accessor :klarna
3295
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
3296
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Konbini) }
3297
+ attr_accessor :konbini
3298
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
3299
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::KrCard) }
3300
+ attr_accessor :kr_card
3301
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
3302
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Link) }
3303
+ attr_accessor :link
3304
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
3305
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::MbWay) }
3306
+ attr_accessor :mb_way
3307
+ # 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`.
3308
+ sig { returns(T::Hash[String, String]) }
3309
+ attr_accessor :metadata
3310
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
3311
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Mobilepay) }
3312
+ attr_accessor :mobilepay
3313
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
3314
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Multibanco) }
3315
+ attr_accessor :multibanco
3316
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
3317
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::NaverPay) }
3318
+ attr_accessor :naver_pay
3319
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
3320
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Oxxo) }
3321
+ attr_accessor :oxxo
3322
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
3323
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::P24) }
3324
+ attr_accessor :p24
3325
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
3326
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Payco) }
3327
+ attr_accessor :payco
3328
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
3329
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Paynow) }
3330
+ attr_accessor :paynow
3331
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
3332
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Paypal) }
3333
+ attr_accessor :paypal
3334
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
3335
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Payto) }
3336
+ attr_accessor :payto
3337
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
3338
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Pix) }
3339
+ attr_accessor :pix
3340
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
3341
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Promptpay) }
3342
+ attr_accessor :promptpay
3343
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
3344
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Qris) }
3345
+ attr_accessor :qris
3346
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
3347
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::RadarOptions) }
3348
+ attr_accessor :radar_options
3349
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
3350
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Rechnung) }
3351
+ attr_accessor :rechnung
3352
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
3353
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::RevolutPay) }
3354
+ attr_accessor :revolut_pay
3355
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
3356
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::SamsungPay) }
3357
+ attr_accessor :samsung_pay
3358
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
3359
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::SepaDebit) }
3360
+ attr_accessor :sepa_debit
3361
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
3362
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Shopeepay) }
3363
+ attr_accessor :shopeepay
3364
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
3365
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Sofort) }
3366
+ attr_accessor :sofort
3367
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
3368
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Swish) }
3369
+ attr_accessor :swish
3370
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
3371
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Twint) }
3372
+ attr_accessor :twint
3373
+ # The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type.
3374
+ sig { returns(String) }
3375
+ attr_accessor :type
3376
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
3377
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::UsBankAccount) }
3378
+ attr_accessor :us_bank_account
3379
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
3380
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::WechatPay) }
3381
+ attr_accessor :wechat_pay
3382
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
3383
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Zip) }
3384
+ attr_accessor :zip
3385
+ sig {
3386
+ params(acss_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::P24, payco: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData::Zip).void
3387
+ }
3388
+ def initialize(
3389
+ acss_debit: nil,
3390
+ affirm: nil,
3391
+ afterpay_clearpay: nil,
3392
+ alipay: nil,
3393
+ allow_redisplay: nil,
3394
+ alma: nil,
3395
+ amazon_pay: nil,
3396
+ au_becs_debit: nil,
3397
+ bacs_debit: nil,
3398
+ bancontact: nil,
3399
+ billing_details: nil,
3400
+ blik: nil,
3401
+ boleto: nil,
3402
+ cashapp: nil,
3403
+ customer_balance: nil,
3404
+ eps: nil,
3405
+ fpx: nil,
3406
+ giropay: nil,
3407
+ gopay: nil,
3408
+ grabpay: nil,
3409
+ id_bank_transfer: nil,
3410
+ ideal: nil,
3411
+ interac_present: nil,
3412
+ kakao_pay: nil,
3413
+ klarna: nil,
3414
+ konbini: nil,
3415
+ kr_card: nil,
3416
+ link: nil,
3417
+ mb_way: nil,
3418
+ metadata: nil,
3419
+ mobilepay: nil,
3420
+ multibanco: nil,
3421
+ naver_pay: nil,
3422
+ oxxo: nil,
3423
+ p24: nil,
3424
+ payco: nil,
3425
+ paynow: nil,
3426
+ paypal: nil,
3427
+ payto: nil,
3428
+ pix: nil,
3429
+ promptpay: nil,
3430
+ qris: nil,
3431
+ radar_options: nil,
3432
+ rechnung: nil,
3433
+ revolut_pay: nil,
3434
+ samsung_pay: nil,
3435
+ sepa_debit: nil,
3436
+ shopeepay: nil,
3437
+ sofort: nil,
3438
+ swish: nil,
3439
+ twint: nil,
3440
+ type: nil,
3441
+ us_bank_account: nil,
3442
+ wechat_pay: nil,
3443
+ zip: nil
3444
+ ); end
3445
+ end
3446
+ class PaymentMethodOptions < Stripe::RequestParams
3447
+ class AcssDebit < Stripe::RequestParams
3448
+ class MandateOptions < Stripe::RequestParams
3449
+ # A URL for custom mandate text to render during confirmation step.
3450
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
3451
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
3452
+ sig { returns(T.nilable(String)) }
3453
+ attr_accessor :custom_mandate_url
3454
+ # List of Stripe products where this mandate can be selected automatically.
3455
+ sig { returns(T::Array[String]) }
3456
+ attr_accessor :default_for
3457
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
3458
+ sig { returns(String) }
3459
+ attr_accessor :interval_description
3460
+ # Payment schedule for the mandate.
3461
+ sig { returns(String) }
3462
+ attr_accessor :payment_schedule
3463
+ # Transaction type of the mandate.
3464
+ sig { returns(String) }
3465
+ attr_accessor :transaction_type
3466
+ sig {
3467
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
3468
+ }
3469
+ def initialize(
3470
+ custom_mandate_url: nil,
3471
+ default_for: nil,
3472
+ interval_description: nil,
3473
+ payment_schedule: nil,
3474
+ transaction_type: nil
3475
+ ); end
3476
+ end
3477
+ # 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).
3478
+ sig { returns(String) }
3479
+ attr_accessor :currency
3480
+ # Additional fields for Mandate creation
3481
+ sig {
3482
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AcssDebit::MandateOptions)
3483
+ }
3484
+ attr_accessor :mandate_options
3485
+ # Bank account verification method.
3486
+ sig { returns(String) }
3487
+ attr_accessor :verification_method
3488
+ sig {
3489
+ params(currency: String, mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
3490
+ }
3491
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
3492
+ end
3493
+ class AmazonPay < Stripe::RequestParams
3494
+
3495
+ end
3496
+ class BacsDebit < Stripe::RequestParams
3497
+ class MandateOptions < Stripe::RequestParams
3498
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'DDIC' or 'STRIPE'.
3499
+ sig { returns(T.nilable(String)) }
3500
+ attr_accessor :reference_prefix
3501
+ sig { params(reference_prefix: T.nilable(String)).void }
3502
+ def initialize(reference_prefix: nil); end
3503
+ end
3504
+ # Additional fields for Mandate creation
3505
+ sig {
3506
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::BacsDebit::MandateOptions)
3507
+ }
3508
+ attr_accessor :mandate_options
3509
+ sig {
3510
+ params(mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
3511
+ }
3512
+ def initialize(mandate_options: nil); end
3513
+ end
3514
+ class Card < Stripe::RequestParams
3515
+ class MandateOptions < Stripe::RequestParams
3516
+ # Amount to be charged for future payments.
3517
+ sig { returns(Integer) }
3518
+ attr_accessor :amount
3519
+ # One of `fixed` or `maximum`. If `fixed`, the `amount` param refers to the exact amount to be charged in future payments. If `maximum`, the amount charged can be up to the value passed for the `amount` param.
3520
+ sig { returns(String) }
3521
+ attr_accessor :amount_type
3522
+ # Currency in which future payments will be charged. 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).
3523
+ sig { returns(String) }
3524
+ attr_accessor :currency
3525
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
3526
+ sig { returns(String) }
3527
+ attr_accessor :description
3528
+ # End date of the mandate or subscription. If not provided, the mandate will be active until canceled. If provided, end date should be after start date.
3529
+ sig { returns(Integer) }
3530
+ attr_accessor :end_date
3531
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
3532
+ sig { returns(String) }
3533
+ attr_accessor :interval
3534
+ # The number of intervals between payments. For example, `interval=month` and `interval_count=3` indicates one payment every three months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). This parameter is optional when `interval=sporadic`.
3535
+ sig { returns(Integer) }
3536
+ attr_accessor :interval_count
3537
+ # Unique identifier for the mandate or subscription.
3538
+ sig { returns(String) }
3539
+ attr_accessor :reference
3540
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
3541
+ sig { returns(Integer) }
3542
+ attr_accessor :start_date
3543
+ # Specifies the type of mandates supported. Possible values are `india`.
3544
+ sig { returns(T::Array[String]) }
3545
+ attr_accessor :supported_types
3546
+ sig {
3547
+ params(amount: Integer, amount_type: String, currency: String, description: String, end_date: Integer, interval: String, interval_count: Integer, reference: String, start_date: Integer, supported_types: T::Array[String]).void
3548
+ }
3549
+ def initialize(
3550
+ amount: nil,
3551
+ amount_type: nil,
3552
+ currency: nil,
3553
+ description: nil,
3554
+ end_date: nil,
3555
+ interval: nil,
3556
+ interval_count: nil,
3557
+ reference: nil,
3558
+ start_date: nil,
3559
+ supported_types: nil
3560
+ ); end
3561
+ end
3562
+ class ThreeDSecure < Stripe::RequestParams
3563
+ class NetworkOptions < Stripe::RequestParams
3564
+ class CartesBancaires < Stripe::RequestParams
3565
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
3566
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
3567
+ # messageExtension: CB-AVALGO
3568
+ sig { returns(String) }
3569
+ attr_accessor :cb_avalgo
3570
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
3571
+ # message extension: CB-EXEMPTION; string (4 characters)
3572
+ # This is a 3 byte bitmap (low significant byte first and most significant
3573
+ # bit first) that has been Base64 encoded
3574
+ sig { returns(String) }
3575
+ attr_accessor :cb_exemption
3576
+ # The risk score returned from Cartes Bancaires in the ARes.
3577
+ # message extension: CB-SCORE; numeric value 0-99
3578
+ sig { returns(Integer) }
3579
+ attr_accessor :cb_score
3580
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
3581
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
3582
+ end
3583
+ # Cartes Bancaires-specific 3DS fields.
3584
+ sig {
3585
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
3586
+ }
3587
+ attr_accessor :cartes_bancaires
3588
+ sig {
3589
+ params(cartes_bancaires: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
3590
+ }
3591
+ def initialize(cartes_bancaires: nil); end
3592
+ end
3593
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
3594
+ sig { returns(String) }
3595
+ attr_accessor :ares_trans_status
3596
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
3597
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
3598
+ # (Most 3D Secure providers will return the base64-encoded version, which
3599
+ # is what you should specify here.)
3600
+ sig { returns(String) }
3601
+ attr_accessor :cryptogram
3602
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
3603
+ # provider and indicates what degree of authentication was performed.
3604
+ sig { returns(String) }
3605
+ attr_accessor :electronic_commerce_indicator
3606
+ # Network specific 3DS fields. Network specific arguments require an
3607
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
3608
+ # must be populated accordingly
3609
+ sig {
3610
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
3611
+ }
3612
+ attr_accessor :network_options
3613
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
3614
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
3615
+ sig { returns(String) }
3616
+ attr_accessor :requestor_challenge_indicator
3617
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
3618
+ # Transaction ID (dsTransID).
3619
+ sig { returns(String) }
3620
+ attr_accessor :transaction_id
3621
+ # The version of 3D Secure that was performed.
3622
+ sig { returns(String) }
3623
+ attr_accessor :version
3624
+ sig {
3625
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
3626
+ }
3627
+ def initialize(
3628
+ ares_trans_status: nil,
3629
+ cryptogram: nil,
3630
+ electronic_commerce_indicator: nil,
3631
+ network_options: nil,
3632
+ requestor_challenge_indicator: nil,
3633
+ transaction_id: nil,
3634
+ version: nil
3635
+ ); end
3636
+ end
3637
+ # Configuration options for setting up an eMandate for cards issued in India.
3638
+ sig {
3639
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::MandateOptions)
3640
+ }
3641
+ attr_accessor :mandate_options
3642
+ # When specified, this parameter signals that a card has been collected
3643
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
3644
+ # parameter can only be provided during confirmation.
3645
+ sig { returns(T::Boolean) }
3646
+ attr_accessor :moto
3647
+ # Selected network to process this SetupIntent on. Depends on the available networks of the card attached to the SetupIntent. Can be only set confirm-time.
3648
+ sig { returns(String) }
3649
+ attr_accessor :network
3650
+ # We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
3651
+ sig { returns(String) }
3652
+ attr_accessor :request_three_d_secure
3653
+ # If 3D Secure authentication was performed with a third-party provider,
3654
+ # the authentication details to use for this setup.
3655
+ sig {
3656
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure)
3657
+ }
3658
+ attr_accessor :three_d_secure
3659
+ sig {
3660
+ params(mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure).void
3661
+ }
3662
+ def initialize(
3663
+ mandate_options: nil,
3664
+ moto: nil,
3665
+ network: nil,
3666
+ request_three_d_secure: nil,
3667
+ three_d_secure: nil
3668
+ ); end
3669
+ end
3670
+ class CardPresent < Stripe::RequestParams
3671
+
3672
+ end
3673
+ class Link < Stripe::RequestParams
3674
+ # [Deprecated] This is a legacy parameter that no longer has any function.
3675
+ sig { returns(String) }
3676
+ attr_accessor :persistent_token
3677
+ sig { params(persistent_token: String).void }
3678
+ def initialize(persistent_token: nil); end
3679
+ end
3680
+ class Paypal < Stripe::RequestParams
3681
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
3682
+ sig { returns(String) }
3683
+ attr_accessor :billing_agreement_id
3684
+ # Attribute for param field currency
3685
+ sig { returns(String) }
3686
+ attr_accessor :currency
3687
+ # The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
3688
+ sig { returns(T::Array[String]) }
3689
+ attr_accessor :subsellers
3690
+ sig {
3691
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
3692
+ }
3693
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
3694
+ end
3695
+ class Payto < Stripe::RequestParams
3696
+ class MandateOptions < Stripe::RequestParams
3697
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
3698
+ sig { returns(Integer) }
3699
+ attr_accessor :amount
3700
+ # The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively.
3701
+ sig { returns(String) }
3702
+ attr_accessor :amount_type
3703
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
3704
+ sig { returns(String) }
3705
+ attr_accessor :end_date
3706
+ # The periodicity at which payments will be collected.
3707
+ sig { returns(String) }
3708
+ attr_accessor :payment_schedule
3709
+ # The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
3710
+ sig { returns(Integer) }
3711
+ attr_accessor :payments_per_period
3712
+ # The purpose for which payments are made. Defaults to retail.
3713
+ sig { returns(String) }
3714
+ attr_accessor :purpose
3715
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
3716
+ sig { returns(String) }
3717
+ attr_accessor :start_date
3718
+ sig {
3719
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
3720
+ }
3721
+ def initialize(
3722
+ amount: nil,
3723
+ amount_type: nil,
3724
+ end_date: nil,
3725
+ payment_schedule: nil,
3726
+ payments_per_period: nil,
3727
+ purpose: nil,
3728
+ start_date: nil
3729
+ ); end
3730
+ end
3731
+ # Additional fields for Mandate creation.
3732
+ sig {
3733
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Payto::MandateOptions)
3734
+ }
3735
+ attr_accessor :mandate_options
3736
+ sig {
3737
+ params(mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Payto::MandateOptions).void
3738
+ }
3739
+ def initialize(mandate_options: nil); end
3740
+ end
3741
+ class SepaDebit < Stripe::RequestParams
3742
+ class MandateOptions < Stripe::RequestParams
3743
+ # Prefix used to generate the Mandate reference. Must be at most 12 characters long. Must consist of only uppercase letters, numbers, spaces, or the following special characters: '/', '_', '-', '&', '.'. Cannot begin with 'STRIPE'.
3744
+ sig { returns(T.nilable(String)) }
3745
+ attr_accessor :reference_prefix
3746
+ sig { params(reference_prefix: T.nilable(String)).void }
3747
+ def initialize(reference_prefix: nil); end
3748
+ end
3749
+ # Additional fields for Mandate creation
3750
+ sig {
3751
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::SepaDebit::MandateOptions)
3752
+ }
3753
+ attr_accessor :mandate_options
3754
+ sig {
3755
+ params(mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
3756
+ }
3757
+ def initialize(mandate_options: nil); end
3758
+ end
3759
+ class UsBankAccount < Stripe::RequestParams
3760
+ class FinancialConnections < Stripe::RequestParams
3761
+ class Filters < Stripe::RequestParams
3762
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
3763
+ sig { returns(T::Array[String]) }
3764
+ attr_accessor :account_subcategories
3765
+ # ID of the institution to use to filter for selectable accounts.
3766
+ sig { returns(String) }
3767
+ attr_accessor :institution
3768
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
3769
+ def initialize(account_subcategories: nil, institution: nil); end
3770
+ end
3771
+ class ManualEntry < Stripe::RequestParams
3772
+ # Settings for configuring manual entry of account details.
3773
+ sig { returns(String) }
3774
+ attr_accessor :mode
3775
+ sig { params(mode: String).void }
3776
+ def initialize(mode: nil); end
3777
+ end
3778
+ # Provide filters for the linked accounts that the customer can select for the payment method
3779
+ sig {
3780
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
3781
+ }
3782
+ attr_accessor :filters
3783
+ # Customize manual entry behavior
3784
+ sig {
3785
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
3786
+ }
3787
+ attr_accessor :manual_entry
3788
+ # The list of permissions to request. If this parameter is passed, the `payment_method` permission must be included. Valid permissions include: `balances`, `ownership`, `payment_method`, and `transactions`.
3789
+ sig { returns(T::Array[String]) }
3790
+ attr_accessor :permissions
3791
+ # List of data features that you would like to retrieve upon account creation.
3792
+ sig { returns(T::Array[String]) }
3793
+ attr_accessor :prefetch
3794
+ # For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app.
3795
+ sig { returns(String) }
3796
+ attr_accessor :return_url
3797
+ sig {
3798
+ params(filters: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
3799
+ }
3800
+ def initialize(
3801
+ filters: nil,
3802
+ manual_entry: nil,
3803
+ permissions: nil,
3804
+ prefetch: nil,
3805
+ return_url: nil
3806
+ ); end
3807
+ end
3808
+ class MandateOptions < Stripe::RequestParams
3809
+ # The method used to collect offline mandate customer acceptance.
3810
+ sig { returns(T.nilable(String)) }
3811
+ attr_accessor :collection_method
3812
+ sig { params(collection_method: T.nilable(String)).void }
3813
+ def initialize(collection_method: nil); end
3814
+ end
3815
+ class Networks < Stripe::RequestParams
3816
+ # Triggers validations to run across the selected networks
3817
+ sig { returns(T::Array[String]) }
3818
+ attr_accessor :requested
3819
+ sig { params(requested: T::Array[String]).void }
3820
+ def initialize(requested: nil); end
3821
+ end
3822
+ # Additional fields for Financial Connections Session creation
3823
+ sig {
3824
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
3825
+ }
3826
+ attr_accessor :financial_connections
3827
+ # Additional fields for Mandate creation
3828
+ sig {
3829
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
3830
+ }
3831
+ attr_accessor :mandate_options
3832
+ # Additional fields for network related functions
3833
+ sig {
3834
+ returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::Networks)
3835
+ }
3836
+ attr_accessor :networks
3837
+ # Bank account verification method.
3838
+ sig { returns(String) }
3839
+ attr_accessor :verification_method
3840
+ sig {
3841
+ params(financial_connections: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
3842
+ }
3843
+ def initialize(
3844
+ financial_connections: nil,
3845
+ mandate_options: nil,
3846
+ networks: nil,
3847
+ verification_method: nil
3848
+ ); end
3849
+ end
3850
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
3851
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AcssDebit) }
3852
+ attr_accessor :acss_debit
3853
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
3854
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AmazonPay) }
3855
+ attr_accessor :amazon_pay
3856
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
3857
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::BacsDebit) }
3858
+ attr_accessor :bacs_debit
3859
+ # Configuration for any card setup attempted on this SetupIntent.
3860
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card) }
3861
+ attr_accessor :card
3862
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
3863
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::CardPresent) }
3864
+ attr_accessor :card_present
3865
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
3866
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Link) }
3867
+ attr_accessor :link
3868
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
3869
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Paypal) }
3870
+ attr_accessor :paypal
3871
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
3872
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Payto) }
3873
+ attr_accessor :payto
3874
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
3875
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::SepaDebit) }
3876
+ attr_accessor :sepa_debit
3877
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
3878
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount) }
3879
+ attr_accessor :us_bank_account
3880
+ sig {
3881
+ params(acss_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions::UsBankAccount).void
3882
+ }
3883
+ def initialize(
3884
+ acss_debit: nil,
3885
+ amazon_pay: nil,
3886
+ bacs_debit: nil,
3887
+ card: nil,
3888
+ card_present: nil,
3889
+ link: nil,
3890
+ paypal: nil,
3891
+ payto: nil,
3892
+ sepa_debit: nil,
3893
+ us_bank_account: nil
3894
+ ); end
3895
+ end
3896
+ # ID of the ConfirmationToken used to confirm this SetupIntent.
3897
+ #
3898
+ # If the provided ConfirmationToken contains properties that are also being provided in this request, such as `payment_method`, then the values in this request will take precedence.
3899
+ sig { returns(String) }
3900
+ attr_accessor :confirmation_token
3901
+ # Specifies which fields in the response should be expanded.
3902
+ sig { returns(T::Array[String]) }
3903
+ attr_accessor :expand
3904
+ # Attribute for param field mandate_data
3905
+ sig { returns(T.nilable(::Stripe::SetupIntent::ConfirmParams::MandateData)) }
3906
+ attr_accessor :mandate_data
3907
+ # ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent.
3908
+ sig { returns(String) }
3909
+ attr_accessor :payment_method
3910
+ # When included, this hash creates a PaymentMethod that is set as the [`payment_method`](https://stripe.com/docs/api/setup_intents/object#setup_intent_object-payment_method)
3911
+ # value in the SetupIntent.
3912
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodData) }
3913
+ attr_accessor :payment_method_data
3914
+ # Payment method-specific configuration for this SetupIntent.
3915
+ sig { returns(::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions) }
3916
+ attr_accessor :payment_method_options
3917
+ # The URL to redirect your customer back to after they authenticate on the payment method's app or site.
3918
+ # If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme.
3919
+ # This parameter is only used for cards and other redirect-based payment methods.
3920
+ sig { returns(String) }
3921
+ attr_accessor :return_url
3922
+ # Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
3923
+ sig { returns(T::Boolean) }
3924
+ attr_accessor :use_stripe_sdk
3925
+ sig {
3926
+ params(confirmation_token: String, expand: T::Array[String], mandate_data: T.nilable(::Stripe::SetupIntent::ConfirmParams::MandateData), payment_method: String, payment_method_data: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntent::ConfirmParams::PaymentMethodOptions, return_url: String, use_stripe_sdk: T::Boolean).void
3927
+ }
3928
+ def initialize(
3929
+ confirmation_token: nil,
3930
+ expand: nil,
3931
+ mandate_data: nil,
3932
+ payment_method: nil,
3933
+ payment_method_data: nil,
3934
+ payment_method_options: nil,
3935
+ return_url: nil,
3936
+ use_stripe_sdk: nil
3937
+ ); end
3938
+ end
3939
+ class VerifyMicrodepositsParams < Stripe::RequestParams
3940
+ # Two positive integers, in *cents*, equal to the values of the microdeposits sent to the bank account.
3941
+ sig { returns(T::Array[Integer]) }
3942
+ attr_accessor :amounts
3943
+ # A six-character code starting with SM present in the microdeposit sent to the bank account.
3944
+ sig { returns(String) }
3945
+ attr_accessor :descriptor_code
3946
+ # Specifies which fields in the response should be expanded.
3947
+ sig { returns(T::Array[String]) }
3948
+ attr_accessor :expand
3949
+ sig {
3950
+ params(amounts: T::Array[Integer], descriptor_code: String, expand: T::Array[String]).void
3951
+ }
3952
+ def initialize(amounts: nil, descriptor_code: nil, expand: nil); end
3953
+ end
3954
+ # You can cancel a SetupIntent object when it's in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.
3955
+ #
3956
+ # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
3957
+ sig {
3958
+ params(params: T.any(::Stripe::SetupIntent::CancelParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3959
+ }
3960
+ def cancel(params = {}, opts = {}); end
3961
+
3962
+ # You can cancel a SetupIntent object when it's in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.
3963
+ #
3964
+ # After you cancel it, setup is abandoned and any operations on the SetupIntent fail with an error. You can't cancel the SetupIntent for a Checkout Session. [Expire the Checkout Session](https://stripe.com/docs/api/checkout/sessions/expire) instead.
3965
+ sig {
3966
+ params(intent: String, params: T.any(::Stripe::SetupIntent::CancelParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3967
+ }
3968
+ def self.cancel(intent, params = {}, opts = {}); end
3969
+
3970
+ # Confirm that your customer intends to set up the current or
3971
+ # provided payment method. For example, you would confirm a SetupIntent
3972
+ # when a customer hits the “Save” button on a payment method management
3973
+ # page on your website.
3974
+ #
3975
+ # If the selected payment method does not require any additional
3976
+ # steps from the customer, the SetupIntent will transition to the
3977
+ # succeeded status.
3978
+ #
3979
+ # Otherwise, it will transition to the requires_action status and
3980
+ # suggest additional actions via next_action. If setup fails,
3981
+ # the SetupIntent will transition to the
3982
+ # requires_payment_method status or the canceled status if the
3983
+ # confirmation limit is reached.
3984
+ sig {
3985
+ params(params: T.any(::Stripe::SetupIntent::ConfirmParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3986
+ }
3987
+ def confirm(params = {}, opts = {}); end
3988
+
3989
+ # Confirm that your customer intends to set up the current or
3990
+ # provided payment method. For example, you would confirm a SetupIntent
3991
+ # when a customer hits the “Save” button on a payment method management
3992
+ # page on your website.
3993
+ #
3994
+ # If the selected payment method does not require any additional
3995
+ # steps from the customer, the SetupIntent will transition to the
3996
+ # succeeded status.
3997
+ #
3998
+ # Otherwise, it will transition to the requires_action status and
3999
+ # suggest additional actions via next_action. If setup fails,
4000
+ # the SetupIntent will transition to the
4001
+ # requires_payment_method status or the canceled status if the
4002
+ # confirmation limit is reached.
4003
+ sig {
4004
+ params(intent: String, params: T.any(::Stripe::SetupIntent::ConfirmParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
4005
+ }
4006
+ def self.confirm(intent, params = {}, opts = {}); end
4007
+
4008
+ # Creates a SetupIntent object.
4009
+ #
4010
+ # After you create the SetupIntent, attach a payment method and [confirm](https://stripe.com/docs/api/setup_intents/confirm)
4011
+ # it to collect any required permissions to charge the payment method later.
4012
+ sig {
4013
+ params(params: T.any(::Stripe::SetupIntent::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
4014
+ }
4015
+ def self.create(params = {}, opts = {}); end
4016
+
4017
+ # Returns a list of SetupIntents.
4018
+ sig {
4019
+ params(params: T.any(::Stripe::SetupIntent::ListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::ListObject)
4020
+ }
4021
+ def self.list(params = {}, opts = {}); end
4022
+
4023
+ # Updates a SetupIntent object.
4024
+ sig {
4025
+ params(id: String, params: T.any(::Stripe::SetupIntent::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
4026
+ }
4027
+ def self.update(id, params = {}, opts = {}); end
4028
+
4029
+ # Verifies microdeposits on a SetupIntent object.
4030
+ sig {
4031
+ params(params: T.any(::Stripe::SetupIntent::VerifyMicrodepositsParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
4032
+ }
4033
+ def verify_microdeposits(params = {}, opts = {}); end
4034
+
4035
+ # Verifies microdeposits on a SetupIntent object.
4036
+ sig {
4037
+ params(intent: String, params: T.any(::Stripe::SetupIntent::VerifyMicrodepositsParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
4038
+ }
4039
+ def self.verify_microdeposits(intent, params = {}, opts = {}); end
4040
+ end
4041
+ end