Automated gasless payroll & subscriptions powered by programmable money
Automated payment infrastructure for teams, creators, and businesses β built on programmable money.
MneePay is an ERC-4337 smart account wallet that turns complex payment workflows into simple conversations. Create recurring payrolls, batch payments, and automated subscriptions using natural language β no manual approvals, no gas management, fully non-custodial.
Built for the MNEE Hackathon, MneePay demonstrates how programmable stablecoins enable the next generation of financial automation and agent-driven commerce.
mneepay.demo.video.mp4
Traditional payment systems weren't built for the speed and flexibility of on-chain businesses:
- Manual overhead: Every pay cycle requires manual approvals and transaction signing
- Gas complexity: Managing ETH for gas fees creates friction for non-technical users
- Rigid tooling: Existing solutions don't support multi-recipient payouts or automated schedules natively
- Poor UX: Web3 wallets aren't designed for natural, conversational workflows
MneePay solves this by combining smart contract accounts, AI-powered intent parsing, and decentralized automation into a single platform where payments just work.
Define payrolls, subscriptions, and batch payouts using plain English:
- "Pay my engineering team $6,000 each every two weeks"
- "Send $500 to these 40 contributors"
- "Split $20,000: 50% to Alice, 30% to Bob, 20% to Carol"
Stop signing transactions every week. MneePay allows you to create robust, on-chain payment schedules that execute automatically:
- Payrolls: Automate salary disbursements to your entire team.
- Subscriptions: Set up recurring payments for services or vendors.
Execute multi-recipient transfers in a single transaction β no extra contracts, no repeated approvals.
Payment schedules run automatically via Chainlink Automation. Set it once, forget it forever β no servers, no manual execution.
Built on ERC-4337 smart accounts with Pimlico as the bundler. All transactions are gasless for end users.
Users maintain full control of their funds. Smart accounts are deployed per user via Privy embedded wallets.
All payments settle in MNEE (0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF), a fully-backed USD stablecoin designed for instant, low-cost global payments.
Save frequently used addresses with human-readable names and never copy-paste a wallet address again. When you say "Send $100 to Alice", the AI automatically resolves Alice to her saved address. This eliminates costly mistakes from mistyped addresses and improves UX.
MneePay is a full-stack application built with modern Web3 infrastructure:
- Framework: Next.js 16 (App Router)
- UI: React 18 + Tailwind CSS + shadcn/ui
- State Management: TanStack Query (React Query)
- AI Integration: Vercel AI SDK with Gemini 2.5 Flash Lite for intent parsing
MneeSmartWalletβ ERC-4337 compliant smart account with commitment trackingMneeSmartWalletFactoryβ Deterministic wallet deployment via ERC-1167 minimal proxiesMneeIntentRegistryβ Central registry managing all automated payment intents- Deployed on BSC Mainnet
- Account Abstraction: ERC-4337 (EntryPoint v0.7)
- Bundler: Pimlico (with sponsored transactions)
- Automation: Chainlink Automation for decentralized intent execution
- Embedded Wallets: Privy (email/social login with no seed phrases)
- Indexer: Envio (GraphQL API for transaction history and analytics)
- Database: Neon Postgres (chat persistence via Drizzle ORM)
- Real-time queries: Activity feeds, payment schedules, wallet stats
mneepaymenthub/
βββ apps/
β βββ web/ # Next.js frontend application
β βββ app/ # App Router pages
β βββ components/ # React components
β βββ hooks/ # Custom React hooks
β βββ lib/ # Utilities and blockchain clients
β βββ public/ # Static assets
β
βββ packages/
β βββ contracts/ # Foundry smart contracts
β β βββ src/ # Contract source files
β β βββ script/ # Deployment scripts
β β βββ foundry.toml # Foundry configuration
β β
β βββ indexer/ # Envio indexer
β βββ config.yaml # Indexer configuration
β βββ schema.graphql # GraphQL schema
β βββ src/ # Event handlers
β
βββ pnpm-workspace.yaml # Monorepo configuration
- Node.js v18+ (download)
- pnpm v8+ (
npm install -g pnpm) - Docker Desktop β only required if running the indexer locally (download)
You'll need accounts with the following services (all have free tiers):
| Service | Purpose | Sign Up |
|---|---|---|
| Privy | Embedded wallet auth | privy.io |
| Pimlico | ERC-4337 bundler & gas sponsorship | pimlico.io |
| Neon | Serverless Postgres | neon.tech |
| Google AI Studio | Gemini API for AI chat | aistudio.google.com |
-
Clone the repository
git clone https://github.com/Stoneybro/mneepaymenthub.git cd mneepaymenthub -
Install dependencies
pnpm install
-
Configure environment variables
Copy the example file and fill in your keys:
cp apps/web/.env.example apps/web/.env.local
Or create
apps/web/.env.localmanually:# Privy (required) NEXT_PUBLIC_PRIVY_APP_ID=your_privy_app_id # Pimlico (required for gasless transactions) NEXT_PUBLIC_PIMLICO_API_KEY=your_pimlico_api_key NEXT_PUBLIC_PIMPLICO_SPONSOR_ID=your_sponsorship_policy_id # Database (required for chat persistence) DATABASE_URL=your_postgres_connection_string POSTGRES_URL_NON_POOLING=your_postgres_non_pooling_url # AI (required for conversational payments) GOOGLE_GENERATIVE_AI_API_KEY=your_gemini_api_key
-
Run database migrations
cd apps/web pnpm db:push cd ../..
-
Start the development server
From the repository root:
pnpm dev
Or from the web app directory:
cd apps/web pnpm dev -
Access the application
- Frontend: http://localhost:3000
The app uses a hosted Envio indexer by default. To run it locally:
cd packages/indexer
pnpm devThis requires Docker and exposes a GraphQL playground at http://localhost:8080.
Users sign in with email/social login. A smart account is deployed deterministically on first use.
Deposit ETH or MNEE stablecoin. The wallet displays available vs. committed balances in real-time.
Add team members, vendors, or frequent recipients to your contact list with friendly names. No more copy-pasting addresses β just use names like "Alice" or "Marketing Budget".
Use natural language to define your payment:
- Single transfer: "Send $100 to Alice" β the AI resolves Alice from your contacts
- Batch payout: "Pay $50 each to Alice, Bob, and Carol"
- Recurring payroll: "Pay my team $6,000 each every two weeks for 6 months"
Review the parsed intent in a clean UI card. Confirm the transaction β no gas fees, fully sponsored.
Chainlink keepers execute scheduled payments automatically. Track history and cancel anytime.
cd packages/contracts
forge testcd apps/web
pnpm testcd packages/indexer
pnpm devUser input is sent to a Gemini 2.5 model with a structured prompt. The AI:
- Identifies recipients and amounts
- Extracts timing parameters (interval, duration, start time)
- Selects the correct smart contract method
- Validates all parameters before tool execution
The parsed intent becomes a UserOperation:
- Single transfers:
execute(target, value, data) - Batch transfers:
executeBatch(Call[] calls) - Recurring payments: Registry calls
createIntent(...)
When an intent is created:
- Funds are locked in the wallet's
s_committedFundsmapping - Available balance = total balance - committed balance
- Prevents double-spending across overlapping intents
Chainlink Automation:
- Calls
checkUpkeep()every block to scan for executable intents - Triggers
performUpkeep()when conditions are met - Registry calls wallet's
executeBatchIntentTransfer(...)to distribute funds
Envio indexer captures all events:
- Wallet deployment
- Single/batch executions
- Intent creation/execution/cancellation
- Failed transfers
Data is queryable via GraphQL for dashboards and activity feeds.
- All payments settle in MNEE stablecoin
- Demonstrates programmable money via automated, scheduled payouts
- Enables AI agents to execute treasury operations without human intervention
- Automated payroll eliminates manual approval overhead for remote teams
- Batch payments reduce costs and time for large distributions
- Shared treasury automation enables transparent, predictable budget execution
- Targets remote-first companies, DAOs, creator economies
- Scalable infrastructure (Chainlink Automation, ERC-4337)
- Open-source and composable β other projects can build on our contracts
| Layer | Technology |
|---|---|
| Frontend | Next.js 16, React 18, TypeScript, Tailwind CSS |
| Smart Contracts | Solidity 0.8.28, Foundry, ERC-4337 |
| Account Abstraction | Pimlico (Bundler), EntryPoint v0.7 |
| Automation | Chainlink Automation |
| AI/NLP | Vercel AI SDK, Gemini 2.5 Flash Lite |
| Auth | Privy (embedded wallets) |
| Database | Neon Postgres, Drizzle ORM |
| Indexing | Envio (GraphQL API) |
| Payments | MNEE Stablecoin (0x8cce...) |
We welcome contributions! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is open-source under the MIT License.
- Live Demo: mneepay.vercel.app
- GitHub: github.com/Stoneybro/mneepaymenthub
- MNEE Stablecoin: 0x8ccedbAe4916b79da7F3F612EfB2EB93A2bFD6cF
- Contact: stoneybrocrypto@gmail.com
Built with support from:
- MNEE β Programmable money infrastructure
- Chainlink β Decentralized automation
- Pimlico β ERC-4337 bundler and gas sponsorship
- Privy β Embedded wallet authentication
- Envio β Real-time blockchain indexing
MneePay β Where payments become conversations, and automation becomes trust.