stripe 10.10.0.pre.beta.1 → 10.10.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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +47 -281
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +18 -11
  5. data/VERSION +1 -1
  6. data/lib/stripe/api_operations/request.rb +1 -2
  7. data/lib/stripe/api_version.rb +0 -1
  8. data/lib/stripe/object_types.rb +0 -23
  9. data/lib/stripe/resources/customer.rb +0 -11
  10. data/lib/stripe/resources/financial_connections/account.rb +0 -3
  11. data/lib/stripe/resources/invoice.rb +0 -53
  12. data/lib/stripe/resources/invoice_line_item.rb +15 -0
  13. data/lib/stripe/resources/payment_intent.rb +0 -50
  14. data/lib/stripe/resources/quote.rb +0 -104
  15. data/lib/stripe/resources/subscription_schedule.rb +0 -20
  16. data/lib/stripe/resources/tax_id.rb +14 -16
  17. data/lib/stripe/resources/terminal/reader.rb +0 -60
  18. data/lib/stripe/resources.rb +0 -22
  19. data/lib/stripe/stripe_client.rb +28 -62
  20. data/lib/stripe/stripe_configuration.rb +1 -2
  21. data/lib/stripe/util.rb +1 -8
  22. data/lib/stripe/version.rb +1 -1
  23. data/lib/stripe.rb +0 -46
  24. metadata +4 -27
  25. data/lib/stripe/request_signing_authenticator.rb +0 -79
  26. data/lib/stripe/resources/account_notice.rb +0 -32
  27. data/lib/stripe/resources/capital/financing_offer.rb +0 -49
  28. data/lib/stripe/resources/capital/financing_summary.rb +0 -15
  29. data/lib/stripe/resources/capital/financing_transaction.rb +0 -27
  30. data/lib/stripe/resources/confirmation_token.rb +0 -16
  31. data/lib/stripe/resources/customer_entitlement.rb +0 -12
  32. data/lib/stripe/resources/customer_entitlement_summary.rb +0 -12
  33. data/lib/stripe/resources/entitlements/event.rb +0 -26
  34. data/lib/stripe/resources/entitlements/feature.rb +0 -38
  35. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -14
  36. data/lib/stripe/resources/gift_cards/card.rb +0 -59
  37. data/lib/stripe/resources/gift_cards/transaction.rb +0 -93
  38. data/lib/stripe/resources/invoice_payment.rb +0 -12
  39. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -88
  40. data/lib/stripe/resources/issuing/personalization_design.rb +0 -119
  41. data/lib/stripe/resources/issuing/physical_bundle.rb +0 -26
  42. data/lib/stripe/resources/margin.rb +0 -37
  43. data/lib/stripe/resources/order.rb +0 -120
  44. data/lib/stripe/resources/quote_phase.rb +0 -39
  45. data/lib/stripe/resources/quote_preview_invoice.rb +0 -43
  46. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -11
  47. data/lib/stripe/resources/tax/form.rb +0 -49
@@ -3,7 +3,6 @@
3
3
 
4
4
  require "stripe/resources/account"
5
5
  require "stripe/resources/account_link"
6
- require "stripe/resources/account_notice"
7
6
  require "stripe/resources/account_session"
8
7
  require "stripe/resources/apple_pay_domain"
9
8
  require "stripe/resources/application_fee"
@@ -15,9 +14,6 @@ require "stripe/resources/bank_account"
15
14
  require "stripe/resources/billing_portal/configuration"
16
15
  require "stripe/resources/billing_portal/session"
17
16
  require "stripe/resources/capability"
18
- require "stripe/resources/capital/financing_offer"
19
- require "stripe/resources/capital/financing_summary"
20
- require "stripe/resources/capital/financing_transaction"
21
17
  require "stripe/resources/card"
22
18
  require "stripe/resources/cash_balance"
23
19
  require "stripe/resources/charge"
@@ -25,7 +21,6 @@ require "stripe/resources/checkout/session"
25
21
  require "stripe/resources/climate/order"
26
22
  require "stripe/resources/climate/product"
27
23
  require "stripe/resources/climate/supplier"
28
- require "stripe/resources/confirmation_token"
29
24
  require "stripe/resources/country_spec"
30
25
  require "stripe/resources/coupon"
31
26
  require "stripe/resources/credit_note"
@@ -33,47 +28,34 @@ require "stripe/resources/credit_note_line_item"
33
28
  require "stripe/resources/customer"
34
29
  require "stripe/resources/customer_balance_transaction"
35
30
  require "stripe/resources/customer_cash_balance_transaction"
36
- require "stripe/resources/customer_entitlement"
37
- require "stripe/resources/customer_entitlement_summary"
38
31
  require "stripe/resources/customer_session"
39
32
  require "stripe/resources/discount"
40
33
  require "stripe/resources/dispute"
41
- require "stripe/resources/entitlements/event"
42
- require "stripe/resources/entitlements/feature"
43
34
  require "stripe/resources/ephemeral_key"
44
35
  require "stripe/resources/event"
45
36
  require "stripe/resources/exchange_rate"
46
37
  require "stripe/resources/file"
47
38
  require "stripe/resources/file_link"
48
39
  require "stripe/resources/financial_connections/account"
49
- require "stripe/resources/financial_connections/account_inferred_balance"
50
40
  require "stripe/resources/financial_connections/account_owner"
51
41
  require "stripe/resources/financial_connections/account_ownership"
52
42
  require "stripe/resources/financial_connections/session"
53
43
  require "stripe/resources/financial_connections/transaction"
54
44
  require "stripe/resources/funding_instructions"
55
- require "stripe/resources/gift_cards/card"
56
- require "stripe/resources/gift_cards/transaction"
57
45
  require "stripe/resources/identity/verification_report"
58
46
  require "stripe/resources/identity/verification_session"
59
47
  require "stripe/resources/invoice"
60
48
  require "stripe/resources/invoice_item"
61
49
  require "stripe/resources/invoice_line_item"
62
- require "stripe/resources/invoice_payment"
63
50
  require "stripe/resources/issuing/authorization"
64
51
  require "stripe/resources/issuing/card"
65
52
  require "stripe/resources/issuing/cardholder"
66
- require "stripe/resources/issuing/credit_underwriting_record"
67
53
  require "stripe/resources/issuing/dispute"
68
- require "stripe/resources/issuing/personalization_design"
69
- require "stripe/resources/issuing/physical_bundle"
70
54
  require "stripe/resources/issuing/token"
71
55
  require "stripe/resources/issuing/transaction"
72
56
  require "stripe/resources/line_item"
73
57
  require "stripe/resources/login_link"
74
58
  require "stripe/resources/mandate"
75
- require "stripe/resources/margin"
76
- require "stripe/resources/order"
77
59
  require "stripe/resources/payment_intent"
78
60
  require "stripe/resources/payment_link"
79
61
  require "stripe/resources/payment_method"
@@ -86,9 +68,6 @@ require "stripe/resources/price"
86
68
  require "stripe/resources/product"
87
69
  require "stripe/resources/promotion_code"
88
70
  require "stripe/resources/quote"
89
- require "stripe/resources/quote_phase"
90
- require "stripe/resources/quote_preview_invoice"
91
- require "stripe/resources/quote_preview_subscription_schedule"
92
71
  require "stripe/resources/radar/early_fraud_warning"
93
72
  require "stripe/resources/radar/value_list"
94
73
  require "stripe/resources/radar/value_list_item"
@@ -108,7 +87,6 @@ require "stripe/resources/subscription_item"
108
87
  require "stripe/resources/subscription_schedule"
109
88
  require "stripe/resources/tax/calculation"
110
89
  require "stripe/resources/tax/calculation_line_item"
111
- require "stripe/resources/tax/form"
112
90
  require "stripe/resources/tax/registration"
113
91
  require "stripe/resources/tax/settings"
114
92
  require "stripe/resources/tax/transaction"
@@ -209,10 +209,9 @@ module Stripe
209
209
  end
210
210
 
211
211
  def execute_request(method, path,
212
- api_base: nil, api_key: nil,
213
- headers: {}, params: {}, api_mode: nil, usage: [])
212
+ api_base: nil, api_key: nil, headers: {}, params: {}, usage: [])
214
213
  http_resp, api_key = execute_request_internal(
215
- method, path, api_base, api_key, headers, params, api_mode, usage
214
+ method, path, api_base, api_key, headers, params, usage
216
215
  )
217
216
 
218
217
  begin
@@ -243,7 +242,6 @@ module Stripe
243
242
  def execute_request_stream(method, path,
244
243
  api_base: nil, api_key: nil, usage: [],
245
244
  headers: {}, params: {},
246
- api_mode: nil,
247
245
  &read_body_chunk_block)
248
246
  unless block_given?
249
247
  raise ArgumentError,
@@ -251,8 +249,7 @@ module Stripe
251
249
  end
252
250
 
253
251
  http_resp, api_key = execute_request_internal(
254
- method, path, api_base, api_key,
255
- headers, params, api_mode, usage, &read_body_chunk_block
252
+ method, path, api_base, api_key, headers, params, usage, &read_body_chunk_block
256
253
  )
257
254
 
258
255
  # When the read_body_chunk_block is given, we no longer have access to the
@@ -431,8 +428,8 @@ module Stripe
431
428
  end
432
429
 
433
430
  private def execute_request_internal(method, path,
434
- api_base, api_key, headers, params,
435
- api_mode, usage, &read_body_chunk_block)
431
+ api_base, api_key, headers, params, usage,
432
+ &read_body_chunk_block)
436
433
  raise ArgumentError, "method should be a symbol" \
437
434
  unless method.is_a?(Symbol)
438
435
  raise ArgumentError, "path should be a string" \
@@ -440,10 +437,9 @@ module Stripe
440
437
 
441
438
  api_base ||= config.api_base
442
439
  api_key ||= config.api_key
443
- authenticator ||= config.authenticator
444
440
  params = Util.objects_to_ids(params)
445
441
 
446
- check_keys!(api_key, authenticator)
442
+ check_api_key!(api_key)
447
443
 
448
444
  body_params = nil
449
445
  query_params = nil
@@ -456,9 +452,8 @@ module Stripe
456
452
 
457
453
  query_params, path = merge_query_params(query_params, path)
458
454
 
459
- headers = request_headers(api_key, method, api_mode)
455
+ headers = request_headers(api_key, method)
460
456
  .update(Util.normalize_headers(headers))
461
-
462
457
  url = api_url(path, api_base)
463
458
 
464
459
  # Merge given query parameters with any already encoded in the path.
@@ -469,16 +464,13 @@ module Stripe
469
464
  # a log-friendly variant of the encoded form. File objects are displayed
470
465
  # as such instead of as their file contents.
471
466
  body, body_log =
472
- body_params ? encode_body(body_params, headers, api_mode) : [nil, nil]
473
-
474
- authenticator.authenticate(method, headers, body) unless api_key
467
+ body_params ? encode_body(body_params, headers) : [nil, nil]
475
468
 
476
469
  # stores information on the request we're about to make so that we don't
477
470
  # have to pass as many parameters around for logging.
478
471
  context = RequestLogContext.new
479
472
  context.account = headers["Stripe-Account"]
480
473
  context.api_key = api_key
481
- context.authenticator = authenticator
482
474
  context.api_version = headers["Stripe-Version"]
483
475
  context.body = body_log
484
476
  context.idempotency_key = headers["Idempotency-Key"]
@@ -515,16 +507,8 @@ module Stripe
515
507
  (api_base || config.api_base) + url
516
508
  end
517
509
 
518
- private def check_keys!(api_key, authenticator)
519
- if api_key && authenticator
520
- raise AuthenticationError, "Can't specify both API key " \
521
- "and authenticator. Either set your API key" \
522
- 'using "Stripe.api_key = <API-KEY>", or set your authenticator ' \
523
- 'using "Stripe.authenticator = <AUTHENTICATOR>"' \
524
- end
525
-
526
- unless api_key || authenticator
527
- # Default to missing API key error message for general users.
510
+ private def check_api_key!(api_key)
511
+ unless api_key
528
512
  raise AuthenticationError, "No API key provided. " \
529
513
  'Set your API key using "Stripe.api_key = <API-KEY>". ' \
530
514
  "You can generate API keys from the Stripe web interface. " \
@@ -543,7 +527,7 @@ module Stripe
543
527
  # Encodes a set of body parameters using multipart if `Content-Type` is set
544
528
  # for that, or standard form-encoding otherwise. Returns the encoded body
545
529
  # and a version of the encoded body that's safe to be logged.
546
- private def encode_body(body_params, headers, api_mode)
530
+ private def encode_body(body_params, headers)
547
531
  body = nil
548
532
  flattened_params = Util.flatten_params(body_params)
549
533
 
@@ -559,22 +543,15 @@ module Stripe
559
543
  flattened_params =
560
544
  flattened_params.map { |k, v| [k, v.is_a?(String) ? v : v.to_s] }.to_h
561
545
 
562
- elsif api_mode == :preview
563
- body = JSON.generate(body_params)
564
- headers["Content-Type"] = "application/json"
565
546
  else
566
547
  body = Util.encode_parameters(body_params)
567
548
  end
568
549
 
569
- body_log = if api_mode == :preview
570
- body
571
- else
572
- # We don't use `Util.encode_parameters` partly as an optimization (to
573
- # not redo work we've already done), and partly because the encoded
574
- # forms of certain characters introduce a lot of visual noise and it's
575
- # nice to have a clearer format for logs.
576
- flattened_params.map { |k, v| "#{k}=#{v}" }.join("&")
577
- end
550
+ # We don't use `Util.encode_parameters` partly as an optimization (to not
551
+ # redo work we've already done), and partly because the encoded forms of
552
+ # certain characters introduce a lot of visual noise and it's nice to
553
+ # have a clearer format for logs.
554
+ body_log = flattened_params.map { |k, v| "#{k}=#{v}" }.join("&")
578
555
 
579
556
  [body, body_log]
580
557
  end
@@ -761,11 +738,10 @@ module Stripe
761
738
  end
762
739
 
763
740
  private def specific_api_error(resp, error_data, context)
764
- message = error_data[:message]
765
741
  Util.log_error("Stripe API error",
766
742
  status: resp.http_status,
767
743
  error_code: error_data[:code],
768
- error_message: message,
744
+ error_message: error_data[:message],
769
745
  error_param: error_data[:param],
770
746
  error_type: error_data[:type],
771
747
  idempotency_key: context.idempotency_key,
@@ -786,26 +762,26 @@ module Stripe
786
762
  when 400, 404
787
763
  case error_data[:type]
788
764
  when "idempotency_error"
789
- IdempotencyError.new(message, **opts)
765
+ IdempotencyError.new(error_data[:message], **opts)
790
766
  else
791
767
  InvalidRequestError.new(
792
- message, error_data[:param],
768
+ error_data[:message], error_data[:param],
793
769
  **opts
794
770
  )
795
771
  end
796
772
  when 401
797
- AuthenticationError.new(message, **opts)
773
+ AuthenticationError.new(error_data[:message], **opts)
798
774
  when 402
799
775
  CardError.new(
800
- message, error_data[:param],
776
+ error_data[:message], error_data[:param],
801
777
  **opts
802
778
  )
803
779
  when 403
804
- PermissionError.new(message, **opts)
780
+ PermissionError.new(error_data[:message], **opts)
805
781
  when 429
806
- RateLimitError.new(message, **opts)
782
+ RateLimitError.new(error_data[:message], **opts)
807
783
  else
808
- APIError.new(message, **opts)
784
+ APIError.new(error_data[:message], **opts)
809
785
  end
810
786
  end
811
787
 
@@ -873,20 +849,16 @@ module Stripe
873
849
  message + "\n\n(Network error: #{error.message})"
874
850
  end
875
851
 
876
- private def request_headers(api_key, method, api_mode)
852
+ private def request_headers(api_key, method)
877
853
  user_agent = "Stripe/v1 RubyBindings/#{Stripe::VERSION}"
878
854
  user_agent += " " + format_app_info(Stripe.app_info) unless Stripe.app_info.nil?
879
855
 
880
856
  headers = {
881
857
  "User-Agent" => user_agent,
882
858
  "Authorization" => "Bearer #{api_key}",
859
+ "Content-Type" => "application/x-www-form-urlencoded",
883
860
  }
884
861
 
885
- if api_mode != :preview
886
- # TODO: (major) don't set Content-Type if method is not post
887
- headers["Content-Type"] = "application/x-www-form-urlencoded"
888
- end
889
-
890
862
  if config.enable_telemetry? && !@last_request_metrics.nil?
891
863
  headers["X-Stripe-Client-Telemetry"] = JSON.generate(
892
864
  last_request_metrics: @last_request_metrics.payload
@@ -899,12 +871,7 @@ module Stripe
899
871
  headers["Idempotency-Key"] ||= SecureRandom.uuid
900
872
  end
901
873
 
902
- if api_mode == :preview
903
- headers["Stripe-Version"] = ApiVersion::PREVIEW
904
- elsif config.api_version
905
- headers["Stripe-Version"] = config.api_version
906
- end
907
-
874
+ headers["Stripe-Version"] = config.api_version if config.api_version
908
875
  headers["Stripe-Account"] = config.stripe_account if config.stripe_account
909
876
 
910
877
  user_agent = @system_profiler.user_agent
@@ -987,8 +954,7 @@ module Stripe
987
954
  # that we can log certain information. It's useful because it means that we
988
955
  # don't have to pass around as many parameters.
989
956
  class RequestLogContext
990
- attr_accessor :body, :account, :api_key, :authenticator, :api_version, :idempotency_key, :method, :path, :query,
991
- :request_id
957
+ attr_accessor :body, :account, :api_key, :api_version, :idempotency_key, :method, :path, :query, :request_id
992
958
 
993
959
  # The idea with this method is that we might want to update some of
994
960
  # 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, :authenticator, :client_id, :enable_telemetry, :logger, :stripe_account
28
+ attr_accessor :api_key, :api_version, :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,7 +50,6 @@ module Stripe
50
50
 
51
51
  def initialize
52
52
  @api_version = ApiVersion::CURRENT
53
-
54
53
  @ca_bundle_path = Stripe::DEFAULT_CA_BUNDLE_PATH
55
54
  @enable_telemetry = true
56
55
  @verify_ssl_certs = true
data/lib/stripe/util.rb CHANGED
@@ -7,7 +7,6 @@ module Stripe
7
7
  # Options that a user is allowed to specify.
8
8
  OPTS_USER_SPECIFIED = Set[
9
9
  :api_key,
10
- :authenticator,
11
10
  :idempotency_key,
12
11
  :stripe_account,
13
12
  :stripe_version
@@ -280,13 +279,7 @@ module Stripe
280
279
  when String
281
280
  { api_key: opts }
282
281
  when Hash
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
282
+ check_api_key!(opts.fetch(:api_key)) if opts.key?(:api_key)
290
283
  # Explicitly use dup here instead of clone to avoid preserving freeze
291
284
  # state on input params.
292
285
  opts.dup
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Stripe
4
- VERSION = "10.10.0-beta.1"
4
+ VERSION = "10.10.0"
5
5
  end
data/lib/stripe.rb CHANGED
@@ -13,7 +13,6 @@ require "set"
13
13
  require "socket"
14
14
  require "uri"
15
15
  require "forwardable"
16
- require "base64"
17
16
 
18
17
  # Version
19
18
  require "stripe/api_version"
@@ -46,7 +45,6 @@ require "stripe/api_resource_test_helpers"
46
45
  require "stripe/singleton_api_resource"
47
46
  require "stripe/webhook"
48
47
  require "stripe/stripe_configuration"
49
- require "stripe/request_signing_authenticator"
50
48
 
51
49
  # Named API resources
52
50
  require "stripe/resources"
@@ -73,7 +71,6 @@ module Stripe
73
71
 
74
72
  # User configurable options
75
73
  def_delegators :@config, :api_key, :api_key=
76
- def_delegators :@config, :authenticator, :authenticator=
77
74
  def_delegators :@config, :api_version, :api_version=
78
75
  def_delegators :@config, :stripe_account, :stripe_account=
79
76
  def_delegators :@config, :api_base, :api_base=
@@ -120,49 +117,6 @@ module Stripe
120
117
  version: version,
121
118
  }
122
119
  end
123
-
124
- class Preview
125
- def self._get_default_opts(opts)
126
- { api_mode: :preview }.merge(opts)
127
- end
128
-
129
- def self.get(url, opts = {})
130
- Stripe.raw_request(:get, url, {}, _get_default_opts(opts))
131
- end
132
-
133
- def self.post(url, params = {}, opts = {})
134
- Stripe.raw_request(:post, url, params, _get_default_opts(opts))
135
- end
136
-
137
- def self.delete(url, opts = {})
138
- Stripe.raw_request(:delete, url, {}, _get_default_opts(opts))
139
- end
140
- end
141
-
142
- class RawRequest
143
- include Stripe::APIOperations::Request
144
-
145
- def initialize
146
- @opts = {}
147
- end
148
-
149
- def execute(method, url, params = {}, opts = {}, usage = [])
150
- resp, = execute_resource_request(method, url, params, opts, usage)
151
-
152
- resp
153
- end
154
- end
155
-
156
- # Sends a request to Stripe REST API
157
- def self.raw_request(method, url, params = {}, opts = {})
158
- req = RawRequest.new
159
- req.execute(method, url, params, opts, ["raw_request"])
160
- end
161
-
162
- def self.deserialize(data)
163
- data = JSON.parse(data) if data.is_a?(String)
164
- Util.convert_to_stripe_object(data, {})
165
- end
166
120
  end
167
121
 
168
122
  Stripe.log_level = ENV["STRIPE_LOG"] unless ENV["STRIPE_LOG"].nil?
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stripe
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.10.0.pre.beta.1
4
+ version: 10.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stripe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-16 00:00:00.000000000 Z
11
+ date: 2024-02-22 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Stripe is the easiest way to accept payments online. See https://stripe.com
14
14
  for details.
@@ -53,11 +53,9 @@ files:
53
53
  - lib/stripe/multipart_encoder.rb
54
54
  - lib/stripe/oauth.rb
55
55
  - lib/stripe/object_types.rb
56
- - lib/stripe/request_signing_authenticator.rb
57
56
  - lib/stripe/resources.rb
58
57
  - lib/stripe/resources/account.rb
59
58
  - lib/stripe/resources/account_link.rb
60
- - lib/stripe/resources/account_notice.rb
61
59
  - lib/stripe/resources/account_session.rb
62
60
  - lib/stripe/resources/alipay_account.rb
63
61
  - lib/stripe/resources/apple_pay_domain.rb
@@ -70,9 +68,6 @@ files:
70
68
  - lib/stripe/resources/billing_portal/configuration.rb
71
69
  - lib/stripe/resources/billing_portal/session.rb
72
70
  - lib/stripe/resources/capability.rb
73
- - lib/stripe/resources/capital/financing_offer.rb
74
- - lib/stripe/resources/capital/financing_summary.rb
75
- - lib/stripe/resources/capital/financing_transaction.rb
76
71
  - lib/stripe/resources/card.rb
77
72
  - lib/stripe/resources/cash_balance.rb
78
73
  - lib/stripe/resources/charge.rb
@@ -80,7 +75,6 @@ files:
80
75
  - lib/stripe/resources/climate/order.rb
81
76
  - lib/stripe/resources/climate/product.rb
82
77
  - lib/stripe/resources/climate/supplier.rb
83
- - lib/stripe/resources/confirmation_token.rb
84
78
  - lib/stripe/resources/country_spec.rb
85
79
  - lib/stripe/resources/coupon.rb
86
80
  - lib/stripe/resources/credit_note.rb
@@ -88,47 +82,34 @@ files:
88
82
  - lib/stripe/resources/customer.rb
89
83
  - lib/stripe/resources/customer_balance_transaction.rb
90
84
  - lib/stripe/resources/customer_cash_balance_transaction.rb
91
- - lib/stripe/resources/customer_entitlement.rb
92
- - lib/stripe/resources/customer_entitlement_summary.rb
93
85
  - lib/stripe/resources/customer_session.rb
94
86
  - lib/stripe/resources/discount.rb
95
87
  - lib/stripe/resources/dispute.rb
96
- - lib/stripe/resources/entitlements/event.rb
97
- - lib/stripe/resources/entitlements/feature.rb
98
88
  - lib/stripe/resources/ephemeral_key.rb
99
89
  - lib/stripe/resources/event.rb
100
90
  - lib/stripe/resources/exchange_rate.rb
101
91
  - lib/stripe/resources/file.rb
102
92
  - lib/stripe/resources/file_link.rb
103
93
  - lib/stripe/resources/financial_connections/account.rb
104
- - lib/stripe/resources/financial_connections/account_inferred_balance.rb
105
94
  - lib/stripe/resources/financial_connections/account_owner.rb
106
95
  - lib/stripe/resources/financial_connections/account_ownership.rb
107
96
  - lib/stripe/resources/financial_connections/session.rb
108
97
  - lib/stripe/resources/financial_connections/transaction.rb
109
98
  - lib/stripe/resources/funding_instructions.rb
110
- - lib/stripe/resources/gift_cards/card.rb
111
- - lib/stripe/resources/gift_cards/transaction.rb
112
99
  - lib/stripe/resources/identity/verification_report.rb
113
100
  - lib/stripe/resources/identity/verification_session.rb
114
101
  - lib/stripe/resources/invoice.rb
115
102
  - lib/stripe/resources/invoice_item.rb
116
103
  - lib/stripe/resources/invoice_line_item.rb
117
- - lib/stripe/resources/invoice_payment.rb
118
104
  - lib/stripe/resources/issuing/authorization.rb
119
105
  - lib/stripe/resources/issuing/card.rb
120
106
  - lib/stripe/resources/issuing/cardholder.rb
121
- - lib/stripe/resources/issuing/credit_underwriting_record.rb
122
107
  - lib/stripe/resources/issuing/dispute.rb
123
- - lib/stripe/resources/issuing/personalization_design.rb
124
- - lib/stripe/resources/issuing/physical_bundle.rb
125
108
  - lib/stripe/resources/issuing/token.rb
126
109
  - lib/stripe/resources/issuing/transaction.rb
127
110
  - lib/stripe/resources/line_item.rb
128
111
  - lib/stripe/resources/login_link.rb
129
112
  - lib/stripe/resources/mandate.rb
130
- - lib/stripe/resources/margin.rb
131
- - lib/stripe/resources/order.rb
132
113
  - lib/stripe/resources/payment_intent.rb
133
114
  - lib/stripe/resources/payment_link.rb
134
115
  - lib/stripe/resources/payment_method.rb
@@ -141,9 +122,6 @@ files:
141
122
  - lib/stripe/resources/product.rb
142
123
  - lib/stripe/resources/promotion_code.rb
143
124
  - lib/stripe/resources/quote.rb
144
- - lib/stripe/resources/quote_phase.rb
145
- - lib/stripe/resources/quote_preview_invoice.rb
146
- - lib/stripe/resources/quote_preview_subscription_schedule.rb
147
125
  - lib/stripe/resources/radar/early_fraud_warning.rb
148
126
  - lib/stripe/resources/radar/value_list.rb
149
127
  - lib/stripe/resources/radar/value_list_item.rb
@@ -164,7 +142,6 @@ files:
164
142
  - lib/stripe/resources/subscription_schedule.rb
165
143
  - lib/stripe/resources/tax/calculation.rb
166
144
  - lib/stripe/resources/tax/calculation_line_item.rb
167
- - lib/stripe/resources/tax/form.rb
168
145
  - lib/stripe/resources/tax/registration.rb
169
146
  - lib/stripe/resources/tax/settings.rb
170
147
  - lib/stripe/resources/tax/transaction.rb
@@ -281,9 +258,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
281
258
  version: 2.3.0
282
259
  required_rubygems_version: !ruby/object:Gem::Requirement
283
260
  requirements:
284
- - - ">"
261
+ - - ">="
285
262
  - !ruby/object:Gem::Version
286
- version: 1.3.1
263
+ version: '0'
287
264
  requirements: []
288
265
  rubygems_version: 3.3.26
289
266
  signing_key:
@@ -1,79 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Stripe
4
- class RequestSigningAuthenticator
5
- AUTHORIZATION_HEADER_NAME = "Authorization"
6
- CONTENT_TYPE_HEADER_NAME = "Content-Type"
7
- STRIPE_CONTEXT_HEADER_NAME = "Stripe-Context"
8
- STRIPE_ACCOUNT_HEADER_NAME = "Stripe-Account"
9
- CONTENT_DIGEST_HEADER_NAME = "Content-Digest"
10
- SIGNATURE_INPUT_HEADER_NAME = "Signature-Input"
11
- SIGNATURE_HEADER_NAME = "Signature"
12
-
13
- attr_reader :auth_token, :sign_lambda
14
-
15
- def initialize(auth_token, sign_lambda)
16
- raise ArgumentError, "auth_token must be a string" unless auth_token.is_a?(String)
17
- raise ArgumentError, "sign_lambda must be a lambda" unless sign_lambda.is_a?(Proc)
18
-
19
- @auth_token = auth_token
20
- @sign_lambda = sign_lambda
21
- end
22
-
23
- def authenticate(method, headers, body)
24
- covered_headers = [CONTENT_TYPE_HEADER_NAME,
25
- CONTENT_DIGEST_HEADER_NAME,
26
- STRIPE_CONTEXT_HEADER_NAME,
27
- STRIPE_ACCOUNT_HEADER_NAME,
28
- AUTHORIZATION_HEADER_NAME,]
29
-
30
- headers[AUTHORIZATION_HEADER_NAME] = "STRIPE-V2-SIG #{auth_token}"
31
-
32
- if method == :get
33
- covered_headers -= [CONTENT_TYPE_HEADER_NAME,
34
- CONTENT_DIGEST_HEADER_NAME,]
35
- else
36
- content = body || ""
37
- headers[CONTENT_DIGEST_HEADER_NAME] =
38
- %(sha-256=:#{content_digest(content)}:)
39
- end
40
-
41
- covered_headers_formatted = covered_headers
42
- .map { |string| %("#{string.downcase}") }
43
- .join(" ")
44
-
45
- signature_input = "(#{covered_headers_formatted});created=#{created_time}"
46
-
47
- inputs = covered_headers
48
- .map { |header| %("#{header.downcase}": #{headers[header]}) }
49
- .join("\n")
50
-
51
- signature_base = %(#{inputs}\n"@signature-params": #{signature_input})
52
- .encode(Encoding::UTF_8)
53
-
54
- headers[SIGNATURE_INPUT_HEADER_NAME] = "sig1=#{signature_input}"
55
-
56
- headers[SIGNATURE_HEADER_NAME] =
57
- "sig1=:#{encoded_signature(signature_base)}:"
58
- end
59
-
60
- private def sign(signature_base)
61
- @sign_lambda.call(signature_base)
62
- end
63
-
64
- private def encoded_signature(signature_base)
65
- Base64.strict_encode64(sign(signature_base))
66
- rescue StandardError
67
- raise AuthenticationError, "Encountered '#{e.message} (#{e.class})' " \
68
- "when calculating request signature."
69
- end
70
-
71
- private def content_digest(content)
72
- Base64.strict_encode64(OpenSSL::Digest.new("SHA256").digest(content))
73
- end
74
-
75
- private def created_time
76
- Time.now.to_i
77
- end
78
- end
79
- end
@@ -1,32 +0,0 @@
1
- # File generated from our OpenAPI spec
2
- # frozen_string_literal: true
3
-
4
- module Stripe
5
- # A notice to a Connected account. Notice can be sent by Stripe on your behalf or you can opt to send the notices yourself.
6
- #
7
- # See the [guide to send notices](https://stripe.com/docs/issuing/compliance-us/issuing-regulated-customer-notices) to your connected accounts.
8
- class AccountNotice < APIResource
9
- extend Stripe::APIOperations::List
10
- include Stripe::APIOperations::Save
11
-
12
- OBJECT_NAME = "account_notice"
13
- def self.object_name
14
- "account_notice"
15
- end
16
-
17
- # Retrieves a list of AccountNotice objects. The objects are sorted in descending order by creation date, with the most-recently-created object appearing first.
18
- def self.list(filters = {}, opts = {})
19
- request_stripe_object(method: :get, path: "/v1/account_notices", params: filters, opts: opts)
20
- end
21
-
22
- # Updates an AccountNotice object.
23
- def self.update(id, params = {}, opts = {})
24
- request_stripe_object(
25
- method: :post,
26
- path: format("/v1/account_notices/%<id>s", { id: CGI.escape(id) }),
27
- params: params,
28
- opts: opts
29
- )
30
- end
31
- end
32
- end