<p>You can use a combination of <a href="https://en.bitcoin.it/wiki/Running_Bitcoin#Command-line_arguments" rel="nofollow noreferrer">command-line arguments</a> in a shortcut, namely, the "-wallet=" and "-rescan" arguments, to run Bitcoin-qt using different <a href="https://en.bitcoin.it/wiki/Wallet#Bitcoin_Qt" rel="nofollow noreferrer">wallets</a>.</p>

<p>Say you want to work with 2 different wallets (one for your shared mining profits, and the other for personal mining profits)</p>

<p><strong>Step 1:</strong></p>

<p>Start up bitcoin-qt and set it up so that it doesn't start up automatically when windows starts up (Settings > Options > Main)</p>

<p><img src="https://i.sstatic.net/N8sH5.jpg" alt="Bitcoin-qt Options &gt;Settings &gt; Main"></p>

<p><strong>Step 2</strong></p>

<p>Visit your Bitcoin Data directory, located by default at:</p>

<pre><code>C:\Documents and Settings\YourUserName\Application data\Bitcoin (XP)

C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Vista and 7)
</code></pre>

<p>And rename your wallet file. In this example we will name it "Personal Profits.dat"</p>

<p>Start up Bitcoin-qt and let it generate a new wallet file (upon finding that there's no "wallet.dat file, the client creates a new one). Encrypt it (<a href="https://en.bitcoin.it/wiki/Securing_your_wallet#General_Solutions" rel="nofollow noreferrer">use a strong password</a>) and close the client.</p>

<p><strong>Step 3</strong></p>

<p>Set up the short-cut.</p>

<p>If you already have a shortcut created to start up Bitcoin-qt you can make a copy (The original will keep on working with the newly generated wallet.dat, the new one will use a manually specified wallet file). </p>

<p>Otherwise create 2 differnt shortcuts for the client, leave one as is, and edit the other one as noted here.</p>

<p>Right-click on the shortcut you want to use with your shared profits wallet and go to properties, and on the "<em>Shortcut</em>" Tab, add this line a the end of the "<em>Target</em>" Field like so:</p>

<pre><code>C:\Program Files\Bitcoin\bitcoin.exe -rescan
</code></pre>

<p>Now right-click on the shortcut you want to use with your personal profits wallet and edit again, like so:</p>

<pre><code>C:\Program Files\Bitcoin\bitcoin.exe -walletfile=Personal_Profits.dat -rescan
</code></pre>

<p><strong>Final Thoughts:</strong> </p>

<p>As noted on answer posted below, the "-rescan" argument is necessary to avoid issues with your balances (missing funds)</p>

<p>As for how to transfer money from one wallet to the other, while running the client using wallet A, take note of an address on the wallet. Close the program, and run the other shortcut. Now use the send option on the client and fill in with that address. (Method can be used both ways).</p>

<p>And yes both wallets are on the same computer and even the same directory (Bitcoin Data Dir as explained above)</p>

CC BY-SA 3.0
2015-02-03T14:06:13.377Z
I wonder if you could set up a directory alias to avoid duplicating the ~30GB block chain data.
morsecoder
CC BY-SA 3.0
2015-02-03T14:47:59.703Z
Turns out it's way easier to just use the "-wallet=<file>" parameter than "-datadir" as I posted. I will be updating the answer in a few.
Dhuum
CC BY-SA 3.0
2015-02-03T20:15:26.470Z
It's been updated to include the -walletfile approach.
Dhuum
CC BY-SA 3.0
2015-02-03T20:52:24.490Z
As the below answer says, when you change wallets you will likely also need to do a `-rescan`, which is unfortunate. Also, IMO the `-wallet=` answer is better and would make your answer more concise if it didn't include the switching of the `-datadir=` method.
morsecoder
CC BY-SA 3.0
2015-02-03T21:24:39.120Z
I didn't think of it, and yeah it turned out to be a long answer, a bit cluttered too. I will update once more. Thank you very much for your input.
Dhuum
CC BY-SA 3.0
2015-02-03T13:49:01.083Z
2015-02-03T21:44:27.420Z
2015-02-03T21:44:27.420Z
Dhuum
<p>you've guessed correctly, you can just move (<code>REN</code> for <code>rename</code> in Windows) the wallet to another filename with bitcoin-qt not running, start it back up and it will create a new wallet.dat. here's an example using americancoind on the Linux command line, hopefully you can extrapolate to using the Bitcoin GUI. note that you need to start the program with the <code>-rescan</code> option after each time you swap the wallet, or you will not see your funds, as described here: <a href="https://bitcoin.stackexchange.com/questions/10974/import-wallet-dat-into-a-new-bitcoin-qt-client">Import wallet.dat into a new Bitcoin-Qt client</a></p>

<p>it gets a little tricky sending funds from one account to another this way, though. note that I'm <em>not</em> showing the output, by the shell, of the jobs starting and stopping in the background, because it can be unnecessarily confusing.</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat my_wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind &amp;
</code></pre>

<p>wait a minute or so here, for the last 2500 blocks to be verified, before the RPC server starts...</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind getnewaddress ''
AzpvNNAUFYjW79uCS1Q9ALNSVhABqrUC1U
jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat group_wallet.dat
jcomeau@aspire:~/.americancoin$ mv my_wallet.dat wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind -rescan &amp;
</code></pre>

<p>wait another two minutes or so, there's more to do with <code>-rescan</code>.</p>

<pre><code>jcomeau@aspire:~/.americancoin$  americancoind walletpassphrase MyPassFrazeYeahRight 60
</code></pre>

<p>that unlocks the wallet for 60 seconds, assuming you have set a passphrase for it... in Linux, precede the command with a space so that Bash doesn't store the passphrase in your .bash_history file.</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind settxfee 0.0
true
</code></pre>

<p>the <code>true</code> above was the output of the command. you don't really want to lose any money shuffling funds between accounts, do you?</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind sendtoaddress AzpvNNAUFYjW79uCS1Q9ALNSVhABqrUC1U 1.0
9982de4dc77eab126d2ad4837db477577bbeee733ef381c1889576cfbd328473
</code></pre>

<p>you probably ought to cut-and-paste the address to avoid mistakes! again, the 2nd line is the output of the command, the transaction number.</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat my_wallet.dat
jcomeau@aspire:~/.americancoin$ mv group_wallet.dat wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind -rescan &amp;
</code></pre>

<p>now you wait about 20 minutes; enough time for the transaction to have been packaged into a block, then 6 confirmations at about 1.5 minutes each. finally:</p>

<pre><code>jcomeau@aspire:~/.americancoin$ americancoind getbalance
1.00000000
</code></pre>

<p>just remember to shutdown the program before each change of wallet, and to startup with <code>-rescan</code> afterwards (or however it's done with bitcoin-qt).</p>

<p>if something doesn't work, there's more info on this process here: <a href="https://bitcoin.stackexchange.com/questions/19971/coin-seems-to-have-gone-to-a-duplicate-address">coin seems to have gone to a duplicate address</a></p>

CC BY-SA 3.0
2014-01-06T11:05:59.720Z
2014-01-07T19:14:21.570Z
2017-04-13T12:47:33.583Z
jcomeau_ictx
<p>I am sharing pool mining with a friend with equal cards. We are splitting what we mine in half. I also have a couple extra cards of my own. I want to have one wallet for our shared stuff and one coming from my private mining stuff. In bitcoin-qt how do I setup a wallet for the group one and a wallet for just me on the same computer?  Do I just copy in and move out wallet.dat files when I want to use one or the other?</p>

<p>Also what if I want to move money from one wallet to the other how would I do that?  Both wallets are on the same computer?</p>

<p>Thanks. </p>

CC BY-SA 3.0
2015-02-03T14:03:56.620Z
Why not just use two different addresses from the same wallet.dat? It would require a little computation whenever you wanted to track payments to one of the two addresses, I guess, which could be annoying. You could use the debug window, though, and use 'getreceivedbyaddress' to make it a little more automated. You might also look into the watched addresses feature of Bitcoin core 0.10.
morsecoder
<wallet>
Bitcoin-qt multiple wallets and transferring between?
John
# Bitcoin-qt multiple wallets and transferring between?

(Asked by: username_0 on 2013-07-04)

I am sharing pool mining with a friend with equal cards. We are splitting what we mine in half. I also have a couple extra cards of my own. I want to have one wallet for our shared stuff and one coming from my private mining stuff. In bitcoin-qt how do I setup a wallet for the group one and a wallet for just me on the same computer? Do I just copy in and move out wallet.dat files when I want to use one or the other?

Also what if I want to move money from one wallet to the other how would I do that? Both wallets are on the same computer?

Thanks.

**Tags:** wallet

> **Comments:**
> **username_1**: Why not just use two different addresses from the same wallet.dat? It would require a little computation whenever you wanted to track payments to one of the two addresses, I guess, which could be annoying. You could use the debug window, though, and use 'getreceivedbyaddress' to make it a little more automated. You might also look into the watched addresses feature of Bitcoin core 0.10.  

---

## 2 answers

### Answer by username_2 on 2015-02-03. Score: 2

You can use a combination of [command-line arguments](https://en.bitcoin.it/wiki/Running_Bitcoin#Command-line_arguments) in a shortcut, namely, the "-wallet=" and "-rescan" arguments, to run Bitcoin-qt using different [wallets](https://en.bitcoin.it/wiki/Wallet#Bitcoin_Qt).

Say you want to work with 2 different wallets (one for your shared mining profits, and the other for personal mining profits)

**Step 1:**

Start up bitcoin-qt and set it up so that it doesn't start up automatically when windows starts up (Settings > Options > Main)

![Bitcoin-qt Options >Settings > Main](https://i.sstatic.net/N8sH5.jpg)

**Step 2**

Visit your Bitcoin Data directory, located by default at:

```
C:\Documents and Settings\YourUserName\Application data\Bitcoin (XP)

C:\Users\YourUserName\Appdata\Roaming\Bitcoin (Vista and 7)

```

And rename your wallet file. In this example we will name it "Personal Profits.dat"

Start up Bitcoin-qt and let it generate a new wallet file (upon finding that there's no "wallet.dat file, the client creates a new one). Encrypt it ([use a strong password](https://en.bitcoin.it/wiki/Securing_your_wallet#General_Solutions)) and close the client.

**Step 3**

Set up the short-cut.

If you already have a shortcut created to start up Bitcoin-qt you can make a copy (The original will keep on working with the newly generated wallet.dat, the new one will use a manually specified wallet file).

Otherwise create 2 differnt shortcuts for the client, leave one as is, and edit the other one as noted here.

Right-click on the shortcut you want to use with your shared profits wallet and go to properties, and on the "*Shortcut*" Tab, add this line a the end of the "*Target*" Field like so:

```
C:\Program Files\Bitcoin\bitcoin.exe -rescan

```

Now right-click on the shortcut you want to use with your personal profits wallet and edit again, like so:

```
C:\Program Files\Bitcoin\bitcoin.exe -walletfile=Personal_Profits.dat -rescan

```

**Final Thoughts:**

As noted on answer posted below, the "-rescan" argument is necessary to avoid issues with your balances (missing funds)

As for how to transfer money from one wallet to the other, while running the client using wallet A, take note of an address on the wallet. Close the program, and run the other shortcut. Now use the send option on the client and fill in with that address. (Method can be used both ways).

And yes both wallets are on the same computer and even the same directory (Bitcoin Data Dir as explained above)

> **Comments:**
> **username_1**: I wonder if you could set up a directory alias to avoid duplicating the ~30GB block chain data.  
> **username_2**: Turns out it's way easier to just use the "-wallet=<file>" parameter than "-datadir" as I posted. I will be updating the answer in a few.  
> **username_2**: It's been updated to include the -walletfile approach.  
> **username_1**: As the below answer says, when you change wallets you will likely also need to do a `-rescan`, which is unfortunate. Also, IMO the `-wallet=` answer is better and would make your answer more concise if it didn't include the switching of the `-datadir=` method.  
> **username_2**: I didn't think of it, and yeah it turned out to be a long answer, a bit cluttered too. I will update once more. Thank you very much for your input.  

---

### Answer by username_3 on 2014-01-06. Score: 0

you've guessed correctly, you can just move (`REN` for `rename` in Windows) the wallet to another filename with bitcoin-qt not running, start it back up and it will create a new wallet.dat. here's an example using americancoind on the Linux command line, hopefully you can extrapolate to using the Bitcoin GUI. note that you need to start the program with the `-rescan` option after each time you swap the wallet, or you will not see your funds, as described here: [Import wallet.dat into a new Bitcoin-Qt client](https://bitcoin.stackexchange.com/questions/10974/import-wallet-dat-into-a-new-bitcoin-qt-client)

it gets a little tricky sending funds from one account to another this way, though. note that I'm *not* showing the output, by the shell, of the jobs starting and stopping in the background, because it can be unnecessarily confusing.

```
jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat my_wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind &

```

wait a minute or so here, for the last 2500 blocks to be verified, before the RPC server starts...

```
jcomeau@aspire:~/.americancoin$ americancoind getnewaddress ''
AzpvNNAUFYjW79uCS1Q9ALNSVhABqrUC1U
jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat group_wallet.dat
jcomeau@aspire:~/.americancoin$ mv my_wallet.dat wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind -rescan &

```

wait another two minutes or so, there's more to do with `-rescan`.

```
jcomeau@aspire:~/.americancoin$  americancoind walletpassphrase MyPassFrazeYeahRight 60

```

that unlocks the wallet for 60 seconds, assuming you have set a passphrase for it... in Linux, precede the command with a space so that Bash doesn't store the passphrase in your .bash\_history file.

```
jcomeau@aspire:~/.americancoin$ americancoind settxfee 0.0
true

```

the `true` above was the output of the command. you don't really want to lose any money shuffling funds between accounts, do you?

```
jcomeau@aspire:~/.americancoin$ americancoind sendtoaddress AzpvNNAUFYjW79uCS1Q9ALNSVhABqrUC1U 1.0
9982de4dc77eab126d2ad4837db477577bbeee733ef381c1889576cfbd328473

```

you probably ought to cut-and-paste the address to avoid mistakes! again, the 2nd line is the output of the command, the transaction number.

```
jcomeau@aspire:~/.americancoin$ americancoind stop
Americancoin server has now stopped running!
jcomeau@aspire:~/.americancoin$ mv wallet.dat my_wallet.dat
jcomeau@aspire:~/.americancoin$ mv group_wallet.dat wallet.dat
jcomeau@aspire:~/.americancoin$ americancoind -rescan &

```

now you wait about 20 minutes; enough time for the transaction to have been packaged into a block, then 6 confirmations at about 1.5 minutes each. finally:

```
jcomeau@aspire:~/.americancoin$ americancoind getbalance
1.00000000

```

just remember to shutdown the program before each change of wallet, and to startup with `-rescan` afterwards (or however it's done with bitcoin-qt).

if something doesn't work, there's more info on this process here: [coin seems to have gone to a duplicate address](https://bitcoin.stackexchange.com/questions/19971/coin-seems-to-have-gone-to-a-duplicate-address)


---

