<p>According to the Bitcoin core developers reference, <a href="https://bitcoin.org/en/developer-reference#sendfrom" rel="nofollow noreferrer">SendFrom</a> is deprecated and you should use <code>SendToAddress</code> or <code>SendMany</code> instead.</p>

<p>Note that <code>SendFrom</code> sends from an <em>account</em> not from an <em>address</em>. The Account feature is being removed from Bitcoin core.</p>

<p>I assume the (HD) wallet rummages around for suitable UTXOs to use as inputs to the transaction.</p>

CC BY-SA 4.0
2018-10-05T14:07:51.333Z
2018-10-05T14:15:19.007Z
2018-10-05T14:15:19.007Z
RedGrittyBrick
<p>Bitcoin node is one wallet and <code>accounts</code> are its internal accounting system which is deprecated now: <a href="https://github.com/bitcoin-dot-org/bitcoin.org/issues/1287" rel="nofollow noreferrer">https://github.com/bitcoin-dot-org/bitcoin.org/issues/1287</a></p>
<p>The major issue is account balance can go negative which is &quot;WONTAFIX&quot; <a href="https://github.com/bitcoin/bitcoin/issues/2079" rel="nofollow noreferrer">https://github.com/bitcoin/bitcoin/issues/2079</a></p>
<p>I'd recommend using latest Bitcoin <a href="https://bitcoin.org/en/release/v0.17.0" rel="nofollow noreferrer">0.17.0</a> which has multi wallet features which can isolate each user, further read:</p>
<blockquote>
<p><a href="https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)#Multi-wallet_RPC_calls" rel="nofollow noreferrer">https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)#Multi-wallet_RPC_calls</a></p>
<p><a href="https://github.com/bitcoin/bitcoin/pull/13058" rel="nofollow noreferrer">https://github.com/bitcoin/bitcoin/pull/13058</a></p>
</blockquote>
<p><strong>Edit: (To upgrade from 0.16.3 to 0.17.0)</strong></p>
<p>Assuming installed <a href="https://bitcoin.org/en/full-node#ubuntu-1604" rel="nofollow noreferrer">0.16.3</a> via <code>sudo apt-add-repository ppa:bitcoin/bitcoin</code> I was able to upgrade from 0.16.3 to 0.17.0 successfully by following:</p>
<pre>
cd ~
wget https://bitcoincore.org/bin/bitcoin-core-0.17.0/bitcoin-0.17.0.tar.gz
tar -xvzf bitcoin-0.17.0.tar.gz 
cd bitcoin-0.17.0/

#Install dependencies to compile

sudo apt-get update
sudo apt install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git libdb4.8-dev libdb4.8++-dev curl
sudo apt install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git libdb4.8-dev libdb4.8++-dev curl
sudo apt install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libzmq3-dev

#Compile Bitcoin 0.17.0

./autogen.sh
./configure
make

#sudo worked for me 

sudo make install 

#rebooting was required for me as bitcoind was still showing 0.16.3, after reboot 0.17.0 was shown

</pre>

CC BY-SA 4.0
2018-10-05T14:53:16.597Z
thanks for reply! I have already installed 0.16.3 version. but i can't upgrade it to 0.17.0 . Can you send me more details to upgrade it ?
Yur Gasparyan
CC BY-SA 4.0
2018-10-08T13:15:05.477Z
@YurGasparyan I added details as I tested to upgrade from 0.16.3 to 0.17.0
Shahbaz
CC BY-SA 4.0
2018-10-05T14:14:53.260Z
2018-10-08T13:13:50.447Z
2020-06-16T11:10:03.350Z
Shahbaz
<p>I am using bitcoin daemon in my system to get and pass btc to users. So now I want to pass some btc to another users but I can not understand what is the difference between <code>sendfrom</code> and <code>sendtoaddress</code>. I have read about <code>sendtoaddress</code> command in 
<a href="http://chainquery.com/bitcoin-api/sendtoaddress" rel="nofollow noreferrer">http://chainquery.com/bitcoin-api/sendtoaddress</a> but could not understand where this btc is going from</p>

<bitcoin-cli><sendtoaddress>
Bitcoin sendfrom and sendtoaddress
Yur Gasparyan
# Bitcoin sendfrom and sendtoaddress

(Asked by: username_0 on 2018-10-05)

I am using bitcoin daemon in my system to get and pass btc to users. So now I want to pass some btc to another users but I can not understand what is the difference between `sendfrom` and `sendtoaddress`. I have read about `sendtoaddress` command in
<http://chainquery.com/bitcoin-api/sendtoaddress> but could not understand where this btc is going from

**Tags:** bitcoin-cli, sendtoaddress


---

## 2 answers

### Answer by username_1 on 2018-10-05. Score: 1

According to the Bitcoin core developers reference, [SendFrom](https://bitcoin.org/en/developer-reference#sendfrom) is deprecated and you should use `SendToAddress` or `SendMany` instead.

Note that `SendFrom` sends from an *account* not from an *address*. The Account feature is being removed from Bitcoin core.

I assume the (HD) wallet rummages around for suitable UTXOs to use as inputs to the transaction.


---

### Answer by username_2 on 2018-10-05. Score: 0

Bitcoin node is one wallet and `accounts` are its internal accounting system which is deprecated now: <https://github.com/bitcoin-dot-org/bitcoin.org/issues/1287>

The major issue is account balance can go negative which is "WONTAFIX" <https://github.com/bitcoin/bitcoin/issues/2079>

I'd recommend using latest Bitcoin [0.17.0](https://bitcoin.org/en/release/v0.17.0) which has multi wallet features which can isolate each user, further read:

> <https://en.bitcoin.it/wiki/API_reference_(JSON-RPC)#Multi-wallet_RPC_calls>
>
> <https://github.com/bitcoin/bitcoin/pull/13058>

**Edit: (To upgrade from 0.16.3 to 0.17.0)**

Assuming installed [0.16.3](https://bitcoin.org/en/full-node#ubuntu-1604) via `sudo apt-add-repository ppa:bitcoin/bitcoin` I was able to upgrade from 0.16.3 to 0.17.0 successfully by following:

```

cd ~
wget https://bitcoincore.org/bin/bitcoin-core-0.17.0/bitcoin-0.17.0.tar.gz
tar -xvzf bitcoin-0.17.0.tar.gz 
cd bitcoin-0.17.0/

#Install dependencies to compile

sudo apt-get update
sudo apt install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git libdb4.8-dev libdb4.8++-dev curl
sudo apt install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils git libdb4.8-dev libdb4.8++-dev curl
sudo apt install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libzmq3-dev

#Compile Bitcoin 0.17.0

./autogen.sh
./configure
make

#sudo worked for me 

sudo make install 

#rebooting was required for me as bitcoind was still showing 0.16.3, after reboot 0.17.0 was shown

```

> **Comments:**
> **username_0**: thanks for reply! I have already installed 0.16.3 version. but i can't upgrade it to 0.17.0 . Can you send me more details to upgrade it ?  
> **username_2**: @username_0 I added details as I tested to upgrade from 0.16.3 to 0.17.0  

---

