Introduction

Dedicated Addresses is a crucial feature on Blockradar that enables you to create unique addresses for your customers. These addresses allow your customers to deposit stablecoins into your fintech app seamlessly.

When you create a dedicated address for a customer, they can use that single address to deposit stablecoins across multiple EVM-compatible blockchains.

For example, if you have Ethereum, Binance Smart Chain, Polygon, and Base master wallets created, each address you generate through any of these master wallets can be used to receive stablecoins on any of the supported blockchains and assets. This ensures that you don’t have to worry about your customer sending stablecoins to the wrong blockchain.

Additionally, when stablecoins are deposited into a particular address, the assets are automatically moved to the chain’s master wallet address.

Aside from Tron and Solana, addresses generated from one wallet can be used to deposit stablecoins across other blockchains that have the blockchain parameter isEvmCompatible: true.

Address Parameters Explained

When creating or updating an address, you can use the following optional parameters to customize its behavior:

ParameterTypeDefaultDescription
disableAutoSweepBoolean (Optional)falseIf set to true, automatic sweeping of funds from this address is disabled.
enableGaslessWithdrawBoolean (Optional)falseIf set to true, allows withdrawals without requiring the user to pay gas fees directly.
metadataObject (Optional)nullCustom metadata you can attach to the address for your own reference or tracking purposes.
nameString (Optional)nullA human-readable name for the address, useful for identification in your dashboard or logs.
showPrivateKeyBoolean (Optional)falseIf set to true, the private key for this address will be returned in the API response. Use with caution.

The parameters disableAutoSweep, enableGaslessWithdraw, and showPrivateKey will override the corresponding settings in the master wallet configuration for this specific address. This allows for granular control at the address level, regardless of the wallet’s default settings.

Notes:

  • All these parameters are optional; you only need to include those relevant to your use case.
  • Enabling showPrivateKey can expose sensitive information. Only use this in secure, trusted environments.
  • Be cautious with showPrivateKey exposing private keys can compromise security.

Create a Dedicated Address

You can generate a dedicated address for your customer using either the Blockradar dashboard or the API, depending on your workflow and integration needs.

1. Using the Dashboard

The Blockradar dashboard provides a simple, user-friendly interface for generating new addresses.

This screenshot demonstrates the process of generating a new address via the Blockradar dashboard. This method is ideal for manual address creation or for teams who prefer a graphical interface.

2. Using the API

For programmatic or automated address generation, you can use the Create Dedicated Address API.
This is useful for integrating address creation into your own applications or backend systems.

To create a dedicated address for a customer, send a POST request to our Create Dedicated Address API.

curl --request POST \
  --url https://api.blockradar.co/v1/wallets/{walletId}/addresses \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "disableAutoSweep": "OPTIONAL_BOOLEAN",
  "enableGaslessWithdraw": "OPTIONAL_BOOLEAN",
  "metadata": "OPTIONAL_METADATA",
  "name": "OPTIONAL_ADDRESS_NAME",
  "showPrivateKey": "OPTIONAL_BOOLEAN"
}'

Response

{
  "data": {
    "address": "0xe1037B45b48390285e5067424053fa35c478296b",
    "blockchain": {
      "createdAt": "2024-05-14T11:53:33.095Z",
      "derivationPath": "m/44'/60'/0'/0",
      "id": "85ffc132-3972-4c9e-99a5-5cf0ccb688bf",
      "isActive": true,
      "isEvmCompatible": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800081/crypto-assets/ethereum-eth-logo_idraq2.png",
      "name": "ethereum",
      "slug": "ethereum",
      "symbol": "eth",
      "tokenStandard": "ERC20",
      "updatedAt": "2024-06-14T22:32:11.983Z"
    },
    "configurations": {
      "aml": {
        "message": "Address is not sanctioned",
        "provider": "ofac",
        "status": "success"
      },
      "disableAutoSweep": false,
      "enableGaslessWithdraw": false,
      "showPrivateKey": false
    },
    "createdAt": "2024-10-23T11:13:40.446Z",
    "derivationPath": "m/44'/60'/0'/0/87",
    "id": "0a69c48a-6c6f-422c-bd6a-70de3306a3ac",
    "isActive": true,
    "metadata": {
      "user_id": 1
    },
    "name": "Customer 1",
    "network": "testnet",
    "type": "INTERNAL",
    "updatedAt": "2024-10-23T11:13:40.446Z"
  },
  "message": "Address generated successfully",
  "statusCode": 200
}

Address Whitelisting

This feature allows you to whitelist an external address to be monitored based on the wallet’s requirements.

This means that if you manage your own address generation, you can still use Blockradar to monitor deposits made to that address.

curl --request POST \
  --url https://api.blockradar.co/v1/wallets/{walletId}/addresses/whitelist \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "address": "string<ADDRESS_TO_WHITELIST>",
  "metadata": "object<OPTIONAL_METADATA>",
  "name": "string<OPTIONAL_ADDRESS_NAME>"
}'

Response

{
  "data": {
    "address": "0x3375154fa32Cb434B044E73a2582C4D2E6518AE4",
    "blockchain": {
      "createdAt": "2024-05-27T08:31:14.966Z",
      "derivationPath": "m/44'/60'/0'/0",
      "id": "74733889-4ecd-403e-9840-94e87c043f24",
      "isActive": true,
      "isEvmCompatible": true,
      "logoUrl": "https://res.cloudinary.com/blockradar/image/upload/v1716800080/crypto-assets/Base_Network_Logo_vqyh7r.png",
      "name": "base",
      "slug": "base",
      "symbol": "eth",
      "tokenStandard": null,
      "updatedAt": "2024-10-27T07:52:16.115Z"
    },
    "configurations": {
      "aml": {
        "message": "Address is not sanctioned",
        "provider": "ofac",
        "status": "success"
      }
    },
    "createdAt": "2024-11-11T16:57:19.160Z",
    "derivationPath": null,
    "id": "b87901a2-45c1-4d2d-8ee7-205ef0c4ddf1",
    "isActive": true,
    "metadata": null,
    "name": "External address",
    "network": "testnet",
    "type": "EXTERNAL",
    "updatedAt": "2024-11-11T16:57:19.160Z"
  },
  "message": "Address whitelisted successfully",
  "statusCode": 200
}

Testing

Addresses generated via a testnet master wallet can only receive assets on the testnet.

Here is a list of places where you can get testnet assets to test with:

  • Ethereum - Get test USDC here: Circle
  • Binance Smart Chain - Get test USDT here: Binance
  • Polygon - Get test USDC here: Circle
  • Base - Get test USDC here: Circle
  • Tron - Get test USDT here: Nileex
  • Solana - Get test USDC here: Circle
  • Optimism - Get test USDC here: Circle
  • Arbitrum - Get test USDC here: Circle
  • Celo - Get test USDC here: Circle


Happy hacking! ❤️