Skip to main content
Query balances, view transfer history, and monitor wallet activity in real-time.
Balances & ActivityBalances & Activity

Check Wallet Balance

Get your current Bitcoin balance and token holdings in your Spark wallet. Gets the current balance of the wallet, including Bitcoin balance and token balances.

Received does not mean spendable

An incoming Bitcoin transfer must be claimed by the receiving wallet before it becomes owned and available. A payment to an offline receiver can appear in getPendingTransfers() while both read-only getAvailableBalance() and getOwnedBalance() remain zero. The read-only client cannot claim it. An initialized SparkWallet claims incoming transfers automatically. Use satsBalance.incoming for pending funds known to the wallet, and transfer:claimed followed by a balance refresh to update spendable funds. A Lightning receive request reaching TRANSFER_COMPLETED is not a substitute for checking the receiving wallet’s balance. owned is not “available plus every incoming payment.” Show pending receipts separately, and use available when deciding whether a payment can be sent.

View Transfer History

Track all incoming and outgoing transfers for your wallet with pagination support. Gets all transfers for the wallet with optional pagination.
getTransfers() includes Spark transfers, Lightning sends/receives, and cooperative exits. For token transaction details (e.g., sender address), use queryTokenTransactionsWithFilters().

For newest-first token history, use the cursor pagination example.

Real-time Event Monitoring

Monitor wallet activity in real-time using EventEmitter methods for instant updates. Adds a listener for the specified event to monitor wallet activity.
Adds a one-time listener for the specified event.
Removes the specified listener from the specified event.

Available Events

Spark wallets emit various events for different types of activity:

Available Events

Events only fire for incoming funds. For outgoing operations (Lightning sends, withdrawals), poll the status using getLightningSendRequest() or getCoopExitRequest().

Use Sparkscan Explorer

Monitor your wallet activity using the Sparkscan block explorer for a visual interface.
Sparkscan provides a web interface to view your wallet’s transaction history, balance, and activity without needing to implement the API calls yourself.

Example: Complete Balance Monitoring