---
title: How to verify destination wallet ownership for Travel Rule compliance
category: how-to
description: Verify that a user controls their self-custodial destination wallet before allowing a withdrawal, using Reown AppKit SIWX. For any exchange (VASP) handling withdrawals to non-custodial wallets.
---

# How to verify destination wallet ownership for Travel Rule compliance

The _Travel Rule_ is a [FATF](https://www.fatf-gafi.org/en/topics/virtual-assets.html) requirement for Virtual Asset Service Providers (VASPs), established in 2019 and updated in 2021. For withdrawals to self-custodial wallets, it requires you to verify the user controls the destination address before the transfer proceeds.

This guide shows you how to verify that a user controls their self-custodial destination wallet before allowing a withdrawal from your exchange, using Reown AppKit.

> **Key takeaway:** **Reown's support for Ledger Wallet via WalletConnect covers EVM, BTC, and SOL.**

## Implementation

Follow the [Reown AppKit Travel Rule guide](https://docs.reown.com/appkit/recipes/travel-rule#travel-rule-using-appkit) to implement SIWX, a two-step flow where the user connects their wallet and signs a message to prove they control the destination address.

## User flow

When using a Ledger signer through WalletConnect:

1. The user is redirected to Ledger Wallet to sign the message.
2. Once signing is complete, they are returned to the exchange via WalletConnect.

## Verify your integration

After completing the AppKit Travel Rule guide, confirm that:

- Withdrawals above the applicable threshold require a successful SIWX signature before the transfer is allowed
- Transfers are blocked if the user rejects the wallet connection or the sign-message prompt
- Your implementation stores a compliance record (wallet address, signature, verification timestamp, transaction hash) for each verified withdrawal
