Skip to main content

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.
info

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:

  1. Retrieves the Binance client (from Client Id or creates one from credentials)
  2. Validates the Limit input
  3. Queries Binance's deposit history service (hardcoded to limit 5 in current implementation)
  4. 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

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