Skip to main content
Every smart deposit webhook includes the common fields, plus the routing and token context below. Each event also carries received_amount — the stablecoin amount detected at the Smart Deposit Address, in the input token’s smallest unit.

Shared Fields

FieldTypeDescription
chain_idstringEIP 155 chain ID (e.g. "11155111").
chain_namestringHuman-readable chain name (e.g. "Ethereum Sepolia").
organization_idstringYour organization UUID.
smart_deposit_addressstringThe Smart Deposit Address that received the stablecoins.
user_destination_addressstringEnd-user address where vault shares are minted.
vault_addressstringTarget vault (Boring Vault) contract address.
input_token_symbolstringSymbol of the deposited stablecoin (e.g. "USDC").
input_token_addressstringContract address of the deposited stablecoin.
input_token_decimalsnumberDecimal places of the input token.
received_amountstringAmount received at the Smart Deposit Address, in the input token’s smallest unit. String for bigint serialization.

smart_deposit.deposit.pending

Paxos Labs has received the stablecoins and initiated the process to deposit them into the vault.
{
  "id": "1234567890",
  "type": "smart_deposit.deposit.pending",
  "timestamp": "2026-04-10T18:32:24.000Z",
  "version": "v2",
  "chain_name": "Ethereum Sepolia",
  "chain_id": "11155111",
  "organization_id": "700768ae-c71d-42cc-9ff9-13b777d6d379",
  "smart_deposit_address": "0xsda0000000000000000000000000000000123",
  "user_destination_address": "0xuda0000000000000000000000000000000000456",
  "distributor_code_depositor_address": "0xdcd0000000000000000000000000000000123",
  "vault_address": "0xvlt0000000000000000000000000000000999",
  "input_token_symbol": "USDC",
  "input_token_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
  "input_token_decimals": 6,
  "received_amount": "10000000",
  "receipt_tx_hash": "0x1234",
  "receipt_tx_block_hash": "0x4567"
}

Event-Specific Fields

FieldTypeDescription
received_amountstringAmount received in the token’s smallest unit. String for bigint serialization.
receipt_tx_hashstringTransaction hash of the deposit into the Smart Deposit Address.
receipt_tx_block_hashstringBlock hash of the deposit transaction.

smart_deposit.deposit.confirmed

Stablecoins have been successfully deposited into the vault and shares have been minted to the destination address.
{
  "id": "1234567890",
  "type": "smart_deposit.deposit.confirmed",
  "timestamp": "2026-04-10T18:32:24.000Z",
  "version": "v2",
  "chain_name": "Ethereum Sepolia",
  "chain_id": "11155111",
  "organization_id": "700768ae-c71d-42cc-9ff9-13b777d6d379",
  "smart_deposit_address": "0xsda0000000000000000000000000000000123",
  "user_destination_address": "0xuda0000000000000000000000000000000000456",
  "distributor_code_depositor_address": "0xdcd0000000000000000000000000000000123",
  "vault_address": "0xvlt0000000000000000000000000000000999",
  "input_token_symbol": "USDC",
  "input_token_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
  "input_token_decimals": 6,
  "received_amount": "10000000",
  "minted_amount": "9000000",
  "forward_tx_hash": "0x1234",
  "forward_tx_block_hash": "0x4567"
}

Event-Specific Fields

FieldTypeDescription
received_amountstringAmount received in the token’s smallest unit.
minted_amountstringValue of shares minted to the user, denominated in the input token’s smallest unit.
forward_tx_hashstringTransaction hash from forwarding funds from the Smart Deposit Address into the DCD.
forward_tx_block_hashstringBlock hash of the forward transaction.

smart_deposit.deposit.finalized

Deposit finalized.
{
  "id": "1234567890",
  "type": "smart_deposit.deposit.finalized",
  "timestamp": "2026-04-10T18:32:24.000Z",
  "version": "v2",
  "chain_name": "Ethereum Sepolia",
  "chain_id": "11155111",
  "organization_id": "700768ae-c71d-42cc-9ff9-13b777d6d379",
  "smart_deposit_address": "0xsda0000000000000000000000000000000123",
  "user_destination_address": "0xuda0000000000000000000000000000000000456",
  "distributor_code_depositor_address": "0xdcd0000000000000000000000000000000123",
  "vault_address": "0xvlt0000000000000000000000000000000999",
  "input_token_symbol": "USDC",
  "input_token_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
  "input_token_decimals": 6,
  "received_amount": "10000000",
  "minted_amount": "9000000",
  "forward_tx_hash": "0x1234",
  "forward_tx_block_hash": "0x4567"
}

Event-Specific Fields

Same as smart_deposit.deposit.confirmed. Sent after the forward transaction reaches chain-specific finality.

smart_deposit.deposit.failed

Unable to deposit for some reason. Customer notified with reason and remediation actions taken.
{
  "id": "1234567890",
  "type": "smart_deposit.deposit.failed",
  "timestamp": "2026-04-10T18:32:24.000Z",
  "version": "v2",
  "chain_name": "Ethereum Sepolia",
  "chain_id": "11155111",
  "organization_id": "700768ae-c71d-42cc-9ff9-13b777d6d379",
  "smart_deposit_address": "0xsda0000000000000000000000000000000123",
  "user_destination_address": "0xuda0000000000000000000000000000000000456",
  "distributor_code_depositor_address": "0xdcd0000000000000000000000000000000123",
  "vault_address": "0xvlt0000000000000000000000000000000999",
  "input_token_symbol": "USDC",
  "input_token_address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
  "input_token_decimals": 6,
  "received_amount": "10000000",
  "forward_tx_hash": null,
  "forward_tx_block_hash": null,
  "error": "Vault cap reached"
}

Event-Specific Fields

FieldTypeDescription
received_amountstringAmount received in the token’s smallest unit.
forward_tx_hashstring | nullTransaction hash of the forward attempt. null if the transaction was never sent.
forward_tx_block_hashstring | nullBlock hash of the forward attempt. null if the transaction was never sent.
errorstringHuman-readable error describing why the deposit failed (e.g., vault cap reached, predicate failure, out of gas).