Guides
Merchant Dashboard

Merchant Dashboard

DeroPay includes a self-hosted merchant dashboard — a Next.js admin UI for managing invoices, viewing payment history, and monitoring wallet status.

Features

  • Invoice management — Create, view, and track invoices
  • Payment history — Searchable list of all transactions
  • Wallet status — Balance, connection health, sync status
  • Real-time updates — Live invoice status changes

Setup

Navigate to the Dashboard

The dashboard is located in the DeroPay monorepo:

cd apps/dashboard

Configure Environment

cp .env.example .env.local

Edit .env.local with your wallet settings:

DERO_WALLET_RPC=http://127.0.0.1:10103/json_rpc
DERO_DAEMON_RPC=http://127.0.0.1:10102/json_rpc
WEBHOOK_SECRET=your-webhook-secret

Install and Run

bun install
bun dev

Open http://localhost:3100 (opens in a new tab).

Architecture

The dashboard is a standalone Next.js 15 app that imports dero-pay as a workspace dependency. It communicates directly with your DERO wallet and daemon via JSON-RPC.

Dashboard (localhost:3100)
    ↓ dero-pay SDK
    ↓ JSON-RPC
DERO Wallet (localhost:10103)
DERO Daemon (localhost:10102)

The dashboard runs on port 3100 by default to avoid conflicts with your main application on port 3000.

Deployment

For production, the dashboard should be:

  • Deployed behind authentication (it has full access to your payment engine)
  • Connected to your production wallet RPC
  • Not exposed to the public internet

Consider using DeroAuth itself to protect the dashboard — authenticate with your merchant wallet to access the admin UI.