stripe 15.3.0.pre.beta.1 → 15.3.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 (600) hide show
  1. checksums.yaml +4 -4
  2. data/API_VERSION +1 -0
  3. data/CHANGELOG.md +683 -1581
  4. data/OPENAPI_VERSION +1 -1
  5. data/README.md +14 -50
  6. data/VERSION +1 -1
  7. data/lib/stripe/api_requestor.rb +0 -28
  8. data/lib/stripe/api_version.rb +2 -1
  9. data/lib/stripe/errors.rb +0 -54
  10. data/lib/stripe/event_types.rb +0 -98
  11. data/lib/stripe/events/v2_core_event_destination_ping_event.rb +1 -1
  12. data/lib/stripe/object_types.rb +0 -50
  13. data/lib/stripe/resources/account.rb +82 -650
  14. data/lib/stripe/resources/account_session.rb +80 -335
  15. data/lib/stripe/resources/billing/credit_balance_summary.rb +0 -2
  16. data/lib/stripe/resources/billing/credit_balance_transaction.rb +0 -4
  17. data/lib/stripe/resources/billing/credit_grant.rb +0 -10
  18. data/lib/stripe/resources/billing_portal/session.rb +2 -8
  19. data/lib/stripe/resources/card.rb +0 -2
  20. data/lib/stripe/resources/cash_balance.rb +0 -2
  21. data/lib/stripe/resources/charge.rb +28 -1553
  22. data/lib/stripe/resources/checkout/session.rb +55 -333
  23. data/lib/stripe/resources/confirmation_token.rb +19 -181
  24. data/lib/stripe/resources/coupon.rb +1 -30
  25. data/lib/stripe/resources/credit_note.rb +9 -15
  26. data/lib/stripe/resources/credit_note_line_item.rb +0 -9
  27. data/lib/stripe/resources/customer.rb +0 -2
  28. data/lib/stripe/resources/customer_balance_transaction.rb +0 -2
  29. data/lib/stripe/resources/customer_cash_balance_transaction.rb +0 -2
  30. data/lib/stripe/resources/customer_session.rb +3 -8
  31. data/lib/stripe/resources/discount.rb +0 -2
  32. data/lib/stripe/resources/event.rb +1 -32
  33. data/lib/stripe/resources/financial_connections/account.rb +1 -22
  34. data/lib/stripe/resources/financial_connections/session.rb +2 -62
  35. data/lib/stripe/resources/identity/verification_session.rb +34 -10
  36. data/lib/stripe/resources/invoice.rb +33 -1062
  37. data/lib/stripe/resources/invoice_item.rb +3 -82
  38. data/lib/stripe/resources/invoice_line_item.rb +1 -55
  39. data/lib/stripe/resources/invoice_payment.rb +53 -2
  40. data/lib/stripe/resources/issuing/cardholder.rb +1 -2
  41. data/lib/stripe/resources/issuing/transaction.rb +0 -6
  42. data/lib/stripe/resources/line_item.rb +0 -37
  43. data/lib/stripe/resources/mandate.rb +3 -24
  44. data/lib/stripe/resources/payment_intent.rb +875 -5512
  45. data/lib/stripe/resources/payment_method.rb +18 -201
  46. data/lib/stripe/resources/payment_method_configuration.rb +0 -295
  47. data/lib/stripe/resources/payout.rb +0 -6
  48. data/lib/stripe/resources/price.rb +0 -30
  49. data/lib/stripe/resources/promotion_code.rb +0 -10
  50. data/lib/stripe/resources/quote.rb +16 -2033
  51. data/lib/stripe/resources/refund.rb +0 -9
  52. data/lib/stripe/resources/setup_attempt.rb +1 -22
  53. data/lib/stripe/resources/setup_intent.rb +294 -581
  54. data/lib/stripe/resources/source.rb +0 -29
  55. data/lib/stripe/resources/subscription.rb +36 -298
  56. data/lib/stripe/resources/subscription_item.rb +3 -84
  57. data/lib/stripe/resources/subscription_schedule.rb +27 -1008
  58. data/lib/stripe/resources/tax/registration.rb +20 -0
  59. data/lib/stripe/resources/tax_id.rb +2 -12
  60. data/lib/stripe/resources/terminal/configuration.rb +1 -0
  61. data/lib/stripe/resources/terminal/reader.rb +10 -18
  62. data/lib/stripe/resources/token.rb +1 -1
  63. data/lib/stripe/resources/transfer.rb +0 -6
  64. data/lib/stripe/resources/treasury/financial_account.rb +8 -23
  65. data/lib/stripe/resources/treasury/financial_account_features.rb +0 -2
  66. data/lib/stripe/resources/treasury/outbound_transfer.rb +0 -37
  67. data/lib/stripe/resources/treasury/received_credit.rb +1 -38
  68. data/lib/stripe/resources/treasury/received_debit.rb +1 -40
  69. data/lib/stripe/resources.rb +0 -104
  70. data/lib/stripe/services/account_service.rb +76 -559
  71. data/lib/stripe/services/account_session_service.rb +49 -274
  72. data/lib/stripe/services/billing/credit_balance_summary_service.rb +1 -4
  73. data/lib/stripe/services/billing/credit_balance_transaction_service.rb +0 -4
  74. data/lib/stripe/services/billing/credit_grant_service.rb +0 -8
  75. data/lib/stripe/services/billing_portal/session_service.rb +1 -5
  76. data/lib/stripe/services/charge_service.rb +0 -1418
  77. data/lib/stripe/services/checkout/session_service.rb +55 -250
  78. data/lib/stripe/services/coupon_service.rb +1 -17
  79. data/lib/stripe/services/credit_note_preview_lines_service.rb +3 -3
  80. data/lib/stripe/services/credit_note_service.rb +6 -10
  81. data/lib/stripe/services/customer_session_service.rb +2 -5
  82. data/lib/stripe/services/financial_connections/account_service.rb +2 -7
  83. data/lib/stripe/services/financial_connections/session_service.rb +2 -34
  84. data/lib/stripe/services/financial_connections_service.rb +1 -2
  85. data/lib/stripe/services/identity/verification_session_service.rb +16 -8
  86. data/lib/stripe/services/invoice_item_service.rb +2 -74
  87. data/lib/stripe/services/invoice_line_item_service.rb +1 -33
  88. data/lib/stripe/services/invoice_payment_service.rb +83 -0
  89. data/lib/stripe/services/invoice_service.rb +33 -1013
  90. data/lib/stripe/services/issuing/cardholder_service.rb +1 -2
  91. data/lib/stripe/services/issuing/transaction_service.rb +0 -4
  92. data/lib/stripe/services/issuing_service.rb +1 -5
  93. data/lib/stripe/services/payment_intent_service.rb +650 -4832
  94. data/lib/stripe/services/payment_method_configuration_service.rb +0 -210
  95. data/lib/stripe/services/payment_method_service.rb +6 -120
  96. data/lib/stripe/services/payout_service.rb +0 -4
  97. data/lib/stripe/services/price_service.rb +0 -19
  98. data/lib/stripe/services/promotion_code_service.rb +0 -8
  99. data/lib/stripe/services/quote_service.rb +13 -1719
  100. data/lib/stripe/services/setup_intent_service.rb +284 -540
  101. data/lib/stripe/services/subscription_item_service.rb +3 -75
  102. data/lib/stripe/services/subscription_schedule_service.rb +19 -911
  103. data/lib/stripe/services/subscription_service.rb +30 -253
  104. data/lib/stripe/services/tax/registration_service.rb +13 -0
  105. data/lib/stripe/services/tax_id_service.rb +2 -8
  106. data/lib/stripe/services/tax_service.rb +1 -3
  107. data/lib/stripe/services/terminal/reader_service.rb +4 -4
  108. data/lib/stripe/services/terminal_service.rb +1 -2
  109. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +6 -98
  110. data/lib/stripe/services/test_helpers/treasury/received_credit_service.rb +1 -25
  111. data/lib/stripe/services/test_helpers/treasury/received_debit_service.rb +1 -25
  112. data/lib/stripe/services/token_service.rb +1 -1
  113. data/lib/stripe/services/transfer_service.rb +0 -4
  114. data/lib/stripe/services/treasury/financial_account_features_service.rb +1 -4
  115. data/lib/stripe/services/treasury/financial_account_service.rb +7 -17
  116. data/lib/stripe/services/treasury/outbound_transfer_service.rb +0 -24
  117. data/lib/stripe/services/v1_services.rb +2 -11
  118. data/lib/stripe/services/v2/billing_service.rb +2 -2
  119. data/lib/stripe/services/v2/core/event_destination_service.rb +16 -16
  120. data/lib/stripe/services/v2/core_service.rb +1 -4
  121. data/lib/stripe/services/v2_services.rb +2 -5
  122. data/lib/stripe/services.rb +1 -53
  123. data/lib/stripe/stripe_configuration.rb +1 -3
  124. data/lib/stripe/stripe_object.rb +1 -1
  125. data/lib/stripe/util.rb +1 -7
  126. data/lib/stripe/version.rb +1 -1
  127. data/lib/stripe/webhook.rb +1 -1
  128. data/lib/stripe.rb +0 -53
  129. data/rbi/stripe/resources/account.rbi +4995 -0
  130. data/rbi/stripe/resources/account_link.rbi +74 -0
  131. data/rbi/stripe/resources/account_session.rbi +1013 -0
  132. data/rbi/stripe/resources/apple_pay_domain.rbi +88 -0
  133. data/rbi/stripe/resources/application.rbi +20 -0
  134. data/rbi/stripe/resources/application_fee.rbi +118 -0
  135. data/rbi/stripe/resources/application_fee_refund.rbi +37 -0
  136. data/rbi/stripe/resources/apps/secret.rbi +195 -0
  137. data/rbi/stripe/resources/balance.rbi +235 -0
  138. data/rbi/stripe/resources/balance_transaction.rbi +147 -0
  139. data/rbi/stripe/resources/bank_account.rbi +127 -0
  140. data/rbi/stripe/resources/billing/alert.rbi +201 -0
  141. data/rbi/stripe/resources/billing/alert_triggered.rbi +28 -0
  142. data/rbi/stripe/resources/billing/credit_balance_summary.rbi +63 -0
  143. data/rbi/stripe/resources/billing/credit_balance_transaction.rbi +147 -0
  144. data/rbi/stripe/resources/billing/credit_grant.rbi +291 -0
  145. data/rbi/stripe/resources/billing/meter.rbi +226 -0
  146. data/rbi/stripe/resources/billing/meter_event.rbi +64 -0
  147. data/rbi/stripe/resources/billing/meter_event_adjustment.rbi +64 -0
  148. data/rbi/stripe/resources/billing/meter_event_summary.rbi +35 -0
  149. data/rbi/stripe/resources/billing_portal/configuration.rbi +645 -0
  150. data/rbi/stripe/resources/billing_portal/session.rbi +345 -0
  151. data/rbi/stripe/resources/capability.rbi +125 -0
  152. data/rbi/stripe/resources/card.rbi +125 -0
  153. data/rbi/stripe/resources/cash_balance.rbi +32 -0
  154. data/rbi/stripe/resources/charge.rbi +2086 -0
  155. data/rbi/stripe/resources/checkout/session.rbi +4060 -0
  156. data/rbi/stripe/resources/climate/order.rbi +245 -0
  157. data/rbi/stripe/resources/climate/product.rbi +75 -0
  158. data/rbi/stripe/resources/climate/supplier.rbi +72 -0
  159. data/rbi/stripe/resources/confirmation_token.rbi +1818 -0
  160. data/rbi/stripe/resources/connect_collection_transfer.rbi +26 -0
  161. data/rbi/stripe/resources/country_spec.rbi +85 -0
  162. data/rbi/stripe/resources/coupon.rbi +250 -0
  163. data/rbi/stripe/resources/credit_note.rbi +752 -0
  164. data/rbi/stripe/resources/credit_note_line_item.rbi +101 -0
  165. data/rbi/stripe/resources/customer.rbi +1005 -0
  166. data/rbi/stripe/resources/customer_balance_transaction.rbi +56 -0
  167. data/rbi/stripe/resources/customer_cash_balance_transaction.rbi +151 -0
  168. data/rbi/stripe/resources/customer_session.rbi +200 -0
  169. data/rbi/stripe/resources/discount.rbi +53 -0
  170. data/rbi/stripe/resources/dispute.rbi +761 -0
  171. data/rbi/stripe/resources/entitlements/active_entitlement.rbi +58 -0
  172. data/rbi/stripe/resources/entitlements/active_entitlement_summary.rbi +23 -0
  173. data/rbi/stripe/resources/entitlements/feature.rbi +117 -0
  174. data/rbi/stripe/resources/ephemeral_key.rbi +44 -0
  175. data/rbi/stripe/resources/event.rbi +149 -0
  176. data/rbi/stripe/resources/exchange_rate.rbi +66 -0
  177. data/rbi/stripe/resources/file.rbi +143 -0
  178. data/rbi/stripe/resources/file_link.rbi +141 -0
  179. data/rbi/stripe/resources/financial_connections/account.rbi +339 -0
  180. data/rbi/stripe/resources/financial_connections/account_owner.rbi +35 -0
  181. data/rbi/stripe/resources/financial_connections/account_ownership.rbi +23 -0
  182. data/rbi/stripe/resources/financial_connections/session.rbi +123 -0
  183. data/rbi/stripe/resources/financial_connections/transaction.rbi +124 -0
  184. data/rbi/stripe/resources/forwarding/request.rbi +216 -0
  185. data/rbi/stripe/resources/funding_instructions.rbi +437 -0
  186. data/rbi/stripe/resources/identity/verification_report.rbi +360 -0
  187. data/rbi/stripe/resources/identity/verification_session.rbi +564 -0
  188. data/rbi/stripe/resources/invoice.rbi +3842 -0
  189. data/rbi/stripe/resources/invoice_item.rbi +470 -0
  190. data/rbi/stripe/resources/invoice_line_item.rbi +432 -0
  191. data/rbi/stripe/resources/invoice_payment.rbi +121 -0
  192. data/rbi/stripe/resources/invoice_rendering_template.rbi +104 -0
  193. data/rbi/stripe/resources/issuing/authorization.rbi +1283 -0
  194. data/rbi/stripe/resources/issuing/card.rbi +741 -0
  195. data/rbi/stripe/resources/issuing/cardholder.rbi +744 -0
  196. data/rbi/stripe/resources/issuing/dispute.rbi +913 -0
  197. data/rbi/stripe/resources/issuing/personalization_design.rbi +338 -0
  198. data/rbi/stripe/resources/issuing/physical_bundle.rbi +79 -0
  199. data/rbi/stripe/resources/issuing/token.rbi +226 -0
  200. data/rbi/stripe/resources/issuing/transaction.rbi +1061 -0
  201. data/rbi/stripe/resources/line_item.rbi +72 -0
  202. data/rbi/stripe/resources/login_link.rbi +19 -0
  203. data/rbi/stripe/resources/mandate.rbi +191 -0
  204. data/rbi/stripe/resources/payment_intent.rbi +9987 -0
  205. data/rbi/stripe/resources/payment_link.rbi +1801 -0
  206. data/rbi/stripe/resources/payment_method.rbi +1770 -0
  207. data/rbi/stripe/resources/payment_method_configuration.rbi +3550 -0
  208. data/rbi/stripe/resources/payment_method_domain.rbi +228 -0
  209. data/rbi/stripe/resources/payout.rbi +300 -0
  210. data/rbi/stripe/resources/person.rbi +401 -0
  211. data/rbi/stripe/resources/plan.rbi +371 -0
  212. data/rbi/stripe/resources/price.rbi +694 -0
  213. data/rbi/stripe/resources/product.rbi +555 -0
  214. data/rbi/stripe/resources/product_feature.rbi +26 -0
  215. data/rbi/stripe/resources/promotion_code.rbi +261 -0
  216. data/rbi/stripe/resources/quote.rbi +1145 -0
  217. data/rbi/stripe/resources/radar/early_fraud_warning.rbi +98 -0
  218. data/rbi/stripe/resources/radar/value_list.rbi +168 -0
  219. data/rbi/stripe/resources/radar/value_list_item.rbi +129 -0
  220. data/rbi/stripe/resources/refund.rbi +523 -0
  221. data/rbi/stripe/resources/reporting/report_run.rbi +191 -0
  222. data/rbi/stripe/resources/reporting/report_type.rbi +57 -0
  223. data/rbi/stripe/resources/reserve_transaction.rbi +23 -0
  224. data/rbi/stripe/resources/reversal.rbi +51 -0
  225. data/rbi/stripe/resources/review.rbi +154 -0
  226. data/rbi/stripe/resources/setup_attempt.rbi +477 -0
  227. data/rbi/stripe/resources/setup_intent.rbi +3978 -0
  228. data/rbi/stripe/resources/shipping_rate.rbi +305 -0
  229. data/rbi/stripe/resources/sigma/scheduled_query_run.rbi +75 -0
  230. data/rbi/stripe/resources/source.rbi +1496 -0
  231. data/rbi/stripe/resources/source_mandate_notification.rbi +77 -0
  232. data/rbi/stripe/resources/source_transaction.rbi +127 -0
  233. data/rbi/stripe/resources/subscription.rbi +2080 -0
  234. data/rbi/stripe/resources/subscription_item.rbi +404 -0
  235. data/rbi/stripe/resources/subscription_schedule.rbi +1645 -0
  236. data/rbi/stripe/resources/tax/calculation.rbi +478 -0
  237. data/rbi/stripe/resources/tax/calculation_line_item.rbi +91 -0
  238. data/rbi/stripe/resources/tax/registration.rbi +2732 -0
  239. data/rbi/stripe/resources/tax/settings.rbi +141 -0
  240. data/rbi/stripe/resources/tax/transaction.rbi +351 -0
  241. data/rbi/stripe/resources/tax/transaction_line_item.rbi +54 -0
  242. data/rbi/stripe/resources/tax_code.rbi +44 -0
  243. data/rbi/stripe/resources/tax_deducted_at_source.rbi +23 -0
  244. data/rbi/stripe/resources/tax_id.rbi +165 -0
  245. data/rbi/stripe/resources/tax_rate.rbi +239 -0
  246. data/rbi/stripe/resources/terminal/configuration.rbi +1387 -0
  247. data/rbi/stripe/resources/terminal/connection_token.rbi +37 -0
  248. data/rbi/stripe/resources/terminal/location.rbi +222 -0
  249. data/rbi/stripe/resources/terminal/reader.rbi +994 -0
  250. data/rbi/stripe/resources/test_helpers/test_clock.rbi +132 -0
  251. data/rbi/stripe/resources/token.rbi +1283 -0
  252. data/rbi/stripe/resources/topup.rbi +222 -0
  253. data/rbi/stripe/resources/transfer.rbi +199 -0
  254. data/rbi/stripe/resources/treasury/credit_reversal.rbi +119 -0
  255. data/rbi/stripe/resources/treasury/debit_reversal.rbi +131 -0
  256. data/rbi/stripe/resources/treasury/financial_account.rbi +869 -0
  257. data/rbi/stripe/resources/treasury/financial_account_features.rbi +260 -0
  258. data/rbi/stripe/resources/treasury/inbound_transfer.rbi +295 -0
  259. data/rbi/stripe/resources/treasury/outbound_payment.rbi +592 -0
  260. data/rbi/stripe/resources/treasury/outbound_transfer.rbi +431 -0
  261. data/rbi/stripe/resources/treasury/received_credit.rbi +302 -0
  262. data/rbi/stripe/resources/treasury/received_debit.rbi +256 -0
  263. data/rbi/stripe/resources/treasury/transaction.rbi +215 -0
  264. data/rbi/stripe/resources/treasury/transaction_entry.rbi +192 -0
  265. data/rbi/stripe/resources/v2/amount.rbi +14 -0
  266. data/rbi/stripe/resources/v2/billing/meter_event.rbi +37 -0
  267. data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +41 -0
  268. data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +31 -0
  269. data/rbi/stripe/resources/v2/event.rbi +48 -0
  270. data/rbi/stripe/resources/v2/event_destination.rbi +91 -0
  271. data/rbi/stripe/resources/webhook_endpoint.rbi +168 -0
  272. data/rbi/stripe/services/account_capability_service.rbi +51 -0
  273. data/{lib/stripe/services/external_account_service.rb → rbi/stripe/services/account_external_account_service.rbi} +122 -135
  274. data/rbi/stripe/services/account_link_service.rbi +58 -0
  275. data/rbi/stripe/services/account_login_link_service.rbi +22 -0
  276. data/rbi/stripe/services/account_person_service.rbi +1011 -0
  277. data/rbi/stripe/services/account_service.rbi +4281 -0
  278. data/rbi/stripe/services/account_session_service.rbi +646 -0
  279. data/rbi/stripe/services/apple_pay_domain_service.rbi +76 -0
  280. data/rbi/stripe/services/application_fee_refund_service.rbi +93 -0
  281. data/rbi/stripe/services/application_fee_service.rbi +78 -0
  282. data/rbi/stripe/services/apps/secret_service.rbi +151 -0
  283. data/rbi/stripe/services/apps_service.rbi +9 -0
  284. data/rbi/stripe/services/balance_service.rbi +21 -0
  285. data/rbi/stripe/services/balance_transaction_service.rbi +93 -0
  286. data/rbi/stripe/services/billing/alert_service.rbi +152 -0
  287. data/rbi/stripe/services/billing/credit_balance_summary_service.rbi +68 -0
  288. data/rbi/stripe/services/billing/credit_balance_transaction_service.rbi +59 -0
  289. data/rbi/stripe/services/billing/credit_grant_service.rbi +211 -0
  290. data/rbi/stripe/services/billing/meter_event_adjustment_service.rbi +42 -0
  291. data/rbi/stripe/services/billing/meter_event_service.rbi +42 -0
  292. data/rbi/stripe/services/billing/meter_event_summary_service.rbi +54 -0
  293. data/rbi/stripe/services/billing/meter_service.rbi +163 -0
  294. data/rbi/stripe/services/billing_portal/configuration_service.rbi +511 -0
  295. data/rbi/stripe/services/billing_portal/session_service.rbi +204 -0
  296. data/rbi/stripe/services/billing_portal_service.rbi +10 -0
  297. data/rbi/stripe/services/billing_service.rbi +15 -0
  298. data/rbi/stripe/services/charge_service.rbi +448 -0
  299. data/rbi/stripe/services/checkout/session_line_item_service.rbi +33 -0
  300. data/rbi/stripe/services/checkout/session_service.rbi +2670 -0
  301. data/rbi/stripe/services/checkout_service.rbi +9 -0
  302. data/rbi/stripe/services/climate/order_service.rbi +142 -0
  303. data/rbi/stripe/services/climate/product_service.rbi +46 -0
  304. data/{lib/stripe/services/financial_connections/institution_service.rb → rbi/stripe/services/climate/supplier_service.rbi} +25 -36
  305. data/rbi/stripe/services/climate_service.rbi +11 -0
  306. data/rbi/stripe/services/confirmation_token_service.rbi +20 -0
  307. data/rbi/stripe/services/country_spec_service.rbi +44 -0
  308. data/rbi/stripe/services/coupon_service.rbi +194 -0
  309. data/{lib/stripe/services/quote_preview_invoice_service.rb → rbi/stripe/services/credit_note_line_item_service.rbi} +16 -20
  310. data/rbi/stripe/services/credit_note_preview_lines_service.rbi +167 -0
  311. data/rbi/stripe/services/credit_note_service.rbi +415 -0
  312. data/rbi/stripe/services/customer_balance_transaction_service.rbi +92 -0
  313. data/rbi/stripe/services/customer_cash_balance_service.rbi +45 -0
  314. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +44 -0
  315. data/rbi/stripe/services/customer_funding_instructions_service.rbi +59 -0
  316. data/rbi/stripe/services/customer_payment_method_service.rbi +57 -0
  317. data/rbi/stripe/services/customer_payment_source_service.rbi +232 -0
  318. data/rbi/stripe/services/customer_service.rbi +647 -0
  319. data/rbi/stripe/services/customer_session_service.rbi +116 -0
  320. data/rbi/stripe/services/customer_tax_id_service.rbi +70 -0
  321. data/rbi/stripe/services/dispute_service.rbi +424 -0
  322. data/rbi/stripe/services/entitlements/active_entitlement_service.rbi +55 -0
  323. data/rbi/stripe/services/entitlements/feature_service.rbi +107 -0
  324. data/rbi/stripe/services/entitlements_service.rbi +10 -0
  325. data/rbi/stripe/services/ephemeral_key_service.rbi +53 -0
  326. data/rbi/stripe/services/event_service.rbi +83 -0
  327. data/rbi/stripe/services/exchange_rate_service.rbi +44 -0
  328. data/rbi/stripe/services/file_link_service.rbi +124 -0
  329. data/rbi/stripe/services/file_service.rbi +116 -0
  330. data/rbi/stripe/services/financial_connections/account_owner_service.rbi +42 -0
  331. data/rbi/stripe/services/financial_connections/account_service.rbi +133 -0
  332. data/rbi/stripe/services/financial_connections/session_service.rbi +88 -0
  333. data/rbi/stripe/services/financial_connections/transaction_service.rbi +92 -0
  334. data/rbi/stripe/services/financial_connections_service.rbi +11 -0
  335. data/rbi/stripe/services/forwarding/request_service.rbi +134 -0
  336. data/rbi/stripe/services/forwarding_service.rbi +9 -0
  337. data/rbi/stripe/services/identity/verification_report_service.rbi +87 -0
  338. data/rbi/stripe/services/identity/verification_session_service.rbi +339 -0
  339. data/rbi/stripe/services/identity_service.rbi +10 -0
  340. data/rbi/stripe/services/invoice_item_service.rbi +366 -0
  341. data/rbi/stripe/services/invoice_line_item_service.rbi +259 -0
  342. data/rbi/stripe/services/invoice_payment_service.rbi +71 -0
  343. data/rbi/stripe/services/invoice_rendering_template_service.rbi +82 -0
  344. data/rbi/stripe/services/invoice_service.rbi +3011 -0
  345. data/rbi/stripe/services/issuing/authorization_service.rbi +146 -0
  346. data/rbi/stripe/services/issuing/card_service.rbi +495 -0
  347. data/rbi/stripe/services/issuing/cardholder_service.rbi +587 -0
  348. data/rbi/stripe/services/issuing/dispute_service.rbi +707 -0
  349. data/rbi/stripe/services/issuing/personalization_design_service.rbi +243 -0
  350. data/rbi/stripe/services/issuing/physical_bundle_service.rbi +59 -0
  351. data/rbi/stripe/services/issuing/token_service.rbi +99 -0
  352. data/rbi/stripe/services/issuing/transaction_service.rbi +105 -0
  353. data/rbi/stripe/services/issuing_service.rbi +16 -0
  354. data/rbi/stripe/services/mandate_service.rbi +20 -0
  355. data/rbi/stripe/services/payment_intent_service.rbi +7989 -0
  356. data/{lib/stripe/services/payment_intent_amount_details_line_item_service.rb → rbi/stripe/services/payment_link_line_item_service.rbi} +16 -20
  357. data/rbi/stripe/services/payment_link_service.rbi +1352 -0
  358. data/rbi/stripe/services/payment_method_configuration_service.rbi +2487 -0
  359. data/rbi/stripe/services/payment_method_domain_service.rbi +112 -0
  360. data/rbi/stripe/services/payment_method_service.rbi +781 -0
  361. data/rbi/stripe/services/payout_service.rbi +205 -0
  362. data/rbi/stripe/services/plan_service.rbi +282 -0
  363. data/rbi/stripe/services/price_service.rbi +546 -0
  364. data/rbi/stripe/services/product_feature_service.rbi +67 -0
  365. data/rbi/stripe/services/product_service.rbi +477 -0
  366. data/rbi/stripe/services/promotion_code_service.rbi +214 -0
  367. data/rbi/stripe/services/quote_computed_upfront_line_items_service.rbi +31 -0
  368. data/{lib/stripe/services/order_line_item_service.rb → rbi/stripe/services/quote_line_item_service.rbi} +16 -20
  369. data/rbi/stripe/services/quote_service.rbi +699 -0
  370. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +85 -0
  371. data/rbi/stripe/services/radar/value_list_item_service.rbi +109 -0
  372. data/rbi/stripe/services/radar/value_list_service.rbi +141 -0
  373. data/rbi/stripe/services/radar_service.rbi +11 -0
  374. data/rbi/stripe/services/refund_service.rbi +185 -0
  375. data/rbi/stripe/services/reporting/report_run_service.rbi +135 -0
  376. data/rbi/stripe/services/reporting/report_type_service.rbi +35 -0
  377. data/rbi/stripe/services/reporting_service.rbi +10 -0
  378. data/rbi/stripe/services/review_service.rbi +84 -0
  379. data/rbi/stripe/services/setup_attempt_service.rbi +65 -0
  380. data/rbi/stripe/services/setup_intent_service.rbi +3709 -0
  381. data/rbi/stripe/services/shipping_rate_service.rbi +241 -0
  382. data/rbi/stripe/services/sigma/scheduled_query_run_service.rbi +46 -0
  383. data/rbi/stripe/services/sigma_service.rbi +9 -0
  384. data/rbi/stripe/services/source_service.rbi +663 -0
  385. data/{lib/stripe/services/quote_line_service.rb → rbi/stripe/services/source_transaction_service.rbi} +16 -20
  386. data/rbi/stripe/services/subscription_item_service.rbi +350 -0
  387. data/rbi/stripe/services/subscription_schedule_service.rbi +1301 -0
  388. data/rbi/stripe/services/subscription_service.rbi +1684 -0
  389. data/{lib/stripe/services/financial_connections/account_inferred_balance_service.rb → rbi/stripe/services/tax/calculation_line_item_service.rbi} +17 -21
  390. data/rbi/stripe/services/tax/calculation_service.rbi +234 -0
  391. data/rbi/stripe/services/tax/registration_service.rbi +1858 -0
  392. data/rbi/stripe/services/tax/settings_service.rbi +93 -0
  393. data/{lib/stripe/services/privacy/redaction_job_validation_error_service.rb → rbi/stripe/services/tax/transaction_line_item_service.rbi} +17 -21
  394. data/rbi/stripe/services/tax/transaction_service.rbi +146 -0
  395. data/rbi/stripe/services/tax_code_service.rbi +44 -0
  396. data/rbi/stripe/services/tax_id_service.rbi +110 -0
  397. data/rbi/stripe/services/tax_rate_service.rbi +185 -0
  398. data/rbi/stripe/services/tax_service.rbi +12 -0
  399. data/rbi/stripe/services/terminal/configuration_service.rbi +1118 -0
  400. data/rbi/stripe/services/terminal/connection_token_service.rbi +25 -0
  401. data/rbi/stripe/services/terminal/location_service.rbi +182 -0
  402. data/rbi/stripe/services/terminal/reader_service.rbi +540 -0
  403. data/rbi/stripe/services/terminal_service.rbi +12 -0
  404. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +746 -0
  405. data/rbi/stripe/services/test_helpers/customer_service.rbi +33 -0
  406. data/rbi/stripe/services/test_helpers/issuing/authorization_service.rbi +848 -0
  407. data/rbi/stripe/services/test_helpers/issuing/card_service.rbi +76 -0
  408. data/rbi/stripe/services/test_helpers/issuing/personalization_design_service.rbi +69 -0
  409. data/rbi/stripe/services/test_helpers/issuing/transaction_service.rbi +711 -0
  410. data/rbi/stripe/services/test_helpers/issuing_service.rbi +14 -0
  411. data/rbi/stripe/services/test_helpers/refund_service.rbi +22 -0
  412. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +93 -0
  413. data/rbi/stripe/services/test_helpers/terminal_service.rbi +11 -0
  414. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +90 -0
  415. data/rbi/stripe/services/test_helpers/treasury/inbound_transfer_service.rbi +64 -0
  416. data/rbi/stripe/services/test_helpers/treasury/outbound_payment_service.rbi +125 -0
  417. data/rbi/stripe/services/test_helpers/treasury/outbound_transfer_service.rbi +125 -0
  418. data/rbi/stripe/services/test_helpers/treasury/received_credit_service.rbi +87 -0
  419. data/rbi/stripe/services/test_helpers/treasury/received_debit_service.rbi +87 -0
  420. data/rbi/stripe/services/test_helpers/treasury_service.rbi +15 -0
  421. data/rbi/stripe/services/test_helpers_service.rbi +15 -0
  422. data/rbi/stripe/services/token_service.rbi +1257 -0
  423. data/rbi/stripe/services/topup_service.rbi +176 -0
  424. data/rbi/stripe/services/transfer_reversal_service.rbi +101 -0
  425. data/rbi/stripe/services/transfer_service.rbi +152 -0
  426. data/rbi/stripe/services/treasury/credit_reversal_service.rbi +84 -0
  427. data/rbi/stripe/services/treasury/debit_reversal_service.rbi +88 -0
  428. data/rbi/stripe/services/treasury/financial_account_features_service.rbi +198 -0
  429. data/rbi/stripe/services/treasury/financial_account_service.rbi +566 -0
  430. data/rbi/stripe/services/treasury/inbound_transfer_service.rbi +117 -0
  431. data/rbi/stripe/services/treasury/outbound_payment_service.rbi +304 -0
  432. data/rbi/stripe/services/treasury/outbound_transfer_service.rbi +157 -0
  433. data/rbi/stripe/services/treasury/received_credit_service.rbi +72 -0
  434. data/rbi/stripe/services/treasury/received_debit_service.rbi +59 -0
  435. data/rbi/stripe/services/treasury/transaction_entry_service.rbi +111 -0
  436. data/rbi/stripe/services/treasury/transaction_service.rbi +122 -0
  437. data/rbi/stripe/services/treasury_service.rbi +18 -0
  438. data/rbi/stripe/services/v1_services.rbi +77 -0
  439. data/rbi/stripe/services/v2/billing/meter_event_adjustment_service.rbi +39 -0
  440. data/rbi/stripe/services/v2/billing/meter_event_service.rbi +42 -0
  441. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +18 -0
  442. data/rbi/stripe/services/v2/billing/meter_event_stream_service.rbi +55 -0
  443. data/rbi/stripe/services/v2/billing_service.rbi +14 -0
  444. data/rbi/stripe/services/v2/core/event_destination_service.rbi +192 -0
  445. data/rbi/stripe/services/v2/core/event_service.rbi +36 -0
  446. data/rbi/stripe/services/v2/core_service.rbi +12 -0
  447. data/rbi/stripe/services/v2_services.rbi +10 -0
  448. data/rbi/stripe/services/webhook_endpoint_service.rbi +129 -0
  449. data/stripe.gemspec +1 -4
  450. metadata +326 -162
  451. data/lib/stripe/events/v2_core_account_closed_event.rb +0 -21
  452. data/lib/stripe/events/v2_core_account_created_event.rb +0 -21
  453. data/lib/stripe/events/v2_core_account_including_configuration_customer_capability_status_updated_event.rb +0 -23
  454. data/lib/stripe/events/v2_core_account_including_configuration_customer_updated_event.rb +0 -21
  455. data/lib/stripe/events/v2_core_account_including_configuration_merchant_capability_status_updated_event.rb +0 -23
  456. data/lib/stripe/events/v2_core_account_including_configuration_merchant_updated_event.rb +0 -21
  457. data/lib/stripe/events/v2_core_account_including_configuration_recipient_capability_status_updated_event.rb +0 -23
  458. data/lib/stripe/events/v2_core_account_including_configuration_recipient_updated_event.rb +0 -21
  459. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +0 -21
  460. data/lib/stripe/events/v2_core_account_including_identity_updated_event.rb +0 -21
  461. data/lib/stripe/events/v2_core_account_including_requirements_updated_event.rb +0 -21
  462. data/lib/stripe/events/v2_core_account_link_completed_event.rb +0 -13
  463. data/lib/stripe/events/v2_core_account_person_created_event.rb +0 -23
  464. data/lib/stripe/events/v2_core_account_person_deleted_event.rb +0 -23
  465. data/lib/stripe/events/v2_core_account_person_updated_event.rb +0 -23
  466. data/lib/stripe/events/v2_core_account_updated_event.rb +0 -21
  467. data/lib/stripe/events/v2_money_management_adjustment_created_event.rb +0 -21
  468. data/lib/stripe/events/v2_money_management_financial_account_created_event.rb +0 -21
  469. data/lib/stripe/events/v2_money_management_financial_account_updated_event.rb +0 -21
  470. data/lib/stripe/events/v2_money_management_financial_address_activated_event.rb +0 -21
  471. data/lib/stripe/events/v2_money_management_financial_address_failed_event.rb +0 -21
  472. data/lib/stripe/events/v2_money_management_inbound_transfer_available_event.rb +0 -23
  473. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_failed_event.rb +0 -21
  474. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_processing_event.rb +0 -21
  475. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_queued_event.rb +0 -21
  476. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_returned_event.rb +0 -21
  477. data/lib/stripe/events/v2_money_management_inbound_transfer_bank_debit_succeeded_event.rb +0 -21
  478. data/lib/stripe/events/v2_money_management_outbound_payment_canceled_event.rb +0 -21
  479. data/lib/stripe/events/v2_money_management_outbound_payment_created_event.rb +0 -21
  480. data/lib/stripe/events/v2_money_management_outbound_payment_failed_event.rb +0 -21
  481. data/lib/stripe/events/v2_money_management_outbound_payment_posted_event.rb +0 -21
  482. data/lib/stripe/events/v2_money_management_outbound_payment_returned_event.rb +0 -21
  483. data/lib/stripe/events/v2_money_management_outbound_payment_updated_event.rb +0 -21
  484. data/lib/stripe/events/v2_money_management_outbound_transfer_canceled_event.rb +0 -21
  485. data/lib/stripe/events/v2_money_management_outbound_transfer_created_event.rb +0 -21
  486. data/lib/stripe/events/v2_money_management_outbound_transfer_failed_event.rb +0 -21
  487. data/lib/stripe/events/v2_money_management_outbound_transfer_posted_event.rb +0 -21
  488. data/lib/stripe/events/v2_money_management_outbound_transfer_returned_event.rb +0 -21
  489. data/lib/stripe/events/v2_money_management_outbound_transfer_updated_event.rb +0 -21
  490. data/lib/stripe/events/v2_money_management_received_credit_available_event.rb +0 -23
  491. data/lib/stripe/events/v2_money_management_received_credit_failed_event.rb +0 -21
  492. data/lib/stripe/events/v2_money_management_received_credit_returned_event.rb +0 -21
  493. data/lib/stripe/events/v2_money_management_received_credit_succeeded_event.rb +0 -21
  494. data/lib/stripe/events/v2_money_management_received_debit_canceled_event.rb +0 -21
  495. data/lib/stripe/events/v2_money_management_received_debit_failed_event.rb +0 -21
  496. data/lib/stripe/events/v2_money_management_received_debit_pending_event.rb +0 -21
  497. data/lib/stripe/events/v2_money_management_received_debit_succeeded_event.rb +0 -21
  498. data/lib/stripe/events/v2_money_management_received_debit_updated_event.rb +0 -21
  499. data/lib/stripe/events/v2_money_management_transaction_created_event.rb +0 -21
  500. data/lib/stripe/events/v2_money_management_transaction_updated_event.rb +0 -21
  501. data/lib/stripe/events/v2_off_session_payment_requires_capture_event.rb +0 -21
  502. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_failed_event.rb +0 -21
  503. data/lib/stripe/events/v2_payments_off_session_payment_authorization_attempt_started_event.rb +0 -21
  504. data/lib/stripe/events/v2_payments_off_session_payment_canceled_event.rb +0 -21
  505. data/lib/stripe/events/v2_payments_off_session_payment_created_event.rb +0 -21
  506. data/lib/stripe/events/v2_payments_off_session_payment_failed_event.rb +0 -21
  507. data/lib/stripe/events/v2_payments_off_session_payment_succeeded_event.rb +0 -21
  508. data/lib/stripe/resources/account_notice.rb +0 -123
  509. data/lib/stripe/resources/balance_settings.rb +0 -105
  510. data/lib/stripe/resources/capital/financing_offer.rb +0 -179
  511. data/lib/stripe/resources/capital/financing_summary.rb +0 -55
  512. data/lib/stripe/resources/capital/financing_transaction.rb +0 -114
  513. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -27
  514. data/lib/stripe/resources/financial_connections/institution.rb +0 -92
  515. data/lib/stripe/resources/fx_quote.rb +0 -184
  516. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -602
  517. data/lib/stripe/resources/issuing/dispute_settlement_detail.rb +0 -82
  518. data/lib/stripe/resources/issuing/fraud_liability_debit.rb +0 -86
  519. data/lib/stripe/resources/issuing/settlement.rb +0 -53
  520. data/lib/stripe/resources/margin.rb +0 -115
  521. data/lib/stripe/resources/order.rb +0 -2806
  522. data/lib/stripe/resources/payment_attempt_record.rb +0 -1086
  523. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +0 -72
  524. data/lib/stripe/resources/payment_record.rb +0 -1615
  525. data/lib/stripe/resources/privacy/redaction_job.rb +0 -298
  526. data/lib/stripe/resources/privacy/redaction_job_validation_error.rb +0 -33
  527. data/lib/stripe/resources/quote_line.rb +0 -274
  528. data/lib/stripe/resources/quote_preview_invoice.rb +0 -663
  529. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -364
  530. data/lib/stripe/resources/tax/association.rb +0 -66
  531. data/lib/stripe/resources/tax/form.rb +0 -211
  532. data/lib/stripe/resources/terminal/reader_collected_data.rb +0 -31
  533. data/lib/stripe/resources/v2/core/account.rb +0 -1746
  534. data/lib/stripe/resources/v2/core/account_link.rb +0 -56
  535. data/lib/stripe/resources/v2/core/person.rb +0 -276
  536. data/lib/stripe/resources/v2/core/vault/gb_bank_account.rb +0 -74
  537. data/lib/stripe/resources/v2/core/vault/us_bank_account.rb +0 -39
  538. data/lib/stripe/resources/v2/financial_address_credit_simulation.rb +0 -20
  539. data/lib/stripe/resources/v2/financial_address_generated_microdeposits.rb +0 -22
  540. data/lib/stripe/resources/v2/money_management/adjustment.rb +0 -51
  541. data/lib/stripe/resources/v2/money_management/financial_account.rb +0 -58
  542. data/lib/stripe/resources/v2/money_management/financial_address.rb +0 -68
  543. data/lib/stripe/resources/v2/money_management/inbound_transfer.rb +0 -94
  544. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +0 -129
  545. data/lib/stripe/resources/v2/money_management/outbound_payment_quote.rb +0 -82
  546. data/lib/stripe/resources/v2/money_management/outbound_setup_intent.rb +0 -45
  547. data/lib/stripe/resources/v2/money_management/outbound_transfer.rb +0 -117
  548. data/lib/stripe/resources/v2/money_management/payout_method.rb +0 -75
  549. data/lib/stripe/resources/v2/money_management/payout_methods_bank_account_spec.rb +0 -49
  550. data/lib/stripe/resources/v2/money_management/received_credit.rb +0 -116
  551. data/lib/stripe/resources/v2/money_management/received_debit.rb +0 -84
  552. data/lib/stripe/resources/v2/money_management/transaction.rb +0 -78
  553. data/lib/stripe/resources/v2/money_management/transaction_entry.rb +0 -68
  554. data/lib/stripe/resources/v2/payments/off_session_payment.rb +0 -74
  555. data/lib/stripe/services/account_notice_service.rb +0 -101
  556. data/lib/stripe/services/balance_settings_service.rb +0 -96
  557. data/lib/stripe/services/capital/financing_offer_service.rb +0 -112
  558. data/lib/stripe/services/capital/financing_summary_service.rb +0 -28
  559. data/lib/stripe/services/capital/financing_transaction_service.rb +0 -79
  560. data/lib/stripe/services/capital_service.rb +0 -15
  561. data/lib/stripe/services/fx_quote_service.rb +0 -123
  562. data/lib/stripe/services/issuing/credit_underwriting_record_service.rb +0 -504
  563. data/lib/stripe/services/issuing/dispute_settlement_detail_service.rb +0 -66
  564. data/lib/stripe/services/issuing/fraud_liability_debit_service.rb +0 -83
  565. data/lib/stripe/services/margin_service.rb +0 -119
  566. data/lib/stripe/services/order_service.rb +0 -2236
  567. data/lib/stripe/services/payment_attempt_record_service.rb +0 -49
  568. data/lib/stripe/services/payment_record_service.rb +0 -542
  569. data/lib/stripe/services/privacy/redaction_job_service.rb +0 -240
  570. data/lib/stripe/services/privacy_service.rb +0 -13
  571. data/lib/stripe/services/quote_preview_subscription_schedule_service.rb +0 -35
  572. data/lib/stripe/services/tax/association_service.rb +0 -31
  573. data/lib/stripe/services/tax/form_service.rb +0 -100
  574. data/lib/stripe/services/terminal/reader_collected_data_service.rb +0 -28
  575. data/lib/stripe/services/v2/core/account_link_service.rb +0 -76
  576. data/lib/stripe/services/v2/core/account_service.rb +0 -4138
  577. data/lib/stripe/services/v2/core/accounts/person_service.rb +0 -1046
  578. data/lib/stripe/services/v2/core/vault/gb_bank_account_service.rb +0 -131
  579. data/lib/stripe/services/v2/core/vault/us_bank_account_service.rb +0 -107
  580. data/lib/stripe/services/v2/core/vault_service.rb +0 -18
  581. data/lib/stripe/services/v2/money_management/adjustment_service.rb +0 -74
  582. data/lib/stripe/services/v2/money_management/financial_account_service.rb +0 -43
  583. data/lib/stripe/services/v2/money_management/financial_address_service.rb +0 -81
  584. data/lib/stripe/services/v2/money_management/inbound_transfer_service.rb +0 -125
  585. data/lib/stripe/services/v2/money_management/outbound_payment_quote_service.rb +0 -95
  586. data/lib/stripe/services/v2/money_management/outbound_payment_service.rb +0 -200
  587. data/lib/stripe/services/v2/money_management/outbound_setup_intent_service.rb +0 -235
  588. data/lib/stripe/services/v2/money_management/outbound_transfer_service.rb +0 -172
  589. data/lib/stripe/services/v2/money_management/payout_method_service.rb +0 -91
  590. data/lib/stripe/services/v2/money_management/payout_methods_bank_account_spec_service.rb +0 -32
  591. data/lib/stripe/services/v2/money_management/received_credit_service.rb +0 -70
  592. data/lib/stripe/services/v2/money_management/received_debit_service.rb +0 -43
  593. data/lib/stripe/services/v2/money_management/transaction_entry_service.rb +0 -69
  594. data/lib/stripe/services/v2/money_management/transaction_service.rb +0 -73
  595. data/lib/stripe/services/v2/money_management_service.rb +0 -31
  596. data/lib/stripe/services/v2/payment_service.rb +0 -15
  597. data/lib/stripe/services/v2/payments/off_session_payment_service.rb +0 -138
  598. data/lib/stripe/services/v2/test_helper_service.rb +0 -15
  599. data/lib/stripe/services/v2/test_helpers/financial_address_service.rb +0 -49
  600. data/rbi/stripe.rbi +0 -191639
@@ -0,0 +1,1770 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ # typed: true
5
+ module Stripe
6
+ # PaymentMethod objects represent your customer's payment instruments.
7
+ # You can use them with [PaymentIntents](https://stripe.com/docs/payments/payment-intents) to collect payments or save them to
8
+ # Customer objects to store instrument details for future payments.
9
+ #
10
+ # Related guides: [Payment Methods](https://stripe.com/docs/payments/payment-methods) and [More Payment Scenarios](https://stripe.com/docs/payments/more-payment-scenarios).
11
+ class PaymentMethod < APIResource
12
+ class AcssDebit < Stripe::StripeObject
13
+ # Name of the bank associated with the bank account.
14
+ sig { returns(T.nilable(String)) }
15
+ attr_reader :bank_name
16
+ # Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
17
+ sig { returns(T.nilable(String)) }
18
+ attr_reader :fingerprint
19
+ # Institution number of the bank account.
20
+ sig { returns(T.nilable(String)) }
21
+ attr_reader :institution_number
22
+ # Last four digits of the bank account number.
23
+ sig { returns(T.nilable(String)) }
24
+ attr_reader :last4
25
+ # Transit number of the bank account.
26
+ sig { returns(T.nilable(String)) }
27
+ attr_reader :transit_number
28
+ end
29
+ class Affirm < Stripe::StripeObject; end
30
+ class AfterpayClearpay < Stripe::StripeObject; end
31
+ class Alipay < Stripe::StripeObject; end
32
+ class Alma < Stripe::StripeObject; end
33
+ class AmazonPay < Stripe::StripeObject; end
34
+ class AuBecsDebit < Stripe::StripeObject
35
+ # Six-digit number identifying bank and branch associated with this bank account.
36
+ sig { returns(T.nilable(String)) }
37
+ attr_reader :bsb_number
38
+ # Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
39
+ sig { returns(T.nilable(String)) }
40
+ attr_reader :fingerprint
41
+ # Last four digits of the bank account number.
42
+ sig { returns(T.nilable(String)) }
43
+ attr_reader :last4
44
+ end
45
+ class BacsDebit < Stripe::StripeObject
46
+ # Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :fingerprint
49
+ # Last four digits of the bank account number.
50
+ sig { returns(T.nilable(String)) }
51
+ attr_reader :last4
52
+ # Sort code of the bank account. (e.g., `10-20-30`)
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :sort_code
55
+ end
56
+ class Bancontact < Stripe::StripeObject; end
57
+ class Billie < Stripe::StripeObject; end
58
+ class BillingDetails < Stripe::StripeObject
59
+ class Address < Stripe::StripeObject
60
+ # City, district, suburb, town, or village.
61
+ sig { returns(T.nilable(String)) }
62
+ attr_reader :city
63
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
64
+ sig { returns(T.nilable(String)) }
65
+ attr_reader :country
66
+ # Address line 1 (e.g., street, PO Box, or company name).
67
+ sig { returns(T.nilable(String)) }
68
+ attr_reader :line1
69
+ # Address line 2 (e.g., apartment, suite, unit, or building).
70
+ sig { returns(T.nilable(String)) }
71
+ attr_reader :line2
72
+ # ZIP or postal code.
73
+ sig { returns(T.nilable(String)) }
74
+ attr_reader :postal_code
75
+ # State, county, province, or region.
76
+ sig { returns(T.nilable(String)) }
77
+ attr_reader :state
78
+ end
79
+ # Billing address.
80
+ sig { returns(T.nilable(Address)) }
81
+ attr_reader :address
82
+ # Email address.
83
+ sig { returns(T.nilable(String)) }
84
+ attr_reader :email
85
+ # Full name.
86
+ sig { returns(T.nilable(String)) }
87
+ attr_reader :name
88
+ # Billing phone number (including extension).
89
+ sig { returns(T.nilable(String)) }
90
+ attr_reader :phone
91
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
92
+ sig { returns(T.nilable(String)) }
93
+ attr_reader :tax_id
94
+ end
95
+ class Blik < Stripe::StripeObject; end
96
+ class Boleto < Stripe::StripeObject
97
+ # Uniquely identifies the customer tax id (CNPJ or CPF)
98
+ sig { returns(String) }
99
+ attr_reader :tax_id
100
+ end
101
+ class Card < Stripe::StripeObject
102
+ class Checks < Stripe::StripeObject
103
+ # If a address line1 was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
104
+ sig { returns(T.nilable(String)) }
105
+ attr_reader :address_line1_check
106
+ # If a address postal code was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
107
+ sig { returns(T.nilable(String)) }
108
+ attr_reader :address_postal_code_check
109
+ # If a CVC was provided, results of the check, one of `pass`, `fail`, `unavailable`, or `unchecked`.
110
+ sig { returns(T.nilable(String)) }
111
+ attr_reader :cvc_check
112
+ end
113
+ class GeneratedFrom < Stripe::StripeObject
114
+ class PaymentMethodDetails < Stripe::StripeObject
115
+ class CardPresent < Stripe::StripeObject
116
+ class Offline < Stripe::StripeObject
117
+ # Time at which the payment was collected while offline
118
+ sig { returns(T.nilable(Integer)) }
119
+ attr_reader :stored_at
120
+ # The method used to process this payment method offline. Only deferred is allowed.
121
+ sig { returns(T.nilable(String)) }
122
+ attr_reader :type
123
+ end
124
+ class Receipt < Stripe::StripeObject
125
+ # The type of account being debited or credited
126
+ sig { returns(String) }
127
+ attr_reader :account_type
128
+ # The Application Cryptogram, a unique value generated by the card to authenticate the transaction with issuers.
129
+ sig { returns(T.nilable(String)) }
130
+ attr_reader :application_cryptogram
131
+ # The Application Identifier (AID) on the card used to determine which networks are eligible to process the transaction. Referenced from EMV tag 9F12, data encoded on the card's chip.
132
+ sig { returns(T.nilable(String)) }
133
+ attr_reader :application_preferred_name
134
+ # Identifier for this transaction.
135
+ sig { returns(T.nilable(String)) }
136
+ attr_reader :authorization_code
137
+ # EMV tag 8A. A code returned by the card issuer.
138
+ sig { returns(T.nilable(String)) }
139
+ attr_reader :authorization_response_code
140
+ # Describes the method used by the cardholder to verify ownership of the card. One of the following: `approval`, `failure`, `none`, `offline_pin`, `offline_pin_and_signature`, `online_pin`, or `signature`.
141
+ sig { returns(T.nilable(String)) }
142
+ attr_reader :cardholder_verification_method
143
+ # Similar to the application_preferred_name, identifying the applications (AIDs) available on the card. Referenced from EMV tag 84.
144
+ sig { returns(T.nilable(String)) }
145
+ attr_reader :dedicated_file_name
146
+ # A 5-byte string that records the checks and validations that occur between the card and the terminal. These checks determine how the terminal processes the transaction and what risk tolerance is acceptable. Referenced from EMV Tag 95.
147
+ sig { returns(T.nilable(String)) }
148
+ attr_reader :terminal_verification_results
149
+ # An indication of which steps were completed during the card read process. Referenced from EMV Tag 9B.
150
+ sig { returns(T.nilable(String)) }
151
+ attr_reader :transaction_status_information
152
+ end
153
+ class Wallet < Stripe::StripeObject
154
+ # The type of mobile wallet, one of `apple_pay`, `google_pay`, `samsung_pay`, or `unknown`.
155
+ sig { returns(String) }
156
+ attr_reader :type
157
+ end
158
+ # The authorized amount
159
+ sig { returns(T.nilable(Integer)) }
160
+ attr_reader :amount_authorized
161
+ # Card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa`, or `unknown`.
162
+ sig { returns(T.nilable(String)) }
163
+ attr_reader :brand
164
+ # The [product code](https://stripe.com/docs/card-product-codes) that identifies the specific program or product associated with a card.
165
+ sig { returns(T.nilable(String)) }
166
+ attr_reader :brand_product
167
+ # When using manual capture, a future timestamp after which the charge will be automatically refunded if uncaptured.
168
+ sig { returns(Integer) }
169
+ attr_reader :capture_before
170
+ # The cardholder name as read from the card, in [ISO 7813](https://en.wikipedia.org/wiki/ISO/IEC_7813) format. May include alphanumeric characters, special characters and first/last name separator (`/`). In some cases, the cardholder name may not be available depending on how the issuer has configured the card. Cardholder name is typically not available on swipe or contactless payments, such as those made with Apple Pay and Google Pay.
171
+ sig { returns(T.nilable(String)) }
172
+ attr_reader :cardholder_name
173
+ # Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
174
+ sig { returns(T.nilable(String)) }
175
+ attr_reader :country
176
+ # A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
177
+ sig { returns(T.nilable(String)) }
178
+ attr_reader :description
179
+ # Authorization response cryptogram.
180
+ sig { returns(T.nilable(String)) }
181
+ attr_reader :emv_auth_data
182
+ # Two-digit number representing the card's expiration month.
183
+ sig { returns(Integer) }
184
+ attr_reader :exp_month
185
+ # Four-digit number representing the card's expiration year.
186
+ sig { returns(Integer) }
187
+ attr_reader :exp_year
188
+ # Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
189
+ #
190
+ # *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
191
+ sig { returns(T.nilable(String)) }
192
+ attr_reader :fingerprint
193
+ # Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
194
+ sig { returns(T.nilable(String)) }
195
+ attr_reader :funding
196
+ # ID of a card PaymentMethod generated from the card_present PaymentMethod that may be attached to a Customer for future transactions. Only present if it was possible to generate a card PaymentMethod.
197
+ sig { returns(T.nilable(String)) }
198
+ attr_reader :generated_card
199
+ # Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
200
+ sig { returns(T.nilable(String)) }
201
+ attr_reader :iin
202
+ # Whether this [PaymentIntent](https://stripe.com/docs/api/payment_intents) is eligible for incremental authorizations. Request support using [request_incremental_authorization_support](https://stripe.com/docs/api/payment_intents/create#create_payment_intent-payment_method_options-card_present-request_incremental_authorization_support).
203
+ sig { returns(T::Boolean) }
204
+ attr_reader :incremental_authorization_supported
205
+ # The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
206
+ sig { returns(T.nilable(String)) }
207
+ attr_reader :issuer
208
+ # The last four digits of the card.
209
+ sig { returns(T.nilable(String)) }
210
+ attr_reader :last4
211
+ # Identifies which network this charge was processed on. Can be `amex`, `cartes_bancaires`, `diners`, `discover`, `eftpos_au`, `interac`, `jcb`, `link`, `mastercard`, `unionpay`, `visa`, or `unknown`.
212
+ sig { returns(T.nilable(String)) }
213
+ attr_reader :network
214
+ # This is used by the financial networks to identify a transaction. Visa calls this the Transaction ID, Mastercard calls this the Trace ID, and American Express calls this the Acquirer Reference Data. This value will be present if it is returned by the financial network in the authorization response, and null otherwise.
215
+ sig { returns(T.nilable(String)) }
216
+ attr_reader :network_transaction_id
217
+ # Details about payments collected offline.
218
+ sig { returns(T.nilable(Offline)) }
219
+ attr_reader :offline
220
+ # Defines whether the authorized amount can be over-captured or not
221
+ sig { returns(T::Boolean) }
222
+ attr_reader :overcapture_supported
223
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
224
+ sig { returns(T.nilable(T::Array[String])) }
225
+ attr_reader :preferred_locales
226
+ # How card details were read in this transaction.
227
+ sig { returns(T.nilable(String)) }
228
+ attr_reader :read_method
229
+ # A collection of fields required to be displayed on receipts. Only required for EMV transactions.
230
+ sig { returns(T.nilable(Receipt)) }
231
+ attr_reader :receipt
232
+ # Attribute for field wallet
233
+ sig { returns(Wallet) }
234
+ attr_reader :wallet
235
+ end
236
+ # Attribute for field card_present
237
+ sig { returns(CardPresent) }
238
+ attr_reader :card_present
239
+ # The type of payment method transaction-specific details from the transaction that generated this `card` payment method. Always `card_present`.
240
+ sig { returns(String) }
241
+ attr_reader :type
242
+ end
243
+ # The charge that created this object.
244
+ sig { returns(T.nilable(String)) }
245
+ attr_reader :charge
246
+ # Transaction-specific details of the payment method used in the payment.
247
+ sig { returns(T.nilable(PaymentMethodDetails)) }
248
+ attr_reader :payment_method_details
249
+ # The ID of the SetupAttempt that generated this PaymentMethod, if any.
250
+ sig { returns(T.nilable(T.any(String, Stripe::SetupAttempt))) }
251
+ attr_reader :setup_attempt
252
+ end
253
+ class Networks < Stripe::StripeObject
254
+ # All networks available for selection via [payment_method_options.card.network](/api/payment_intents/confirm#confirm_payment_intent-payment_method_options-card-network).
255
+ sig { returns(T::Array[String]) }
256
+ attr_reader :available
257
+ # The preferred network for co-branded cards. Can be `cartes_bancaires`, `mastercard`, `visa` or `invalid_preference` if requested network is not valid for the card.
258
+ sig { returns(T.nilable(String)) }
259
+ attr_reader :preferred
260
+ end
261
+ class ThreeDSecureUsage < Stripe::StripeObject
262
+ # Whether 3D Secure is supported on this card.
263
+ sig { returns(T::Boolean) }
264
+ attr_reader :supported
265
+ end
266
+ class Wallet < Stripe::StripeObject
267
+ class AmexExpressCheckout < Stripe::StripeObject; end
268
+ class ApplePay < Stripe::StripeObject; end
269
+ class GooglePay < Stripe::StripeObject; end
270
+ class Link < Stripe::StripeObject; end
271
+ class Masterpass < Stripe::StripeObject
272
+ class BillingAddress < Stripe::StripeObject
273
+ # City, district, suburb, town, or village.
274
+ sig { returns(T.nilable(String)) }
275
+ attr_reader :city
276
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
277
+ sig { returns(T.nilable(String)) }
278
+ attr_reader :country
279
+ # Address line 1 (e.g., street, PO Box, or company name).
280
+ sig { returns(T.nilable(String)) }
281
+ attr_reader :line1
282
+ # Address line 2 (e.g., apartment, suite, unit, or building).
283
+ sig { returns(T.nilable(String)) }
284
+ attr_reader :line2
285
+ # ZIP or postal code.
286
+ sig { returns(T.nilable(String)) }
287
+ attr_reader :postal_code
288
+ # State, county, province, or region.
289
+ sig { returns(T.nilable(String)) }
290
+ attr_reader :state
291
+ end
292
+ class ShippingAddress < Stripe::StripeObject
293
+ # City, district, suburb, town, or village.
294
+ sig { returns(T.nilable(String)) }
295
+ attr_reader :city
296
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
297
+ sig { returns(T.nilable(String)) }
298
+ attr_reader :country
299
+ # Address line 1 (e.g., street, PO Box, or company name).
300
+ sig { returns(T.nilable(String)) }
301
+ attr_reader :line1
302
+ # Address line 2 (e.g., apartment, suite, unit, or building).
303
+ sig { returns(T.nilable(String)) }
304
+ attr_reader :line2
305
+ # ZIP or postal code.
306
+ sig { returns(T.nilable(String)) }
307
+ attr_reader :postal_code
308
+ # State, county, province, or region.
309
+ sig { returns(T.nilable(String)) }
310
+ attr_reader :state
311
+ end
312
+ # Owner's verified billing address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
313
+ sig { returns(T.nilable(BillingAddress)) }
314
+ attr_reader :billing_address
315
+ # Owner's verified email. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
316
+ sig { returns(T.nilable(String)) }
317
+ attr_reader :email
318
+ # Owner's verified full name. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
319
+ sig { returns(T.nilable(String)) }
320
+ attr_reader :name
321
+ # Owner's verified shipping address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
322
+ sig { returns(T.nilable(ShippingAddress)) }
323
+ attr_reader :shipping_address
324
+ end
325
+ class SamsungPay < Stripe::StripeObject; end
326
+ class VisaCheckout < Stripe::StripeObject
327
+ class BillingAddress < Stripe::StripeObject
328
+ # City, district, suburb, town, or village.
329
+ sig { returns(T.nilable(String)) }
330
+ attr_reader :city
331
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
332
+ sig { returns(T.nilable(String)) }
333
+ attr_reader :country
334
+ # Address line 1 (e.g., street, PO Box, or company name).
335
+ sig { returns(T.nilable(String)) }
336
+ attr_reader :line1
337
+ # Address line 2 (e.g., apartment, suite, unit, or building).
338
+ sig { returns(T.nilable(String)) }
339
+ attr_reader :line2
340
+ # ZIP or postal code.
341
+ sig { returns(T.nilable(String)) }
342
+ attr_reader :postal_code
343
+ # State, county, province, or region.
344
+ sig { returns(T.nilable(String)) }
345
+ attr_reader :state
346
+ end
347
+ class ShippingAddress < Stripe::StripeObject
348
+ # City, district, suburb, town, or village.
349
+ sig { returns(T.nilable(String)) }
350
+ attr_reader :city
351
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
352
+ sig { returns(T.nilable(String)) }
353
+ attr_reader :country
354
+ # Address line 1 (e.g., street, PO Box, or company name).
355
+ sig { returns(T.nilable(String)) }
356
+ attr_reader :line1
357
+ # Address line 2 (e.g., apartment, suite, unit, or building).
358
+ sig { returns(T.nilable(String)) }
359
+ attr_reader :line2
360
+ # ZIP or postal code.
361
+ sig { returns(T.nilable(String)) }
362
+ attr_reader :postal_code
363
+ # State, county, province, or region.
364
+ sig { returns(T.nilable(String)) }
365
+ attr_reader :state
366
+ end
367
+ # Owner's verified billing address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
368
+ sig { returns(T.nilable(BillingAddress)) }
369
+ attr_reader :billing_address
370
+ # Owner's verified email. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
371
+ sig { returns(T.nilable(String)) }
372
+ attr_reader :email
373
+ # Owner's verified full name. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
374
+ sig { returns(T.nilable(String)) }
375
+ attr_reader :name
376
+ # Owner's verified shipping address. Values are verified or provided by the wallet directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
377
+ sig { returns(T.nilable(ShippingAddress)) }
378
+ attr_reader :shipping_address
379
+ end
380
+ # Attribute for field amex_express_checkout
381
+ sig { returns(AmexExpressCheckout) }
382
+ attr_reader :amex_express_checkout
383
+ # Attribute for field apple_pay
384
+ sig { returns(ApplePay) }
385
+ attr_reader :apple_pay
386
+ # (For tokenized numbers only.) The last four digits of the device account number.
387
+ sig { returns(T.nilable(String)) }
388
+ attr_reader :dynamic_last4
389
+ # Attribute for field google_pay
390
+ sig { returns(GooglePay) }
391
+ attr_reader :google_pay
392
+ # Attribute for field link
393
+ sig { returns(Link) }
394
+ attr_reader :link
395
+ # Attribute for field masterpass
396
+ sig { returns(Masterpass) }
397
+ attr_reader :masterpass
398
+ # Attribute for field samsung_pay
399
+ sig { returns(SamsungPay) }
400
+ attr_reader :samsung_pay
401
+ # The type of the card wallet, one of `amex_express_checkout`, `apple_pay`, `google_pay`, `masterpass`, `samsung_pay`, `visa_checkout`, or `link`. An additional hash is included on the Wallet subhash with a name matching this value. It contains additional information specific to the card wallet type.
402
+ sig { returns(String) }
403
+ attr_reader :type
404
+ # Attribute for field visa_checkout
405
+ sig { returns(VisaCheckout) }
406
+ attr_reader :visa_checkout
407
+ end
408
+ # Card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa`, or `unknown`.
409
+ sig { returns(String) }
410
+ attr_reader :brand
411
+ # Checks on Card address and CVC if provided.
412
+ sig { returns(T.nilable(Checks)) }
413
+ attr_reader :checks
414
+ # Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
415
+ sig { returns(T.nilable(String)) }
416
+ attr_reader :country
417
+ # A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
418
+ sig { returns(T.nilable(String)) }
419
+ attr_reader :description
420
+ # The brand to use when displaying the card, this accounts for customer's brand choice on dual-branded cards. Can be `american_express`, `cartes_bancaires`, `diners_club`, `discover`, `eftpos_australia`, `interac`, `jcb`, `mastercard`, `union_pay`, `visa`, or `other` and may contain more values in the future.
421
+ sig { returns(T.nilable(String)) }
422
+ attr_reader :display_brand
423
+ # Two-digit number representing the card's expiration month.
424
+ sig { returns(Integer) }
425
+ attr_reader :exp_month
426
+ # Four-digit number representing the card's expiration year.
427
+ sig { returns(Integer) }
428
+ attr_reader :exp_year
429
+ # Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
430
+ #
431
+ # *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
432
+ sig { returns(T.nilable(String)) }
433
+ attr_reader :fingerprint
434
+ # Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
435
+ sig { returns(String) }
436
+ attr_reader :funding
437
+ # Details of the original PaymentMethod that created this object.
438
+ sig { returns(T.nilable(GeneratedFrom)) }
439
+ attr_reader :generated_from
440
+ # Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
441
+ sig { returns(T.nilable(String)) }
442
+ attr_reader :iin
443
+ # The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
444
+ sig { returns(T.nilable(String)) }
445
+ attr_reader :issuer
446
+ # The last four digits of the card.
447
+ sig { returns(String) }
448
+ attr_reader :last4
449
+ # Contains information about card networks that can be used to process the payment.
450
+ sig { returns(T.nilable(Networks)) }
451
+ attr_reader :networks
452
+ # Status of a card based on the card issuer.
453
+ sig { returns(T.nilable(String)) }
454
+ attr_reader :regulated_status
455
+ # Contains details on how this Card may be used for 3D Secure authentication.
456
+ sig { returns(T.nilable(ThreeDSecureUsage)) }
457
+ attr_reader :three_d_secure_usage
458
+ # If this Card is part of a card wallet, this contains the details of the card wallet.
459
+ sig { returns(T.nilable(Wallet)) }
460
+ attr_reader :wallet
461
+ end
462
+ class CardPresent < Stripe::StripeObject
463
+ class Networks < Stripe::StripeObject
464
+ # All networks available for selection via [payment_method_options.card.network](/api/payment_intents/confirm#confirm_payment_intent-payment_method_options-card-network).
465
+ sig { returns(T::Array[String]) }
466
+ attr_reader :available
467
+ # The preferred network for the card.
468
+ sig { returns(T.nilable(String)) }
469
+ attr_reader :preferred
470
+ end
471
+ class Offline < Stripe::StripeObject
472
+ # Time at which the payment was collected while offline
473
+ sig { returns(T.nilable(Integer)) }
474
+ attr_reader :stored_at
475
+ # The method used to process this payment method offline. Only deferred is allowed.
476
+ sig { returns(T.nilable(String)) }
477
+ attr_reader :type
478
+ end
479
+ class Wallet < Stripe::StripeObject
480
+ # The type of mobile wallet, one of `apple_pay`, `google_pay`, `samsung_pay`, or `unknown`.
481
+ sig { returns(String) }
482
+ attr_reader :type
483
+ end
484
+ # Card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa`, or `unknown`.
485
+ sig { returns(T.nilable(String)) }
486
+ attr_reader :brand
487
+ # The [product code](https://stripe.com/docs/card-product-codes) that identifies the specific program or product associated with a card.
488
+ sig { returns(T.nilable(String)) }
489
+ attr_reader :brand_product
490
+ # The cardholder name as read from the card, in [ISO 7813](https://en.wikipedia.org/wiki/ISO/IEC_7813) format. May include alphanumeric characters, special characters and first/last name separator (`/`). In some cases, the cardholder name may not be available depending on how the issuer has configured the card. Cardholder name is typically not available on swipe or contactless payments, such as those made with Apple Pay and Google Pay.
491
+ sig { returns(T.nilable(String)) }
492
+ attr_reader :cardholder_name
493
+ # Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
494
+ sig { returns(T.nilable(String)) }
495
+ attr_reader :country
496
+ # A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
497
+ sig { returns(T.nilable(String)) }
498
+ attr_reader :description
499
+ # Two-digit number representing the card's expiration month.
500
+ sig { returns(Integer) }
501
+ attr_reader :exp_month
502
+ # Four-digit number representing the card's expiration year.
503
+ sig { returns(Integer) }
504
+ attr_reader :exp_year
505
+ # Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
506
+ #
507
+ # *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
508
+ sig { returns(T.nilable(String)) }
509
+ attr_reader :fingerprint
510
+ # Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
511
+ sig { returns(T.nilable(String)) }
512
+ attr_reader :funding
513
+ # Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
514
+ sig { returns(T.nilable(String)) }
515
+ attr_reader :iin
516
+ # The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
517
+ sig { returns(T.nilable(String)) }
518
+ attr_reader :issuer
519
+ # The last four digits of the card.
520
+ sig { returns(T.nilable(String)) }
521
+ attr_reader :last4
522
+ # Contains information about card networks that can be used to process the payment.
523
+ sig { returns(T.nilable(Networks)) }
524
+ attr_reader :networks
525
+ # Details about payment methods collected offline.
526
+ sig { returns(T.nilable(Offline)) }
527
+ attr_reader :offline
528
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
529
+ sig { returns(T.nilable(T::Array[String])) }
530
+ attr_reader :preferred_locales
531
+ # How card details were read in this transaction.
532
+ sig { returns(T.nilable(String)) }
533
+ attr_reader :read_method
534
+ # Attribute for field wallet
535
+ sig { returns(Wallet) }
536
+ attr_reader :wallet
537
+ end
538
+ class Cashapp < Stripe::StripeObject
539
+ # A unique and immutable identifier assigned by Cash App to every buyer.
540
+ sig { returns(T.nilable(String)) }
541
+ attr_reader :buyer_id
542
+ # A public identifier for buyers using Cash App.
543
+ sig { returns(T.nilable(String)) }
544
+ attr_reader :cashtag
545
+ end
546
+ class Crypto < Stripe::StripeObject; end
547
+ class CustomerBalance < Stripe::StripeObject; end
548
+ class Eps < Stripe::StripeObject
549
+ # The customer's bank. Should be one of `arzte_und_apotheker_bank`, `austrian_anadi_bank_ag`, `bank_austria`, `bankhaus_carl_spangler`, `bankhaus_schelhammer_und_schattera_ag`, `bawag_psk_ag`, `bks_bank_ag`, `brull_kallmus_bank_ag`, `btv_vier_lander_bank`, `capital_bank_grawe_gruppe_ag`, `deutsche_bank_ag`, `dolomitenbank`, `easybank_ag`, `erste_bank_und_sparkassen`, `hypo_alpeadriabank_international_ag`, `hypo_noe_lb_fur_niederosterreich_u_wien`, `hypo_oberosterreich_salzburg_steiermark`, `hypo_tirol_bank_ag`, `hypo_vorarlberg_bank_ag`, `hypo_bank_burgenland_aktiengesellschaft`, `marchfelder_bank`, `oberbank_ag`, `raiffeisen_bankengruppe_osterreich`, `schoellerbank_ag`, `sparda_bank_wien`, `volksbank_gruppe`, `volkskreditbank_ag`, or `vr_bank_braunau`.
550
+ sig { returns(T.nilable(String)) }
551
+ attr_reader :bank
552
+ end
553
+ class Fpx < Stripe::StripeObject
554
+ # Account holder type, if provided. Can be one of `individual` or `company`.
555
+ sig { returns(T.nilable(String)) }
556
+ attr_reader :account_holder_type
557
+ # The customer's bank, if provided. Can be one of `affin_bank`, `agrobank`, `alliance_bank`, `ambank`, `bank_islam`, `bank_muamalat`, `bank_rakyat`, `bsn`, `cimb`, `hong_leong_bank`, `hsbc`, `kfh`, `maybank2u`, `ocbc`, `public_bank`, `rhb`, `standard_chartered`, `uob`, `deutsche_bank`, `maybank2e`, `pb_enterprise`, or `bank_of_china`.
558
+ sig { returns(String) }
559
+ attr_reader :bank
560
+ end
561
+ class Giropay < Stripe::StripeObject; end
562
+ class Grabpay < Stripe::StripeObject; end
563
+ class Ideal < Stripe::StripeObject
564
+ # The customer's bank, if provided. Can be one of `abn_amro`, `asn_bank`, `bunq`, `buut`, `handelsbanken`, `ing`, `knab`, `moneyou`, `n26`, `nn`, `rabobank`, `regiobank`, `revolut`, `sns_bank`, `triodos_bank`, `van_lanschot`, or `yoursafe`.
565
+ sig { returns(T.nilable(String)) }
566
+ attr_reader :bank
567
+ # The Bank Identifier Code of the customer's bank, if the bank was provided.
568
+ sig { returns(T.nilable(String)) }
569
+ attr_reader :bic
570
+ end
571
+ class InteracPresent < Stripe::StripeObject
572
+ class Networks < Stripe::StripeObject
573
+ # All networks available for selection via [payment_method_options.card.network](/api/payment_intents/confirm#confirm_payment_intent-payment_method_options-card-network).
574
+ sig { returns(T::Array[String]) }
575
+ attr_reader :available
576
+ # The preferred network for the card.
577
+ sig { returns(T.nilable(String)) }
578
+ attr_reader :preferred
579
+ end
580
+ # Card brand. Can be `interac`, `mastercard` or `visa`.
581
+ sig { returns(T.nilable(String)) }
582
+ attr_reader :brand
583
+ # The cardholder name as read from the card, in [ISO 7813](https://en.wikipedia.org/wiki/ISO/IEC_7813) format. May include alphanumeric characters, special characters and first/last name separator (`/`). In some cases, the cardholder name may not be available depending on how the issuer has configured the card. Cardholder name is typically not available on swipe or contactless payments, such as those made with Apple Pay and Google Pay.
584
+ sig { returns(T.nilable(String)) }
585
+ attr_reader :cardholder_name
586
+ # Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected.
587
+ sig { returns(T.nilable(String)) }
588
+ attr_reader :country
589
+ # A high-level description of the type of cards issued in this range. (For internal use only and not typically available in standard API requests.)
590
+ sig { returns(T.nilable(String)) }
591
+ attr_reader :description
592
+ # Two-digit number representing the card's expiration month.
593
+ sig { returns(Integer) }
594
+ attr_reader :exp_month
595
+ # Four-digit number representing the card's expiration year.
596
+ sig { returns(Integer) }
597
+ attr_reader :exp_year
598
+ # Uniquely identifies this particular card number. You can use this attribute to check whether two customers who’ve signed up with you are using the same card number, for example. For payment methods that tokenize card information (Apple Pay, Google Pay), the tokenized number might be provided instead of the underlying card number.
599
+ #
600
+ # *As of May 1, 2021, card fingerprint in India for Connect changed to allow two fingerprints for the same card---one for India and one for the rest of the world.*
601
+ sig { returns(T.nilable(String)) }
602
+ attr_reader :fingerprint
603
+ # Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`.
604
+ sig { returns(T.nilable(String)) }
605
+ attr_reader :funding
606
+ # Issuer identification number of the card. (For internal use only and not typically available in standard API requests.)
607
+ sig { returns(T.nilable(String)) }
608
+ attr_reader :iin
609
+ # The name of the card's issuing bank. (For internal use only and not typically available in standard API requests.)
610
+ sig { returns(T.nilable(String)) }
611
+ attr_reader :issuer
612
+ # The last four digits of the card.
613
+ sig { returns(T.nilable(String)) }
614
+ attr_reader :last4
615
+ # Contains information about card networks that can be used to process the payment.
616
+ sig { returns(T.nilable(Networks)) }
617
+ attr_reader :networks
618
+ # The languages that the issuing bank recommends using for localizing any customer-facing text, as read from the card. Referenced from EMV tag 5F2D, data encoded on the card's chip.
619
+ sig { returns(T.nilable(T::Array[String])) }
620
+ attr_reader :preferred_locales
621
+ # How card details were read in this transaction.
622
+ sig { returns(T.nilable(String)) }
623
+ attr_reader :read_method
624
+ end
625
+ class KakaoPay < Stripe::StripeObject; end
626
+ class Klarna < Stripe::StripeObject
627
+ class Dob < Stripe::StripeObject
628
+ # The day of birth, between 1 and 31.
629
+ sig { returns(T.nilable(Integer)) }
630
+ attr_reader :day
631
+ # The month of birth, between 1 and 12.
632
+ sig { returns(T.nilable(Integer)) }
633
+ attr_reader :month
634
+ # The four-digit year of birth.
635
+ sig { returns(T.nilable(Integer)) }
636
+ attr_reader :year
637
+ end
638
+ # The customer's date of birth, if provided.
639
+ sig { returns(T.nilable(Dob)) }
640
+ attr_reader :dob
641
+ end
642
+ class Konbini < Stripe::StripeObject; end
643
+ class KrCard < Stripe::StripeObject
644
+ # The local credit or debit card brand.
645
+ sig { returns(T.nilable(String)) }
646
+ attr_reader :brand
647
+ # The last four digits of the card. This may not be present for American Express cards.
648
+ sig { returns(T.nilable(String)) }
649
+ attr_reader :last4
650
+ end
651
+ class Link < Stripe::StripeObject
652
+ # Account owner's email address.
653
+ sig { returns(T.nilable(String)) }
654
+ attr_reader :email
655
+ # [Deprecated] This is a legacy parameter that no longer has any function.
656
+ sig { returns(String) }
657
+ attr_reader :persistent_token
658
+ end
659
+ class Mobilepay < Stripe::StripeObject; end
660
+ class Multibanco < Stripe::StripeObject; end
661
+ class NaverPay < Stripe::StripeObject
662
+ # Uniquely identifies this particular Naver Pay account. You can use this attribute to check whether two Naver Pay accounts are the same.
663
+ sig { returns(T.nilable(String)) }
664
+ attr_reader :buyer_id
665
+ # Whether to fund this transaction with Naver Pay points or a card.
666
+ sig { returns(String) }
667
+ attr_reader :funding
668
+ end
669
+ class NzBankAccount < Stripe::StripeObject
670
+ # The name on the bank account. Only present if the account holder name is different from the name of the authorized signatory collected in the PaymentMethod’s billing details.
671
+ sig { returns(T.nilable(String)) }
672
+ attr_reader :account_holder_name
673
+ # The numeric code for the bank account's bank.
674
+ sig { returns(String) }
675
+ attr_reader :bank_code
676
+ # The name of the bank.
677
+ sig { returns(String) }
678
+ attr_reader :bank_name
679
+ # The numeric code for the bank account's bank branch.
680
+ sig { returns(String) }
681
+ attr_reader :branch_code
682
+ # Last four digits of the bank account number.
683
+ sig { returns(String) }
684
+ attr_reader :last4
685
+ # The suffix of the bank account number.
686
+ sig { returns(T.nilable(String)) }
687
+ attr_reader :suffix
688
+ end
689
+ class Oxxo < Stripe::StripeObject; end
690
+ class P24 < Stripe::StripeObject
691
+ # The customer's bank, if provided.
692
+ sig { returns(T.nilable(String)) }
693
+ attr_reader :bank
694
+ end
695
+ class PayByBank < Stripe::StripeObject; end
696
+ class Payco < Stripe::StripeObject; end
697
+ class Paynow < Stripe::StripeObject; end
698
+ class Paypal < Stripe::StripeObject
699
+ # Two-letter ISO code representing the buyer's country. Values are provided by PayPal directly (if supported) at the time of authorization or settlement. They cannot be set or mutated.
700
+ sig { returns(T.nilable(String)) }
701
+ attr_reader :country
702
+ # Owner's email. Values are provided by PayPal directly
703
+ # (if supported) at the time of authorization or settlement. They cannot be set or mutated.
704
+ sig { returns(T.nilable(String)) }
705
+ attr_reader :payer_email
706
+ # PayPal account PayerID. This identifier uniquely identifies the PayPal customer.
707
+ sig { returns(T.nilable(String)) }
708
+ attr_reader :payer_id
709
+ end
710
+ class Pix < Stripe::StripeObject; end
711
+ class Promptpay < Stripe::StripeObject; end
712
+ class RadarOptions < Stripe::StripeObject
713
+ # 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.
714
+ sig { returns(String) }
715
+ attr_reader :session
716
+ end
717
+ class RevolutPay < Stripe::StripeObject; end
718
+ class SamsungPay < Stripe::StripeObject; end
719
+ class Satispay < Stripe::StripeObject; end
720
+ class SepaDebit < Stripe::StripeObject
721
+ class GeneratedFrom < Stripe::StripeObject
722
+ # The ID of the Charge that generated this PaymentMethod, if any.
723
+ sig { returns(T.nilable(T.any(String, Stripe::Charge))) }
724
+ attr_reader :charge
725
+ # The ID of the SetupAttempt that generated this PaymentMethod, if any.
726
+ sig { returns(T.nilable(T.any(String, Stripe::SetupAttempt))) }
727
+ attr_reader :setup_attempt
728
+ end
729
+ # Bank code of bank associated with the bank account.
730
+ sig { returns(T.nilable(String)) }
731
+ attr_reader :bank_code
732
+ # Branch code of bank associated with the bank account.
733
+ sig { returns(T.nilable(String)) }
734
+ attr_reader :branch_code
735
+ # Two-letter ISO code representing the country the bank account is located in.
736
+ sig { returns(T.nilable(String)) }
737
+ attr_reader :country
738
+ # Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
739
+ sig { returns(T.nilable(String)) }
740
+ attr_reader :fingerprint
741
+ # Information about the object that generated this PaymentMethod.
742
+ sig { returns(T.nilable(GeneratedFrom)) }
743
+ attr_reader :generated_from
744
+ # Last four characters of the IBAN.
745
+ sig { returns(T.nilable(String)) }
746
+ attr_reader :last4
747
+ end
748
+ class Sofort < Stripe::StripeObject
749
+ # Two-letter ISO code representing the country the bank account is located in.
750
+ sig { returns(T.nilable(String)) }
751
+ attr_reader :country
752
+ end
753
+ class Swish < Stripe::StripeObject; end
754
+ class Twint < Stripe::StripeObject; end
755
+ class UsBankAccount < Stripe::StripeObject
756
+ class Networks < Stripe::StripeObject
757
+ # The preferred network.
758
+ sig { returns(T.nilable(String)) }
759
+ attr_reader :preferred
760
+ # All supported networks.
761
+ sig { returns(T::Array[String]) }
762
+ attr_reader :supported
763
+ end
764
+ class StatusDetails < Stripe::StripeObject
765
+ class Blocked < Stripe::StripeObject
766
+ # The ACH network code that resulted in this block.
767
+ sig { returns(T.nilable(String)) }
768
+ attr_reader :network_code
769
+ # The reason why this PaymentMethod's fingerprint has been blocked
770
+ sig { returns(T.nilable(String)) }
771
+ attr_reader :reason
772
+ end
773
+ # Attribute for field blocked
774
+ sig { returns(Blocked) }
775
+ attr_reader :blocked
776
+ end
777
+ # Account holder type: individual or company.
778
+ sig { returns(T.nilable(String)) }
779
+ attr_reader :account_holder_type
780
+ # Account type: checkings or savings. Defaults to checking if omitted.
781
+ sig { returns(T.nilable(String)) }
782
+ attr_reader :account_type
783
+ # The name of the bank.
784
+ sig { returns(T.nilable(String)) }
785
+ attr_reader :bank_name
786
+ # The ID of the Financial Connections Account used to create the payment method.
787
+ sig { returns(T.nilable(String)) }
788
+ attr_reader :financial_connections_account
789
+ # Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same.
790
+ sig { returns(T.nilable(String)) }
791
+ attr_reader :fingerprint
792
+ # Last four digits of the bank account number.
793
+ sig { returns(T.nilable(String)) }
794
+ attr_reader :last4
795
+ # Contains information about US bank account networks that can be used.
796
+ sig { returns(T.nilable(Networks)) }
797
+ attr_reader :networks
798
+ # Routing number of the bank account.
799
+ sig { returns(T.nilable(String)) }
800
+ attr_reader :routing_number
801
+ # Contains information about the future reusability of this PaymentMethod.
802
+ sig { returns(T.nilable(StatusDetails)) }
803
+ attr_reader :status_details
804
+ end
805
+ class WechatPay < Stripe::StripeObject; end
806
+ class Zip < Stripe::StripeObject; end
807
+ # Attribute for field acss_debit
808
+ sig { returns(AcssDebit) }
809
+ attr_reader :acss_debit
810
+ # Attribute for field affirm
811
+ sig { returns(Affirm) }
812
+ attr_reader :affirm
813
+ # Attribute for field afterpay_clearpay
814
+ sig { returns(AfterpayClearpay) }
815
+ attr_reader :afterpay_clearpay
816
+ # Attribute for field alipay
817
+ sig { returns(Alipay) }
818
+ attr_reader :alipay
819
+ # 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”.
820
+ sig { returns(String) }
821
+ attr_reader :allow_redisplay
822
+ # Attribute for field alma
823
+ sig { returns(Alma) }
824
+ attr_reader :alma
825
+ # Attribute for field amazon_pay
826
+ sig { returns(AmazonPay) }
827
+ attr_reader :amazon_pay
828
+ # Attribute for field au_becs_debit
829
+ sig { returns(AuBecsDebit) }
830
+ attr_reader :au_becs_debit
831
+ # Attribute for field bacs_debit
832
+ sig { returns(BacsDebit) }
833
+ attr_reader :bacs_debit
834
+ # Attribute for field bancontact
835
+ sig { returns(Bancontact) }
836
+ attr_reader :bancontact
837
+ # Attribute for field billie
838
+ sig { returns(Billie) }
839
+ attr_reader :billie
840
+ # Attribute for field billing_details
841
+ sig { returns(BillingDetails) }
842
+ attr_reader :billing_details
843
+ # Attribute for field blik
844
+ sig { returns(Blik) }
845
+ attr_reader :blik
846
+ # Attribute for field boleto
847
+ sig { returns(Boleto) }
848
+ attr_reader :boleto
849
+ # Attribute for field card
850
+ sig { returns(Card) }
851
+ attr_reader :card
852
+ # Attribute for field card_present
853
+ sig { returns(CardPresent) }
854
+ attr_reader :card_present
855
+ # Attribute for field cashapp
856
+ sig { returns(Cashapp) }
857
+ attr_reader :cashapp
858
+ # Time at which the object was created. Measured in seconds since the Unix epoch.
859
+ sig { returns(Integer) }
860
+ attr_reader :created
861
+ # Attribute for field crypto
862
+ sig { returns(Crypto) }
863
+ attr_reader :crypto
864
+ # The ID of the Customer to which this PaymentMethod is saved. This will not be set when the PaymentMethod has not been saved to a Customer.
865
+ sig { returns(T.nilable(T.any(String, Stripe::Customer))) }
866
+ attr_reader :customer
867
+ # Attribute for field customer_balance
868
+ sig { returns(CustomerBalance) }
869
+ attr_reader :customer_balance
870
+ # Attribute for field eps
871
+ sig { returns(Eps) }
872
+ attr_reader :eps
873
+ # Attribute for field fpx
874
+ sig { returns(Fpx) }
875
+ attr_reader :fpx
876
+ # Attribute for field giropay
877
+ sig { returns(Giropay) }
878
+ attr_reader :giropay
879
+ # Attribute for field grabpay
880
+ sig { returns(Grabpay) }
881
+ attr_reader :grabpay
882
+ # Unique identifier for the object.
883
+ sig { returns(String) }
884
+ attr_reader :id
885
+ # Attribute for field ideal
886
+ sig { returns(Ideal) }
887
+ attr_reader :ideal
888
+ # Attribute for field interac_present
889
+ sig { returns(InteracPresent) }
890
+ attr_reader :interac_present
891
+ # Attribute for field kakao_pay
892
+ sig { returns(KakaoPay) }
893
+ attr_reader :kakao_pay
894
+ # Attribute for field klarna
895
+ sig { returns(Klarna) }
896
+ attr_reader :klarna
897
+ # Attribute for field konbini
898
+ sig { returns(Konbini) }
899
+ attr_reader :konbini
900
+ # Attribute for field kr_card
901
+ sig { returns(KrCard) }
902
+ attr_reader :kr_card
903
+ # Attribute for field link
904
+ sig { returns(Link) }
905
+ attr_reader :link
906
+ # Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
907
+ sig { returns(T::Boolean) }
908
+ attr_reader :livemode
909
+ # 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.
910
+ sig { returns(T.nilable(T::Hash[String, String])) }
911
+ attr_reader :metadata
912
+ # Attribute for field mobilepay
913
+ sig { returns(Mobilepay) }
914
+ attr_reader :mobilepay
915
+ # Attribute for field multibanco
916
+ sig { returns(Multibanco) }
917
+ attr_reader :multibanco
918
+ # Attribute for field naver_pay
919
+ sig { returns(NaverPay) }
920
+ attr_reader :naver_pay
921
+ # Attribute for field nz_bank_account
922
+ sig { returns(NzBankAccount) }
923
+ attr_reader :nz_bank_account
924
+ # String representing the object's type. Objects of the same type share the same value.
925
+ sig { returns(String) }
926
+ attr_reader :object
927
+ # Attribute for field oxxo
928
+ sig { returns(Oxxo) }
929
+ attr_reader :oxxo
930
+ # Attribute for field p24
931
+ sig { returns(P24) }
932
+ attr_reader :p24
933
+ # Attribute for field pay_by_bank
934
+ sig { returns(PayByBank) }
935
+ attr_reader :pay_by_bank
936
+ # Attribute for field payco
937
+ sig { returns(Payco) }
938
+ attr_reader :payco
939
+ # Attribute for field paynow
940
+ sig { returns(Paynow) }
941
+ attr_reader :paynow
942
+ # Attribute for field paypal
943
+ sig { returns(Paypal) }
944
+ attr_reader :paypal
945
+ # Attribute for field pix
946
+ sig { returns(Pix) }
947
+ attr_reader :pix
948
+ # Attribute for field promptpay
949
+ sig { returns(Promptpay) }
950
+ attr_reader :promptpay
951
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
952
+ sig { returns(RadarOptions) }
953
+ attr_reader :radar_options
954
+ # Attribute for field revolut_pay
955
+ sig { returns(RevolutPay) }
956
+ attr_reader :revolut_pay
957
+ # Attribute for field samsung_pay
958
+ sig { returns(SamsungPay) }
959
+ attr_reader :samsung_pay
960
+ # Attribute for field satispay
961
+ sig { returns(Satispay) }
962
+ attr_reader :satispay
963
+ # Attribute for field sepa_debit
964
+ sig { returns(SepaDebit) }
965
+ attr_reader :sepa_debit
966
+ # Attribute for field sofort
967
+ sig { returns(Sofort) }
968
+ attr_reader :sofort
969
+ # Attribute for field swish
970
+ sig { returns(Swish) }
971
+ attr_reader :swish
972
+ # Attribute for field twint
973
+ sig { returns(Twint) }
974
+ attr_reader :twint
975
+ # 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.
976
+ sig { returns(String) }
977
+ attr_reader :type
978
+ # Attribute for field us_bank_account
979
+ sig { returns(UsBankAccount) }
980
+ attr_reader :us_bank_account
981
+ # Attribute for field wechat_pay
982
+ sig { returns(WechatPay) }
983
+ attr_reader :wechat_pay
984
+ # Attribute for field zip
985
+ sig { returns(Zip) }
986
+ attr_reader :zip
987
+ class ListParams < Stripe::RequestParams
988
+ # The ID of the customer whose PaymentMethods will be retrieved.
989
+ sig { returns(T.nilable(String)) }
990
+ attr_accessor :customer
991
+ # 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.
992
+ sig { returns(T.nilable(String)) }
993
+ attr_accessor :ending_before
994
+ # Specifies which fields in the response should be expanded.
995
+ sig { returns(T.nilable(T::Array[String])) }
996
+ attr_accessor :expand
997
+ # A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 10.
998
+ sig { returns(T.nilable(Integer)) }
999
+ attr_accessor :limit
1000
+ # 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.
1001
+ sig { returns(T.nilable(String)) }
1002
+ attr_accessor :starting_after
1003
+ # An optional filter on the list, based on the object `type` field. Without the filter, the list includes all current and future payment method types. If your integration expects only one type of payment method in the response, make sure to provide a type value in the request.
1004
+ sig { returns(T.nilable(String)) }
1005
+ attr_accessor :type
1006
+ sig {
1007
+ params(customer: T.nilable(String), ending_before: T.nilable(String), expand: T.nilable(T::Array[String]), limit: T.nilable(Integer), starting_after: T.nilable(String), type: T.nilable(String)).void
1008
+ }
1009
+ def initialize(
1010
+ customer: nil,
1011
+ ending_before: nil,
1012
+ expand: nil,
1013
+ limit: nil,
1014
+ starting_after: nil,
1015
+ type: nil
1016
+ ); end
1017
+ end
1018
+ class CreateParams < Stripe::RequestParams
1019
+ class AcssDebit < Stripe::RequestParams
1020
+ # Customer's bank account number.
1021
+ sig { returns(String) }
1022
+ attr_accessor :account_number
1023
+ # Institution number of the customer's bank.
1024
+ sig { returns(String) }
1025
+ attr_accessor :institution_number
1026
+ # Transit number of the customer's bank.
1027
+ sig { returns(String) }
1028
+ attr_accessor :transit_number
1029
+ sig {
1030
+ params(account_number: String, institution_number: String, transit_number: String).void
1031
+ }
1032
+ def initialize(account_number: nil, institution_number: nil, transit_number: nil); end
1033
+ end
1034
+ class Affirm < Stripe::RequestParams; end
1035
+ class AfterpayClearpay < Stripe::RequestParams; end
1036
+ class Alipay < Stripe::RequestParams; end
1037
+ class Alma < Stripe::RequestParams; end
1038
+ class AmazonPay < Stripe::RequestParams; end
1039
+ class AuBecsDebit < Stripe::RequestParams
1040
+ # The account number for the bank account.
1041
+ sig { returns(String) }
1042
+ attr_accessor :account_number
1043
+ # Bank-State-Branch number of the bank account.
1044
+ sig { returns(String) }
1045
+ attr_accessor :bsb_number
1046
+ sig { params(account_number: String, bsb_number: String).void }
1047
+ def initialize(account_number: nil, bsb_number: nil); end
1048
+ end
1049
+ class BacsDebit < Stripe::RequestParams
1050
+ # Account number of the bank account that the funds will be debited from.
1051
+ sig { returns(T.nilable(String)) }
1052
+ attr_accessor :account_number
1053
+ # Sort code of the bank account. (e.g., `10-20-30`)
1054
+ sig { returns(T.nilable(String)) }
1055
+ attr_accessor :sort_code
1056
+ sig { params(account_number: T.nilable(String), sort_code: T.nilable(String)).void }
1057
+ def initialize(account_number: nil, sort_code: nil); end
1058
+ end
1059
+ class Bancontact < Stripe::RequestParams; end
1060
+ class Billie < Stripe::RequestParams; end
1061
+ class BillingDetails < Stripe::RequestParams
1062
+ class Address < Stripe::RequestParams
1063
+ # City, district, suburb, town, or village.
1064
+ sig { returns(T.nilable(String)) }
1065
+ attr_accessor :city
1066
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1067
+ sig { returns(T.nilable(String)) }
1068
+ attr_accessor :country
1069
+ # Address line 1 (e.g., street, PO Box, or company name).
1070
+ sig { returns(T.nilable(String)) }
1071
+ attr_accessor :line1
1072
+ # Address line 2 (e.g., apartment, suite, unit, or building).
1073
+ sig { returns(T.nilable(String)) }
1074
+ attr_accessor :line2
1075
+ # ZIP or postal code.
1076
+ sig { returns(T.nilable(String)) }
1077
+ attr_accessor :postal_code
1078
+ # State, county, province, or region.
1079
+ sig { returns(T.nilable(String)) }
1080
+ attr_accessor :state
1081
+ sig {
1082
+ 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
1083
+ }
1084
+ def initialize(
1085
+ city: nil,
1086
+ country: nil,
1087
+ line1: nil,
1088
+ line2: nil,
1089
+ postal_code: nil,
1090
+ state: nil
1091
+ ); end
1092
+ end
1093
+ # Billing address.
1094
+ sig {
1095
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentMethod::CreateParams::BillingDetails::Address))))
1096
+ }
1097
+ attr_accessor :address
1098
+ # Email address.
1099
+ sig { returns(T.nilable(T.nilable(String))) }
1100
+ attr_accessor :email
1101
+ # Full name.
1102
+ sig { returns(T.nilable(T.nilable(String))) }
1103
+ attr_accessor :name
1104
+ # Billing phone number (including extension).
1105
+ sig { returns(T.nilable(T.nilable(String))) }
1106
+ attr_accessor :phone
1107
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
1108
+ sig { returns(T.nilable(String)) }
1109
+ attr_accessor :tax_id
1110
+ sig {
1111
+ params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentMethod::CreateParams::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
1112
+ }
1113
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil); end
1114
+ end
1115
+ class Blik < Stripe::RequestParams; end
1116
+ class Boleto < Stripe::RequestParams
1117
+ # The tax ID of the customer (CPF for individual consumers or CNPJ for businesses consumers)
1118
+ sig { returns(String) }
1119
+ attr_accessor :tax_id
1120
+ sig { params(tax_id: String).void }
1121
+ def initialize(tax_id: nil); end
1122
+ end
1123
+ class Card < Stripe::RequestParams
1124
+ class Networks < Stripe::RequestParams
1125
+ # The customer's preferred card network for co-branded cards. Supports `cartes_bancaires`, `mastercard`, or `visa`. Selection of a network that does not apply to the card will be stored as `invalid_preference` on the card.
1126
+ sig { returns(T.nilable(String)) }
1127
+ attr_accessor :preferred
1128
+ sig { params(preferred: T.nilable(String)).void }
1129
+ def initialize(preferred: nil); end
1130
+ end
1131
+ # The card's CVC. It is highly recommended to always include this value.
1132
+ sig { returns(T.nilable(String)) }
1133
+ attr_accessor :cvc
1134
+ # Two-digit number representing the card's expiration month.
1135
+ sig { returns(T.nilable(Integer)) }
1136
+ attr_accessor :exp_month
1137
+ # Four-digit number representing the card's expiration year.
1138
+ sig { returns(T.nilable(Integer)) }
1139
+ attr_accessor :exp_year
1140
+ # Contains information about card networks used to process the payment.
1141
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Card::Networks)) }
1142
+ attr_accessor :networks
1143
+ # The card number, as a string without any separators.
1144
+ sig { returns(T.nilable(String)) }
1145
+ attr_accessor :number
1146
+ # For backwards compatibility, you can alternatively provide a Stripe token (e.g., for Apple Pay, Amex Express Checkout, or legacy Checkout) into the card hash with format card: {token: "tok_visa"}.
1147
+ sig { returns(T.nilable(String)) }
1148
+ attr_accessor :token
1149
+ sig {
1150
+ params(cvc: T.nilable(String), exp_month: T.nilable(Integer), exp_year: T.nilable(Integer), networks: T.nilable(::Stripe::PaymentMethod::CreateParams::Card::Networks), number: T.nilable(String), token: T.nilable(String)).void
1151
+ }
1152
+ def initialize(
1153
+ cvc: nil,
1154
+ exp_month: nil,
1155
+ exp_year: nil,
1156
+ networks: nil,
1157
+ number: nil,
1158
+ token: nil
1159
+ ); end
1160
+ end
1161
+ class Cashapp < Stripe::RequestParams; end
1162
+ class Crypto < Stripe::RequestParams; end
1163
+ class CustomerBalance < Stripe::RequestParams; end
1164
+ class Eps < Stripe::RequestParams
1165
+ # The customer's bank.
1166
+ sig { returns(T.nilable(String)) }
1167
+ attr_accessor :bank
1168
+ sig { params(bank: T.nilable(String)).void }
1169
+ def initialize(bank: nil); end
1170
+ end
1171
+ class Fpx < Stripe::RequestParams
1172
+ # Account holder type for FPX transaction
1173
+ sig { returns(T.nilable(String)) }
1174
+ attr_accessor :account_holder_type
1175
+ # The customer's bank.
1176
+ sig { returns(String) }
1177
+ attr_accessor :bank
1178
+ sig { params(account_holder_type: T.nilable(String), bank: String).void }
1179
+ def initialize(account_holder_type: nil, bank: nil); end
1180
+ end
1181
+ class Giropay < Stripe::RequestParams; end
1182
+ class Grabpay < Stripe::RequestParams; end
1183
+ class Ideal < Stripe::RequestParams
1184
+ # The customer's bank. Only use this parameter for existing customers. Don't use it for new customers.
1185
+ sig { returns(T.nilable(String)) }
1186
+ attr_accessor :bank
1187
+ sig { params(bank: T.nilable(String)).void }
1188
+ def initialize(bank: nil); end
1189
+ end
1190
+ class InteracPresent < Stripe::RequestParams; end
1191
+ class KakaoPay < Stripe::RequestParams; end
1192
+ class Klarna < Stripe::RequestParams
1193
+ class Dob < Stripe::RequestParams
1194
+ # The day of birth, between 1 and 31.
1195
+ sig { returns(Integer) }
1196
+ attr_accessor :day
1197
+ # The month of birth, between 1 and 12.
1198
+ sig { returns(Integer) }
1199
+ attr_accessor :month
1200
+ # The four-digit year of birth.
1201
+ sig { returns(Integer) }
1202
+ attr_accessor :year
1203
+ sig { params(day: Integer, month: Integer, year: Integer).void }
1204
+ def initialize(day: nil, month: nil, year: nil); end
1205
+ end
1206
+ # Customer's date of birth
1207
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Klarna::Dob)) }
1208
+ attr_accessor :dob
1209
+ sig { params(dob: T.nilable(::Stripe::PaymentMethod::CreateParams::Klarna::Dob)).void }
1210
+ def initialize(dob: nil); end
1211
+ end
1212
+ class Konbini < Stripe::RequestParams; end
1213
+ class KrCard < Stripe::RequestParams; end
1214
+ class Link < Stripe::RequestParams; end
1215
+ class Mobilepay < Stripe::RequestParams; end
1216
+ class Multibanco < Stripe::RequestParams; end
1217
+ class NaverPay < Stripe::RequestParams
1218
+ # Whether to use Naver Pay points or a card to fund this transaction. If not provided, this defaults to `card`.
1219
+ sig { returns(T.nilable(String)) }
1220
+ attr_accessor :funding
1221
+ sig { params(funding: T.nilable(String)).void }
1222
+ def initialize(funding: nil); end
1223
+ end
1224
+ class NzBankAccount < Stripe::RequestParams
1225
+ # 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.
1226
+ sig { returns(T.nilable(String)) }
1227
+ attr_accessor :account_holder_name
1228
+ # The account number for the bank account.
1229
+ sig { returns(String) }
1230
+ attr_accessor :account_number
1231
+ # The numeric code for the bank account's bank.
1232
+ sig { returns(String) }
1233
+ attr_accessor :bank_code
1234
+ # The numeric code for the bank account's bank branch.
1235
+ sig { returns(String) }
1236
+ attr_accessor :branch_code
1237
+ # Attribute for param field reference
1238
+ sig { returns(T.nilable(String)) }
1239
+ attr_accessor :reference
1240
+ # The suffix of the bank account number.
1241
+ sig { returns(String) }
1242
+ attr_accessor :suffix
1243
+ sig {
1244
+ params(account_holder_name: T.nilable(String), account_number: String, bank_code: String, branch_code: String, reference: T.nilable(String), suffix: String).void
1245
+ }
1246
+ def initialize(
1247
+ account_holder_name: nil,
1248
+ account_number: nil,
1249
+ bank_code: nil,
1250
+ branch_code: nil,
1251
+ reference: nil,
1252
+ suffix: nil
1253
+ ); end
1254
+ end
1255
+ class Oxxo < Stripe::RequestParams; end
1256
+ class P24 < Stripe::RequestParams
1257
+ # The customer's bank.
1258
+ sig { returns(T.nilable(String)) }
1259
+ attr_accessor :bank
1260
+ sig { params(bank: T.nilable(String)).void }
1261
+ def initialize(bank: nil); end
1262
+ end
1263
+ class PayByBank < Stripe::RequestParams; end
1264
+ class Payco < Stripe::RequestParams; end
1265
+ class Paynow < Stripe::RequestParams; end
1266
+ class Paypal < Stripe::RequestParams; end
1267
+ class Pix < Stripe::RequestParams; end
1268
+ class Promptpay < Stripe::RequestParams; end
1269
+ class RadarOptions < Stripe::RequestParams
1270
+ # 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.
1271
+ sig { returns(T.nilable(String)) }
1272
+ attr_accessor :session
1273
+ sig { params(session: T.nilable(String)).void }
1274
+ def initialize(session: nil); end
1275
+ end
1276
+ class RevolutPay < Stripe::RequestParams; end
1277
+ class SamsungPay < Stripe::RequestParams; end
1278
+ class Satispay < Stripe::RequestParams; end
1279
+ class SepaDebit < Stripe::RequestParams
1280
+ # IBAN of the bank account.
1281
+ sig { returns(String) }
1282
+ attr_accessor :iban
1283
+ sig { params(iban: String).void }
1284
+ def initialize(iban: nil); end
1285
+ end
1286
+ class Sofort < Stripe::RequestParams
1287
+ # Two-letter ISO code representing the country the bank account is located in.
1288
+ sig { returns(String) }
1289
+ attr_accessor :country
1290
+ sig { params(country: String).void }
1291
+ def initialize(country: nil); end
1292
+ end
1293
+ class Swish < Stripe::RequestParams; end
1294
+ class Twint < Stripe::RequestParams; end
1295
+ class UsBankAccount < Stripe::RequestParams
1296
+ # Account holder type: individual or company.
1297
+ sig { returns(T.nilable(String)) }
1298
+ attr_accessor :account_holder_type
1299
+ # Account number of the bank account.
1300
+ sig { returns(T.nilable(String)) }
1301
+ attr_accessor :account_number
1302
+ # Account type: checkings or savings. Defaults to checking if omitted.
1303
+ sig { returns(T.nilable(String)) }
1304
+ attr_accessor :account_type
1305
+ # The ID of a Financial Connections Account to use as a payment method.
1306
+ sig { returns(T.nilable(String)) }
1307
+ attr_accessor :financial_connections_account
1308
+ # Routing number of the bank account.
1309
+ sig { returns(T.nilable(String)) }
1310
+ attr_accessor :routing_number
1311
+ sig {
1312
+ 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
1313
+ }
1314
+ def initialize(
1315
+ account_holder_type: nil,
1316
+ account_number: nil,
1317
+ account_type: nil,
1318
+ financial_connections_account: nil,
1319
+ routing_number: nil
1320
+ ); end
1321
+ end
1322
+ class WechatPay < Stripe::RequestParams; end
1323
+ class Zip < Stripe::RequestParams; end
1324
+ # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
1325
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::AcssDebit)) }
1326
+ attr_accessor :acss_debit
1327
+ # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
1328
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Affirm)) }
1329
+ attr_accessor :affirm
1330
+ # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
1331
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::AfterpayClearpay)) }
1332
+ attr_accessor :afterpay_clearpay
1333
+ # If this is an `Alipay` PaymentMethod, this hash contains details about the Alipay payment method.
1334
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Alipay)) }
1335
+ attr_accessor :alipay
1336
+ # 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`.
1337
+ sig { returns(T.nilable(String)) }
1338
+ attr_accessor :allow_redisplay
1339
+ # If this is a Alma PaymentMethod, this hash contains details about the Alma payment method.
1340
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Alma)) }
1341
+ attr_accessor :alma
1342
+ # If this is a AmazonPay PaymentMethod, this hash contains details about the AmazonPay payment method.
1343
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::AmazonPay)) }
1344
+ attr_accessor :amazon_pay
1345
+ # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
1346
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::AuBecsDebit)) }
1347
+ attr_accessor :au_becs_debit
1348
+ # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
1349
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::BacsDebit)) }
1350
+ attr_accessor :bacs_debit
1351
+ # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
1352
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Bancontact)) }
1353
+ attr_accessor :bancontact
1354
+ # If this is a `billie` PaymentMethod, this hash contains details about the Billie payment method.
1355
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Billie)) }
1356
+ attr_accessor :billie
1357
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
1358
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::BillingDetails)) }
1359
+ attr_accessor :billing_details
1360
+ # If this is a `blik` PaymentMethod, this hash contains details about the BLIK payment method.
1361
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Blik)) }
1362
+ attr_accessor :blik
1363
+ # If this is a `boleto` PaymentMethod, this hash contains details about the Boleto payment method.
1364
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Boleto)) }
1365
+ attr_accessor :boleto
1366
+ # If this is a `card` PaymentMethod, this hash contains the user's card details. For backwards compatibility, you can alternatively provide a Stripe token (e.g., for Apple Pay, Amex Express Checkout, or legacy Checkout) into the card hash with format `card: {token: "tok_visa"}`. When providing a card number, you must meet the requirements for [PCI compliance](https://stripe.com/docs/security#validating-pci-compliance). We strongly recommend using Stripe.js instead of interacting with this API directly.
1367
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Card)) }
1368
+ attr_accessor :card
1369
+ # If this is a `cashapp` PaymentMethod, this hash contains details about the Cash App Pay payment method.
1370
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Cashapp)) }
1371
+ attr_accessor :cashapp
1372
+ # If this is a Crypto PaymentMethod, this hash contains details about the Crypto payment method.
1373
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Crypto)) }
1374
+ attr_accessor :crypto
1375
+ # The `Customer` to whom the original PaymentMethod is attached.
1376
+ sig { returns(T.nilable(String)) }
1377
+ attr_accessor :customer
1378
+ # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
1379
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::CustomerBalance)) }
1380
+ attr_accessor :customer_balance
1381
+ # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
1382
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Eps)) }
1383
+ attr_accessor :eps
1384
+ # Specifies which fields in the response should be expanded.
1385
+ sig { returns(T.nilable(T::Array[String])) }
1386
+ attr_accessor :expand
1387
+ # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
1388
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Fpx)) }
1389
+ attr_accessor :fpx
1390
+ # If this is a `giropay` PaymentMethod, this hash contains details about the Giropay payment method.
1391
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Giropay)) }
1392
+ attr_accessor :giropay
1393
+ # If this is a `grabpay` PaymentMethod, this hash contains details about the GrabPay payment method.
1394
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Grabpay)) }
1395
+ attr_accessor :grabpay
1396
+ # If this is an `ideal` PaymentMethod, this hash contains details about the iDEAL payment method.
1397
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Ideal)) }
1398
+ attr_accessor :ideal
1399
+ # If this is an `interac_present` PaymentMethod, this hash contains details about the Interac Present payment method.
1400
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::InteracPresent)) }
1401
+ attr_accessor :interac_present
1402
+ # If this is a `kakao_pay` PaymentMethod, this hash contains details about the Kakao Pay payment method.
1403
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::KakaoPay)) }
1404
+ attr_accessor :kakao_pay
1405
+ # If this is a `klarna` PaymentMethod, this hash contains details about the Klarna payment method.
1406
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Klarna)) }
1407
+ attr_accessor :klarna
1408
+ # If this is a `konbini` PaymentMethod, this hash contains details about the Konbini payment method.
1409
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Konbini)) }
1410
+ attr_accessor :konbini
1411
+ # If this is a `kr_card` PaymentMethod, this hash contains details about the Korean Card payment method.
1412
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::KrCard)) }
1413
+ attr_accessor :kr_card
1414
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1415
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Link)) }
1416
+ attr_accessor :link
1417
+ # 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`.
1418
+ sig { returns(T.nilable(T::Hash[String, String])) }
1419
+ attr_accessor :metadata
1420
+ # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
1421
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Mobilepay)) }
1422
+ attr_accessor :mobilepay
1423
+ # If this is a `multibanco` PaymentMethod, this hash contains details about the Multibanco payment method.
1424
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Multibanco)) }
1425
+ attr_accessor :multibanco
1426
+ # If this is a `naver_pay` PaymentMethod, this hash contains details about the Naver Pay payment method.
1427
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::NaverPay)) }
1428
+ attr_accessor :naver_pay
1429
+ # If this is an nz_bank_account PaymentMethod, this hash contains details about the nz_bank_account payment method.
1430
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::NzBankAccount)) }
1431
+ attr_accessor :nz_bank_account
1432
+ # If this is an `oxxo` PaymentMethod, this hash contains details about the OXXO payment method.
1433
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Oxxo)) }
1434
+ attr_accessor :oxxo
1435
+ # If this is a `p24` PaymentMethod, this hash contains details about the P24 payment method.
1436
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::P24)) }
1437
+ attr_accessor :p24
1438
+ # If this is a `pay_by_bank` PaymentMethod, this hash contains details about the PayByBank payment method.
1439
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::PayByBank)) }
1440
+ attr_accessor :pay_by_bank
1441
+ # If this is a `payco` PaymentMethod, this hash contains details about the PAYCO payment method.
1442
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Payco)) }
1443
+ attr_accessor :payco
1444
+ # The PaymentMethod to share.
1445
+ sig { returns(T.nilable(String)) }
1446
+ attr_accessor :payment_method
1447
+ # If this is a `paynow` PaymentMethod, this hash contains details about the PayNow payment method.
1448
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Paynow)) }
1449
+ attr_accessor :paynow
1450
+ # If this is a `paypal` PaymentMethod, this hash contains details about the PayPal payment method.
1451
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Paypal)) }
1452
+ attr_accessor :paypal
1453
+ # If this is a `pix` PaymentMethod, this hash contains details about the Pix payment method.
1454
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Pix)) }
1455
+ attr_accessor :pix
1456
+ # If this is a `promptpay` PaymentMethod, this hash contains details about the PromptPay payment method.
1457
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Promptpay)) }
1458
+ attr_accessor :promptpay
1459
+ # Options to configure Radar. See [Radar Session](https://stripe.com/docs/radar/radar-session) for more information.
1460
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::RadarOptions)) }
1461
+ attr_accessor :radar_options
1462
+ # If this is a `revolut_pay` PaymentMethod, this hash contains details about the Revolut Pay payment method.
1463
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::RevolutPay)) }
1464
+ attr_accessor :revolut_pay
1465
+ # If this is a `samsung_pay` PaymentMethod, this hash contains details about the SamsungPay payment method.
1466
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::SamsungPay)) }
1467
+ attr_accessor :samsung_pay
1468
+ # If this is a `satispay` PaymentMethod, this hash contains details about the Satispay payment method.
1469
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Satispay)) }
1470
+ attr_accessor :satispay
1471
+ # If this is a `sepa_debit` PaymentMethod, this hash contains details about the SEPA debit bank account.
1472
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::SepaDebit)) }
1473
+ attr_accessor :sepa_debit
1474
+ # If this is a `sofort` PaymentMethod, this hash contains details about the SOFORT payment method.
1475
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Sofort)) }
1476
+ attr_accessor :sofort
1477
+ # If this is a `swish` PaymentMethod, this hash contains details about the Swish payment method.
1478
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Swish)) }
1479
+ attr_accessor :swish
1480
+ # If this is a TWINT PaymentMethod, this hash contains details about the TWINT payment method.
1481
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Twint)) }
1482
+ attr_accessor :twint
1483
+ # 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.
1484
+ sig { returns(T.nilable(String)) }
1485
+ attr_accessor :type
1486
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
1487
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::UsBankAccount)) }
1488
+ attr_accessor :us_bank_account
1489
+ # If this is an `wechat_pay` PaymentMethod, this hash contains details about the wechat_pay payment method.
1490
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::WechatPay)) }
1491
+ attr_accessor :wechat_pay
1492
+ # If this is a `zip` PaymentMethod, this hash contains details about the Zip payment method.
1493
+ sig { returns(T.nilable(::Stripe::PaymentMethod::CreateParams::Zip)) }
1494
+ attr_accessor :zip
1495
+ sig {
1496
+ params(acss_debit: T.nilable(::Stripe::PaymentMethod::CreateParams::AcssDebit), affirm: T.nilable(::Stripe::PaymentMethod::CreateParams::Affirm), afterpay_clearpay: T.nilable(::Stripe::PaymentMethod::CreateParams::AfterpayClearpay), alipay: T.nilable(::Stripe::PaymentMethod::CreateParams::Alipay), allow_redisplay: T.nilable(String), alma: T.nilable(::Stripe::PaymentMethod::CreateParams::Alma), amazon_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::AmazonPay), au_becs_debit: T.nilable(::Stripe::PaymentMethod::CreateParams::AuBecsDebit), bacs_debit: T.nilable(::Stripe::PaymentMethod::CreateParams::BacsDebit), bancontact: T.nilable(::Stripe::PaymentMethod::CreateParams::Bancontact), billie: T.nilable(::Stripe::PaymentMethod::CreateParams::Billie), billing_details: T.nilable(::Stripe::PaymentMethod::CreateParams::BillingDetails), blik: T.nilable(::Stripe::PaymentMethod::CreateParams::Blik), boleto: T.nilable(::Stripe::PaymentMethod::CreateParams::Boleto), card: T.nilable(::Stripe::PaymentMethod::CreateParams::Card), cashapp: T.nilable(::Stripe::PaymentMethod::CreateParams::Cashapp), crypto: T.nilable(::Stripe::PaymentMethod::CreateParams::Crypto), customer: T.nilable(String), customer_balance: T.nilable(::Stripe::PaymentMethod::CreateParams::CustomerBalance), eps: T.nilable(::Stripe::PaymentMethod::CreateParams::Eps), expand: T.nilable(T::Array[String]), fpx: T.nilable(::Stripe::PaymentMethod::CreateParams::Fpx), giropay: T.nilable(::Stripe::PaymentMethod::CreateParams::Giropay), grabpay: T.nilable(::Stripe::PaymentMethod::CreateParams::Grabpay), ideal: T.nilable(::Stripe::PaymentMethod::CreateParams::Ideal), interac_present: T.nilable(::Stripe::PaymentMethod::CreateParams::InteracPresent), kakao_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::KakaoPay), klarna: T.nilable(::Stripe::PaymentMethod::CreateParams::Klarna), konbini: T.nilable(::Stripe::PaymentMethod::CreateParams::Konbini), kr_card: T.nilable(::Stripe::PaymentMethod::CreateParams::KrCard), link: T.nilable(::Stripe::PaymentMethod::CreateParams::Link), metadata: T.nilable(T::Hash[String, String]), mobilepay: T.nilable(::Stripe::PaymentMethod::CreateParams::Mobilepay), multibanco: T.nilable(::Stripe::PaymentMethod::CreateParams::Multibanco), naver_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::NaverPay), nz_bank_account: T.nilable(::Stripe::PaymentMethod::CreateParams::NzBankAccount), oxxo: T.nilable(::Stripe::PaymentMethod::CreateParams::Oxxo), p24: T.nilable(::Stripe::PaymentMethod::CreateParams::P24), pay_by_bank: T.nilable(::Stripe::PaymentMethod::CreateParams::PayByBank), payco: T.nilable(::Stripe::PaymentMethod::CreateParams::Payco), payment_method: T.nilable(String), paynow: T.nilable(::Stripe::PaymentMethod::CreateParams::Paynow), paypal: T.nilable(::Stripe::PaymentMethod::CreateParams::Paypal), pix: T.nilable(::Stripe::PaymentMethod::CreateParams::Pix), promptpay: T.nilable(::Stripe::PaymentMethod::CreateParams::Promptpay), radar_options: T.nilable(::Stripe::PaymentMethod::CreateParams::RadarOptions), revolut_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::RevolutPay), samsung_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::SamsungPay), satispay: T.nilable(::Stripe::PaymentMethod::CreateParams::Satispay), sepa_debit: T.nilable(::Stripe::PaymentMethod::CreateParams::SepaDebit), sofort: T.nilable(::Stripe::PaymentMethod::CreateParams::Sofort), swish: T.nilable(::Stripe::PaymentMethod::CreateParams::Swish), twint: T.nilable(::Stripe::PaymentMethod::CreateParams::Twint), type: T.nilable(String), us_bank_account: T.nilable(::Stripe::PaymentMethod::CreateParams::UsBankAccount), wechat_pay: T.nilable(::Stripe::PaymentMethod::CreateParams::WechatPay), zip: T.nilable(::Stripe::PaymentMethod::CreateParams::Zip)).void
1497
+ }
1498
+ def initialize(
1499
+ acss_debit: nil,
1500
+ affirm: nil,
1501
+ afterpay_clearpay: nil,
1502
+ alipay: nil,
1503
+ allow_redisplay: nil,
1504
+ alma: nil,
1505
+ amazon_pay: nil,
1506
+ au_becs_debit: nil,
1507
+ bacs_debit: nil,
1508
+ bancontact: nil,
1509
+ billie: nil,
1510
+ billing_details: nil,
1511
+ blik: nil,
1512
+ boleto: nil,
1513
+ card: nil,
1514
+ cashapp: nil,
1515
+ crypto: nil,
1516
+ customer: nil,
1517
+ customer_balance: nil,
1518
+ eps: nil,
1519
+ expand: nil,
1520
+ fpx: nil,
1521
+ giropay: nil,
1522
+ grabpay: nil,
1523
+ ideal: nil,
1524
+ interac_present: nil,
1525
+ kakao_pay: nil,
1526
+ klarna: nil,
1527
+ konbini: nil,
1528
+ kr_card: nil,
1529
+ link: nil,
1530
+ metadata: nil,
1531
+ mobilepay: nil,
1532
+ multibanco: nil,
1533
+ naver_pay: nil,
1534
+ nz_bank_account: nil,
1535
+ oxxo: nil,
1536
+ p24: nil,
1537
+ pay_by_bank: nil,
1538
+ payco: nil,
1539
+ payment_method: nil,
1540
+ paynow: nil,
1541
+ paypal: nil,
1542
+ pix: nil,
1543
+ promptpay: nil,
1544
+ radar_options: nil,
1545
+ revolut_pay: nil,
1546
+ samsung_pay: nil,
1547
+ satispay: nil,
1548
+ sepa_debit: nil,
1549
+ sofort: nil,
1550
+ swish: nil,
1551
+ twint: nil,
1552
+ type: nil,
1553
+ us_bank_account: nil,
1554
+ wechat_pay: nil,
1555
+ zip: nil
1556
+ ); end
1557
+ end
1558
+ class UpdateParams < Stripe::RequestParams
1559
+ class BillingDetails < Stripe::RequestParams
1560
+ class Address < Stripe::RequestParams
1561
+ # City, district, suburb, town, or village.
1562
+ sig { returns(T.nilable(String)) }
1563
+ attr_accessor :city
1564
+ # Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
1565
+ sig { returns(T.nilable(String)) }
1566
+ attr_accessor :country
1567
+ # Address line 1 (e.g., street, PO Box, or company name).
1568
+ sig { returns(T.nilable(String)) }
1569
+ attr_accessor :line1
1570
+ # Address line 2 (e.g., apartment, suite, unit, or building).
1571
+ sig { returns(T.nilable(String)) }
1572
+ attr_accessor :line2
1573
+ # ZIP or postal code.
1574
+ sig { returns(T.nilable(String)) }
1575
+ attr_accessor :postal_code
1576
+ # State, county, province, or region.
1577
+ sig { returns(T.nilable(String)) }
1578
+ attr_accessor :state
1579
+ sig {
1580
+ 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
1581
+ }
1582
+ def initialize(
1583
+ city: nil,
1584
+ country: nil,
1585
+ line1: nil,
1586
+ line2: nil,
1587
+ postal_code: nil,
1588
+ state: nil
1589
+ ); end
1590
+ end
1591
+ # Billing address.
1592
+ sig {
1593
+ returns(T.nilable(T.nilable(T.any(String, ::Stripe::PaymentMethod::UpdateParams::BillingDetails::Address))))
1594
+ }
1595
+ attr_accessor :address
1596
+ # Email address.
1597
+ sig { returns(T.nilable(T.nilable(String))) }
1598
+ attr_accessor :email
1599
+ # Full name.
1600
+ sig { returns(T.nilable(T.nilable(String))) }
1601
+ attr_accessor :name
1602
+ # Billing phone number (including extension).
1603
+ sig { returns(T.nilable(T.nilable(String))) }
1604
+ attr_accessor :phone
1605
+ # Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers.
1606
+ sig { returns(T.nilable(String)) }
1607
+ attr_accessor :tax_id
1608
+ sig {
1609
+ params(address: T.nilable(T.nilable(T.any(String, ::Stripe::PaymentMethod::UpdateParams::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
1610
+ }
1611
+ def initialize(address: nil, email: nil, name: nil, phone: nil, tax_id: nil); end
1612
+ end
1613
+ class Card < Stripe::RequestParams
1614
+ class Networks < Stripe::RequestParams
1615
+ # The customer's preferred card network for co-branded cards. Supports `cartes_bancaires`, `mastercard`, or `visa`. Selection of a network that does not apply to the card will be stored as `invalid_preference` on the card.
1616
+ sig { returns(T.nilable(T.nilable(T.any(String, String)))) }
1617
+ attr_accessor :preferred
1618
+ sig { params(preferred: T.nilable(T.nilable(T.any(String, String)))).void }
1619
+ def initialize(preferred: nil); end
1620
+ end
1621
+ # Two-digit number representing the card's expiration month.
1622
+ sig { returns(T.nilable(Integer)) }
1623
+ attr_accessor :exp_month
1624
+ # Four-digit number representing the card's expiration year.
1625
+ sig { returns(T.nilable(Integer)) }
1626
+ attr_accessor :exp_year
1627
+ # Contains information about card networks used to process the payment.
1628
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::Card::Networks)) }
1629
+ attr_accessor :networks
1630
+ sig {
1631
+ params(exp_month: T.nilable(Integer), exp_year: T.nilable(Integer), networks: T.nilable(::Stripe::PaymentMethod::UpdateParams::Card::Networks)).void
1632
+ }
1633
+ def initialize(exp_month: nil, exp_year: nil, networks: nil); end
1634
+ end
1635
+ class Link < Stripe::RequestParams; end
1636
+ class PayByBank < Stripe::RequestParams; end
1637
+ class UsBankAccount < Stripe::RequestParams
1638
+ # Bank account holder type.
1639
+ sig { returns(T.nilable(String)) }
1640
+ attr_accessor :account_holder_type
1641
+ # Bank account type.
1642
+ sig { returns(T.nilable(String)) }
1643
+ attr_accessor :account_type
1644
+ sig { params(account_holder_type: T.nilable(String), account_type: T.nilable(String)).void }
1645
+ def initialize(account_holder_type: nil, account_type: nil); end
1646
+ end
1647
+ # 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`.
1648
+ sig { returns(T.nilable(String)) }
1649
+ attr_accessor :allow_redisplay
1650
+ # Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
1651
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::BillingDetails)) }
1652
+ attr_accessor :billing_details
1653
+ # If this is a `card` PaymentMethod, this hash contains the user's card details.
1654
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::Card)) }
1655
+ attr_accessor :card
1656
+ # Specifies which fields in the response should be expanded.
1657
+ sig { returns(T.nilable(T::Array[String])) }
1658
+ attr_accessor :expand
1659
+ # If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1660
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::Link)) }
1661
+ attr_accessor :link
1662
+ # 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`.
1663
+ sig { returns(T.nilable(T.nilable(T.any(String, T::Hash[String, String])))) }
1664
+ attr_accessor :metadata
1665
+ # If this is a `pay_by_bank` PaymentMethod, this hash contains details about the PayByBank payment method.
1666
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::PayByBank)) }
1667
+ attr_accessor :pay_by_bank
1668
+ # If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
1669
+ sig { returns(T.nilable(::Stripe::PaymentMethod::UpdateParams::UsBankAccount)) }
1670
+ attr_accessor :us_bank_account
1671
+ sig {
1672
+ params(allow_redisplay: T.nilable(String), billing_details: T.nilable(::Stripe::PaymentMethod::UpdateParams::BillingDetails), card: T.nilable(::Stripe::PaymentMethod::UpdateParams::Card), expand: T.nilable(T::Array[String]), link: T.nilable(::Stripe::PaymentMethod::UpdateParams::Link), metadata: T.nilable(T.nilable(T.any(String, T::Hash[String, String]))), pay_by_bank: T.nilable(::Stripe::PaymentMethod::UpdateParams::PayByBank), us_bank_account: T.nilable(::Stripe::PaymentMethod::UpdateParams::UsBankAccount)).void
1673
+ }
1674
+ def initialize(
1675
+ allow_redisplay: nil,
1676
+ billing_details: nil,
1677
+ card: nil,
1678
+ expand: nil,
1679
+ link: nil,
1680
+ metadata: nil,
1681
+ pay_by_bank: nil,
1682
+ us_bank_account: nil
1683
+ ); end
1684
+ end
1685
+ class AttachParams < Stripe::RequestParams
1686
+ # The ID of the customer to which to attach the PaymentMethod.
1687
+ sig { returns(String) }
1688
+ attr_accessor :customer
1689
+ # Specifies which fields in the response should be expanded.
1690
+ sig { returns(T.nilable(T::Array[String])) }
1691
+ attr_accessor :expand
1692
+ sig { params(customer: String, expand: T.nilable(T::Array[String])).void }
1693
+ def initialize(customer: nil, expand: nil); end
1694
+ end
1695
+ class DetachParams < Stripe::RequestParams
1696
+ # Specifies which fields in the response should be expanded.
1697
+ sig { returns(T.nilable(T::Array[String])) }
1698
+ attr_accessor :expand
1699
+ sig { params(expand: T.nilable(T::Array[String])).void }
1700
+ def initialize(expand: nil); end
1701
+ end
1702
+ # Attaches a PaymentMethod object to a Customer.
1703
+ #
1704
+ # To attach a new PaymentMethod to a customer for future payments, we recommend you use a [SetupIntent](https://docs.stripe.com/docs/api/setup_intents)
1705
+ # or a PaymentIntent with [setup_future_usage](https://docs.stripe.com/docs/api/payment_intents/create#create_payment_intent-setup_future_usage).
1706
+ # These approaches will perform any necessary steps to set up the PaymentMethod for future payments. Using the /v1/payment_methods/:id/attach
1707
+ # endpoint without first using a SetupIntent or PaymentIntent with setup_future_usage does not optimize the PaymentMethod for
1708
+ # future use, which makes later declines and payment friction more likely.
1709
+ # See [Optimizing cards for future payments](https://docs.stripe.com/docs/payments/payment-intents#future-usage) for more information about setting up
1710
+ # future payments.
1711
+ #
1712
+ # To use this PaymentMethod as the default for invoice or subscription payments,
1713
+ # set [invoice_settings.default_payment_method](https://docs.stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method),
1714
+ # on the Customer to the PaymentMethod's ID.
1715
+ sig {
1716
+ params(params: T.any(::Stripe::PaymentMethod::AttachParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1717
+ }
1718
+ def attach(params = {}, opts = {}); end
1719
+
1720
+ # Attaches a PaymentMethod object to a Customer.
1721
+ #
1722
+ # To attach a new PaymentMethod to a customer for future payments, we recommend you use a [SetupIntent](https://docs.stripe.com/docs/api/setup_intents)
1723
+ # or a PaymentIntent with [setup_future_usage](https://docs.stripe.com/docs/api/payment_intents/create#create_payment_intent-setup_future_usage).
1724
+ # These approaches will perform any necessary steps to set up the PaymentMethod for future payments. Using the /v1/payment_methods/:id/attach
1725
+ # endpoint without first using a SetupIntent or PaymentIntent with setup_future_usage does not optimize the PaymentMethod for
1726
+ # future use, which makes later declines and payment friction more likely.
1727
+ # See [Optimizing cards for future payments](https://docs.stripe.com/docs/payments/payment-intents#future-usage) for more information about setting up
1728
+ # future payments.
1729
+ #
1730
+ # To use this PaymentMethod as the default for invoice or subscription payments,
1731
+ # set [invoice_settings.default_payment_method](https://docs.stripe.com/docs/api/customers/update#update_customer-invoice_settings-default_payment_method),
1732
+ # on the Customer to the PaymentMethod's ID.
1733
+ sig {
1734
+ params(payment_method: String, params: T.any(::Stripe::PaymentMethod::AttachParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1735
+ }
1736
+ def self.attach(payment_method, params = {}, opts = {}); end
1737
+
1738
+ # Creates a PaymentMethod object. Read the [Stripe.js reference](https://docs.stripe.com/docs/stripe-js/reference#stripe-create-payment-method) to learn how to create PaymentMethods via Stripe.js.
1739
+ #
1740
+ # Instead of creating a PaymentMethod directly, we recommend using the [PaymentIntents API to accept a payment immediately or the <a href="/docs/payments/save-and-reuse">SetupIntent](https://docs.stripe.com/docs/payments/accept-a-payment) API to collect payment method details ahead of a future payment.
1741
+ sig {
1742
+ params(params: T.any(::Stripe::PaymentMethod::CreateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1743
+ }
1744
+ def self.create(params = {}, opts = {}); end
1745
+
1746
+ # Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
1747
+ sig {
1748
+ params(params: T.any(::Stripe::PaymentMethod::DetachParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1749
+ }
1750
+ def detach(params = {}, opts = {}); end
1751
+
1752
+ # Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
1753
+ sig {
1754
+ params(payment_method: String, params: T.any(::Stripe::PaymentMethod::DetachParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1755
+ }
1756
+ def self.detach(payment_method, params = {}, opts = {}); end
1757
+
1758
+ # Returns a list of PaymentMethods for Treasury flows. If you want to list the PaymentMethods attached to a Customer for payments, you should use the [List a Customer's PaymentMethods](https://docs.stripe.com/docs/api/payment_methods/customer_list) API instead.
1759
+ sig {
1760
+ params(params: T.any(::Stripe::PaymentMethod::ListParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::ListObject)
1761
+ }
1762
+ def self.list(params = {}, opts = {}); end
1763
+
1764
+ # Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated.
1765
+ sig {
1766
+ params(payment_method: String, params: T.any(::Stripe::PaymentMethod::UpdateParams, T::Hash[T.untyped, T.untyped]), opts: T.untyped).returns(Stripe::PaymentMethod)
1767
+ }
1768
+ def self.update(payment_method, params = {}, opts = {}); end
1769
+ end
1770
+ end