stripe 15.1.0 → 15.2.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 (243) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -6
  3. data/CONTRIBUTING.md +25 -0
  4. data/OPENAPI_VERSION +1 -1
  5. data/README.md +10 -7
  6. data/VERSION +1 -1
  7. data/lib/stripe/api_version.rb +1 -1
  8. data/lib/stripe/resources/account.rb +47 -20
  9. data/lib/stripe/resources/account_session.rb +111 -7
  10. data/lib/stripe/resources/apple_pay_domain.rb +1 -2
  11. data/lib/stripe/resources/balance.rb +42 -0
  12. data/lib/stripe/resources/balance_transaction.rb +2 -0
  13. data/lib/stripe/resources/bank_account.rb +2 -2
  14. data/lib/stripe/resources/billing_portal/session.rb +1 -1
  15. data/lib/stripe/resources/capability.rb +1 -1
  16. data/lib/stripe/resources/charge.rb +13 -5
  17. data/lib/stripe/resources/checkout/session.rb +20 -4
  18. data/lib/stripe/resources/confirmation_token.rb +33 -87
  19. data/lib/stripe/resources/country_spec.rb +1 -1
  20. data/lib/stripe/resources/coupon.rb +1 -2
  21. data/lib/stripe/resources/credit_note.rb +12 -9
  22. data/lib/stripe/resources/customer.rb +2 -4
  23. data/lib/stripe/resources/customer_session.rb +3 -3
  24. data/lib/stripe/resources/dispute.rb +2 -2
  25. data/lib/stripe/resources/event.rb +1 -1
  26. data/lib/stripe/resources/file.rb +1 -1
  27. data/lib/stripe/resources/identity/verification_report.rb +6 -0
  28. data/lib/stripe/resources/identity/verification_session.rb +17 -11
  29. data/lib/stripe/resources/invoice.rb +114 -27
  30. data/lib/stripe/resources/invoice_item.rb +2 -3
  31. data/lib/stripe/resources/invoice_line_item.rb +1 -1
  32. data/lib/stripe/resources/invoice_payment.rb +9 -2
  33. data/lib/stripe/resources/issuing/authorization.rb +8 -8
  34. data/lib/stripe/resources/issuing/card.rb +1 -1
  35. data/lib/stripe/resources/issuing/dispute.rb +3 -3
  36. data/lib/stripe/resources/payment_intent.rb +196 -302
  37. data/lib/stripe/resources/payment_method.rb +46 -103
  38. data/lib/stripe/resources/payment_method_configuration.rb +297 -2
  39. data/lib/stripe/resources/payment_method_domain.rb +2 -2
  40. data/lib/stripe/resources/payout.rb +4 -4
  41. data/lib/stripe/resources/person.rb +2 -2
  42. data/lib/stripe/resources/plan.rb +2 -3
  43. data/lib/stripe/resources/price.rb +1 -1
  44. data/lib/stripe/resources/product.rb +1 -2
  45. data/lib/stripe/resources/radar/value_list.rb +1 -2
  46. data/lib/stripe/resources/radar/value_list_item.rb +1 -2
  47. data/lib/stripe/resources/refund.rb +6 -1
  48. data/lib/stripe/resources/reversal.rb +1 -1
  49. data/lib/stripe/resources/review.rb +1 -1
  50. data/lib/stripe/resources/setup_intent.rb +111 -281
  51. data/lib/stripe/resources/source.rb +1 -1
  52. data/lib/stripe/resources/subscription.rb +89 -29
  53. data/lib/stripe/resources/subscription_item.rb +33 -0
  54. data/lib/stripe/resources/subscription_schedule.rb +119 -4
  55. data/lib/stripe/resources/tax/calculation.rb +4 -0
  56. data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
  57. data/lib/stripe/resources/tax/registration.rb +1 -1
  58. data/lib/stripe/resources/tax_id.rb +1 -2
  59. data/lib/stripe/resources/tax_rate.rb +2 -2
  60. data/lib/stripe/resources/terminal/configuration.rb +1 -2
  61. data/lib/stripe/resources/terminal/location.rb +2 -3
  62. data/lib/stripe/resources/terminal/reader.rb +275 -3
  63. data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
  64. data/lib/stripe/resources/token.rb +2 -2
  65. data/lib/stripe/resources/transfer.rb +1 -1
  66. data/lib/stripe/resources/webhook_endpoint.rb +1 -2
  67. data/lib/stripe/services/account_external_account_service.rb +2 -3
  68. data/lib/stripe/services/account_login_link_service.rb +1 -1
  69. data/lib/stripe/services/account_person_service.rb +1 -2
  70. data/lib/stripe/services/account_service.rb +38 -13
  71. data/lib/stripe/services/account_session_service.rb +75 -7
  72. data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
  73. data/lib/stripe/services/balance_service.rb +1 -1
  74. data/lib/stripe/services/charge_service.rb +4 -4
  75. data/lib/stripe/services/checkout/session_service.rb +11 -3
  76. data/lib/stripe/services/coupon_service.rb +1 -2
  77. data/lib/stripe/services/credit_note_service.rb +7 -8
  78. data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
  79. data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
  80. data/lib/stripe/services/customer_payment_source_service.rb +1 -1
  81. data/lib/stripe/services/customer_service.rb +3 -5
  82. data/lib/stripe/services/customer_tax_id_service.rb +1 -2
  83. data/lib/stripe/services/dispute_service.rb +1 -1
  84. data/lib/stripe/services/file_service.rb +1 -1
  85. data/lib/stripe/services/identity/verification_session_service.rb +5 -5
  86. data/lib/stripe/services/invoice_item_service.rb +1 -2
  87. data/lib/stripe/services/invoice_service.rb +92 -23
  88. data/lib/stripe/services/issuing/authorization_service.rb +4 -4
  89. data/lib/stripe/services/issuing/card_service.rb +1 -1
  90. data/lib/stripe/services/issuing/dispute_service.rb +2 -2
  91. data/lib/stripe/services/payment_intent_service.rb +176 -292
  92. data/lib/stripe/services/payment_method_configuration_service.rb +212 -2
  93. data/lib/stripe/services/payment_method_domain_service.rb +1 -1
  94. data/lib/stripe/services/payment_method_service.rb +43 -100
  95. data/lib/stripe/services/payout_service.rb +2 -2
  96. data/lib/stripe/services/plan_service.rb +2 -3
  97. data/lib/stripe/services/price_service.rb +2 -2
  98. data/lib/stripe/services/product_feature_service.rb +1 -2
  99. data/lib/stripe/services/product_service.rb +2 -3
  100. data/lib/stripe/services/promotion_code_service.rb +1 -1
  101. data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
  102. data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
  103. data/lib/stripe/services/radar/value_list_service.rb +1 -2
  104. data/lib/stripe/services/setup_intent_service.rb +110 -280
  105. data/lib/stripe/services/source_service.rb +1 -1
  106. data/lib/stripe/services/subscription_item_service.rb +26 -0
  107. data/lib/stripe/services/subscription_schedule_service.rb +93 -3
  108. data/lib/stripe/services/subscription_service.rb +77 -26
  109. data/lib/stripe/services/tax/calculation_service.rb +4 -0
  110. data/lib/stripe/services/tax/registration_service.rb +1 -1
  111. data/lib/stripe/services/tax_id_service.rb +1 -2
  112. data/lib/stripe/services/terminal/configuration_service.rb +1 -2
  113. data/lib/stripe/services/terminal/location_service.rb +2 -3
  114. data/lib/stripe/services/terminal/reader_service.rb +106 -2
  115. data/lib/stripe/services/test_helpers/confirmation_token_service.rb +33 -87
  116. data/lib/stripe/services/test_helpers/terminal/reader_service.rb +43 -0
  117. data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
  118. data/lib/stripe/services/token_service.rb +1 -1
  119. data/lib/stripe/services/transfer_service.rb +1 -1
  120. data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
  121. data/lib/stripe/services/v2/core/event_destination_service.rb +4 -10
  122. data/lib/stripe/services/v2/core/event_service.rb +1 -2
  123. data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
  124. data/lib/stripe/version.rb +1 -1
  125. data/rbi/stripe/resources/account.rbi +46 -23
  126. data/rbi/stripe/resources/account_session.rbi +131 -12
  127. data/rbi/stripe/resources/apple_pay_domain.rbi +1 -3
  128. data/rbi/stripe/resources/balance.rbi +55 -0
  129. data/rbi/stripe/resources/balance_transaction.rbi +3 -0
  130. data/rbi/stripe/resources/bank_account.rbi +2 -2
  131. data/rbi/stripe/resources/billing/alert.rbi +2 -2
  132. data/rbi/stripe/resources/billing_portal/session.rbi +1 -1
  133. data/rbi/stripe/resources/capability.rbi +1 -1
  134. data/rbi/stripe/resources/charge.rbi +17 -5
  135. data/rbi/stripe/resources/checkout/session.rbi +22 -6
  136. data/rbi/stripe/resources/confirmation_token.rbi +33 -99
  137. data/rbi/stripe/resources/country_spec.rbi +1 -1
  138. data/rbi/stripe/resources/coupon.rbi +1 -3
  139. data/rbi/stripe/resources/credit_note.rbi +14 -9
  140. data/rbi/stripe/resources/customer.rbi +2 -6
  141. data/rbi/stripe/resources/customer_session.rbi +3 -3
  142. data/rbi/stripe/resources/dispute.rbi +2 -2
  143. data/rbi/stripe/resources/event.rbi +1 -1
  144. data/rbi/stripe/resources/file.rbi +1 -1
  145. data/rbi/stripe/resources/identity/verification_report.rbi +9 -0
  146. data/rbi/stripe/resources/identity/verification_session.rbi +20 -11
  147. data/rbi/stripe/resources/invoice.rbi +109 -33
  148. data/rbi/stripe/resources/invoice_item.rbi +2 -4
  149. data/rbi/stripe/resources/invoice_line_item.rbi +1 -1
  150. data/rbi/stripe/resources/invoice_payment.rbi +9 -2
  151. data/rbi/stripe/resources/issuing/authorization.rbi +8 -8
  152. data/rbi/stripe/resources/issuing/card.rbi +1 -1
  153. data/rbi/stripe/resources/issuing/dispute.rbi +3 -3
  154. data/rbi/stripe/resources/payment_intent.rbi +201 -349
  155. data/rbi/stripe/resources/payment_method.rbi +46 -116
  156. data/rbi/stripe/resources/payment_method_configuration.rbi +334 -4
  157. data/rbi/stripe/resources/payment_method_domain.rbi +2 -2
  158. data/rbi/stripe/resources/payout.rbi +4 -4
  159. data/rbi/stripe/resources/person.rbi +2 -2
  160. data/rbi/stripe/resources/plan.rbi +2 -4
  161. data/rbi/stripe/resources/price.rbi +1 -1
  162. data/rbi/stripe/resources/product.rbi +1 -3
  163. data/rbi/stripe/resources/radar/value_list.rbi +1 -3
  164. data/rbi/stripe/resources/radar/value_list_item.rbi +1 -3
  165. data/rbi/stripe/resources/refund.rbi +5 -1
  166. data/rbi/stripe/resources/reversal.rbi +1 -1
  167. data/rbi/stripe/resources/review.rbi +1 -1
  168. data/rbi/stripe/resources/setup_intent.rbi +111 -325
  169. data/rbi/stripe/resources/source.rbi +1 -1
  170. data/rbi/stripe/resources/subscription.rbi +99 -36
  171. data/rbi/stripe/resources/subscription_item.rbi +36 -2
  172. data/rbi/stripe/resources/subscription_schedule.rbi +138 -10
  173. data/rbi/stripe/resources/tax/calculation.rbi +5 -1
  174. data/rbi/stripe/resources/tax/calculation_line_item.rbi +3 -0
  175. data/rbi/stripe/resources/tax/registration.rbi +1 -1
  176. data/rbi/stripe/resources/tax_id.rbi +1 -3
  177. data/rbi/stripe/resources/tax_rate.rbi +2 -2
  178. data/rbi/stripe/resources/terminal/configuration.rbi +1 -3
  179. data/rbi/stripe/resources/terminal/location.rbi +2 -4
  180. data/rbi/stripe/resources/terminal/reader.rbi +265 -5
  181. data/rbi/stripe/resources/test_helpers/test_clock.rbi +1 -3
  182. data/rbi/stripe/resources/token.rbi +2 -2
  183. data/rbi/stripe/resources/transfer.rbi +1 -1
  184. data/rbi/stripe/resources/webhook_endpoint.rbi +1 -3
  185. data/rbi/stripe/services/account_external_account_service.rbi +2 -4
  186. data/rbi/stripe/services/account_login_link_service.rbi +1 -1
  187. data/rbi/stripe/services/account_person_service.rbi +1 -3
  188. data/rbi/stripe/services/account_service.rbi +40 -16
  189. data/rbi/stripe/services/account_session_service.rbi +86 -12
  190. data/rbi/stripe/services/apple_pay_domain_service.rbi +1 -3
  191. data/rbi/stripe/services/balance_service.rbi +1 -1
  192. data/rbi/stripe/services/billing/alert_service.rbi +2 -2
  193. data/rbi/stripe/services/charge_service.rbi +4 -4
  194. data/rbi/stripe/services/checkout/session_service.rbi +12 -5
  195. data/rbi/stripe/services/coupon_service.rbi +1 -3
  196. data/rbi/stripe/services/credit_note_service.rbi +7 -8
  197. data/rbi/stripe/services/customer_balance_transaction_service.rbi +3 -3
  198. data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +2 -2
  199. data/rbi/stripe/services/customer_payment_source_service.rbi +1 -1
  200. data/rbi/stripe/services/customer_service.rbi +3 -7
  201. data/rbi/stripe/services/customer_tax_id_service.rbi +1 -3
  202. data/rbi/stripe/services/dispute_service.rbi +1 -1
  203. data/rbi/stripe/services/file_service.rbi +1 -1
  204. data/rbi/stripe/services/identity/verification_session_service.rbi +5 -5
  205. data/rbi/stripe/services/invoice_item_service.rbi +1 -3
  206. data/rbi/stripe/services/invoice_service.rbi +90 -29
  207. data/rbi/stripe/services/issuing/authorization_service.rbi +4 -4
  208. data/rbi/stripe/services/issuing/card_service.rbi +1 -1
  209. data/rbi/stripe/services/issuing/dispute_service.rbi +2 -2
  210. data/rbi/stripe/services/payment_intent_service.rbi +179 -339
  211. data/rbi/stripe/services/payment_method_configuration_service.rbi +236 -4
  212. data/rbi/stripe/services/payment_method_domain_service.rbi +1 -1
  213. data/rbi/stripe/services/payment_method_service.rbi +43 -113
  214. data/rbi/stripe/services/payout_service.rbi +2 -2
  215. data/rbi/stripe/services/plan_service.rbi +2 -4
  216. data/rbi/stripe/services/price_service.rbi +2 -2
  217. data/rbi/stripe/services/product_feature_service.rbi +1 -3
  218. data/rbi/stripe/services/product_service.rbi +2 -4
  219. data/rbi/stripe/services/promotion_code_service.rbi +1 -1
  220. data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +1 -1
  221. data/rbi/stripe/services/radar/value_list_item_service.rbi +1 -3
  222. data/rbi/stripe/services/radar/value_list_service.rbi +1 -3
  223. data/rbi/stripe/services/setup_intent_service.rbi +110 -324
  224. data/rbi/stripe/services/source_service.rbi +1 -1
  225. data/rbi/stripe/services/subscription_item_service.rbi +28 -2
  226. data/rbi/stripe/services/subscription_schedule_service.rbi +107 -9
  227. data/rbi/stripe/services/subscription_service.rbi +85 -33
  228. data/rbi/stripe/services/tax/calculation_service.rbi +5 -1
  229. data/rbi/stripe/services/tax/registration_service.rbi +1 -1
  230. data/rbi/stripe/services/tax_id_service.rbi +1 -3
  231. data/rbi/stripe/services/terminal/configuration_service.rbi +1 -3
  232. data/rbi/stripe/services/terminal/location_service.rbi +2 -4
  233. data/rbi/stripe/services/terminal/reader_service.rbi +115 -4
  234. data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +33 -99
  235. data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +31 -0
  236. data/rbi/stripe/services/test_helpers/test_clock_service.rbi +1 -3
  237. data/rbi/stripe/services/token_service.rbi +1 -1
  238. data/rbi/stripe/services/transfer_service.rbi +1 -1
  239. data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +1 -3
  240. data/rbi/stripe/services/v2/core/event_destination_service.rbi +4 -12
  241. data/rbi/stripe/services/v2/core/event_service.rbi +1 -3
  242. data/rbi/stripe/services/webhook_endpoint_service.rbi +1 -3
  243. metadata +3 -2
@@ -18,6 +18,100 @@ module Stripe
18
18
  end
19
19
 
20
20
  class Action < Stripe::StripeObject
21
+ class CollectInputs < Stripe::StripeObject
22
+ class Input < Stripe::StripeObject
23
+ class CustomText < Stripe::StripeObject
24
+ # Customize the default description for this input
25
+ attr_reader :description
26
+ # Customize the default label for this input's skip button
27
+ attr_reader :skip_button
28
+ # Customize the default label for this input's submit button
29
+ attr_reader :submit_button
30
+ # Customize the default title for this input
31
+ attr_reader :title
32
+ end
33
+
34
+ class Email < Stripe::StripeObject
35
+ # The collected email address
36
+ attr_reader :value
37
+ end
38
+
39
+ class Numeric < Stripe::StripeObject
40
+ # The collected number
41
+ attr_reader :value
42
+ end
43
+
44
+ class Phone < Stripe::StripeObject
45
+ # The collected phone number
46
+ attr_reader :value
47
+ end
48
+
49
+ class Selection < Stripe::StripeObject
50
+ class Choice < Stripe::StripeObject
51
+ # The id to be selected
52
+ attr_reader :id
53
+ # The button style for the choice
54
+ attr_reader :style
55
+ # The text to be selected
56
+ attr_reader :text
57
+ end
58
+ # List of possible choices to be selected
59
+ attr_reader :choices
60
+ # The id of the selected choice
61
+ attr_reader :id
62
+ # The text of the selected choice
63
+ attr_reader :text
64
+ end
65
+
66
+ class Signature < Stripe::StripeObject
67
+ # The File ID of a collected signature image
68
+ attr_reader :value
69
+ end
70
+
71
+ class Text < Stripe::StripeObject
72
+ # The collected text value
73
+ attr_reader :value
74
+ end
75
+
76
+ class Toggle < Stripe::StripeObject
77
+ # The toggle's default value
78
+ attr_reader :default_value
79
+ # The toggle's description text
80
+ attr_reader :description
81
+ # The toggle's title text
82
+ attr_reader :title
83
+ # The toggle's collected value
84
+ attr_reader :value
85
+ end
86
+ # Default text of input being collected.
87
+ attr_reader :custom_text
88
+ # Information about a email being collected using a reader
89
+ attr_reader :email
90
+ # Information about a number being collected using a reader
91
+ attr_reader :numeric
92
+ # Information about a phone number being collected using a reader
93
+ attr_reader :phone
94
+ # Indicate that this input is required, disabling the skip button.
95
+ attr_reader :required
96
+ # Information about a selection being collected using a reader
97
+ attr_reader :selection
98
+ # Information about a signature being collected using a reader
99
+ attr_reader :signature
100
+ # Indicate that this input was skipped by the user.
101
+ attr_reader :skipped
102
+ # Information about text being collected using a reader
103
+ attr_reader :text
104
+ # List of toggles being collected. Values are present if collection is complete.
105
+ attr_reader :toggles
106
+ # Type of input being collected.
107
+ attr_reader :type
108
+ end
109
+ # List of inputs to be collected.
110
+ attr_reader :inputs
111
+ # 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.
112
+ attr_reader :metadata
113
+ end
114
+
21
115
  class ProcessPaymentIntent < Stripe::StripeObject
22
116
  class ProcessConfig < Stripe::StripeObject
23
117
  class Tipping < Stripe::StripeObject
@@ -26,6 +120,8 @@ module Stripe
26
120
  end
27
121
  # Enable customer initiated cancellation when processing this payment.
28
122
  attr_reader :enable_customer_cancellation
123
+ # If the customer does not abandon authenticating the payment, they will be redirected to this specified URL after completion.
124
+ attr_reader :return_url
29
125
  # Override showing a tipping selection screen on this transaction.
30
126
  attr_reader :skip_tipping
31
127
  # Represents a per-transaction tipping configuration
@@ -99,6 +195,8 @@ module Stripe
99
195
  # Type of information to be displayed by the reader.
100
196
  attr_reader :type
101
197
  end
198
+ # Represents a reader action to collect customer inputs
199
+ attr_reader :collect_inputs
102
200
  # Failure code, only set if status is `failed`.
103
201
  attr_reader :failure_code
104
202
  # Detailed failure message, only set if status is `failed`.
@@ -117,8 +215,7 @@ module Stripe
117
215
  attr_reader :type
118
216
  end
119
217
 
120
- class DeleteParams < Stripe::RequestParams
121
- end
218
+ class DeleteParams < Stripe::RequestParams; end
122
219
 
123
220
  class UpdateParams < Stripe::RequestParams
124
221
  # Specifies which fields in the response should be expanded.
@@ -210,6 +307,96 @@ module Stripe
210
307
  end
211
308
  end
212
309
 
310
+ class CollectInputsParams < Stripe::RequestParams
311
+ class Input < Stripe::RequestParams
312
+ class CustomText < Stripe::RequestParams
313
+ # The description which will be displayed when collecting this input
314
+ attr_accessor :description
315
+ # The skip button text
316
+ attr_accessor :skip_button
317
+ # The submit button text
318
+ attr_accessor :submit_button
319
+ # The title which will be displayed when collecting this input
320
+ attr_accessor :title
321
+
322
+ def initialize(description: nil, skip_button: nil, submit_button: nil, title: nil)
323
+ @description = description
324
+ @skip_button = skip_button
325
+ @submit_button = submit_button
326
+ @title = title
327
+ end
328
+ end
329
+
330
+ class Selection < Stripe::RequestParams
331
+ class Choice < Stripe::RequestParams
332
+ # The unique identifier for this choice
333
+ attr_accessor :id
334
+ # The style of the button which will be shown for this choice
335
+ attr_accessor :style
336
+ # The text which will be shown on the button for this choice
337
+ attr_accessor :text
338
+
339
+ def initialize(id: nil, style: nil, text: nil)
340
+ @id = id
341
+ @style = style
342
+ @text = text
343
+ end
344
+ end
345
+ # List of choices for the `selection` input
346
+ attr_accessor :choices
347
+
348
+ def initialize(choices: nil)
349
+ @choices = choices
350
+ end
351
+ end
352
+
353
+ class Toggle < Stripe::RequestParams
354
+ # The default value of the toggle
355
+ attr_accessor :default_value
356
+ # The description which will be displayed for the toggle
357
+ attr_accessor :description
358
+ # The title which will be displayed for the toggle
359
+ attr_accessor :title
360
+
361
+ def initialize(default_value: nil, description: nil, title: nil)
362
+ @default_value = default_value
363
+ @description = description
364
+ @title = title
365
+ end
366
+ end
367
+ # Customize the text which will be displayed while collecting this input
368
+ attr_accessor :custom_text
369
+ # Indicate that this input is required, disabling the skip button
370
+ attr_accessor :required
371
+ # Options for the `selection` input
372
+ attr_accessor :selection
373
+ # List of toggles to be displayed and customization for the toggles
374
+ attr_accessor :toggles
375
+ # The type of input to collect
376
+ attr_accessor :type
377
+
378
+ def initialize(custom_text: nil, required: nil, selection: nil, toggles: nil, type: nil)
379
+ @custom_text = custom_text
380
+ @required = required
381
+ @selection = selection
382
+ @toggles = toggles
383
+ @type = type
384
+ end
385
+ end
386
+ # Specifies which fields in the response should be expanded.
387
+ attr_accessor :expand
388
+ # List of inputs to be collected using the Reader
389
+ attr_accessor :inputs
390
+ # 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`.
391
+ attr_accessor :metadata
392
+
393
+ def initialize(expand: nil, inputs: nil, metadata: nil)
394
+ @expand = expand
395
+ @inputs = inputs
396
+ @metadata = metadata
397
+ end
398
+ end
399
+
213
400
  class ProcessPaymentIntentParams < Stripe::RequestParams
214
401
  class ProcessConfig < Stripe::RequestParams
215
402
  class Tipping < Stripe::RequestParams
@@ -224,6 +411,8 @@ module Stripe
224
411
  attr_accessor :allow_redisplay
225
412
  # Enables cancel button on transaction screens.
226
413
  attr_accessor :enable_customer_cancellation
414
+ # The URL to redirect your customer back to after they authenticate or cancel their payment on the payment method's app or site. If you'd prefer to redirect to a mobile application, you can alternatively supply an application URI scheme.
415
+ attr_accessor :return_url
227
416
  # Override showing a tipping selection screen on this transaction.
228
417
  attr_accessor :skip_tipping
229
418
  # Tipping configuration for this transaction.
@@ -232,11 +421,13 @@ module Stripe
232
421
  def initialize(
233
422
  allow_redisplay: nil,
234
423
  enable_customer_cancellation: nil,
424
+ return_url: nil,
235
425
  skip_tipping: nil,
236
426
  tipping: nil
237
427
  )
238
428
  @allow_redisplay = allow_redisplay
239
429
  @enable_customer_cancellation = enable_customer_cancellation
430
+ @return_url = return_url
240
431
  @skip_tipping = skip_tipping
241
432
  @tipping = tipping
242
433
  end
@@ -417,11 +608,32 @@ module Stripe
417
608
  @type = type
418
609
  end
419
610
  end
611
+
612
+ class SucceedInputCollectionParams < Stripe::RequestParams
613
+ # Specifies which fields in the response should be expanded.
614
+ attr_accessor :expand
615
+ # This parameter defines the skip behavior for input collection.
616
+ attr_accessor :skip_non_required_inputs
617
+
618
+ def initialize(expand: nil, skip_non_required_inputs: nil)
619
+ @expand = expand
620
+ @skip_non_required_inputs = skip_non_required_inputs
621
+ end
622
+ end
623
+
624
+ class TimeoutInputCollectionParams < Stripe::RequestParams
625
+ # Specifies which fields in the response should be expanded.
626
+ attr_accessor :expand
627
+
628
+ def initialize(expand: nil)
629
+ @expand = expand
630
+ end
631
+ end
420
632
  # The most recent action performed by the reader.
421
633
  attr_reader :action
422
634
  # The current software version of the reader.
423
635
  attr_reader :device_sw_version
424
- # Type of reader, one of `bbpos_wisepad3`, `stripe_m2`, `stripe_s700`, `bbpos_chipper2x`, `bbpos_wisepos_e`, `verifone_P400`, `simulated_wisepos_e`, or `mobile_phone_reader`.
636
+ # Device type of the reader.
425
637
  attr_reader :device_type
426
638
  # Unique identifier for the object.
427
639
  attr_reader :id
@@ -464,6 +676,26 @@ module Stripe
464
676
  )
465
677
  end
466
678
 
679
+ # Initiates an input collection flow on a Reader.
680
+ def collect_inputs(params = {}, opts = {})
681
+ request_stripe_object(
682
+ method: :post,
683
+ path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(self["id"]) }),
684
+ params: params,
685
+ opts: opts
686
+ )
687
+ end
688
+
689
+ # Initiates an input collection flow on a Reader.
690
+ def self.collect_inputs(reader, params = {}, opts = {})
691
+ request_stripe_object(
692
+ method: :post,
693
+ path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(reader) }),
694
+ params: params,
695
+ opts: opts
696
+ )
697
+ end
698
+
467
699
  # Creates a new Reader object.
468
700
  def self.create(params = {}, opts = {})
469
701
  request_stripe_object(
@@ -623,6 +855,46 @@ module Stripe
623
855
  opts: opts
624
856
  )
625
857
  end
858
+
859
+ # Use this endpoint to trigger a successful input collection on a simulated reader.
860
+ def self.succeed_input_collection(reader, params = {}, opts = {})
861
+ request_stripe_object(
862
+ method: :post,
863
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/succeed_input_collection", { reader: CGI.escape(reader) }),
864
+ params: params,
865
+ opts: opts
866
+ )
867
+ end
868
+
869
+ # Use this endpoint to trigger a successful input collection on a simulated reader.
870
+ def succeed_input_collection(params = {}, opts = {})
871
+ @resource.request_stripe_object(
872
+ method: :post,
873
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/succeed_input_collection", { reader: CGI.escape(@resource["id"]) }),
874
+ params: params,
875
+ opts: opts
876
+ )
877
+ end
878
+
879
+ # Use this endpoint to complete an input collection with a timeout error on a simulated reader.
880
+ def self.timeout_input_collection(reader, params = {}, opts = {})
881
+ request_stripe_object(
882
+ method: :post,
883
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/timeout_input_collection", { reader: CGI.escape(reader) }),
884
+ params: params,
885
+ opts: opts
886
+ )
887
+ end
888
+
889
+ # Use this endpoint to complete an input collection with a timeout error on a simulated reader.
890
+ def timeout_input_collection(params = {}, opts = {})
891
+ @resource.request_stripe_object(
892
+ method: :post,
893
+ path: format("/v1/test_helpers/terminal/readers/%<reader>s/timeout_input_collection", { reader: CGI.escape(@resource["id"]) }),
894
+ params: params,
895
+ opts: opts
896
+ )
897
+ end
626
898
  end
627
899
  end
628
900
  end
@@ -25,8 +25,7 @@ module Stripe
25
25
  attr_reader :advancing
26
26
  end
27
27
 
28
- class DeleteParams < Stripe::RequestParams
29
- end
28
+ class DeleteParams < Stripe::RequestParams; end
30
29
 
31
30
  class ListParams < Stripe::RequestParams
32
31
  # 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.
@@ -19,7 +19,7 @@ module Stripe
19
19
  #
20
20
  # You can't store or use tokens more than once. To store card or bank account
21
21
  # information for later use, create [Customer](https://stripe.com/docs/api#customers)
22
- # objects or [External accounts](https://stripe.com/api#external_accounts).
22
+ # objects or [External accounts](https://docs.stripe.com/api#external_accounts).
23
23
  # [Radar](https://stripe.com/docs/radar), our integrated solution for automatic fraud protection,
24
24
  # performs best with integrations that use client-side tokenization.
25
25
  class Token < APIResource
@@ -1251,7 +1251,7 @@ module Stripe
1251
1251
  attr_reader :used
1252
1252
 
1253
1253
  # Creates a single-use token that represents a bank account's details.
1254
- # You can use this token with any v1 API method in place of a bank account dictionary. You can only use this token once. To do so, attach it to a [connected account](https://stripe.com/docs/api#accounts) where [controller.requirement_collection](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection) is application, which includes Custom accounts.
1254
+ # You can use this token with any v1 API method in place of a bank account dictionary. You can only use this token once. To do so, attach it to a [connected account](https://docs.stripe.com/api#accounts) where [controller.requirement_collection](https://docs.stripe.com/api/accounts/object#account_object-controller-requirement_collection) is application, which includes Custom accounts.
1255
1255
  def self.create(params = {}, opts = {})
1256
1256
  request_stripe_object(method: :post, path: "/v1/tokens", params: params, opts: opts)
1257
1257
  end
@@ -169,7 +169,7 @@ module Stripe
169
169
  # A string that identifies this transaction as part of a group. See the [Connect documentation](https://stripe.com/docs/connect/separate-charges-and-transfers#transfer-options) for details.
170
170
  attr_reader :transfer_group
171
171
 
172
- # To send funds from your Stripe account to a connected account, you create a new transfer object. Your [Stripe balance](https://stripe.com/docs/api#balance) must be able to cover the transfer amount, or you'll receive an “Insufficient Funds” error.
172
+ # To send funds from your Stripe account to a connected account, you create a new transfer object. Your [Stripe balance](https://docs.stripe.com/api#balance) must be able to cover the transfer amount, or you'll receive an “Insufficient Funds” error.
173
173
  def self.create(params = {}, opts = {})
174
174
  request_stripe_object(method: :post, path: "/v1/transfers", params: params, opts: opts)
175
175
  end
@@ -20,8 +20,7 @@ module Stripe
20
20
  "webhook_endpoint"
21
21
  end
22
22
 
23
- class DeleteParams < Stripe::RequestParams
24
- end
23
+ class DeleteParams < Stripe::RequestParams; end
25
24
 
26
25
  class UpdateParams < Stripe::RequestParams
27
26
  # An optional description of what the webhook is used for.
@@ -3,8 +3,7 @@
3
3
 
4
4
  module Stripe
5
5
  class AccountExternalAccountService < StripeService
6
- class DeleteParams < Stripe::RequestParams
7
- end
6
+ class DeleteParams < Stripe::RequestParams; end
8
7
 
9
8
  class RetrieveParams < Stripe::RequestParams
10
9
  # Specifies which fields in the response should be expanded.
@@ -301,7 +300,7 @@ module Stripe
301
300
  # a connected account and optionally sets it as the default for its currency. Other bank account
302
301
  # details are not editable by design.
303
302
  #
304
- # You can only update bank accounts when [account.controller.requirement_collection is application, which includes <a href="/connect/custom-accounts">Custom accounts](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection).
303
+ # You can only update bank accounts when [account.controller.requirement_collection is application, which includes <a href="/connect/custom-accounts">Custom accounts](https://docs.stripe.com/api/accounts/object#account_object-controller-requirement_collection).
305
304
  #
306
305
  # You can re-enable a disabled bank account by performing an update call without providing any
307
306
  # arguments or changes.
@@ -14,7 +14,7 @@ module Stripe
14
14
 
15
15
  # Creates a login link for a connected account to access the Express Dashboard.
16
16
  #
17
- # You can only create login links for accounts that use the [Express Dashboard](https://stripe.com/connect/express-dashboard) and are connected to your platform.
17
+ # You can only create login links for accounts that use the [Express Dashboard](https://docs.stripe.com/connect/express-dashboard) and are connected to your platform.
18
18
  def create(account, params = {}, opts = {})
19
19
  request(
20
20
  method: :post,
@@ -3,8 +3,7 @@
3
3
 
4
4
  module Stripe
5
5
  class AccountPersonService < StripeService
6
- class DeleteParams < Stripe::RequestParams
7
- end
6
+ class DeleteParams < Stripe::RequestParams; end
8
7
 
9
8
  class RetrieveParams < Stripe::RequestParams
10
9
  # Specifies which fields in the response should be expanded.
@@ -13,8 +13,7 @@ module Stripe
13
13
  @persons = Stripe::AccountPersonService.new(@requestor)
14
14
  end
15
15
 
16
- class DeleteParams < Stripe::RequestParams
17
- end
16
+ class DeleteParams < Stripe::RequestParams; end
18
17
 
19
18
  class RetrieveParams < Stripe::RequestParams
20
19
  # Specifies which fields in the response should be expanded.
@@ -543,6 +542,15 @@ module Stripe
543
542
  end
544
543
  end
545
544
 
545
+ class PixPayments < Stripe::RequestParams
546
+ # Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays.
547
+ attr_accessor :requested
548
+
549
+ def initialize(requested: nil)
550
+ @requested = requested
551
+ end
552
+ end
553
+
546
554
  class PromptpayPayments < Stripe::RequestParams
547
555
  # Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays.
548
556
  attr_accessor :requested
@@ -768,6 +776,8 @@ module Stripe
768
776
  attr_accessor :payco_payments
769
777
  # The paynow_payments capability.
770
778
  attr_accessor :paynow_payments
779
+ # The pix_payments capability.
780
+ attr_accessor :pix_payments
771
781
  # The promptpay_payments capability.
772
782
  attr_accessor :promptpay_payments
773
783
  # The revolut_pay_payments capability.
@@ -843,6 +853,7 @@ module Stripe
843
853
  pay_by_bank_payments: nil,
844
854
  payco_payments: nil,
845
855
  paynow_payments: nil,
856
+ pix_payments: nil,
846
857
  promptpay_payments: nil,
847
858
  revolut_pay_payments: nil,
848
859
  samsung_pay_payments: nil,
@@ -901,6 +912,7 @@ module Stripe
901
912
  @pay_by_bank_payments = pay_by_bank_payments
902
913
  @payco_payments = payco_payments
903
914
  @paynow_payments = paynow_payments
915
+ @pix_payments = pix_payments
904
916
  @promptpay_payments = promptpay_payments
905
917
  @revolut_pay_payments = revolut_pay_payments
906
918
  @samsung_pay_payments = samsung_pay_payments
@@ -2551,6 +2563,15 @@ module Stripe
2551
2563
  end
2552
2564
  end
2553
2565
 
2566
+ class PixPayments < Stripe::RequestParams
2567
+ # Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays.
2568
+ attr_accessor :requested
2569
+
2570
+ def initialize(requested: nil)
2571
+ @requested = requested
2572
+ end
2573
+ end
2574
+
2554
2575
  class PromptpayPayments < Stripe::RequestParams
2555
2576
  # Passing true requests the capability for the account, if it is not already requested. A requested capability may not immediately become active. Any requirements to activate the capability are returned in the `requirements` arrays.
2556
2577
  attr_accessor :requested
@@ -2776,6 +2797,8 @@ module Stripe
2776
2797
  attr_accessor :payco_payments
2777
2798
  # The paynow_payments capability.
2778
2799
  attr_accessor :paynow_payments
2800
+ # The pix_payments capability.
2801
+ attr_accessor :pix_payments
2779
2802
  # The promptpay_payments capability.
2780
2803
  attr_accessor :promptpay_payments
2781
2804
  # The revolut_pay_payments capability.
@@ -2851,6 +2874,7 @@ module Stripe
2851
2874
  pay_by_bank_payments: nil,
2852
2875
  payco_payments: nil,
2853
2876
  paynow_payments: nil,
2877
+ pix_payments: nil,
2854
2878
  promptpay_payments: nil,
2855
2879
  revolut_pay_payments: nil,
2856
2880
  samsung_pay_payments: nil,
@@ -2909,6 +2933,7 @@ module Stripe
2909
2933
  @pay_by_bank_payments = pay_by_bank_payments
2910
2934
  @payco_payments = payco_payments
2911
2935
  @paynow_payments = paynow_payments
2936
+ @pix_payments = pix_payments
2912
2937
  @promptpay_payments = promptpay_payments
2913
2938
  @revolut_pay_payments = revolut_pay_payments
2914
2939
  @samsung_pay_payments = samsung_pay_payments
@@ -4059,21 +4084,21 @@ module Stripe
4059
4084
  end
4060
4085
  end
4061
4086
 
4062
- # With [Connect](https://stripe.com/docs/connect), you can create Stripe accounts for your users.
4087
+ # With [Connect](https://docs.stripe.com/docs/connect), you can create Stripe accounts for your users.
4063
4088
  # To do this, you'll first need to [register your platform](https://dashboard.stripe.com/account/applications/settings).
4064
4089
  #
4065
- # If you've already collected information for your connected accounts, you [can prefill that information](https://stripe.com/docs/connect/best-practices#onboarding) when
4090
+ # If you've already collected information for your connected accounts, you [can prefill that information](https://docs.stripe.com/docs/connect/best-practices#onboarding) when
4066
4091
  # creating the account. Connect Onboarding won't ask for the prefilled information during account onboarding.
4067
4092
  # You can prefill any information on the account.
4068
4093
  def create(params = {}, opts = {})
4069
4094
  request(method: :post, path: "/v1/accounts", params: params, opts: opts, base_address: :api)
4070
4095
  end
4071
4096
 
4072
- # With [Connect](https://stripe.com/connect), you can delete accounts you manage.
4097
+ # With [Connect](https://docs.stripe.com/connect), you can delete accounts you manage.
4073
4098
  #
4074
4099
  # Test-mode accounts can be deleted at any time.
4075
4100
  #
4076
- # Live-mode accounts where Stripe is responsible for negative account balances cannot be deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for negative account balances, which includes Custom and Express accounts, can be deleted when all [balances](https://stripe.com/api/balance/balance_object) are zero.
4101
+ # Live-mode accounts where Stripe is responsible for negative account balances cannot be deleted, which includes Standard accounts. Live-mode accounts where your platform is liable for negative account balances, which includes Custom and Express accounts, can be deleted when all [balances](https://docs.stripe.com/api/balance/balance_object) are zero.
4077
4102
  #
4078
4103
  # If you want to delete your own account, use the [account information tab in your account settings](https://dashboard.stripe.com/settings/account) instead.
4079
4104
  def delete(account, params = {}, opts = {})
@@ -4086,12 +4111,12 @@ module Stripe
4086
4111
  )
4087
4112
  end
4088
4113
 
4089
- # Returns a list of accounts connected to your platform via [Connect](https://stripe.com/docs/connect). If you're not a platform, the list is empty.
4114
+ # Returns a list of accounts connected to your platform via [Connect](https://docs.stripe.com/docs/connect). If you're not a platform, the list is empty.
4090
4115
  def list(params = {}, opts = {})
4091
4116
  request(method: :get, path: "/v1/accounts", params: params, opts: opts, base_address: :api)
4092
4117
  end
4093
4118
 
4094
- # With [Connect](https://stripe.com/connect), you can reject accounts that you have flagged as suspicious.
4119
+ # With [Connect](https://docs.stripe.com/connect), you can reject accounts that you have flagged as suspicious.
4095
4120
  #
4096
4121
  # Only accounts where your platform is liable for negative account balances, which includes Custom and Express accounts, can be rejected. Test-mode accounts can be rejected at any time. Live-mode accounts can only be rejected after all balances are zero.
4097
4122
  def reject(account, params = {}, opts = {})
@@ -4120,19 +4145,19 @@ module Stripe
4120
4145
  request(method: :get, path: "/v1/account", params: params, opts: opts, base_address: :api)
4121
4146
  end
4122
4147
 
4123
- # Updates a [connected account](https://stripe.com/connect/accounts) by setting the values of the parameters passed. Any parameters not provided are
4148
+ # Updates a [connected account](https://docs.stripe.com/connect/accounts) by setting the values of the parameters passed. Any parameters not provided are
4124
4149
  # left unchanged.
4125
4150
  #
4126
- # For accounts where [controller.requirement_collection](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection)
4151
+ # For accounts where [controller.requirement_collection](https://docs.stripe.com/api/accounts/object#account_object-controller-requirement_collection)
4127
4152
  # is application, which includes Custom accounts, you can update any information on the account.
4128
4153
  #
4129
- # For accounts where [controller.requirement_collection](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection)
4154
+ # For accounts where [controller.requirement_collection](https://docs.stripe.com/api/accounts/object#account_object-controller-requirement_collection)
4130
4155
  # is stripe, which includes Standard and Express accounts, you can update all information until you create
4131
- # an [Account Link or <a href="/api/account_sessions">Account Session](https://stripe.com/api/account_links) to start Connect onboarding,
4156
+ # an [Account Link or <a href="/api/account_sessions">Account Session](https://docs.stripe.com/api/account_links) to start Connect onboarding,
4132
4157
  # after which some properties can no longer be updated.
4133
4158
  #
4134
4159
  # To update your own account, use the [Dashboard](https://dashboard.stripe.com/settings/account). Refer to our
4135
- # [Connect](https://stripe.com/docs/connect/updating-accounts) documentation to learn more about updating accounts.
4160
+ # [Connect](https://docs.stripe.com/docs/connect/updating-accounts) documentation to learn more about updating accounts.
4136
4161
  def update(account, params = {}, opts = {})
4137
4162
  request(
4138
4163
  method: :post,