stripe 10.7.1 → 10.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile +1 -1
- data/OPENAPI_VERSION +1 -1
- data/VERSION +1 -1
- data/lib/stripe/resources/account.rb +61 -1
- data/lib/stripe/resources/account_link.rb +5 -0
- data/lib/stripe/resources/account_session.rb +5 -0
- data/lib/stripe/resources/apple_pay_domain.rb +40 -0
- data/lib/stripe/resources/application_fee.rb +5 -0
- data/lib/stripe/resources/apps/secret.rb +10 -0
- data/lib/stripe/resources/balance_transaction.rb +12 -0
- data/lib/stripe/resources/bank_account.rb +27 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +30 -0
- data/lib/stripe/resources/billing_portal/session.rb +10 -0
- data/lib/stripe/resources/card.rb +27 -0
- data/lib/stripe/resources/charge.rb +22 -0
- data/lib/stripe/resources/checkout/session.rb +20 -0
- data/lib/stripe/resources/climate/order.rb +22 -0
- data/lib/stripe/resources/climate/product.rb +10 -0
- data/lib/stripe/resources/climate/supplier.rb +10 -0
- data/lib/stripe/resources/country_spec.rb +5 -0
- data/lib/stripe/resources/coupon.rb +42 -0
- data/lib/stripe/resources/credit_note.rb +33 -0
- data/lib/stripe/resources/customer.rb +42 -0
- data/lib/stripe/resources/customer_session.rb +10 -0
- data/lib/stripe/resources/dispute.rb +17 -0
- data/lib/stripe/resources/ephemeral_key.rb +20 -0
- data/lib/stripe/resources/event.rb +5 -0
- data/lib/stripe/resources/exchange_rate.rb +5 -0
- data/lib/stripe/resources/file.rb +5 -0
- data/lib/stripe/resources/file_link.rb +20 -0
- data/lib/stripe/resources/financial_connections/account.rb +10 -0
- data/lib/stripe/resources/financial_connections/session.rb +10 -0
- data/lib/stripe/resources/financial_connections/transaction.rb +10 -0
- data/lib/stripe/resources/identity/verification_report.rb +10 -0
- data/lib/stripe/resources/identity/verification_session.rb +39 -0
- data/lib/stripe/resources/invoice.rb +45 -0
- data/lib/stripe/resources/invoice_item.rb +40 -0
- data/lib/stripe/resources/issuing/authorization.rb +20 -0
- data/lib/stripe/resources/issuing/card.rb +20 -0
- data/lib/stripe/resources/issuing/cardholder.rb +30 -0
- data/lib/stripe/resources/issuing/dispute.rb +30 -0
- data/lib/stripe/resources/issuing/token.rb +15 -0
- data/lib/stripe/resources/issuing/transaction.rb +20 -0
- data/lib/stripe/resources/payment_intent.rb +35 -0
- data/lib/stripe/resources/payment_link.rb +20 -0
- data/lib/stripe/resources/payment_method.rb +22 -0
- data/lib/stripe/resources/payment_method_configuration.rb +30 -0
- data/lib/stripe/resources/payment_method_domain.rb +30 -0
- data/lib/stripe/resources/payout.rb +24 -0
- data/lib/stripe/resources/plan.rb +40 -0
- data/lib/stripe/resources/price.rb +20 -0
- data/lib/stripe/resources/product.rb +40 -0
- data/lib/stripe/resources/promotion_code.rb +20 -0
- data/lib/stripe/resources/quote.rb +20 -0
- data/lib/stripe/resources/radar/early_fraud_warning.rb +10 -0
- data/lib/stripe/resources/radar/value_list.rb +50 -0
- data/lib/stripe/resources/radar/value_list_item.rb +40 -0
- data/lib/stripe/resources/refund.rb +36 -0
- data/lib/stripe/resources/reporting/report_run.rb +20 -0
- data/lib/stripe/resources/reporting/report_type.rb +10 -0
- data/lib/stripe/resources/review.rb +5 -0
- data/lib/stripe/resources/setup_attempt.rb +5 -0
- data/lib/stripe/resources/setup_intent.rb +23 -0
- data/lib/stripe/resources/shipping_rate.rb +20 -0
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +10 -0
- data/lib/stripe/resources/source.rb +17 -0
- data/lib/stripe/resources/subscription.rb +46 -0
- data/lib/stripe/resources/subscription_item.rb +50 -0
- data/lib/stripe/resources/subscription_schedule.rb +30 -0
- data/lib/stripe/resources/tax/calculation.rb +10 -0
- data/lib/stripe/resources/tax/registration.rb +32 -0
- data/lib/stripe/resources/tax_code.rb +5 -0
- data/lib/stripe/resources/tax_id.rb +20 -0
- data/lib/stripe/resources/tax_rate.rb +20 -0
- data/lib/stripe/resources/terminal/configuration.rb +50 -0
- data/lib/stripe/resources/terminal/connection_token.rb +10 -0
- data/lib/stripe/resources/terminal/location.rb +51 -0
- data/lib/stripe/resources/terminal/reader.rb +50 -0
- data/lib/stripe/resources/test_helpers/test_clock.rb +40 -0
- data/lib/stripe/resources/token.rb +6 -0
- data/lib/stripe/resources/topup.rb +20 -0
- data/lib/stripe/resources/transfer.rb +22 -0
- data/lib/stripe/resources/treasury/credit_reversal.rb +20 -0
- data/lib/stripe/resources/treasury/debit_reversal.rb +20 -0
- data/lib/stripe/resources/treasury/financial_account.rb +30 -0
- data/lib/stripe/resources/treasury/inbound_transfer.rb +20 -0
- data/lib/stripe/resources/treasury/outbound_payment.rb +20 -0
- data/lib/stripe/resources/treasury/outbound_transfer.rb +20 -0
- data/lib/stripe/resources/treasury/received_credit.rb +10 -0
- data/lib/stripe/resources/treasury/received_debit.rb +10 -0
- data/lib/stripe/resources/treasury/transaction.rb +10 -0
- data/lib/stripe/resources/treasury/transaction_entry.rb +10 -0
- data/lib/stripe/resources/webhook_endpoint.rb +50 -0
- data/lib/stripe/version.rb +1 -1
- metadata +2 -2
@@ -42,5 +42,35 @@ module Stripe
|
|
42
42
|
opts: opts
|
43
43
|
)
|
44
44
|
end
|
45
|
+
|
46
|
+
# Creates a payment method domain.
|
47
|
+
def self.create(params = {}, opts = {})
|
48
|
+
request_stripe_object(
|
49
|
+
method: :post,
|
50
|
+
path: "/v1/payment_method_domains",
|
51
|
+
params: params,
|
52
|
+
opts: opts
|
53
|
+
)
|
54
|
+
end
|
55
|
+
|
56
|
+
# Lists the details of existing payment method domains.
|
57
|
+
def self.list(filters = {}, opts = {})
|
58
|
+
request_stripe_object(
|
59
|
+
method: :get,
|
60
|
+
path: "/v1/payment_method_domains",
|
61
|
+
params: filters,
|
62
|
+
opts: opts
|
63
|
+
)
|
64
|
+
end
|
65
|
+
|
66
|
+
# Updates an existing payment method domain.
|
67
|
+
def self.update(id, params = {}, opts = {})
|
68
|
+
request_stripe_object(
|
69
|
+
method: :post,
|
70
|
+
path: format("/v1/payment_method_domains/%<id>s", { id: CGI.escape(id) }),
|
71
|
+
params: params,
|
72
|
+
opts: opts
|
73
|
+
)
|
74
|
+
end
|
45
75
|
end
|
46
76
|
end
|
@@ -60,5 +60,29 @@ module Stripe
|
|
60
60
|
opts: opts
|
61
61
|
)
|
62
62
|
end
|
63
|
+
|
64
|
+
# To send funds to your own bank account, create a new payout object. Your [Stripe balance](https://stripe.com/docs/api#balance) must cover the payout amount. If it doesn't, you receive an “Insufficient Funds” error.
|
65
|
+
#
|
66
|
+
# If your API key is in test mode, money won't actually be sent, though every other action occurs as if you're in live mode.
|
67
|
+
#
|
68
|
+
# If you create a manual payout on a Stripe account that uses multiple payment source types, you need to specify the source type balance that the payout draws from. The [balance object](https://stripe.com/docs/api#balance_object) details available and pending amounts by source type.
|
69
|
+
def self.create(params = {}, opts = {})
|
70
|
+
request_stripe_object(method: :post, path: "/v1/payouts", params: params, opts: opts)
|
71
|
+
end
|
72
|
+
|
73
|
+
# Returns a list of existing payouts sent to third-party bank accounts or payouts that Stripe sent to you. The payouts return in sorted order, with the most recently created payouts appearing first.
|
74
|
+
def self.list(filters = {}, opts = {})
|
75
|
+
request_stripe_object(method: :get, path: "/v1/payouts", params: filters, opts: opts)
|
76
|
+
end
|
77
|
+
|
78
|
+
# Updates the specified payout by setting the values of the parameters you pass. We don't change parameters that you don't provide. This request only accepts the metadata as arguments.
|
79
|
+
def self.update(id, params = {}, opts = {})
|
80
|
+
request_stripe_object(
|
81
|
+
method: :post,
|
82
|
+
path: format("/v1/payouts/%<id>s", { id: CGI.escape(id) }),
|
83
|
+
params: params,
|
84
|
+
opts: opts
|
85
|
+
)
|
86
|
+
end
|
63
87
|
end
|
64
88
|
end
|
@@ -17,5 +17,45 @@ module Stripe
|
|
17
17
|
include Stripe::APIOperations::Save
|
18
18
|
|
19
19
|
OBJECT_NAME = "plan"
|
20
|
+
|
21
|
+
# You can now model subscriptions more flexibly using the [Prices API](https://stripe.com/docs/api#prices). It replaces the Plans API and is backwards compatible to simplify your migration.
|
22
|
+
def self.create(params = {}, opts = {})
|
23
|
+
request_stripe_object(method: :post, path: "/v1/plans", params: params, opts: opts)
|
24
|
+
end
|
25
|
+
|
26
|
+
# Deleting plans means new subscribers can't be added. Existing subscribers aren't affected.
|
27
|
+
def self.delete(id, params = {}, opts = {})
|
28
|
+
request_stripe_object(
|
29
|
+
method: :delete,
|
30
|
+
path: format("/v1/plans/%<id>s", { id: CGI.escape(id) }),
|
31
|
+
params: params,
|
32
|
+
opts: opts
|
33
|
+
)
|
34
|
+
end
|
35
|
+
|
36
|
+
# Deleting plans means new subscribers can't be added. Existing subscribers aren't affected.
|
37
|
+
def delete(params = {}, opts = {})
|
38
|
+
request_stripe_object(
|
39
|
+
method: :delete,
|
40
|
+
path: format("/v1/plans/%<plan>s", { plan: CGI.escape(self["id"]) }),
|
41
|
+
params: params,
|
42
|
+
opts: opts
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Returns a list of your plans.
|
47
|
+
def self.list(filters = {}, opts = {})
|
48
|
+
request_stripe_object(method: :get, path: "/v1/plans", params: filters, opts: opts)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Updates the specified plan by setting the values of the parameters passed. Any parameters not provided are left unchanged. By design, you cannot change a plan's ID, amount, currency, or billing cycle.
|
52
|
+
def self.update(id, params = {}, opts = {})
|
53
|
+
request_stripe_object(
|
54
|
+
method: :post,
|
55
|
+
path: format("/v1/plans/%<id>s", { id: CGI.escape(id) }),
|
56
|
+
params: params,
|
57
|
+
opts: opts
|
58
|
+
)
|
59
|
+
end
|
20
60
|
end
|
21
61
|
end
|
@@ -16,6 +16,16 @@ module Stripe
|
|
16
16
|
|
17
17
|
OBJECT_NAME = "price"
|
18
18
|
|
19
|
+
# Creates a new price for an existing product. The price can be recurring or one-time.
|
20
|
+
def self.create(params = {}, opts = {})
|
21
|
+
request_stripe_object(method: :post, path: "/v1/prices", params: params, opts: opts)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Returns a list of your active prices, excluding [inline prices](https://stripe.com/docs/products-prices/pricing-models#inline-pricing). For the list of inactive prices, set active to false.
|
25
|
+
def self.list(filters = {}, opts = {})
|
26
|
+
request_stripe_object(method: :get, path: "/v1/prices", params: filters, opts: opts)
|
27
|
+
end
|
28
|
+
|
19
29
|
def self.search(params = {}, opts = {})
|
20
30
|
request_stripe_object(method: :get, path: "/v1/prices/search", params: params, opts: opts)
|
21
31
|
end
|
@@ -23,5 +33,15 @@ module Stripe
|
|
23
33
|
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
|
24
34
|
search(params, opts).auto_paging_each(&blk)
|
25
35
|
end
|
36
|
+
|
37
|
+
# Updates the specified price by setting the values of the parameters passed. Any parameters not provided are left unchanged.
|
38
|
+
def self.update(id, params = {}, opts = {})
|
39
|
+
request_stripe_object(
|
40
|
+
method: :post,
|
41
|
+
path: format("/v1/prices/%<id>s", { id: CGI.escape(id) }),
|
42
|
+
params: params,
|
43
|
+
opts: opts
|
44
|
+
)
|
45
|
+
end
|
26
46
|
end
|
27
47
|
end
|
@@ -19,6 +19,36 @@ module Stripe
|
|
19
19
|
|
20
20
|
OBJECT_NAME = "product"
|
21
21
|
|
22
|
+
# Creates a new product object.
|
23
|
+
def self.create(params = {}, opts = {})
|
24
|
+
request_stripe_object(method: :post, path: "/v1/products", params: params, opts: opts)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Delete a product. Deleting a product is only possible if it has no prices associated with it. Additionally, deleting a product with type=good is only possible if it has no SKUs associated with it.
|
28
|
+
def self.delete(id, params = {}, opts = {})
|
29
|
+
request_stripe_object(
|
30
|
+
method: :delete,
|
31
|
+
path: format("/v1/products/%<id>s", { id: CGI.escape(id) }),
|
32
|
+
params: params,
|
33
|
+
opts: opts
|
34
|
+
)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Delete a product. Deleting a product is only possible if it has no prices associated with it. Additionally, deleting a product with type=good is only possible if it has no SKUs associated with it.
|
38
|
+
def delete(params = {}, opts = {})
|
39
|
+
request_stripe_object(
|
40
|
+
method: :delete,
|
41
|
+
path: format("/v1/products/%<id>s", { id: CGI.escape(self["id"]) }),
|
42
|
+
params: params,
|
43
|
+
opts: opts
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Returns a list of your products. The products are returned sorted by creation date, with the most recently created products appearing first.
|
48
|
+
def self.list(filters = {}, opts = {})
|
49
|
+
request_stripe_object(method: :get, path: "/v1/products", params: filters, opts: opts)
|
50
|
+
end
|
51
|
+
|
22
52
|
def self.search(params = {}, opts = {})
|
23
53
|
request_stripe_object(method: :get, path: "/v1/products/search", params: params, opts: opts)
|
24
54
|
end
|
@@ -26,5 +56,15 @@ module Stripe
|
|
26
56
|
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
|
27
57
|
search(params, opts).auto_paging_each(&blk)
|
28
58
|
end
|
59
|
+
|
60
|
+
# Updates the specific product by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
|
61
|
+
def self.update(id, params = {}, opts = {})
|
62
|
+
request_stripe_object(
|
63
|
+
method: :post,
|
64
|
+
path: format("/v1/products/%<id>s", { id: CGI.escape(id) }),
|
65
|
+
params: params,
|
66
|
+
opts: opts
|
67
|
+
)
|
68
|
+
end
|
29
69
|
end
|
30
70
|
end
|
@@ -10,5 +10,25 @@ module Stripe
|
|
10
10
|
include Stripe::APIOperations::Save
|
11
11
|
|
12
12
|
OBJECT_NAME = "promotion_code"
|
13
|
+
|
14
|
+
# A promotion code points to a coupon. You can optionally restrict the code to a specific customer, redemption limit, and expiration date.
|
15
|
+
def self.create(params = {}, opts = {})
|
16
|
+
request_stripe_object(method: :post, path: "/v1/promotion_codes", params: params, opts: opts)
|
17
|
+
end
|
18
|
+
|
19
|
+
# Returns a list of your promotion codes.
|
20
|
+
def self.list(filters = {}, opts = {})
|
21
|
+
request_stripe_object(method: :get, path: "/v1/promotion_codes", params: filters, opts: opts)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Updates the specified promotion code by setting the values of the parameters passed. Most fields are, by design, not editable.
|
25
|
+
def self.update(id, params = {}, opts = {})
|
26
|
+
request_stripe_object(
|
27
|
+
method: :post,
|
28
|
+
path: format("/v1/promotion_codes/%<id>s", { id: CGI.escape(id) }),
|
29
|
+
params: params,
|
30
|
+
opts: opts
|
31
|
+
)
|
32
|
+
end
|
13
33
|
end
|
14
34
|
end
|
@@ -136,5 +136,25 @@ module Stripe
|
|
136
136
|
&read_body_chunk_block
|
137
137
|
)
|
138
138
|
end
|
139
|
+
|
140
|
+
# A quote models prices and services for a customer. Default options for header, description, footer, and expires_at can be set in the dashboard via the [quote template](https://dashboard.stripe.com/settings/billing/quote).
|
141
|
+
def self.create(params = {}, opts = {})
|
142
|
+
request_stripe_object(method: :post, path: "/v1/quotes", params: params, opts: opts)
|
143
|
+
end
|
144
|
+
|
145
|
+
# Returns a list of your quotes.
|
146
|
+
def self.list(filters = {}, opts = {})
|
147
|
+
request_stripe_object(method: :get, path: "/v1/quotes", params: filters, opts: opts)
|
148
|
+
end
|
149
|
+
|
150
|
+
# A quote models prices and services for a customer.
|
151
|
+
def self.update(id, params = {}, opts = {})
|
152
|
+
request_stripe_object(
|
153
|
+
method: :post,
|
154
|
+
path: format("/v1/quotes/%<id>s", { id: CGI.escape(id) }),
|
155
|
+
params: params,
|
156
|
+
opts: opts
|
157
|
+
)
|
158
|
+
end
|
139
159
|
end
|
140
160
|
end
|
@@ -11,6 +11,16 @@ module Stripe
|
|
11
11
|
extend Stripe::APIOperations::List
|
12
12
|
|
13
13
|
OBJECT_NAME = "radar.early_fraud_warning"
|
14
|
+
|
15
|
+
# Returns a list of early fraud warnings.
|
16
|
+
def self.list(filters = {}, opts = {})
|
17
|
+
request_stripe_object(
|
18
|
+
method: :get,
|
19
|
+
path: "/v1/radar/early_fraud_warnings",
|
20
|
+
params: filters,
|
21
|
+
opts: opts
|
22
|
+
)
|
23
|
+
end
|
14
24
|
end
|
15
25
|
end
|
16
26
|
end
|
@@ -13,6 +13,56 @@ module Stripe
|
|
13
13
|
include Stripe::APIOperations::Save
|
14
14
|
|
15
15
|
OBJECT_NAME = "radar.value_list"
|
16
|
+
|
17
|
+
# Creates a new ValueList object, which can then be referenced in rules.
|
18
|
+
def self.create(params = {}, opts = {})
|
19
|
+
request_stripe_object(
|
20
|
+
method: :post,
|
21
|
+
path: "/v1/radar/value_lists",
|
22
|
+
params: params,
|
23
|
+
opts: opts
|
24
|
+
)
|
25
|
+
end
|
26
|
+
|
27
|
+
# Deletes a ValueList object, also deleting any items contained within the value list. To be deleted, a value list must not be referenced in any rules.
|
28
|
+
def self.delete(id, params = {}, opts = {})
|
29
|
+
request_stripe_object(
|
30
|
+
method: :delete,
|
31
|
+
path: format("/v1/radar/value_lists/%<id>s", { id: CGI.escape(id) }),
|
32
|
+
params: params,
|
33
|
+
opts: opts
|
34
|
+
)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Deletes a ValueList object, also deleting any items contained within the value list. To be deleted, a value list must not be referenced in any rules.
|
38
|
+
def delete(params = {}, opts = {})
|
39
|
+
request_stripe_object(
|
40
|
+
method: :delete,
|
41
|
+
path: format("/v1/radar/value_lists/%<value_list>s", { value_list: CGI.escape(self["id"]) }),
|
42
|
+
params: params,
|
43
|
+
opts: opts
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Returns a list of ValueList objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
|
48
|
+
def self.list(filters = {}, opts = {})
|
49
|
+
request_stripe_object(
|
50
|
+
method: :get,
|
51
|
+
path: "/v1/radar/value_lists",
|
52
|
+
params: filters,
|
53
|
+
opts: opts
|
54
|
+
)
|
55
|
+
end
|
56
|
+
|
57
|
+
# Updates a ValueList object by setting the values of the parameters passed. Any parameters not provided will be left unchanged. Note that item_type is immutable.
|
58
|
+
def self.update(id, params = {}, opts = {})
|
59
|
+
request_stripe_object(
|
60
|
+
method: :post,
|
61
|
+
path: format("/v1/radar/value_lists/%<id>s", { id: CGI.escape(id) }),
|
62
|
+
params: params,
|
63
|
+
opts: opts
|
64
|
+
)
|
65
|
+
end
|
16
66
|
end
|
17
67
|
end
|
18
68
|
end
|
@@ -12,6 +12,46 @@ module Stripe
|
|
12
12
|
extend Stripe::APIOperations::List
|
13
13
|
|
14
14
|
OBJECT_NAME = "radar.value_list_item"
|
15
|
+
|
16
|
+
# Creates a new ValueListItem object, which is added to the specified parent value list.
|
17
|
+
def self.create(params = {}, opts = {})
|
18
|
+
request_stripe_object(
|
19
|
+
method: :post,
|
20
|
+
path: "/v1/radar/value_list_items",
|
21
|
+
params: params,
|
22
|
+
opts: opts
|
23
|
+
)
|
24
|
+
end
|
25
|
+
|
26
|
+
# Deletes a ValueListItem object, removing it from its parent value list.
|
27
|
+
def self.delete(id, params = {}, opts = {})
|
28
|
+
request_stripe_object(
|
29
|
+
method: :delete,
|
30
|
+
path: format("/v1/radar/value_list_items/%<id>s", { id: CGI.escape(id) }),
|
31
|
+
params: params,
|
32
|
+
opts: opts
|
33
|
+
)
|
34
|
+
end
|
35
|
+
|
36
|
+
# Deletes a ValueListItem object, removing it from its parent value list.
|
37
|
+
def delete(params = {}, opts = {})
|
38
|
+
request_stripe_object(
|
39
|
+
method: :delete,
|
40
|
+
path: format("/v1/radar/value_list_items/%<item>s", { item: CGI.escape(self["id"]) }),
|
41
|
+
params: params,
|
42
|
+
opts: opts
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Returns a list of ValueListItem objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
|
47
|
+
def self.list(filters = {}, opts = {})
|
48
|
+
request_stripe_object(
|
49
|
+
method: :get,
|
50
|
+
path: "/v1/radar/value_list_items",
|
51
|
+
params: filters,
|
52
|
+
opts: opts
|
53
|
+
)
|
54
|
+
end
|
15
55
|
end
|
16
56
|
end
|
17
57
|
end
|
@@ -38,6 +38,42 @@ module Stripe
|
|
38
38
|
)
|
39
39
|
end
|
40
40
|
|
41
|
+
def self.list(filters = {}, opts = {})
|
42
|
+
request_stripe_object(
|
43
|
+
method: :get,
|
44
|
+
path: format("/v1/refunds"),
|
45
|
+
params: filters,
|
46
|
+
opts: opts
|
47
|
+
)
|
48
|
+
end
|
49
|
+
|
50
|
+
# When you create a new refund, you must specify a Charge or a PaymentIntent object on which to create it.
|
51
|
+
#
|
52
|
+
# Creating a new refund will refund a charge that has previously been created but not yet refunded.
|
53
|
+
# Funds will be refunded to the credit or debit card that was originally charged.
|
54
|
+
#
|
55
|
+
# You can optionally refund only part of a charge.
|
56
|
+
# You can do so multiple times, until the entire charge has been refunded.
|
57
|
+
#
|
58
|
+
# Once entirely refunded, a charge can't be refunded again.
|
59
|
+
# This method will raise an error when called on an already-refunded charge,
|
60
|
+
# or when trying to refund more money than is left on a charge.
|
61
|
+
def self.create(params = {}, opts = {})
|
62
|
+
request_stripe_object(method: :post, path: "/v1/refunds", params: params, opts: opts)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Updates the refund that you specify by setting the values of the passed parameters. Any parameters that you don't provide remain unchanged.
|
66
|
+
#
|
67
|
+
# This request only accepts metadata as an argument.
|
68
|
+
def self.update(id, params = {}, opts = {})
|
69
|
+
request_stripe_object(
|
70
|
+
method: :post,
|
71
|
+
path: format("/v1/refunds/%<id>s", { id: CGI.escape(id) }),
|
72
|
+
params: params,
|
73
|
+
opts: opts
|
74
|
+
)
|
75
|
+
end
|
76
|
+
|
41
77
|
def test_helpers
|
42
78
|
TestHelpers.new(self)
|
43
79
|
end
|
@@ -16,6 +16,26 @@ module Stripe
|
|
16
16
|
extend Stripe::APIOperations::List
|
17
17
|
|
18
18
|
OBJECT_NAME = "reporting.report_run"
|
19
|
+
|
20
|
+
# Creates a new object and begin running the report. (Certain report types require a [live-mode API key](https://stripe.com/docs/keys#test-live-modes).)
|
21
|
+
def self.create(params = {}, opts = {})
|
22
|
+
request_stripe_object(
|
23
|
+
method: :post,
|
24
|
+
path: "/v1/reporting/report_runs",
|
25
|
+
params: params,
|
26
|
+
opts: opts
|
27
|
+
)
|
28
|
+
end
|
29
|
+
|
30
|
+
# Returns a list of Report Runs, with the most recent appearing first.
|
31
|
+
def self.list(filters = {}, opts = {})
|
32
|
+
request_stripe_object(
|
33
|
+
method: :get,
|
34
|
+
path: "/v1/reporting/report_runs",
|
35
|
+
params: filters,
|
36
|
+
opts: opts
|
37
|
+
)
|
38
|
+
end
|
19
39
|
end
|
20
40
|
end
|
21
41
|
end
|
@@ -15,6 +15,16 @@ module Stripe
|
|
15
15
|
extend Stripe::APIOperations::List
|
16
16
|
|
17
17
|
OBJECT_NAME = "reporting.report_type"
|
18
|
+
|
19
|
+
# Returns a full list of Report Types.
|
20
|
+
def self.list(filters = {}, opts = {})
|
21
|
+
request_stripe_object(
|
22
|
+
method: :get,
|
23
|
+
path: "/v1/reporting/report_types",
|
24
|
+
params: filters,
|
25
|
+
opts: opts
|
26
|
+
)
|
27
|
+
end
|
18
28
|
end
|
19
29
|
end
|
20
30
|
end
|
@@ -30,5 +30,10 @@ module Stripe
|
|
30
30
|
opts: opts
|
31
31
|
)
|
32
32
|
end
|
33
|
+
|
34
|
+
# Returns a list of Review objects that have open set to true. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
|
35
|
+
def self.list(filters = {}, opts = {})
|
36
|
+
request_stripe_object(method: :get, path: "/v1/reviews", params: filters, opts: opts)
|
37
|
+
end
|
33
38
|
end
|
34
39
|
end
|
@@ -10,5 +10,10 @@ module Stripe
|
|
10
10
|
extend Stripe::APIOperations::List
|
11
11
|
|
12
12
|
OBJECT_NAME = "setup_attempt"
|
13
|
+
|
14
|
+
# Returns a list of SetupAttempts that associate with a provided SetupIntent.
|
15
|
+
def self.list(filters = {}, opts = {})
|
16
|
+
request_stripe_object(method: :get, path: "/v1/setup_attempts", params: filters, opts: opts)
|
17
|
+
end
|
13
18
|
end
|
14
19
|
end
|
@@ -119,5 +119,28 @@ module Stripe
|
|
119
119
|
opts: opts
|
120
120
|
)
|
121
121
|
end
|
122
|
+
|
123
|
+
# Creates a SetupIntent object.
|
124
|
+
#
|
125
|
+
# After you create the SetupIntent, attach a payment method and [confirm](https://stripe.com/docs/api/setup_intents/confirm)
|
126
|
+
# it to collect any required permissions to charge the payment method later.
|
127
|
+
def self.create(params = {}, opts = {})
|
128
|
+
request_stripe_object(method: :post, path: "/v1/setup_intents", params: params, opts: opts)
|
129
|
+
end
|
130
|
+
|
131
|
+
# Returns a list of SetupIntents.
|
132
|
+
def self.list(filters = {}, opts = {})
|
133
|
+
request_stripe_object(method: :get, path: "/v1/setup_intents", params: filters, opts: opts)
|
134
|
+
end
|
135
|
+
|
136
|
+
# Updates a SetupIntent object.
|
137
|
+
def self.update(id, params = {}, opts = {})
|
138
|
+
request_stripe_object(
|
139
|
+
method: :post,
|
140
|
+
path: format("/v1/setup_intents/%<id>s", { id: CGI.escape(id) }),
|
141
|
+
params: params,
|
142
|
+
opts: opts
|
143
|
+
)
|
144
|
+
end
|
122
145
|
end
|
123
146
|
end
|
@@ -10,5 +10,25 @@ module Stripe
|
|
10
10
|
include Stripe::APIOperations::Save
|
11
11
|
|
12
12
|
OBJECT_NAME = "shipping_rate"
|
13
|
+
|
14
|
+
# Creates a new shipping rate object.
|
15
|
+
def self.create(params = {}, opts = {})
|
16
|
+
request_stripe_object(method: :post, path: "/v1/shipping_rates", params: params, opts: opts)
|
17
|
+
end
|
18
|
+
|
19
|
+
# Returns a list of your shipping rates.
|
20
|
+
def self.list(filters = {}, opts = {})
|
21
|
+
request_stripe_object(method: :get, path: "/v1/shipping_rates", params: filters, opts: opts)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Updates an existing shipping rate object.
|
25
|
+
def self.update(id, params = {}, opts = {})
|
26
|
+
request_stripe_object(
|
27
|
+
method: :post,
|
28
|
+
path: format("/v1/shipping_rates/%<id>s", { id: CGI.escape(id) }),
|
29
|
+
params: params,
|
30
|
+
opts: opts
|
31
|
+
)
|
32
|
+
end
|
13
33
|
end
|
14
34
|
end
|
@@ -15,6 +15,16 @@ module Stripe
|
|
15
15
|
def self.resource_url
|
16
16
|
"/v1/sigma/scheduled_query_runs"
|
17
17
|
end
|
18
|
+
|
19
|
+
# Returns a list of scheduled query runs.
|
20
|
+
def self.list(filters = {}, opts = {})
|
21
|
+
request_stripe_object(
|
22
|
+
method: :get,
|
23
|
+
path: "/v1/sigma/scheduled_query_runs",
|
24
|
+
params: filters,
|
25
|
+
opts: opts
|
26
|
+
)
|
27
|
+
end
|
18
28
|
end
|
19
29
|
end
|
20
30
|
end
|
@@ -64,5 +64,22 @@ module Stripe
|
|
64
64
|
end
|
65
65
|
extend Gem::Deprecate
|
66
66
|
deprecate :source_transactions, :"Source.list_source_transactions", 2020, 1
|
67
|
+
|
68
|
+
# Creates a new source object.
|
69
|
+
def self.create(params = {}, opts = {})
|
70
|
+
request_stripe_object(method: :post, path: "/v1/sources", params: params, opts: opts)
|
71
|
+
end
|
72
|
+
|
73
|
+
# Updates the specified source by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
|
74
|
+
#
|
75
|
+
# This request accepts the metadata and owner as arguments. It is also possible to update type specific information for selected payment methods. Please refer to our [payment method guides](https://stripe.com/docs/sources) for more detail.
|
76
|
+
def self.update(id, params = {}, opts = {})
|
77
|
+
request_stripe_object(
|
78
|
+
method: :post,
|
79
|
+
path: format("/v1/sources/%<id>s", { id: CGI.escape(id) }),
|
80
|
+
params: params,
|
81
|
+
opts: opts
|
82
|
+
)
|
83
|
+
end
|
67
84
|
end
|
68
85
|
end
|
@@ -83,6 +83,22 @@ module Stripe
|
|
83
83
|
|
84
84
|
save_nested_resource :source
|
85
85
|
|
86
|
+
# Creates a new subscription on an existing customer. Each customer can have up to 500 active or scheduled subscriptions.
|
87
|
+
#
|
88
|
+
# When you create a subscription with collection_method=charge_automatically, the first invoice is finalized as part of the request.
|
89
|
+
# The payment_behavior parameter determines the exact behavior of the initial payment.
|
90
|
+
#
|
91
|
+
# To start subscriptions where the first invoice always begins in a draft status, use [subscription schedules](https://stripe.com/docs/billing/subscriptions/subscription-schedules#managing) instead.
|
92
|
+
# Schedules provide the flexibility to model more complex billing configurations that change over time.
|
93
|
+
def self.create(params = {}, opts = {})
|
94
|
+
request_stripe_object(method: :post, path: "/v1/subscriptions", params: params, opts: opts)
|
95
|
+
end
|
96
|
+
|
97
|
+
# By default, returns a list of subscriptions that have not been canceled. In order to list canceled subscriptions, specify status=canceled.
|
98
|
+
def self.list(filters = {}, opts = {})
|
99
|
+
request_stripe_object(method: :get, path: "/v1/subscriptions", params: filters, opts: opts)
|
100
|
+
end
|
101
|
+
|
86
102
|
def self.search(params = {}, opts = {})
|
87
103
|
request_stripe_object(
|
88
104
|
method: :get,
|
@@ -95,5 +111,35 @@ module Stripe
|
|
95
111
|
def self.search_auto_paging_each(params = {}, opts = {}, &blk)
|
96
112
|
search(params, opts).auto_paging_each(&blk)
|
97
113
|
end
|
114
|
+
|
115
|
+
# Updates an existing subscription to match the specified parameters.
|
116
|
+
# When changing prices or quantities, we optionally prorate the price we charge next month to make up for any price changes.
|
117
|
+
# To preview how the proration is calculated, use the [upcoming invoice](https://stripe.com/docs/api/invoices/upcoming) endpoint.
|
118
|
+
#
|
119
|
+
# By default, we prorate subscription changes. For example, if a customer signs up on May 1 for a 100 price, they'll be billed 100 immediately. If on May 15 they switch to a 200 price, then on June 1 they'll be billed 250 (200 for a renewal of her subscription, plus a 50 prorating adjustment for half of the previous month's 100 difference). Similarly, a downgrade generates a credit that is applied to the next invoice. We also prorate when you make quantity changes.
|
120
|
+
#
|
121
|
+
# Switching prices does not normally change the billing date or generate an immediate charge unless:
|
122
|
+
#
|
123
|
+
#
|
124
|
+
# The billing interval is changed (for example, from monthly to yearly).
|
125
|
+
# The subscription moves from free to paid, or paid to free.
|
126
|
+
# A trial starts or ends.
|
127
|
+
#
|
128
|
+
#
|
129
|
+
# In these cases, we apply a credit for the unused time on the previous price, immediately charge the customer using the new price, and reset the billing date.
|
130
|
+
#
|
131
|
+
# If you want to charge for an upgrade immediately, pass proration_behavior as always_invoice to create prorations, automatically invoice the customer for those proration adjustments, and attempt to collect payment. If you pass create_prorations, the prorations are created but not automatically invoiced. If you want to bill the customer for the prorations before the subscription's renewal date, you need to manually [invoice the customer](https://stripe.com/docs/api/invoices/create).
|
132
|
+
#
|
133
|
+
# If you don't want to prorate, set the proration_behavior option to none. With this option, the customer is billed 100 on May 1 and 200 on June 1. Similarly, if you set proration_behavior to none when switching between different billing intervals (for example, from monthly to yearly), we don't generate any credits for the old subscription's unused time. We still reset the billing date and bill immediately for the new subscription.
|
134
|
+
#
|
135
|
+
# Updating the quantity on a subscription many times in an hour may result in [rate limiting. If you need to bill for a frequently changing quantity, consider integrating <a href="/docs/billing/subscriptions/usage-based">usage-based billing](https://stripe.com/docs/rate-limits) instead.
|
136
|
+
def self.update(id, params = {}, opts = {})
|
137
|
+
request_stripe_object(
|
138
|
+
method: :post,
|
139
|
+
path: format("/v1/subscriptions/%<id>s", { id: CGI.escape(id) }),
|
140
|
+
params: params,
|
141
|
+
opts: opts
|
142
|
+
)
|
143
|
+
end
|
98
144
|
end
|
99
145
|
end
|