I've recently set up a Safe Wallet using the GnosisSafeProxyFactory and successfully created a 'GnosisSafeProxy'. For this proxy, I've used a Nonce, and the owner address is a contract compliant with EIP-1271.

I'm now at the stage where I want to execute my first transaction, but I'm encountering some uncertainty. My current understanding is that I should use the execTransaction function from the GnosisSafe.sol. However, I'm unsure whether this function can be called directly from a GnosisSafeProxy contract. Could anyone clarify this for me?

Furthermore, if execTransaction is the correct approach, I would greatly appreciate detailed explanations regarding its inputs:

uint256 value bytes calldata data Enum.Operation operation uint256 safeTxGas uint256 baseGas uint256 gasPrice address gasToken address payable refundReceiver Understanding these parameters will enable me to send the transaction correctly. I'm confident about handling the signature aspect, as I plan to follow the official documentation closely.

On a side note, I'm currently at ETHIstanbul. If anyone from the forum is also here and willing to offer in-person assistance, that would be fantastic. Please feel free to ping me for a quicker, face-to-face discussion.

Thank you in advance for your help!

1 Answer 1



You can either call execTransaction directy on the smart contract, or use the protocol-kit (part of our SDK) if you are looking for TypeScript methods to interact with the smart contracts.

Some info on the parameters of execTransaction can be found here. These should correspond to the inputs of any standard EIP-712 transaction.

Hope it helps! Louis

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.