The relevant concepts to this guide are:
Teams: a self-contained unit that encapsulates everything else
Flows: a set of evidence to collect and checks to run on it, aligned with a particular business process
Verifications: an attempt to verify a particular user
1. Choose a single or multi-tenant setup
First, choose whether you would like a single tenant or multi-tenant setup. Here is a comparison:
| Single tenant | Multi-tenant |
Teams | One team | Each of your customers has a team |
Dashboard | All verifications are shown in one place | Verifications are split by team |
API client ID | One client ID | Multiple client IDs to manage |
End user experience | Your name and logo appears in the verification journey | Each customer's name and logo appears on the journey |
Verification flow customisation | Flows are shared between all your customers | Per-customer flows |
Billing | You are billed | Your customers are billed directly |
Onboarding | You onboard once on behalf of your customers | Your customers need to onboard with us directly |
Self-serve onboarding | Yes | Partially, customer must supply their client ID, secret and verification flow ID(s). |
A multi-tenant setup is more to administer, but allows you to be more "hands-off" from a business perspective, as we have a direct relationship with each of your customers.
2. Store API credentials
To use the Vouchsafe API, you need a client ID and secret. You will need to store these:
in environment config, for a single tenant setup
in your database, for a multi-tenant setup
3. Request verifications
For a super-simple integration, you can form a URL to begin a verification.
See an example in the dashboard by going to Verifications -> New verification -> Share.
It looks like:
https://app.vouchsafe.id/verify?workflowId=[string]&publicToken=[string]
The parameters you can include are:
| Required | The verification flow to send the end user through.
Get it by going to Flows, choosing the relevant one and reading the ID at the end of the URL. |
| Required | Unguessable token unique to the team.
For security reasons, this is not the same as the internal team/client ID. |
| Optional | The end user's email. If provided, the user won't have to type it in. |
3a. With the API
You can use the request verification endpoint to begin verification sessions for the relevant team and verification flow.
We recommend redirecting users to the given URL, but you can also:
embed the URL in an iframe
do it asynchronously by asking the user to click the link in the email we send (if turned on)
The endpoint also returns an ID string, which you can use to track the verification over time.
4. Handling results
At minimum, you should include a link for the user to view the results page in the Vouchsafe dashboard. The URL structure is:
https://app.vouchsafe.id/admin/teams/[team_id]/cases/[id]
4a. With the API
If you want to go further, you can get data from us to show results on your own interface by either:
using the get verification endpoint with the ID from earlier
handling a webhook
Further reading
Explore the full API documentation or our 3-minute video guide.
For more help with partner integrations, contact [email protected].