Blockchain Notifications
Overview

Blockchain notifications

Subscribe to activity on an address and receive a BLOCKCHAIN_TRANSACTION_DETECTED webhook whenever it moves stablecoin. The address does not have to be one Knit issued — you can watch a treasury address, an exchange deposit address, or a customer's self-custodied wallet.

Address types

Every subscription has a type that determines which address format is accepted and which networks it can watch.

TypeAddress formatNetworks
EVM0x followed by 40 hex charactersETH_MAINNET, MATIC_MAINNET, MATIC_AMOY, BSC_MAINNET, BASE_MAINNET
TRONT followed by 33 base58 charactersTRON_MAINNET, TRON_TESTNET
SOLANA32–44 base58 charactersSOL_MAINNET, SOL_DEVNET

ETHEREUM_MAINNET and SOLANA_MAINNET are accepted as aliases and stored as ETH_MAINNET and SOL_MAINNET. Read the network back from the response rather than assuming the value you sent is echoed verbatim.

If the address format does not match the type, or a network does not belong to that type, the request fails with 400.

Defaults

Omitting networks or tokens applies a sensible default for the type.

TypeDefault networksDefault tokens
EVMETH_MAINNET, MATIC_MAINNET, BSC_MAINNET, BASE_MAINNETUSDC, USDT
TRONTRON_MAINNETUSDT
SOLANASOL_MAINNETUSDC, USDT

Supported tokens are USDC, USDT, and PYUSD.

Delivery

Events go to the subscription's webhookUrl. If you omit it, your business's configured webhook URL is used instead — and if neither is set, the request fails with 400.

The URL must be publicly reachable over HTTP or HTTPS; private, loopback, and internal addresses are rejected. Payloads are signed exactly like every other Knit webhook — see Webhooks for verification and retries.

⚠️

A subscription watches an address, not a balance. Knit does not custody these funds and cannot move them — notifications are observational only.