stripe 13.4.1 → 13.5.0.pre.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (743) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1427 -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 +5165 -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 +985 -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 +88 -0
  25. data/lib/stripe/resources/billing/credit_balance_transaction.rb +116 -0
  26. data/lib/stripe/resources/billing/credit_grant.rb +220 -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 +17 -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 +3034 -0
  41. data/lib/stripe/resources/checkout/session.rb +3690 -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 +1530 -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 +1113 -0
  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 +12910 -0
  102. data/lib/stripe/resources/payment_link.rb +1563 -0
  103. data/lib/stripe/resources/payment_method.rb +1655 -0
  104. data/lib/stripe/resources/payment_method_configuration.rb +2903 -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 +3855 -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 +202 -2
  149. data/lib/stripe/resources/terminal/configuration.rb +1060 -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 +774 -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 +1168 -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 +752 -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 +4441 -0
  186. data/lib/stripe/services/account_session_service.rb +700 -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 +48 -0
  195. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +40 -0
  196. data/lib/stripe/services/billing/credit_grant_service.rb +162 -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 +2485 -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 +10936 -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 +2088 -0
  276. data/lib/stripe/services/payment_method_domain_service.rb +76 -0
  277. data/lib/stripe/services/payment_method_service.rb +878 -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 +3497 -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 +831 -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 +680 -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 +1140 -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 +498 -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 +5188 -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 +1143 -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 +116 -0
  386. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +154 -0
  387. data/rbi/stripe/resources/billing/credit_grant.rbi +291 -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 +35 -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 +3494 -0
  402. data/rbi/stripe/resources/checkout/session.rbi +4036 -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 +1787 -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 +13895 -0
  463. data/rbi/stripe/resources/payment_link.rbi +1666 -0
  464. data/rbi/stripe/resources/payment_method.rbi +1926 -0
  465. data/rbi/stripe/resources/payment_method_configuration.rbi +3237 -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 +4062 -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 +1143 -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 +940 -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 +1192 -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 +4267 -0
  546. data/rbi/stripe/services/account_session_service.rbi +803 -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 +68 -0
  556. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  557. data/rbi/stripe/services/billing/credit_grant_service.rbi +205 -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 +2604 -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 +11477 -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 +2215 -0
  644. data/rbi/stripe/services/payment_method_domain_service.rbi +110 -0
  645. data/rbi/stripe/services/payment_method_service.rbi +897 -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 +3630 -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 +860 -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 +787 -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 +1155 -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,3630 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ class SetupIntentService < StripeService
7
+ class ListParams < Stripe::RequestParams
8
+ class Created < Stripe::RequestParams
9
+ # Minimum value to filter by (exclusive)
10
+ sig { returns(Integer) }
11
+ attr_accessor :gt
12
+ # Minimum value to filter by (inclusive)
13
+ sig { returns(Integer) }
14
+ attr_accessor :gte
15
+ # Maximum value to filter by (exclusive)
16
+ sig { returns(Integer) }
17
+ attr_accessor :lt
18
+ # Maximum value to filter by (inclusive)
19
+ sig { returns(Integer) }
20
+ attr_accessor :lte
21
+ sig { params(gt: Integer, gte: Integer, lt: Integer, lte: Integer).void }
22
+ def initialize(gt: nil, gte: nil, lt: nil, lte: nil); end
23
+ end
24
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
25
+ #
26
+ # 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.
27
+ sig { returns(T::Boolean) }
28
+ attr_accessor :attach_to_self
29
+ # 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.
30
+ sig { returns(T.any(::Stripe::SetupIntentService::ListParams::Created, Integer)) }
31
+ attr_accessor :created
32
+ # Only return SetupIntents for the customer specified by this customer ID.
33
+ sig { returns(String) }
34
+ attr_accessor :customer
35
+ # 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.
36
+ sig { returns(String) }
37
+ attr_accessor :ending_before
38
+ # Specifies which fields in the response should be expanded.
39
+ sig { returns(T::Array[String]) }
40
+ attr_accessor :expand
41
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
42
+ sig { returns(Integer) }
43
+ attr_accessor :limit
44
+ # Only return SetupIntents that associate with the specified payment method.
45
+ sig { returns(String) }
46
+ attr_accessor :payment_method
47
+ # 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.
48
+ sig { returns(String) }
49
+ attr_accessor :starting_after
50
+ sig {
51
+ params(attach_to_self: T::Boolean, created: T.any(::Stripe::SetupIntentService::ListParams::Created, Integer), customer: String, ending_before: String, expand: T::Array[String], limit: Integer, payment_method: String, starting_after: String).void
52
+ }
53
+ def initialize(
54
+ attach_to_self: nil,
55
+ created: nil,
56
+ customer: nil,
57
+ ending_before: nil,
58
+ expand: nil,
59
+ limit: nil,
60
+ payment_method: nil,
61
+ starting_after: nil
62
+ ); end
63
+ end
64
+ class CreateParams < Stripe::RequestParams
65
+ class AutomaticPaymentMethods < Stripe::RequestParams
66
+ # Controls whether this SetupIntent will accept redirect-based payment methods.
67
+ #
68
+ # 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.
69
+ sig { returns(String) }
70
+ attr_accessor :allow_redirects
71
+ # Whether this feature is enabled.
72
+ sig { returns(T::Boolean) }
73
+ attr_accessor :enabled
74
+ sig { params(allow_redirects: String, enabled: T::Boolean).void }
75
+ def initialize(allow_redirects: nil, enabled: nil); end
76
+ end
77
+ class MandateData < Stripe::RequestParams
78
+ class CustomerAcceptance < Stripe::RequestParams
79
+ class Offline < Stripe::RequestParams
80
+
81
+ end
82
+ class Online < Stripe::RequestParams
83
+ # The IP address from which the Mandate was accepted by the customer.
84
+ sig { returns(String) }
85
+ attr_accessor :ip_address
86
+ # The user agent of the browser from which the Mandate was accepted by the customer.
87
+ sig { returns(String) }
88
+ attr_accessor :user_agent
89
+ sig { params(ip_address: String, user_agent: String).void }
90
+ def initialize(ip_address: nil, user_agent: nil); end
91
+ end
92
+ # The time at which the customer accepted the Mandate.
93
+ sig { returns(Integer) }
94
+ attr_accessor :accepted_at
95
+ # If this is a Mandate accepted offline, this hash contains details about the offline acceptance.
96
+ sig {
97
+ returns(::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance::Offline)
98
+ }
99
+ attr_accessor :offline
100
+ # If this is a Mandate accepted online, this hash contains details about the online acceptance.
101
+ sig {
102
+ returns(::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance::Online)
103
+ }
104
+ attr_accessor :online
105
+ # The type of customer acceptance information included with the Mandate. One of `online` or `offline`.
106
+ sig { returns(String) }
107
+ attr_accessor :type
108
+ sig {
109
+ params(accepted_at: Integer, offline: ::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance::Offline, online: ::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance::Online, type: String).void
110
+ }
111
+ def initialize(accepted_at: nil, offline: nil, online: nil, type: nil); end
112
+ end
113
+ # This hash contains details about the customer acceptance of the Mandate.
114
+ sig { returns(::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance) }
115
+ attr_accessor :customer_acceptance
116
+ sig {
117
+ params(customer_acceptance: ::Stripe::SetupIntentService::CreateParams::MandateData::CustomerAcceptance).void
118
+ }
119
+ def initialize(customer_acceptance: nil); end
120
+ end
121
+ class PaymentMethodData < Stripe::RequestParams
122
+ class AcssDebit < Stripe::RequestParams
123
+ # Customer's bank account number.
124
+ sig { returns(String) }
125
+ attr_accessor :account_number
126
+ # Institution number of the customer's bank.
127
+ sig { returns(String) }
128
+ attr_accessor :institution_number
129
+ # Transit number of the customer's bank.
130
+ sig { returns(String) }
131
+ attr_accessor :transit_number
132
+ sig {
133
+ params(account_number: String, institution_number: String, transit_number: String).void
134
+ }
135
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
136
+ end
137
+ class Affirm < Stripe::RequestParams
138
+
139
+ end
140
+ class AfterpayClearpay < Stripe::RequestParams
141
+
142
+ end
143
+ class Alipay < Stripe::RequestParams
144
+
145
+ end
146
+ class Alma < Stripe::RequestParams
147
+
148
+ end
149
+ class AmazonPay < Stripe::RequestParams
150
+
151
+ end
152
+ class AuBecsDebit < Stripe::RequestParams
153
+ # The account number for the bank account.
154
+ sig { returns(String) }
155
+ attr_accessor :account_number
156
+ # Bank-State-Branch number of the bank account.
157
+ sig { returns(String) }
158
+ attr_accessor :bsb_number
159
+ sig { params(account_number: String, bsb_number: String).void }
160
+ def initialize(account_number: nil, bsb_number: nil); end
161
+ end
162
+ class BacsDebit < Stripe::RequestParams
163
+ # Account number of the bank account that the funds will be debited from.
164
+ sig { returns(String) }
165
+ attr_accessor :account_number
166
+ # Sort code of the bank account. (e.g., `10-20-30`)
167
+ sig { returns(String) }
168
+ attr_accessor :sort_code
169
+ sig { params(account_number: String, sort_code: String).void }
170
+ def initialize(account_number: nil, sort_code: nil); end
171
+ end
172
+ class Bancontact < Stripe::RequestParams
173
+
174
+ end
175
+ class BillingDetails < Stripe::RequestParams
176
+ class Address < Stripe::RequestParams
177
+ # City, district, suburb, town, or village.
178
+ sig { returns(String) }
179
+ attr_accessor :city
180
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
181
+ sig { returns(String) }
182
+ attr_accessor :country
183
+ # Address line 1 (e.g., street, PO Box, or company name).
184
+ sig { returns(String) }
185
+ attr_accessor :line1
186
+ # Address line 2 (e.g., apartment, suite, unit, or building).
187
+ sig { returns(String) }
188
+ attr_accessor :line2
189
+ # ZIP or postal code.
190
+ sig { returns(String) }
191
+ attr_accessor :postal_code
192
+ # State, county, province, or region.
193
+ sig { returns(String) }
194
+ attr_accessor :state
195
+ sig {
196
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
197
+ }
198
+ def initialize(
199
+ city: nil,
200
+ country: nil,
201
+ line1: nil,
202
+ line2: nil,
203
+ postal_code: nil,
204
+ state: nil
205
+ ); end
206
+ end
207
+ # Billing address.
208
+ sig {
209
+ returns(T.nilable(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BillingDetails::Address))
210
+ }
211
+ attr_accessor :address
212
+ # Email address.
213
+ sig { returns(T.nilable(String)) }
214
+ attr_accessor :email
215
+ # Full name.
216
+ sig { returns(T.nilable(String)) }
217
+ attr_accessor :name
218
+ # Billing phone number (including extension).
219
+ sig { returns(T.nilable(String)) }
220
+ attr_accessor :phone
221
+ sig {
222
+ params(address: T.nilable(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
223
+ }
224
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
225
+ end
226
+ class Blik < Stripe::RequestParams
227
+
228
+ end
229
+ class Boleto < Stripe::RequestParams
230
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
231
+ sig { returns(String) }
232
+ attr_accessor :tax_id
233
+ sig { params(tax_id: String).void }
234
+ def initialize(tax_id: nil); end
235
+ end
236
+ class Cashapp < Stripe::RequestParams
237
+
238
+ end
239
+ class CustomerBalance < Stripe::RequestParams
240
+
241
+ end
242
+ class Eps < Stripe::RequestParams
243
+ # The customer's bank.
244
+ sig { returns(String) }
245
+ attr_accessor :bank
246
+ sig { params(bank: String).void }
247
+ def initialize(bank: nil); end
248
+ end
249
+ class Fpx < Stripe::RequestParams
250
+ # Account holder type for FPX transaction
251
+ sig { returns(String) }
252
+ attr_accessor :account_holder_type
253
+ # The customer's bank.
254
+ sig { returns(String) }
255
+ attr_accessor :bank
256
+ sig { params(account_holder_type: String, bank: String).void }
257
+ def initialize(account_holder_type: nil, bank: nil); end
258
+ end
259
+ class Giropay < Stripe::RequestParams
260
+
261
+ end
262
+ class Gopay < Stripe::RequestParams
263
+
264
+ end
265
+ class Grabpay < Stripe::RequestParams
266
+
267
+ end
268
+ class IdBankTransfer < Stripe::RequestParams
269
+ # Bank where the account is held.
270
+ sig { returns(String) }
271
+ attr_accessor :bank
272
+ sig { params(bank: String).void }
273
+ def initialize(bank: nil); end
274
+ end
275
+ class Ideal < Stripe::RequestParams
276
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
277
+ sig { returns(String) }
278
+ attr_accessor :bank
279
+ sig { params(bank: String).void }
280
+ def initialize(bank: nil); end
281
+ end
282
+ class InteracPresent < Stripe::RequestParams
283
+
284
+ end
285
+ class KakaoPay < Stripe::RequestParams
286
+
287
+ end
288
+ class Klarna < Stripe::RequestParams
289
+ class Dob < Stripe::RequestParams
290
+ # The day of birth, between 1 and 31.
291
+ sig { returns(Integer) }
292
+ attr_accessor :day
293
+ # The month of birth, between 1 and 12.
294
+ sig { returns(Integer) }
295
+ attr_accessor :month
296
+ # The four-digit year of birth.
297
+ sig { returns(Integer) }
298
+ attr_accessor :year
299
+ sig { params(day: Integer, month: Integer, year: Integer).void }
300
+ def initialize(day: nil, month: nil, year: nil); end
301
+ end
302
+ # Customer's date of birth
303
+ sig {
304
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Klarna::Dob)
305
+ }
306
+ attr_accessor :dob
307
+ sig {
308
+ params(dob: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Klarna::Dob).void
309
+ }
310
+ def initialize(dob: nil); end
311
+ end
312
+ class Konbini < Stripe::RequestParams
313
+
314
+ end
315
+ class KrCard < Stripe::RequestParams
316
+
317
+ end
318
+ class Link < Stripe::RequestParams
319
+
320
+ end
321
+ class MbWay < Stripe::RequestParams
322
+
323
+ end
324
+ class Mobilepay < Stripe::RequestParams
325
+
326
+ end
327
+ class Multibanco < Stripe::RequestParams
328
+
329
+ end
330
+ class NaverPay < Stripe::RequestParams
331
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
332
+ sig { returns(String) }
333
+ attr_accessor :funding
334
+ sig { params(funding: String).void }
335
+ def initialize(funding: nil); end
336
+ end
337
+ class Oxxo < Stripe::RequestParams
338
+
339
+ end
340
+ class P24 < Stripe::RequestParams
341
+ # The customer's bank.
342
+ sig { returns(String) }
343
+ attr_accessor :bank
344
+ sig { params(bank: String).void }
345
+ def initialize(bank: nil); end
346
+ end
347
+ class PayByBank < Stripe::RequestParams
348
+
349
+ end
350
+ class Payco < Stripe::RequestParams
351
+
352
+ end
353
+ class Paynow < Stripe::RequestParams
354
+
355
+ end
356
+ class Paypal < Stripe::RequestParams
357
+
358
+ end
359
+ class Payto < Stripe::RequestParams
360
+ # The account number for the bank account.
361
+ sig { returns(String) }
362
+ attr_accessor :account_number
363
+ # Bank-State-Branch number of the bank account.
364
+ sig { returns(String) }
365
+ attr_accessor :bsb_number
366
+ # The PayID alias for the bank account.
367
+ sig { returns(String) }
368
+ attr_accessor :pay_id
369
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
370
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
371
+ end
372
+ class Pix < Stripe::RequestParams
373
+
374
+ end
375
+ class Promptpay < Stripe::RequestParams
376
+
377
+ end
378
+ class Qris < Stripe::RequestParams
379
+
380
+ end
381
+ class RadarOptions < Stripe::RequestParams
382
+ # 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.
383
+ sig { returns(String) }
384
+ attr_accessor :session
385
+ sig { params(session: String).void }
386
+ def initialize(session: nil); end
387
+ end
388
+ class Rechnung < Stripe::RequestParams
389
+ class Dob < Stripe::RequestParams
390
+ # The day of birth, between 1 and 31.
391
+ sig { returns(Integer) }
392
+ attr_accessor :day
393
+ # The month of birth, between 1 and 12.
394
+ sig { returns(Integer) }
395
+ attr_accessor :month
396
+ # The four-digit year of birth.
397
+ sig { returns(Integer) }
398
+ attr_accessor :year
399
+ sig { params(day: Integer, month: Integer, year: Integer).void }
400
+ def initialize(day: nil, month: nil, year: nil); end
401
+ end
402
+ # Customer's date of birth
403
+ sig {
404
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Rechnung::Dob)
405
+ }
406
+ attr_accessor :dob
407
+ sig {
408
+ params(dob: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Rechnung::Dob).void
409
+ }
410
+ def initialize(dob: nil); end
411
+ end
412
+ class RevolutPay < Stripe::RequestParams
413
+
414
+ end
415
+ class SamsungPay < Stripe::RequestParams
416
+
417
+ end
418
+ class SepaDebit < Stripe::RequestParams
419
+ # IBAN of the bank account.
420
+ sig { returns(String) }
421
+ attr_accessor :iban
422
+ sig { params(iban: String).void }
423
+ def initialize(iban: nil); end
424
+ end
425
+ class Shopeepay < Stripe::RequestParams
426
+
427
+ end
428
+ class Sofort < Stripe::RequestParams
429
+ # Two-letter ISO code representing the country the bank account is located in.
430
+ sig { returns(String) }
431
+ attr_accessor :country
432
+ sig { params(country: String).void }
433
+ def initialize(country: nil); end
434
+ end
435
+ class Swish < Stripe::RequestParams
436
+
437
+ end
438
+ class Twint < Stripe::RequestParams
439
+
440
+ end
441
+ class UsBankAccount < Stripe::RequestParams
442
+ # Account holder type: individual or company.
443
+ sig { returns(String) }
444
+ attr_accessor :account_holder_type
445
+ # Account number of the bank account.
446
+ sig { returns(String) }
447
+ attr_accessor :account_number
448
+ # Account type: checkings or savings. Defaults to checking if omitted.
449
+ sig { returns(String) }
450
+ attr_accessor :account_type
451
+ # The ID of a Financial Connections Account to use as a payment method.
452
+ sig { returns(String) }
453
+ attr_accessor :financial_connections_account
454
+ # Routing number of the bank account.
455
+ sig { returns(String) }
456
+ attr_accessor :routing_number
457
+ sig {
458
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
459
+ }
460
+ def initialize(
461
+ account_holder_type: nil,
462
+ account_number: nil,
463
+ account_type: nil,
464
+ financial_connections_account: nil,
465
+ routing_number: nil
466
+ ); end
467
+ end
468
+ class WechatPay < Stripe::RequestParams
469
+
470
+ end
471
+ class Zip < Stripe::RequestParams
472
+
473
+ end
474
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
475
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AcssDebit) }
476
+ attr_accessor :acss_debit
477
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
478
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Affirm) }
479
+ attr_accessor :affirm
480
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
481
+ sig {
482
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AfterpayClearpay)
483
+ }
484
+ attr_accessor :afterpay_clearpay
485
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
486
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Alipay) }
487
+ attr_accessor :alipay
488
+ # 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`.
489
+ sig { returns(String) }
490
+ attr_accessor :allow_redisplay
491
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
492
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Alma) }
493
+ attr_accessor :alma
494
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
495
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AmazonPay) }
496
+ attr_accessor :amazon_pay
497
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
498
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AuBecsDebit) }
499
+ attr_accessor :au_becs_debit
500
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
501
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BacsDebit) }
502
+ attr_accessor :bacs_debit
503
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
504
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Bancontact) }
505
+ attr_accessor :bancontact
506
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
507
+ sig {
508
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BillingDetails)
509
+ }
510
+ attr_accessor :billing_details
511
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
512
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Blik) }
513
+ attr_accessor :blik
514
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
515
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Boleto) }
516
+ attr_accessor :boleto
517
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
518
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Cashapp) }
519
+ attr_accessor :cashapp
520
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
521
+ sig {
522
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::CustomerBalance)
523
+ }
524
+ attr_accessor :customer_balance
525
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
526
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Eps) }
527
+ attr_accessor :eps
528
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
529
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Fpx) }
530
+ attr_accessor :fpx
531
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
532
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Giropay) }
533
+ attr_accessor :giropay
534
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
535
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Gopay) }
536
+ attr_accessor :gopay
537
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
538
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Grabpay) }
539
+ attr_accessor :grabpay
540
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
541
+ sig {
542
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::IdBankTransfer)
543
+ }
544
+ attr_accessor :id_bank_transfer
545
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
546
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Ideal) }
547
+ attr_accessor :ideal
548
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
549
+ sig {
550
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::InteracPresent)
551
+ }
552
+ attr_accessor :interac_present
553
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
554
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::KakaoPay) }
555
+ attr_accessor :kakao_pay
556
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
557
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Klarna) }
558
+ attr_accessor :klarna
559
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
560
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Konbini) }
561
+ attr_accessor :konbini
562
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
563
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::KrCard) }
564
+ attr_accessor :kr_card
565
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
566
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Link) }
567
+ attr_accessor :link
568
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
569
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::MbWay) }
570
+ attr_accessor :mb_way
571
+ # 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`.
572
+ sig { returns(T::Hash[String, String]) }
573
+ attr_accessor :metadata
574
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
575
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Mobilepay) }
576
+ attr_accessor :mobilepay
577
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
578
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Multibanco) }
579
+ attr_accessor :multibanco
580
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
581
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::NaverPay) }
582
+ attr_accessor :naver_pay
583
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
584
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Oxxo) }
585
+ attr_accessor :oxxo
586
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
587
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::P24) }
588
+ attr_accessor :p24
589
+ # If this is a `pay_by_bank` PaymentMethod, this hash contains details about the PayByBank payment method.
590
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::PayByBank) }
591
+ attr_accessor :pay_by_bank
592
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
593
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Payco) }
594
+ attr_accessor :payco
595
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
596
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Paynow) }
597
+ attr_accessor :paynow
598
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
599
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Paypal) }
600
+ attr_accessor :paypal
601
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
602
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Payto) }
603
+ attr_accessor :payto
604
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
605
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Pix) }
606
+ attr_accessor :pix
607
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
608
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Promptpay) }
609
+ attr_accessor :promptpay
610
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
611
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Qris) }
612
+ attr_accessor :qris
613
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
614
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::RadarOptions) }
615
+ attr_accessor :radar_options
616
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
617
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Rechnung) }
618
+ attr_accessor :rechnung
619
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
620
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::RevolutPay) }
621
+ attr_accessor :revolut_pay
622
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
623
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::SamsungPay) }
624
+ attr_accessor :samsung_pay
625
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
626
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::SepaDebit) }
627
+ attr_accessor :sepa_debit
628
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
629
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Shopeepay) }
630
+ attr_accessor :shopeepay
631
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
632
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Sofort) }
633
+ attr_accessor :sofort
634
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
635
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Swish) }
636
+ attr_accessor :swish
637
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
638
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Twint) }
639
+ attr_accessor :twint
640
+ # 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.
641
+ sig { returns(String) }
642
+ attr_accessor :type
643
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
644
+ sig {
645
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::UsBankAccount)
646
+ }
647
+ attr_accessor :us_bank_account
648
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
649
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::WechatPay) }
650
+ attr_accessor :wechat_pay
651
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
652
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Zip) }
653
+ attr_accessor :zip
654
+ sig {
655
+ params(acss_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::P24, pay_by_bank: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::PayByBank, payco: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData::Zip).void
656
+ }
657
+ def initialize(
658
+ acss_debit: nil,
659
+ affirm: nil,
660
+ afterpay_clearpay: nil,
661
+ alipay: nil,
662
+ allow_redisplay: nil,
663
+ alma: nil,
664
+ amazon_pay: nil,
665
+ au_becs_debit: nil,
666
+ bacs_debit: nil,
667
+ bancontact: nil,
668
+ billing_details: nil,
669
+ blik: nil,
670
+ boleto: nil,
671
+ cashapp: nil,
672
+ customer_balance: nil,
673
+ eps: nil,
674
+ fpx: nil,
675
+ giropay: nil,
676
+ gopay: nil,
677
+ grabpay: nil,
678
+ id_bank_transfer: nil,
679
+ ideal: nil,
680
+ interac_present: nil,
681
+ kakao_pay: nil,
682
+ klarna: nil,
683
+ konbini: nil,
684
+ kr_card: nil,
685
+ link: nil,
686
+ mb_way: nil,
687
+ metadata: nil,
688
+ mobilepay: nil,
689
+ multibanco: nil,
690
+ naver_pay: nil,
691
+ oxxo: nil,
692
+ p24: nil,
693
+ pay_by_bank: nil,
694
+ payco: nil,
695
+ paynow: nil,
696
+ paypal: nil,
697
+ payto: nil,
698
+ pix: nil,
699
+ promptpay: nil,
700
+ qris: nil,
701
+ radar_options: nil,
702
+ rechnung: nil,
703
+ revolut_pay: nil,
704
+ samsung_pay: nil,
705
+ sepa_debit: nil,
706
+ shopeepay: nil,
707
+ sofort: nil,
708
+ swish: nil,
709
+ twint: nil,
710
+ type: nil,
711
+ us_bank_account: nil,
712
+ wechat_pay: nil,
713
+ zip: nil
714
+ ); end
715
+ end
716
+ class PaymentMethodOptions < Stripe::RequestParams
717
+ class AcssDebit < Stripe::RequestParams
718
+ class MandateOptions < Stripe::RequestParams
719
+ # A URL for custom mandate text to render during confirmation step.
720
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
721
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
722
+ sig { returns(T.nilable(String)) }
723
+ attr_accessor :custom_mandate_url
724
+ # List of Stripe products where this mandate can be selected automatically.
725
+ sig { returns(T::Array[String]) }
726
+ attr_accessor :default_for
727
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
728
+ sig { returns(String) }
729
+ attr_accessor :interval_description
730
+ # Payment schedule for the mandate.
731
+ sig { returns(String) }
732
+ attr_accessor :payment_schedule
733
+ # Transaction type of the mandate.
734
+ sig { returns(String) }
735
+ attr_accessor :transaction_type
736
+ sig {
737
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
738
+ }
739
+ def initialize(
740
+ custom_mandate_url: nil,
741
+ default_for: nil,
742
+ interval_description: nil,
743
+ payment_schedule: nil,
744
+ transaction_type: nil
745
+ ); end
746
+ end
747
+ # 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).
748
+ sig { returns(String) }
749
+ attr_accessor :currency
750
+ # Additional fields for Mandate creation
751
+ sig {
752
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AcssDebit::MandateOptions)
753
+ }
754
+ attr_accessor :mandate_options
755
+ # Bank account verification method.
756
+ sig { returns(String) }
757
+ attr_accessor :verification_method
758
+ sig {
759
+ params(currency: String, mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
760
+ }
761
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
762
+ end
763
+ class AmazonPay < Stripe::RequestParams
764
+
765
+ end
766
+ class BacsDebit < Stripe::RequestParams
767
+ class MandateOptions < Stripe::RequestParams
768
+ # 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'.
769
+ sig { returns(T.nilable(String)) }
770
+ attr_accessor :reference_prefix
771
+ sig { params(reference_prefix: T.nilable(String)).void }
772
+ def initialize(reference_prefix: nil); end
773
+ end
774
+ # Additional fields for Mandate creation
775
+ sig {
776
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::BacsDebit::MandateOptions)
777
+ }
778
+ attr_accessor :mandate_options
779
+ sig {
780
+ params(mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
781
+ }
782
+ def initialize(mandate_options: nil); end
783
+ end
784
+ class Card < Stripe::RequestParams
785
+ class MandateOptions < Stripe::RequestParams
786
+ # Amount to be charged for future payments.
787
+ sig { returns(Integer) }
788
+ attr_accessor :amount
789
+ # 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.
790
+ sig { returns(String) }
791
+ attr_accessor :amount_type
792
+ # 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).
793
+ sig { returns(String) }
794
+ attr_accessor :currency
795
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
796
+ sig { returns(String) }
797
+ attr_accessor :description
798
+ # 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.
799
+ sig { returns(Integer) }
800
+ attr_accessor :end_date
801
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
802
+ sig { returns(String) }
803
+ attr_accessor :interval
804
+ # 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`.
805
+ sig { returns(Integer) }
806
+ attr_accessor :interval_count
807
+ # Unique identifier for the mandate or subscription.
808
+ sig { returns(String) }
809
+ attr_accessor :reference
810
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
811
+ sig { returns(Integer) }
812
+ attr_accessor :start_date
813
+ # Specifies the type of mandates supported. Possible values are `india`.
814
+ sig { returns(T::Array[String]) }
815
+ attr_accessor :supported_types
816
+ sig {
817
+ 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
818
+ }
819
+ def initialize(
820
+ amount: nil,
821
+ amount_type: nil,
822
+ currency: nil,
823
+ description: nil,
824
+ end_date: nil,
825
+ interval: nil,
826
+ interval_count: nil,
827
+ reference: nil,
828
+ start_date: nil,
829
+ supported_types: nil
830
+ ); end
831
+ end
832
+ class ThreeDSecure < Stripe::RequestParams
833
+ class NetworkOptions < Stripe::RequestParams
834
+ class CartesBancaires < Stripe::RequestParams
835
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
836
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
837
+ # messageExtension: CB-AVALGO
838
+ sig { returns(String) }
839
+ attr_accessor :cb_avalgo
840
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
841
+ # message extension: CB-EXEMPTION; string (4 characters)
842
+ # This is a 3 byte bitmap (low significant byte first and most significant
843
+ # bit first) that has been Base64 encoded
844
+ sig { returns(String) }
845
+ attr_accessor :cb_exemption
846
+ # The risk score returned from Cartes Bancaires in the ARes.
847
+ # message extension: CB-SCORE; numeric value 0-99
848
+ sig { returns(Integer) }
849
+ attr_accessor :cb_score
850
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
851
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
852
+ end
853
+ # Cartes Bancaires-specific 3DS fields.
854
+ sig {
855
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
856
+ }
857
+ attr_accessor :cartes_bancaires
858
+ sig {
859
+ params(cartes_bancaires: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
860
+ }
861
+ def initialize(cartes_bancaires: nil); end
862
+ end
863
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
864
+ sig { returns(String) }
865
+ attr_accessor :ares_trans_status
866
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
867
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
868
+ # (Most 3D Secure providers will return the base64-encoded version, which
869
+ # is what you should specify here.)
870
+ sig { returns(String) }
871
+ attr_accessor :cryptogram
872
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
873
+ # provider and indicates what degree of authentication was performed.
874
+ sig { returns(String) }
875
+ attr_accessor :electronic_commerce_indicator
876
+ # Network specific 3DS fields. Network specific arguments require an
877
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
878
+ # must be populated accordingly
879
+ sig {
880
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
881
+ }
882
+ attr_accessor :network_options
883
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
884
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
885
+ sig { returns(String) }
886
+ attr_accessor :requestor_challenge_indicator
887
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
888
+ # Transaction ID (dsTransID).
889
+ sig { returns(String) }
890
+ attr_accessor :transaction_id
891
+ # The version of 3D Secure that was performed.
892
+ sig { returns(String) }
893
+ attr_accessor :version
894
+ sig {
895
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
896
+ }
897
+ def initialize(
898
+ ares_trans_status: nil,
899
+ cryptogram: nil,
900
+ electronic_commerce_indicator: nil,
901
+ network_options: nil,
902
+ requestor_challenge_indicator: nil,
903
+ transaction_id: nil,
904
+ version: nil
905
+ ); end
906
+ end
907
+ # Configuration options for setting up an eMandate for cards issued in India.
908
+ sig {
909
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::MandateOptions)
910
+ }
911
+ attr_accessor :mandate_options
912
+ # When specified, this parameter signals that a card has been collected
913
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
914
+ # parameter can only be provided during confirmation.
915
+ sig { returns(T::Boolean) }
916
+ attr_accessor :moto
917
+ # 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.
918
+ sig { returns(String) }
919
+ attr_accessor :network
920
+ # 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.
921
+ sig { returns(String) }
922
+ attr_accessor :request_three_d_secure
923
+ # If 3D Secure authentication was performed with a third-party provider,
924
+ # the authentication details to use for this setup.
925
+ sig {
926
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure)
927
+ }
928
+ attr_accessor :three_d_secure
929
+ sig {
930
+ params(mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card::ThreeDSecure).void
931
+ }
932
+ def initialize(
933
+ mandate_options: nil,
934
+ moto: nil,
935
+ network: nil,
936
+ request_three_d_secure: nil,
937
+ three_d_secure: nil
938
+ ); end
939
+ end
940
+ class CardPresent < Stripe::RequestParams
941
+
942
+ end
943
+ class Link < Stripe::RequestParams
944
+ # [Deprecated] This is a legacy parameter that no longer has any function.
945
+ sig { returns(String) }
946
+ attr_accessor :persistent_token
947
+ sig { params(persistent_token: String).void }
948
+ def initialize(persistent_token: nil); end
949
+ end
950
+ class Paypal < Stripe::RequestParams
951
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
952
+ sig { returns(String) }
953
+ attr_accessor :billing_agreement_id
954
+ # Attribute for param field currency
955
+ sig { returns(String) }
956
+ attr_accessor :currency
957
+ # 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.
958
+ sig { returns(T::Array[String]) }
959
+ attr_accessor :subsellers
960
+ sig {
961
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
962
+ }
963
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
964
+ end
965
+ class Payto < Stripe::RequestParams
966
+ class MandateOptions < Stripe::RequestParams
967
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
968
+ sig { returns(Integer) }
969
+ attr_accessor :amount
970
+ # 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.
971
+ sig { returns(String) }
972
+ attr_accessor :amount_type
973
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
974
+ sig { returns(String) }
975
+ attr_accessor :end_date
976
+ # The periodicity at which payments will be collected.
977
+ sig { returns(String) }
978
+ attr_accessor :payment_schedule
979
+ # 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.
980
+ sig { returns(Integer) }
981
+ attr_accessor :payments_per_period
982
+ # The purpose for which payments are made. Defaults to retail.
983
+ sig { returns(String) }
984
+ attr_accessor :purpose
985
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
986
+ sig { returns(String) }
987
+ attr_accessor :start_date
988
+ sig {
989
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
990
+ }
991
+ def initialize(
992
+ amount: nil,
993
+ amount_type: nil,
994
+ end_date: nil,
995
+ payment_schedule: nil,
996
+ payments_per_period: nil,
997
+ purpose: nil,
998
+ start_date: nil
999
+ ); end
1000
+ end
1001
+ # Additional fields for Mandate creation.
1002
+ sig {
1003
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Payto::MandateOptions)
1004
+ }
1005
+ attr_accessor :mandate_options
1006
+ sig {
1007
+ params(mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Payto::MandateOptions).void
1008
+ }
1009
+ def initialize(mandate_options: nil); end
1010
+ end
1011
+ class SepaDebit < Stripe::RequestParams
1012
+ class MandateOptions < Stripe::RequestParams
1013
+ # 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'.
1014
+ sig { returns(T.nilable(String)) }
1015
+ attr_accessor :reference_prefix
1016
+ sig { params(reference_prefix: T.nilable(String)).void }
1017
+ def initialize(reference_prefix: nil); end
1018
+ end
1019
+ # Additional fields for Mandate creation
1020
+ sig {
1021
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::SepaDebit::MandateOptions)
1022
+ }
1023
+ attr_accessor :mandate_options
1024
+ sig {
1025
+ params(mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
1026
+ }
1027
+ def initialize(mandate_options: nil); end
1028
+ end
1029
+ class UsBankAccount < Stripe::RequestParams
1030
+ class FinancialConnections < Stripe::RequestParams
1031
+ class Filters < Stripe::RequestParams
1032
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
1033
+ sig { returns(T::Array[String]) }
1034
+ attr_accessor :account_subcategories
1035
+ # ID of the institution to use to filter for selectable accounts.
1036
+ sig { returns(String) }
1037
+ attr_accessor :institution
1038
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
1039
+ def initialize(account_subcategories: nil, institution: nil); end
1040
+ end
1041
+ class ManualEntry < Stripe::RequestParams
1042
+ # Settings for configuring manual entry of account details.
1043
+ sig { returns(String) }
1044
+ attr_accessor :mode
1045
+ sig { params(mode: String).void }
1046
+ def initialize(mode: nil); end
1047
+ end
1048
+ # Provide filters for the linked accounts that the customer can select for the payment method.
1049
+ sig {
1050
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
1051
+ }
1052
+ attr_accessor :filters
1053
+ # Customize manual entry behavior
1054
+ sig {
1055
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
1056
+ }
1057
+ attr_accessor :manual_entry
1058
+ # 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`.
1059
+ sig { returns(T::Array[String]) }
1060
+ attr_accessor :permissions
1061
+ # List of data features that you would like to retrieve upon account creation.
1062
+ sig { returns(T::Array[String]) }
1063
+ attr_accessor :prefetch
1064
+ # 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.
1065
+ sig { returns(String) }
1066
+ attr_accessor :return_url
1067
+ sig {
1068
+ params(filters: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
1069
+ }
1070
+ def initialize(
1071
+ filters: nil,
1072
+ manual_entry: nil,
1073
+ permissions: nil,
1074
+ prefetch: nil,
1075
+ return_url: nil
1076
+ ); end
1077
+ end
1078
+ class MandateOptions < Stripe::RequestParams
1079
+ # The method used to collect offline mandate customer acceptance.
1080
+ sig { returns(T.nilable(String)) }
1081
+ attr_accessor :collection_method
1082
+ sig { params(collection_method: T.nilable(String)).void }
1083
+ def initialize(collection_method: nil); end
1084
+ end
1085
+ class Networks < Stripe::RequestParams
1086
+ # Triggers validations to run across the selected networks
1087
+ sig { returns(T::Array[String]) }
1088
+ attr_accessor :requested
1089
+ sig { params(requested: T::Array[String]).void }
1090
+ def initialize(requested: nil); end
1091
+ end
1092
+ # Additional fields for Financial Connections Session creation
1093
+ sig {
1094
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
1095
+ }
1096
+ attr_accessor :financial_connections
1097
+ # Additional fields for Mandate creation
1098
+ sig {
1099
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
1100
+ }
1101
+ attr_accessor :mandate_options
1102
+ # Additional fields for network related functions
1103
+ sig {
1104
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::Networks)
1105
+ }
1106
+ attr_accessor :networks
1107
+ # Bank account verification method.
1108
+ sig { returns(String) }
1109
+ attr_accessor :verification_method
1110
+ sig {
1111
+ params(financial_connections: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
1112
+ }
1113
+ def initialize(
1114
+ financial_connections: nil,
1115
+ mandate_options: nil,
1116
+ networks: nil,
1117
+ verification_method: nil
1118
+ ); end
1119
+ end
1120
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
1121
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AcssDebit) }
1122
+ attr_accessor :acss_debit
1123
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
1124
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AmazonPay) }
1125
+ attr_accessor :amazon_pay
1126
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
1127
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::BacsDebit) }
1128
+ attr_accessor :bacs_debit
1129
+ # Configuration for any card setup attempted on this SetupIntent.
1130
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card) }
1131
+ attr_accessor :card
1132
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
1133
+ sig {
1134
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::CardPresent)
1135
+ }
1136
+ attr_accessor :card_present
1137
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
1138
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Link) }
1139
+ attr_accessor :link
1140
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
1141
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Paypal) }
1142
+ attr_accessor :paypal
1143
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
1144
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Payto) }
1145
+ attr_accessor :payto
1146
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
1147
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::SepaDebit) }
1148
+ attr_accessor :sepa_debit
1149
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
1150
+ sig {
1151
+ returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount)
1152
+ }
1153
+ attr_accessor :us_bank_account
1154
+ sig {
1155
+ params(acss_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions::UsBankAccount).void
1156
+ }
1157
+ def initialize(
1158
+ acss_debit: nil,
1159
+ amazon_pay: nil,
1160
+ bacs_debit: nil,
1161
+ card: nil,
1162
+ card_present: nil,
1163
+ link: nil,
1164
+ paypal: nil,
1165
+ payto: nil,
1166
+ sepa_debit: nil,
1167
+ us_bank_account: nil
1168
+ ); end
1169
+ end
1170
+ class SingleUse < Stripe::RequestParams
1171
+ # 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).
1172
+ sig { returns(Integer) }
1173
+ attr_accessor :amount
1174
+ # 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).
1175
+ sig { returns(String) }
1176
+ attr_accessor :currency
1177
+ sig { params(amount: Integer, currency: String).void }
1178
+ def initialize(amount: nil, currency: nil); end
1179
+ end
1180
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
1181
+ #
1182
+ # 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.
1183
+ sig { returns(T::Boolean) }
1184
+ attr_accessor :attach_to_self
1185
+ # When you enable this parameter, this SetupIntent accepts payment methods that you enable in the Dashboard and that are compatible with its other parameters.
1186
+ sig { returns(::Stripe::SetupIntentService::CreateParams::AutomaticPaymentMethods) }
1187
+ attr_accessor :automatic_payment_methods
1188
+ # 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.
1189
+ sig { returns(T::Boolean) }
1190
+ attr_accessor :confirm
1191
+ # ID of the ConfirmationToken used to confirm this SetupIntent.
1192
+ #
1193
+ # 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.
1194
+ sig { returns(String) }
1195
+ attr_accessor :confirmation_token
1196
+ # ID of the Customer this SetupIntent belongs to, if one exists.
1197
+ #
1198
+ # 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.
1199
+ sig { returns(String) }
1200
+ attr_accessor :customer
1201
+ # An arbitrary string attached to the object. Often useful for displaying to users.
1202
+ sig { returns(String) }
1203
+ attr_accessor :description
1204
+ # Specifies which fields in the response should be expanded.
1205
+ sig { returns(T::Array[String]) }
1206
+ attr_accessor :expand
1207
+ # Indicates the directions of money movement for which this payment method is intended to be used.
1208
+ #
1209
+ # 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.
1210
+ sig { returns(T::Array[String]) }
1211
+ attr_accessor :flow_directions
1212
+ # 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).
1213
+ sig { returns(T.nilable(::Stripe::SetupIntentService::CreateParams::MandateData)) }
1214
+ attr_accessor :mandate_data
1215
+ # 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`.
1216
+ sig { returns(T::Hash[String, String]) }
1217
+ attr_accessor :metadata
1218
+ # The Stripe account ID created for this SetupIntent.
1219
+ sig { returns(String) }
1220
+ attr_accessor :on_behalf_of
1221
+ # ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent.
1222
+ sig { returns(String) }
1223
+ attr_accessor :payment_method
1224
+ # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this SetupIntent.
1225
+ sig { returns(String) }
1226
+ attr_accessor :payment_method_configuration
1227
+ # 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)
1228
+ # value in the SetupIntent.
1229
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodData) }
1230
+ attr_accessor :payment_method_data
1231
+ # Payment method-specific configuration for this SetupIntent.
1232
+ sig { returns(::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions) }
1233
+ attr_accessor :payment_method_options
1234
+ # 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).
1235
+ sig { returns(T::Array[String]) }
1236
+ attr_accessor :payment_method_types
1237
+ # 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).
1238
+ sig { returns(String) }
1239
+ attr_accessor :return_url
1240
+ # If you populate this hash, this SetupIntent generates a `single_use` mandate after successful completion.
1241
+ sig { returns(::Stripe::SetupIntentService::CreateParams::SingleUse) }
1242
+ attr_accessor :single_use
1243
+ # Indicates how the payment method is intended to be used in the future. If not provided, this value defaults to `off_session`.
1244
+ sig { returns(String) }
1245
+ attr_accessor :usage
1246
+ # Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
1247
+ sig { returns(T::Boolean) }
1248
+ attr_accessor :use_stripe_sdk
1249
+ sig {
1250
+ params(attach_to_self: T::Boolean, automatic_payment_methods: ::Stripe::SetupIntentService::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::SetupIntentService::CreateParams::MandateData), metadata: T::Hash[String, String], on_behalf_of: String, payment_method: String, payment_method_configuration: String, payment_method_data: ::Stripe::SetupIntentService::CreateParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntentService::CreateParams::PaymentMethodOptions, payment_method_types: T::Array[String], return_url: String, single_use: ::Stripe::SetupIntentService::CreateParams::SingleUse, usage: String, use_stripe_sdk: T::Boolean).void
1251
+ }
1252
+ def initialize(
1253
+ attach_to_self: nil,
1254
+ automatic_payment_methods: nil,
1255
+ confirm: nil,
1256
+ confirmation_token: nil,
1257
+ customer: nil,
1258
+ description: nil,
1259
+ expand: nil,
1260
+ flow_directions: nil,
1261
+ mandate_data: nil,
1262
+ metadata: nil,
1263
+ on_behalf_of: nil,
1264
+ payment_method: nil,
1265
+ payment_method_configuration: nil,
1266
+ payment_method_data: nil,
1267
+ payment_method_options: nil,
1268
+ payment_method_types: nil,
1269
+ return_url: nil,
1270
+ single_use: nil,
1271
+ usage: nil,
1272
+ use_stripe_sdk: nil
1273
+ ); end
1274
+ end
1275
+ class RetrieveParams < Stripe::RequestParams
1276
+ # The client secret of the SetupIntent. We require this string if you use a publishable key to retrieve the SetupIntent.
1277
+ sig { returns(String) }
1278
+ attr_accessor :client_secret
1279
+ # Specifies which fields in the response should be expanded.
1280
+ sig { returns(T::Array[String]) }
1281
+ attr_accessor :expand
1282
+ sig { params(client_secret: String, expand: T::Array[String]).void }
1283
+ def initialize(client_secret: nil, expand: nil); end
1284
+ end
1285
+ class UpdateParams < Stripe::RequestParams
1286
+ class PaymentMethodData < Stripe::RequestParams
1287
+ class AcssDebit < Stripe::RequestParams
1288
+ # Customer's bank account number.
1289
+ sig { returns(String) }
1290
+ attr_accessor :account_number
1291
+ # Institution number of the customer's bank.
1292
+ sig { returns(String) }
1293
+ attr_accessor :institution_number
1294
+ # Transit number of the customer's bank.
1295
+ sig { returns(String) }
1296
+ attr_accessor :transit_number
1297
+ sig {
1298
+ params(account_number: String, institution_number: String, transit_number: String).void
1299
+ }
1300
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
1301
+ end
1302
+ class Affirm < Stripe::RequestParams
1303
+
1304
+ end
1305
+ class AfterpayClearpay < Stripe::RequestParams
1306
+
1307
+ end
1308
+ class Alipay < Stripe::RequestParams
1309
+
1310
+ end
1311
+ class Alma < Stripe::RequestParams
1312
+
1313
+ end
1314
+ class AmazonPay < Stripe::RequestParams
1315
+
1316
+ end
1317
+ class AuBecsDebit < Stripe::RequestParams
1318
+ # The account number for the bank account.
1319
+ sig { returns(String) }
1320
+ attr_accessor :account_number
1321
+ # Bank-State-Branch number of the bank account.
1322
+ sig { returns(String) }
1323
+ attr_accessor :bsb_number
1324
+ sig { params(account_number: String, bsb_number: String).void }
1325
+ def initialize(account_number: nil, bsb_number: nil); end
1326
+ end
1327
+ class BacsDebit < Stripe::RequestParams
1328
+ # Account number of the bank account that the funds will be debited from.
1329
+ sig { returns(String) }
1330
+ attr_accessor :account_number
1331
+ # Sort code of the bank account. (e.g., `10-20-30`)
1332
+ sig { returns(String) }
1333
+ attr_accessor :sort_code
1334
+ sig { params(account_number: String, sort_code: String).void }
1335
+ def initialize(account_number: nil, sort_code: nil); end
1336
+ end
1337
+ class Bancontact < Stripe::RequestParams
1338
+
1339
+ end
1340
+ class BillingDetails < Stripe::RequestParams
1341
+ class Address < Stripe::RequestParams
1342
+ # City, district, suburb, town, or village.
1343
+ sig { returns(String) }
1344
+ attr_accessor :city
1345
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1346
+ sig { returns(String) }
1347
+ attr_accessor :country
1348
+ # Address line 1 (e.g., street, PO Box, or company name).
1349
+ sig { returns(String) }
1350
+ attr_accessor :line1
1351
+ # Address line 2 (e.g., apartment, suite, unit, or building).
1352
+ sig { returns(String) }
1353
+ attr_accessor :line2
1354
+ # ZIP or postal code.
1355
+ sig { returns(String) }
1356
+ attr_accessor :postal_code
1357
+ # State, county, province, or region.
1358
+ sig { returns(String) }
1359
+ attr_accessor :state
1360
+ sig {
1361
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
1362
+ }
1363
+ def initialize(
1364
+ city: nil,
1365
+ country: nil,
1366
+ line1: nil,
1367
+ line2: nil,
1368
+ postal_code: nil,
1369
+ state: nil
1370
+ ); end
1371
+ end
1372
+ # Billing address.
1373
+ sig {
1374
+ returns(T.nilable(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BillingDetails::Address))
1375
+ }
1376
+ attr_accessor :address
1377
+ # Email address.
1378
+ sig { returns(T.nilable(String)) }
1379
+ attr_accessor :email
1380
+ # Full name.
1381
+ sig { returns(T.nilable(String)) }
1382
+ attr_accessor :name
1383
+ # Billing phone number (including extension).
1384
+ sig { returns(T.nilable(String)) }
1385
+ attr_accessor :phone
1386
+ sig {
1387
+ params(address: T.nilable(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
1388
+ }
1389
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
1390
+ end
1391
+ class Blik < Stripe::RequestParams
1392
+
1393
+ end
1394
+ class Boleto < Stripe::RequestParams
1395
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
1396
+ sig { returns(String) }
1397
+ attr_accessor :tax_id
1398
+ sig { params(tax_id: String).void }
1399
+ def initialize(tax_id: nil); end
1400
+ end
1401
+ class Cashapp < Stripe::RequestParams
1402
+
1403
+ end
1404
+ class CustomerBalance < Stripe::RequestParams
1405
+
1406
+ end
1407
+ class Eps < Stripe::RequestParams
1408
+ # The customer's bank.
1409
+ sig { returns(String) }
1410
+ attr_accessor :bank
1411
+ sig { params(bank: String).void }
1412
+ def initialize(bank: nil); end
1413
+ end
1414
+ class Fpx < Stripe::RequestParams
1415
+ # Account holder type for FPX transaction
1416
+ sig { returns(String) }
1417
+ attr_accessor :account_holder_type
1418
+ # The customer's bank.
1419
+ sig { returns(String) }
1420
+ attr_accessor :bank
1421
+ sig { params(account_holder_type: String, bank: String).void }
1422
+ def initialize(account_holder_type: nil, bank: nil); end
1423
+ end
1424
+ class Giropay < Stripe::RequestParams
1425
+
1426
+ end
1427
+ class Gopay < Stripe::RequestParams
1428
+
1429
+ end
1430
+ class Grabpay < Stripe::RequestParams
1431
+
1432
+ end
1433
+ class IdBankTransfer < Stripe::RequestParams
1434
+ # Bank where the account is held.
1435
+ sig { returns(String) }
1436
+ attr_accessor :bank
1437
+ sig { params(bank: String).void }
1438
+ def initialize(bank: nil); end
1439
+ end
1440
+ class Ideal < Stripe::RequestParams
1441
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
1442
+ sig { returns(String) }
1443
+ attr_accessor :bank
1444
+ sig { params(bank: String).void }
1445
+ def initialize(bank: nil); end
1446
+ end
1447
+ class InteracPresent < Stripe::RequestParams
1448
+
1449
+ end
1450
+ class KakaoPay < Stripe::RequestParams
1451
+
1452
+ end
1453
+ class Klarna < Stripe::RequestParams
1454
+ class Dob < Stripe::RequestParams
1455
+ # The day of birth, between 1 and 31.
1456
+ sig { returns(Integer) }
1457
+ attr_accessor :day
1458
+ # The month of birth, between 1 and 12.
1459
+ sig { returns(Integer) }
1460
+ attr_accessor :month
1461
+ # The four-digit year of birth.
1462
+ sig { returns(Integer) }
1463
+ attr_accessor :year
1464
+ sig { params(day: Integer, month: Integer, year: Integer).void }
1465
+ def initialize(day: nil, month: nil, year: nil); end
1466
+ end
1467
+ # Customer's date of birth
1468
+ sig {
1469
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Klarna::Dob)
1470
+ }
1471
+ attr_accessor :dob
1472
+ sig {
1473
+ params(dob: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Klarna::Dob).void
1474
+ }
1475
+ def initialize(dob: nil); end
1476
+ end
1477
+ class Konbini < Stripe::RequestParams
1478
+
1479
+ end
1480
+ class KrCard < Stripe::RequestParams
1481
+
1482
+ end
1483
+ class Link < Stripe::RequestParams
1484
+
1485
+ end
1486
+ class MbWay < Stripe::RequestParams
1487
+
1488
+ end
1489
+ class Mobilepay < Stripe::RequestParams
1490
+
1491
+ end
1492
+ class Multibanco < Stripe::RequestParams
1493
+
1494
+ end
1495
+ class NaverPay < Stripe::RequestParams
1496
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
1497
+ sig { returns(String) }
1498
+ attr_accessor :funding
1499
+ sig { params(funding: String).void }
1500
+ def initialize(funding: nil); end
1501
+ end
1502
+ class Oxxo < Stripe::RequestParams
1503
+
1504
+ end
1505
+ class P24 < Stripe::RequestParams
1506
+ # The customer's bank.
1507
+ sig { returns(String) }
1508
+ attr_accessor :bank
1509
+ sig { params(bank: String).void }
1510
+ def initialize(bank: nil); end
1511
+ end
1512
+ class PayByBank < Stripe::RequestParams
1513
+
1514
+ end
1515
+ class Payco < Stripe::RequestParams
1516
+
1517
+ end
1518
+ class Paynow < Stripe::RequestParams
1519
+
1520
+ end
1521
+ class Paypal < Stripe::RequestParams
1522
+
1523
+ end
1524
+ class Payto < Stripe::RequestParams
1525
+ # The account number for the bank account.
1526
+ sig { returns(String) }
1527
+ attr_accessor :account_number
1528
+ # Bank-State-Branch number of the bank account.
1529
+ sig { returns(String) }
1530
+ attr_accessor :bsb_number
1531
+ # The PayID alias for the bank account.
1532
+ sig { returns(String) }
1533
+ attr_accessor :pay_id
1534
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
1535
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
1536
+ end
1537
+ class Pix < Stripe::RequestParams
1538
+
1539
+ end
1540
+ class Promptpay < Stripe::RequestParams
1541
+
1542
+ end
1543
+ class Qris < Stripe::RequestParams
1544
+
1545
+ end
1546
+ class RadarOptions < Stripe::RequestParams
1547
+ # 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.
1548
+ sig { returns(String) }
1549
+ attr_accessor :session
1550
+ sig { params(session: String).void }
1551
+ def initialize(session: nil); end
1552
+ end
1553
+ class Rechnung < Stripe::RequestParams
1554
+ class Dob < Stripe::RequestParams
1555
+ # The day of birth, between 1 and 31.
1556
+ sig { returns(Integer) }
1557
+ attr_accessor :day
1558
+ # The month of birth, between 1 and 12.
1559
+ sig { returns(Integer) }
1560
+ attr_accessor :month
1561
+ # The four-digit year of birth.
1562
+ sig { returns(Integer) }
1563
+ attr_accessor :year
1564
+ sig { params(day: Integer, month: Integer, year: Integer).void }
1565
+ def initialize(day: nil, month: nil, year: nil); end
1566
+ end
1567
+ # Customer's date of birth
1568
+ sig {
1569
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Rechnung::Dob)
1570
+ }
1571
+ attr_accessor :dob
1572
+ sig {
1573
+ params(dob: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Rechnung::Dob).void
1574
+ }
1575
+ def initialize(dob: nil); end
1576
+ end
1577
+ class RevolutPay < Stripe::RequestParams
1578
+
1579
+ end
1580
+ class SamsungPay < Stripe::RequestParams
1581
+
1582
+ end
1583
+ class SepaDebit < Stripe::RequestParams
1584
+ # IBAN of the bank account.
1585
+ sig { returns(String) }
1586
+ attr_accessor :iban
1587
+ sig { params(iban: String).void }
1588
+ def initialize(iban: nil); end
1589
+ end
1590
+ class Shopeepay < Stripe::RequestParams
1591
+
1592
+ end
1593
+ class Sofort < Stripe::RequestParams
1594
+ # Two-letter ISO code representing the country the bank account is located in.
1595
+ sig { returns(String) }
1596
+ attr_accessor :country
1597
+ sig { params(country: String).void }
1598
+ def initialize(country: nil); end
1599
+ end
1600
+ class Swish < Stripe::RequestParams
1601
+
1602
+ end
1603
+ class Twint < Stripe::RequestParams
1604
+
1605
+ end
1606
+ class UsBankAccount < Stripe::RequestParams
1607
+ # Account holder type: individual or company.
1608
+ sig { returns(String) }
1609
+ attr_accessor :account_holder_type
1610
+ # Account number of the bank account.
1611
+ sig { returns(String) }
1612
+ attr_accessor :account_number
1613
+ # Account type: checkings or savings. Defaults to checking if omitted.
1614
+ sig { returns(String) }
1615
+ attr_accessor :account_type
1616
+ # The ID of a Financial Connections Account to use as a payment method.
1617
+ sig { returns(String) }
1618
+ attr_accessor :financial_connections_account
1619
+ # Routing number of the bank account.
1620
+ sig { returns(String) }
1621
+ attr_accessor :routing_number
1622
+ sig {
1623
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
1624
+ }
1625
+ def initialize(
1626
+ account_holder_type: nil,
1627
+ account_number: nil,
1628
+ account_type: nil,
1629
+ financial_connections_account: nil,
1630
+ routing_number: nil
1631
+ ); end
1632
+ end
1633
+ class WechatPay < Stripe::RequestParams
1634
+
1635
+ end
1636
+ class Zip < Stripe::RequestParams
1637
+
1638
+ end
1639
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
1640
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AcssDebit) }
1641
+ attr_accessor :acss_debit
1642
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
1643
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Affirm) }
1644
+ attr_accessor :affirm
1645
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
1646
+ sig {
1647
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AfterpayClearpay)
1648
+ }
1649
+ attr_accessor :afterpay_clearpay
1650
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
1651
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Alipay) }
1652
+ attr_accessor :alipay
1653
+ # 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`.
1654
+ sig { returns(String) }
1655
+ attr_accessor :allow_redisplay
1656
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
1657
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Alma) }
1658
+ attr_accessor :alma
1659
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
1660
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AmazonPay) }
1661
+ attr_accessor :amazon_pay
1662
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
1663
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AuBecsDebit) }
1664
+ attr_accessor :au_becs_debit
1665
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
1666
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BacsDebit) }
1667
+ attr_accessor :bacs_debit
1668
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
1669
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Bancontact) }
1670
+ attr_accessor :bancontact
1671
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
1672
+ sig {
1673
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BillingDetails)
1674
+ }
1675
+ attr_accessor :billing_details
1676
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
1677
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Blik) }
1678
+ attr_accessor :blik
1679
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
1680
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Boleto) }
1681
+ attr_accessor :boleto
1682
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
1683
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Cashapp) }
1684
+ attr_accessor :cashapp
1685
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
1686
+ sig {
1687
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::CustomerBalance)
1688
+ }
1689
+ attr_accessor :customer_balance
1690
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
1691
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Eps) }
1692
+ attr_accessor :eps
1693
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
1694
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Fpx) }
1695
+ attr_accessor :fpx
1696
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
1697
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Giropay) }
1698
+ attr_accessor :giropay
1699
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
1700
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Gopay) }
1701
+ attr_accessor :gopay
1702
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
1703
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Grabpay) }
1704
+ attr_accessor :grabpay
1705
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
1706
+ sig {
1707
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::IdBankTransfer)
1708
+ }
1709
+ attr_accessor :id_bank_transfer
1710
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
1711
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Ideal) }
1712
+ attr_accessor :ideal
1713
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
1714
+ sig {
1715
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::InteracPresent)
1716
+ }
1717
+ attr_accessor :interac_present
1718
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
1719
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::KakaoPay) }
1720
+ attr_accessor :kakao_pay
1721
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
1722
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Klarna) }
1723
+ attr_accessor :klarna
1724
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
1725
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Konbini) }
1726
+ attr_accessor :konbini
1727
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
1728
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::KrCard) }
1729
+ attr_accessor :kr_card
1730
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1731
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Link) }
1732
+ attr_accessor :link
1733
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
1734
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::MbWay) }
1735
+ attr_accessor :mb_way
1736
+ # 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`.
1737
+ sig { returns(T::Hash[String, String]) }
1738
+ attr_accessor :metadata
1739
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
1740
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Mobilepay) }
1741
+ attr_accessor :mobilepay
1742
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
1743
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Multibanco) }
1744
+ attr_accessor :multibanco
1745
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
1746
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::NaverPay) }
1747
+ attr_accessor :naver_pay
1748
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
1749
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Oxxo) }
1750
+ attr_accessor :oxxo
1751
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
1752
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::P24) }
1753
+ attr_accessor :p24
1754
+ # If this is a `pay_by_bank` PaymentMethod, this hash contains details about the PayByBank payment method.
1755
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::PayByBank) }
1756
+ attr_accessor :pay_by_bank
1757
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
1758
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Payco) }
1759
+ attr_accessor :payco
1760
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
1761
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Paynow) }
1762
+ attr_accessor :paynow
1763
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
1764
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Paypal) }
1765
+ attr_accessor :paypal
1766
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
1767
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Payto) }
1768
+ attr_accessor :payto
1769
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
1770
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Pix) }
1771
+ attr_accessor :pix
1772
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
1773
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Promptpay) }
1774
+ attr_accessor :promptpay
1775
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
1776
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Qris) }
1777
+ attr_accessor :qris
1778
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
1779
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::RadarOptions) }
1780
+ attr_accessor :radar_options
1781
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
1782
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Rechnung) }
1783
+ attr_accessor :rechnung
1784
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1785
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::RevolutPay) }
1786
+ attr_accessor :revolut_pay
1787
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
1788
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::SamsungPay) }
1789
+ attr_accessor :samsung_pay
1790
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
1791
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::SepaDebit) }
1792
+ attr_accessor :sepa_debit
1793
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
1794
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Shopeepay) }
1795
+ attr_accessor :shopeepay
1796
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
1797
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Sofort) }
1798
+ attr_accessor :sofort
1799
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
1800
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Swish) }
1801
+ attr_accessor :swish
1802
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
1803
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Twint) }
1804
+ attr_accessor :twint
1805
+ # 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.
1806
+ sig { returns(String) }
1807
+ attr_accessor :type
1808
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
1809
+ sig {
1810
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::UsBankAccount)
1811
+ }
1812
+ attr_accessor :us_bank_account
1813
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
1814
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::WechatPay) }
1815
+ attr_accessor :wechat_pay
1816
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
1817
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Zip) }
1818
+ attr_accessor :zip
1819
+ sig {
1820
+ params(acss_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::P24, pay_by_bank: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::PayByBank, payco: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodData::Zip).void
1821
+ }
1822
+ def initialize(
1823
+ acss_debit: nil,
1824
+ affirm: nil,
1825
+ afterpay_clearpay: nil,
1826
+ alipay: nil,
1827
+ allow_redisplay: nil,
1828
+ alma: nil,
1829
+ amazon_pay: nil,
1830
+ au_becs_debit: nil,
1831
+ bacs_debit: nil,
1832
+ bancontact: nil,
1833
+ billing_details: nil,
1834
+ blik: nil,
1835
+ boleto: nil,
1836
+ cashapp: nil,
1837
+ customer_balance: nil,
1838
+ eps: nil,
1839
+ fpx: nil,
1840
+ giropay: nil,
1841
+ gopay: nil,
1842
+ grabpay: nil,
1843
+ id_bank_transfer: nil,
1844
+ ideal: nil,
1845
+ interac_present: nil,
1846
+ kakao_pay: nil,
1847
+ klarna: nil,
1848
+ konbini: nil,
1849
+ kr_card: nil,
1850
+ link: nil,
1851
+ mb_way: nil,
1852
+ metadata: nil,
1853
+ mobilepay: nil,
1854
+ multibanco: nil,
1855
+ naver_pay: nil,
1856
+ oxxo: nil,
1857
+ p24: nil,
1858
+ pay_by_bank: nil,
1859
+ payco: nil,
1860
+ paynow: nil,
1861
+ paypal: nil,
1862
+ payto: nil,
1863
+ pix: nil,
1864
+ promptpay: nil,
1865
+ qris: nil,
1866
+ radar_options: nil,
1867
+ rechnung: nil,
1868
+ revolut_pay: nil,
1869
+ samsung_pay: nil,
1870
+ sepa_debit: nil,
1871
+ shopeepay: nil,
1872
+ sofort: nil,
1873
+ swish: nil,
1874
+ twint: nil,
1875
+ type: nil,
1876
+ us_bank_account: nil,
1877
+ wechat_pay: nil,
1878
+ zip: nil
1879
+ ); end
1880
+ end
1881
+ class PaymentMethodOptions < Stripe::RequestParams
1882
+ class AcssDebit < Stripe::RequestParams
1883
+ class MandateOptions < Stripe::RequestParams
1884
+ # A URL for custom mandate text to render during confirmation step.
1885
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
1886
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
1887
+ sig { returns(T.nilable(String)) }
1888
+ attr_accessor :custom_mandate_url
1889
+ # List of Stripe products where this mandate can be selected automatically.
1890
+ sig { returns(T::Array[String]) }
1891
+ attr_accessor :default_for
1892
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
1893
+ sig { returns(String) }
1894
+ attr_accessor :interval_description
1895
+ # Payment schedule for the mandate.
1896
+ sig { returns(String) }
1897
+ attr_accessor :payment_schedule
1898
+ # Transaction type of the mandate.
1899
+ sig { returns(String) }
1900
+ attr_accessor :transaction_type
1901
+ sig {
1902
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
1903
+ }
1904
+ def initialize(
1905
+ custom_mandate_url: nil,
1906
+ default_for: nil,
1907
+ interval_description: nil,
1908
+ payment_schedule: nil,
1909
+ transaction_type: nil
1910
+ ); end
1911
+ end
1912
+ # 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).
1913
+ sig { returns(String) }
1914
+ attr_accessor :currency
1915
+ # Additional fields for Mandate creation
1916
+ sig {
1917
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AcssDebit::MandateOptions)
1918
+ }
1919
+ attr_accessor :mandate_options
1920
+ # Bank account verification method.
1921
+ sig { returns(String) }
1922
+ attr_accessor :verification_method
1923
+ sig {
1924
+ params(currency: String, mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
1925
+ }
1926
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
1927
+ end
1928
+ class AmazonPay < Stripe::RequestParams
1929
+
1930
+ end
1931
+ class BacsDebit < Stripe::RequestParams
1932
+ class MandateOptions < Stripe::RequestParams
1933
+ # 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'.
1934
+ sig { returns(T.nilable(String)) }
1935
+ attr_accessor :reference_prefix
1936
+ sig { params(reference_prefix: T.nilable(String)).void }
1937
+ def initialize(reference_prefix: nil); end
1938
+ end
1939
+ # Additional fields for Mandate creation
1940
+ sig {
1941
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::BacsDebit::MandateOptions)
1942
+ }
1943
+ attr_accessor :mandate_options
1944
+ sig {
1945
+ params(mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
1946
+ }
1947
+ def initialize(mandate_options: nil); end
1948
+ end
1949
+ class Card < Stripe::RequestParams
1950
+ class MandateOptions < Stripe::RequestParams
1951
+ # Amount to be charged for future payments.
1952
+ sig { returns(Integer) }
1953
+ attr_accessor :amount
1954
+ # 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.
1955
+ sig { returns(String) }
1956
+ attr_accessor :amount_type
1957
+ # 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).
1958
+ sig { returns(String) }
1959
+ attr_accessor :currency
1960
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
1961
+ sig { returns(String) }
1962
+ attr_accessor :description
1963
+ # 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.
1964
+ sig { returns(Integer) }
1965
+ attr_accessor :end_date
1966
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
1967
+ sig { returns(String) }
1968
+ attr_accessor :interval
1969
+ # 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`.
1970
+ sig { returns(Integer) }
1971
+ attr_accessor :interval_count
1972
+ # Unique identifier for the mandate or subscription.
1973
+ sig { returns(String) }
1974
+ attr_accessor :reference
1975
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
1976
+ sig { returns(Integer) }
1977
+ attr_accessor :start_date
1978
+ # Specifies the type of mandates supported. Possible values are `india`.
1979
+ sig { returns(T::Array[String]) }
1980
+ attr_accessor :supported_types
1981
+ sig {
1982
+ 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
1983
+ }
1984
+ def initialize(
1985
+ amount: nil,
1986
+ amount_type: nil,
1987
+ currency: nil,
1988
+ description: nil,
1989
+ end_date: nil,
1990
+ interval: nil,
1991
+ interval_count: nil,
1992
+ reference: nil,
1993
+ start_date: nil,
1994
+ supported_types: nil
1995
+ ); end
1996
+ end
1997
+ class ThreeDSecure < Stripe::RequestParams
1998
+ class NetworkOptions < Stripe::RequestParams
1999
+ class CartesBancaires < Stripe::RequestParams
2000
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
2001
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
2002
+ # messageExtension: CB-AVALGO
2003
+ sig { returns(String) }
2004
+ attr_accessor :cb_avalgo
2005
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
2006
+ # message extension: CB-EXEMPTION; string (4 characters)
2007
+ # This is a 3 byte bitmap (low significant byte first and most significant
2008
+ # bit first) that has been Base64 encoded
2009
+ sig { returns(String) }
2010
+ attr_accessor :cb_exemption
2011
+ # The risk score returned from Cartes Bancaires in the ARes.
2012
+ # message extension: CB-SCORE; numeric value 0-99
2013
+ sig { returns(Integer) }
2014
+ attr_accessor :cb_score
2015
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
2016
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
2017
+ end
2018
+ # Cartes Bancaires-specific 3DS fields.
2019
+ sig {
2020
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
2021
+ }
2022
+ attr_accessor :cartes_bancaires
2023
+ sig {
2024
+ params(cartes_bancaires: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
2025
+ }
2026
+ def initialize(cartes_bancaires: nil); end
2027
+ end
2028
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
2029
+ sig { returns(String) }
2030
+ attr_accessor :ares_trans_status
2031
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
2032
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
2033
+ # (Most 3D Secure providers will return the base64-encoded version, which
2034
+ # is what you should specify here.)
2035
+ sig { returns(String) }
2036
+ attr_accessor :cryptogram
2037
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
2038
+ # provider and indicates what degree of authentication was performed.
2039
+ sig { returns(String) }
2040
+ attr_accessor :electronic_commerce_indicator
2041
+ # Network specific 3DS fields. Network specific arguments require an
2042
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
2043
+ # must be populated accordingly
2044
+ sig {
2045
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
2046
+ }
2047
+ attr_accessor :network_options
2048
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
2049
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
2050
+ sig { returns(String) }
2051
+ attr_accessor :requestor_challenge_indicator
2052
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
2053
+ # Transaction ID (dsTransID).
2054
+ sig { returns(String) }
2055
+ attr_accessor :transaction_id
2056
+ # The version of 3D Secure that was performed.
2057
+ sig { returns(String) }
2058
+ attr_accessor :version
2059
+ sig {
2060
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
2061
+ }
2062
+ def initialize(
2063
+ ares_trans_status: nil,
2064
+ cryptogram: nil,
2065
+ electronic_commerce_indicator: nil,
2066
+ network_options: nil,
2067
+ requestor_challenge_indicator: nil,
2068
+ transaction_id: nil,
2069
+ version: nil
2070
+ ); end
2071
+ end
2072
+ # Configuration options for setting up an eMandate for cards issued in India.
2073
+ sig {
2074
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::MandateOptions)
2075
+ }
2076
+ attr_accessor :mandate_options
2077
+ # When specified, this parameter signals that a card has been collected
2078
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
2079
+ # parameter can only be provided during confirmation.
2080
+ sig { returns(T::Boolean) }
2081
+ attr_accessor :moto
2082
+ # 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.
2083
+ sig { returns(String) }
2084
+ attr_accessor :network
2085
+ # 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.
2086
+ sig { returns(String) }
2087
+ attr_accessor :request_three_d_secure
2088
+ # If 3D Secure authentication was performed with a third-party provider,
2089
+ # the authentication details to use for this setup.
2090
+ sig {
2091
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure)
2092
+ }
2093
+ attr_accessor :three_d_secure
2094
+ sig {
2095
+ params(mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card::ThreeDSecure).void
2096
+ }
2097
+ def initialize(
2098
+ mandate_options: nil,
2099
+ moto: nil,
2100
+ network: nil,
2101
+ request_three_d_secure: nil,
2102
+ three_d_secure: nil
2103
+ ); end
2104
+ end
2105
+ class CardPresent < Stripe::RequestParams
2106
+
2107
+ end
2108
+ class Link < Stripe::RequestParams
2109
+ # [Deprecated] This is a legacy parameter that no longer has any function.
2110
+ sig { returns(String) }
2111
+ attr_accessor :persistent_token
2112
+ sig { params(persistent_token: String).void }
2113
+ def initialize(persistent_token: nil); end
2114
+ end
2115
+ class Paypal < Stripe::RequestParams
2116
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
2117
+ sig { returns(String) }
2118
+ attr_accessor :billing_agreement_id
2119
+ # Attribute for param field currency
2120
+ sig { returns(String) }
2121
+ attr_accessor :currency
2122
+ # 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.
2123
+ sig { returns(T::Array[String]) }
2124
+ attr_accessor :subsellers
2125
+ sig {
2126
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
2127
+ }
2128
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
2129
+ end
2130
+ class Payto < Stripe::RequestParams
2131
+ class MandateOptions < Stripe::RequestParams
2132
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
2133
+ sig { returns(Integer) }
2134
+ attr_accessor :amount
2135
+ # 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.
2136
+ sig { returns(String) }
2137
+ attr_accessor :amount_type
2138
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
2139
+ sig { returns(String) }
2140
+ attr_accessor :end_date
2141
+ # The periodicity at which payments will be collected.
2142
+ sig { returns(String) }
2143
+ attr_accessor :payment_schedule
2144
+ # 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.
2145
+ sig { returns(Integer) }
2146
+ attr_accessor :payments_per_period
2147
+ # The purpose for which payments are made. Defaults to retail.
2148
+ sig { returns(String) }
2149
+ attr_accessor :purpose
2150
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
2151
+ sig { returns(String) }
2152
+ attr_accessor :start_date
2153
+ sig {
2154
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
2155
+ }
2156
+ def initialize(
2157
+ amount: nil,
2158
+ amount_type: nil,
2159
+ end_date: nil,
2160
+ payment_schedule: nil,
2161
+ payments_per_period: nil,
2162
+ purpose: nil,
2163
+ start_date: nil
2164
+ ); end
2165
+ end
2166
+ # Additional fields for Mandate creation.
2167
+ sig {
2168
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Payto::MandateOptions)
2169
+ }
2170
+ attr_accessor :mandate_options
2171
+ sig {
2172
+ params(mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Payto::MandateOptions).void
2173
+ }
2174
+ def initialize(mandate_options: nil); end
2175
+ end
2176
+ class SepaDebit < Stripe::RequestParams
2177
+ class MandateOptions < Stripe::RequestParams
2178
+ # 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'.
2179
+ sig { returns(T.nilable(String)) }
2180
+ attr_accessor :reference_prefix
2181
+ sig { params(reference_prefix: T.nilable(String)).void }
2182
+ def initialize(reference_prefix: nil); end
2183
+ end
2184
+ # Additional fields for Mandate creation
2185
+ sig {
2186
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::SepaDebit::MandateOptions)
2187
+ }
2188
+ attr_accessor :mandate_options
2189
+ sig {
2190
+ params(mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
2191
+ }
2192
+ def initialize(mandate_options: nil); end
2193
+ end
2194
+ class UsBankAccount < Stripe::RequestParams
2195
+ class FinancialConnections < Stripe::RequestParams
2196
+ class Filters < Stripe::RequestParams
2197
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
2198
+ sig { returns(T::Array[String]) }
2199
+ attr_accessor :account_subcategories
2200
+ # ID of the institution to use to filter for selectable accounts.
2201
+ sig { returns(String) }
2202
+ attr_accessor :institution
2203
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
2204
+ def initialize(account_subcategories: nil, institution: nil); end
2205
+ end
2206
+ class ManualEntry < Stripe::RequestParams
2207
+ # Settings for configuring manual entry of account details.
2208
+ sig { returns(String) }
2209
+ attr_accessor :mode
2210
+ sig { params(mode: String).void }
2211
+ def initialize(mode: nil); end
2212
+ end
2213
+ # Provide filters for the linked accounts that the customer can select for the payment method.
2214
+ sig {
2215
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
2216
+ }
2217
+ attr_accessor :filters
2218
+ # Customize manual entry behavior
2219
+ sig {
2220
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
2221
+ }
2222
+ attr_accessor :manual_entry
2223
+ # 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`.
2224
+ sig { returns(T::Array[String]) }
2225
+ attr_accessor :permissions
2226
+ # List of data features that you would like to retrieve upon account creation.
2227
+ sig { returns(T::Array[String]) }
2228
+ attr_accessor :prefetch
2229
+ # 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.
2230
+ sig { returns(String) }
2231
+ attr_accessor :return_url
2232
+ sig {
2233
+ params(filters: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
2234
+ }
2235
+ def initialize(
2236
+ filters: nil,
2237
+ manual_entry: nil,
2238
+ permissions: nil,
2239
+ prefetch: nil,
2240
+ return_url: nil
2241
+ ); end
2242
+ end
2243
+ class MandateOptions < Stripe::RequestParams
2244
+ # The method used to collect offline mandate customer acceptance.
2245
+ sig { returns(T.nilable(String)) }
2246
+ attr_accessor :collection_method
2247
+ sig { params(collection_method: T.nilable(String)).void }
2248
+ def initialize(collection_method: nil); end
2249
+ end
2250
+ class Networks < Stripe::RequestParams
2251
+ # Triggers validations to run across the selected networks
2252
+ sig { returns(T::Array[String]) }
2253
+ attr_accessor :requested
2254
+ sig { params(requested: T::Array[String]).void }
2255
+ def initialize(requested: nil); end
2256
+ end
2257
+ # Additional fields for Financial Connections Session creation
2258
+ sig {
2259
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
2260
+ }
2261
+ attr_accessor :financial_connections
2262
+ # Additional fields for Mandate creation
2263
+ sig {
2264
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
2265
+ }
2266
+ attr_accessor :mandate_options
2267
+ # Additional fields for network related functions
2268
+ sig {
2269
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::Networks)
2270
+ }
2271
+ attr_accessor :networks
2272
+ # Bank account verification method.
2273
+ sig { returns(String) }
2274
+ attr_accessor :verification_method
2275
+ sig {
2276
+ params(financial_connections: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
2277
+ }
2278
+ def initialize(
2279
+ financial_connections: nil,
2280
+ mandate_options: nil,
2281
+ networks: nil,
2282
+ verification_method: nil
2283
+ ); end
2284
+ end
2285
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
2286
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AcssDebit) }
2287
+ attr_accessor :acss_debit
2288
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
2289
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AmazonPay) }
2290
+ attr_accessor :amazon_pay
2291
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
2292
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::BacsDebit) }
2293
+ attr_accessor :bacs_debit
2294
+ # Configuration for any card setup attempted on this SetupIntent.
2295
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card) }
2296
+ attr_accessor :card
2297
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
2298
+ sig {
2299
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::CardPresent)
2300
+ }
2301
+ attr_accessor :card_present
2302
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
2303
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Link) }
2304
+ attr_accessor :link
2305
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
2306
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Paypal) }
2307
+ attr_accessor :paypal
2308
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
2309
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Payto) }
2310
+ attr_accessor :payto
2311
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
2312
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::SepaDebit) }
2313
+ attr_accessor :sepa_debit
2314
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
2315
+ sig {
2316
+ returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount)
2317
+ }
2318
+ attr_accessor :us_bank_account
2319
+ sig {
2320
+ params(acss_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions::UsBankAccount).void
2321
+ }
2322
+ def initialize(
2323
+ acss_debit: nil,
2324
+ amazon_pay: nil,
2325
+ bacs_debit: nil,
2326
+ card: nil,
2327
+ card_present: nil,
2328
+ link: nil,
2329
+ paypal: nil,
2330
+ payto: nil,
2331
+ sepa_debit: nil,
2332
+ us_bank_account: nil
2333
+ ); end
2334
+ end
2335
+ # If present, the SetupIntent's payment method will be attached to the in-context Stripe Account.
2336
+ #
2337
+ # 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.
2338
+ sig { returns(T::Boolean) }
2339
+ attr_accessor :attach_to_self
2340
+ # ID of the Customer this SetupIntent belongs to, if one exists.
2341
+ #
2342
+ # 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.
2343
+ sig { returns(String) }
2344
+ attr_accessor :customer
2345
+ # An arbitrary string attached to the object. Often useful for displaying to users.
2346
+ sig { returns(String) }
2347
+ attr_accessor :description
2348
+ # Specifies which fields in the response should be expanded.
2349
+ sig { returns(T::Array[String]) }
2350
+ attr_accessor :expand
2351
+ # Indicates the directions of money movement for which this payment method is intended to be used.
2352
+ #
2353
+ # 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.
2354
+ sig { returns(T::Array[String]) }
2355
+ attr_accessor :flow_directions
2356
+ # 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`.
2357
+ sig { returns(T.nilable(T::Hash[String, String])) }
2358
+ attr_accessor :metadata
2359
+ # 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.
2360
+ sig { returns(String) }
2361
+ attr_accessor :payment_method
2362
+ # The ID of the [payment method configuration](https://stripe.com/docs/api/payment_method_configurations) to use with this SetupIntent.
2363
+ sig { returns(String) }
2364
+ attr_accessor :payment_method_configuration
2365
+ # 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)
2366
+ # value in the SetupIntent.
2367
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodData) }
2368
+ attr_accessor :payment_method_data
2369
+ # Payment method-specific configuration for this SetupIntent.
2370
+ sig { returns(::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions) }
2371
+ attr_accessor :payment_method_options
2372
+ # 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).
2373
+ sig { returns(T::Array[String]) }
2374
+ attr_accessor :payment_method_types
2375
+ sig {
2376
+ 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::SetupIntentService::UpdateParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntentService::UpdateParams::PaymentMethodOptions, payment_method_types: T::Array[String]).void
2377
+ }
2378
+ def initialize(
2379
+ attach_to_self: nil,
2380
+ customer: nil,
2381
+ description: nil,
2382
+ expand: nil,
2383
+ flow_directions: nil,
2384
+ metadata: nil,
2385
+ payment_method: nil,
2386
+ payment_method_configuration: nil,
2387
+ payment_method_data: nil,
2388
+ payment_method_options: nil,
2389
+ payment_method_types: nil
2390
+ ); end
2391
+ end
2392
+ class CancelParams < Stripe::RequestParams
2393
+ # Reason for canceling this SetupIntent. Possible values are: `abandoned`, `requested_by_customer`, or `duplicate`
2394
+ sig { returns(String) }
2395
+ attr_accessor :cancellation_reason
2396
+ # Specifies which fields in the response should be expanded.
2397
+ sig { returns(T::Array[String]) }
2398
+ attr_accessor :expand
2399
+ sig { params(cancellation_reason: String, expand: T::Array[String]).void }
2400
+ def initialize(cancellation_reason: nil, expand: nil); end
2401
+ end
2402
+ class ConfirmParams < Stripe::RequestParams
2403
+ class MandateData < Stripe::RequestParams
2404
+ class CustomerAcceptance < Stripe::RequestParams
2405
+ class Offline < Stripe::RequestParams
2406
+
2407
+ end
2408
+ class Online < Stripe::RequestParams
2409
+ # The IP address from which the Mandate was accepted by the customer.
2410
+ sig { returns(String) }
2411
+ attr_accessor :ip_address
2412
+ # The user agent of the browser from which the Mandate was accepted by the customer.
2413
+ sig { returns(String) }
2414
+ attr_accessor :user_agent
2415
+ sig { params(ip_address: String, user_agent: String).void }
2416
+ def initialize(ip_address: nil, user_agent: nil); end
2417
+ end
2418
+ # The time at which the customer accepted the Mandate.
2419
+ sig { returns(Integer) }
2420
+ attr_accessor :accepted_at
2421
+ # If this is a Mandate accepted offline, this hash contains details about the offline acceptance.
2422
+ sig {
2423
+ returns(::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance::Offline)
2424
+ }
2425
+ attr_accessor :offline
2426
+ # If this is a Mandate accepted online, this hash contains details about the online acceptance.
2427
+ sig {
2428
+ returns(::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance::Online)
2429
+ }
2430
+ attr_accessor :online
2431
+ # The type of customer acceptance information included with the Mandate. One of `online` or `offline`.
2432
+ sig { returns(String) }
2433
+ attr_accessor :type
2434
+ sig {
2435
+ params(accepted_at: Integer, offline: ::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance::Offline, online: ::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance::Online, type: String).void
2436
+ }
2437
+ def initialize(accepted_at: nil, offline: nil, online: nil, type: nil); end
2438
+ end
2439
+ # This hash contains details about the customer acceptance of the Mandate.
2440
+ sig {
2441
+ returns(::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance)
2442
+ }
2443
+ attr_accessor :customer_acceptance
2444
+ sig {
2445
+ params(customer_acceptance: ::Stripe::SetupIntentService::ConfirmParams::MandateData::CustomerAcceptance).void
2446
+ }
2447
+ def initialize(customer_acceptance: nil); end
2448
+ end
2449
+ class PaymentMethodData < Stripe::RequestParams
2450
+ class AcssDebit < Stripe::RequestParams
2451
+ # Customer's bank account number.
2452
+ sig { returns(String) }
2453
+ attr_accessor :account_number
2454
+ # Institution number of the customer's bank.
2455
+ sig { returns(String) }
2456
+ attr_accessor :institution_number
2457
+ # Transit number of the customer's bank.
2458
+ sig { returns(String) }
2459
+ attr_accessor :transit_number
2460
+ sig {
2461
+ params(account_number: String, institution_number: String, transit_number: String).void
2462
+ }
2463
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
2464
+ end
2465
+ class Affirm < Stripe::RequestParams
2466
+
2467
+ end
2468
+ class AfterpayClearpay < Stripe::RequestParams
2469
+
2470
+ end
2471
+ class Alipay < Stripe::RequestParams
2472
+
2473
+ end
2474
+ class Alma < Stripe::RequestParams
2475
+
2476
+ end
2477
+ class AmazonPay < Stripe::RequestParams
2478
+
2479
+ end
2480
+ class AuBecsDebit < Stripe::RequestParams
2481
+ # The account number for the bank account.
2482
+ sig { returns(String) }
2483
+ attr_accessor :account_number
2484
+ # Bank-State-Branch number of the bank account.
2485
+ sig { returns(String) }
2486
+ attr_accessor :bsb_number
2487
+ sig { params(account_number: String, bsb_number: String).void }
2488
+ def initialize(account_number: nil, bsb_number: nil); end
2489
+ end
2490
+ class BacsDebit < Stripe::RequestParams
2491
+ # Account number of the bank account that the funds will be debited from.
2492
+ sig { returns(String) }
2493
+ attr_accessor :account_number
2494
+ # Sort code of the bank account. (e.g., `10-20-30`)
2495
+ sig { returns(String) }
2496
+ attr_accessor :sort_code
2497
+ sig { params(account_number: String, sort_code: String).void }
2498
+ def initialize(account_number: nil, sort_code: nil); end
2499
+ end
2500
+ class Bancontact < Stripe::RequestParams
2501
+
2502
+ end
2503
+ class BillingDetails < Stripe::RequestParams
2504
+ class Address < Stripe::RequestParams
2505
+ # City, district, suburb, town, or village.
2506
+ sig { returns(String) }
2507
+ attr_accessor :city
2508
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2509
+ sig { returns(String) }
2510
+ attr_accessor :country
2511
+ # Address line 1 (e.g., street, PO Box, or company name).
2512
+ sig { returns(String) }
2513
+ attr_accessor :line1
2514
+ # Address line 2 (e.g., apartment, suite, unit, or building).
2515
+ sig { returns(String) }
2516
+ attr_accessor :line2
2517
+ # ZIP or postal code.
2518
+ sig { returns(String) }
2519
+ attr_accessor :postal_code
2520
+ # State, county, province, or region.
2521
+ sig { returns(String) }
2522
+ attr_accessor :state
2523
+ sig {
2524
+ params(city: String, country: String, line1: String, line2: String, postal_code: String, state: String).void
2525
+ }
2526
+ def initialize(
2527
+ city: nil,
2528
+ country: nil,
2529
+ line1: nil,
2530
+ line2: nil,
2531
+ postal_code: nil,
2532
+ state: nil
2533
+ ); end
2534
+ end
2535
+ # Billing address.
2536
+ sig {
2537
+ returns(T.nilable(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BillingDetails::Address))
2538
+ }
2539
+ attr_accessor :address
2540
+ # Email address.
2541
+ sig { returns(T.nilable(String)) }
2542
+ attr_accessor :email
2543
+ # Full name.
2544
+ sig { returns(T.nilable(String)) }
2545
+ attr_accessor :name
2546
+ # Billing phone number (including extension).
2547
+ sig { returns(T.nilable(String)) }
2548
+ attr_accessor :phone
2549
+ sig {
2550
+ params(address: T.nilable(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BillingDetails::Address), email: T.nilable(String), name: T.nilable(String), phone: T.nilable(String)).void
2551
+ }
2552
+ def initialize(address: nil, email: nil, name: nil, phone: nil); end
2553
+ end
2554
+ class Blik < Stripe::RequestParams
2555
+
2556
+ end
2557
+ class Boleto < Stripe::RequestParams
2558
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
2559
+ sig { returns(String) }
2560
+ attr_accessor :tax_id
2561
+ sig { params(tax_id: String).void }
2562
+ def initialize(tax_id: nil); end
2563
+ end
2564
+ class Cashapp < Stripe::RequestParams
2565
+
2566
+ end
2567
+ class CustomerBalance < Stripe::RequestParams
2568
+
2569
+ end
2570
+ class Eps < Stripe::RequestParams
2571
+ # The customer's bank.
2572
+ sig { returns(String) }
2573
+ attr_accessor :bank
2574
+ sig { params(bank: String).void }
2575
+ def initialize(bank: nil); end
2576
+ end
2577
+ class Fpx < Stripe::RequestParams
2578
+ # Account holder type for FPX transaction
2579
+ sig { returns(String) }
2580
+ attr_accessor :account_holder_type
2581
+ # The customer's bank.
2582
+ sig { returns(String) }
2583
+ attr_accessor :bank
2584
+ sig { params(account_holder_type: String, bank: String).void }
2585
+ def initialize(account_holder_type: nil, bank: nil); end
2586
+ end
2587
+ class Giropay < Stripe::RequestParams
2588
+
2589
+ end
2590
+ class Gopay < Stripe::RequestParams
2591
+
2592
+ end
2593
+ class Grabpay < Stripe::RequestParams
2594
+
2595
+ end
2596
+ class IdBankTransfer < Stripe::RequestParams
2597
+ # Bank where the account is held.
2598
+ sig { returns(String) }
2599
+ attr_accessor :bank
2600
+ sig { params(bank: String).void }
2601
+ def initialize(bank: nil); end
2602
+ end
2603
+ class Ideal < Stripe::RequestParams
2604
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
2605
+ sig { returns(String) }
2606
+ attr_accessor :bank
2607
+ sig { params(bank: String).void }
2608
+ def initialize(bank: nil); end
2609
+ end
2610
+ class InteracPresent < Stripe::RequestParams
2611
+
2612
+ end
2613
+ class KakaoPay < Stripe::RequestParams
2614
+
2615
+ end
2616
+ class Klarna < Stripe::RequestParams
2617
+ class Dob < Stripe::RequestParams
2618
+ # The day of birth, between 1 and 31.
2619
+ sig { returns(Integer) }
2620
+ attr_accessor :day
2621
+ # The month of birth, between 1 and 12.
2622
+ sig { returns(Integer) }
2623
+ attr_accessor :month
2624
+ # The four-digit year of birth.
2625
+ sig { returns(Integer) }
2626
+ attr_accessor :year
2627
+ sig { params(day: Integer, month: Integer, year: Integer).void }
2628
+ def initialize(day: nil, month: nil, year: nil); end
2629
+ end
2630
+ # Customer's date of birth
2631
+ sig {
2632
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Klarna::Dob)
2633
+ }
2634
+ attr_accessor :dob
2635
+ sig {
2636
+ params(dob: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Klarna::Dob).void
2637
+ }
2638
+ def initialize(dob: nil); end
2639
+ end
2640
+ class Konbini < Stripe::RequestParams
2641
+
2642
+ end
2643
+ class KrCard < Stripe::RequestParams
2644
+
2645
+ end
2646
+ class Link < Stripe::RequestParams
2647
+
2648
+ end
2649
+ class MbWay < Stripe::RequestParams
2650
+
2651
+ end
2652
+ class Mobilepay < Stripe::RequestParams
2653
+
2654
+ end
2655
+ class Multibanco < Stripe::RequestParams
2656
+
2657
+ end
2658
+ class NaverPay < Stripe::RequestParams
2659
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
2660
+ sig { returns(String) }
2661
+ attr_accessor :funding
2662
+ sig { params(funding: String).void }
2663
+ def initialize(funding: nil); end
2664
+ end
2665
+ class Oxxo < Stripe::RequestParams
2666
+
2667
+ end
2668
+ class P24 < Stripe::RequestParams
2669
+ # The customer's bank.
2670
+ sig { returns(String) }
2671
+ attr_accessor :bank
2672
+ sig { params(bank: String).void }
2673
+ def initialize(bank: nil); end
2674
+ end
2675
+ class PayByBank < Stripe::RequestParams
2676
+
2677
+ end
2678
+ class Payco < Stripe::RequestParams
2679
+
2680
+ end
2681
+ class Paynow < Stripe::RequestParams
2682
+
2683
+ end
2684
+ class Paypal < Stripe::RequestParams
2685
+
2686
+ end
2687
+ class Payto < Stripe::RequestParams
2688
+ # The account number for the bank account.
2689
+ sig { returns(String) }
2690
+ attr_accessor :account_number
2691
+ # Bank-State-Branch number of the bank account.
2692
+ sig { returns(String) }
2693
+ attr_accessor :bsb_number
2694
+ # The PayID alias for the bank account.
2695
+ sig { returns(String) }
2696
+ attr_accessor :pay_id
2697
+ sig { params(account_number: String, bsb_number: String, pay_id: String).void }
2698
+ def initialize(account_number: nil, bsb_number: nil, pay_id: nil); end
2699
+ end
2700
+ class Pix < Stripe::RequestParams
2701
+
2702
+ end
2703
+ class Promptpay < Stripe::RequestParams
2704
+
2705
+ end
2706
+ class Qris < Stripe::RequestParams
2707
+
2708
+ end
2709
+ class RadarOptions < Stripe::RequestParams
2710
+ # 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.
2711
+ sig { returns(String) }
2712
+ attr_accessor :session
2713
+ sig { params(session: String).void }
2714
+ def initialize(session: nil); end
2715
+ end
2716
+ class Rechnung < Stripe::RequestParams
2717
+ class Dob < Stripe::RequestParams
2718
+ # The day of birth, between 1 and 31.
2719
+ sig { returns(Integer) }
2720
+ attr_accessor :day
2721
+ # The month of birth, between 1 and 12.
2722
+ sig { returns(Integer) }
2723
+ attr_accessor :month
2724
+ # The four-digit year of birth.
2725
+ sig { returns(Integer) }
2726
+ attr_accessor :year
2727
+ sig { params(day: Integer, month: Integer, year: Integer).void }
2728
+ def initialize(day: nil, month: nil, year: nil); end
2729
+ end
2730
+ # Customer's date of birth
2731
+ sig {
2732
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Rechnung::Dob)
2733
+ }
2734
+ attr_accessor :dob
2735
+ sig {
2736
+ params(dob: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Rechnung::Dob).void
2737
+ }
2738
+ def initialize(dob: nil); end
2739
+ end
2740
+ class RevolutPay < Stripe::RequestParams
2741
+
2742
+ end
2743
+ class SamsungPay < Stripe::RequestParams
2744
+
2745
+ end
2746
+ class SepaDebit < Stripe::RequestParams
2747
+ # IBAN of the bank account.
2748
+ sig { returns(String) }
2749
+ attr_accessor :iban
2750
+ sig { params(iban: String).void }
2751
+ def initialize(iban: nil); end
2752
+ end
2753
+ class Shopeepay < Stripe::RequestParams
2754
+
2755
+ end
2756
+ class Sofort < Stripe::RequestParams
2757
+ # Two-letter ISO code representing the country the bank account is located in.
2758
+ sig { returns(String) }
2759
+ attr_accessor :country
2760
+ sig { params(country: String).void }
2761
+ def initialize(country: nil); end
2762
+ end
2763
+ class Swish < Stripe::RequestParams
2764
+
2765
+ end
2766
+ class Twint < Stripe::RequestParams
2767
+
2768
+ end
2769
+ class UsBankAccount < Stripe::RequestParams
2770
+ # Account holder type: individual or company.
2771
+ sig { returns(String) }
2772
+ attr_accessor :account_holder_type
2773
+ # Account number of the bank account.
2774
+ sig { returns(String) }
2775
+ attr_accessor :account_number
2776
+ # Account type: checkings or savings. Defaults to checking if omitted.
2777
+ sig { returns(String) }
2778
+ attr_accessor :account_type
2779
+ # The ID of a Financial Connections Account to use as a payment method.
2780
+ sig { returns(String) }
2781
+ attr_accessor :financial_connections_account
2782
+ # Routing number of the bank account.
2783
+ sig { returns(String) }
2784
+ attr_accessor :routing_number
2785
+ sig {
2786
+ params(account_holder_type: String, account_number: String, account_type: String, financial_connections_account: String, routing_number: String).void
2787
+ }
2788
+ def initialize(
2789
+ account_holder_type: nil,
2790
+ account_number: nil,
2791
+ account_type: nil,
2792
+ financial_connections_account: nil,
2793
+ routing_number: nil
2794
+ ); end
2795
+ end
2796
+ class WechatPay < Stripe::RequestParams
2797
+
2798
+ end
2799
+ class Zip < Stripe::RequestParams
2800
+
2801
+ end
2802
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
2803
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AcssDebit) }
2804
+ attr_accessor :acss_debit
2805
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
2806
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Affirm) }
2807
+ attr_accessor :affirm
2808
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
2809
+ sig {
2810
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AfterpayClearpay)
2811
+ }
2812
+ attr_accessor :afterpay_clearpay
2813
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
2814
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Alipay) }
2815
+ attr_accessor :alipay
2816
+ # 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`.
2817
+ sig { returns(String) }
2818
+ attr_accessor :allow_redisplay
2819
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
2820
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Alma) }
2821
+ attr_accessor :alma
2822
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
2823
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AmazonPay) }
2824
+ attr_accessor :amazon_pay
2825
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
2826
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AuBecsDebit) }
2827
+ attr_accessor :au_becs_debit
2828
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
2829
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BacsDebit) }
2830
+ attr_accessor :bacs_debit
2831
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
2832
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Bancontact) }
2833
+ attr_accessor :bancontact
2834
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
2835
+ sig {
2836
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BillingDetails)
2837
+ }
2838
+ attr_accessor :billing_details
2839
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
2840
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Blik) }
2841
+ attr_accessor :blik
2842
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
2843
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Boleto) }
2844
+ attr_accessor :boleto
2845
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
2846
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Cashapp) }
2847
+ attr_accessor :cashapp
2848
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
2849
+ sig {
2850
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::CustomerBalance)
2851
+ }
2852
+ attr_accessor :customer_balance
2853
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
2854
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Eps) }
2855
+ attr_accessor :eps
2856
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
2857
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Fpx) }
2858
+ attr_accessor :fpx
2859
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
2860
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Giropay) }
2861
+ attr_accessor :giropay
2862
+ # If this is a Gopay PaymentMethod, this hash contains details about the Gopay payment method.
2863
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Gopay) }
2864
+ attr_accessor :gopay
2865
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
2866
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Grabpay) }
2867
+ attr_accessor :grabpay
2868
+ # If this is an `IdBankTransfer` PaymentMethod, this hash contains details about the IdBankTransfer payment method.
2869
+ sig {
2870
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::IdBankTransfer)
2871
+ }
2872
+ attr_accessor :id_bank_transfer
2873
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
2874
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Ideal) }
2875
+ attr_accessor :ideal
2876
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
2877
+ sig {
2878
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::InteracPresent)
2879
+ }
2880
+ attr_accessor :interac_present
2881
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
2882
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::KakaoPay) }
2883
+ attr_accessor :kakao_pay
2884
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
2885
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Klarna) }
2886
+ attr_accessor :klarna
2887
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
2888
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Konbini) }
2889
+ attr_accessor :konbini
2890
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
2891
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::KrCard) }
2892
+ attr_accessor :kr_card
2893
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
2894
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Link) }
2895
+ attr_accessor :link
2896
+ # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
2897
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::MbWay) }
2898
+ attr_accessor :mb_way
2899
+ # 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`.
2900
+ sig { returns(T::Hash[String, String]) }
2901
+ attr_accessor :metadata
2902
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
2903
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Mobilepay) }
2904
+ attr_accessor :mobilepay
2905
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
2906
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Multibanco) }
2907
+ attr_accessor :multibanco
2908
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
2909
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::NaverPay) }
2910
+ attr_accessor :naver_pay
2911
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
2912
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Oxxo) }
2913
+ attr_accessor :oxxo
2914
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
2915
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::P24) }
2916
+ attr_accessor :p24
2917
+ # If this is a `pay_by_bank` PaymentMethod, this hash contains details about the PayByBank payment method.
2918
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::PayByBank) }
2919
+ attr_accessor :pay_by_bank
2920
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
2921
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Payco) }
2922
+ attr_accessor :payco
2923
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
2924
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Paynow) }
2925
+ attr_accessor :paynow
2926
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
2927
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Paypal) }
2928
+ attr_accessor :paypal
2929
+ # If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
2930
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Payto) }
2931
+ attr_accessor :payto
2932
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
2933
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Pix) }
2934
+ attr_accessor :pix
2935
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
2936
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Promptpay) }
2937
+ attr_accessor :promptpay
2938
+ # If this is a `qris` PaymentMethod, this hash contains details about the QRIS payment method.
2939
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Qris) }
2940
+ attr_accessor :qris
2941
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
2942
+ sig {
2943
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::RadarOptions)
2944
+ }
2945
+ attr_accessor :radar_options
2946
+ # If this is a `rechnung` PaymentMethod, this hash contains details about the Rechnung payment method.
2947
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Rechnung) }
2948
+ attr_accessor :rechnung
2949
+ # If this is a `Revolut Pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
2950
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::RevolutPay) }
2951
+ attr_accessor :revolut_pay
2952
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
2953
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::SamsungPay) }
2954
+ attr_accessor :samsung_pay
2955
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
2956
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::SepaDebit) }
2957
+ attr_accessor :sepa_debit
2958
+ # If this is a Shopeepay PaymentMethod, this hash contains details about the Shopeepay payment method.
2959
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Shopeepay) }
2960
+ attr_accessor :shopeepay
2961
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
2962
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Sofort) }
2963
+ attr_accessor :sofort
2964
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
2965
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Swish) }
2966
+ attr_accessor :swish
2967
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
2968
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Twint) }
2969
+ attr_accessor :twint
2970
+ # 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.
2971
+ sig { returns(String) }
2972
+ attr_accessor :type
2973
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
2974
+ sig {
2975
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::UsBankAccount)
2976
+ }
2977
+ attr_accessor :us_bank_account
2978
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
2979
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::WechatPay) }
2980
+ attr_accessor :wechat_pay
2981
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
2982
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Zip) }
2983
+ attr_accessor :zip
2984
+ sig {
2985
+ params(acss_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AcssDebit, affirm: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Affirm, afterpay_clearpay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AfterpayClearpay, alipay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Alipay, allow_redisplay: String, alma: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Alma, amazon_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AmazonPay, au_becs_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::AuBecsDebit, bacs_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BacsDebit, bancontact: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Bancontact, billing_details: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::BillingDetails, blik: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Blik, boleto: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Boleto, cashapp: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Cashapp, customer_balance: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::CustomerBalance, eps: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Eps, fpx: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Fpx, giropay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Giropay, gopay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Gopay, grabpay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Grabpay, id_bank_transfer: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::IdBankTransfer, ideal: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Ideal, interac_present: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::InteracPresent, kakao_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::KakaoPay, klarna: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Klarna, konbini: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Konbini, kr_card: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::KrCard, link: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Link, mb_way: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::MbWay, metadata: T::Hash[String, String], mobilepay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Mobilepay, multibanco: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Multibanco, naver_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::NaverPay, oxxo: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Oxxo, p24: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::P24, pay_by_bank: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::PayByBank, payco: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Payco, paynow: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Paynow, paypal: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Paypal, payto: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Payto, pix: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Pix, promptpay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Promptpay, qris: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Qris, radar_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::RadarOptions, rechnung: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Rechnung, revolut_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::RevolutPay, samsung_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::SamsungPay, sepa_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::SepaDebit, shopeepay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Shopeepay, sofort: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Sofort, swish: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Swish, twint: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Twint, type: String, us_bank_account: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::UsBankAccount, wechat_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::WechatPay, zip: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData::Zip).void
2986
+ }
2987
+ def initialize(
2988
+ acss_debit: nil,
2989
+ affirm: nil,
2990
+ afterpay_clearpay: nil,
2991
+ alipay: nil,
2992
+ allow_redisplay: nil,
2993
+ alma: nil,
2994
+ amazon_pay: nil,
2995
+ au_becs_debit: nil,
2996
+ bacs_debit: nil,
2997
+ bancontact: nil,
2998
+ billing_details: nil,
2999
+ blik: nil,
3000
+ boleto: nil,
3001
+ cashapp: nil,
3002
+ customer_balance: nil,
3003
+ eps: nil,
3004
+ fpx: nil,
3005
+ giropay: nil,
3006
+ gopay: nil,
3007
+ grabpay: nil,
3008
+ id_bank_transfer: nil,
3009
+ ideal: nil,
3010
+ interac_present: nil,
3011
+ kakao_pay: nil,
3012
+ klarna: nil,
3013
+ konbini: nil,
3014
+ kr_card: nil,
3015
+ link: nil,
3016
+ mb_way: nil,
3017
+ metadata: nil,
3018
+ mobilepay: nil,
3019
+ multibanco: nil,
3020
+ naver_pay: nil,
3021
+ oxxo: nil,
3022
+ p24: nil,
3023
+ pay_by_bank: nil,
3024
+ payco: nil,
3025
+ paynow: nil,
3026
+ paypal: nil,
3027
+ payto: nil,
3028
+ pix: nil,
3029
+ promptpay: nil,
3030
+ qris: nil,
3031
+ radar_options: nil,
3032
+ rechnung: nil,
3033
+ revolut_pay: nil,
3034
+ samsung_pay: nil,
3035
+ sepa_debit: nil,
3036
+ shopeepay: nil,
3037
+ sofort: nil,
3038
+ swish: nil,
3039
+ twint: nil,
3040
+ type: nil,
3041
+ us_bank_account: nil,
3042
+ wechat_pay: nil,
3043
+ zip: nil
3044
+ ); end
3045
+ end
3046
+ class PaymentMethodOptions < Stripe::RequestParams
3047
+ class AcssDebit < Stripe::RequestParams
3048
+ class MandateOptions < Stripe::RequestParams
3049
+ # A URL for custom mandate text to render during confirmation step.
3050
+ # The URL will be rendered with additional GET parameters `payment_intent` and `payment_intent_client_secret` when confirming a Payment Intent,
3051
+ # or `setup_intent` and `setup_intent_client_secret` when confirming a Setup Intent.
3052
+ sig { returns(T.nilable(String)) }
3053
+ attr_accessor :custom_mandate_url
3054
+ # List of Stripe products where this mandate can be selected automatically.
3055
+ sig { returns(T::Array[String]) }
3056
+ attr_accessor :default_for
3057
+ # Description of the mandate interval. Only required if 'payment_schedule' parameter is 'interval' or 'combined'.
3058
+ sig { returns(String) }
3059
+ attr_accessor :interval_description
3060
+ # Payment schedule for the mandate.
3061
+ sig { returns(String) }
3062
+ attr_accessor :payment_schedule
3063
+ # Transaction type of the mandate.
3064
+ sig { returns(String) }
3065
+ attr_accessor :transaction_type
3066
+ sig {
3067
+ params(custom_mandate_url: T.nilable(String), default_for: T::Array[String], interval_description: String, payment_schedule: String, transaction_type: String).void
3068
+ }
3069
+ def initialize(
3070
+ custom_mandate_url: nil,
3071
+ default_for: nil,
3072
+ interval_description: nil,
3073
+ payment_schedule: nil,
3074
+ transaction_type: nil
3075
+ ); end
3076
+ end
3077
+ # 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).
3078
+ sig { returns(String) }
3079
+ attr_accessor :currency
3080
+ # Additional fields for Mandate creation
3081
+ sig {
3082
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AcssDebit::MandateOptions)
3083
+ }
3084
+ attr_accessor :mandate_options
3085
+ # Bank account verification method.
3086
+ sig { returns(String) }
3087
+ attr_accessor :verification_method
3088
+ sig {
3089
+ params(currency: String, mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AcssDebit::MandateOptions, verification_method: String).void
3090
+ }
3091
+ def initialize(currency: nil, mandate_options: nil, verification_method: nil); end
3092
+ end
3093
+ class AmazonPay < Stripe::RequestParams
3094
+
3095
+ end
3096
+ class BacsDebit < Stripe::RequestParams
3097
+ class MandateOptions < Stripe::RequestParams
3098
+ # 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'.
3099
+ sig { returns(T.nilable(String)) }
3100
+ attr_accessor :reference_prefix
3101
+ sig { params(reference_prefix: T.nilable(String)).void }
3102
+ def initialize(reference_prefix: nil); end
3103
+ end
3104
+ # Additional fields for Mandate creation
3105
+ sig {
3106
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::BacsDebit::MandateOptions)
3107
+ }
3108
+ attr_accessor :mandate_options
3109
+ sig {
3110
+ params(mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::BacsDebit::MandateOptions).void
3111
+ }
3112
+ def initialize(mandate_options: nil); end
3113
+ end
3114
+ class Card < Stripe::RequestParams
3115
+ class MandateOptions < Stripe::RequestParams
3116
+ # Amount to be charged for future payments.
3117
+ sig { returns(Integer) }
3118
+ attr_accessor :amount
3119
+ # 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.
3120
+ sig { returns(String) }
3121
+ attr_accessor :amount_type
3122
+ # 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).
3123
+ sig { returns(String) }
3124
+ attr_accessor :currency
3125
+ # A description of the mandate or subscription that is meant to be displayed to the customer.
3126
+ sig { returns(String) }
3127
+ attr_accessor :description
3128
+ # 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.
3129
+ sig { returns(Integer) }
3130
+ attr_accessor :end_date
3131
+ # Specifies payment frequency. One of `day`, `week`, `month`, `year`, or `sporadic`.
3132
+ sig { returns(String) }
3133
+ attr_accessor :interval
3134
+ # 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`.
3135
+ sig { returns(Integer) }
3136
+ attr_accessor :interval_count
3137
+ # Unique identifier for the mandate or subscription.
3138
+ sig { returns(String) }
3139
+ attr_accessor :reference
3140
+ # Start date of the mandate or subscription. Start date should not be lesser than yesterday.
3141
+ sig { returns(Integer) }
3142
+ attr_accessor :start_date
3143
+ # Specifies the type of mandates supported. Possible values are `india`.
3144
+ sig { returns(T::Array[String]) }
3145
+ attr_accessor :supported_types
3146
+ sig {
3147
+ 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
3148
+ }
3149
+ def initialize(
3150
+ amount: nil,
3151
+ amount_type: nil,
3152
+ currency: nil,
3153
+ description: nil,
3154
+ end_date: nil,
3155
+ interval: nil,
3156
+ interval_count: nil,
3157
+ reference: nil,
3158
+ start_date: nil,
3159
+ supported_types: nil
3160
+ ); end
3161
+ end
3162
+ class ThreeDSecure < Stripe::RequestParams
3163
+ class NetworkOptions < Stripe::RequestParams
3164
+ class CartesBancaires < Stripe::RequestParams
3165
+ # The cryptogram calculation algorithm used by the card Issuer's ACS
3166
+ # to calculate the Authentication cryptogram. Also known as `cavvAlgorithm`.
3167
+ # messageExtension: CB-AVALGO
3168
+ sig { returns(String) }
3169
+ attr_accessor :cb_avalgo
3170
+ # The exemption indicator returned from Cartes Bancaires in the ARes.
3171
+ # message extension: CB-EXEMPTION; string (4 characters)
3172
+ # This is a 3 byte bitmap (low significant byte first and most significant
3173
+ # bit first) that has been Base64 encoded
3174
+ sig { returns(String) }
3175
+ attr_accessor :cb_exemption
3176
+ # The risk score returned from Cartes Bancaires in the ARes.
3177
+ # message extension: CB-SCORE; numeric value 0-99
3178
+ sig { returns(Integer) }
3179
+ attr_accessor :cb_score
3180
+ sig { params(cb_avalgo: String, cb_exemption: String, cb_score: Integer).void }
3181
+ def initialize(cb_avalgo: nil, cb_exemption: nil, cb_score: nil); end
3182
+ end
3183
+ # Cartes Bancaires-specific 3DS fields.
3184
+ sig {
3185
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires)
3186
+ }
3187
+ attr_accessor :cartes_bancaires
3188
+ sig {
3189
+ params(cartes_bancaires: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions::CartesBancaires).void
3190
+ }
3191
+ def initialize(cartes_bancaires: nil); end
3192
+ end
3193
+ # The `transStatus` returned from the card Issuer’s ACS in the ARes.
3194
+ sig { returns(String) }
3195
+ attr_accessor :ares_trans_status
3196
+ # The cryptogram, also known as the "authentication value" (AAV, CAVV or
3197
+ # AEVV). This value is 20 bytes, base64-encoded into a 28-character string.
3198
+ # (Most 3D Secure providers will return the base64-encoded version, which
3199
+ # is what you should specify here.)
3200
+ sig { returns(String) }
3201
+ attr_accessor :cryptogram
3202
+ # The Electronic Commerce Indicator (ECI) is returned by your 3D Secure
3203
+ # provider and indicates what degree of authentication was performed.
3204
+ sig { returns(String) }
3205
+ attr_accessor :electronic_commerce_indicator
3206
+ # Network specific 3DS fields. Network specific arguments require an
3207
+ # explicit card brand choice. The parameter `payment_method_options.card.network``
3208
+ # must be populated accordingly
3209
+ sig {
3210
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions)
3211
+ }
3212
+ attr_accessor :network_options
3213
+ # The challenge indicator (`threeDSRequestorChallengeInd`) which was requested in the
3214
+ # AReq sent to the card Issuer's ACS. A string containing 2 digits from 01-99.
3215
+ sig { returns(String) }
3216
+ attr_accessor :requestor_challenge_indicator
3217
+ # For 3D Secure 1, the XID. For 3D Secure 2, the Directory Server
3218
+ # Transaction ID (dsTransID).
3219
+ sig { returns(String) }
3220
+ attr_accessor :transaction_id
3221
+ # The version of 3D Secure that was performed.
3222
+ sig { returns(String) }
3223
+ attr_accessor :version
3224
+ sig {
3225
+ params(ares_trans_status: String, cryptogram: String, electronic_commerce_indicator: String, network_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure::NetworkOptions, requestor_challenge_indicator: String, transaction_id: String, version: String).void
3226
+ }
3227
+ def initialize(
3228
+ ares_trans_status: nil,
3229
+ cryptogram: nil,
3230
+ electronic_commerce_indicator: nil,
3231
+ network_options: nil,
3232
+ requestor_challenge_indicator: nil,
3233
+ transaction_id: nil,
3234
+ version: nil
3235
+ ); end
3236
+ end
3237
+ # Configuration options for setting up an eMandate for cards issued in India.
3238
+ sig {
3239
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::MandateOptions)
3240
+ }
3241
+ attr_accessor :mandate_options
3242
+ # When specified, this parameter signals that a card has been collected
3243
+ # as MOTO (Mail Order Telephone Order) and thus out of scope for SCA. This
3244
+ # parameter can only be provided during confirmation.
3245
+ sig { returns(T::Boolean) }
3246
+ attr_accessor :moto
3247
+ # 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.
3248
+ sig { returns(String) }
3249
+ attr_accessor :network
3250
+ # 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.
3251
+ sig { returns(String) }
3252
+ attr_accessor :request_three_d_secure
3253
+ # If 3D Secure authentication was performed with a third-party provider,
3254
+ # the authentication details to use for this setup.
3255
+ sig {
3256
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure)
3257
+ }
3258
+ attr_accessor :three_d_secure
3259
+ sig {
3260
+ params(mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::MandateOptions, moto: T::Boolean, network: String, request_three_d_secure: String, three_d_secure: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card::ThreeDSecure).void
3261
+ }
3262
+ def initialize(
3263
+ mandate_options: nil,
3264
+ moto: nil,
3265
+ network: nil,
3266
+ request_three_d_secure: nil,
3267
+ three_d_secure: nil
3268
+ ); end
3269
+ end
3270
+ class CardPresent < Stripe::RequestParams
3271
+
3272
+ end
3273
+ class Link < Stripe::RequestParams
3274
+ # [Deprecated] This is a legacy parameter that no longer has any function.
3275
+ sig { returns(String) }
3276
+ attr_accessor :persistent_token
3277
+ sig { params(persistent_token: String).void }
3278
+ def initialize(persistent_token: nil); end
3279
+ end
3280
+ class Paypal < Stripe::RequestParams
3281
+ # The PayPal Billing Agreement ID (BAID). This is an ID generated by PayPal which represents the mandate between the merchant and the customer.
3282
+ sig { returns(String) }
3283
+ attr_accessor :billing_agreement_id
3284
+ # Attribute for param field currency
3285
+ sig { returns(String) }
3286
+ attr_accessor :currency
3287
+ # 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.
3288
+ sig { returns(T::Array[String]) }
3289
+ attr_accessor :subsellers
3290
+ sig {
3291
+ params(billing_agreement_id: String, currency: String, subsellers: T::Array[String]).void
3292
+ }
3293
+ def initialize(billing_agreement_id: nil, currency: nil, subsellers: nil); end
3294
+ end
3295
+ class Payto < Stripe::RequestParams
3296
+ class MandateOptions < Stripe::RequestParams
3297
+ # Amount that will be collected. It is required when `amount_type` is `fixed`.
3298
+ sig { returns(Integer) }
3299
+ attr_accessor :amount
3300
+ # 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.
3301
+ sig { returns(String) }
3302
+ attr_accessor :amount_type
3303
+ # Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
3304
+ sig { returns(String) }
3305
+ attr_accessor :end_date
3306
+ # The periodicity at which payments will be collected.
3307
+ sig { returns(String) }
3308
+ attr_accessor :payment_schedule
3309
+ # 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.
3310
+ sig { returns(Integer) }
3311
+ attr_accessor :payments_per_period
3312
+ # The purpose for which payments are made. Defaults to retail.
3313
+ sig { returns(String) }
3314
+ attr_accessor :purpose
3315
+ # Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
3316
+ sig { returns(String) }
3317
+ attr_accessor :start_date
3318
+ sig {
3319
+ params(amount: Integer, amount_type: String, end_date: String, payment_schedule: String, payments_per_period: Integer, purpose: String, start_date: String).void
3320
+ }
3321
+ def initialize(
3322
+ amount: nil,
3323
+ amount_type: nil,
3324
+ end_date: nil,
3325
+ payment_schedule: nil,
3326
+ payments_per_period: nil,
3327
+ purpose: nil,
3328
+ start_date: nil
3329
+ ); end
3330
+ end
3331
+ # Additional fields for Mandate creation.
3332
+ sig {
3333
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Payto::MandateOptions)
3334
+ }
3335
+ attr_accessor :mandate_options
3336
+ sig {
3337
+ params(mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Payto::MandateOptions).void
3338
+ }
3339
+ def initialize(mandate_options: nil); end
3340
+ end
3341
+ class SepaDebit < Stripe::RequestParams
3342
+ class MandateOptions < Stripe::RequestParams
3343
+ # 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'.
3344
+ sig { returns(T.nilable(String)) }
3345
+ attr_accessor :reference_prefix
3346
+ sig { params(reference_prefix: T.nilable(String)).void }
3347
+ def initialize(reference_prefix: nil); end
3348
+ end
3349
+ # Additional fields for Mandate creation
3350
+ sig {
3351
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::SepaDebit::MandateOptions)
3352
+ }
3353
+ attr_accessor :mandate_options
3354
+ sig {
3355
+ params(mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::SepaDebit::MandateOptions).void
3356
+ }
3357
+ def initialize(mandate_options: nil); end
3358
+ end
3359
+ class UsBankAccount < Stripe::RequestParams
3360
+ class FinancialConnections < Stripe::RequestParams
3361
+ class Filters < Stripe::RequestParams
3362
+ # The account subcategories to use to filter for selectable accounts. Valid subcategories are `checking` and `savings`.
3363
+ sig { returns(T::Array[String]) }
3364
+ attr_accessor :account_subcategories
3365
+ # ID of the institution to use to filter for selectable accounts.
3366
+ sig { returns(String) }
3367
+ attr_accessor :institution
3368
+ sig { params(account_subcategories: T::Array[String], institution: String).void }
3369
+ def initialize(account_subcategories: nil, institution: nil); end
3370
+ end
3371
+ class ManualEntry < Stripe::RequestParams
3372
+ # Settings for configuring manual entry of account details.
3373
+ sig { returns(String) }
3374
+ attr_accessor :mode
3375
+ sig { params(mode: String).void }
3376
+ def initialize(mode: nil); end
3377
+ end
3378
+ # Provide filters for the linked accounts that the customer can select for the payment method.
3379
+ sig {
3380
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters)
3381
+ }
3382
+ attr_accessor :filters
3383
+ # Customize manual entry behavior
3384
+ sig {
3385
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry)
3386
+ }
3387
+ attr_accessor :manual_entry
3388
+ # 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`.
3389
+ sig { returns(T::Array[String]) }
3390
+ attr_accessor :permissions
3391
+ # List of data features that you would like to retrieve upon account creation.
3392
+ sig { returns(T::Array[String]) }
3393
+ attr_accessor :prefetch
3394
+ # 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.
3395
+ sig { returns(String) }
3396
+ attr_accessor :return_url
3397
+ sig {
3398
+ params(filters: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::Filters, manual_entry: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections::ManualEntry, permissions: T::Array[String], prefetch: T::Array[String], return_url: String).void
3399
+ }
3400
+ def initialize(
3401
+ filters: nil,
3402
+ manual_entry: nil,
3403
+ permissions: nil,
3404
+ prefetch: nil,
3405
+ return_url: nil
3406
+ ); end
3407
+ end
3408
+ class MandateOptions < Stripe::RequestParams
3409
+ # The method used to collect offline mandate customer acceptance.
3410
+ sig { returns(T.nilable(String)) }
3411
+ attr_accessor :collection_method
3412
+ sig { params(collection_method: T.nilable(String)).void }
3413
+ def initialize(collection_method: nil); end
3414
+ end
3415
+ class Networks < Stripe::RequestParams
3416
+ # Triggers validations to run across the selected networks
3417
+ sig { returns(T::Array[String]) }
3418
+ attr_accessor :requested
3419
+ sig { params(requested: T::Array[String]).void }
3420
+ def initialize(requested: nil); end
3421
+ end
3422
+ # Additional fields for Financial Connections Session creation
3423
+ sig {
3424
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections)
3425
+ }
3426
+ attr_accessor :financial_connections
3427
+ # Additional fields for Mandate creation
3428
+ sig {
3429
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::MandateOptions)
3430
+ }
3431
+ attr_accessor :mandate_options
3432
+ # Additional fields for network related functions
3433
+ sig {
3434
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::Networks)
3435
+ }
3436
+ attr_accessor :networks
3437
+ # Bank account verification method.
3438
+ sig { returns(String) }
3439
+ attr_accessor :verification_method
3440
+ sig {
3441
+ params(financial_connections: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::FinancialConnections, mandate_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::MandateOptions, networks: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount::Networks, verification_method: String).void
3442
+ }
3443
+ def initialize(
3444
+ financial_connections: nil,
3445
+ mandate_options: nil,
3446
+ networks: nil,
3447
+ verification_method: nil
3448
+ ); end
3449
+ end
3450
+ # If this is a `acss_debit` SetupIntent, this sub-hash contains details about the ACSS Debit payment method options.
3451
+ sig {
3452
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AcssDebit)
3453
+ }
3454
+ attr_accessor :acss_debit
3455
+ # If this is a `amazon_pay` SetupIntent, this sub-hash contains details about the AmazonPay payment method options.
3456
+ sig {
3457
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AmazonPay)
3458
+ }
3459
+ attr_accessor :amazon_pay
3460
+ # If this is a `bacs_debit` SetupIntent, this sub-hash contains details about the Bacs Debit payment method options.
3461
+ sig {
3462
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::BacsDebit)
3463
+ }
3464
+ attr_accessor :bacs_debit
3465
+ # Configuration for any card setup attempted on this SetupIntent.
3466
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card) }
3467
+ attr_accessor :card
3468
+ # If this is a `card_present` PaymentMethod, this sub-hash contains details about the card-present payment method options.
3469
+ sig {
3470
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::CardPresent)
3471
+ }
3472
+ attr_accessor :card_present
3473
+ # If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
3474
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Link) }
3475
+ attr_accessor :link
3476
+ # If this is a `paypal` PaymentMethod, this sub-hash contains details about the PayPal payment method options.
3477
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Paypal) }
3478
+ attr_accessor :paypal
3479
+ # If this is a `payto` SetupIntent, this sub-hash contains details about the PayTo payment method options.
3480
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Payto) }
3481
+ attr_accessor :payto
3482
+ # If this is a `sepa_debit` SetupIntent, this sub-hash contains details about the SEPA Debit payment method options.
3483
+ sig {
3484
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::SepaDebit)
3485
+ }
3486
+ attr_accessor :sepa_debit
3487
+ # If this is a `us_bank_account` SetupIntent, this sub-hash contains details about the US bank account payment method options.
3488
+ sig {
3489
+ returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount)
3490
+ }
3491
+ attr_accessor :us_bank_account
3492
+ sig {
3493
+ params(acss_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AcssDebit, amazon_pay: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::AmazonPay, bacs_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::BacsDebit, card: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Card, card_present: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::CardPresent, link: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Link, paypal: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Paypal, payto: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::Payto, sepa_debit: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::SepaDebit, us_bank_account: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions::UsBankAccount).void
3494
+ }
3495
+ def initialize(
3496
+ acss_debit: nil,
3497
+ amazon_pay: nil,
3498
+ bacs_debit: nil,
3499
+ card: nil,
3500
+ card_present: nil,
3501
+ link: nil,
3502
+ paypal: nil,
3503
+ payto: nil,
3504
+ sepa_debit: nil,
3505
+ us_bank_account: nil
3506
+ ); end
3507
+ end
3508
+ # ID of the ConfirmationToken used to confirm this SetupIntent.
3509
+ #
3510
+ # 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.
3511
+ sig { returns(String) }
3512
+ attr_accessor :confirmation_token
3513
+ # Specifies which fields in the response should be expanded.
3514
+ sig { returns(T::Array[String]) }
3515
+ attr_accessor :expand
3516
+ # Attribute for param field mandate_data
3517
+ sig { returns(T.nilable(::Stripe::SetupIntentService::ConfirmParams::MandateData)) }
3518
+ attr_accessor :mandate_data
3519
+ # ID of the payment method (a PaymentMethod, Card, or saved Source object) to attach to this SetupIntent.
3520
+ sig { returns(String) }
3521
+ attr_accessor :payment_method
3522
+ # 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)
3523
+ # value in the SetupIntent.
3524
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData) }
3525
+ attr_accessor :payment_method_data
3526
+ # Payment method-specific configuration for this SetupIntent.
3527
+ sig { returns(::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions) }
3528
+ attr_accessor :payment_method_options
3529
+ # The URL to redirect your customer back to after they authenticate on the payment method's app or site.
3530
+ # If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme.
3531
+ # This parameter is only used for cards and other redirect-based payment methods.
3532
+ sig { returns(String) }
3533
+ attr_accessor :return_url
3534
+ # Set to `true` when confirming server-side and using Stripe.js, iOS, or Android client-side SDKs to handle the next actions.
3535
+ sig { returns(T::Boolean) }
3536
+ attr_accessor :use_stripe_sdk
3537
+ sig {
3538
+ params(confirmation_token: String, expand: T::Array[String], mandate_data: T.nilable(::Stripe::SetupIntentService::ConfirmParams::MandateData), payment_method: String, payment_method_data: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodData, payment_method_options: ::Stripe::SetupIntentService::ConfirmParams::PaymentMethodOptions, return_url: String, use_stripe_sdk: T::Boolean).void
3539
+ }
3540
+ def initialize(
3541
+ confirmation_token: nil,
3542
+ expand: nil,
3543
+ mandate_data: nil,
3544
+ payment_method: nil,
3545
+ payment_method_data: nil,
3546
+ payment_method_options: nil,
3547
+ return_url: nil,
3548
+ use_stripe_sdk: nil
3549
+ ); end
3550
+ end
3551
+ class VerifyMicrodepositsParams < Stripe::RequestParams
3552
+ # Two positive integers, in *cents*, equal to the values of the microdeposits sent to the bank account.
3553
+ sig { returns(T::Array[Integer]) }
3554
+ attr_accessor :amounts
3555
+ # A six-character code starting with SM present in the microdeposit sent to the bank account.
3556
+ sig { returns(String) }
3557
+ attr_accessor :descriptor_code
3558
+ # Specifies which fields in the response should be expanded.
3559
+ sig { returns(T::Array[String]) }
3560
+ attr_accessor :expand
3561
+ sig {
3562
+ params(amounts: T::Array[Integer], descriptor_code: String, expand: T::Array[String]).void
3563
+ }
3564
+ def initialize(amounts: nil, descriptor_code: nil, expand: nil); end
3565
+ end
3566
+ # You can cancel a SetupIntent object when it's in one of these statuses: requires_payment_method, requires_confirmation, or requires_action.
3567
+ #
3568
+ # 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.
3569
+ sig {
3570
+ params(intent: String, params: T.any(::Stripe::SetupIntentService::CancelParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3571
+ }
3572
+ def cancel(intent, params = {}, opts = {}); end
3573
+
3574
+ # Confirm that your customer intends to set up the current or
3575
+ # provided payment method. For example, you would confirm a SetupIntent
3576
+ # when a customer hits the “Save” button on a payment method management
3577
+ # page on your website.
3578
+ #
3579
+ # If the selected payment method does not require any additional
3580
+ # steps from the customer, the SetupIntent will transition to the
3581
+ # succeeded status.
3582
+ #
3583
+ # Otherwise, it will transition to the requires_action status and
3584
+ # suggest additional actions via next_action. If setup fails,
3585
+ # the SetupIntent will transition to the
3586
+ # requires_payment_method status or the canceled status if the
3587
+ # confirmation limit is reached.
3588
+ sig {
3589
+ params(intent: String, params: T.any(::Stripe::SetupIntentService::ConfirmParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3590
+ }
3591
+ def confirm(intent, params = {}, opts = {}); end
3592
+
3593
+ # Creates a SetupIntent object.
3594
+ #
3595
+ # After you create the SetupIntent, attach a payment method and [confirm](https://stripe.com/docs/api/setup_intents/confirm)
3596
+ # it to collect any required permissions to charge the payment method later.
3597
+ sig {
3598
+ params(params: T.any(::Stripe::SetupIntentService::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3599
+ }
3600
+ def create(params = {}, opts = {}); end
3601
+
3602
+ # Returns a list of SetupIntents.
3603
+ sig {
3604
+ params(params: T.any(::Stripe::SetupIntentService::ListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::ListObject)
3605
+ }
3606
+ def list(params = {}, opts = {}); end
3607
+
3608
+ # Retrieves the details of a SetupIntent that has previously been created.
3609
+ #
3610
+ # Client-side retrieval using a publishable key is allowed when the client_secret is provided in the query string.
3611
+ #
3612
+ # When retrieved with a publishable key, only a subset of properties will be returned. Please refer to the [SetupIntent](https://stripe.com/docs/api#setup_intent_object) object reference for more details.
3613
+ sig {
3614
+ params(intent: String, params: T.any(::Stripe::SetupIntentService::RetrieveParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3615
+ }
3616
+ def retrieve(intent, params = {}, opts = {}); end
3617
+
3618
+ # Updates a SetupIntent object.
3619
+ sig {
3620
+ params(intent: String, params: T.any(::Stripe::SetupIntentService::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3621
+ }
3622
+ def update(intent, params = {}, opts = {}); end
3623
+
3624
+ # Verifies microdeposits on a SetupIntent object.
3625
+ sig {
3626
+ params(intent: String, params: T.any(::Stripe::SetupIntentService::VerifyMicrodepositsParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::SetupIntent)
3627
+ }
3628
+ def verify_microdeposits(intent, params = {}, opts = {}); end
3629
+ end
3630
+ end