Skip to content

An all in one stablecoin platform from payments, swaps to on/offramps.

Notifications You must be signed in to change notification settings

NEDA-LABS/NedaPay

Repository files navigation

NedaPay

A comprehensive stablecoin payment platform that enables both businesses and individuals to send, receive, manage, and convert cryptocurrency payments with ease. Built for the modern economy, NedaPay bridges the gap between traditional finance and decentralized currencies through an intuitive, user-friendly interface.


What is NedaPay?

NedaPay is a payment platform designed for merchants, businesses, and individual users who want to transact with stablecoins globally. The platform provides a complete suite of tools for payment processing, invoice management, compliance, and fiat conversion - all through a single, comprehensive dashboard that serves both business and personal use cases.

Core Capabilities

💳 Payment Solutions for Everyone

  • Create instant payment links with customizable amounts and currencies
  • Generate professional invoices with automatic payment tracking
  • Send and receive payments in multiple stablecoins (USDC, USDT, cNGN, ZARP, EURC, and more)
  • Real-time payment notifications and status updates

💰 Multi-Currency Stablecoin Support

  • Support for 10+ regional stablecoins across different countries
  • Automatic balance tracking across Base, Arbitrum, Polygon, and other networks
  • Built-in token swapping through Aerodrome DEX integration
  • Real-time exchange rates and conversion tools

🌍 Global Fiat Offramping

  • Convert stablecoins directly to local fiat currencies
  • Support for multiple countries including Nigeria, Indonesia, Tanzania, Kenya, and more
  • Bank account and mobile money integration
  • Competitive exchange rates with transparent fee structure

📊 Dashboard & Analytics

  • Comprehensive transaction history and reporting
  • Revenue and spending tracking with growth metrics
  • Payment link management and performance analytics
  • Personal and business financial insights

🔐 Enterprise-Grade Security & Compliance

  • Integrated KYC/KYB verification through Sumsub
  • Multi-step business verification process
  • Document management and audit trails
  • Regulatory compliance for financial services

🔗 Flexible Authentication

  • Privy-powered authentication with embedded wallets
  • Support for external wallets (MetaMask, Coinbase Wallet, WalletConnect)
  • Social login options (Farcaster, email)
  • ENS and Base Name resolution for user-friendly addresses

Key Features

Payment Solutions

  • Instant Payment Links: Generate secure payment links in seconds with optional amount and currency specification
  • Professional Invoicing: Create, send, and track invoices with automatic payment processing
  • QR Code Generation: Automatic QR code creation for easy mobile payments
  • Multi-Network Support: Accept payments across Base, Arbitrum, Polygon, and other EVM networks

Stablecoin Management

  • Real-Time Balances: Live tracking of stablecoin balances across multiple networks
  • Token Swapping: Integrated DEX functionality for instant token conversions
  • Multi-Currency Display: Support for regional stablecoins including cNGN (Nigeria), ZARP (South Africa), IDRX (Indonesia)
  • Network Detection: Automatic network switching and balance synchronization

Fiat Integration

  • Direct Offramping: Convert stablecoins to local fiat currencies
  • Regional Support: Tailored solutions for different countries and payment methods
  • Bank Integration: Direct bank account deposits and mobile money transfers
  • Competitive Rates: Real-time exchange rates with transparent pricing

Personal & Business Tools

  • Transaction Analytics: Detailed reporting
  • Financial Tracking: Monitor personal spending and business performance with growth metrics
  • Export Capabilities: Download transaction data and generate reports

Supported Stablecoins & Regions

Global Stablecoins

  • USDC (USD Coin) - United States Dollar
  • USDT (Tether USD) - United States Dollar
  • EURC (Euro Coin) - European Euro

Regional Stablecoins

  • cNGN - Nigerian Naira (Nigeria)
  • ZARP - South African Rand (South Africa)
  • IDRX - Indonesian Rupiah (Indonesia)
  • CADC - Canadian Dollar (Canada)
  • BRL - Brazilian Real (Brazil)
  • TRYB - Turkish Lira (Turkey)
  • NZDD - New Zealand Dollar (New Zealand)
  • MXNe - Mexican Peso (Mexico)

Supported Networks

  • Base Mainnet (Primary)
  • Arbitrum One
  • Polygon Mainnet
  • Optimism
  • BNB Smart Chain
  • Scroll Mainnet
  • Celo Mainnet

Technology Stack

Frontend Framework

  • Next.js 15 with App Router
  • React 19 with TypeScript
  • Tailwind CSS for styling
  • Framer Motion for animations

Blockchain Integration

  • Wagmi for wallet connections
  • Ethers.js for contract interactions
  • Coinbase OnchainKit for enhanced functionality
  • Viem for modern Ethereum interactions

Authentication & Security

  • Privy for wallet and social authentication
  • Sumsub for KYC/KYB verification
  • End-to-end encryption for sensitive data

Database & Backend

  • Prisma ORM with SQLite/PostgreSQL
  • RESTful API architecture
  • Real-time notifications system

Payment Processing

  • Multi-chain stablecoin support
  • Aerodrome DEX integration
  • Automated payment verification
  • Cross-border fiat conversion

Getting Started

Prerequisites

  • Node.js 18.x or higher
  • npm or yarn or pnpm
  • PostgreSQL database (local or cloud)
  • Git

Installation

  1. Clone the repository

    git clone https://github.com/your-org/nedapay-merchant.git
    cd nedapay-merchant
  2. Install dependencies

    npm install
    # or
    yarn install
    # or
    pnpm install
  3. Set up environment variables

    cp .env.example .env

    Edit .env and fill in the required values:

    • DATABASE_URL - Your PostgreSQL connection string
    • NEXT_PUBLIC_PRIVY_APP_ID - Get from Privy Dashboard
    • PRIVY_APP_SECRET - Get from Privy Dashboard
    • JWT_SECRET - Generate with openssl rand -hex 32
    • ENCRYPTION_KEY - Generate with openssl rand -hex 32
  4. Set up the database

    # Generate Prisma client
    npx prisma generate
    
    # Run migrations
    npx prisma migrate dev
    
    # (Optional) Seed the database
    npx prisma db seed
  5. Run the development server

    npm run dev
    # or
    yarn dev
    # or
    pnpm dev
  6. Open the application

    Navigate to http://localhost:3000 in your browser.

Minimum Required Environment Variables

For basic local development, you need at minimum:

# Database
DATABASE_URL="postgresql://user:password@localhost:5432/nedapay"

# Authentication (get from Privy)
NEXT_PUBLIC_PRIVY_APP_ID=your_privy_app_id
PRIVY_APP_SECRET=your_privy_app_secret

# Security (generate these)
JWT_SECRET=your_jwt_secret
ENCRYPTION_KEY=your_encryption_key

# App URLs
NEXT_PUBLIC_APP_URL=http://localhost:3000
NEXT_PUBLIC_API_URL=http://localhost:3000/api

Project Structure

app/
├── components/       # Reusable UI components
│   ├── ui/          # Base UI components (shadcn/ui)
│   ├── common/      # Shared components (Header, Footer, etc.)
│   ├── wallet/      # Wallet-related components
│   ├── ens/         # ENS/subname components
│   └── landing/     # Landing page sections
├── hooks/           # React hooks
│   ├── common/      # General-purpose hooks
│   ├── auth/        # Authentication hooks
│   ├── ens/         # ENS-related hooks
│   ├── wallet/      # Wallet hooks
│   └── referral/    # Referral system hooks
├── lib/             # Utility functions and helpers
├── services/        # Service layer (API integrations)
├── providers/       # Third-party provider integrations
├── config/          # Configuration files
├── contracts/       # Smart contract ABIs
├── contexts/        # React contexts
├── styles/          # Global CSS styles
├── types/           # TypeScript type definitions
│
├── api/             # API routes
├── dashboard/       # Dashboard pages
├── ramps/           # On/off-ramp provider pages
├── settings/        # User settings pages
├── invoice/         # Invoice management
└── ...other routes

Available Scripts

# Development
npm run dev          # Start development server
npm run build        # Build for production
npm run start        # Start production server
npm run lint         # Run ESLint

# Database
npx prisma generate  # Generate Prisma client
npx prisma migrate dev    # Run migrations (dev)
npx prisma migrate deploy # Run migrations (prod)
npx prisma studio    # Open Prisma Studio GUI

# Type checking
npx tsc --noEmit     # Check TypeScript types

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Code Style

  • Use TypeScript for all new files
  • Follow the existing code patterns
  • Use absolute imports with @/ prefix
  • Components go in app/components/
  • Hooks go in app/hooks/
  • API integrations go in app/services/

About

An all in one stablecoin platform from payments, swaps to on/offramps.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages