Skip to main content
Privy verifies an individual user with Bridge. Privy creates the Bridge customer on the first request and links it to the Privy user, so your app only ever references the Privy user ID. At a high level, KYC involves two steps:
1

Accept terms of service

The user accepts Bridge’s terms of service through a hosted link.
2

Perform identity verification

The user submits their identity information through a hosted verification flow.
Bridge currently supports hosted KYC only. Both endpoints return a link that your app passes to its frontend for the user to open and complete.
Before verifying users, register a Bridge API key with Privy.

Accept terms of service

Use the initiateTos method from the kyc resource on users().
Pass the link to your app’s frontend so the user can accept the terms of service. The request is idempotent: calling it again for the same user returns a link for the existing Bridge customer.
Use the initiateLinks method from the kyc resource on users().
Pass kyc.link to your app’s frontend so the user can complete verification. The request is idempotent: calling it again for the same user returns the existing link.

Track KYC status

Verification is asynchronous. Bridge reviews the submission after the user completes the hosted flow, and can revoke an endorsement later. See track KYC status to poll a user’s status or subscribe to webhooks.

Next steps

Track KYC status

Poll a user’s verification status or subscribe to webhooks

KYB

Verify an organization

Handling webhook events

Configure an endpoint to receive Privy webhook events