Self-Hosting
Export and run your own OpenFacilitator instance.
Export Configuration
- Go to your facilitator's manage page
- Click Export for Self-Host
- Download the configuration package
The export includes:
- Docker configuration
- Environment template
- Your facilitator settings
Docker Setup
# Unzip the export
unzip openfacilitator-export.zip
cd openfacilitator
# Copy environment template
cp .env.example .env
# Edit .env with your values
nano .env
# Start the container
docker-compose up -dEnvironment Variables
| Variable | Description | Required |
|---|---|---|
DATABASE_URL | PostgreSQL connection string | Yes |
EVM_PRIVATE_KEY | EVM wallet private key | For EVM networks |
SOLANA_PRIVATE_KEY | Solana wallet private key | For Solana |
PORT | Server port (default: 3000) | No |
Never commit private keys to version control. Use environment variables or a secrets manager.
Deploying
Railway
- Create a new project on Railway
- Connect your repository or upload the export
- Add environment variables
- Deploy
Vercel
The facilitator server requires a long-running process and is not compatible with Vercel's serverless functions.
DigitalOcean / AWS / GCP
Use the Docker image:
docker pull openfacilitator/server:latest
docker run -d -p 3000:3000 --env-file .env openfacilitator/server:latestCustom Domain
After deploying, add a CNAME record pointing to your deployment:
| Type | Name | Value |
|---|---|---|
| CNAME | pay | your-deployment.railway.app |
See DNS Setup for detailed instructions.
Updating
docker-compose pull
docker-compose up -dMonitoring
The /health endpoint returns server status:
curl https://pay.yourdomain.com/health{
"status": "ok",
"version": "0.1.0"
}