What is Mneepay?
The MNEE stablecoin is the lifeblood of this platform. It allows value to move instantly across borders without the friction of traditional banking rails.
MneePay acts as the operating system for this currency. We bring the tools needed for businesses to start accepting MNEE payments in minute.
We believe in flexibility. Everything you can do in our beautiful Merchant Dashboard, you can also automate via our API and SDK. Let's walk through the core pillars of your business.
Please be sure to checkout our documenation for more technical details here.
1. Products & Plans
Before you can sell, you need something to offer. A Product describes the item or service, and Plans define how you charge for it (e.g., $10/month vs $100/year).
The Dashboard Way In the dashboard, you can easily create products with rich descriptions and images.

- Navigate to Products.
- Click New Product.
- Enter the name (e.g., "Pro Membership"), price, and billing interval.
The Developer Way Automate your inventory management using the SDK.
import { MneeClient } from '@mneepay/sdk';
const client = new MneePayClient({
apiKey: 'mn_live_...'
});
await client.createProduct({
name: "Hoverboard",
description: "The real deal.",
priceCents: 49999, // $499.99
billingType: "one_time",
externalId: 'prod_1', // any internal ids
active: true
});
2. Payment Links
Whether you are selling a product or sending an invoice, everything leads to a Payment Link. This is the hosted checkout page where your customer actually pays you.
One Link, Two Modes:
- Product Links (Public): Share these anywhere (Twitter, Email, Discord). When a user clicks, we ask for their Name and Email to create a Customer record for you automatically.
- Invoice Links (Private): These are sent to specific customers. The checkout page is pre-filled with their details, so they just have to connect their wallet and sign.
The Checkout Experience:
- Fully Branded: Your logo and brand colors appear automatically, making the experience feel native to your business.
- Wallet Connect: Users can connect any supported wallet (MetaMask, Rabby, etc.).
- Smart Network Switching: If the user is on the wrong network, we guide them to switch to the MNEE-supported chain with one click.
- Real-Time Status: The page listens to the blockchain. The moment the transaction confirms, the UI updates to "Paid" instantly (We also got webhooks for payment confirmations, more on that later).

2. Customers
Your users are more than just wallet addresses. They are Customers. We help you keep track of their details, payment history, and subscription status.

Sync your internal user database with Mnee.
const customer = await client.createCustomer({
name: 'Alice Baker',
email: 'alice@example.com',
website: 'https://alice.eth',
externalId: 'cus_1', // this is where you add your internal ids for querying later.
address: '123 Blockchain Blvd'
});
console.log(`Created customer: ${customer.data.id}`);
3. Invoices & Payments
This is where the magic happens. An Invoice is a request for payment. When a customer pays using MNEE, our system detects the on-chain transaction and automatically marks the invoice as paid.
The Dashboard Way
Manually draft an invoice for a custom deal and email it to your client. They get a beautiful, branded payment page.

The Developer Way
Generate invoices programmatically after a checkout flow.
const invoice = await client.createInvoice({
customerId: customer.data.id,
status: 'open',
dueAt: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000).toISOString(), // Due in 7 days
items: [
{
name: 'Consulting Hours',
quantity: 5,
unitPriceCents: 15000 // $150.00 per hour
}
]
});
// Send this URL to your user
const paymentUrl = `https://mneepay.xyz/pay/${invoice.data.id}`;
4. Webhooks (The "Glue")
You need to know immediately when you get paid. Polling the database is the old way. We use Webhooks to push events to your server.
Supported Events:
-
payment.success- A transaction was confirmed on-chain. -
invoice.paid- An invoice has been fully settled. -
subscription.created- A new recurring plan started. - etc
Setting up a Webhook in the UI:

Fandora?
To show the capabilities of MneePay API and SDK, we've build a patreaon like application that accepts MNEE tokens.
You can visit https://fandora.lol
The code: https://github.com/mneepay/fandora



How we build it?
The following technologies and libraries (all of which are open source) were used to build MneePay.
- React/Tanstack Start (Frontend, API Routes)
- Drizzle (ORM)
- Postgres (Database)
- Docker (Deployment)
Log in or sign up for Devpost to join the conversation.