Prerequisites

  • A Spark wallet created following the Create First Wallet guide
  • Pending transfers (from Lightning payments, Spark transfers, or Bitcoin deposits)

Understanding Transfer Claims

When you receive funds through Lightning payments, Spark transfers, or Bitcoin deposits, they need to be claimed before becoming available in your wallet. The claiming process:

  • Verifies the transfer’s validity
  • Updates your wallet’s state
  • Makes the funds available for use

Checking Pending Transfers

To view all pending transfers that need to be claimed:

const pendingTransfers = await wallet.getPendingTransfers();
console.log("Pending transfers:", pendingTransfers);

Claiming Transfers

Claim All Pending Transfers

The simplest way to claim all pending transfers at once:

const claimed = await wallet.claimTransfers();
console.log("Transfers claimed:", claimed);

// Check updated balance
const balance = await wallet.getBalance();
console.log("New balance:", balance);

Claim Specific Transfer

If you want to claim a specific transfer:

const pendingTransfers = await wallet.getPendingTransfers();
if (pendingTransfers.length > 0) {
    const transfer = pendingTransfers[0];
    await wallet.claimTransfer(transfer);
    console.log("Transfer claimed successfully");
}

Transfer States

Transfers can be in different states:

  • TRANSFER_STATUS_SENDER_KEY_TWEAKED
  • TRANSFER_STATUS_RECEIVER_KEY_TWEAKED
  • TRANSFER_STATUS_RECEIVER_REFUND_SIGNED

Only transfers in these states can be claimed.

Best Practices

  • Regularly check and claim pending transfers
  • Monitor transfer states to ensure successful claims
  • Keep track of claimed transfer IDs for reference

Next Steps

After claiming your transfers, you can:

Need Help?