stripe 11.6.0 → 11.7.0.pre.beta.1

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 (37) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1319 -647
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +11 -0
  5. data/VERSION +1 -1
  6. data/lib/stripe/api_operations/request.rb +2 -1
  7. data/lib/stripe/api_version.rb +1 -0
  8. data/lib/stripe/object_types.rb +16 -0
  9. data/lib/stripe/request_signing_authenticator.rb +79 -0
  10. data/lib/stripe/resources/account_notice.rb +32 -0
  11. data/lib/stripe/resources/capital/financing_offer.rb +49 -0
  12. data/lib/stripe/resources/capital/financing_summary.rb +15 -0
  13. data/lib/stripe/resources/capital/financing_transaction.rb +27 -0
  14. data/lib/stripe/resources/financial_connections/account.rb +3 -0
  15. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +14 -0
  16. data/lib/stripe/resources/gift_cards/card.rb +59 -0
  17. data/lib/stripe/resources/gift_cards/transaction.rb +93 -0
  18. data/lib/stripe/resources/invoice.rb +97 -0
  19. data/lib/stripe/resources/invoice_payment.rb +12 -0
  20. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +88 -0
  21. data/lib/stripe/resources/margin.rb +37 -0
  22. data/lib/stripe/resources/order.rb +120 -0
  23. data/lib/stripe/resources/payment_intent.rb +50 -0
  24. data/lib/stripe/resources/quote.rb +104 -0
  25. data/lib/stripe/resources/quote_phase.rb +39 -0
  26. data/lib/stripe/resources/quote_preview_invoice.rb +43 -0
  27. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +11 -0
  28. data/lib/stripe/resources/subscription_schedule.rb +20 -0
  29. data/lib/stripe/resources/tax/form.rb +49 -0
  30. data/lib/stripe/resources/terminal/reader.rb +60 -0
  31. data/lib/stripe/resources.rb +15 -0
  32. data/lib/stripe/stripe_client.rb +62 -28
  33. data/lib/stripe/stripe_configuration.rb +2 -1
  34. data/lib/stripe/util.rb +8 -1
  35. data/lib/stripe/version.rb +1 -1
  36. data/lib/stripe.rb +54 -0
  37. metadata +19 -3
@@ -3,6 +3,7 @@
3
3
 
4
4
  require "stripe/resources/account"
5
5
  require "stripe/resources/account_link"
6
+ require "stripe/resources/account_notice"
6
7
  require "stripe/resources/account_session"
7
8
  require "stripe/resources/apple_pay_domain"
8
9
  require "stripe/resources/application_fee"
@@ -18,6 +19,9 @@ require "stripe/resources/billing/meter_event_summary"
18
19
  require "stripe/resources/billing_portal/configuration"
19
20
  require "stripe/resources/billing_portal/session"
20
21
  require "stripe/resources/capability"
22
+ require "stripe/resources/capital/financing_offer"
23
+ require "stripe/resources/capital/financing_summary"
24
+ require "stripe/resources/capital/financing_transaction"
21
25
  require "stripe/resources/card"
22
26
  require "stripe/resources/cash_balance"
23
27
  require "stripe/resources/charge"
@@ -44,20 +48,25 @@ require "stripe/resources/exchange_rate"
44
48
  require "stripe/resources/file"
45
49
  require "stripe/resources/file_link"
46
50
  require "stripe/resources/financial_connections/account"
51
+ require "stripe/resources/financial_connections/account_inferred_balance"
47
52
  require "stripe/resources/financial_connections/account_owner"
48
53
  require "stripe/resources/financial_connections/account_ownership"
49
54
  require "stripe/resources/financial_connections/session"
50
55
  require "stripe/resources/financial_connections/transaction"
51
56
  require "stripe/resources/forwarding/request"
52
57
  require "stripe/resources/funding_instructions"
58
+ require "stripe/resources/gift_cards/card"
59
+ require "stripe/resources/gift_cards/transaction"
53
60
  require "stripe/resources/identity/verification_report"
54
61
  require "stripe/resources/identity/verification_session"
55
62
  require "stripe/resources/invoice"
56
63
  require "stripe/resources/invoice_item"
57
64
  require "stripe/resources/invoice_line_item"
65
+ require "stripe/resources/invoice_payment"
58
66
  require "stripe/resources/issuing/authorization"
59
67
  require "stripe/resources/issuing/card"
60
68
  require "stripe/resources/issuing/cardholder"
69
+ require "stripe/resources/issuing/credit_underwriting_record"
61
70
  require "stripe/resources/issuing/dispute"
62
71
  require "stripe/resources/issuing/personalization_design"
63
72
  require "stripe/resources/issuing/physical_bundle"
@@ -66,6 +75,8 @@ require "stripe/resources/issuing/transaction"
66
75
  require "stripe/resources/line_item"
67
76
  require "stripe/resources/login_link"
68
77
  require "stripe/resources/mandate"
78
+ require "stripe/resources/margin"
79
+ require "stripe/resources/order"
69
80
  require "stripe/resources/payment_intent"
70
81
  require "stripe/resources/payment_link"
71
82
  require "stripe/resources/payment_method"
@@ -79,6 +90,9 @@ require "stripe/resources/product"
79
90
  require "stripe/resources/product_feature"
80
91
  require "stripe/resources/promotion_code"
81
92
  require "stripe/resources/quote"
93
+ require "stripe/resources/quote_phase"
94
+ require "stripe/resources/quote_preview_invoice"
95
+ require "stripe/resources/quote_preview_subscription_schedule"
82
96
  require "stripe/resources/radar/early_fraud_warning"
83
97
  require "stripe/resources/radar/value_list"
84
98
  require "stripe/resources/radar/value_list_item"
@@ -98,6 +112,7 @@ require "stripe/resources/subscription_item"
98
112
  require "stripe/resources/subscription_schedule"
99
113
  require "stripe/resources/tax/calculation"
100
114
  require "stripe/resources/tax/calculation_line_item"
115
+ require "stripe/resources/tax/form"
101
116
  require "stripe/resources/tax/registration"
102
117
  require "stripe/resources/tax/settings"
103
118
  require "stripe/resources/tax/transaction"
@@ -213,9 +213,10 @@ module Stripe
213
213
  end
214
214
 
215
215
  def execute_request(method, path,
216
- api_base: nil, api_key: nil, headers: {}, params: {}, usage: [])
216
+ api_base: nil, api_key: nil,
217
+ headers: {}, params: {}, api_mode: nil, usage: [])
217
218
  http_resp, api_key = execute_request_internal(
218
- method, path, api_base, api_key, headers, params, usage
219
+ method, path, api_base, api_key, headers, params, api_mode, usage
219
220
  )
220
221
 
221
222
  begin
@@ -246,6 +247,7 @@ module Stripe
246
247
  def execute_request_stream(method, path,
247
248
  api_base: nil, api_key: nil, usage: [],
248
249
  headers: {}, params: {},
250
+ api_mode: nil,
249
251
  &read_body_chunk_block)
250
252
  unless block_given?
251
253
  raise ArgumentError,
@@ -253,7 +255,8 @@ module Stripe
253
255
  end
254
256
 
255
257
  http_resp, api_key = execute_request_internal(
256
- method, path, api_base, api_key, headers, params, usage, &read_body_chunk_block
258
+ method, path, api_base, api_key,
259
+ headers, params, api_mode, usage, &read_body_chunk_block
257
260
  )
258
261
 
259
262
  # When the read_body_chunk_block is given, we no longer have access to the
@@ -432,8 +435,8 @@ module Stripe
432
435
  end
433
436
 
434
437
  private def execute_request_internal(method, path,
435
- api_base, api_key, headers, params, usage,
436
- &read_body_chunk_block)
438
+ api_base, api_key, headers, params,
439
+ api_mode, usage, &read_body_chunk_block)
437
440
  raise ArgumentError, "method should be a symbol" \
438
441
  unless method.is_a?(Symbol)
439
442
  raise ArgumentError, "path should be a string" \
@@ -441,9 +444,10 @@ module Stripe
441
444
 
442
445
  api_base ||= config.api_base
443
446
  api_key ||= config.api_key
447
+ authenticator ||= config.authenticator
444
448
  params = Util.objects_to_ids(params)
445
449
 
446
- check_api_key!(api_key)
450
+ check_keys!(api_key, authenticator)
447
451
 
448
452
  body_params = nil
449
453
  query_params = nil
@@ -456,8 +460,9 @@ module Stripe
456
460
 
457
461
  query_params, path = merge_query_params(query_params, path)
458
462
 
459
- headers = request_headers(api_key, method)
463
+ headers = request_headers(api_key, method, api_mode)
460
464
  .update(Util.normalize_headers(headers))
465
+
461
466
  url = api_url(path, api_base)
462
467
 
463
468
  # Merge given query parameters with any already encoded in the path.
@@ -468,13 +473,16 @@ module Stripe
468
473
  # a log-friendly variant of the encoded form. File objects are displayed
469
474
  # as such instead of as their file contents.
470
475
  body, body_log =
471
- body_params ? encode_body(body_params, headers) : [nil, nil]
476
+ body_params ? encode_body(body_params, headers, api_mode) : [nil, nil]
477
+
478
+ authenticator.authenticate(method, headers, body) unless api_key
472
479
 
473
480
  # stores information on the request we're about to make so that we don't
474
481
  # have to pass as many parameters around for logging.
475
482
  context = RequestLogContext.new
476
483
  context.account = headers["Stripe-Account"]
477
484
  context.api_key = api_key
485
+ context.authenticator = authenticator
478
486
  context.api_version = headers["Stripe-Version"]
479
487
  context.body = body_log
480
488
  context.idempotency_key = headers["Idempotency-Key"]
@@ -511,8 +519,16 @@ module Stripe
511
519
  (api_base || config.api_base) + url
512
520
  end
513
521
 
514
- private def check_api_key!(api_key)
515
- unless api_key
522
+ private def check_keys!(api_key, authenticator)
523
+ if api_key && authenticator
524
+ raise AuthenticationError, "Can't specify both API key " \
525
+ "and authenticator. Either set your API key" \
526
+ 'using "Stripe.api_key = <API-KEY>", or set your authenticator ' \
527
+ 'using "Stripe.authenticator = <AUTHENTICATOR>"' \
528
+ end
529
+
530
+ unless api_key || authenticator
531
+ # Default to missing API key error message for general users.
516
532
  raise AuthenticationError, "No API key provided. " \
517
533
  'Set your API key using "Stripe.api_key = <API-KEY>". ' \
518
534
  "You can generate API keys from the Stripe web interface. " \
@@ -531,7 +547,7 @@ module Stripe
531
547
  # Encodes a set of body parameters using multipart if `Content-Type` is set
532
548
  # for that, or standard form-encoding otherwise. Returns the encoded body
533
549
  # and a version of the encoded body that's safe to be logged.
534
- private def encode_body(body_params, headers)
550
+ private def encode_body(body_params, headers, api_mode)
535
551
  body = nil
536
552
  flattened_params = Util.flatten_params(body_params)
537
553
 
@@ -547,15 +563,22 @@ module Stripe
547
563
  flattened_params =
548
564
  flattened_params.map { |k, v| [k, v.is_a?(String) ? v : v.to_s] }.to_h
549
565
 
566
+ elsif api_mode == :preview
567
+ body = JSON.generate(body_params)
568
+ headers["Content-Type"] = "application/json"
550
569
  else
551
570
  body = Util.encode_parameters(body_params)
552
571
  end
553
572
 
554
- # We don't use `Util.encode_parameters` partly as an optimization (to not
555
- # redo work we've already done), and partly because the encoded forms of
556
- # certain characters introduce a lot of visual noise and it's nice to
557
- # have a clearer format for logs.
558
- body_log = flattened_params.map { |k, v| "#{k}=#{v}" }.join("&")
573
+ body_log = if api_mode == :preview
574
+ body
575
+ else
576
+ # We don't use `Util.encode_parameters` partly as an optimization (to
577
+ # not redo work we've already done), and partly because the encoded
578
+ # forms of certain characters introduce a lot of visual noise and it's
579
+ # nice to have a clearer format for logs.
580
+ flattened_params.map { |k, v| "#{k}=#{v}" }.join("&")
581
+ end
559
582
 
560
583
  [body, body_log]
561
584
  end
@@ -741,10 +764,11 @@ module Stripe
741
764
  end
742
765
 
743
766
  private def specific_api_error(resp, error_data, context)
767
+ message = error_data[:message]
744
768
  Util.log_error("Stripe API error",
745
769
  status: resp.http_status,
746
770
  error_code: error_data[:code],
747
- error_message: error_data[:message],
771
+ error_message: message,
748
772
  error_param: error_data[:param],
749
773
  error_type: error_data[:type],
750
774
  idempotency_key: context.idempotency_key,
@@ -765,26 +789,26 @@ module Stripe
765
789
  when 400, 404
766
790
  case error_data[:type]
767
791
  when "idempotency_error"
768
- IdempotencyError.new(error_data[:message], **opts)
792
+ IdempotencyError.new(message, **opts)
769
793
  else
770
794
  InvalidRequestError.new(
771
- error_data[:message], error_data[:param],
795
+ message, error_data[:param],
772
796
  **opts
773
797
  )
774
798
  end
775
799
  when 401
776
- AuthenticationError.new(error_data[:message], **opts)
800
+ AuthenticationError.new(message, **opts)
777
801
  when 402
778
802
  CardError.new(
779
- error_data[:message], error_data[:param],
803
+ message, error_data[:param],
780
804
  **opts
781
805
  )
782
806
  when 403
783
- PermissionError.new(error_data[:message], **opts)
807
+ PermissionError.new(message, **opts)
784
808
  when 429
785
- RateLimitError.new(error_data[:message], **opts)
809
+ RateLimitError.new(message, **opts)
786
810
  else
787
- APIError.new(error_data[:message], **opts)
811
+ APIError.new(message, **opts)
788
812
  end
789
813
  end
790
814
 
@@ -852,16 +876,20 @@ module Stripe
852
876
  message + "\n\n(Network error: #{error.message})"
853
877
  end
854
878
 
855
- private def request_headers(api_key, method)
879
+ private def request_headers(api_key, method, api_mode)
856
880
  user_agent = "Stripe/v1 RubyBindings/#{Stripe::VERSION}"
857
881
  user_agent += " " + format_app_info(Stripe.app_info) unless Stripe.app_info.nil?
858
882
 
859
883
  headers = {
860
884
  "User-Agent" => user_agent,
861
885
  "Authorization" => "Bearer #{api_key}",
862
- "Content-Type" => "application/x-www-form-urlencoded",
863
886
  }
864
887
 
888
+ if api_mode != :preview
889
+ # TODO: (major) don't set Content-Type if method is not post
890
+ headers["Content-Type"] = "application/x-www-form-urlencoded"
891
+ end
892
+
865
893
  if config.enable_telemetry? && !@last_request_metrics.nil?
866
894
  headers["X-Stripe-Client-Telemetry"] = JSON.generate(
867
895
  last_request_metrics: @last_request_metrics.payload
@@ -874,7 +902,12 @@ module Stripe
874
902
  headers["Idempotency-Key"] ||= SecureRandom.uuid
875
903
  end
876
904
 
877
- headers["Stripe-Version"] = config.api_version if config.api_version
905
+ if api_mode == :preview
906
+ headers["Stripe-Version"] = ApiVersion::PREVIEW
907
+ elsif config.api_version
908
+ headers["Stripe-Version"] = config.api_version
909
+ end
910
+
878
911
  headers["Stripe-Account"] = config.stripe_account if config.stripe_account
879
912
 
880
913
  user_agent = @system_profiler.user_agent
@@ -957,7 +990,8 @@ module Stripe
957
990
  # that we can log certain information. It's useful because it means that we
958
991
  # don't have to pass around as many parameters.
959
992
  class RequestLogContext
960
- attr_accessor :body, :account, :api_key, :api_version, :idempotency_key, :method, :path, :query, :request_id
993
+ attr_accessor :body, :account, :api_key, :authenticator, :api_version, :idempotency_key, :method, :path, :query,
994
+ :request_id
961
995
 
962
996
  # The idea with this method is that we might want to update some of
963
997
  # context information because a response that we've received from the API
@@ -25,7 +25,7 @@ module Stripe
25
25
  # If `.logger` is set, the value of `.log_level` is ignored. The decision on
26
26
  # what levels to print is entirely deferred to the logger.
27
27
  class StripeConfiguration
28
- attr_accessor :api_key, :api_version, :client_id, :enable_telemetry, :logger, :stripe_account
28
+ attr_accessor :api_key, :api_version, :authenticator, :client_id, :enable_telemetry, :logger, :stripe_account
29
29
 
30
30
  attr_reader :api_base, :uploads_base, :connect_base, :ca_bundle_path, :log_level, :initial_network_retry_delay,
31
31
  # rubocop:todo Layout/LineLength
@@ -50,6 +50,7 @@ module Stripe
50
50
 
51
51
  def initialize
52
52
  @api_version = ApiVersion::CURRENT
53
+
53
54
  @ca_bundle_path = Stripe::DEFAULT_CA_BUNDLE_PATH
54
55
  @enable_telemetry = true
55
56
  @verify_ssl_certs = true
data/lib/stripe/util.rb CHANGED
@@ -7,6 +7,7 @@ module Stripe
7
7
  # Options that a user is allowed to specify.
8
8
  OPTS_USER_SPECIFIED = Set[
9
9
  :api_key,
10
+ :authenticator,
10
11
  :idempotency_key,
11
12
  :stripe_account,
12
13
  :stripe_version
@@ -279,7 +280,13 @@ module Stripe
279
280
  when String
280
281
  { api_key: opts }
281
282
  when Hash
282
- check_api_key!(opts.fetch(:api_key)) if opts.key?(:api_key)
283
+ # If the user is using request signing for authentication,
284
+ # no need to check the api_key per request.
285
+ if !(opts.key?(:client) &&
286
+ opts.fetch(:client).config.authenticator) &&
287
+ opts.key?(:api_key)
288
+ check_api_key!(opts.fetch(:api_key))
289
+ end
283
290
  # Explicitly use dup here instead of clone to avoid preserving freeze
284
291
  # state on input params.
285
292
  opts.dup
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Stripe
4
- VERSION = "11.6.0"
4
+ VERSION = "11.7.0-beta.1"
5
5
  end
data/lib/stripe.rb CHANGED
@@ -13,6 +13,7 @@ require "set"
13
13
  require "socket"
14
14
  require "uri"
15
15
  require "forwardable"
16
+ require "base64"
16
17
 
17
18
  # Version
18
19
  require "stripe/api_version"
@@ -45,6 +46,7 @@ require "stripe/api_resource_test_helpers"
45
46
  require "stripe/singleton_api_resource"
46
47
  require "stripe/webhook"
47
48
  require "stripe/stripe_configuration"
49
+ require "stripe/request_signing_authenticator"
48
50
 
49
51
  # Named API resources
50
52
  require "stripe/resources"
@@ -71,6 +73,7 @@ module Stripe
71
73
 
72
74
  # User configurable options
73
75
  def_delegators :@config, :api_key, :api_key=
76
+ def_delegators :@config, :authenticator, :authenticator=
74
77
  def_delegators :@config, :api_version, :api_version=
75
78
  def_delegators :@config, :stripe_account, :stripe_account=
76
79
  def_delegators :@config, :api_base, :api_base=
@@ -117,6 +120,57 @@ module Stripe
117
120
  version: version,
118
121
  }
119
122
  end
123
+
124
+ def self.add_beta_version(beta_name, version)
125
+ if api_version.include?("; #{beta_name}=")
126
+ raise "Stripe version header #{api_version} already contains entry for beta #{beta_name}"
127
+ end
128
+
129
+ self.api_version = "#{api_version}; #{beta_name}=#{version}"
130
+ end
131
+
132
+ class Preview
133
+ def self._get_default_opts(opts)
134
+ { api_mode: :preview }.merge(opts)
135
+ end
136
+
137
+ def self.get(url, opts = {})
138
+ Stripe.raw_request(:get, url, {}, _get_default_opts(opts))
139
+ end
140
+
141
+ def self.post(url, params = {}, opts = {})
142
+ Stripe.raw_request(:post, url, params, _get_default_opts(opts))
143
+ end
144
+
145
+ def self.delete(url, opts = {})
146
+ Stripe.raw_request(:delete, url, {}, _get_default_opts(opts))
147
+ end
148
+ end
149
+
150
+ class RawRequest
151
+ include Stripe::APIOperations::Request
152
+
153
+ def initialize
154
+ @opts = {}
155
+ end
156
+
157
+ def execute(method, url, params = {}, opts = {}, usage = [])
158
+ resp, = execute_resource_request(method, url, params, opts, usage)
159
+
160
+ resp
161
+ end
162
+ end
163
+
164
+ # Sends a request to Stripe REST API
165
+ def self.raw_request(method, url, params = {}, opts = {})
166
+ req = RawRequest.new
167
+ req.execute(method, url, params, opts, ["raw_request"])
168
+ end
169
+
170
+ def self.deserialize(data)
171
+ data = JSON.parse(data) if data.is_a?(String)
172
+ Util.convert_to_stripe_object(data, {})
173
+ end
120
174
  end
121
175
 
122
176
  Stripe.log_level = ENV["STRIPE_LOG"] unless ENV["STRIPE_LOG"].nil?
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stripe
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.6.0
4
+ version: 11.7.0.pre.beta.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
@@ -51,9 +51,11 @@ files:
51
51
  - lib/stripe/multipart_encoder.rb
52
52
  - lib/stripe/oauth.rb
53
53
  - lib/stripe/object_types.rb
54
+ - lib/stripe/request_signing_authenticator.rb
54
55
  - lib/stripe/resources.rb
55
56
  - lib/stripe/resources/account.rb
56
57
  - lib/stripe/resources/account_link.rb
58
+ - lib/stripe/resources/account_notice.rb
57
59
  - lib/stripe/resources/account_session.rb
58
60
  - lib/stripe/resources/alipay_account.rb
59
61
  - lib/stripe/resources/apple_pay_domain.rb
@@ -70,6 +72,9 @@ files:
70
72
  - lib/stripe/resources/billing_portal/configuration.rb
71
73
  - lib/stripe/resources/billing_portal/session.rb
72
74
  - lib/stripe/resources/capability.rb
75
+ - lib/stripe/resources/capital/financing_offer.rb
76
+ - lib/stripe/resources/capital/financing_summary.rb
77
+ - lib/stripe/resources/capital/financing_transaction.rb
73
78
  - lib/stripe/resources/card.rb
74
79
  - lib/stripe/resources/cash_balance.rb
75
80
  - lib/stripe/resources/charge.rb
@@ -96,20 +101,25 @@ files:
96
101
  - lib/stripe/resources/file.rb
97
102
  - lib/stripe/resources/file_link.rb
98
103
  - lib/stripe/resources/financial_connections/account.rb
104
+ - lib/stripe/resources/financial_connections/account_inferred_balance.rb
99
105
  - lib/stripe/resources/financial_connections/account_owner.rb
100
106
  - lib/stripe/resources/financial_connections/account_ownership.rb
101
107
  - lib/stripe/resources/financial_connections/session.rb
102
108
  - lib/stripe/resources/financial_connections/transaction.rb
103
109
  - lib/stripe/resources/forwarding/request.rb
104
110
  - lib/stripe/resources/funding_instructions.rb
111
+ - lib/stripe/resources/gift_cards/card.rb
112
+ - lib/stripe/resources/gift_cards/transaction.rb
105
113
  - lib/stripe/resources/identity/verification_report.rb
106
114
  - lib/stripe/resources/identity/verification_session.rb
107
115
  - lib/stripe/resources/invoice.rb
108
116
  - lib/stripe/resources/invoice_item.rb
109
117
  - lib/stripe/resources/invoice_line_item.rb
118
+ - lib/stripe/resources/invoice_payment.rb
110
119
  - lib/stripe/resources/issuing/authorization.rb
111
120
  - lib/stripe/resources/issuing/card.rb
112
121
  - lib/stripe/resources/issuing/cardholder.rb
122
+ - lib/stripe/resources/issuing/credit_underwriting_record.rb
113
123
  - lib/stripe/resources/issuing/dispute.rb
114
124
  - lib/stripe/resources/issuing/personalization_design.rb
115
125
  - lib/stripe/resources/issuing/physical_bundle.rb
@@ -118,6 +128,8 @@ files:
118
128
  - lib/stripe/resources/line_item.rb
119
129
  - lib/stripe/resources/login_link.rb
120
130
  - lib/stripe/resources/mandate.rb
131
+ - lib/stripe/resources/margin.rb
132
+ - lib/stripe/resources/order.rb
121
133
  - lib/stripe/resources/payment_intent.rb
122
134
  - lib/stripe/resources/payment_link.rb
123
135
  - lib/stripe/resources/payment_method.rb
@@ -131,6 +143,9 @@ files:
131
143
  - lib/stripe/resources/product_feature.rb
132
144
  - lib/stripe/resources/promotion_code.rb
133
145
  - lib/stripe/resources/quote.rb
146
+ - lib/stripe/resources/quote_phase.rb
147
+ - lib/stripe/resources/quote_preview_invoice.rb
148
+ - lib/stripe/resources/quote_preview_subscription_schedule.rb
134
149
  - lib/stripe/resources/radar/early_fraud_warning.rb
135
150
  - lib/stripe/resources/radar/value_list.rb
136
151
  - lib/stripe/resources/radar/value_list_item.rb
@@ -151,6 +166,7 @@ files:
151
166
  - lib/stripe/resources/subscription_schedule.rb
152
167
  - lib/stripe/resources/tax/calculation.rb
153
168
  - lib/stripe/resources/tax/calculation_line_item.rb
169
+ - lib/stripe/resources/tax/form.rb
154
170
  - lib/stripe/resources/tax/registration.rb
155
171
  - lib/stripe/resources/tax/settings.rb
156
172
  - lib/stripe/resources/tax/transaction.rb
@@ -212,9 +228,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
212
228
  version: 2.3.0
213
229
  required_rubygems_version: !ruby/object:Gem::Requirement
214
230
  requirements:
215
- - - ">="
231
+ - - ">"
216
232
  - !ruby/object:Gem::Version
217
- version: '0'
233
+ version: 1.3.1
218
234
  requirements: []
219
235
  rubygems_version: 3.3.27
220
236
  signing_key: