stripe 15.1.0.pre.beta.2 → 15.1.0

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