Tollgate

Operations

Self-hosting

Tollgate is one Node service with an embedded SQLite store. Run it next to your API in minutes; nothing phones home.

Docker

terminal
docker run -d --name tollgate -p 8402:8402 \
  -e RPC_URL=$RPC_URL \
  -e PAY_TO=0x7A3f92bE01c4D58aF6e3B27d90C1a4E58f2Dc21E \
  -e VAULT_KEY=$(openssl rand -hex 32) \
  -v $PWD/tollgate.config.ts:/app/tollgate.config.ts \
  ghcr.io/tollgate/gateway:v0.9.4

Environment

VariableRequiredPurpose
RPC_URLyesRobinhood Chain RPC endpoint (read-only proxy is exposed at /rpc)
PAY_TOyesAddress that receives USDG
VAULT_KEYyes32-byte hex key for AES-256-GCM
FACILITATOR_KEYnoUse your own facilitator signer instead of the bundled one
PORTnoDefaults to 8402

Smoke tests

Run the bundled suite against any deployment before pointing agents at it.

terminal
TOLLGATE_URL=https://gateway.example.com npm run smoke
output
✔ 402 challenge shape
✔ replayed nonce rejected
✔ expired intent rejected
✔ settlement anchored to tx
✔ vault scrubs echoed secret
✔ session counts down
6 passed (2.4s)