# sendTransfer

You can use the `sendTransfer` method to request a transfer of any amount of Bitcoin to one or more recipients from the user's wallet.

<table><thead><tr><th width="208">Request parameters</th><th>Description</th></tr></thead><tbody><tr><td><code>recipients</code></td><td><p>an array  of objects with &#x3C;<code>address</code>, <code>amount</code>> properties:</p><ul><li><code>address</code> a string representing the recipient's address</li><li><code>amount</code> a number representing the amount of Bitcoin to send, denominated in satoshis (Bitcoin base unit)</li></ul></td></tr></tbody></table>

<pre class="language-typescript"><code class="lang-typescript">import {
  request,
  BitcoinNetworkType,
  RpcErrorCode,
} from "sats-connect";
<strong>
</strong><strong>try {
</strong>  const response = await request("sendTransfer", {
    recipients: [
      {
        address: recipient,
        amount: Number(amount),
      },
    ],
  });
  if (response.status === "success") {
    // handle success
  } else {
    if (response.error.code === RpcErrorCode.USER_REJECTION) {
      // handle user cancellation error
    } else {
      // handle error
    }
  }
} catch (err) {
    alert(err.error.message);
}
</code></pre>

The user will be prompted to review the Bitcoin transfer transaction in the wallet, and to confirm:

* the recipients and amounts to send&#x20;
* their desired transaction fee &#x20;

The transaction will be signed and broadcasted upon user approval.

The `sendTransfer` method returns a Promise that resolves to the `sendTransferResult` object:

<table><thead><tr><th width="162">Property</th><th>Description</th></tr></thead><tbody><tr><td><code>txid</code></td><td>The transaction id as a hex-encoded string.</td></tr></tbody></table>
