About the Project — MNEEPay 💡 Inspiration

While exploring programmable money and stablecoins, we noticed a real-world gap:

Money is digital, but spending rules are still manual.

Businesses, DAOs, creators, and even individuals often need control over how funds are spent, not just who holds them. Existing wallets allow transfers, but they do not enforce policies such as:

“This money can only be spent with approved vendors”

“Funds should be used only for specific purposes”

“Spending must be transparent and verifiable”

The MNEE stablecoin, being USD-backed and deployed on Ethereum, provided the perfect foundation to experiment with policy-driven programmable money. This inspired us to build MNEEPay — a simple but powerful system where rules live on-chain and money obeys them automatically.

📚 What We Learned

During the development of MNEEPay, we learned:

How ERC-20 stablecoins (MNEE) can be integrated directly into smart contracts

How to design policy-enforced financial logic using Solidity

Best practices for secure fund handling and role-based access control

How to build end-to-end Web3 systems: smart contract → deployment → frontend interaction

The importance of keeping systems minimal but impactful in hackathons

We also gained deeper insight into how programmable money can act as financial infrastructure, not just a payment tool.

🏗️ How We Built It

MNEEPay was built as a full-stack Web3 application with a strong focus on clarity and reliability.

  1. Smart Contract Layer

Written in Solidity 0.8.20

Uses the official MNEE ERC-20 contract

Core contract: PolicyBoundMoney.sol

Enforces spending rules directly on-chain

Key logic:

Funds are deposited in MNEE

Only approved merchants can receive payments

Beneficiaries cannot bypass rules

Every action emits on-chain events for transparency

Mathematically, spending is constrained as:

AllowedSpend ( 𝑢 , 𝑚 , 𝑎

)

{ true ,

if 𝑚 ∈ AllowedMerchants ∧ 𝑎 ≤ Balance

false ,

otherwise AllowedSpend(u,m,a)={ true, false, ​

if m∈AllowedMerchants∧a≤Balance otherwise ​

This ensures deterministic and trustless enforcement.

  1. Backend & Deployment

Hardhat for compilation and deployment

Environment variables managed via .env

Deployed on Ethereum Sepolia testnet

Fully verifiable on Etherscan

  1. Frontend (Demo Interface)

Built with React.js + ethers.js v6

Simple UI to:

Fund the contract

Approve merchants

Execute spending

View remaining balance

Designed specifically for live demo recording

🚧 Challenges We Faced

Network & tooling compatibility Managing Hardhat, ethers v6, and testnet RPCs required careful configuration.

Token approval flow Ensuring correct ERC-20 approval before transfers was critical for smooth UX.

Balancing simplicity and power We intentionally avoided over-engineering while still delivering a real, usable financial primitive.

Each challenge reinforced the importance of clean design and strong fundamentals.

🌍 Why This Matters

MNEEPay demonstrates that:

Programmable money doesn’t need to be complex

Financial rules can be transparent, automated, and enforceable

Stablecoins like MNEE can power the next generation of:

Automated finance

Controlled treasuries

Trust-minimized commerce

This project aligns perfectly with the hackathon vision:

Stable, programmable, and accessible money for everyone.

🔮 What’s Next

Future extensions include:

AI agents spending MNEE within predefined policies

Multi-user treasuries with spending limits

Time-based or recurring programmable payments

Creator and DAO tooling built on top of MNEEPay

Built With

  • 0.8.20)
  • deployment
  • dotenv
  • ethereum
  • ethers.js
  • etherscan
  • metamask
  • mnee
  • node.js
  • react.js
  • sepolia
  • solidity
  • stablecoin
  • tailwind
Share this project:

Updates