Introduction to Identity Verification
Verify the identity of your users for global KYC and anti-fraud.
Explore API
API Reference
View Identity Verification requests, responses, and example code
View Identity Verification APIQuickstart
Learn about Plaid's key concepts and run starter code
Get startedOverview
Plaid Identity Verification lets you verify the identity of your customers and seamlessly stitches together verification methods. Using Identity Verification, you can verify identification documents, phone numbers, name, date of birth, ID numbers, addresses, and more.
Integration process
- Visit the dashboard, select or create the template you want to use, click the Integration button, and copy the
template_id
. - Call
/link/token/create
. In addition to the required parameters, you will need to provide the following:- For
identity_verification.template_id
, use thetemplate_id
you copied in step 1. - For
products
, use["identity_verification"]
. Identity Verification is mutually exclusive with other products. - Provide
user.client_user_id
and optionallyuser.email_address
. See below for details on these fields.
- For
- On your web or mobile client, create an instance of Link using the
link_token
returned by/link/token/create
; for more details, see the Link documentation. - When the user has successfully completed the client-side Link flow, you will receive an
onSuccess
callback and be able to review the session in the dashboard. - To complete your integration, you'll want to integrate Identity Verification webhooks.
Mobile support
Identity Verification is fully supported by Plaid's mobile SDKs. Because the end user may need to use the camera during the Identity Verification flow, your app must request certain permissions in order to fully support Identity Verification flows on mobile. For more details, see the documentation for the Android and iOS SDKs.
Client User Id
At the center of Identity Verification is the mandatory client_user_id
field, which should be a unique and persistent identifier for your customer, such as the id
field on your users table.
Identity Verification intelligently handles sessions being started with the same client_user_id
multiple times. If your customer starts a Link session, closes it, reopens it, and reopens your Link integration, their session will resume from where they left off. Likewise, if your customer has completed their Link session in the past (by either failing verification or passing), Plaid will not serve them another session unless you've manually authorized another attempt from the dashboard.
Plaid indexes the client user id you provide, allowing you to look up users using your internal id.
If you do not want to expose your internal id to Plaid directly, you can symmetrically encrypt the identifier with a secret key that only your servers know.
Supplementing email
During /link/token/create
, Identity Verification accepts email_address
as an optional additional parameter. While the field is optional, we highly recommend providing it. Identity Verification will include the user's email in the Link session and perform a number of anti-fraud related checks, including analyzing social networks, abusive emails, and email address trustworthiness.
Testing Identity Verification
Identity Verification is currently accessible only to customers in the Early Access program. This access limitation applies across all environments (including Sandbox). If you are interested in trying Identity Verification when it becomes available to you, contact your Plaid Account Manager.
Next steps
To learn more about building with Identity Verification, see the Identity Verification API Reference.
Feedback
If you have feedback to provide, please let us know in our Developer Feedback repo on GitHub (beta).