Deposit Webhooks
If you set a notifyUrl on a deposit account, Confirmo sends an HTTP POST to that URL whenever something changes — each time a deposit changes status, and when the account itself changes status.
Deposit Event — crypto.deposit
crypto.depositFired on every deposit status transition. The data object is the deposit, matching the schema returned by the list deposits endpoint.
{
"type": "crypto.deposit",
"data": {
"accountId": "cda1a2b3c4d5e7f8",
"address": "T9yD14Nj9j7xAB9kf14qMjdZR43bE1Z2L9",
"chain": "TRON-BLOCKCHAIN-MAINNET",
"paymentAsset": "USDT",
"paymentAmount": 250.00,
"balanceAsset": "EUR",
"balanceAmount": 231.45,
"status": "DONE",
"txHash": "a1b2c3d4e5f6...",
"receivedAt": 1772539200,
"notifyUrl": "https://your-platform.com/webhooks/deposits",
"reference": "your_unique_reference"
}
}You receive one of these at each lifecycle transition (CONFIRMING, PENDING_VERIFICATION, DONE, and so on). Credit your customer only when status is DONE.
Returned deposits include the refund hash. When a deposit'sstatusisRETURNED, thedataobject also includesrefundTxHash— the on-chain transaction hash of the funds being sent back — so you can reconcile the return against the blockchain.
Account Event — crypto.deposit.account
crypto.deposit.accountFired when a deposit account changes status. The most important case is an account being blocked by Confirmo's compliance team: no further deposits will be accepted or processed on any of the account's addresses. You also receive an email notification.
{
"type": "crypto.deposit.account",
"data": {
"id": "cda1a2b3c4d5e7f8",
"status": "BLOCKED",
"balanceAsset": "EUR",
"notifyUrl": "https://your-platform.com/webhooks/deposits",
"reference": "your_unique_reference",
"updatedAt": 1772625600
}
}When you receive an account event with status: "BLOCKED", stop sharing that account's addresses with your customer and stop expecting further deposits on them. A blocked account is admin-only — you cannot un-block it yourself. Contact Confirmo if you believe it was blocked in error.

