For enterprise bots or custom network requirements, deploy your own PayBot facilitator.
git clone https://github.com/RBKunnela/paybot-core.git
cd paybot-core# Network
X402_NETWORK=eip155:84532
RELAYER_RPC_URL=https://sepolia.base.org
# Settlement (use 'mock' for testing)
SETTLEMENT_MODE=mock
COMMISSION_RATE=0.025
# API Key (bots will use this)
API_KEY=pb_dev_your_secret_key
# Server
PORT=3000docker compose up -dcurl http://localhost:3000/health
# Response: { "status": "ok", "version": "0.2.0" }import { PayBotClient } from 'paybot-sdk';
const client = new PayBotClient({
apiKey: 'pb_dev_your_secret_key', // Match your .env
botId: 'my-bot',
facilitatorUrl: 'http://localhost:3000', // Your instance
});
await client.register();
await client.pay({
resource: 'https://api.example.com/data',
amount: '0.01',
payTo: '0x1234...abcd',
});See paybot-core DEPLOYMENT.md for:
- Complete environment variable reference
- Production setup
- Monitoring & troubleshooting
- Multiple network support
✅ Self-host if you:
- Need custom blockchain networks
- Have compliance requirements
- Want full control over settlement
- Run high-volume bots (enterprise tier)
❌ Use hosted (api.paybotcore.com) if you:
- Want zero setup
- Are testing or prototyping
- Don't need custom networks
- Prefer managed service
Docker volume paybot-data persists your database:
# View volumes
docker volume ls | grep paybot
# Backup database
docker compose exec paybot cp /app/data/paybot.db /app/data/paybot.db.backupPort 3000 already in use?
PORT=3001Container won't start?
docker compose logs paybotReset everything?
docker compose down -v
docker compose up -dFor full documentation, see paybot-core DEPLOYMENT.md