Overview
What are Meta Transactions
Meta transactions are a popular way to enable users to make a transaction on Blockchain without directly paying the gas fees. Instead, they sign a message off-chain, which is then sent to a relayer who pays the gas fees and executes the transaction process.
How Meta Transactions Work
User
: Signs a meta transaction (that is a message containing information about the transaction he would like to execute).
Relayer
: A web server with a wallet that signs a valid Ethereum transaction (that has the meta transaction as the payload) and sends it to the Blockchain.
Forwarder
: An Ethereum contract in charge of verifying the signature of the meta transaction that, not surprisingly, forwards the request to a recipient contract.
Recipient
: The Ethereum contract that the user intended to call without paying the gas fee. This contract has to be able to preserve the identity of the user that initially requested the transaction.