> ## Documentation Index
> Fetch the complete documentation index at: https://align.tolbel.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Verify Wallet

> Verify wallet ownership for compliance

## Method Signature

```typescript theme={null}
align.wallets.verifyOwnership(
  customerId: string,
  walletAddress: string
): Promise<WalletVerification>
```

## Parameters

<ParamField path="customerId" type="string" required>
  Customer identifier
</ParamField>

<ParamField path="walletAddress" type="string" required>
  Blockchain wallet address to verify
</ParamField>

## Returns

<ResponseField name="verification_flow_link" type="string">
  URL where the user can sign a message to prove ownership
</ResponseField>

## Example

<Tabs>
  <Tab title="TypeScript">
    ```typescript theme={null}
    import Align from "@tolbel/align";

    const align = new Align({
      apiKey: process.env.ALIGN_API_KEY!,
      environment: "sandbox",
    });

    const verification = await align.wallets.verifyOwnership(
      "customerId_123",
      "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb"
    );

    console.log(`Verification Link: ${verification.verification_flow_link}`);
    // Redirect user to this link
    ```
  </Tab>

  <Tab title="JavaScript">
    ```javascript theme={null}
    const verification = await align.wallets.verifyOwnership(
      "customerId_123",
      "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb"
    );

    console.log("Verification Link:", verification.verification_flow_link);
    ```
  </Tab>
</Tabs>

<Info>
  Wallet verification is typically a one-time process per wallet address. Once
  verified, the wallet can be used for transfers.
</Info>

## Related Methods

<CardGroup cols={2}>
  <Card title="Create Transfer" icon="paper-plane" href="/docs/api/transfers/create-transfer">
    Use verified wallet in transfers
  </Card>
</CardGroup>
