stripe 15.1.0.pre.beta.2 → 15.1.0

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