stripe 10.1.0 → 12.6.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +215 -21
- data/Gemfile +6 -5
- data/Makefile +8 -1
- data/OPENAPI_VERSION +1 -1
- data/README.md +46 -14
- data/Rakefile +7 -5
- data/VERSION +1 -1
- data/{bin → exe}/stripe-console +1 -1
- data/lib/stripe/api_operations/nested_resource.rb +22 -2
- data/lib/stripe/api_operations/request.rb +22 -18
- data/lib/stripe/api_operations/save.rb +7 -9
- data/lib/stripe/api_operations/search.rb +5 -0
- data/lib/stripe/api_operations/singleton_save.rb +86 -0
- data/lib/stripe/api_resource.rb +13 -4
- data/lib/stripe/api_resource_test_helpers.rb +7 -3
- data/lib/stripe/api_version.rb +1 -1
- data/lib/stripe/connection_manager.rb +4 -6
- data/lib/stripe/errors.rb +3 -11
- data/lib/stripe/instrumentation.rb +5 -21
- data/lib/stripe/list_object.rb +3 -0
- data/lib/stripe/multipart_encoder.rb +7 -7
- data/lib/stripe/oauth.rb +6 -6
- data/lib/stripe/object_types.rb +135 -116
- data/lib/stripe/resources/account.rb +103 -25
- data/lib/stripe/resources/account_link.rb +8 -0
- data/lib/stripe/resources/account_session.rb +8 -0
- data/lib/stripe/resources/alipay_account.rb +1 -1
- data/lib/stripe/resources/apple_pay_domain.rb +43 -0
- data/lib/stripe/resources/application_fee.rb +8 -0
- data/lib/stripe/resources/application_fee_refund.rb +4 -2
- data/lib/stripe/resources/apps/secret.rb +15 -0
- data/lib/stripe/resources/balance.rb +3 -0
- data/lib/stripe/resources/balance_transaction.rb +15 -0
- data/lib/stripe/resources/bank_account.rb +49 -7
- data/lib/stripe/resources/billing/alert.rb +87 -0
- data/lib/stripe/resources/billing/meter.rb +83 -0
- data/lib/stripe/resources/billing/meter_event.rb +27 -0
- data/lib/stripe/resources/billing/meter_event_adjustment.rb +26 -0
- data/lib/stripe/resources/billing/meter_event_summary.rb +15 -0
- data/lib/stripe/resources/billing_portal/configuration.rb +33 -0
- data/lib/stripe/resources/billing_portal/session.rb +14 -1
- data/lib/stripe/resources/capability.rb +4 -2
- data/lib/stripe/resources/card.rb +28 -0
- data/lib/stripe/resources/cash_balance.rb +3 -0
- data/lib/stripe/resources/charge.rb +39 -1
- data/lib/stripe/resources/checkout/session.rb +47 -5
- data/lib/stripe/resources/climate/order.rb +67 -0
- data/lib/stripe/resources/climate/product.rb +27 -0
- data/lib/stripe/resources/climate/supplier.rb +26 -0
- data/lib/stripe/resources/confirmation_token.rb +39 -0
- data/lib/stripe/resources/country_spec.rb +8 -0
- data/lib/stripe/resources/coupon.rb +45 -0
- data/lib/stripe/resources/credit_note.rb +47 -7
- data/lib/stripe/resources/credit_note_line_item.rb +3 -0
- data/lib/stripe/resources/customer.rb +89 -26
- data/lib/stripe/resources/customer_balance_transaction.rb +3 -1
- data/lib/stripe/resources/customer_cash_balance_transaction.rb +3 -2
- data/lib/stripe/resources/customer_session.rb +29 -0
- data/lib/stripe/resources/discount.rb +3 -0
- data/lib/stripe/resources/dispute.rb +26 -0
- data/lib/stripe/resources/entitlements/active_entitlement.rb +26 -0
- data/lib/stripe/resources/entitlements/feature.rb +49 -0
- data/lib/stripe/resources/ephemeral_key.rb +23 -0
- data/lib/stripe/resources/event.rb +11 -3
- data/lib/stripe/resources/exchange_rate.rb +8 -0
- data/lib/stripe/resources/file.rb +29 -16
- data/lib/stripe/resources/file_link.rb +23 -0
- data/lib/stripe/resources/financial_connections/account.rb +66 -7
- data/lib/stripe/resources/financial_connections/account_owner.rb +3 -0
- data/lib/stripe/resources/financial_connections/account_ownership.rb +3 -0
- data/lib/stripe/resources/financial_connections/session.rb +13 -0
- data/lib/stripe/resources/financial_connections/transaction.rb +26 -0
- data/lib/stripe/resources/forwarding/request.rb +52 -0
- data/lib/stripe/resources/funding_instructions.rb +3 -0
- data/lib/stripe/resources/identity/verification_report.rb +14 -1
- data/lib/stripe/resources/identity/verification_session.rb +90 -4
- data/lib/stripe/resources/invoice.rb +170 -17
- data/lib/stripe/resources/invoice_item.rb +43 -0
- data/lib/stripe/resources/invoice_line_item.rb +21 -0
- data/lib/stripe/resources/invoice_rendering_template.rb +63 -0
- data/lib/stripe/resources/issuing/authorization.rb +88 -14
- data/lib/stripe/resources/issuing/card.rb +50 -16
- data/lib/stripe/resources/issuing/cardholder.rb +33 -0
- data/lib/stripe/resources/issuing/dispute.rb +35 -0
- data/lib/stripe/resources/issuing/personalization_design.rb +119 -0
- data/lib/stripe/resources/issuing/physical_bundle.rb +26 -0
- data/lib/stripe/resources/issuing/token.rb +18 -0
- data/lib/stripe/resources/issuing/transaction.rb +30 -0
- data/lib/stripe/resources/line_item.rb +3 -0
- data/lib/stripe/resources/login_link.rb +4 -1
- data/lib/stripe/resources/mandate.rb +3 -0
- data/lib/stripe/resources/payment_intent.rb +190 -25
- data/lib/stripe/resources/payment_link.rb +25 -0
- data/lib/stripe/resources/payment_method.rb +57 -4
- data/lib/stripe/resources/payment_method_configuration.rb +33 -0
- data/lib/stripe/resources/payment_method_domain.rb +46 -1
- data/lib/stripe/resources/payout.rb +39 -4
- data/lib/stripe/resources/person.rb +5 -4
- data/lib/stripe/resources/plan.rb +43 -0
- data/lib/stripe/resources/price.rb +24 -1
- data/lib/stripe/resources/product.rb +47 -1
- data/lib/stripe/resources/product_feature.rb +13 -0
- data/lib/stripe/resources/promotion_code.rb +23 -0
- data/lib/stripe/resources/quote.rb +67 -32
- data/lib/stripe/resources/radar/early_fraud_warning.rb +13 -0
- data/lib/stripe/resources/radar/value_list.rb +53 -0
- data/lib/stripe/resources/radar/value_list_item.rb +43 -0
- data/lib/stripe/resources/refund.rb +46 -0
- data/lib/stripe/resources/reporting/report_run.rb +23 -0
- data/lib/stripe/resources/reporting/report_type.rb +13 -0
- data/lib/stripe/resources/reversal.rb +5 -3
- data/lib/stripe/resources/review.rb +10 -0
- data/lib/stripe/resources/setup_attempt.rb +8 -0
- data/lib/stripe/resources/setup_intent.rb +72 -10
- data/lib/stripe/resources/shipping_rate.rb +23 -0
- data/lib/stripe/resources/sigma/scheduled_query_run.rb +13 -0
- data/lib/stripe/resources/source.rb +23 -1
- data/lib/stripe/resources/source_transaction.rb +3 -0
- data/lib/stripe/resources/subscription.rb +81 -13
- data/lib/stripe/resources/subscription_item.rb +54 -1
- data/lib/stripe/resources/subscription_schedule.rb +41 -4
- data/lib/stripe/resources/tax/calculation.rb +15 -0
- data/lib/stripe/resources/tax/calculation_line_item.rb +3 -0
- data/lib/stripe/resources/tax/registration.rb +35 -0
- data/lib/stripe/resources/tax/settings.rb +4 -2
- data/lib/stripe/resources/tax/transaction.rb +15 -8
- data/lib/stripe/resources/tax/transaction_line_item.rb +3 -0
- data/lib/stripe/resources/tax_code.rb +8 -0
- data/lib/stripe/resources/tax_id.rb +30 -12
- data/lib/stripe/resources/tax_rate.rb +23 -0
- data/lib/stripe/resources/terminal/configuration.rb +53 -0
- data/lib/stripe/resources/terminal/connection_token.rb +13 -0
- data/lib/stripe/resources/terminal/location.rb +54 -0
- data/lib/stripe/resources/terminal/reader.rb +80 -12
- data/lib/stripe/resources/test_helpers/test_clock.rb +45 -0
- data/lib/stripe/resources/token.rb +10 -1
- data/lib/stripe/resources/topup.rb +25 -0
- data/lib/stripe/resources/transfer.rb +26 -1
- data/lib/stripe/resources/treasury/credit_reversal.rb +23 -0
- data/lib/stripe/resources/treasury/debit_reversal.rb +23 -0
- data/lib/stripe/resources/treasury/financial_account.rb +42 -5
- data/lib/stripe/resources/treasury/financial_account_features.rb +3 -0
- data/lib/stripe/resources/treasury/inbound_transfer.rb +47 -11
- data/lib/stripe/resources/treasury/outbound_payment.rb +64 -8
- data/lib/stripe/resources/treasury/outbound_transfer.rb +64 -8
- data/lib/stripe/resources/treasury/received_credit.rb +17 -0
- data/lib/stripe/resources/treasury/received_debit.rb +17 -0
- data/lib/stripe/resources/treasury/transaction.rb +13 -0
- data/lib/stripe/resources/treasury/transaction_entry.rb +13 -0
- data/lib/stripe/resources/usage_record.rb +5 -0
- data/lib/stripe/resources/usage_record_summary.rb +3 -0
- data/lib/stripe/resources/webhook_endpoint.rb +55 -2
- data/lib/stripe/resources.rb +18 -0
- data/lib/stripe/search_result_object.rb +4 -1
- data/lib/stripe/singleton_api_resource.rb +20 -3
- data/lib/stripe/stripe_client.rb +61 -63
- data/lib/stripe/stripe_configuration.rb +13 -29
- data/lib/stripe/stripe_object.rb +23 -21
- data/lib/stripe/stripe_response.rb +1 -3
- data/lib/stripe/util.rb +13 -15
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe.rb +26 -0
- data/stripe.gemspec +7 -4
- metadata +25 -5
@@ -0,0 +1,26 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module Entitlements
|
6
|
+
# An active entitlement describes access to a feature for a customer.
|
7
|
+
class ActiveEntitlement < APIResource
|
8
|
+
extend Stripe::APIOperations::List
|
9
|
+
|
10
|
+
OBJECT_NAME = "entitlements.active_entitlement"
|
11
|
+
def self.object_name
|
12
|
+
"entitlements.active_entitlement"
|
13
|
+
end
|
14
|
+
|
15
|
+
# Retrieve a list of active entitlements for a customer
|
16
|
+
def self.list(filters = {}, opts = {})
|
17
|
+
request_stripe_object(
|
18
|
+
method: :get,
|
19
|
+
path: "/v1/entitlements/active_entitlements",
|
20
|
+
params: filters,
|
21
|
+
opts: opts
|
22
|
+
)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module Entitlements
|
6
|
+
# A feature represents a monetizable ability or functionality in your system.
|
7
|
+
# Features can be assigned to products, and when those products are purchased, Stripe will create an entitlement to the feature for the purchasing customer.
|
8
|
+
class Feature < APIResource
|
9
|
+
extend Stripe::APIOperations::Create
|
10
|
+
extend Stripe::APIOperations::List
|
11
|
+
include Stripe::APIOperations::Save
|
12
|
+
|
13
|
+
OBJECT_NAME = "entitlements.feature"
|
14
|
+
def self.object_name
|
15
|
+
"entitlements.feature"
|
16
|
+
end
|
17
|
+
|
18
|
+
# Creates a feature
|
19
|
+
def self.create(params = {}, opts = {})
|
20
|
+
request_stripe_object(
|
21
|
+
method: :post,
|
22
|
+
path: "/v1/entitlements/features",
|
23
|
+
params: params,
|
24
|
+
opts: opts
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Retrieve a list of features
|
29
|
+
def self.list(filters = {}, opts = {})
|
30
|
+
request_stripe_object(
|
31
|
+
method: :get,
|
32
|
+
path: "/v1/entitlements/features",
|
33
|
+
params: filters,
|
34
|
+
opts: opts
|
35
|
+
)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Update a feature's metadata or permanently deactivate it.
|
39
|
+
def self.update(id, params = {}, opts = {})
|
40
|
+
request_stripe_object(
|
41
|
+
method: :post,
|
42
|
+
path: format("/v1/entitlements/features/%<id>s", { id: CGI.escape(id) }),
|
43
|
+
params: params,
|
44
|
+
opts: opts
|
45
|
+
)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -7,6 +7,29 @@ module Stripe
|
|
7
7
|
include Stripe::APIOperations::Delete
|
8
8
|
|
9
9
|
OBJECT_NAME = "ephemeral_key"
|
10
|
+
def self.object_name
|
11
|
+
"ephemeral_key"
|
12
|
+
end
|
13
|
+
|
14
|
+
# Invalidates a short-lived API key for a given resource.
|
15
|
+
def self.delete(id, params = {}, opts = {})
|
16
|
+
request_stripe_object(
|
17
|
+
method: :delete,
|
18
|
+
path: format("/v1/ephemeral_keys/%<id>s", { id: CGI.escape(id) }),
|
19
|
+
params: params,
|
20
|
+
opts: opts
|
21
|
+
)
|
22
|
+
end
|
23
|
+
|
24
|
+
# Invalidates a short-lived API key for a given resource.
|
25
|
+
def delete(params = {}, opts = {})
|
26
|
+
request_stripe_object(
|
27
|
+
method: :delete,
|
28
|
+
path: format("/v1/ephemeral_keys/%<key>s", { key: CGI.escape(self["id"]) }),
|
29
|
+
params: params,
|
30
|
+
opts: opts
|
31
|
+
)
|
32
|
+
end
|
10
33
|
|
11
34
|
def self.create(params = {}, opts = {})
|
12
35
|
opts = Util.normalize_opts(opts)
|
@@ -23,10 +23,10 @@ module Stripe
|
|
23
23
|
# `Event` objects directly to an endpoint on your server. You can manage
|
24
24
|
# webhooks in your
|
25
25
|
# [account settings](https://dashboard.stripe.com/account/webhooks). Learn how
|
26
|
-
# to [listen for events]
|
27
|
-
#
|
26
|
+
# to [listen for events](https://docs.stripe.com/webhooks)
|
27
|
+
# so that your integration can automatically trigger reactions.
|
28
28
|
#
|
29
|
-
# When using [Connect](https://stripe.com/
|
29
|
+
# When using [Connect](https://docs.stripe.com/connect), you can also receive event notifications
|
30
30
|
# that occur in connected accounts. For these events, there's an
|
31
31
|
# additional `account` attribute in the received `Event` object.
|
32
32
|
#
|
@@ -36,5 +36,13 @@ module Stripe
|
|
36
36
|
extend Stripe::APIOperations::List
|
37
37
|
|
38
38
|
OBJECT_NAME = "event"
|
39
|
+
def self.object_name
|
40
|
+
"event"
|
41
|
+
end
|
42
|
+
|
43
|
+
# List events, going back up to 30 days. Each event data is rendered according to Stripe API version at its creation time, specified in [event object](https://docs.stripe.com/api/events/object) api_version attribute (not according to your current Stripe API version or Stripe-Version header).
|
44
|
+
def self.list(filters = {}, opts = {})
|
45
|
+
request_stripe_object(method: :get, path: "/v1/events", params: filters, opts: opts)
|
46
|
+
end
|
39
47
|
end
|
40
48
|
end
|
@@ -32,5 +32,13 @@ module Stripe
|
|
32
32
|
extend Stripe::APIOperations::List
|
33
33
|
|
34
34
|
OBJECT_NAME = "exchange_rate"
|
35
|
+
def self.object_name
|
36
|
+
"exchange_rate"
|
37
|
+
end
|
38
|
+
|
39
|
+
# Returns a list of objects that contain the rates at which foreign currencies are converted to one another. Only shows the currencies for which Stripe supports.
|
40
|
+
def self.list(filters = {}, opts = {})
|
41
|
+
request_stripe_object(method: :get, path: "/v1/exchange_rates", params: filters, opts: opts)
|
42
|
+
end
|
35
43
|
end
|
36
44
|
end
|
@@ -5,7 +5,7 @@ module Stripe
|
|
5
5
|
# This object represents files hosted on Stripe's servers. You can upload
|
6
6
|
# files with the [create file](https://stripe.com/docs/api#create_file) request
|
7
7
|
# (for example, when uploading dispute evidence). Stripe also
|
8
|
-
# creates files
|
8
|
+
# creates files independently (for example, the results of a [Sigma scheduled
|
9
9
|
# query](https://stripe.com/docs/api#scheduled_queries)).
|
10
10
|
#
|
11
11
|
# Related guide: [File upload guide](https://stripe.com/docs/file-upload)
|
@@ -14,30 +14,43 @@ module Stripe
|
|
14
14
|
extend Stripe::APIOperations::List
|
15
15
|
|
16
16
|
OBJECT_NAME = "file"
|
17
|
+
def self.object_name
|
18
|
+
"file"
|
19
|
+
end
|
20
|
+
|
21
|
+
# To upload a file to Stripe, you need to send a request of type multipart/form-data. Include the file you want to upload in the request, and the parameters for creating a file.
|
22
|
+
#
|
23
|
+
# All of Stripe's officially supported Client libraries support sending multipart/form-data.
|
24
|
+
def self.create(params = {}, opts = {})
|
25
|
+
config = opts[:client]&.config || Stripe.config
|
26
|
+
upload_base = config.uploads_base
|
27
|
+
opts = { api_base: upload_base }.merge(Util.normalize_opts(opts))
|
28
|
+
|
29
|
+
if params[:file] && !params[:file].is_a?(String) && !params[:file].respond_to?(:read)
|
30
|
+
raise ArgumentError, "file must respond to `#read`"
|
31
|
+
end
|
32
|
+
|
33
|
+
opts = { content_type: MultipartEncoder::MULTIPART_FORM_DATA }.merge(Util.normalize_opts(opts))
|
34
|
+
|
35
|
+
request_stripe_object(method: :post, path: "/v1/files", params: params, opts: opts)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Returns a list of the files that your account has access to. Stripe sorts and returns the files by their creation dates, placing the most recently created files at the top.
|
39
|
+
def self.list(filters = {}, opts = {})
|
40
|
+
request_stripe_object(method: :get, path: "/v1/files", params: filters, opts: opts)
|
41
|
+
end
|
17
42
|
|
18
43
|
# This resource can have two different object names. In latter API
|
19
44
|
# versions, only `file` is used, but since stripe-ruby may be used with
|
20
45
|
# any API version, we need to support deserializing the older
|
21
46
|
# `file_upload` object into the same class.
|
22
47
|
OBJECT_NAME_ALT = "file_upload"
|
48
|
+
def self.object_name_alt
|
49
|
+
"file_upload"
|
50
|
+
end
|
23
51
|
|
24
52
|
def self.resource_url
|
25
53
|
"/v1/files"
|
26
54
|
end
|
27
|
-
|
28
|
-
def self.create(params = {}, opts = {})
|
29
|
-
if params[:file] && !params[:file].is_a?(String)
|
30
|
-
unless params[:file].respond_to?(:read)
|
31
|
-
raise ArgumentError, "file must respond to `#read`"
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
config = opts[:client]&.config || Stripe.config
|
36
|
-
opts = {
|
37
|
-
api_base: config.uploads_base,
|
38
|
-
content_type: MultipartEncoder::MULTIPART_FORM_DATA,
|
39
|
-
}.merge(Util.normalize_opts(opts))
|
40
|
-
super
|
41
|
-
end
|
42
55
|
end
|
43
56
|
end
|
@@ -11,5 +11,28 @@ module Stripe
|
|
11
11
|
include Stripe::APIOperations::Save
|
12
12
|
|
13
13
|
OBJECT_NAME = "file_link"
|
14
|
+
def self.object_name
|
15
|
+
"file_link"
|
16
|
+
end
|
17
|
+
|
18
|
+
# Creates a new file link object.
|
19
|
+
def self.create(params = {}, opts = {})
|
20
|
+
request_stripe_object(method: :post, path: "/v1/file_links", params: params, opts: opts)
|
21
|
+
end
|
22
|
+
|
23
|
+
# Returns a list of file links.
|
24
|
+
def self.list(filters = {}, opts = {})
|
25
|
+
request_stripe_object(method: :get, path: "/v1/file_links", params: filters, opts: opts)
|
26
|
+
end
|
27
|
+
|
28
|
+
# Updates an existing file link object. Expired links can no longer be updated.
|
29
|
+
def self.update(id, params = {}, opts = {})
|
30
|
+
request_stripe_object(
|
31
|
+
method: :post,
|
32
|
+
path: format("/v1/file_links/%<id>s", { id: CGI.escape(id) }),
|
33
|
+
params: params,
|
34
|
+
opts: opts
|
35
|
+
)
|
36
|
+
end
|
14
37
|
end
|
15
38
|
end
|
@@ -8,7 +8,11 @@ module Stripe
|
|
8
8
|
extend Stripe::APIOperations::List
|
9
9
|
|
10
10
|
OBJECT_NAME = "financial_connections.account"
|
11
|
+
def self.object_name
|
12
|
+
"financial_connections.account"
|
13
|
+
end
|
11
14
|
|
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).
|
12
16
|
def disconnect(params = {}, opts = {})
|
13
17
|
request_stripe_object(
|
14
18
|
method: :post,
|
@@ -18,6 +22,27 @@ module Stripe
|
|
18
22
|
)
|
19
23
|
end
|
20
24
|
|
25
|
+
# 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).
|
26
|
+
def self.disconnect(account, params = {}, opts = {})
|
27
|
+
request_stripe_object(
|
28
|
+
method: :post,
|
29
|
+
path: format("/v1/financial_connections/accounts/%<account>s/disconnect", { account: CGI.escape(account) }),
|
30
|
+
params: params,
|
31
|
+
opts: opts
|
32
|
+
)
|
33
|
+
end
|
34
|
+
|
35
|
+
# Returns a list of Financial Connections Account objects.
|
36
|
+
def self.list(filters = {}, opts = {})
|
37
|
+
request_stripe_object(
|
38
|
+
method: :get,
|
39
|
+
path: "/v1/financial_connections/accounts",
|
40
|
+
params: filters,
|
41
|
+
opts: opts
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Lists all owners for a given Account
|
21
46
|
def list_owners(params = {}, opts = {})
|
22
47
|
request_stripe_object(
|
23
48
|
method: :get,
|
@@ -27,6 +52,17 @@ module Stripe
|
|
27
52
|
)
|
28
53
|
end
|
29
54
|
|
55
|
+
# Lists all owners for a given Account
|
56
|
+
def self.list_owners(account, params = {}, opts = {})
|
57
|
+
request_stripe_object(
|
58
|
+
method: :get,
|
59
|
+
path: format("/v1/financial_connections/accounts/%<account>s/owners", { account: CGI.escape(account) }),
|
60
|
+
params: params,
|
61
|
+
opts: opts
|
62
|
+
)
|
63
|
+
end
|
64
|
+
|
65
|
+
# Refreshes the data associated with a Financial Connections Account.
|
30
66
|
def refresh_account(params = {}, opts = {})
|
31
67
|
request_stripe_object(
|
32
68
|
method: :post,
|
@@ -36,28 +72,51 @@ module Stripe
|
|
36
72
|
)
|
37
73
|
end
|
38
74
|
|
39
|
-
|
75
|
+
# Refreshes the data associated with a Financial Connections Account.
|
76
|
+
def self.refresh_account(account, params = {}, opts = {})
|
40
77
|
request_stripe_object(
|
41
78
|
method: :post,
|
42
|
-
path: format("/v1/financial_connections/accounts/%<account>s/
|
79
|
+
path: format("/v1/financial_connections/accounts/%<account>s/refresh", { account: CGI.escape(account) }),
|
43
80
|
params: params,
|
44
81
|
opts: opts
|
45
82
|
)
|
46
83
|
end
|
47
84
|
|
48
|
-
|
85
|
+
# Subscribes to periodic refreshes of data associated with a Financial Connections Account.
|
86
|
+
def subscribe(params = {}, opts = {})
|
49
87
|
request_stripe_object(
|
50
|
-
method: :
|
51
|
-
path: format("/v1/financial_connections/accounts/%<account>s/
|
88
|
+
method: :post,
|
89
|
+
path: format("/v1/financial_connections/accounts/%<account>s/subscribe", { account: CGI.escape(self["id"]) }),
|
52
90
|
params: params,
|
53
91
|
opts: opts
|
54
92
|
)
|
55
93
|
end
|
56
94
|
|
57
|
-
|
95
|
+
# Subscribes to periodic refreshes of data associated with a Financial Connections Account.
|
96
|
+
def self.subscribe(account, params = {}, opts = {})
|
58
97
|
request_stripe_object(
|
59
98
|
method: :post,
|
60
|
-
path: format("/v1/financial_connections/accounts/%<account>s/
|
99
|
+
path: format("/v1/financial_connections/accounts/%<account>s/subscribe", { account: CGI.escape(account) }),
|
100
|
+
params: params,
|
101
|
+
opts: opts
|
102
|
+
)
|
103
|
+
end
|
104
|
+
|
105
|
+
# Unsubscribes from periodic refreshes of data associated with a Financial Connections Account.
|
106
|
+
def unsubscribe(params = {}, opts = {})
|
107
|
+
request_stripe_object(
|
108
|
+
method: :post,
|
109
|
+
path: format("/v1/financial_connections/accounts/%<account>s/unsubscribe", { account: CGI.escape(self["id"]) }),
|
110
|
+
params: params,
|
111
|
+
opts: opts
|
112
|
+
)
|
113
|
+
end
|
114
|
+
|
115
|
+
# Unsubscribes from periodic refreshes of data associated with a Financial Connections Account.
|
116
|
+
def self.unsubscribe(account, params = {}, opts = {})
|
117
|
+
request_stripe_object(
|
118
|
+
method: :post,
|
119
|
+
path: format("/v1/financial_connections/accounts/%<account>s/unsubscribe", { account: CGI.escape(account) }),
|
61
120
|
params: params,
|
62
121
|
opts: opts
|
63
122
|
)
|
@@ -6,6 +6,9 @@ module Stripe
|
|
6
6
|
# Describes a snapshot of the owners of an account at a particular point in time.
|
7
7
|
class AccountOwnership < StripeObject
|
8
8
|
OBJECT_NAME = "financial_connections.account_ownership"
|
9
|
+
def self.object_name
|
10
|
+
"financial_connections.account_ownership"
|
11
|
+
end
|
9
12
|
end
|
10
13
|
end
|
11
14
|
end
|
@@ -8,6 +8,19 @@ module Stripe
|
|
8
8
|
extend Stripe::APIOperations::Create
|
9
9
|
|
10
10
|
OBJECT_NAME = "financial_connections.session"
|
11
|
+
def self.object_name
|
12
|
+
"financial_connections.session"
|
13
|
+
end
|
14
|
+
|
15
|
+
# To launch the Financial Connections authorization flow, create a Session. The session's client_secret can be used to launch the flow using Stripe.js.
|
16
|
+
def self.create(params = {}, opts = {})
|
17
|
+
request_stripe_object(
|
18
|
+
method: :post,
|
19
|
+
path: "/v1/financial_connections/sessions",
|
20
|
+
params: params,
|
21
|
+
opts: opts
|
22
|
+
)
|
23
|
+
end
|
11
24
|
end
|
12
25
|
end
|
13
26
|
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# File generated from our OpenAPI spec
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module Stripe
|
5
|
+
module FinancialConnections
|
6
|
+
# A Transaction represents a real transaction that affects a Financial Connections Account balance.
|
7
|
+
class Transaction < APIResource
|
8
|
+
extend Stripe::APIOperations::List
|
9
|
+
|
10
|
+
OBJECT_NAME = "financial_connections.transaction"
|
11
|
+
def self.object_name
|
12
|
+
"financial_connections.transaction"
|
13
|
+
end
|
14
|
+
|
15
|
+
# Returns a list of Financial Connections Transaction objects.
|
16
|
+
def self.list(filters = {}, opts = {})
|
17
|
+
request_stripe_object(
|
18
|
+
method: :get,
|
19
|
+
path: "/v1/financial_connections/transactions",
|
20
|
+
params: filters,
|
21
|
+
opts: opts
|
22
|
+
)
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,52 @@
|
|
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. The destination URL
|
7
|
+
# is activated by Stripe at the time of onboarding. Stripe verifies requests with your credentials
|
8
|
+
# provided during onboarding, 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
|
+
#
|
21
|
+
# Related guide: [Forward card details to third-party API endpoints](https://docs.stripe.com/payments/forwarding).
|
22
|
+
class Request < APIResource
|
23
|
+
extend Stripe::APIOperations::Create
|
24
|
+
extend Stripe::APIOperations::List
|
25
|
+
|
26
|
+
OBJECT_NAME = "forwarding.request"
|
27
|
+
def self.object_name
|
28
|
+
"forwarding.request"
|
29
|
+
end
|
30
|
+
|
31
|
+
# Creates a ForwardingRequest object.
|
32
|
+
def self.create(params = {}, opts = {})
|
33
|
+
request_stripe_object(
|
34
|
+
method: :post,
|
35
|
+
path: "/v1/forwarding/requests",
|
36
|
+
params: params,
|
37
|
+
opts: opts
|
38
|
+
)
|
39
|
+
end
|
40
|
+
|
41
|
+
# Lists all ForwardingRequest objects.
|
42
|
+
def self.list(filters = {}, opts = {})
|
43
|
+
request_stripe_object(
|
44
|
+
method: :get,
|
45
|
+
path: "/v1/forwarding/requests",
|
46
|
+
params: filters,
|
47
|
+
opts: opts
|
48
|
+
)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -9,6 +9,9 @@ module Stripe
|
|
9
9
|
# Related guide: [Customer balance funding instructions](https://stripe.com/docs/payments/customer-balance/funding-instructions)
|
10
10
|
class FundingInstructions < APIResource
|
11
11
|
OBJECT_NAME = "funding_instructions"
|
12
|
+
def self.object_name
|
13
|
+
"funding_instructions"
|
14
|
+
end
|
12
15
|
|
13
16
|
def resource_url
|
14
17
|
if !respond_to?(:customer) || customer.nil?
|
@@ -13,11 +13,24 @@ module Stripe
|
|
13
13
|
# API. To configure and create VerificationReports, use the
|
14
14
|
# [VerificationSession](https://stripe.com/docs/api/identity/verification_sessions) API.
|
15
15
|
#
|
16
|
-
# Related
|
16
|
+
# Related guide: [Accessing verification results](https://stripe.com/docs/identity/verification-sessions#results).
|
17
17
|
class VerificationReport < APIResource
|
18
18
|
extend Stripe::APIOperations::List
|
19
19
|
|
20
20
|
OBJECT_NAME = "identity.verification_report"
|
21
|
+
def self.object_name
|
22
|
+
"identity.verification_report"
|
23
|
+
end
|
24
|
+
|
25
|
+
# List all verification reports.
|
26
|
+
def self.list(filters = {}, opts = {})
|
27
|
+
request_stripe_object(
|
28
|
+
method: :get,
|
29
|
+
path: "/v1/identity/verification_reports",
|
30
|
+
params: filters,
|
31
|
+
opts: opts
|
32
|
+
)
|
33
|
+
end
|
21
34
|
end
|
22
35
|
end
|
23
36
|
end
|
@@ -20,7 +20,13 @@ module Stripe
|
|
20
20
|
include Stripe::APIOperations::Save
|
21
21
|
|
22
22
|
OBJECT_NAME = "identity.verification_session"
|
23
|
+
def self.object_name
|
24
|
+
"identity.verification_session"
|
25
|
+
end
|
23
26
|
|
27
|
+
# A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work).
|
28
|
+
#
|
29
|
+
# Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel).
|
24
30
|
def cancel(params = {}, opts = {})
|
25
31
|
request_stripe_object(
|
26
32
|
method: :post,
|
@@ -30,24 +36,91 @@ module Stripe
|
|
30
36
|
)
|
31
37
|
end
|
32
38
|
|
33
|
-
|
39
|
+
# A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work).
|
40
|
+
#
|
41
|
+
# Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel).
|
42
|
+
def self.cancel(session, params = {}, opts = {})
|
34
43
|
request_stripe_object(
|
35
44
|
method: :post,
|
36
|
-
path: format("/v1/identity/verification_sessions/%<session>s/
|
45
|
+
path: format("/v1/identity/verification_sessions/%<session>s/cancel", { session: CGI.escape(session) }),
|
37
46
|
params: params,
|
38
47
|
opts: opts
|
39
48
|
)
|
40
49
|
end
|
41
50
|
|
42
|
-
|
51
|
+
# Creates a VerificationSession object.
|
52
|
+
#
|
53
|
+
# After the VerificationSession is created, display a verification modal using the session client_secret or send your users to the session's url.
|
54
|
+
#
|
55
|
+
# If your API key is in test mode, verification checks won't actually process, though everything else will occur as if in live mode.
|
56
|
+
#
|
57
|
+
# Related guide: [Verify your users' identity documents](https://stripe.com/docs/identity/verify-identity-documents)
|
58
|
+
def self.create(params = {}, opts = {})
|
43
59
|
request_stripe_object(
|
44
60
|
method: :post,
|
45
|
-
path:
|
61
|
+
path: "/v1/identity/verification_sessions",
|
62
|
+
params: params,
|
63
|
+
opts: opts
|
64
|
+
)
|
65
|
+
end
|
66
|
+
|
67
|
+
# Returns a list of VerificationSessions
|
68
|
+
def self.list(filters = {}, opts = {})
|
69
|
+
request_stripe_object(
|
70
|
+
method: :get,
|
71
|
+
path: "/v1/identity/verification_sessions",
|
72
|
+
params: filters,
|
73
|
+
opts: opts
|
74
|
+
)
|
75
|
+
end
|
76
|
+
|
77
|
+
# Redact a VerificationSession to remove all collected information from Stripe. This will redact
|
78
|
+
# the VerificationSession and all objects related to it, including VerificationReports, Events,
|
79
|
+
# request logs, etc.
|
80
|
+
#
|
81
|
+
# A VerificationSession object can be redacted when it is in requires_input or verified
|
82
|
+
# [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action
|
83
|
+
# state will automatically cancel it.
|
84
|
+
#
|
85
|
+
# The redaction process may take up to four days. When the redaction process is in progress, the
|
86
|
+
# VerificationSession's redaction.status field will be set to processing; when the process is
|
87
|
+
# finished, it will change to redacted and an identity.verification_session.redacted event
|
88
|
+
# will be emitted.
|
89
|
+
#
|
90
|
+
# Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the
|
91
|
+
# fields that contain personal data will be replaced by the string [redacted] or a similar
|
92
|
+
# placeholder. The metadata field will also be erased. Redacted objects cannot be updated or
|
93
|
+
# used for any purpose.
|
94
|
+
#
|
95
|
+
# [Learn more](https://stripe.com/docs/identity/verification-sessions#redact).
|
96
|
+
def redact(params = {}, opts = {})
|
97
|
+
request_stripe_object(
|
98
|
+
method: :post,
|
99
|
+
path: format("/v1/identity/verification_sessions/%<session>s/redact", { session: CGI.escape(self["id"]) }),
|
46
100
|
params: params,
|
47
101
|
opts: opts
|
48
102
|
)
|
49
103
|
end
|
50
104
|
|
105
|
+
# Redact a VerificationSession to remove all collected information from Stripe. This will redact
|
106
|
+
# the VerificationSession and all objects related to it, including VerificationReports, Events,
|
107
|
+
# request logs, etc.
|
108
|
+
#
|
109
|
+
# A VerificationSession object can be redacted when it is in requires_input or verified
|
110
|
+
# [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action
|
111
|
+
# state will automatically cancel it.
|
112
|
+
#
|
113
|
+
# The redaction process may take up to four days. When the redaction process is in progress, the
|
114
|
+
# VerificationSession's redaction.status field will be set to processing; when the process is
|
115
|
+
# finished, it will change to redacted and an identity.verification_session.redacted event
|
116
|
+
# will be emitted.
|
117
|
+
#
|
118
|
+
# Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the
|
119
|
+
# fields that contain personal data will be replaced by the string [redacted] or a similar
|
120
|
+
# placeholder. The metadata field will also be erased. Redacted objects cannot be updated or
|
121
|
+
# used for any purpose.
|
122
|
+
#
|
123
|
+
# [Learn more](https://stripe.com/docs/identity/verification-sessions#redact).
|
51
124
|
def self.redact(session, params = {}, opts = {})
|
52
125
|
request_stripe_object(
|
53
126
|
method: :post,
|
@@ -56,6 +129,19 @@ module Stripe
|
|
56
129
|
opts: opts
|
57
130
|
)
|
58
131
|
end
|
132
|
+
|
133
|
+
# Updates a VerificationSession object.
|
134
|
+
#
|
135
|
+
# When the session status is requires_input, you can use this method to update the
|
136
|
+
# verification check and options.
|
137
|
+
def self.update(id, params = {}, opts = {})
|
138
|
+
request_stripe_object(
|
139
|
+
method: :post,
|
140
|
+
path: format("/v1/identity/verification_sessions/%<id>s", { id: CGI.escape(id) }),
|
141
|
+
params: params,
|
142
|
+
opts: opts
|
143
|
+
)
|
144
|
+
end
|
59
145
|
end
|
60
146
|
end
|
61
147
|
end
|