stripe 10.13.0.pre.beta.1 → 10.13.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +46 -300
  3. data/OPENAPI_VERSION +1 -1
  4. data/README.md +0 -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 +1 -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/forwarding/request.rb +50 -0
  12. data/lib/stripe/resources/invoice.rb +0 -113
  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/terminal/reader.rb +0 -60
  17. data/lib/stripe/resources.rb +1 -22
  18. data/lib/stripe/stripe_client.rb +28 -62
  19. data/lib/stripe/stripe_configuration.rb +1 -2
  20. data/lib/stripe/util.rb +1 -8
  21. data/lib/stripe/version.rb +1 -1
  22. data/lib/stripe.rb +0 -54
  23. data/stripe.gemspec +3 -0
  24. metadata +5 -84
  25. data/bin/tapioca +0 -27
  26. data/lib/stripe/request_signing_authenticator.rb +0 -79
  27. data/lib/stripe/resources/account_notice.rb +0 -32
  28. data/lib/stripe/resources/billing/meter.rb +0 -83
  29. data/lib/stripe/resources/billing/meter_event.rb +0 -27
  30. data/lib/stripe/resources/billing/meter_event_adjustment.rb +0 -26
  31. data/lib/stripe/resources/billing/meter_event_summary.rb +0 -15
  32. data/lib/stripe/resources/capital/financing_offer.rb +0 -49
  33. data/lib/stripe/resources/capital/financing_summary.rb +0 -15
  34. data/lib/stripe/resources/capital/financing_transaction.rb +0 -27
  35. data/lib/stripe/resources/customer_entitlement.rb +0 -12
  36. data/lib/stripe/resources/customer_entitlement_summary.rb +0 -12
  37. data/lib/stripe/resources/entitlements/feature.rb +0 -38
  38. data/lib/stripe/resources/financial_connections/account_inferred_balance.rb +0 -14
  39. data/lib/stripe/resources/gift_cards/card.rb +0 -59
  40. data/lib/stripe/resources/gift_cards/transaction.rb +0 -93
  41. data/lib/stripe/resources/invoice_payment.rb +0 -12
  42. data/lib/stripe/resources/issuing/credit_underwriting_record.rb +0 -88
  43. data/lib/stripe/resources/margin.rb +0 -37
  44. data/lib/stripe/resources/order.rb +0 -120
  45. data/lib/stripe/resources/quote_phase.rb +0 -39
  46. data/lib/stripe/resources/quote_preview_invoice.rb +0 -43
  47. data/lib/stripe/resources/quote_preview_subscription_schedule.rb +0 -11
  48. data/lib/stripe/resources/tax/form.rb +0 -49
  49. data/sorbet/config +0 -4
  50. data/sorbet/rbi/annotations/.gitattributes +0 -1
  51. data/sorbet/rbi/annotations/coveralls_reborn.rbi +0 -3
  52. data/sorbet/rbi/gems/.gitattributes +0 -1
  53. data/sorbet/rbi/gems/addressable@2.8.6.rbi +0 -1993
  54. data/sorbet/rbi/gems/ast@2.4.2.rbi +0 -584
  55. data/sorbet/rbi/gems/byebug@11.1.3.rbi +0 -3606
  56. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -3437
  57. data/sorbet/rbi/gems/coveralls_reborn@0.25.0.rbi +0 -8
  58. data/sorbet/rbi/gems/crack@0.4.5.rbi +0 -144
  59. data/sorbet/rbi/gems/docile@1.4.0.rbi +0 -8
  60. data/sorbet/rbi/gems/erubi@1.12.0.rbi +0 -146
  61. data/sorbet/rbi/gems/hashdiff@1.1.0.rbi +0 -352
  62. data/sorbet/rbi/gems/jaro_winkler@1.5.4.rbi +0 -19
  63. data/sorbet/rbi/gems/json@2.7.1.rbi +0 -1561
  64. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  65. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -272
  66. data/sorbet/rbi/gems/mocha@1.16.1.rbi +0 -11
  67. data/sorbet/rbi/gems/netrc@0.11.0.rbi +0 -161
  68. data/sorbet/rbi/gems/parallel@1.24.0.rbi +0 -280
  69. data/sorbet/rbi/gems/parser@3.2.2.4.rbi +0 -9454
  70. data/sorbet/rbi/gems/power_assert@2.0.3.rbi +0 -414
  71. data/sorbet/rbi/gems/prettier_print@1.2.1.rbi +0 -951
  72. data/sorbet/rbi/gems/prism@0.19.0.rbi +0 -29883
  73. data/sorbet/rbi/gems/pry-byebug@3.10.1.rbi +0 -1150
  74. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -10085
  75. data/sorbet/rbi/gems/public_suffix@5.0.4.rbi +0 -931
  76. data/sorbet/rbi/gems/racc@1.7.3.rbi +0 -161
  77. data/sorbet/rbi/gems/rack@3.0.8.rbi +0 -5193
  78. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +0 -402
  79. data/sorbet/rbi/gems/rake@13.1.0.rbi +0 -2884
  80. data/sorbet/rbi/gems/rbi@0.1.6.rbi +0 -2922
  81. data/sorbet/rbi/gems/regexp_parser@2.8.3.rbi +0 -3766
  82. data/sorbet/rbi/gems/rexml@3.2.6.rbi +0 -4887
  83. data/sorbet/rbi/gems/rubocop-ast@1.30.0.rbi +0 -7004
  84. data/sorbet/rbi/gems/rubocop@1.57.2.rbi +0 -56919
  85. data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +0 -1317
  86. data/sorbet/rbi/gems/shoulda-context@2.0.0.rbi +0 -555
  87. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -8
  88. data/sorbet/rbi/gems/simplecov@0.21.2.rbi +0 -8
  89. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +0 -8
  90. data/sorbet/rbi/gems/spoom@1.2.4.rbi +0 -3777
  91. data/sorbet/rbi/gems/sync@0.5.0.rbi +0 -8
  92. data/sorbet/rbi/gems/syntax_tree@6.2.0.rbi +0 -23136
  93. data/sorbet/rbi/gems/tapioca@0.11.17.rbi +0 -3503
  94. data/sorbet/rbi/gems/term-ansicolor@1.7.1.rbi +0 -8
  95. data/sorbet/rbi/gems/test-unit@3.6.1.rbi +0 -4403
  96. data/sorbet/rbi/gems/thor@1.3.0.rbi +0 -4345
  97. data/sorbet/rbi/gems/tins@1.32.1.rbi +0 -8
  98. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  99. data/sorbet/rbi/gems/webmock@3.19.1.rbi +0 -1740
  100. data/sorbet/rbi/gems/yard-sorbet@0.8.1.rbi +0 -428
  101. data/sorbet/rbi/gems/yard@0.9.34.rbi +0 -18219
  102. data/sorbet/tapioca/config.yml +0 -13
  103. data/sorbet/tapioca/require.rb +0 -4
@@ -15,7 +15,6 @@ module Stripe
15
15
  # The beginning of the section generated from our OpenAPI spec
16
16
  Account.object_name => Account,
17
17
  AccountLink.object_name => AccountLink,
18
- AccountNotice.object_name => AccountNotice,
19
18
  AccountSession.object_name => AccountSession,
20
19
  ApplePayDomain.object_name => ApplePayDomain,
21
20
  ApplicationFee.object_name => ApplicationFee,
@@ -24,16 +23,9 @@ module Stripe
24
23
  Balance.object_name => Balance,
25
24
  BalanceTransaction.object_name => BalanceTransaction,
26
25
  BankAccount.object_name => BankAccount,
27
- Billing::Meter.object_name => Billing::Meter,
28
- Billing::MeterEvent.object_name => Billing::MeterEvent,
29
- Billing::MeterEventAdjustment.object_name => Billing::MeterEventAdjustment,
30
- Billing::MeterEventSummary.object_name => Billing::MeterEventSummary,
31
26
  BillingPortal::Configuration.object_name => BillingPortal::Configuration,
32
27
  BillingPortal::Session.object_name => BillingPortal::Session,
33
28
  Capability.object_name => Capability,
34
- Capital::FinancingOffer.object_name => Capital::FinancingOffer,
35
- Capital::FinancingSummary.object_name => Capital::FinancingSummary,
36
- Capital::FinancingTransaction.object_name => Capital::FinancingTransaction,
37
29
  Card.object_name => Card,
38
30
  CashBalance.object_name => CashBalance,
39
31
  Charge.object_name => Charge,
@@ -49,37 +41,29 @@ module Stripe
49
41
  Customer.object_name => Customer,
50
42
  CustomerBalanceTransaction.object_name => CustomerBalanceTransaction,
51
43
  CustomerCashBalanceTransaction.object_name => CustomerCashBalanceTransaction,
52
- CustomerEntitlement.object_name => CustomerEntitlement,
53
- CustomerEntitlementSummary.object_name => CustomerEntitlementSummary,
54
44
  CustomerSession.object_name => CustomerSession,
55
45
  Discount.object_name => Discount,
56
46
  Dispute.object_name => Dispute,
57
- Entitlements::Feature.object_name => Entitlements::Feature,
58
47
  EphemeralKey.object_name => EphemeralKey,
59
48
  Event.object_name => Event,
60
49
  ExchangeRate.object_name => ExchangeRate,
61
50
  File.object_name => File,
62
51
  FileLink.object_name => FileLink,
63
52
  FinancialConnections::Account.object_name => FinancialConnections::Account,
64
- FinancialConnections::AccountInferredBalance.object_name =>
65
- FinancialConnections::AccountInferredBalance,
66
53
  FinancialConnections::AccountOwner.object_name => FinancialConnections::AccountOwner,
67
54
  FinancialConnections::AccountOwnership.object_name => FinancialConnections::AccountOwnership,
68
55
  FinancialConnections::Session.object_name => FinancialConnections::Session,
69
56
  FinancialConnections::Transaction.object_name => FinancialConnections::Transaction,
57
+ Forwarding::Request.object_name => Forwarding::Request,
70
58
  FundingInstructions.object_name => FundingInstructions,
71
- GiftCards::Card.object_name => GiftCards::Card,
72
- GiftCards::Transaction.object_name => GiftCards::Transaction,
73
59
  Identity::VerificationReport.object_name => Identity::VerificationReport,
74
60
  Identity::VerificationSession.object_name => Identity::VerificationSession,
75
61
  Invoice.object_name => Invoice,
76
62
  InvoiceItem.object_name => InvoiceItem,
77
63
  InvoiceLineItem.object_name => InvoiceLineItem,
78
- InvoicePayment.object_name => InvoicePayment,
79
64
  Issuing::Authorization.object_name => Issuing::Authorization,
80
65
  Issuing::Card.object_name => Issuing::Card,
81
66
  Issuing::Cardholder.object_name => Issuing::Cardholder,
82
- Issuing::CreditUnderwritingRecord.object_name => Issuing::CreditUnderwritingRecord,
83
67
  Issuing::Dispute.object_name => Issuing::Dispute,
84
68
  Issuing::PersonalizationDesign.object_name => Issuing::PersonalizationDesign,
85
69
  Issuing::PhysicalBundle.object_name => Issuing::PhysicalBundle,
@@ -88,8 +72,6 @@ module Stripe
88
72
  LineItem.object_name => LineItem,
89
73
  LoginLink.object_name => LoginLink,
90
74
  Mandate.object_name => Mandate,
91
- Margin.object_name => Margin,
92
- Order.object_name => Order,
93
75
  PaymentIntent.object_name => PaymentIntent,
94
76
  PaymentLink.object_name => PaymentLink,
95
77
  PaymentMethod.object_name => PaymentMethod,
@@ -102,9 +84,6 @@ module Stripe
102
84
  Product.object_name => Product,
103
85
  PromotionCode.object_name => PromotionCode,
104
86
  Quote.object_name => Quote,
105
- QuotePhase.object_name => QuotePhase,
106
- QuotePreviewInvoice.object_name => QuotePreviewInvoice,
107
- QuotePreviewSubscriptionSchedule.object_name => QuotePreviewSubscriptionSchedule,
108
87
  Radar::EarlyFraudWarning.object_name => Radar::EarlyFraudWarning,
109
88
  Radar::ValueList.object_name => Radar::ValueList,
110
89
  Radar::ValueListItem.object_name => Radar::ValueListItem,
@@ -124,7 +103,6 @@ module Stripe
124
103
  SubscriptionSchedule.object_name => SubscriptionSchedule,
125
104
  Tax::Calculation.object_name => Tax::Calculation,
126
105
  Tax::CalculationLineItem.object_name => Tax::CalculationLineItem,
127
- Tax::Form.object_name => Tax::Form,
128
106
  Tax::Registration.object_name => Tax::Registration,
129
107
  Tax::Settings.object_name => Tax::Settings,
130
108
  Tax::Transaction.object_name => Tax::Transaction,
@@ -22,7 +22,6 @@ module Stripe
22
22
  nested_resource_class_methods :cash_balance_transaction, operations: %i[retrieve list]
23
23
  nested_resource_class_methods :source, operations: %i[create retrieve update delete list]
24
24
  nested_resource_class_methods :tax_id, operations: %i[create retrieve delete list]
25
- nested_resource_class_methods :entitlement, operations: %i[list]
26
25
 
27
26
  # Creates a new customer object.
28
27
  def self.create(params = {}, opts = {})
@@ -128,16 +127,6 @@ module Stripe
128
127
  )
129
128
  end
130
129
 
131
- # Retrieve the entitlement summary for a customer
132
- def self.retrieve_entitlement_summary(customer, params = {}, opts = {})
133
- request_stripe_object(
134
- method: :get,
135
- path: format("/v1/customers/%<customer>s/entitlement_summary", { customer: CGI.escape(customer) }),
136
- params: params,
137
- opts: opts
138
- )
139
- end
140
-
141
130
  # Retrieves a PaymentMethod object for a given Customer.
142
131
  def retrieve_payment_method(payment_method, params = {}, opts = {})
143
132
  request_stripe_object(
@@ -6,15 +6,12 @@ module Stripe
6
6
  # A Financial Connections Account represents an account that exists outside of Stripe, to which you have been granted some degree of access.
7
7
  class Account < APIResource
8
8
  extend Stripe::APIOperations::List
9
- extend Stripe::APIOperations::NestedResource
10
9
 
11
10
  OBJECT_NAME = "financial_connections.account"
12
11
  def self.object_name
13
12
  "financial_connections.account"
14
13
  end
15
14
 
16
- nested_resource_class_methods :inferred_balance, operations: %i[list]
17
-
18
15
  # Disables your access to a Financial Connections Account. You will no longer be able to access data associated with the account (e.g. balances, transactions).
19
16
  def disconnect(params = {}, opts = {})
20
17
  request_stripe_object(
@@ -0,0 +1,50 @@
1
+ # File generated from our OpenAPI spec
2
+ # frozen_string_literal: true
3
+
4
+ module Stripe
5
+ module Forwarding
6
+ # Instructs Stripe to make a request on your behalf using the destination URL and HTTP method in the config.
7
+ # A config is set up for each destination URL by Stripe at the time of onboarding. Stripe verifies requests with
8
+ # your credentials in the config, and injects card details from the payment_method into the request.
9
+ #
10
+ # Stripe redacts all sensitive fields and headers, including authentication credentials and card numbers,
11
+ # before storing the request and response data in the forwarding Request object, which are subject to a
12
+ # 30-day retention period.
13
+ #
14
+ # You can provide a Stripe idempotency key to make sure that requests with the same key result in only one
15
+ # outbound request. The Stripe idempotency key provided should be unique and different from any idempotency
16
+ # keys provided on the underlying third-party request.
17
+ #
18
+ # Forwarding Requests are synchronous requests that return a response or time out according to
19
+ # Stripe's limits.
20
+ class Request < APIResource
21
+ extend Stripe::APIOperations::Create
22
+ extend Stripe::APIOperations::List
23
+
24
+ OBJECT_NAME = "forwarding.request"
25
+ def self.object_name
26
+ "forwarding.request"
27
+ end
28
+
29
+ # Creates a ForwardingRequest object.
30
+ def self.create(params = {}, opts = {})
31
+ request_stripe_object(
32
+ method: :post,
33
+ path: "/v1/forwarding/requests",
34
+ params: params,
35
+ opts: opts
36
+ )
37
+ end
38
+
39
+ # Lists all ForwardingRequest objects.
40
+ def self.list(filters = {}, opts = {})
41
+ request_stripe_object(
42
+ method: :get,
43
+ path: "/v1/forwarding/requests",
44
+ params: filters,
45
+ opts: opts
46
+ )
47
+ end
48
+ end
49
+ end
50
+ end
@@ -38,7 +38,6 @@ module Stripe
38
38
  extend Stripe::APIOperations::Create
39
39
  include Stripe::APIOperations::Delete
40
40
  extend Stripe::APIOperations::List
41
- extend Stripe::APIOperations::NestedResource
42
41
  extend Stripe::APIOperations::Search
43
42
  include Stripe::APIOperations::Save
44
43
 
@@ -47,83 +46,11 @@ module Stripe
47
46
  "invoice"
48
47
  end
49
48
 
50
- nested_resource_class_methods :payment, operations: %i[retrieve list]
51
-
52
- # Adds multiple line items to an invoice. This is only possible when an invoice is still a draft.
53
- def add_lines(params = {}, opts = {})
54
- request_stripe_object(
55
- method: :post,
56
- path: format("/v1/invoices/%<invoice>s/add_lines", { invoice: CGI.escape(self["id"]) }),
57
- params: params,
58
- opts: opts
59
- )
60
- end
61
-
62
- # Adds multiple line items to an invoice. This is only possible when an invoice is still a draft.
63
- def self.add_lines(invoice, params = {}, opts = {})
64
- request_stripe_object(
65
- method: :post,
66
- path: format("/v1/invoices/%<invoice>s/add_lines", { invoice: CGI.escape(invoice) }),
67
- params: params,
68
- opts: opts
69
- )
70
- end
71
-
72
- # Attaches a PaymentIntent to the invoice, adding it to the list of payments.
73
- # When the PaymentIntent's status changes to succeeded, the payment is credited
74
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
75
- # invoice's status becomes paid.
76
- #
77
- # If the PaymentIntent's status is already succeeded when it is attached, it is
78
- # credited to the invoice immediately.
79
- #
80
- # Related guide: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create)
81
- def attach_payment_intent(params = {}, opts = {})
82
- request_stripe_object(
83
- method: :post,
84
- path: format("/v1/invoices/%<invoice>s/attach_payment_intent", { invoice: CGI.escape(self["id"]) }),
85
- params: params,
86
- opts: opts
87
- )
88
- end
89
-
90
- # Attaches a PaymentIntent to the invoice, adding it to the list of payments.
91
- # When the PaymentIntent's status changes to succeeded, the payment is credited
92
- # to the invoice, increasing its amount_paid. When the invoice is fully paid, the
93
- # invoice's status becomes paid.
94
- #
95
- # If the PaymentIntent's status is already succeeded when it is attached, it is
96
- # credited to the invoice immediately.
97
- #
98
- # Related guide: [Create an invoice payment](https://stripe.com/docs/invoicing/payments/create)
99
- def self.attach_payment_intent(invoice, params = {}, opts = {})
100
- request_stripe_object(
101
- method: :post,
102
- path: format("/v1/invoices/%<invoice>s/attach_payment_intent", { invoice: CGI.escape(invoice) }),
103
- params: params,
104
- opts: opts
105
- )
106
- end
107
-
108
49
  # This endpoint creates a draft invoice for a given customer. The invoice remains a draft until you [finalize the invoice, which allows you to [pay](#pay_invoice) or <a href="#send_invoice">send](https://stripe.com/docs/api#finalize_invoice) the invoice to your customers.
109
50
  def self.create(params = {}, opts = {})
110
51
  request_stripe_object(method: :post, path: "/v1/invoices", params: params, opts: opts)
111
52
  end
112
53
 
113
- # At any time, you can preview the upcoming invoice for a customer. This will show you all the charges that are pending, including subscription renewal charges, invoice item charges, etc. It will also show you any discounts that are applicable to the invoice.
114
- #
115
- # Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer's discount.
116
- #
117
- # You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass a proration_date parameter when doing the actual subscription update. The value passed in should be the same as the subscription_proration_date returned on the upcoming invoice resource. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start] is equal to the subscription_proration_date on the upcoming invoice resource.
118
- def self.create_preview(params = {}, opts = {})
119
- request_stripe_object(
120
- method: :post,
121
- path: "/v1/invoices/create_preview",
122
- params: params,
123
- opts: opts
124
- )
125
- end
126
-
127
54
  # Permanently deletes a one-off invoice draft. This cannot be undone. Attempts to delete invoices that are no longer in a draft state will fail; once an invoice has been finalized or if an invoice is for a subscription, it must be [voided](https://stripe.com/docs/api#void_invoice).
128
55
  def self.delete(id, params = {}, opts = {})
129
56
  request_stripe_object(
@@ -219,26 +146,6 @@ module Stripe
219
146
  )
220
147
  end
221
148
 
222
- # Removes multiple line items from an invoice. This is only possible when an invoice is still a draft.
223
- def remove_lines(params = {}, opts = {})
224
- request_stripe_object(
225
- method: :post,
226
- path: format("/v1/invoices/%<invoice>s/remove_lines", { invoice: CGI.escape(self["id"]) }),
227
- params: params,
228
- opts: opts
229
- )
230
- end
231
-
232
- # Removes multiple line items from an invoice. This is only possible when an invoice is still a draft.
233
- def self.remove_lines(invoice, params = {}, opts = {})
234
- request_stripe_object(
235
- method: :post,
236
- path: format("/v1/invoices/%<invoice>s/remove_lines", { invoice: CGI.escape(invoice) }),
237
- params: params,
238
- opts: opts
239
- )
240
- end
241
-
242
149
  def self.search(params = {}, opts = {})
243
150
  request_stripe_object(method: :get, path: "/v1/invoices/search", params: params, opts: opts)
244
151
  end
@@ -295,26 +202,6 @@ module Stripe
295
202
  )
296
203
  end
297
204
 
298
- # Updates multiple line items on an invoice. This is only possible when an invoice is still a draft.
299
- def update_lines(params = {}, opts = {})
300
- request_stripe_object(
301
- method: :post,
302
- path: format("/v1/invoices/%<invoice>s/update_lines", { invoice: CGI.escape(self["id"]) }),
303
- params: params,
304
- opts: opts
305
- )
306
- end
307
-
308
- # Updates multiple line items on an invoice. This is only possible when an invoice is still a draft.
309
- def self.update_lines(invoice, params = {}, opts = {})
310
- request_stripe_object(
311
- method: :post,
312
- path: format("/v1/invoices/%<invoice>s/update_lines", { invoice: CGI.escape(invoice) }),
313
- params: params,
314
- opts: opts
315
- )
316
- end
317
-
318
205
  # Mark a finalized invoice as void. This cannot be undone. Voiding an invoice is similar to [deletion](https://stripe.com/docs/api#delete_invoice), however it only applies to finalized invoices and maintains a papertrail where the invoice can still be found.
319
206
  def void_invoice(params = {}, opts = {})
320
207
  request_stripe_object(
@@ -176,56 +176,6 @@ module Stripe
176
176
  request_stripe_object(method: :post, path: "/v1/payment_intents", params: params, opts: opts)
177
177
  end
178
178
 
179
- # Perform an decremental authorization on an eligible
180
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
181
- # PaymentIntent's status must be requires_capture and
182
- # [decremental_authorization.status](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-decremental_authorization)
183
- # must be available.
184
- #
185
- # Decremental authorizations decrease the authorized amount on your customer's card
186
- # to the new, lower amount provided. A single PaymentIntent can call this endpoint multiple times to further decrease the authorized amount.
187
- #
188
- # After decrement, the PaymentIntent object
189
- # returns with the updated
190
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
191
- # The PaymentIntent will now be capturable up to the new authorized amount.
192
- #
193
- # Each PaymentIntent can have a maximum of 10 decremental or incremental authorization attempts, including declines.
194
- # After it's captured, a PaymentIntent can no longer be decremented.
195
- def decrement_authorization(params = {}, opts = {})
196
- request_stripe_object(
197
- method: :post,
198
- path: format("/v1/payment_intents/%<intent>s/decrement_authorization", { intent: CGI.escape(self["id"]) }),
199
- params: params,
200
- opts: opts
201
- )
202
- end
203
-
204
- # Perform an decremental authorization on an eligible
205
- # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
206
- # PaymentIntent's status must be requires_capture and
207
- # [decremental_authorization.status](https://stripe.com/docs/api/charges/object#charge_object-payment_method_details-card-decremental_authorization)
208
- # must be available.
209
- #
210
- # Decremental authorizations decrease the authorized amount on your customer's card
211
- # to the new, lower amount provided. A single PaymentIntent can call this endpoint multiple times to further decrease the authorized amount.
212
- #
213
- # After decrement, the PaymentIntent object
214
- # returns with the updated
215
- # [amount](https://stripe.com/docs/api/payment_intents/object#payment_intent_object-amount).
216
- # The PaymentIntent will now be capturable up to the new authorized amount.
217
- #
218
- # Each PaymentIntent can have a maximum of 10 decremental or incremental authorization attempts, including declines.
219
- # After it's captured, a PaymentIntent can no longer be decremented.
220
- def self.decrement_authorization(intent, params = {}, opts = {})
221
- request_stripe_object(
222
- method: :post,
223
- path: format("/v1/payment_intents/%<intent>s/decrement_authorization", { intent: CGI.escape(intent) }),
224
- params: params,
225
- opts: opts
226
- )
227
- end
228
-
229
179
  # Perform an incremental authorization on an eligible
230
180
  # [PaymentIntent](https://stripe.com/docs/api/payment_intents/object). To be eligible, the
231
181
  # PaymentIntent's status must be requires_capture and
@@ -7,7 +7,6 @@ module Stripe
7
7
  class Quote < APIResource
8
8
  extend Stripe::APIOperations::Create
9
9
  extend Stripe::APIOperations::List
10
- extend Stripe::APIOperations::NestedResource
11
10
  include Stripe::APIOperations::Save
12
11
 
13
12
  OBJECT_NAME = "quote"
@@ -15,9 +14,6 @@ module Stripe
15
14
  "quote"
16
15
  end
17
16
 
18
- nested_resource_class_methods :preview_invoice, operations: %i[list]
19
- nested_resource_class_methods :preview_subscription_schedule, operations: %i[list]
20
-
21
17
  # Accepts the specified quote.
22
18
  def accept(params = {}, opts = {})
23
19
  request_stripe_object(
@@ -128,86 +124,6 @@ module Stripe
128
124
  )
129
125
  end
130
126
 
131
- # Retrieves a paginated list of lines for a quote. These lines describe changes that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
132
- def list_lines(params = {}, opts = {})
133
- request_stripe_object(
134
- method: :get,
135
- path: format("/v1/quotes/%<quote>s/lines", { quote: CGI.escape(self["id"]) }),
136
- params: params,
137
- opts: opts
138
- )
139
- end
140
-
141
- # Retrieves a paginated list of lines for a quote. These lines describe changes that will be used to create new subscription schedules or update existing subscription schedules when the quote is accepted.
142
- def self.list_lines(quote, params = {}, opts = {})
143
- request_stripe_object(
144
- method: :get,
145
- path: format("/v1/quotes/%<quote>s/lines", { quote: CGI.escape(quote) }),
146
- params: params,
147
- opts: opts
148
- )
149
- end
150
-
151
- # Preview the invoice line items that would be generated by accepting the quote.
152
- def list_preview_invoice_lines(preview_invoice, params = {}, opts = {})
153
- request_stripe_object(
154
- method: :get,
155
- path: format("/v1/quotes/%<quote>s/preview_invoices/%<preview_invoice>s/lines", { quote: CGI.escape(self["id"]), preview_invoice: CGI.escape(preview_invoice) }),
156
- params: params,
157
- opts: opts
158
- )
159
- end
160
-
161
- # Preview the invoice line items that would be generated by accepting the quote.
162
- def self.list_preview_invoice_lines(quote, preview_invoice, params = {}, opts = {})
163
- request_stripe_object(
164
- method: :get,
165
- path: format("/v1/quotes/%<quote>s/preview_invoices/%<preview_invoice>s/lines", { quote: CGI.escape(quote), preview_invoice: CGI.escape(preview_invoice) }),
166
- params: params,
167
- opts: opts
168
- )
169
- end
170
-
171
- # Converts a stale quote to draft.
172
- def mark_draft(params = {}, opts = {})
173
- request_stripe_object(
174
- method: :post,
175
- path: format("/v1/quotes/%<quote>s/mark_draft", { quote: CGI.escape(self["id"]) }),
176
- params: params,
177
- opts: opts
178
- )
179
- end
180
-
181
- # Converts a stale quote to draft.
182
- def self.mark_draft(quote, params = {}, opts = {})
183
- request_stripe_object(
184
- method: :post,
185
- path: format("/v1/quotes/%<quote>s/mark_draft", { quote: CGI.escape(quote) }),
186
- params: params,
187
- opts: opts
188
- )
189
- end
190
-
191
- # Converts a draft or open quote to stale.
192
- def mark_stale(params = {}, opts = {})
193
- request_stripe_object(
194
- method: :post,
195
- path: format("/v1/quotes/%<quote>s/mark_stale", { quote: CGI.escape(self["id"]) }),
196
- params: params,
197
- opts: opts
198
- )
199
- end
200
-
201
- # Converts a draft or open quote to stale.
202
- def self.mark_stale(quote, params = {}, opts = {})
203
- request_stripe_object(
204
- method: :post,
205
- path: format("/v1/quotes/%<quote>s/mark_stale", { quote: CGI.escape(quote) }),
206
- params: params,
207
- opts: opts
208
- )
209
- end
210
-
211
127
  # Download the PDF for a finalized quote
212
128
  def pdf(params = {}, opts = {}, &read_body_chunk_block)
213
129
  config = opts[:client]&.config || Stripe.config
@@ -234,26 +150,6 @@ module Stripe
234
150
  )
235
151
  end
236
152
 
237
- # Recompute the upcoming invoice estimate for the quote.
238
- def reestimate(params = {}, opts = {})
239
- request_stripe_object(
240
- method: :post,
241
- path: format("/v1/quotes/%<quote>s/reestimate", { quote: CGI.escape(self["id"]) }),
242
- params: params,
243
- opts: opts
244
- )
245
- end
246
-
247
- # Recompute the upcoming invoice estimate for the quote.
248
- def self.reestimate(quote, params = {}, opts = {})
249
- request_stripe_object(
250
- method: :post,
251
- path: format("/v1/quotes/%<quote>s/reestimate", { quote: CGI.escape(quote) }),
252
- params: params,
253
- opts: opts
254
- )
255
- end
256
-
257
153
  # A quote models prices and services for a customer.
258
154
  def self.update(id, params = {}, opts = {})
259
155
  request_stripe_object(
@@ -15,26 +15,6 @@ module Stripe
15
15
  "subscription_schedule"
16
16
  end
17
17
 
18
- # Amends an existing subscription schedule.
19
- def amend(params = {}, opts = {})
20
- request_stripe_object(
21
- method: :post,
22
- path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(self["id"]) }),
23
- params: params,
24
- opts: opts
25
- )
26
- end
27
-
28
- # Amends an existing subscription schedule.
29
- def self.amend(schedule, params = {}, opts = {})
30
- request_stripe_object(
31
- method: :post,
32
- path: format("/v1/subscription_schedules/%<schedule>s/amend", { schedule: CGI.escape(schedule) }),
33
- params: params,
34
- opts: opts
35
- )
36
- end
37
-
38
18
  # Cancels a subscription schedule and its associated subscription immediately (if the subscription schedule has an active subscription). A subscription schedule can only be canceled if its status is not_started or active.
39
19
  def cancel(params = {}, opts = {})
40
20
  request_stripe_object(
@@ -37,66 +37,6 @@ module Stripe
37
37
  )
38
38
  end
39
39
 
40
- # Initiates an input collection flow on a Reader.
41
- def collect_inputs(params = {}, opts = {})
42
- request_stripe_object(
43
- method: :post,
44
- path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(self["id"]) }),
45
- params: params,
46
- opts: opts
47
- )
48
- end
49
-
50
- # Initiates an input collection flow on a Reader.
51
- def self.collect_inputs(reader, params = {}, opts = {})
52
- request_stripe_object(
53
- method: :post,
54
- path: format("/v1/terminal/readers/%<reader>s/collect_inputs", { reader: CGI.escape(reader) }),
55
- params: params,
56
- opts: opts
57
- )
58
- end
59
-
60
- # Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation.
61
- def collect_payment_method(params = {}, opts = {})
62
- request_stripe_object(
63
- method: :post,
64
- path: format("/v1/terminal/readers/%<reader>s/collect_payment_method", { reader: CGI.escape(self["id"]) }),
65
- params: params,
66
- opts: opts
67
- )
68
- end
69
-
70
- # Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation.
71
- def self.collect_payment_method(reader, params = {}, opts = {})
72
- request_stripe_object(
73
- method: :post,
74
- path: format("/v1/terminal/readers/%<reader>s/collect_payment_method", { reader: CGI.escape(reader) }),
75
- params: params,
76
- opts: opts
77
- )
78
- end
79
-
80
- # Finalizes a payment on a Reader.
81
- def confirm_payment_intent(params = {}, opts = {})
82
- request_stripe_object(
83
- method: :post,
84
- path: format("/v1/terminal/readers/%<reader>s/confirm_payment_intent", { reader: CGI.escape(self["id"]) }),
85
- params: params,
86
- opts: opts
87
- )
88
- end
89
-
90
- # Finalizes a payment on a Reader.
91
- def self.confirm_payment_intent(reader, params = {}, opts = {})
92
- request_stripe_object(
93
- method: :post,
94
- path: format("/v1/terminal/readers/%<reader>s/confirm_payment_intent", { reader: CGI.escape(reader) }),
95
- params: params,
96
- opts: opts
97
- )
98
- end
99
-
100
40
  # Creates a new Reader object.
101
41
  def self.create(params = {}, opts = {})
102
42
  request_stripe_object(