GSN deployment for personal project

Hey guys,

I was hoping to deploy my own ERC20 token over testnet for starters. I have already deployed a contract over Goerli testnet for my token and upon stumbling on GSN, I tried incorporating that concept into my pet project. Further evaluation revealed that there is something known as a “paymaster” and a “forwarder” that processes the interim transactions incurring the “gas fees”. I haven’t been able to find something that discusses how both of them are deployed and how the setup works over testnet and mainnet, or what kind of contracts they are and how they are deployed.

So looking for more information on how to achieve that. Any leads or help is kindly appreciated.

Thanks in advance!

I suggest looking at the overview in https://docs.opengsn.org
The Forwarder is the gsn component that actually calls your contract.
Validates the caller’s signature, and manage the nonce, to prevent replay attacks.

The Paymaster is the actual contract that pays for the transaction.
In testnets, there is a sample “accept everything” Paymaster, that agrees to pay for any request.
Obviously, in production network you need your own paymaster which agrees to pay for your specific requests, by checking the sender, the target, etc.

1 Like

Appreciate the help, thank you sir