Gelato Network

Quick Start

Gelato Relay, as easy as 0xabc...
Gelato Relay's smart contract is deployed at: 0xaBcC9b596420A9E9172FD5938620E265a0f9Df92 on every supported network!
After reading this page:
  • You'll go through a decision process to understand the best way to integrate with Gelato Relay.
  • You'll know exactly which SDK/API method is for you.
Depending on your final destination, please click the corresponding number to find about your chosen SDK method:

Option 1: Your users pay for for their own gas

If you do not want to sponsor your user's gas, you will use the relayWithSyncFee SDK method with the SyncFee payment method, and this will require you to deploy a new contract (or upgrade if you can) to be compatible with GelatoRelayContext.

Option 2: Sponsoring some/all of your users' gas

Sponsoring some of your user's gas:

Gelato Relay allows for partial sponsoring of gas based on certain conditions with developer-defined rules! For example, an app could sponsor user's gas based on a certain NFT being present in their wallet, or perhaps the NFT allows the user to have 10 gasless transactions a day. As a sponsor, you will able to customise with Gelato Relay's sponsor dashboard, coming soon™.

Sponsoring all of your user's gas:

  • Gelato handles user signature verification: go ahead and use relayWithSponsoredUserAuthCall where Gelato handles user signature verification for you. In this method, you can use ERC-2771's _msgSender() to validate your relay calls on-chain. This will require an upgrade to your target contract for ERC2771Context support, if it does not support it already.
  • You handle user signature verification: If your app workflow already handles its security in-house (i.e. use of user signatures, replay/reentrancy protection etc.) and you do want to sponsor all of your user's gas, you are ready to use Gelato Relay without any change to your existing smart contract logic. This will be using the relayWithSponsoredCall method.