WaaS Pay
A no-code platform for organizations to build, customize, and deploy smart contract accounts (ERC4337) on behalf of their employees and vendors to facilitate privacy-preserving payments on-chain - all with a seamless web2 experience.
Screenshots






Problem Statement
MOTIVATIONNobody disputes that ERC4337 is a major catalyst on our journey to on-board the next billion users to web3. However, as of July 23, there have only been31,000 smart contract accounts createdon the 6 largest EVM chains (Etheruem, Polygon, Arbitrum, Avalanche, Optimism, and Gnosis), compared to over1 million active EOA addresses on those same chains. Its clear that novel, genuine applications of ERC4337 for web2 users are needed to accelerate adoption.Armed with the ability to create seamless user experiences for web2 users, we set out to build an end-to-end payments solution for an organization’s employees and vendors. Our no-code platform abstracts away the difficulties of customizing & deploying SAFE smart contract accounts, reliably handles sensitive vendor/employee data using SNARK proofs, & uses zkBob Direct Deposits to facilitate privacy-preserving payments - all on one of the most popular L2s: Polygon.SOLUTIONWaaS Pay is a no-code tool for organizations to build-their-own smart account wallets (ERC4337) & deploy them on behalf of web2 users, on demand, using only a URL link. Wallets are issued with all the popular account-abstraction features & come with privacy-preserving functionality out of the box, enabling a seamless onboarding experience to web3 for private and instantaneous transactions on the blockchain between organizations & individuals alike.As an organization wishing to leverage the blockchain for instant payments to my employees or vendors while preserving privacy, WaaS Pay let’s me:Use the no-code interface to customize smart contract account features, like Social Logins, fiat on/off ramps, and gasless transactions for your recipients.Leverage SNARKs (zero-knowledge proofs) to restrict who is eligible to redeem & deploy your wallets & to keep sensitive data secure.Issue unique URLs to your recipients to streamline their on-boarding.As a wallet recipient, I receive a feature-rich wallet to privately receive and send funds on Polygon without needing to know anything about web3:Log-in with my favorite authentication methods - no seed phrases or master passwords.An account to log-in to zkBob with to withdraw direct deposit funds from for private payments on-chain.The unique and sensitive credentials I use to redeem my wallet never leave my device & are secured by zero-knowledge proofs.Transactions are sponsored - gas is paid for by the wallet issuer.Fiat on and off-ramps are provided by trusted partners like Stripe and Monerium.What's next:We intend to continue building this project beyond the hackathon and the below are some immediate/short-term improvements we're planning to make.Adding support for the bulk-creation of smart contract accounts for larger organizationsAdding support for automatic zkBob account instantiation and linking at the time of wallet deployment for a web2 user, and automatic recurring payments between the organization <> organization's zkAccount <> recipients zkAccount.Adding more Safe plugins - primarily focused on enhancing the user experience for handling paymentsSupport for Safe smart contract account deployments on more EVM chainsAdd optional identification features such as PolygonID, SismoConnect, and WorldCoinIDBuilding an open-source SDK to let developers add their custom, organization-specific Safe plugins to our platformIntegration with Push Notifications infrastructureExtending support for Biconomy, Metamask Snaps, and dfns wallet infrastructures.
Solution
WaaS Pay is a simple React app that leverages a number of novel technologies to enable the no-code customization, creation, and deployment of smart contract accounts for web2 users:Safe{Core} Protocol Kitand theSafe{Core} Account Abstraction SDKare used to instantiate & deploy smart contract account wallets. The Auth Kit, OnRamp Kit, and Relay Kit are all used alongside the Protocol Kit to deploy feature-rich smart contract accounts.CustomSafeplugins to further enhance the user experience and capabilities of the smart contract accounts - including: customizable recovery methods, time-based policies, and allow/block lists.zkBobis used to facilitate anonymous transactions between the end-user and issuing organization. Upon wallet creation, a zkAccount is instantiated & linked so that the organization (e.g. employer) can send funds to the recipient privately.Mina Protocol’s SnarkyJS libraryis used for generating and validating the zero-knowledge proofs required to verify that only the intended recipient of a wallet can actually deploy one.Polygon zkEVMis the blazing fast and secure L2 blockchain that all the smart contract accounts are deployed to.A self-hostedIPFS nodedeployed using Helia is used to store all the hashed sensitive metadata from vendors & employees.
Hackathon
ETHGlobal Paris
2024
Prizes
- 🏆
⚡️ Safe — 🥈 Safe{Core} AA
- 🏆
🏊 zkBob — Pool Prize
Contributors
- luxo-ai
32 contributions
- leeederek
21 contributions
- donghee214
14 contributions
- vivianpengnyc
3 contributions