<p>A transaction is composed of inputs and outputs.<br>
The inputs are the funds that go into the transaction, they can be from multiple wallets as long as every input (an input is an output from some previous transaction) is signed for by its owner.<br>
On the output side we can send funds to any number of addresses (we are limited only by transaction size in KB)<br>
So yes, it is possible to do just that.<br>
As a practical example look at CoinJoin which is a way to combine inputs from different wallets together.<br>
Hope this helps.</p>

CC BY-SA 3.0
2017-07-25T00:58:47.763Z
Can one do this in Bitcoin Core? It would seem not because isn't `signrawtransaction` bound to a particular wallet?
Geremia
CC BY-SA 3.0
2017-07-25T04:17:54.603Z
@Germania, It is possible. instead of sending the transaction to the network, you send it to the next person who will add their inputs and outputs and sign them as well, and so on. The last person would then broadcast the transaction on the network.
Albert S
CC BY-SA 3.0
2017-07-26T21:15:17.647Z
So basically I need to specify this argument of `signrawtransaction`: "The second optional argument (may be null) is an array of previous transaction outputs that this transaction depends on but may not yet be in the block chain"?
Geremia
CC BY-SA 3.0
2017-11-02T16:45:55.013Z
How exactly does one make a transaction using inputs from different wallets?
Geremia
CC BY-SA 3.0
2017-02-27T20:21:52.663Z
2017-07-19T16:31:05.190Z
2017-07-19T16:31:05.190Z
Albert S
<p>Or every transaction consists of only one sending wallet and one receiving wallet.</p>

<transactions><wallet>
Is it possible to have multiple wallets which send money and/or multiple wallets which receive money in a SINGLE transaction?
Aqqqq
# Is it possible to have multiple wallets which send money and/or multiple wallets which receive money in a SINGLE transaction?

(Asked by: username_0 on 2017-02-27)

Or every transaction consists of only one sending wallet and one receiving wallet.

**Tags:** transactions, wallet


---

## 1 answers

### Answer by username_1 on 2017-02-27. Score: 2 | Accepted answer

A transaction is composed of inputs and outputs.  
The inputs are the funds that go into the transaction, they can be from multiple wallets as long as every input (an input is an output from some previous transaction) is signed for by its owner.  
On the output side we can send funds to any number of addresses (we are limited only by transaction size in KB)  
So yes, it is possible to do just that.  
As a practical example look at CoinJoin which is a way to combine inputs from different wallets together.  
Hope this helps.

> **Comments:**
> **username_2**: Can one do this in Bitcoin Core? It would seem not because isn't `signrawtransaction` bound to a particular wallet?  
> **username_1**: @Germania, It is possible. instead of sending the transaction to the network, you send it to the next person who will add their inputs and outputs and sign them as well, and so on. The last person would then broadcast the transaction on the network.  
> **username_2**: So basically I need to specify this argument of `signrawtransaction`: "The second optional argument (may be null) is an array of previous transaction outputs that this transaction depends on but may not yet be in the block chain"?  
> **username_2**: How exactly does one make a transaction using inputs from different wallets?  

---

