project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

DayPass

Send an NFT and automatically cover the recipients gas! Daypass allows the distribution and organization of gas sponsorship via NFTs or "Daypasses". It's easy to use, and leverages the composability of NFTs for AA based gas sponsorship.

DayPass

Created At

ETHGlobal Tokyo

Winner of

trophy

📜 Scroll — Just Deploy

trophy

🤝 Polygon — Best Public Good with Account Abstraction

trophy

🏊‍♂️ Polygon — Pool Prize

trophy

🅰️🅰️ EF — Best Account Abstraction

trophy

🥈 Mantle — Build Use

Project Description

Send an NFT and automatically cover the recipient's gas! DayPass allows the distribution and organization of gas sponsorship via NFTs or "Daypasses". We abstract the process of paymaster deployment and leverage the composability of NFTs for AA-based gas sponsorship. Developers can set up restrictions including disabling trading, gas limits, spending limits, and as the name "Daypass" suggests time limits.

We believe that paymasters are going to be a core piece of crypto infrastructure, with many eventually servicing millions of wallets. Distributing access to these paymasters via NFTs provides a way to organize and track this usage, leveraging existing NFT tools. Think of DayPass as an organization and composability layer for paymaster access.

Beyond the benefits of organization and composability, in addition to the awesome benefits of gas sponsor ship enabled by AA in general, the time restriction feature of these NFTs could be useful for a few different use cases:

Developer events - Do you want someone to try out your new protocol? Send them 3 days worth of all the gas they'd want on relevant contracts. - Do you want users to deploy to your L2 during a hackathon? Airdrop Daypasses to all attendees that sponsored deploys and swaps for the duration of the hackathon!

Games - Free gas could be a really cool reward item, and an NFT "ticket" or "pass"

Large Scale NFT based onboarding - A ton of users' first interaction with crypto is being airdropped an NFT, think about super bowl commercials, promotions, etc. Recent examples of these types of drops include Crown Royal, Mastercard, Starbucks, etc. If these NFTs conformed to the DayPass spec, users could sell or trade these NFTs without ever needing to fiat onboard, vastly improving their first experience.

How it's Made

DayPass is a tool for ERC 4337 based AA, which uses NFTs to guard paymaster access. When someone sets up their "Daypasses" they specify a series of restrictions. Once they're finished and hit submit we do two three things: Deploy a Daypass NFT contract, then deploy an ERC 4337 Paymaster contract, stake, and deposit on the paymaster. We have a helper contract that handles this, it's setupHelper.sol if you want to see exactly what we're doing!

That paymaster contract decides whether or not to sponsor transactions based on the senders' ownership of a "valid" Daypass NFT. We underestimated how restrictive the verification function on the paymaster is, so there's a bit of a discrepancy between the restriction functionality shown in the client vs on-chain. You can see HackathonPaymaster.sol for details there. Future work would involve working around these restrictions.

We built this with the future in mind, where AA is ubiquitous and AA wallets have good paymaster selection built-in. In our demo, you'll see us input the address of the newly created paymaster when we're showing off sponsored transactions. In the client, we're using ZeroDev AA wallets. For more details check out https://docs.zerodev.app/.

background image mobile

Join the mailing list

Get the latest news and updates