Skip to main content
Transfer tokens privately to one or more Unlink addresses. The sender is the account bound to your user client. See Quickstart. Sender, recipient, and amount are all hidden by a zero-knowledge proof; see How Unlink works. The transfer() method signs with the spending key from the account bound to createUnlinkClient. All public account constructors support private transfers.

Single recipient

confirmed means the transaction has been observed; it does not always mean new private funds are spendable. If your next action spends funds from a recent deposit or transfer, wait with tx.wait({ until: "processed" }).
fundsUsable on the wait result is being replaced by the API’s usable, which covers the sender’s change note and withdrawals as well — cases fundsUsable never covered. Until the SDK is updated, fundsUsable falls back to status === "processed", so it reads false during the confirmed window rather than true. Prefer waiting on processed; do not branch on fundsUsable.

Multiple recipients

Parameters

Single recipient:
  • recipientAddress: recipient Unlink address.
  • token: ERC-20 token address.
  • amount: amount in the token’s smallest unit.
Multiple recipients:
  • token: ERC-20 token address.
  • transfers: list of recipients and amounts.
Returns: a TransactionHandle. See Transaction status.