Gelato is deprecating the SyncFee payment methods. The old
callWithSyncFee and GelatoRelayContext patterns will no longer be available, and Gelato will not provide a replacement. To continue collecting fees from users, you must implement token collection as part of your custom contract logic and use sponsored transactions.Migration Examples Repository
Complete migration examples with contracts, deployment scripts, and step-by-step code.
What’s Being Deprecated?
The following patterns will no longer be supported:callWithSyncFeeSDK methodGelatoRelayContextcontract inheritance_transferRelayFee()functiononlyGelatoRelaymodifier- Automatic fee data encoding in calldata
Recommended Migration Path
Use Sponsored Transactions
We recommend migrating to sponsored transactions using the Gas Tank. This provides a better user experience and simpler implementation.Sponsor Gas with Gas Tank
Learn how to sponsor transactions for your users
Collect Tokens in Your Contract Logic
If you need to collect tokens from users to cover costs, implement this as part of your custom contract logic:Migration Steps
Update Your Contract
- Remove
GelatoRelayContextinheritance - Remove
_transferRelayFee()calls - Remove
onlyGelatoRelaymodifier - Add your own token collection logic if needed
Update Your Frontend
- Replace
callWithSyncFeewithsendTransaction - If collecting tokens, add the token transfer logic to your contract call
Fund Your Gas Tank
Deposit funds in your Gas Tank to sponsor transactions for your users.
Gas Tank
Learn how to manage your Gas Tank