I want to know if there is there a way to have a shared wallet where 2 users both have to agree before calling "transfer". Any problem with this logic in the transfer method?

User A wants to transfer tokens to User B so user A calls the Transfer method. However, the tokens are not actually transferred but it is added to a map of "pending" transfers.

User C now has to call Transfer to User B as well and if the exact match is found in pending map (matching toAddress and amount), then the transfer of the token is actually made.

Alternatively I can make User C have to call the Approve method instead of Transfer. However that seems to go against what it is designed for looking at its signature - approve(address _spender, uint _value). So _spender would actually have to be used for the receiver.

Are both these options possible and are there any problems with them?


1 Answer 1


Gnosis team has developed a multisig wallet that is aware of tokens.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.