Skip to main content
Minisend detects deposits to every address you create and notifies you. Configure a webhook URL once in Settings and it’s shared across checkout, off-ramp, onramp, and the Wallet API.

wallet.deposit.received

Fires once for every deposit to a wallet you created, signed the same way as every other Minisend webhook: HMAC-SHA256 in X-Minisend-Signature, using your webhook_secret. See webhook verification.
string
required
Use as an idempotency key. A late finality update redelivers the same deposit_id, not a new one.
string
required
Your own identifier for the wallet, exactly as you passed it when you created the address.
string
required
The chain the funds actually landed on. Addresses from this API are identical across every EVM chain, so a wallet you created on Base can still receive on Polygon, Arbitrum, or anywhere else supported. Always read this field instead of assuming it matches the chain you issued the wallet on.
string
required
A string, not a number. Compare and store it as a decimal in your own system rather than parsing it as a float.
string
The on-chain transaction. May briefly be null on the very first notification for a deposit.
string
required
confirmed or complete. You may receive confirmed first and complete moments later for the same deposit_id — both are safe to treat as “funds have arrived.”
Deposits are also readable over the API without waiting for a webhook. See get wallet deposits and list all deposits — useful for catching up after downtime, or if you’d rather poll.

What this doesn’t cover yet

The Wallet API detects and reports incoming funds. It does not yet move them: there is no transfer or sweep endpoint, so funds stay at the address until that capability ships. Plan your integration around reading balances and deposits, not withdrawing programmatically.