mirror of
https://github.com/stripe/stripe-ruby.git
synced 2025-10-15 00:00:44 -04:00
148 lines
6.8 KiB
Ruby
148 lines
6.8 KiB
Ruby
# File generated from our OpenAPI spec
|
|
# frozen_string_literal: true
|
|
|
|
module Stripe
|
|
module Identity
|
|
# A VerificationSession guides you through the process of collecting and verifying the identities
|
|
# of your users. It contains details about the type of verification, such as what [verification
|
|
# check](https://stripe.com/docs/identity/verification-checks) to perform. Only create one VerificationSession for
|
|
# each verification in your system.
|
|
#
|
|
# A VerificationSession transitions through [multiple
|
|
# statuses](https://stripe.com/docs/identity/how-sessions-work) throughout its lifetime as it progresses through
|
|
# the verification flow. The VerificationSession contains the user's verified data after
|
|
# verification checks are complete.
|
|
#
|
|
# Related guide: [The Verification Sessions API](https://stripe.com/docs/identity/verification-sessions)
|
|
class VerificationSession < APIResource
|
|
extend Stripe::APIOperations::Create
|
|
extend Stripe::APIOperations::List
|
|
include Stripe::APIOperations::Save
|
|
|
|
OBJECT_NAME = "identity.verification_session"
|
|
def self.object_name
|
|
"identity.verification_session"
|
|
end
|
|
|
|
# A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work).
|
|
#
|
|
# Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel).
|
|
def cancel(params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: format("/v1/identity/verification_sessions/%<session>s/cancel", { session: CGI.escape(self["id"]) }),
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# A VerificationSession object can be canceled when it is in requires_input [status](https://stripe.com/docs/identity/how-sessions-work).
|
|
#
|
|
# Once canceled, future submission attempts are disabled. This cannot be undone. [Learn more](https://stripe.com/docs/identity/verification-sessions#cancel).
|
|
def self.cancel(session, params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: format("/v1/identity/verification_sessions/%<session>s/cancel", { session: CGI.escape(session) }),
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# Creates a VerificationSession object.
|
|
#
|
|
# After the VerificationSession is created, display a verification modal using the session client_secret or send your users to the session's url.
|
|
#
|
|
# If your API key is in test mode, verification checks won't actually process, though everything else will occur as if in live mode.
|
|
#
|
|
# Related guide: [Verify your users' identity documents](https://stripe.com/docs/identity/verify-identity-documents)
|
|
def self.create(params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: "/v1/identity/verification_sessions",
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# Returns a list of VerificationSessions
|
|
def self.list(filters = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :get,
|
|
path: "/v1/identity/verification_sessions",
|
|
params: filters,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# Redact a VerificationSession to remove all collected information from Stripe. This will redact
|
|
# the VerificationSession and all objects related to it, including VerificationReports, Events,
|
|
# request logs, etc.
|
|
#
|
|
# A VerificationSession object can be redacted when it is in requires_input or verified
|
|
# [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action
|
|
# state will automatically cancel it.
|
|
#
|
|
# The redaction process may take up to four days. When the redaction process is in progress, the
|
|
# VerificationSession's redaction.status field will be set to processing; when the process is
|
|
# finished, it will change to redacted and an identity.verification_session.redacted event
|
|
# will be emitted.
|
|
#
|
|
# Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the
|
|
# fields that contain personal data will be replaced by the string [redacted] or a similar
|
|
# placeholder. The metadata field will also be erased. Redacted objects cannot be updated or
|
|
# used for any purpose.
|
|
#
|
|
# [Learn more](https://stripe.com/docs/identity/verification-sessions#redact).
|
|
def redact(params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: format("/v1/identity/verification_sessions/%<session>s/redact", { session: CGI.escape(self["id"]) }),
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# Redact a VerificationSession to remove all collected information from Stripe. This will redact
|
|
# the VerificationSession and all objects related to it, including VerificationReports, Events,
|
|
# request logs, etc.
|
|
#
|
|
# A VerificationSession object can be redacted when it is in requires_input or verified
|
|
# [status](https://stripe.com/docs/identity/how-sessions-work). Redacting a VerificationSession in requires_action
|
|
# state will automatically cancel it.
|
|
#
|
|
# The redaction process may take up to four days. When the redaction process is in progress, the
|
|
# VerificationSession's redaction.status field will be set to processing; when the process is
|
|
# finished, it will change to redacted and an identity.verification_session.redacted event
|
|
# will be emitted.
|
|
#
|
|
# Redaction is irreversible. Redacted objects are still accessible in the Stripe API, but all the
|
|
# fields that contain personal data will be replaced by the string [redacted] or a similar
|
|
# placeholder. The metadata field will also be erased. Redacted objects cannot be updated or
|
|
# used for any purpose.
|
|
#
|
|
# [Learn more](https://stripe.com/docs/identity/verification-sessions#redact).
|
|
def self.redact(session, params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: format("/v1/identity/verification_sessions/%<session>s/redact", { session: CGI.escape(session) }),
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
|
|
# Updates a VerificationSession object.
|
|
#
|
|
# When the session status is requires_input, you can use this method to update the
|
|
# verification check and options.
|
|
def self.update(id, params = {}, opts = {})
|
|
request_stripe_object(
|
|
method: :post,
|
|
path: format("/v1/identity/verification_sessions/%<id>s", { id: CGI.escape(id) }),
|
|
params: params,
|
|
opts: opts
|
|
)
|
|
end
|
|
end
|
|
end
|
|
end
|