Confirming wallets to access PII
Understand incoming payload visibility and confirm destination wallets to unlock PII fields.
Incoming Travel Rule payloads only include full PII once the destination wallet is confirmed. This page shows what you can expect in the API response before confirmation and how to confirm (or add) a wallet to unlock PII fields.
If you need the policy-level disclosure logic, see PII data handling.
Wallet Confirmation and Blockchain Info
A wallet is considered confirmed if it has been confirmed by the beneficiary VASP (Virtual Asset Service Provider). Confirmation occurs when:
- The beneficiary VASP acknowledges ownership of the wallet.
- The wallet is added through the CryptoSwift platform/API.
When fetching transactions using:
GET /transactionsGET /transactions/:id
the field blockchainInfo->isDestinationConfirmed indicates whether the destination wallet has been confirmed.
Outgoing Transactions
For outgoing transactions:
- The destination wallet points to the receiving VASP.
isDestinationConfirmedshows if the receiving VASP has confirmed ownership of the custodial wallet.- PII data is always included for you (the originating VASP).
Incoming Transactions
For incoming transactions:
isDestinationConfirmedshows if YOU (the beneficiary VASP) have confirmed the destination wallet.- If not yet confirmed, you can do so by confirming an existing wallet using the address, blockchain, and asset from your unconfirmed wallet list.
- Via Client Dashboard: Wallet Management
- Via API: Wallets API Reference
PII data for the originator and beneficiary is only exposed once the wallet is confirmed.
Example API response for an unconfirmed wallet
When blockchainInfo.isDestinationConfirmed is false, the originator and beneficiary objects only include the type field.
{
"id": "c5fc47fd-3399-48e4-97be-bd19ad196cfa",
"status": "DELIVERED",
"direction": "INCOMING",
"createdAt": "2025-10-01T11:32:33.816Z",
"asset": "USDC",
"amount": 100,
"blockchainInfo": {
"transactionHash": "...",
"origin": "0xabc...",
"destination": "0xdef...",
"destinationType": "CUSTODIAL",
"blockchain": "Ethereum",
"isDestinationConfirmed": false,
"destinationWalletId": 12345
},
"originator": {
"type": "NATURAL"
},
"beneficiary": {
"type": "NATURAL"
}
}
Note that isDestinationConfirmed and destinationWalletId can be null when your tenant was identified by a different data point than the destination wallet.
Confirming a wallet
If destinationWalletId is present, confirm the wallet by updating it to isConfirmed: true. If it is null, add the destination wallet first.
You can confirm a wallet from the CryptoSwift Client Dashboard or via the API steps below.
Confirm an existing wallet:
curl --location --request PATCH 'https://api-dev.cryptoswift.eu/wallets/12345' \
--header 'x-api-key: $API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"isConfirmed": true
}'
Add a new wallet:
curl --location 'https://api-dev.cryptoswift.eu/wallets' \
--header 'x-api-key: $API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"address": "0xdef...",
"asset": "*",
"blockchain": "Ethereum"
}'
Wallets can also be confirmed or added in bulk. See the Wallets API documentation for details.