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