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