stripe 20.2.0.pre.alpha.1 → 20.2.0.pre.alpha.3

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 (143) hide show
  1. checksums.yaml +4 -4
  2. data/lib/stripe/event_types.rb +28 -0
  3. data/lib/stripe/events/v2_core_account_closed_event.rb +2 -2
  4. data/lib/stripe/events/v2_core_account_including_defaults_updated_event.rb +2 -2
  5. data/lib/stripe/events/v2_extend_object_definition_created_event.rb +61 -0
  6. data/lib/stripe/events/v2_extend_object_definition_version_created_event.rb +65 -0
  7. data/lib/stripe/events/v2_money_management_received_debit_mandate_canceled_event.rb +2 -0
  8. data/lib/stripe/events/v2_money_management_received_debit_mandate_created_event.rb +2 -0
  9. data/lib/stripe/events/v2_money_management_received_debit_mandate_expired_event.rb +2 -0
  10. data/lib/stripe/events/v2_money_management_received_debit_mandate_pending_cancellation_event.rb +2 -0
  11. data/lib/stripe/events/v2_money_management_received_debit_mandate_updated_event.rb +2 -0
  12. data/lib/stripe/events/v2_money_management_spending_mandate_canceled_event.rb +44 -0
  13. data/lib/stripe/events/v2_money_management_spending_mandate_created_event.rb +46 -0
  14. data/lib/stripe/events/v2_money_management_spending_mandate_expired_event.rb +44 -0
  15. data/lib/stripe/events/v2_money_management_spending_mandate_pending_cancellation_event.rb +44 -0
  16. data/lib/stripe/events/v2_money_management_spending_mandate_updated_event.rb +44 -0
  17. data/lib/stripe/object_types.rb +5 -0
  18. data/lib/stripe/params/account_session_create_params.rb +200 -0
  19. data/lib/stripe/params/checkout/session_create_params.rb +46 -1
  20. data/lib/stripe/params/confirmation_token_create_params.rb +21 -0
  21. data/lib/stripe/params/customer_tax_exemption_create_params.rb +29 -1
  22. data/lib/stripe/params/customer_update_params.rb +55 -0
  23. data/lib/stripe/params/fx_quote_create_params.rb +2 -2
  24. data/lib/stripe/params/invoice_create_params.rb +8 -1
  25. data/lib/stripe/params/invoice_update_params.rb +8 -1
  26. data/lib/stripe/params/payment_attempt_record_report_authenticated_params.rb +58 -1
  27. data/lib/stripe/params/payment_attempt_record_report_authorized_params.rb +35 -1
  28. data/lib/stripe/params/payment_attempt_record_report_guaranteed_params.rb +35 -1
  29. data/lib/stripe/params/payment_intent_capture_params.rb +57 -1
  30. data/lib/stripe/params/payment_intent_confirm_params.rb +91 -1
  31. data/lib/stripe/params/payment_intent_create_params.rb +91 -1
  32. data/lib/stripe/params/payment_intent_decrement_authorization_params.rb +57 -1
  33. data/lib/stripe/params/payment_intent_increment_authorization_params.rb +57 -1
  34. data/lib/stripe/params/payment_intent_update_params.rb +91 -1
  35. data/lib/stripe/params/payment_method_configuration_create_params.rb +42 -0
  36. data/lib/stripe/params/payment_method_configuration_update_params.rb +42 -0
  37. data/lib/stripe/params/payment_method_create_params.rb +21 -0
  38. data/lib/stripe/params/payment_record_report_payment_attempt_guaranteed_params.rb +35 -1
  39. data/lib/stripe/params/payment_record_report_payment_attempt_params.rb +35 -1
  40. data/lib/stripe/params/payment_record_report_payment_params.rb +35 -1
  41. data/lib/stripe/params/quote_create_params.rb +1 -1
  42. data/lib/stripe/params/quote_update_params.rb +1 -1
  43. data/lib/stripe/params/radar/payment_evaluation_create_params.rb +19 -1
  44. data/lib/stripe/params/refund_create_params.rb +4 -0
  45. data/lib/stripe/params/setup_intent_confirm_params.rb +50 -1
  46. data/lib/stripe/params/setup_intent_create_params.rb +50 -1
  47. data/lib/stripe/params/setup_intent_update_params.rb +34 -1
  48. data/lib/stripe/params/shared_payment/issued_token_create_params.rb +19 -0
  49. data/lib/stripe/params/subscription_create_params.rb +4 -0
  50. data/lib/stripe/params/subscription_list_params.rb +5 -1
  51. data/lib/stripe/params/subscription_update_params.rb +4 -0
  52. data/lib/stripe/params/tax/certificate_create_params.rb +21 -0
  53. data/lib/stripe/params/tax/certificate_delete_params.rb +8 -0
  54. data/lib/stripe/params/tax/certificate_list_params.rb +33 -0
  55. data/lib/stripe/params/tax/certificate_retrieve_params.rb +15 -0
  56. data/lib/stripe/params/tax/form_create_params.rb +504 -0
  57. data/lib/stripe/params/test_helpers/confirmation_token_create_params.rb +21 -0
  58. data/lib/stripe/params/v2/core/account_session_create_params.rb +13 -0
  59. data/lib/stripe/params/v2/extend/object_definition_list_params.rb +17 -0
  60. data/lib/stripe/params/v2/extend/object_definition_retrieve_params.rb +10 -0
  61. data/lib/stripe/params/v2/extend/object_definitions/version_list_params.rb +19 -0
  62. data/lib/stripe/params/v2/extend/object_definitions/version_retrieve_params.rb +12 -0
  63. data/lib/stripe/params/v2/money_management/outbound_payment_create_params.rb +22 -1
  64. data/lib/stripe/params/v2/money_management/outbound_setup_intent_create_params.rb +46 -0
  65. data/lib/stripe/params/v2/money_management/payout_intent_create_params.rb +22 -1
  66. data/lib/stripe/params/v2/money_management/payout_intent_update_params.rb +22 -1
  67. data/lib/stripe/params/v2/money_management/received_debit_list_params.rb +5 -2
  68. data/lib/stripe/params/v2/money_management/spending_mandate_cancel_params.rb +10 -0
  69. data/lib/stripe/params/v2/money_management/spending_mandate_list_params.rb +26 -0
  70. data/lib/stripe/params/v2/money_management/spending_mandate_retrieve_params.rb +10 -0
  71. data/lib/stripe/params.rb +27 -0
  72. data/lib/stripe/resources/account_session.rb +81 -0
  73. data/lib/stripe/resources/apps/install.rb +1 -1
  74. data/lib/stripe/resources/balance_transaction.rb +1 -1
  75. data/lib/stripe/resources/charge.rb +373 -5
  76. data/lib/stripe/resources/checkout/session.rb +32 -0
  77. data/lib/stripe/resources/confirmation_token.rb +103 -3
  78. data/lib/stripe/resources/coupon.rb +6 -3
  79. data/lib/stripe/resources/customer_tax_exemption.rb +32 -1
  80. data/lib/stripe/resources/identity/verification_report.rb +34 -0
  81. data/lib/stripe/resources/invoice.rb +3 -0
  82. data/lib/stripe/resources/mandate.rb +16 -0
  83. data/lib/stripe/resources/payment_attempt_record.rb +151 -2
  84. data/lib/stripe/resources/payment_intent.rb +126 -2
  85. data/lib/stripe/resources/payment_intent_amount_details_line_item.rb +46 -1
  86. data/lib/stripe/resources/payment_method.rb +103 -3
  87. data/lib/stripe/resources/payment_method_configuration.rb +68 -0
  88. data/lib/stripe/resources/payment_record.rb +151 -2
  89. data/lib/stripe/resources/radar/payment_evaluation.rb +41 -2
  90. data/lib/stripe/resources/refund.rb +38 -0
  91. data/lib/stripe/resources/reporting/report_run.rb +2 -0
  92. data/lib/stripe/resources/reserve/hold.rb +2 -2
  93. data/lib/stripe/resources/reserve/plan.rb +1 -1
  94. data/lib/stripe/resources/reserve/release.rb +1 -1
  95. data/lib/stripe/resources/setup_attempt.rb +21 -2
  96. data/lib/stripe/resources/setup_intent.rb +38 -2
  97. data/lib/stripe/resources/shared_payment/granted_token.rb +32 -2
  98. data/lib/stripe/resources/shared_payment/issued_token.rb +20 -0
  99. data/lib/stripe/resources/subscription.rb +3 -1
  100. data/lib/stripe/resources/tax/certificate.rb +81 -0
  101. data/lib/stripe/resources/tax/form.rb +11 -0
  102. data/lib/stripe/resources/tax/form_correction.rb +43 -0
  103. data/lib/stripe/resources/terminal/reader.rb +18 -1
  104. data/lib/stripe/resources/treasury/inbound_transfer.rb +29 -1
  105. data/lib/stripe/resources/treasury/outbound_payment.rb +29 -1
  106. data/lib/stripe/resources/treasury/outbound_transfer.rb +29 -1
  107. data/lib/stripe/resources/v2/core/account_session.rb +27 -0
  108. data/lib/stripe/resources/v2/core/event.rb +1 -1
  109. data/lib/stripe/resources/v2/core/event_base.rb +36 -0
  110. data/lib/stripe/resources/v2/data/search_result_list.rb +1 -1
  111. data/lib/stripe/resources/v2/extend/object_definition.rb +40 -0
  112. data/lib/stripe/resources/v2/extend/object_definition_version.rb +168 -0
  113. data/lib/stripe/resources/v2/money_management/outbound_payment.rb +74 -1
  114. data/lib/stripe/resources/v2/money_management/payout_intent.rb +22 -1
  115. data/lib/stripe/resources/v2/money_management/payout_method.rb +40 -0
  116. data/lib/stripe/resources/v2/money_management/received_debit.rb +3 -0
  117. data/lib/stripe/resources/v2/money_management/spending_mandate.rb +121 -0
  118. data/lib/stripe/resources/v2/tax/operations_resolve_address_result.rb +1 -1
  119. data/lib/stripe/resources.rb +46 -0
  120. data/lib/stripe/services/apps/install_service.rb +1 -1
  121. data/lib/stripe/services/checkout/session_service.rb +2 -0
  122. data/lib/stripe/services/reserve/hold_service.rb +2 -2
  123. data/lib/stripe/services/reserve/plan_service.rb +2 -2
  124. data/lib/stripe/services/reserve/release_service.rb +2 -2
  125. data/lib/stripe/services/tax/certificate_service.rb +52 -0
  126. data/lib/stripe/services/tax/form_service.rb +11 -0
  127. data/lib/stripe/services/tax_service.rb +2 -1
  128. data/lib/stripe/services/v2/core/vault/network_token_service.rb +1 -0
  129. data/lib/stripe/services/v2/extend/object_definition_service.rb +39 -0
  130. data/lib/stripe/services/v2/extend/object_definitions/version_service.rb +34 -0
  131. data/lib/stripe/services/v2/extend_service.rb +2 -1
  132. data/lib/stripe/services/v2/money_management/received_debit_mandate_service.rb +3 -0
  133. data/lib/stripe/services/v2/money_management/spending_mandate_service.rb +43 -0
  134. data/lib/stripe/services/v2/money_management_service.rb +2 -1
  135. data/lib/stripe/services.rb +11 -0
  136. data/lib/stripe/stripe_event_notification_handler.rb +28 -0
  137. data/lib/stripe/stripe_service.rb +13 -9
  138. data/lib/stripe/version.rb +1 -1
  139. data/lib/stripe/webhook.rb +68 -3
  140. data/lib/stripe/workload_identity_exchange.rb +2 -2
  141. data/rbi/stripe/resources/v2/core/event_base.rbi +11 -0
  142. data/rbi/stripe.rbi +5856 -213
  143. metadata +32 -2
@@ -91,6 +91,57 @@ module Stripe
91
91
  end
92
92
  end
93
93
 
94
+ class MarketingAttribution < ::Stripe::RequestParams
95
+ class AdConversion < ::Stripe::RequestParams
96
+ # Whether the customer consented to sending conversion data to an advertising platform.
97
+ attr_accessor :consent_collected
98
+
99
+ def initialize(consent_collected: nil)
100
+ @consent_collected = consent_collected
101
+ end
102
+ end
103
+ # Information used when sending conversions to an advertising platform.
104
+ attr_accessor :ad_conversion
105
+ # The advertising platform's click identifier.
106
+ attr_accessor :click_id
107
+ # The Unix timestamp when the advertising interaction occurred.
108
+ attr_accessor :occurred_at
109
+ # The advertising group ID from the `utm_adgroup` parameter.
110
+ attr_accessor :utm_adgroup
111
+ # The advertising content identifier from the `utm_content` parameter.
112
+ attr_accessor :utm_content
113
+ # The advertising campaign ID from the `utm_id` parameter.
114
+ attr_accessor :utm_id
115
+ # The marketing medium from the `utm_medium` parameter.
116
+ attr_accessor :utm_medium
117
+ # The referral source from the `utm_source` parameter.
118
+ attr_accessor :utm_source
119
+ # The paid search term from the `utm_term` parameter.
120
+ attr_accessor :utm_term
121
+
122
+ def initialize(
123
+ ad_conversion: nil,
124
+ click_id: nil,
125
+ occurred_at: nil,
126
+ utm_adgroup: nil,
127
+ utm_content: nil,
128
+ utm_id: nil,
129
+ utm_medium: nil,
130
+ utm_source: nil,
131
+ utm_term: nil
132
+ )
133
+ @ad_conversion = ad_conversion
134
+ @click_id = click_id
135
+ @occurred_at = occurred_at
136
+ @utm_adgroup = utm_adgroup
137
+ @utm_content = utm_content
138
+ @utm_id = utm_id
139
+ @utm_medium = utm_medium
140
+ @utm_source = utm_source
141
+ @utm_term = utm_term
142
+ end
143
+ end
144
+
94
145
  class Shipping < ::Stripe::RequestParams
95
146
  class Address < ::Stripe::RequestParams
96
147
  # City, district, suburb, town, or village.
@@ -173,6 +224,8 @@ module Stripe
173
224
  attr_accessor :invoice_prefix
174
225
  # Default invoice settings for this customer.
175
226
  attr_accessor :invoice_settings
227
+ # Advertising attribution information for this customer. Only one attribution is supported, and it can only be set once.
228
+ attr_accessor :marketing_attributions
176
229
  # Set of [key-value pairs](https://docs.stripe.com/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`.
177
230
  attr_accessor :metadata
178
231
  # The customer's full name or business name.
@@ -206,6 +259,7 @@ module Stripe
206
259
  individual_name: nil,
207
260
  invoice_prefix: nil,
208
261
  invoice_settings: nil,
262
+ marketing_attributions: nil,
209
263
  metadata: nil,
210
264
  name: nil,
211
265
  next_invoice_sequence: nil,
@@ -228,6 +282,7 @@ module Stripe
228
282
  @individual_name = individual_name
229
283
  @invoice_prefix = invoice_prefix
230
284
  @invoice_settings = invoice_settings
285
+ @marketing_attributions = marketing_attributions
231
286
  @metadata = metadata
232
287
  @name = name
233
288
  @next_invoice_sequence = next_invoice_sequence
@@ -47,11 +47,11 @@ module Stripe
47
47
  end
48
48
  # Specifies which fields in the response should be expanded.
49
49
  attr_accessor :expand
50
- # A list of three letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be [supported currencies](https://stripe.com/docs/currencies).
50
+ # A list of three letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be [supported currencies](https://stripe.com/docs/currencies). Payout-only currencies are also supported, but only for informational quotes (`lock_duration=none`).
51
51
  attr_accessor :from_currencies
52
52
  # The duration that you wish the quote to be locked for. The quote will be usable for the duration specified. The default is `none`. The maximum is 1 day.
53
53
  attr_accessor :lock_duration
54
- # 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).
54
+ # 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). Payout-only currencies are also supported, but only for informational quotes (`lock_duration=none`).
55
55
  attr_accessor :to_currency
56
56
  # The usage specific information for the quote.
57
57
  attr_accessor :usage
@@ -355,7 +355,14 @@ module Stripe
355
355
  end
356
356
  end
357
357
 
358
- class SepaDebit < ::Stripe::RequestParams; end
358
+ class SepaDebit < ::Stripe::RequestParams
359
+ # Controls when Stripe will attempt to debit the funds from the customer's account. The date must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15 calendar days from now.
360
+ attr_accessor :target_date
361
+
362
+ def initialize(target_date: nil)
363
+ @target_date = target_date
364
+ end
365
+ end
359
366
 
360
367
  class Upi < ::Stripe::RequestParams
361
368
  class MandateOptions < ::Stripe::RequestParams
@@ -334,7 +334,14 @@ module Stripe
334
334
  end
335
335
  end
336
336
 
337
- class SepaDebit < ::Stripe::RequestParams; end
337
+ class SepaDebit < ::Stripe::RequestParams
338
+ # Controls when Stripe will attempt to debit the funds from the customer's account. The date must be a string in YYYY-MM-DD format. The date must be in the future and between 3 and 15 calendar days from now.
339
+ attr_accessor :target_date
340
+
341
+ def initialize(target_date: nil)
342
+ @target_date = target_date
343
+ end
344
+ end
338
345
 
339
346
  class Upi < ::Stripe::RequestParams
340
347
  class MandateOptions < ::Stripe::RequestParams
@@ -3,17 +3,74 @@
3
3
 
4
4
  module Stripe
5
5
  class PaymentAttemptRecordReportAuthenticatedParams < ::Stripe::RequestParams
6
+ class PaymentMethodDetails < ::Stripe::RequestParams
7
+ class Card < ::Stripe::RequestParams
8
+ class ThreeDSecure < ::Stripe::RequestParams
9
+ # For authenticated transactions: Indicates how the issuing bank authenticated the customer.
10
+ attr_accessor :authentication_flow
11
+ # The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree of authentication was performed.
12
+ attr_accessor :electronic_commerce_indicator
13
+ # The exemption requested via 3DS and accepted by the issuer at authentication time.
14
+ attr_accessor :exemption_indicator
15
+ # Indicates the outcome of 3D Secure authentication.
16
+ attr_accessor :result
17
+ # The version of 3D Secure that was used.
18
+ attr_accessor :version
19
+
20
+ def initialize(
21
+ authentication_flow: nil,
22
+ electronic_commerce_indicator: nil,
23
+ exemption_indicator: nil,
24
+ result: nil,
25
+ version: nil
26
+ )
27
+ @authentication_flow = authentication_flow
28
+ @electronic_commerce_indicator = electronic_commerce_indicator
29
+ @exemption_indicator = exemption_indicator
30
+ @result = result
31
+ @version = version
32
+ end
33
+ end
34
+ # Populated if this transaction used 3D Secure authentication.
35
+ attr_accessor :three_d_secure
36
+
37
+ def initialize(three_d_secure: nil)
38
+ @three_d_secure = three_d_secure
39
+ end
40
+ end
41
+ # Information about the card payment method used to make this payment.
42
+ attr_accessor :card
43
+ # The type of the payment method details. An additional hash is included on the payment_method_details with a name matching this value. It contains additional information specific to the type.
44
+ attr_accessor :type
45
+
46
+ def initialize(card: nil, type: nil)
47
+ @card = card
48
+ @type = type
49
+ end
50
+ end
6
51
  # When the reported payment was authenticated. Measured in seconds since the Unix epoch.
7
52
  attr_accessor :authenticated_at
8
53
  # Specifies which fields in the response should be expanded.
9
54
  attr_accessor :expand
10
55
  # Set of [key-value pairs](https://docs.stripe.com/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`.
11
56
  attr_accessor :metadata
57
+ # Payment evaluations associated with this reported payment.
58
+ attr_accessor :payment_evaluations
59
+ # Information about the Payment Method debited for this payment.
60
+ attr_accessor :payment_method_details
12
61
 
13
- def initialize(authenticated_at: nil, expand: nil, metadata: nil)
62
+ def initialize(
63
+ authenticated_at: nil,
64
+ expand: nil,
65
+ metadata: nil,
66
+ payment_evaluations: nil,
67
+ payment_method_details: nil
68
+ )
14
69
  @authenticated_at = authenticated_at
15
70
  @expand = expand
16
71
  @metadata = metadata
72
+ @payment_evaluations = payment_evaluations
73
+ @payment_method_details = payment_method_details
17
74
  end
18
75
  end
19
76
  end
@@ -19,11 +19,45 @@ module Stripe
19
19
  @cvc_check = cvc_check
20
20
  end
21
21
  end
22
+
23
+ class ThreeDSecure < ::Stripe::RequestParams
24
+ # For authenticated transactions: Indicates how the issuing bank authenticated the customer.
25
+ attr_accessor :authentication_flow
26
+ # The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree of authentication was performed.
27
+ attr_accessor :electronic_commerce_indicator
28
+ # The exemption requested via 3DS and accepted by the issuer at authentication time.
29
+ attr_accessor :exemption_indicator
30
+ # Indicates the outcome of 3D Secure authentication.
31
+ attr_accessor :result
32
+ # Additional information about why 3D Secure succeeded or failed, based on the `result`.
33
+ attr_accessor :result_reason
34
+ # The version of 3D Secure that was used.
35
+ attr_accessor :version
36
+
37
+ def initialize(
38
+ authentication_flow: nil,
39
+ electronic_commerce_indicator: nil,
40
+ exemption_indicator: nil,
41
+ result: nil,
42
+ result_reason: nil,
43
+ version: nil
44
+ )
45
+ @authentication_flow = authentication_flow
46
+ @electronic_commerce_indicator = electronic_commerce_indicator
47
+ @exemption_indicator = exemption_indicator
48
+ @result = result
49
+ @result_reason = result_reason
50
+ @version = version
51
+ end
52
+ end
22
53
  # Verification checks performed on the card.
23
54
  attr_accessor :checks
55
+ # Populated if this transaction used 3D Secure authentication.
56
+ attr_accessor :three_d_secure
24
57
 
25
- def initialize(checks: nil)
58
+ def initialize(checks: nil, three_d_secure: nil)
26
59
  @checks = checks
60
+ @three_d_secure = three_d_secure
27
61
  end
28
62
  end
29
63
  # Information about the card payment method used to make this payment.
@@ -19,11 +19,45 @@ module Stripe
19
19
  @cvc_check = cvc_check
20
20
  end
21
21
  end
22
+
23
+ class ThreeDSecure < ::Stripe::RequestParams
24
+ # For authenticated transactions: Indicates how the issuing bank authenticated the customer.
25
+ attr_accessor :authentication_flow
26
+ # The Electronic Commerce Indicator (ECI). A protocol-level field indicating what degree of authentication was performed.
27
+ attr_accessor :electronic_commerce_indicator
28
+ # The exemption requested via 3DS and accepted by the issuer at authentication time.
29
+ attr_accessor :exemption_indicator
30
+ # Indicates the outcome of 3D Secure authentication.
31
+ attr_accessor :result
32
+ # Additional information about why 3D Secure succeeded or failed, based on the `result`.
33
+ attr_accessor :result_reason
34
+ # The version of 3D Secure that was used.
35
+ attr_accessor :version
36
+
37
+ def initialize(
38
+ authentication_flow: nil,
39
+ electronic_commerce_indicator: nil,
40
+ exemption_indicator: nil,
41
+ result: nil,
42
+ result_reason: nil,
43
+ version: nil
44
+ )
45
+ @authentication_flow = authentication_flow
46
+ @electronic_commerce_indicator = electronic_commerce_indicator
47
+ @exemption_indicator = exemption_indicator
48
+ @result = result
49
+ @result_reason = result_reason
50
+ @version = version
51
+ end
52
+ end
22
53
  # Verification checks performed on the card.
23
54
  attr_accessor :checks
55
+ # Populated if this transaction used 3D Secure authentication.
56
+ attr_accessor :three_d_secure
24
57
 
25
- def initialize(checks: nil)
58
+ def initialize(checks: nil, three_d_secure: nil)
26
59
  @checks = checks
60
+ @three_d_secure = three_d_secure
27
61
  end
28
62
  end
29
63
  # Information about the card payment method used to make this payment.
@@ -72,11 +72,67 @@ module Stripe
72
72
  end
73
73
 
74
74
  class CardPresent < ::Stripe::RequestParams
75
+ class EvCharging < ::Stripe::RequestParams
76
+ # The carbon footprint avoided by the charging session, in grams of CO2.
77
+ attr_accessor :carbon_footprint_avoided_grams_co2
78
+ # The time the charging session ended, measured in seconds since the Unix epoch.
79
+ attr_accessor :charging_ended_at
80
+ # The power output capacity of the charging station, in kilowatts (kW).
81
+ attr_accessor :charging_power_output_capacity_kw
82
+ # The time the charging session started, measured in seconds since the Unix epoch.
83
+ attr_accessor :charging_started_at
84
+ # The type of connector used for the charging session.
85
+ attr_accessor :connector_type
86
+ # The estimated distance in kilometers or miles added to the vehicle during the charging session.
87
+ attr_accessor :estimated_range_added
88
+ # The estimated distance in kilometers or miles remaining in the vehicle after the charging session.
89
+ attr_accessor :estimated_range_left
90
+ # The maximum power dispensed during the charging session, in kilowatts (kW).
91
+ attr_accessor :maximum_power_dispensed_kw
92
+
93
+ def initialize(
94
+ carbon_footprint_avoided_grams_co2: nil,
95
+ charging_ended_at: nil,
96
+ charging_power_output_capacity_kw: nil,
97
+ charging_started_at: nil,
98
+ connector_type: nil,
99
+ estimated_range_added: nil,
100
+ estimated_range_left: nil,
101
+ maximum_power_dispensed_kw: nil
102
+ )
103
+ @carbon_footprint_avoided_grams_co2 = carbon_footprint_avoided_grams_co2
104
+ @charging_ended_at = charging_ended_at
105
+ @charging_power_output_capacity_kw = charging_power_output_capacity_kw
106
+ @charging_started_at = charging_started_at
107
+ @connector_type = connector_type
108
+ @estimated_range_added = estimated_range_added
109
+ @estimated_range_left = estimated_range_left
110
+ @maximum_power_dispensed_kw = maximum_power_dispensed_kw
111
+ end
112
+ end
113
+
114
+ class FleetData < ::Stripe::RequestParams
115
+ # The type of product being purchased at this line item.
116
+ attr_accessor :product_type
117
+ # The type of service received at the acceptor location.
118
+ attr_accessor :service_type
119
+
120
+ def initialize(product_type: nil, service_type: nil)
121
+ @product_type = product_type
122
+ @service_type = service_type
123
+ end
124
+ end
75
125
  # Identifier that categorizes the items being purchased using a standardized commodity scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, and so on.
76
126
  attr_accessor :commodity_code
127
+ # EV charging data for this line item.
128
+ attr_accessor :ev_charging
129
+ # Fleet data for this line item.
130
+ attr_accessor :fleet_data
77
131
 
78
- def initialize(commodity_code: nil)
132
+ def initialize(commodity_code: nil, ev_charging: nil, fleet_data: nil)
79
133
  @commodity_code = commodity_code
134
+ @ev_charging = ev_charging
135
+ @fleet_data = fleet_data
80
136
  end
81
137
  end
82
138
 
@@ -81,11 +81,67 @@ module Stripe
81
81
  end
82
82
 
83
83
  class CardPresent < ::Stripe::RequestParams
84
+ class EvCharging < ::Stripe::RequestParams
85
+ # The carbon footprint avoided by the charging session, in grams of CO2.
86
+ attr_accessor :carbon_footprint_avoided_grams_co2
87
+ # The time the charging session ended, measured in seconds since the Unix epoch.
88
+ attr_accessor :charging_ended_at
89
+ # The power output capacity of the charging station, in kilowatts (kW).
90
+ attr_accessor :charging_power_output_capacity_kw
91
+ # The time the charging session started, measured in seconds since the Unix epoch.
92
+ attr_accessor :charging_started_at
93
+ # The type of connector used for the charging session.
94
+ attr_accessor :connector_type
95
+ # The estimated distance in kilometers or miles added to the vehicle during the charging session.
96
+ attr_accessor :estimated_range_added
97
+ # The estimated distance in kilometers or miles remaining in the vehicle after the charging session.
98
+ attr_accessor :estimated_range_left
99
+ # The maximum power dispensed during the charging session, in kilowatts (kW).
100
+ attr_accessor :maximum_power_dispensed_kw
101
+
102
+ def initialize(
103
+ carbon_footprint_avoided_grams_co2: nil,
104
+ charging_ended_at: nil,
105
+ charging_power_output_capacity_kw: nil,
106
+ charging_started_at: nil,
107
+ connector_type: nil,
108
+ estimated_range_added: nil,
109
+ estimated_range_left: nil,
110
+ maximum_power_dispensed_kw: nil
111
+ )
112
+ @carbon_footprint_avoided_grams_co2 = carbon_footprint_avoided_grams_co2
113
+ @charging_ended_at = charging_ended_at
114
+ @charging_power_output_capacity_kw = charging_power_output_capacity_kw
115
+ @charging_started_at = charging_started_at
116
+ @connector_type = connector_type
117
+ @estimated_range_added = estimated_range_added
118
+ @estimated_range_left = estimated_range_left
119
+ @maximum_power_dispensed_kw = maximum_power_dispensed_kw
120
+ end
121
+ end
122
+
123
+ class FleetData < ::Stripe::RequestParams
124
+ # The type of product being purchased at this line item.
125
+ attr_accessor :product_type
126
+ # The type of service received at the acceptor location.
127
+ attr_accessor :service_type
128
+
129
+ def initialize(product_type: nil, service_type: nil)
130
+ @product_type = product_type
131
+ @service_type = service_type
132
+ end
133
+ end
84
134
  # Identifier that categorizes the items being purchased using a standardized commodity scheme such as (but not limited to) UNSPSC, NAICS, NAPCS, and so on.
85
135
  attr_accessor :commodity_code
136
+ # EV charging data for this line item.
137
+ attr_accessor :ev_charging
138
+ # Fleet data for this line item.
139
+ attr_accessor :fleet_data
86
140
 
87
- def initialize(commodity_code: nil)
141
+ def initialize(commodity_code: nil, ev_charging: nil, fleet_data: nil)
88
142
  @commodity_code = commodity_code
143
+ @ev_charging = ev_charging
144
+ @fleet_data = fleet_data
89
145
  end
90
146
  end
91
147
 
@@ -2321,6 +2377,7 @@ module Stripe
2321
2377
  end
2322
2378
  end
2323
2379
 
2380
+ class AeonPay < ::Stripe::RequestParams; end
2324
2381
  class Affirm < ::Stripe::RequestParams; end
2325
2382
  class AfterpayClearpay < ::Stripe::RequestParams; end
2326
2383
  class Alipay < ::Stripe::RequestParams; end
@@ -2339,6 +2396,8 @@ module Stripe
2339
2396
  end
2340
2397
  end
2341
2398
 
2399
+ class AuPay < ::Stripe::RequestParams; end
2400
+
2342
2401
  class BacsDebit < ::Stripe::RequestParams
2343
2402
  # Account number of the bank account that the funds will be debited from.
2344
2403
  attr_accessor :account_number
@@ -2421,6 +2480,7 @@ module Stripe
2421
2480
  class Cashapp < ::Stripe::RequestParams; end
2422
2481
  class Crypto < ::Stripe::RequestParams; end
2423
2482
  class CustomerBalance < ::Stripe::RequestParams; end
2483
+ class Dbarai < ::Stripe::RequestParams; end
2424
2484
 
2425
2485
  class Eps < ::Stripe::RequestParams
2426
2486
  # The customer's bank.
@@ -2506,6 +2566,7 @@ module Stripe
2506
2566
  class KrCard < ::Stripe::RequestParams; end
2507
2567
  class Link < ::Stripe::RequestParams; end
2508
2568
  class MbWay < ::Stripe::RequestParams; end
2569
+ class Merpay < ::Stripe::RequestParams; end
2509
2570
  class Mobilepay < ::Stripe::RequestParams; end
2510
2571
  class Multibanco < ::Stripe::RequestParams; end
2511
2572
 
@@ -2734,6 +2795,8 @@ module Stripe
2734
2795
  class Zip < ::Stripe::RequestParams; end
2735
2796
  # If this is an `acss_debit` PaymentMethod, this hash contains details about the ACSS Debit payment method.
2736
2797
  attr_accessor :acss_debit
2798
+ # If this is a `aeon_pay` PaymentMethod, this hash contains details about the AEON Pay payment method.
2799
+ attr_accessor :aeon_pay
2737
2800
  # If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
2738
2801
  attr_accessor :affirm
2739
2802
  # If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
@@ -2748,6 +2811,8 @@ module Stripe
2748
2811
  attr_accessor :amazon_pay
2749
2812
  # If this is an `au_becs_debit` PaymentMethod, this hash contains details about the bank account.
2750
2813
  attr_accessor :au_becs_debit
2814
+ # If this is a `au_pay` PaymentMethod, this hash contains details about the au PAY payment method.
2815
+ attr_accessor :au_pay
2751
2816
  # If this is a `bacs_debit` PaymentMethod, this hash contains details about the Bacs Direct Debit bank account.
2752
2817
  attr_accessor :bacs_debit
2753
2818
  # If this is a `bancontact` PaymentMethod, this hash contains details about the Bancontact payment method.
@@ -2770,6 +2835,8 @@ module Stripe
2770
2835
  attr_accessor :crypto
2771
2836
  # If this is a `customer_balance` PaymentMethod, this hash contains details about the CustomerBalance payment method.
2772
2837
  attr_accessor :customer_balance
2838
+ # If this is a `dbarai` PaymentMethod, this hash contains details about the d-Barai payment method.
2839
+ attr_accessor :dbarai
2773
2840
  # If this is an `eps` PaymentMethod, this hash contains details about the EPS payment method.
2774
2841
  attr_accessor :eps
2775
2842
  # If this is an `fpx` PaymentMethod, this hash contains details about the FPX payment method.
@@ -2802,6 +2869,8 @@ module Stripe
2802
2869
  attr_accessor :link
2803
2870
  # If this is a MB WAY PaymentMethod, this hash contains details about the MB WAY payment method.
2804
2871
  attr_accessor :mb_way
2872
+ # If this is a `merpay` PaymentMethod, this hash contains details about the Merpay payment method.
2873
+ attr_accessor :merpay
2805
2874
  # Set of [key-value pairs](https://docs.stripe.com/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`.
2806
2875
  attr_accessor :metadata
2807
2876
  # If this is a `mobilepay` PaymentMethod, this hash contains details about the MobilePay payment method.
@@ -2887,6 +2956,7 @@ module Stripe
2887
2956
 
2888
2957
  def initialize(
2889
2958
  acss_debit: nil,
2959
+ aeon_pay: nil,
2890
2960
  affirm: nil,
2891
2961
  afterpay_clearpay: nil,
2892
2962
  alipay: nil,
@@ -2894,6 +2964,7 @@ module Stripe
2894
2964
  alma: nil,
2895
2965
  amazon_pay: nil,
2896
2966
  au_becs_debit: nil,
2967
+ au_pay: nil,
2897
2968
  bacs_debit: nil,
2898
2969
  bancontact: nil,
2899
2970
  billie: nil,
@@ -2905,6 +2976,7 @@ module Stripe
2905
2976
  cashapp: nil,
2906
2977
  crypto: nil,
2907
2978
  customer_balance: nil,
2979
+ dbarai: nil,
2908
2980
  eps: nil,
2909
2981
  fpx: nil,
2910
2982
  getflex: nil,
@@ -2921,6 +2993,7 @@ module Stripe
2921
2993
  kr_card: nil,
2922
2994
  link: nil,
2923
2995
  mb_way: nil,
2996
+ merpay: nil,
2924
2997
  metadata: nil,
2925
2998
  mobilepay: nil,
2926
2999
  multibanco: nil,
@@ -2964,6 +3037,7 @@ module Stripe
2964
3037
  zip: nil
2965
3038
  )
2966
3039
  @acss_debit = acss_debit
3040
+ @aeon_pay = aeon_pay
2967
3041
  @affirm = affirm
2968
3042
  @afterpay_clearpay = afterpay_clearpay
2969
3043
  @alipay = alipay
@@ -2971,6 +3045,7 @@ module Stripe
2971
3045
  @alma = alma
2972
3046
  @amazon_pay = amazon_pay
2973
3047
  @au_becs_debit = au_becs_debit
3048
+ @au_pay = au_pay
2974
3049
  @bacs_debit = bacs_debit
2975
3050
  @bancontact = bancontact
2976
3051
  @billie = billie
@@ -2982,6 +3057,7 @@ module Stripe
2982
3057
  @cashapp = cashapp
2983
3058
  @crypto = crypto
2984
3059
  @customer_balance = customer_balance
3060
+ @dbarai = dbarai
2985
3061
  @eps = eps
2986
3062
  @fpx = fpx
2987
3063
  @getflex = getflex
@@ -2998,6 +3074,7 @@ module Stripe
2998
3074
  @kr_card = kr_card
2999
3075
  @link = link
3000
3076
  @mb_way = mb_way
3077
+ @merpay = merpay
3001
3078
  @metadata = metadata
3002
3079
  @mobilepay = mobilepay
3003
3080
  @multibanco = multibanco
@@ -3226,6 +3303,15 @@ module Stripe
3226
3303
  end
3227
3304
 
3228
3305
  class BacsDebit < ::Stripe::RequestParams
3306
+ class FinancialConnections < ::Stripe::RequestParams
3307
+ # 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.
3308
+ attr_accessor :return_url
3309
+
3310
+ def initialize(return_url: nil)
3311
+ @return_url = return_url
3312
+ end
3313
+ end
3314
+
3229
3315
  class MandateOptions < ::Stripe::RequestParams
3230
3316
  # 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'.
3231
3317
  attr_accessor :reference_prefix
@@ -3234,6 +3320,8 @@ module Stripe
3234
3320
  @reference_prefix = reference_prefix
3235
3321
  end
3236
3322
  end
3323
+ # Additional fields for Financial Connections session creation.
3324
+ attr_accessor :financial_connections
3237
3325
  # Additional fields for Mandate creation
3238
3326
  attr_accessor :mandate_options
3239
3327
  # Indicates that you intend to make future payments with this PaymentIntent's payment method.
@@ -3252,11 +3340,13 @@ module Stripe
3252
3340
  attr_accessor :verification_method
3253
3341
 
3254
3342
  def initialize(
3343
+ financial_connections: nil,
3255
3344
  mandate_options: nil,
3256
3345
  setup_future_usage: nil,
3257
3346
  target_date: nil,
3258
3347
  verification_method: nil
3259
3348
  )
3349
+ @financial_connections = financial_connections
3260
3350
  @mandate_options = mandate_options
3261
3351
  @setup_future_usage = setup_future_usage
3262
3352
  @target_date = target_date