Attributes
- idstring
Unique identifier for the object.
- objectstring
String representing the object’s type. Objects of the same type share the same value.
- client_
reference_ idnullable string A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems.
- client_
secretnullable string The short-lived client secret used by Stripe.js to show a verification modal inside your app. This client secret expires after 24 hours and can only be used once. Don’t store it, log it, embed it in a URL, or expose it to anyone other than the user. Make sure that you have TLS enabled on any page that includes the client secret. Refer to our docs on passing the client secret to the frontend to learn more.
- createdtimestamp
Time at which the object was created. Measured in seconds since the Unix epoch.
- last_
errornullable object If present, this property tells you the last error encountered when processing the verification.
- last_
verification_ reportnullable stringExpandable ID of the most recent VerificationReport. Learn more about accessing detailed verification results.
- livemodeboolean
Has the value
true
if the object exists in live mode or the valuefalse
if the object exists in test mode. - metadataobject
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
- optionsnullable object
A set of options for the session’s verification checks.
- provided_
detailsnullable objectExpandable Details provided about the user being verified. These details may be shown to the user.
- redactionnullable object
Redaction status of this VerificationSession. If the VerificationSession is not redacted, this field will be null.
- related_
customernullable string Token referencing a Customer resource.
- statusenum
Status of this VerificationSession. Learn more about the lifecycle of sessions.
Possible enum valuescanceled
The VerificationSession has been invalidated for future submission attempts.
processing
The session has been submitted and is being processed. Most verification checks are processed in less than 1 minute.
requires_
input Requires user input before processing can continue.
verified
Processing of all the verification checks are complete and successfully verified.
- typeenum
The type of verification check to be performed.
Possible enum valuesdocument
id_
number verification_
flow Configuration provided by verification flow
- urlnullable string
The short-lived URL that you use to redirect a user to Stripe to submit their identity information. This URL expires after 48 hours and can only be used once. Don’t store it, log it, send it in emails or expose it to anyone other than the user. Refer to our docs on verifying identity documents to learn how to redirect users to Stripe.
- verification_
flownullable string The configuration token of a verification flow from the dashboard.
- verified_
outputsnullable objectExpandable The user’s verified data.
{ "id": "vs_1NuNAILkdIwHu7ixh7OtGMLw", "object": "identity.verification_session", "client_secret": "...", "created": 1695680526, "last_error": null, "last_verification_report": null, "livemode": false, "metadata": {}, "options": { "document": { "require_matching_selfie": true } }, "redaction": null, "status": "requires_input", "type": "document", "url": "..."}
Creates a VerificationSession object.
After the VerificationSession is created, display a verification modal using the session client_
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
Parameters
- client_
reference_ idstring A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems.
- metadataobject
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
. - optionsobject
A set of options for the session’s verification checks.
- provided_
detailsobject Details provided about the user being verified. These details may be shown to the user.
- related_
customerstring Token referencing a Customer resource.
- return_
urlstring The URL that the user will be redirected to upon completing the verification flow.
- typeenum
The type of verification check to be performed. You must provide a
type
if not passingverification_
.flow Possible enum valuesdocument
id_
number - verification_
flowstring The ID of a verification flow from the Dashboard. See https://docs.stripe.com/identity/verification-flows.
Returns
Returns the created VerificationSession object
{ "id": "vs_1NuN4zLkdIwHu7ixleE6HvkI", "object": "identity.verification_session", "client_secret": "...", "created": 1695680197, "last_error": null, "last_verification_report": null, "livemode": false, "metadata": {}, "options": {}, "redaction": null, "status": "requires_input", "type": "document", "url": "..."}
Updates a VerificationSession object.
When the session status is requires_
, you can use this method to update the verification check and options.
Parameters
- metadataobject
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to
metadata
. - optionsobject
A set of options for the session’s verification checks.
- provided_
detailsobject Details provided about the user being verified. These details may be shown to the user.
- typeenum
The type of verification check to be performed.
Possible enum valuesdocument
id_
number
Returns
Returns the updated VerificationSession object
{ "id": "vs_1NuN9WLkdIwHu7ix597AR9uz", "object": "identity.verification_session", "client_secret": "...", "created": 1695680478, "last_error": null, "last_verification_report": null, "livemode": false, "metadata": {}, "options": {}, "redaction": null, "status": "requires_input", "type": "id_number", "url": "..."}
Retrieves the details of a VerificationSession that was previously created.
When the session status is requires_
, you can use this method to retrieve a valid client_
or url
to allow re-submission.
Parameters
No parameters.
Returns
Returns a VerificationSession object
{ "id": "vs_1NuNAILkdIwHu7ixh7OtGMLw", "object": "identity.verification_session", "client_secret": "...", "created": 1695680526, "last_error": null, "last_verification_report": null, "livemode": false, "metadata": {}, "options": { "document": { "require_matching_selfie": true } }, "redaction": null, "status": "requires_input", "type": "document", "url": "..."}
Returns a list of VerificationSessions
Parameters
- client_
reference_ idstring A string to reference this user. This can be a customer ID, a session ID, or similar, and can be used to reconcile this verification with your internal systems.
- createdobject
Only return VerificationSessions that were created during the given date interval.
- statusenum
Only return VerificationSessions with this status. Learn more about the lifecycle of sessions.
Possible enum valuescanceled
The VerificationSession has been invalidated for future submission attempts.
processing
The session has been submitted and is being processed. Most verification checks are processed in less than 1 minute.
requires_
input Requires user input before processing can continue.
verified
Processing of all the verification checks are complete and successfully verified.
More parameters
- ending_
beforestring - limitinteger
- starting_
afterstring
Returns
List of VerificationSession objects that match the provided filter criteria.
{ "object": "list", "url": "/v1/identity/verification_sessions", "has_more": false, "data": [ { "id": "vs_1NuNAILkdIwHu7ixh7OtGMLw", "object": "identity.verification_session", "client_secret": "...", "created": 1695680526, "last_error": null, "last_verification_report": null, "livemode": false, "metadata": {}, "options": { "document": { "require_matching_selfie": true } }, "redaction": null, "status": "requires_input", "type": "document", "url": "..." } ]}