Vouch logovouch
Examples

Non-Doc KYC & KYB

A step-by-step guide on how to verify physical addresses in your application with vouch.

Why Verify Physical Address for KYC/KYB?

Know Your Customer (KYC) and Know Your Business (KYB) are regulatory requirements that help organizations verify the identity of their customers and business partners. Physical address verification is a critical component of KYC/KYB compliance for several reasons:

vouch enables you to verify physical addresses by allowing users to prove their address through authenticated access to their financial accounts, utility bills, or other trusted data sources.

See it in action

Watch the video below to see how the KYC/KYB address verification flow works with Revolut. This video demonstrates verifying a user's physical address from their Revolut account, proving their residential address through authenticated access to their financial account:

Step 1: Select data source

For this KYC/KYB example, we'll use Revolut - Proof of Address as our data source. This data source allows users to verify their physical address by proving access to their Revolut account, which contains their verified address information.

The following table shows all of the available data sources that can help with address verification:

Loading data sources...

The following providers are currently undergoing our quality assurance process and will be integrated soon:

  • Banks: Bank Polski (PKO BP), Bank Pekao, Santander, ING, Alior Bank, mBank, BNP Paribas, Millennium Bank, Credit Agricole
  • Other Financial Services: Binance
  • Telecom Providers: Netia, Vectra, Orange
  • Utilities & Energy: Tauron, E.ON, PGE, Energa, PGNiG
  • Government Services: ePUAP

Browse more data sources in the vouch catalog.

Step 2: Redirect users to vouch

To trigger the KYC/KYB address verification process, redirect the user to vouch to begin the proof generation:

import { Vouch } from '@getvouch/sdk';

const vouch = new Vouch();

const verificationUrl = vouch.getStartUrl({
  requestId: crypto.randomUUID(),
  datasourceId: "41b9a0c3-4339-40a1-af71-f36d1032502d", // Revolut - Proof of Address
  customerId: "1be03be8-5014-413c-835a-feddf4020da2",   // Your unique customer ID
  redirectBackUrl: `https://docs.getvouch.io/examples/non_doc_kyc`, // Return destination
  webhookUrl: `https://docs.getvouch.io/api/web-proof` // Proof delivery endpoint (optional)
});

// Redirect the user to vouch
window.location.href = verificationUrl;

This code opens the vouch application in a new tab. The user will complete the KYC/KYB address verification process by authenticating with their Revolut account, and then be redirected back to your application with the verification proof.

Step 3: Understanding the webhook payload

When the KYC/KYB address verification is complete, vouch sends a POST request to your webhookUrl with the following structure:

{  "requestId": "3ff73140-acf9-4d3e-a818-567597d7a0fd",  "outputs": {    "city": "NY",    "region": "NY",    "country": "US",    "lastName": "Conroy",    "postcode": "11208",    "firstName": "Sean",    "fullAddress": {      "city": "NY",      "region": "NY",      "country": "US",      "postcode": "11208",      "streetLine1": "224 Houston St",      "streetLine2": "Apt B"    },    "streetLine1": "224 Houston St",    "streetLine2": "Apt B"  }}

Payload structure

  • requestId: The unique ID of the verification request
  • outputs: Aggregated extracted and verified results across all webProofs

Important: The Revolut - Proof of Address data source is designed for Sensitive Data. This means:

  • The webProofs array will be absent from the webhook payload
  • Only the extracted outputs are retained (address information)
  • The transcript is redacted to protect sensitive financial data

This design ensures that sensitive information from the user's financial account is not exposed in the webhook payload, while still providing you with the verified address data you need for KYC/KYB compliance.

Step 4: Test the KYC/KYB verification flow

Try the button below to see the complete vouch KYC/KYB address verification flow in action. This will demonstrate how users verify their physical address using Revolut.

Prerequisite

To run Desktop verification flow, install the vouch extension.

Next Steps

Ready to get started? Check out our Getting Started guide to learn how to integrate vouch into your application.

Non-Doc KYC & KYB | vouch Docs