List Deposits
Retrieves recent deposit history for your Binance account, showing incoming cryptocurrency transfers.
Common Properties
- Name - The custom name of the node.
- Color - The custom color of the node.
- Delay Before (sec) - Waits in seconds before executing the node.
- Delay After (sec) - Waits in seconds after executing node.
- Continue On Error - Automation will continue regardless of any error. The default value is false.
If the ContinueOnError property is true, no error is caught when the project is executed, even if a Catch node is used.
Inputs
- Client Id - The unique identifier from the Connect node (optional if using direct credentials).
- Limit - Maximum number of deposit records to retrieve (default: 5 if not specified or ≤ 0).
Options
- Api Key - (Optional) Binance API key credential. Use if not providing Client Id.
- Secret Key - (Optional) Binance API secret key credential. Use if not providing Client Id.
Output
- Result - An array of deposit record objects showing transaction details, status, and confirmations.
How It Works
The List Deposits node queries Binance for your recent deposit transactions.
When executed, the node:
- Retrieves the Binance client (from Client Id or creates one from credentials)
- Validates the Limit input
- Queries Binance's deposit history service (hardcoded to limit 5 in current implementation)
- Returns an array of deposit records
Requirements
- Either a Client Id from Connect node OR API credentials in options
- Appropriate API permissions (account reading and wallet enabled)
Error Handling
The node will return specific errors in the following cases:
- ErrInternal - Failed to retrieve input values
- ErrSetResult - Failed to set the output result
Usage Notes
- Returns recent deposit transactions
- Includes deposits from all cryptocurrencies
- Shows deposit status (pending, completed, failed)
- Note: Current implementation uses hardcoded limit of 5
- Deposits require blockchain confirmations before being credited
- Failed or rejected deposits are also included
Deposit Record Structure
Each deposit object typically includes:
{
"id": "abc123def456",
"amount": "0.5",
"coin": "BTC",
"network": "BTC",
"status": 1,
"address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"addressTag": "",
"txId": "0x1234567890abcdef...",
"insertTime": 1640000000000,
"transferType": 0,
"confirmTimes": "2/2",
"unlockConfirm": 2,
"walletType": 0
}
Deposit Fields
Transaction Details:
- id - Unique deposit ID
- txId - Blockchain transaction hash
- coin - Cryptocurrency symbol
- network - Blockchain network used
- amount - Deposit amount
Address Information:
- address - Receiving address
- addressTag - Memo/tag if applicable (e.g., for XRP, XLM)
Status:
- status - Deposit status code:
- 0 = Pending
- 1 = Success
- 6 = Credited but cannot withdraw
Confirmations:
- confirmTimes - Format: "current/required" (e.g., "2/2")
- unlockConfirm - Confirmations needed to unlock funds
Timestamps:
- insertTime - When deposit was detected (milliseconds)
Type:
- transferType - Internal transfer type
- walletType - Wallet type (0 = spot)
Example: List Recent Deposits
Scenario: Check the last 5 deposits to your account
Inputs:
- Client Id: (from Connect node)
- Limit:
5
Output: Array of up to 5 recent deposit records.
Example: Monitor Pending Deposits
[Timer: Every minute]
|
v
[Connect]
|
v
[List Deposits]
| Limit: 10
v
[Filter: deposits where status == 0] // Pending
|
v
[For Each: pending deposit]
|
v
[Log: deposit.coin + " deposit pending"]
[Log: " Amount: " + deposit.amount]
[Log: " Confirmations: " + deposit.confirmTimes]
[Log: " TxID: " + deposit.txId]
|
v
[Disconnect]
Example: Deposit Notification System
[Timer: Every 2 minutes]
|
v
[Connect]
|
v
[List Deposits: Limit 5]
|
v
[Compare: with last_check_deposits]
|
v
[Find: new_deposits = current - last_check]
|
v
[If: new_deposits.length > 0]
|
v
[For Each: deposit in new_deposits]
|
v
[Send Notification]
| Title: "New " + deposit.coin + " Deposit"
| Message: deposit.amount + " " + deposit.coin + " received"
| Status: deposit.status == 1 ? "Confirmed" : "Pending"
v
[Update: last_check_deposits = current_deposits]
|
v
[Disconnect]
Example: Deposit Verification
[User: Requests deposit verification]
|
v
[Input: expected_txid]
|
v
[Connect]
|
v
[List Deposits: Limit 20]
|
v
[Find: deposit where txId == expected_txid]
|
v
[If: found]
|
+---> [Display: "Found - Status: " + status]
| [Display: "Amount: " + amount + " " + coin]
| [Display: "Confirmations: " + confirmTimes]
|
+---> [Alert: "Transaction not found in recent deposits"]
v
[Disconnect]
Deposit Status Codes
- 0 (Pending) - Deposit detected, waiting for confirmations
- 1 (Success) - Deposit completed and credited
- 6 (Credited but locked) - Funds credited but withdrawals restricted
Understanding Confirmations
confirmTimes Format: "current/required"
"0/2"- No confirmations yet, needs 2"1/2"- 1 confirmation, needs 2 total"2/2"- Fully confirmed"12/12"- Fully confirmed (Bitcoin typically requires more)
Different Networks, Different Requirements:
- Bitcoin (BTC): Usually 1-2 confirmations
- Ethereum (ETH): Usually 12 confirmations
- BSC (BEP20): Usually 15 confirmations
- Tron (TRC20): Usually 19 confirmations
Use Cases
Deposit Monitoring:
- Track incoming funds
- Verify customer deposits
- Monitor deposit completion
Automation:
- Auto-notify on deposits
- Trigger actions when deposits confirm
- Reconcile expected vs actual deposits
Customer Service:
- Verify deposit claims
- Check deposit status
- Track confirmation progress
Accounting:
- Record incoming transactions
- Reconcile balances
- Generate deposit reports
Security:
- Monitor unauthorized deposits
- Track suspicious transactions
- Audit deposit history
Analyzing Deposits
// Group by coin
const byCoin = deposits.reduce((acc, deposit) => {
acc[deposit.coin] = acc[deposit.coin] || [];
acc[deposit.coin].push(deposit);
return acc;
}, {});
// Calculate total by coin
const totalsByCoin = {};
for (const [coin, depositList] of Object.entries(byCoin)) {
totalsByCoin[coin] = depositList.reduce((sum, d) =>
sum + parseFloat(d.amount), 0
);
}
// Find pending deposits
const pending = deposits.filter(d => d.status === 0);
// Find recent deposits (last 24 hours)
const oneDayAgo = Date.now() - (24 * 60 * 60 * 1000);
const recent = deposits.filter(d => d.insertTime > oneDayAgo);
Best Practices
- Poll deposits periodically to detect new incoming funds
- Store deposit IDs to track which deposits you've already processed
- Check status before considering deposit as completed
- Verify confirmTimes shows full confirmations
- Use txId to look up transaction on blockchain explorer
- Implement retry logic for checking pending deposits
- Don't assume deposits are instant - wait for confirmations
- Consider unlockConfirm for withdrawal availability
Tracking Deposit Progress
Initial: status=0, confirmTimes="0/2"
↓
After 1 block: status=0, confirmTimes="1/2"
↓
After 2 blocks: status=1, confirmTimes="2/2"
↓
Funds available for trading
Common Patterns
New Deposit Detection:
Store: previous_deposit_ids
List Deposits
Compare: current vs previous
Find: new deposits
Process: new deposits
Update: previous_deposit_ids
Waiting for Confirmation:
Loop:
List Deposits
Find: deposit by txId
If: status == 1
Break loop
Wait: 30 seconds
Deposit Reconciliation:
Get: expected_deposits (from your database)
List Deposits
Match: by txId or amount
Mark: matched deposits as verified
Alert: on mismatches
Blockchain Explorer Links
For verification, construct explorer URLs based on network:
Bitcoin (BTC):
https://blockchain.com/btc/tx/{txId}
Ethereum (ETH):
https://etherscan.io/tx/{txId}
BSC (BEP20):
https://bscscan.com/tx/{txId}
Tron (TRC20):
https://tronscan.org/#/transaction/{txId}
Important Considerations
- Deposits may take time depending on network congestion
- Some networks require many confirmations (ETH: 12, BSC: 15)
- Failed deposits (network issues) may appear temporarily
- Large deposits may trigger additional security checks
- Binance may temporarily suspend deposits for certain coins
- Always verify network matches when expecting deposits
Security Tips
- Verify deposit addresses match before sending funds
- Check network compatibility (ERC20 vs BEP20, etc.)
- Don't assume deposits are instant
- Monitor for unusual deposit patterns
- Keep records of all deposit transaction IDs
- Use addressTag/memo when required (XRP, XLM, etc.)
Deposit Timing
Typical deposit times:
- Fast (< 5 min): BSC, Tron, Polygon
- Medium (10-30 min): Ethereum
- Slower (30-60 min): Bitcoin
- Variable: Network congestion affects all chains