Back to docs
Self-Hosting with Docker
Deploy the complete OpenPay platform on your own infrastructure using Docker Compose. One command starts all services.
What You'll Get
Hyperswitch
Payment orchestration engine
Kill Bill
Subscription billing & invoicing
Tazama
Real-time fraud detection
NATS JetStream
Event streaming bus
PostgreSQL
Primary database
Redis
Cache & session store
Traefik
Reverse proxy & TLS
Merchant Dashboard
Next.js admin panel
Quick Start
setup
# Clone the repo
git clone https://github.com/OpenPay-App/openpay.git
cd OpenPay
# Copy environment files
cp .env.example .env
cp event-bus/.env.example event-bus/.env
cp payment-system/hyperswitch/.env.example payment-system/hyperswitch/.env
cp payment-system/killbill/.env.example payment-system/killbill/.env
# Edit .env with your keys (Paystack, Kinde, etc.)
nano .env
# Start everything
make up
# Initialize NATS streams
./event-bus/nats/scripts/init-streams.sh
# Watch logs
make logsDefault Ports
| Service | Port | Purpose |
|---|---|---|
| Merchant Dashboard | 3000 | Next.js UI |
| Traefik | 8080 | Reverse proxy dashboard |
| Hyperswitch API | 8081 | Payment processing API |
| Kill Bill | 8082 | Subscription billing API |
| NATS Monitoring | 8222 | JetStream monitoring |
| PostgreSQL | 5432 | Database (internal only) |
| Redis | 6379 | Cache (internal only) |
| NATS | 4222 | Event bus (internal only) |
System Requirements
4GB
Minimum RAM
20GB
Disk space
2+
CPU cores
Upgrades & Rollbacks
Safe version bumps with backup + rollback
Environment Variables
Complete reference for all config options
Production Deploy
Hardening guide for live environments